promotional bannermobile promotional banner

Create Wareworks

Build real automated warehouses for Create. Stacker cranes physically store and fetch your items along rails. Nothing teleports. Order from a terminal, sort chests with Create filters and let your own machines produce on demand.
Back to Files

Create: Wareworks 0.6.0-alpha

File namecreate-wareworks-1.21.1-0.6.0-alpha.jar
Uploader
XantarsXantars
Uploaded
Oct 2, 2026
Downloads
5
Size
1.2 MB
Mod Loaders
NeoForge
File ID
9035434
Type
A
Alpha
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:create-wareworks-1699395:9035434"

Learn more about Curse Maven

What's new

Added

  • Your rails may turn corners now, and the crane turns with them. Lay a run of Warehouse Rails in front of the dock as always, then lay a second run at right angles to it: the block they share becomes a corner. The crane drives out to it, stops, swings the whole machine a quarter turn with a deep rumble and a metal clack, and rolls on down the next aisle — still lifting on the way. A warehouse can follow the shape of your base instead of forcing a straight hall through it, and goods from every aisle reach one block
  • And they may split. A T-junction, a cross, a ring, a comb of side aisles off one main run — lay the rails and it is one warehouse. The crane turns at every junction, a straight run through a junction stays one aisle with one letter however many aisles cross it, and goods from every aisle of the shape reach the one block you put your output station on. One controller, one terminal, one stock list, one address space
  • The warehouse works out the cheapest way there, and the crane drives that one. With junctions there is more than one route from A to B, so the planner measures them in blocks driven plus quarter turns and takes the cheapest — round a ring it will take the short way round even when the long way has fewer corners, or the other way about if you have made turns expensive (crane.turnPenaltyBlocks). The same number decides the plan and the drive, so the machine can never take a route nobody costed, and the same warehouse always plans the same job
  • An aisle your crane cannot get to says so on its own blocks. If a server limit cuts the rails that joined an aisle to the rest, its racks keep their addresses and their stock, their goggles read "The crane cannot reach this aisle" in gold, and the controller answers "cannot be reached" instead of inventing a job for it. Raise the number and the next scan joins it again, with every address and every item exactly as it was
  • Every straight run of rails is an aisle with its own letter, and one controller letters the lot: the aisle at the dock takes the letter from the controller's own value box, each further one the next free letter. Addresses do not change — A-03-07R still means aisle A, level 3, position 7, right side. The letters and the position numbers are pinned to the rails, so extending an aisle, shortening it or laying a new one somewhere else never reshuffles the addresses you have already written on a sign
  • Racks in a corner work, which is the whole reason corners are not travel-only. The corner block carries one rack on each of its two aisles, and the rule for which is the only rule there is: the rack belongs to the aisle its interface faces away from. Point it away from the aisle you mean, and the address tells you which one you got
  • A wrench closes a rail. A closed rail is still a rail — it grows a brass end stop you can see across the room and in the dark — but it is no part of any warehouse. That is how you keep a decorative rail out of your warehouse, and how you cut one warehouse into two
  • One controller, one terminal, one stock list and one crane for the whole warehouse. Nothing above the rails changed: the same requests, the same filters and priorities, the same ports, stock rules and production chains, on a warehouse that now bends
  • A new block, the Warehouse Home Point: "wait here". Place it beside the rails where your next job usually starts — next to your terminal, next to an input, at a corner — and the crane comes back and waits in front of it when it has nothing to do, instead of standing wherever its last trip ended. Its lamp burns while your crane really uses it, and its goggles read out its address and one sentence saying what the warehouse does with it. It costs no more than the andesite tier, because it holds nothing and decides nothing: a rose quartz lamp, an andesite casing and two andesite alloy — no electron tube and no precision mechanism
  • A warehouse has one crane, so it has one home point — and a second one is refused where you can see it, not quietly ignored: the plate turns red and grows a crossed brass stop, and the goggles say "Without effect: this warehouse already has a home point". The same happens to one the crane cannot drive to, for instance because a rail between them is broken or closed — then your dock is home again, never the second home point. Break the home point and the dock is home, exactly as it always was
  • The trip home is free, and that is a promise the game keeps. It is not a job: the moment there is real work the crane takes it, in that very tick, even in the middle of a corner, so waiting at a home point never costs you a single item of throughput. And it holds no chunks loaded — a warehouse whose only remaining activity is a machine rolling home still counts as idle and still lets its chunks go
  • A Ponder scene for rails around a corner. Hold W over a Warehouse Rail or a Stacker Crane and the second scene shows it: a straight run of rails, a run laid at right angles, the block they share becoming a corner, the machine rolling onto it and swinging a quarter turn, items carried from one aisle into the next, the corner block's two racks served — one on each aisle, told apart by the way the interface faces — the address that names the aisle, and the Wrench that closes a rail
  • And a Ponder scene for rails that split, the third one on those same two blocks: "Rails That Split" builds a main run with two side aisles leaving the middle of it, names the block three rails meet at as a junction belonging to both aisles, outlines the whole run as one aisle through both junctions and each side aisle as its own letter, then runs the machine — straight over one junction, round the bend at another — until an item from every aisle has arrived at the one output beside the dock. It ends on the two racks beside a junction that lie next to both aisles at once, with the address each of them really has
  • The controller's goggles describe the whole warehouse. A warehouse that bends reads "Warehouse: 41 rails, 3 aisles, mast 6 high" and lists them underneath ("Aisles: A 16 · B 12 · C 13", at most six before "and N more"). A warehouse of one aisle reads exactly as it always did
  • And they say where the rails stop, and why. "Warehouse stops at 148 64 -37: another stacker crane dock stands here, and a dock is a wall" — one sentence per reason (a second dock, a rail closed with a wrench, a chunk that is not loaded, and each of the four server limits, every one of which names the number to raise), never merged into one message, and naming the block you have to walk to. It is the line that answers "why is half of what I built not in my warehouse"
  • The dock says which aisle its machine is on: "On aisle B at position 7", beside the size of the network. Only for a warehouse that bends, where the position alone would not say where the machine is
  • The Warehouse Summary display source lists the aisles of a warehouse that bends ("Aisles: A B C"), and marks it "(cut short)" whenever the rails stop short of what you laid — on a single straight aisle too — so the board says that something is wrong and the controller's goggles say what. It is the source that used to be called "Aisle Summary"
  • Two new server settings, both bounding what a big warehouse costs to run. aisle.maxJunctions (default 32) caps the junctions of one warehouse, because junctions are what a route search is priced in — an aisle over the cap is not part of the warehouse and the controller says so, and 0 keeps every warehouse the single aisle at its dock without switching the rest of the version off. controller.snapshotCycleTicks (default 10 minutes) bounds how long the controller may take to re-read every storage location once; it reads as many per interval as it takes to meet that, capped by controller.maxSnapshotsPerTick. At the defaults a warehouse of up to about 1200 locations reads exactly one location per interval, which is what every earlier version did

