A technical writeup of aspects of the ScrumbleShip heat engine.

Posted by dirkson on Sep 17th, 2012

So ScrumbleShip has a "Heat Engine". What exactly does that mean?

Simply put, we simulate heat gain and heat loss in space with the real-world properties of various materials. A cube of butter will melt at a relatively low temperature, while a cube of tungsten will absorb enough heat to decimate a small town. This heat transfer is based on real world physics, and computed in real time. It takes into account surface area, specific heat capacity, melting point, and boiling point (under pressure).

We do all this calculation very quickly, due to some very careful choices in the design of our memory structures and algorithms. For example, if a section of space has had no temperature changes in it since the last check, we needn't run our heat transfer algorithm on ANY portion of that space.

The heat engine makes for some interesting and fun dynamics - Take a look at the following steel hull with copper heatpipes to a butter repository. I fired a laser at the steel plate, and ScrumbleShip simulated the transfer of heat through the structure. Copper is an excellent conductor, so it quickly moved much of the heat from the steel plate to the blocks of butter, causing them to melt and boil. Neither metal was damaged by the heat, as it was below their melting points.

So how accurate is it? Somewhat!

Heat transfer through a solid meter of anything is remarkably slow, so to make a fun game the heat travel speed has been scaled up. We can also increase the power of lasers to compensate, ending up with something very close to the way battles would actually play out, if a bit faster. (I.e. Hour long space battles, rather than day long ones)

We make several assumptions about surface area and heat gradients that are true on average, but not true in every case - For example, we don't compute "edge effects" at all. Also, materials like diamond or graphene transfer their heat too quickly for our engine to deal, and require special treatment to behave appropriately.

However, every copy of ScrumbleShip comes with source access, so anyone with a physics background can submit code to increase the heat engine's accuracy.

Of course, the real test of our engine is in how it compares to engines in other games, and this is where it truly shines. I'm not aware of a single game, in our genre or outside of it, with as detailed a heat simulation as we have. I believe we're setting a new standard for accuracy in games.

Want to learn more? Click an icons to visit ScrumbleShip.com or our IndieDB page:



Cheers,

-Dirk