- Added spidetron to artillery_target_entities list
- Added code to fire a rocket at spidertrons as well as the non-damaging artillery
- Tested effect of 4 and 8 artillery rockets on spidertron. Kills shields quick but spidertron takes about a minute to die. Enough to deter them from staying too long but not too OP.
- If a player didn't have a character when they were jailed we would record their previous destructible state as `nil` which was treated as `false`. Now we treat `nil` as no previous character info and set the previous destructible state on repsawn/join.
- If a player was unjailed when offline or dead, we wouldn't restore the player character's destructible state, now we wait for them to rejoin/respawn to do that.
As per issue #1102.
- Checks if player is in spidertron
- Sets autopilot destination to position when jail used.
- Tried using similar to the train check but it didn't work for spidertron.
When a combat robot expires and is targeting an artillery wagon, it will now explode. This is a work around for a factorio bug where combat robots do not attack artillery wagons.
- Changed get_inventory(1) to get_inventory(defines.inventory.character_main) to make it clearer which inventory we're getting.
- changed area charted to 3x3 full chunks cented on the chunk containing the pinged coordinate. Will now charta 96x96 tile area which is more reasonable considering the cost of /spy
Players were using remotely located artillery wagons in lakes to cheesily clear the map with no repercussions. Swarms of destroyer capsules would hover over the artillery but not target it. They would timeout and the player could then refill the wagon with ammo.
I've changed the entity_died_events file to events.lua since it now has on_entity_died, on_player_died and on_combat_robot_expired.
I have added the on_combat_robot_expired event so that when the robots timeout they explode, damaging nearby entities.
Added lines to store the unix time the restart happens as well as how many ticks the game lasted. Starting storing these now so I have some interesting data to use in a week or two.
Added changed requested by grilledham:
- Used format_time function
- Added local var to show that text string was role ID.
- Added another commented var with the ID of a test role in case we want to test something and not ping @crash_site
- Added markdown to make printed string bold
Added discord notification for the @crash site role when crash site is restarted using the /restart command. Pings users with @Crash Site role and prints the map time to add to competitiveness.