HOLLOWCUT Devlog
Devlog · updated 17 Oct 2026

Cantorite: Night Freight — Devlog

A mobile-first tactics game in the Vesper Reach, in Godot. Your squad guards a train that lays track across a canyon: every Harrow shows where it will strike next round, and you push their attacks aside, four rounds at a time. It began as Carriage Line, an auto-battler, and was rebuilt as Night Freight: Railhead. This page follows it step by step: what changed, why, and what it looked like at the time.

The eras

The game is in development and is being rebuilt as Railhead. Each phase below is one step of the work, grouped into eras.

14 Oct – 15 Oct

Pre-production

Everything before the first playable build: a pitch picked from a round of ideas, concept art, the written design, asset references, a colour correction for the enemies, faction skins for the train, and the start of a vertical slice in its final style.

  1. a 14 Oct

    Pitch

    done

    Picked from a round of game ideas: a mobile-first roguelite auto-battler in the Vesper Reach. A short armoured train rolls through a gauntlet of stops; its carriages fire on their own, and between stops the player buys, orders and merges them. Godot 4 with GDScript; touch, mouse, keyboard and gamepad; Android and iOS first, then desktop and Steam Deck.

    Runs take about ten minutes, so a whole run fits into a short session.

    The first look from the mobile-ideas round, before the pitch was chosen. From the repo · 15 Oct
  2. b 15 Oct

    Concept art

    done

    Concept images generated with Flux 2 Klein: a first pass on the 4B model, then the 9B model for the keepers. Each batch was checked by eye and the keepers picked by hand. The key art and the conductor are the picks here.

    Key art: the train on a stone viaduct at dusk, with lightning over the Reach. From the repo · 15 Oct
    The conductor concept, the Gaffer: the first look at the character. From the repo · 15 Oct
  3. c 15 Oct

    Style guide, game design and screens

    done

    The first written design: a style guide (art direction, palette, UI rules), the game design, a technical design for Godot (deterministic simulation, platform integration, store, CI), the monetisation (a free first area, a one-time Full line unlock, no ads, no energy, no loot boxes), and every screen described with a mock-up image.

    de56ac8
    Title screen mock-up. From the repo · 15 Oct
    Route map mock-up. From the repo · 15 Oct
    Depot screen mock-up. From the repo · 15 Oct
  4. d 15 Oct

    Asset refinement

    done

    Reference sheets for the train (a locomotive turnaround and a carriage lineup) and the conductor (a turnaround sheet, with expressions and a dialogue portrait in the repo). The boss (the Viaduct Crawler) and the enemies were refined in the same round, in a first colour set that is shown in phase (e).

    Locomotive turnaround: front, side and three-quarter, with a rust boiler and a slate cab. From the repo · 15 Oct
    Four carriages in side view: cannon, gatling, flamethrower and tesla coil. From the repo · 15 Oct
    Conductor turnaround: front, side and back, in a rust coat with brass buttons. From the repo · 15 Oct
  5. e 15 Oct

    Canon colour correction

    done

    The enemies were the wrong colour. The Harrow are smoked quartz and ivory glass with glowing gold cracks; the first set was violet, which is the Umbra's colour. The mite, shard bat, beetle, worm, watcher eye and splinter were recoloured in gold. The violet set is kept only as the before.

    “Please note the harrow art.. its not in line with the other games. You're using purple which is umbra. Thst's fine.. umbra can be an enemy.. but the harrow should be gold”
    Before: mite, shard bat and beetle in violet, the Umbra's colour. From the repo · 15 Oct
    After: mite, shard bat and beetle in smoked quartz with gold cracks. From the repo · 15 Oct
    After: all six enemies from a steep top-down camera, in gold. From the repo · 15 Oct
  6. f 15 Oct

    Faction skins: Directorate and Umbra

    done

    The train and the conductor in two faction styles, as concept art. Directorate: pale steel with cyan running strips and a thin brass stripe, an armoured supply train. Umbra: a matte black locomotive with a single violet light. Not made yet: an Umbra conductor, and carriage variants for each role.

    “It Might be worth it to have several train styles.. eg this generic is fine.. but we might skin the train more as a directorate train.”
    Directorate train on rails: pale steel, cyan strips and a brass stripe. From the repo · 15 Oct
    Directorate conductor: near-white coat with cyan cuffs and brass buttons. From the repo · 15 Oct
    Umbra train in side view: matte black, with one violet light on the front. From the repo · 15 Oct
  7. g 16 Oct

    Vertical slice build

    done

    The vertical slice was built in its final style from day one, so nothing has to be re-skinned later. It is one whole run through Redcut Canyon: eight stops and the Viaduct Crawler as the boss on a stone viaduct, with a station halt to buy, merge and sell carriages between fights. Under it sits a deterministic simulation in whole numbers with headless tests, and the train, the Harrow and the canyon are 3D models scripted in Blender. The first screenshots and a gameplay video of the build were committed on 2026-10-16.

    ba4491a
    A fight in Redcut Canyon: the train rolls on while a swarm of glass Harrow closes in from both flanks. From the repo · 16 Oct
    The station halt: the train above, the shop with carriages to buy and merge below. From the repo · 16 Oct
    Stop 9 of 9: the Viaduct Crawler grips the train on the viaduct. From the repo · 16 Oct