Changed

  • Rails that touch now connect — read this one before you load an old world. A warehouse used to be the straight line of rails in front of the dock whose axis matched it; it is now the whole connected set of rails. Two consequences in a world you already built: a decorative rail orthogonally beside your aisle line joins the warehouse as a one-block aisle of its own, and a rail laid across the aisle, which used to stop the count, now connects and lets the run beyond it join too. Nothing is lost — the new positions are simply new, and anything that stopped being a rack keeps its record until the warehouse next reconciles and then leaves normally with its items still in its chest. The one-click cure is the wrench: close the rail you did not mean to include. If you would rather have none of this, set aisle.maxBranches = 1 in the server config and every warehouse is the single straight aisle it was
  • The wrench on a Warehouse Rail toggles "closed" instead of turning the rail's axis. The axis stopped meaning anything the moment a second rail touched the block, and it is now only the look of a lone rail with nothing attached to it
  • On a warehouse of more than one aisle an idle crane now drives back home. After ten seconds without work (crane.returnHomeIdleTicks, and 0 switches it off) it returns to its Warehouse Home Point, or, if you have not placed one, to its dock. On a warehouse of one straight aisle nothing changed at all: the machine stands exactly where its last job left it, as it always did, and a home point there says so instead of pretending to work. So this only ever moves a machine on a warehouse that bends — which no world had before this version
  • A rack round a corner ranks behind an equally distant one on the aisle the crane is already on. A quarter turn costs travel time (crane.turnPenaltyBlocks, default one block's worth, and it scales with RPM like everything else the crane does), and the job planner counts it. So a bent warehouse is measurably slower per trip than the same number of racks in one straight hall — physically honest, and worth knowing before you build a very long one
  • A rail that used to stop your warehouse now grows it — the second thing to read before loading an old world. A T-junction, a cross or a ring used to stop the warehouse before the branching rail; all of it is now part of the warehouse. So a world where something you built was cut off there will find it joined, with new aisles under new letters and new addresses. Nothing is lost and nothing moves: the positions are simply new, and the aisle.maxBranches = 1 or aisle.maxJunctions = 0 setting, or one wrench click on a rail, is still the way to say no
  • A comb with one crane is slow, and you want to know that before you build one. One crane serves the whole warehouse, so it drives out and back along every side aisle in turn and two trips can never overlap. The planner's travel key will prefer a rack on the aisle the machine is already on, and prefer near aisles to far ones, but it cannot make a far aisle cheap: a comb of five long teeth has the throughput of one crane, not of five. Several cranes on one warehouse is the next milestone, and this is why
  • A big warehouse notices a chest you emptied by hand as quickly as a small one does. Nothing reports a change like that, so the controller finds it by re-reading storage locations in turn — and it used to read exactly one every half second whatever the size, so coming round to all of them took longer the more you built: about nine minutes for a full single aisle, 40 for 4800 locations, over two hours for the largest warehouse the settings allow. It now reads as many per turn as it takes to come round within controller.snapshotCycleTicks (ten minutes by default, and 0 switches the scaling off): 4800 locations come round in ten minutes instead of 40, and the biggest possible warehouse in 34 minutes instead of 2.3 hours. A warehouse of up to about 1200 locations reads exactly one location per turn, which is precisely what every earlier version did — that is every warehouse at the default aisle limits. If you raised aisle.maxAisleLength or aisle.maxMastHeight, your warehouse may be bigger than that already, and it will now read up to controller.maxSnapshotsPerTick locations per turn instead of one; controller.snapshotCycleTicks = 0 keeps the old cadence exactly
  • And it spends less time working out what to do. Before every job the controller ranks every storage location for every item type waiting at every input, and the most expensive question in that ranking — "can the crane use this location right now", which now includes a route over the junctions — is asked once per location per planning pass instead of once per location per item type, with the list of usable locations worked out once as well. Measured on a 64-location warehouse with four inputs holding three item types each: 68 questions put to the world where there used to be 772, and the number no longer grows with the item types an input holds. What the planner decides is unchanged — the ranking order is identical, which its tests pin
  • An aisle is renumbered when the rails grow past its origin, and your addresses follow. An aisle is numbered from the end nearer the dock, so extending it at its far end still changes nothing. Laying rails at its near end now makes it longer there instead of refusing to follow, and then every position on it moves along by that much — carried through the world blocks, so each chest keeps its filter, its priority, its stock and its reservations, and open production orders keep pointing at the same machines. A sign you wrote by hand is the one thing that goes stale
  • Optional chunk loading is now measured per warehouse, and its default cap rose from 8 to 10 chunks. A corner turns one long rectangle into two shorter ones at right angles, so a warehouse that bends needs more chunks than any single aisle of the same length ever could: a straight aisle of 32 rails needs 8, an L of 32 + 16 needs 10, an L of two full aisles 12. The rule is unchanged — a warehouse over the cap holds nothing at all and works exactly as it always did — and the number it would have needed is now named in the controller's goggles and in /wareworks chunks. A server that had set the value itself keeps its own value, which is what a config is for; at 8 it will meet the cap at its first corner. The lines say warehouse where they used to count aisles — the goggle line for each of the two server limits, and every row and total of /wareworks chunks — because one holder is one controller and every aisle it owns
  • The item descriptions of the Warehouse Rail, the Stacker Crane and the Warehouse Controller now say what all of them do since rails may bend and split: rails lay out aisles that may bend, split into side aisles and close into a ring, every straight run of them keeps one letter however many junctions it passes through, the machine turns at a corner or a junction and takes the cheapest way where the rails offer more than one, and one controller gives every aisle of its warehouse a letter — the first one from its own value panel, each further one the next free letter
  • The screens that speak for the whole warehouse now say "warehouse" instead of "aisle". Before rails could bend, an aisle was the warehouse and every one of these lines was true; on a comb of four aisles they were not. So the controller's goggles and the terminal's screen head their warehouse "Warehouse A" rather than "Aisle A" — the letter is still the one your controller's value panel sets, and it is still the letter the first aisle carries — the terminal says "The warehouse holds nothing" and "Showing everything the warehouse holds", a stock keeper's rule that is over the limit says "this warehouse already applies its limit of rules", and a request from a block with no controller is refused with "not part of a warehouse with a controller". And because "the crane cannot drive to the aisle these items belong on" is a real answer now, the older one that read "an output is not reachable" says what it always meant instead: "an output station is not loaded or no longer there". The addresses, the aisle list and the dock's "On aisle B at position 7" still say aisle, because those really do name one. The two lines a block that belongs to no warehouse at all shows went with the warehouse ones, because they are drawn in the very slot that otherwise names it: a terminal says "Not part of a warehouse" and a Warehouse Summary display "No warehouse"
  • The German text calls the machine by one name. It is "Regalbediengerät" in every line now; a handful still said "Kran", among them three captions of the "Collecting" Ponder scene

This mod has no additional files