Alpha 5 is Live

February 4th, 2014 by Jon Tunnell

Here it is, Alpha 5. I discussed this update fairly in depth in my last post for those of you that missed it. This was a crazy huge update that touched almost every file in the entire game. Unfortunately, because Kevin did his job correctly, not much difference can actually be seen. Pretty much everything that changed was under the hood. Even though you can’t really see the changes, you do get to play with copy & paste now.


When you select a group of parts now, you can right click to clone the whole thing, or you can click the “copy to clipboard” button. This allows you to then paste the contraption group somewhere else. The cool part is that you aren’t limited to copy & pasting in your current contraption. You can open up a new one and paste it there. This allows people to make “component sheets” of commonly used contraptions, or things that they don’t want to have to build multiple times. They can also upload them to the workshop as contraptions so that other players can use them in their own creations. People were actually doing this back when we launched our Early Access, but copy & paste makes it much easier.

That’s it for this update. Like I said, it may not seem like much, but this has actually been a huge amount of work. To make up for the lack of cool looking stuff, there will be new art, puzzles, and shiny things in our next update. Stay tuned!

Major Fixes

-Physics engine has been converted from float to int.
-Groups of parts can be cloned with right click.
-Groups of parts can be copied to the clipboard and pasted elsewhere (even in a new contraption).
-Adjusted electrical cords so they don’t jump between outlets when more than one part are moved at the same time.
-Clicking the part help or goal buttons will now open and close windows instead of having to click the ‘X’ every time.
-Delete fully connected ropes and belts in a group so that ropes no longer have to be deleted twice.
-Fixed bug where attached ropes and belts were not deleted when the parent part was dragged out of a puzzle, causing the rope to become un-deletable.
-Massive performance increase on Mac version.

All Bug Fixes

-Added location goal to Milton Mouse.
-Initialized the electrical cord plug after cloning.
-Changed methodology of how auto plugin of electrical cords work.
-Make sure cloned part ids are always sorted.
-Fixed segment to segment collision check to fix laser being blocked by nothing. A side benefit is the code will be slightly faster. Laser beams are very long so they were more likely to have overflow problems.
-Bellows wind force is no longer 65536 times too high.
-Allowed Fishbowl to be flipped.
-Explosion now affects Tim correctly.
-Adjusted trigger angles on Steam Whistle so it is activated correctly.
-Fixed overflow when calculating offset to explosion on wall.
-Fixed max heat value for bomb’s fuse.
-Made sharp point of pin slightly larger.
-Added profiling to lots of places..
-Ensure identical temporary part ids across clients.
-Reset temporary object ids.
-Prevent clones from overlapping.
-Fixed part removal so it always occurs on the same frame that the mShouldRemove flag is set. Before it could be delayed to a later frame if a larger delta time was passed into level update.
-Fix memory leak in line batch sprite.
-Sin, Cos, and Exp routines that return same values on Windows and Mac.
-Fixed crash when cloning from an older level.
-Do not allow cloning when there are overlapping parts.
-Removed the rounding values from the fixed point routines.
-Temp hash id fixed to make cloned group of parts run exactly the same all the time for levels with less than 49,157 shapes in them.
-Fix for belts / ropes not disconnecting.
-Sort parts to clone before cloning so they go up by part number.
-Fixed Rotary Limit constraint value on Jack-in-the-Box.
-Fixed Dynamic Rope Segments to correctly handle larger values.
-Fixed Laser Beams to not overflow when calculating start and end points.
-Fixed quite a few sin/cos calculations in CMPart.cpp that were causing overflows.
-Fixed impulse and damping on Bottle Rockets, Rockets, and Missiles.
-Fixed calculation of location of Water Drop created by Dripping Bucket.
-Fixed Lawn Mower Motor’s handle’s rope attachment location to get rid of divide by zero error.
-Fixed CCDrawNode to use correct shader.
-Fixed trampoline missing message.
-Delete zone in puzzle mode includes being outside the window.
-Fixed belt attachment rotation speeds to work with new integer delta time values.
-Fixed bugs in a few places where integers were being treated as floats or floats were treated as ints. This cause some calculations to be off by 65536 times too large or to incorrectly round to zero.
-Fixed Waldo’s vision so it is slightly larger (works better).
-Fixed an overflow condition in Damped Rotary Spring that was causing very stiff spring-loaded trapdoors to vibrate instead of coming to rest.
-Fix rogue goals causing puzzle completion bug.
-Fixed animation bug where the first frame can get out of sync.
-Do not play an animation with one frame.
-Fixed various overflow type bugs.
-Make group cloning work in multiplayer.
-Prevent unlocked parts with goals from triggering completion.
-Fixed rectangle borders on the trapdoors.
-Fixed explosions to not overflow by using larger impulse ranges.
-Fixed speed imparted to Water Drops leaving Dripping Bucket.
-Fixed collision verts of broken Fishbowl (they were still in old smaller float range).
-Fixed force imparted by Pinball Bumper.
-Fixed bitmaps so they scale correctly in Punching Fist and Spring Trap Door.
-Fixed processExplosion in Wall so that the correct segments are destroyed by explosions.
-Fix for puzzle goals not all being checked if one has a timer.
-More fixed point defines and macros.
-New square root functions that return an int.
-Added an approximate distance routine.
-Changes to Dynamic Rope to be more efficient.
-Adjust Dynamic Rope Segments to run either floating point or int64 versions.


One Response to “Alpha 5 is Live”

  1. February 19, 2014 at 10:48 am, RuggleMc said:

    The mouse speed is brutal in Alpha 5. Using win7, 2nd highest mouse pointer speed, enhance precision on, and its a chore to move the cursor across the screen. Id suggest either dropping the skinned cursor until your engine can support low-latency, high speed mouse pointers. Or respecting the default windows settings for mouse speed and not creating your own interpretation through the game. As it is now, its unplayable to me.

    Not to say anything about the game is bad, just the handling of this one input.

Comments are closed.

Follow Us on Twitter