16 Oct – 17 Oct

The first builds

From the playable slice to a private web demo, a clarity pass after the owner's first try, a visual pass, a new direction for the game, the rename from Carriage Line to Night Freight, an iOS project for TestFlight, and a second, turn-based build of the whole game.

  1. h 16 Oct

    Private web demo

    done

    A web export with its own HTML launcher, a native web menu and loading screen. The Cantorite platform hosts it privately in the EU behind an access check, at a -dev address; from 2026-10-17 the game's CI uploads and smoke-tests it on every push to develop. The first fight froze the page for six to nine seconds while its shaders compiled, so a Web Worker now warms the shader cache while the player is still in the menu, the fix Chime Walk used.

    “The wagon switching, buying, etc. is really weird. It doesn't feel intuitive. While the train is driving I have no idea what to do. The power-up doesn't seem to work.”
    a0180aa
  2. i 16 Oct

    Clarity pass

    done

    The answer to the owner's first try. The shop got one drag model for buying, merging, moving and selling, with valid slots lit up and a plain-words card on a long press. Fights became hands-on: tap an enemy to focus fire, tap the scrip shards to collect them, and a goal bar says which stop you are on. The power button was fixed (its events were wiped by the next simulation step), and each new idea gets one line of guidance with a pointing hand the first time it comes up.

    1089b64
    The station in the web build: one line and a hand show how to drag a carriage onto the train. From the repo · 16 Oct
    A fight in the web build: a focus ring on the tapped enemy, and a tip to tap the shards. From the repo · 16 Oct
  3. j 16 Oct

    The drive between stops

    done

    The route map between stops was replaced by a short drive of about ten seconds that the player takes part in: crates, shard piles and repair kits to tap or swipe, a junction with two signs to pick a branch, and now and then an ambush of three to five creatures. The train always rolls; if the player doesn't pick a branch, the default one is taken.

    fbf7824
    The drive: pickups along the line, and the junction's two signs at the top. From the repo · 16 Oct
    The power fired in the middle of a fight: FULL STEAM. From the repo · 16 Oct
  4. k 16 Oct

    Visual pass

    done

    Work toward a set of target concept images. The Harrow became six procedural glass creatures on one shader, each drawn in a single call and animated in the shader, all checked for a readable silhouette at 48 pixels. The train cars each got one atlas material, the canyon warm red sandstone with haze, the station a night halt and the boss viaduct dressed stone. Fight draw calls went from about 340 to 160.

    13a64a3
    Gold-cracked glass Harrow around the train, with branching tesla bolts. From the repo · 16 Oct
    The station halt: the concept image on the left, the build before and after the pass. From the repo · 16 Oct
  5. l 16 Oct

    A new direction, and a new name

    done

    The owner approved a new direction for the game: mobile first, push-your-luck runs as a freelancer hauling crystal, and turn-based fights instead of an auto-battler. The more cargo the train carries, the louder the world rings (the Hum), and at 100 the Harrow comes to reap it, so every load is a choice between one more and getting out. With the new direction the game was renamed from Carriage Line to Night Freight. The slug changed from carriageline to nightfreight in the game and on the Cantorite platform, the web addresses changed with it, and desktop saves are copied over once from the old folder. Older notes, screenshots and this devlog's first entries still use the old name.

    81b76d7
  6. m 16 Oct

    iOS project for TestFlight

    in progress

    An iOS export preset and a committed Xcode project, so Xcode Cloud can build the game; a script after the clone downloads Godot 4.7.2 and the iOS template and exports again before the build. Android and iOS share the store id pattern com.hollowcut.nightfreight. The branch was merged into develop on 2026-10-17. The headless export works; a build through Xcode and the first TestFlight upload are still to come.

    053e784
  7. n 16 Oct

    The Night Freight build

    done

    The new direction was first tried as a grey-box slice and then built in full by ten parallel work packages: the simulation with contracts, cargo, the Hum and the reaping, the app flow and saves, 22 real screens with EN and NL strings, a 3D stage for travel and fights, audio, performance presets and a benchmark. They were merged the same night and play a whole run. A device check on the owner's PC on 2026-10-17 held 60 fps in play, but the scene used 4 to 15 times its draw-call budget, and the Dutch strings overflowed on several screens.

    22addc4
    The push-your-luck choice: dig for two more crates or blast for four, and what each does to the Hum. From the repo · 17 Oct
    A turn-based fight on the train: the Harrow's intents in a list, the crew's actions below. From the repo · 17 Oct
    Travel between stations in the 3D stage (Dutch locale). From the repo · 17 Oct
