PC Off-centered spawn point stops invasion from actually arriving

ZeroRin

Terrarian
Steam or GOG
Steam
Single Player/Multiplayer
Single
Operating System
Windows 11
Terraria Version
1.4.4.9
Controls Used
Keyboard/Mouse
The invasion event (goblin, pirate, etc.) is designed as follows: when a invasion start, it will move from one side of the map towards the player's original spawn point. Before arrival, invasion enemies only spawn when player is close to the (moving) invasion center, but after arrival invasion enemies starts to spawn around all of your towns (where town NPC exists).

However, while the "The xxx has arrived" message appear when the invasion arrives player's spawn point, enemies starts to spawn near towns when the invasion arrives the center of the world (±5 blocks). As a result, if the spawn point is more than 5 blocks away from the center of the world, invasion won't arrive when it "arrives". Although usually the spawn point is close to the center of the world, sometimes it can be 10 blocks away. Also if you play a celebrationmk10 seed the spawn point will be near the sea which is far away from the center of the world.

This should be easy to fix, by simply replacing `Main.maxTilesX / 2` the spawn condition by `Main.spawnTileX`.

1704603875891.png

The invasion enemy spawn condition in NPC.SpawnNPC, which uses `Main.maxTilesX / 2`

1704603960325.png

The invasion moving condition in Main.UpdateInvasion, which uses spawnTileX
 
From my experience, bug reports that even *mention* code get ignored relentlessly, so this is gonna be fun
 
Back
Top Bottom