* Once again attempted to defeat my nemesis, the ArithmeticException bug (the most common cause of crashes in the current version). I’ll get you this time, gadget.
* As I have still been unable to catch the ArithmeticException (the most common cause of crashes in the current version), I have purchased a significant quantity of fireworks from the Acme Corporation and laid an ingenious trap.
When the crash happens, the program will report a significant quantity of additional information about the problem that I can use to track it down and fix it for good.
* Strapped the ArithmeticException bug (the most common cause of crashes in the game) to a table and attempted to bisect it with a laser. Gloated for a while, then left the room in the certain knowledge that escape was impossible and my victory was complete.
* Increased the scale of limbs to make creatures in general a bit more interesting and… appendagery. That’s a word now.
The information from my 0.12.0.9 trap helped a little bit, but it mostly just confirmed where not to look: it’s not related to a specific leg type or position, and the cause of it is exactly what it looks like: a leg bone rapidly increases in size until it hits infinity and transcends numerical classification.
The cause of that appears to be a state issue in the limb animation. Leg bone transforms are supposed to be reset and freshly applied each frame, but something is causing the Bicep/Tricep widths to be saved and re-applied on top of each other every frame.
I’ve been unable to track down the exact scenario that causes this, so instead I’m refactoring the entire animation system to eliminate the possibility of state information being saved between frames.
Which is kind of like applying nuclear weaponry to the task of killing a cockroach.
But this cockroach is 50 meters tall and breaths fire, so screw it. Nukes it is.
It fought back, too. Immediately after starting the refactoring I started seeing constant expansion bugs every time I ran the game, not just from the limbs but from the tail and neck as well.
But those are gone now. Still have a few extra bits of fallout to deal with (limbs not rotating due to droop, being smaller than they are supposed to, and flickering), but we’re on the right path.
It’ll be good to get this one behind me and officially announce what we’re doing for 0.13.0.