17 Oct

Railhead

The game rebuilt in one day as Night Freight: Railhead: squad tactics on an 8x8 board, guarding a train that lays track, with the Reach map as the player's progress. The rebuild works on its own branch and is merged into develop when it is ready.

  1. o 17 Oct

    Why rebuild: the Railhead design

    done

    The Night Freight build played a whole run, but the device check's shots show screens full of sentences: contract boards, intent lists and long buttons. The rebuild starts from a new game design, a technical design, a UI design and an art guide, with the owner's rules on top: engagement first, not too much text, clear at first look, and only small guidance where something cannot be clear. Railhead is squad tactics: three units guard a train that lays track up one lane of an 8x8 board. Every Harrow shows the tile it will hit next round, and you move, shoot and push to turn those attacks aside, into rock, into each other or off the edge. Four rounds make a stretch, four stretches and a terminus fight make a run of 15 to 20 minutes, and each won stretch lays your faction's line across the Reach map. The name is now Night Freight: Railhead; the slug stays nightfreight.

    4c99a40
  2. p 17 Oct

    First playable

    done

    Built the same day: the deterministic stretch rules and the Harrow's AI with headless tests, the 3D board with procedural Harrow gems and crystals, the line run with route picks, rewards and a terminus, saves after every action, and a first-launch tutorial stretch with a pulse instead of text. The first Reach map came with it: a hex world where your line grows with every won stretch. It was merged into develop, whose pushes deploy the web build.

    80a7138
    An early stretch on the owner's GPU: the move tiles in cyan, a red target tile, the railhead coming up its lane. From the repo · 17 Oct
  3. q 17 Oct

    Models and the look pass

    done

    Unit models from the shared Cantorite assets were reduced to the budget (16k triangles and one 2048 atlas each) and wired in with their idle, walk, shoot and die clips. A unit shader adds a faction palette and a rim light: the Free Holds squad in navy and cream with an amber rim, the Directorate in cyan. Five more Harrow constructs were recorded from Harrowfall. A look pass added ink outlines, a split-tone grade and a vignette.

    6f0d468
    The unit models side by side at board scale. From the repo · 17 Oct
    The Harrow constructs: smoked glass with gold cores. From the repo · 17 Oct
  4. r 17 Oct

    The Reach map: region, planet, system and stars

    done

    The Reach map grew in layers. The region is a diorama of hex plates with lakes, forests and a real railway, where you pick the next hex (a quiet plain, a Harrow nest, a fort with its boss or a depot) and see the Directorate and Umbra lines as rivals. Zooming out shows the planet, a hex globe where the Harrow storm rises as a gold funnel; then the Vesper Reach system as an orrery; then the star chart as a holographic table. Ships from Harrowfall and Hush Money fly over it.

    2d6a764
    A region of the Reach map: the line runs in, and the next stretch is quiet or loud. From the repo · 17 Oct
    The planet layer: the hex globe with the railway and the gold Harrow storm. From the repo · 17 Oct
    The Vesper Reach system as an orrery with brass rings. From the repo · 17 Oct
  5. s 17 Oct

    Playtest round and board pass

    done

    After the owner's playtest: a goal banner with three objectives, a lineup before each stretch to pick a loadout and a boost, rival Directorate squads as enemies in later stretches, and a calmer board with one damage badge per tile. The railhead now shows where it will go next, rolls tile by tile and rams whatever stands in its lane before the victim dies. The selected unit gets a white spotlight, spent units grey out, and End turn pulses once every unit has acted.

    241ffc9
    The railhead rams a Harrow off its lane; the line's integrity is the bar over the train (Dutch locale). From the repo · 17 Oct
    The lineup before a stretch: the squad on a muster platform. From the repo · 17 Oct
    A loud route in round two: more Harrow, more red tiles. From the repo · 17 Oct
  6. t 17 Oct

    Sign-in and cloud save

    done

    Guest play stays the default. A small profile button on the map opens a sign-in with an e-mailed code through the Cantorite account, and once signed in the player's line across the Reach syncs on start, after every save and on resume. The same account code is what leaderboards will use.

    69aa0da
  7. N1 Later

    Next: the rest of Railhead's first milestones

    planned

    The rebuild's work lands on develop when it is ready. The first milestone is one faction, one world and a full run with a Warden at the terminus. Next come the Directorate and Umbra squads as playable factions, a daily stretch with a leaderboard, five Harrow types and three worlds; after that a weekly line, all nine worlds, achievements and the store builds.

The pre-production images are concept art, reference sheets and screen mock-ups made with an image model; from the vertical slice on they are screenshots of builds from the game's repository. Images are shown as they were made, with their remaining flaws.