Changes: * Clicking and dragging with MMB pans the screen (except while placing objects). * The menu animation speed can be increased in Settings. * Compound regions can be selected by holding shift with a region selected and dragging to add a region. * Undo/redo interacts sensibly with cut/paste. * Added a "Duplicate with Wires" action (can be bound in Settings) * Key bindings can now include the modifier keys Shift and Ctrl, if desired. * Allowed save selection menu to span multiple pages when necessary. * Fixed the background generation for larger levels, keeping proper parallax effect. * Various improvements to the Lua API: * ...Added are .step_count and .step_time properties in CollectorHandle * ...Added a new class "ElectricStatus" which accurately tracks the state of pistons and such. * ...Added a new class "MouseInfo" for state:on_interface_update callbacks * ...Added game:track(...) which allows Lua to track an object. * ...setup_utility.lua allows achieve_main to be a table and has the new user_block_indices key * ...Added .input_extra and .output_extra properties to the CreatePortal interaction. * ...Added :neighbor and :meeting methods to physics side. * ...Resizing the top portion of the map now works properly.
Quality of Life and "Gravity" Update
Hello Warp engineers,
A new update has arrived, featuring many improvements to quality of life as well as some new puzzles!
Major Changes: * Revamped wiring menu now highlights connected networks and can be opened during simulation. * ...Now highlights network of connected wires. * ...Wires can be deleted between specified points by holding Ctrl. * ...Clicking and dragging while one node is selected can wire every node dragged over to the original one. * Added a new chapter "Gravity" as well as a new level "Sculpture" to Assembly III
Minor Changes: * The front faces of conveyors, sensors, and magnets can no longer be welded to. The side faces of piston arms also cannot be welded to. * Various changes to modding: * ...Added after_level_setup and before_level_setup callbacks in standard Lua setup. * ...Wires and pins are properly copied by Lua. * ...By default, checkers trigger disposal on the whole right side of their disposal region. * ...Added an error screen in case level loading fails. * ...Added a search path in Library folder of mod. * ...Added a cursor to the console editor and allowed pasting to the console. * Added "No Cross Welding" achievement to Antenna. * Delete tool highlights cell it's pointed at. * Hovering over a portal with no tool selected highlights its pair. * Left clicking and dragging while having something selected now replaced the selection. * Right clicking and dragging now deletes an area. * Holding Ctrl while placing a single block also pins it in place. * Holding Shift while placing a single block also welds it to all of its neighbors. * Added a cursor to indicate unwiring. * Added redo
Bug Fixes: * Fixed a fatal error occurring when cutting a portal, undoing, then placing the cut component. * Lua "print" only displays once now. * Any pair of welders will now function. The left/right distinction has been removed. * The unlock screen now shows a line break between a single chapter unlock and a single level unlock. * Fixed various bugs about cut/undo not properly handling joints through portals. * Disabled some assertions that caused random crashes. * Orphaned PortalOuts only select together if they are welded together. * Dragging with basic block placement tool now welds even existing neighbors together, as intended. * Welds that are newly created can no longer pass through portals that would split them. * The game's pointer for which level to reload to is deleted after it is used. * Achievement notifications are only sent once. * Made order of placement irrelevant to physical simulation on the half step. * Pistons can be pasted on top of existing blocks without losing their arm. * Fixed objects sometimes getting stuck in places where portals have repeatedly activated and deactivated in complex patterns. * Fixed resizing's interaction on "Copycat". * Fixed typo in description of "Memory". * Fixed miscalculated height of text rendering.
Patch Notes for June 24th
Minor Changes: * Placing a wire and holding shift will now allow you to create multiple wires to the same endpoint. * When pasting an object, it is now allowed for sensors, pistons, nodes, welders, or magnets to overlap pre-existing structures that match the pasted object. * Added option to have mods check for weld structure. Accessed by calling set_weld_checking(checker_index). * An object's painting is preserved when replacing a basic block with an active one. * The audio buffer size can be adjusted in settings (default: 2048). Smaller values will give less latency at the cost of possible stuttering.
Bug fixes: * Fixed a fatal error occurring when a block which is adjacent to itself is deleted. * Fixed a fatal error occurring when a portal closes on an extended piston then moves in a certain way. * Fixed a fatal error occurring when a portal closes, opens, then closes again on an extended piston. * Fixed a fatal error occurring when the user cuts a region which is welded to itself through a portal not in the cut region. * Pistons no longer apply force to their arm when extended through a closed portal. * Copying and cutting then pasting without moving at all now works properly. * It is no longer possible to undo while the game is running. * Vertically resizing a level with width zero can no longer break protected areas of the level.
There were some tiny patches prior to this one; these patches have been in place for a week, but for completeness, they fixed the following bugs: * The game now stops listening for typing after renaming a save file. * Resizing a level to zero width no longer loses track of the level's user region. * The level "Locksmith" has appropriate resize information now. * The default audio buffer size was changed from 512 to 2048.