swarm-game / swarm

Resource gathering + programming game
Other
839 stars 52 forks source link

Rename `robot` type to be more inclusive #931

Closed byorgey closed 1 year ago

byorgey commented 1 year ago

Internally to the game implementation, anything that runs a program is a "robot". However, to the player, there are robots (things they build and program), and there can also be other kind of active things like aliens, animals, ... In particular I'm thinking about the meet command which will return a robot value (see #920), but you should be able to use it to meet aliens, animals, etc. So I'm wondering if we want to change the name of the robot type to something more generic and inclusive, and I'm open to suggestions what we should change it to. agent? actor? creature? being?

byorgey commented 1 year ago

I'm kind of leaning towards agent. creature and being seem to imply something is alive, so applying them to robots feels weird. agent is short and has a nice generic sense of "something that does something". There's also precedent for using "agent" within computing/programming contexts (e.g. agent-oriented programming, agent-based modelling, etc.).

xsebek commented 1 year ago

I like actor for anything that “acts”.

Internally it will make a little more sense for seed actors. It makes it sound like the whole game is a theater play which kind of fits the simulation. 🙂

I'm fine with being too, agent feels like something from action movie but I would get used to it.

xsebek commented 1 year ago

@byorgey do you also want to rename internal module, types and functions or only the in game type for “robot reference”?

byorgey commented 1 year ago

OK, I like actor too. No, I was not thinking of renaming any internal modules, types, or functions, only the in game "robot reference" type. I suppose I could be convinced otherwise, but it would be a lot more work and I don't know what the benefit would be.