Refactoring Movement—Flagella, Cilia, and Pseudopods


Yeah, that’s partially what I’m arguing for and it will factor into the drag calculation, a previous version of which is described at the top of the thread.


It’s just as different as acceleration and top speed are from each other. Your original suggestion would spit out acceleration, mine spits out top speed.

And yeah, @ThreeCubed, shape is a factor, particularly in turning rate. Shape technically only affects the stokeslet drag (basically, viscous shear within the water due to the lack of slip between the microbe’s surface and the water around it), since no matter how a microbe is shaped, it will displace just as much water when it moves. I’m not sure how large the stokeslet drag is in practice though, so I can’t say whether shape makes a big difference for linear motion.


Alright, so I’ll be tackling this. Here’s my plan for now:

  • Review the microbe/organelle code to get familiar with it.
  • Refactor the code to “save” the current behavior as a fallback during tests.
  • Add in a new movement mechanism (probably the original post equation, since it’s the clearest I’ve seen)
  • Add a capability to switch between them IN-GAME (either through option menu, or a new Lua Debug console).
  • Optionally add a third movement mechanism (as proposed by Moopli). Since we’ll have a capability to switch between mechanism, this will give us an opportunity to determine which is best.
  • Balance it out (again, a Lua Debug Console would speed things up).
  • Profit.


Awesome. We already have an in game console (I believe the functions are defined in console.lua). It’s a tad broken, with enter closing the console for some reason, but I hope it’s not too hard a fix.


NIce, I’ll have to check that then!