MineFortress Reforged 3.0.0.jar
Curse Maven Snippet
What's new
### Fixed: workers getting stuck while building
- Workers no longer pick the same square to stand on, body-block each other and
spend their time walking in circles. Each one claims its own work spot now.
- Builds no longer stall near the end with the whole crew asleep on top of them.
An idle worker in the way looks for somewhere nearby that nothing needs; across
a wide floor there was nowhere to go, so it stood on the cells that were left and
those cells could not be built because a worker was standing on them. A worker
with nowhere to step now walks back to the table and waits.
- A worker with nothing else to do takes a cell early instead of waiting out its
retry timer, and the retry backoff is 1-4 seconds instead of climbing to 9.
- A worker that gives up on a cell properly lets go of it, instead of leaving its
pathing, its half-broken block and its claimed spot hanging behind it.
- Workers no longer carry on breaking a mine support unrelated to their new task.
- Anything standing where a block has to go gets shoved aside, not just other
workers. One stray cow could previously stall part of a build.
- A worker that genuinely cannot reach somewhere reports it in seconds instead of
shuffling on the spot for minutes, so the job passes to someone who can.
### New: worker reach is configurable (workerReach, default 6)
Workers reached about 4.5 blocks, the same as a player. This is the single biggest
thing available against workers getting stuck: most of the time a worker is not
lost, it simply cannot find anywhere to STAND within arm's reach of the next block,
so the cell is put off and tried again later. Twice the reach is eight times the
volume of places to work from. Up to 12 if you want it. The search for a standing
spot widens in steps, so the common case costs no more than before.
### Fixed: workers not digging with a build command and overlay
- Blueprints never saved the empty space inside them, so nothing told the workers
the ground had to come out. A building placed into a hillside had its walls built
into the dirt and its rooms left full of it. Blueprints now record their own
interior, and placing one clears whatever stands in its footprint, so what gets
built matches what the overlay showed. Works for imported MineFortress and
Structurize blueprints too.
- You are told how many blocks will be cleared before the work starts.
- A few undiggable blocks no longer freeze an entire build.
- New option: blueprintCarveFootprint (on by default) for the old behaviour.
### Fixed: blueprints finishing with blocks missing
- Stairs, fences, walls, panes, bars, redstone and leaves work out part of their own
shape from their surroundings, so they never matched the plan again once their
neighbours existed. They were dug up and replaced on every pass until the mod gave
up on them for good. Only real differences count now.
- The final check that catches missing blocks gave each cell a second chance it
could not use, because the retry allowance carried over from the first pass. It
resets per pass now, and runs until a pass stops helping.
- Blocks the workers truly cannot place are no longer dropped in silence. A job used
to report "Finished" and leave you to find the hole. You now get the count, the
cause, and the coordinates of the first few: a container in the way, a land claim,
falling gravel, or a protection refusing the dig.
### New: build alignment - choose which way blocks face
- An Align bar above the build hotbar: pick a facing (Auto, N, E, S, W, Up, Down)
and an upper or lower half, and every block in that order is laid the same way.
R turns it, F flips it; both are buttons too.
- Until now workers placed every block facing whichever way the worker that placed
it happened to stand, so a row of stairs came out pointing four different ways.
- Set Preview to Blocks and the block itself is drawn see-through, turned the way
you chose, in the cells it will go in - a single block under the cursor before you
pick a corner, so you can check a stair faces the right way before ordering a
hundred of them.
- It works through the game's own placement rules rather than by setting block
properties by hand, so it covers stairs, logs, pillars, doors, trapdoors, slabs,
fences, glazed terracotta, observers and anything a mod adds. Auto keeps the old
behaviour.
### New: safe zones (Q)
- Drag a box and nothing the mod does will ever break a block inside it: not
pathing, not a dig or build order dragged across it, not blueprint clearing, not
tree felling, not a mine laid out through it. Your house, your farm, a build you
want left alone.
- Placing is not blocked - a safe zone keeps what is there, it does not stop you
adding to it.
- Zones are drawn in gold whenever the RTS view is up, and an order dragged over one
warns you before you click.
- Switch the tool to Clear to take a zone away.
- Saved with the world, kept per dimension, and they protect you from an ally's
workers too.
### Fixed: workers could not attack players on LAN or a server
- The setting that allows it was in the wrong config file, where each side read its
own copy and the server's choice never reached anyone. It is now a proper server
rule in <world>/serverconfig/rtscolony-server.toml, on by default and shared with
everyone who joins.
- Your world's own pvp setting is still respected: with pvp off, workers cannot hurt
players at all.
- Archers can now actually hit players. Their arrows passed straight through unless
the worker was under a direct attack order on that exact player, so squads and
guards never landed a shot.
- Enemy players can now hit workers back where the world allows workers to fight
players. Workers were unhittable by anyone but their owner, which made an attack
completely one-sided. A faction ally's workers stay protected either way.
- Workers will never hit you, your own workers, a faction ally or their workers, and
the end-crystal blast respects factions too (it previously did not).
- Ordering an attack that is not allowed now tells you why instead of silently doing
nothing.
### Factions now share colonies
Factions used to do one thing: stop allies attacking each other. Now:
- **Shared colonies.** Members can open each other's Command Tables, use the shared
storage and settings, and give orders to each other's workers.
- **Shared vision.** Allies' workers appear in RTS mode outlined in blue, and can be
selected and commanded alongside your own. They are never attack targets.
- **Shared alerts.** Base-under-attack and worker-killed messages reach the whole
faction.
- **Invite only.** Typing a faction's name used to be enough to join it. With shared
colonies that would have let anyone who guessed your name walk into your base, so
a faction now has a leader who invites and removes people, officers who can invite
as well, and members. Invitations lapse after 10 minutes.
- **New commands:** /rtscolony faction, plus create, invite, accept, decline, kick,
promote, demote, transfer, leave and disband. Names are tab-completed, and every
refusal says which rule refused it.
- **Rebuilt Colony screen panel** showing your rank, the members and theirs, who has
been invited and not answered, and only the buttons your rank allows.
- A leaving leader hands over to the next highest member; the last one out closes the
faction. Existing worlds keep their factions, with the first listed player leading.
### Worker and director improvements
- Workers are checked for whether they can actually reach a job before being sent to
it, not just in mines.
- Jobs above or below a worker are no longer treated as being as close as jobs on the
same level, so workers stop being sent to places they have to tunnel to.
- A worker that just failed at a job tries something else for a few seconds instead of
being sent straight back to it over and over.
- Performance: far less work done per tick while workers are idle, and the idle
"step out of the way" search no longer reads 1,445 cells per worker per pass.
### Under the hood
- The network protocol version was bumped: the colony sync, faction info and area
task messages all changed shape, so an out-of-date client is refused rather than
quietly misreading them.
- Removed dead code: an unused work-site scoring helper, an unused task accessor and
three unused faction accessors.
### Config changes
- workersAttackPlayers: moved from common to server config, default on
- workersAttackWorkers: moved from common to server config, default on
- workerReach: new, default 6 (was fixed at ~4.5)
- blueprintCarveFootprint: new, default on
This mod has no additional files

