Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Quads Build Orders
Shared ghost build orders and blueprints, a build planner for your party: plan pieces (or import a blueprint) for everyone, then build them by walking up and pressing E.
CHANGELOG
1.14.6
- No more hitch every 5 seconds after building an add-on shell (Hallwright and the like). Its finished record, kept so the shell can still be taken down, was read from its file and every one of its pieces searched for every 5 seconds: 130 to 300 ms each time with a 566-piece shell. Now it is read once, stops at the first piece still standing, and is looked at once a minute. Also fixed: when you were far from a finished shell, its pieces couldn't be seen, so the record was thrown away and the shell could no longer be taken down; it now waits until the ground there has loaded.
1.14.5
- Settings: edits to the config file now apply while the game runs (a server owner no longer has to restart), and a server's admins can change the server's settings from their own game with Configuration Manager, where other players see them greyed out. Your config file always keeps your own values while you play on a server (saving it there could write the server's in). Players on an older version still get the server's settings.
1.14.4
- No more "NullReferenceException ... ShieldGenerator.OnDestroy" in the log the first time a new version is in a world: measuring every buildable piece for blueprints/_pieces.json made a copy of the shield generator that never started, and destroying it threw. Harmless, and gone now.
1.14.3
- Its windows no longer fill the log with "The LiberationSans SDF Font Asset was not found": each text is given the game's font before it starts (it looked for TextMeshPro's default font, which the game doesn't have, every time a text was made). Nothing changes on screen.
1.14.2
- Fix: after reloading the mod at the main menu (the mod manager's reload, or F6), its bridge tool stayed in the hammer's list after it was gone, and every change to your bag threw an error half-way: crafting gave the item without taking the cost, and picking things up could go wrong, until the game was restarted. The bridge tool now comes off the list it was put on, and destroyed pieces left there by any mod are cleared when it registers.
1.14.1
- Smoother multiplayer. Placing or removing a big plan sent the other players one message per piece, all at the same moment (a 1000-piece blueprint: 1000 messages at once, a lag spike for everyone). The pieces now go many to a message, a few at a time over the next frames, in the order they happened. Older versions on the same server read the new messages as before.
1.14.0
- Now in your language: English, Russian, German, Chinese (Simplified), Portuguese (Brazil), Spanish, French, Polish and Turkish, following the game's own Language setting. The game's own names are used for its things (items, creatures, lands, stations). The translations were made with AI: to correct a line, or add a language, put a file in BepInEx/config/translations/com.quad.buildorders/ named after the game's name for the language (German.json...) with only the lines you change, copied from translations/English.json on GitHub. Blueprint and plan names are kept as they are; only what is shown is translated, so old plans load as before. The Bridge piece's name is translated too, so the game may tell you about it once as a new piece. Fixed: the hold-E text on the build prompt spilled past its bar.
1.13.0
- The Plans window (F11), the bridge options and all the help on screen are now built from the game's own interface: the crafting panel's wood, tabs and buttons, the game's slider for settings, the inventory's item cells and tooltips for materials, and the game's fonts. The help (materials, banners, the build prompt with its hold-E bar, the fetch hint) is part of the HUD now, so it hides with it and follows your interface scale; the bridge options sit at the side so the bridge stays in view.
1.12.2
- A clearer page: what it does, who needs it in multiplayer, how it gets on with other mods, and where to report a bug. The game itself is unchanged.
1.12.1
- A new id, com.quad.buildorders (it was com.dhack.buildorders): your settings move over by themselves the first time it starts, and the old settings file is kept as a backup. Restart the game after this update. If an old copy is still installed beside it, this one stands down and says which file to delete, so the two never both run. The DLL now says it was made with AI, as Thunderstore asks.
1.12.0
- Fix: removing a levelled plan could bring other buildings down. Putting the ground back now waits until everything standing there has loaded, never touches the ground on or next to any piece (anyone's), and only puts back ground still exactly as the levelling left it (later digging stays); when in doubt the level ground stays. Levelling also leaves the ground under and around pieces already standing there alone. (Plans levelled by older versions keep their level ground.) Fix: with Adventure Backpacks, pressing E on a ghost could build it for free: building by hand now takes the materials first and places the piece only when the full cost was taken (otherwise you get them back). The select key's default is now U (G also opened the game's radial menu; if you keep G it no longer unbinds the radial menu, and if you change it the radial menu gets G back). In multiplayer the server decides UseReach (now 2 to 10 m) and BuildAllRadius. The list of deleted orders forgets ids after 60 days, is saved once per batch and sent compressed to players who join. The windows use the game's fonts, and a game update renaming its ground fields only switches levelling off instead of stopping the mod.
Earlier
-
Fix: no more stutter every 5 seconds. Looking for Claude Tools searched everything the game had loaded; it now asks BepInEx's list of mods.
-
New: a blueprint can be made for the land as it is: "level": false in its file places its ghosts straight onto the ground, never levelling it (for builds that follow a hillside or bridge a creek, with posts down to the ground). Placed by its world coordinates, it fits exactly.
-
Add-ons can plan a whole building at once: TryCreateBuildingShell takes up to 2,048 pieces, checks every pose, unlock, reach and protected area before adding any ghost (so a bad piece never leaves a partial plan), and undo takes down only what is still a ghost. Also a ghost-ray query and a planning-input check for shape tools (from Bob, for Hallwright and BuildShapes), and the helper hooks a companion uses to build your plans.
-
A helper that builds your plans can now ask why pieces cannot be built (DHack.BuildOrders.Blockers): pieces you have not unlocked, pieces whose station is not by them, and pieces on protected ground.
-
New: helpers can build your plans. A companion at home (AICompanion 0.21) now builds the ghosts you planned within its home: BuildOrders publishes three small functions (how many pieces are planned near a spot, which to build next, and build one) that never touch your materials; the helper pays for the pieces itself. The pieces it picks are only ones that will stand with what is built, in the order the support runs, exactly as Build all does (that check is now shared).
1.9.9
- Raise the atomic whole-building planning API and add-on undo bound to 2,048 pieces for larger Hallwright storeys and ornamentation. Validate the complete batch before mutation; the original 256-piece API remains unchanged.
1.9.8
- Add a bounded atomic whole-building planning API for Hallwright (1–1,024 pieces). Validate all poses, unlocks, reach and protected areas before adding any ghosts; keep the existing 256-piece API unchanged. Add-on undo supports the larger plan and preserves built pieces. Keep completed add-on piece records while matching built pieces remain, so takedown still works after the ghosts are finished or F6 reloads. Include reload-safe planning-input and ghost-ray helpers for BuildShapes. No terrain edits or material consumption.
Earlier
-
Fix: Build all could put up a building that then fell down. Pieces whose station was not near you (stone needs a stonecutter) were counted as if they would be built, so the walls and floors that rest on them went up on nothing. Now a piece whose station is out of reach is left out (and the message says so: "65 need a Stonecutter near you"), and Build all builds in the order the support runs: each piece after the pieces that hold it up, and anything resting on a piece that could not be built waits for it.
-
Fix: Build all (hold E, or Build nearby) could build pieces that then fell, taking the rest down with them: a wall over a stone course not yet built (short of stone) counted as standing, because the check went by each ghost's whole outline. It now works out support exactly as the game does: each piece's own colliders, turned with it and grown by 0.15 m, the ground and the pieces inside those, the game's losses over the distance between centres of mass, and a full cascade (what rests on a piece that breaks is worked out again). So Build all only builds what will stand with what is already there; the rest waits until the pieces under it are built. The check also no longer stops at 400 pieces, so the stability colours and the check request cover a big plan whole.
-
Fetch from chests (Y) takes exactly what the selected piece needs instead of a whole stack: holding less than one piece's worth, it tops you up to one; holding enough, each press brings another piece's worth. The panel shows only while you are short.
-
Fix: the select key (G) also opened the game's radial menu. The game's key for it is now unbound (once, and you are told in chat); bind it again in Settings, Controls if you want it.
-
New: a planning API for add-ons (from Bob): other mods can submit shared ghost plans, such as the curves drawn by Bob's BuildShapes, and remove their unbuilt ghosts, without touching terrain or anything built; Move and Level are switched off for those plans. See docs/buildorders-api.md. Also: blueprints can now have up to 5000 pieces (was 1500) and levelling covers bigger sites; for AI-designed builds, the design guide explains the one-time setup that lets previews show pieces as they really look (pip install UnityPy, then python tools/extract_meshes.py), and the export finds your game wherever it is installed.
-
Fix: after a fresh game start the Bridge tool was missing from the hammer until the mods were reloaded. Fix: taking down a plan with a full inventory no longer loses the materials (they drop at your feet). Removing a plan from far away no longer loses its levelled ground: it is put back the next time you are near it. Plans still waiting for their ground now survive walking away, dying, logging out or restarting. Plans and their records are now kept per world, so two worlds with the same name no longer mix up their build orders, and reusing a plan name no longer mixes in the old plan's records. Any player can now take down what was built of a plan and get the materials back (the ground is put back by the game of the player who placed it). Placing mode and the Plans window no longer carry over into the next world after a disconnect.
-
New: bridge options. After you click where a bridge ends, a panel opens beside the ghost: width (2, 4 or 6 m), material (wood, core wood, darkwood, stone), sides (handrails, half walls or none), open or covered (a roof on tall posts), supports (auto, every 2 m, every 4 m), straight or arched, ends (a sloped deck, or a level deck with steps down at the lower end) and torches. The ghost changes as you choose; Confirm places the plan, Change end lets you aim again. Your choices are kept for the next bridge. The cheapest bridge is 2 m wide wood, no sides, supports every 4 m.