Version 240

Update 240: "Lots of Fixes" was released June 14, 2019. It included fixes to several bugs affecting the game engine and code.

New Features and Highlights

 * New /DISCONNECT command in client for testing.
 * Relatives and graves that are further away than the 20 generation cutoff show DISTANT RELATIVE.
 * "Fixed so that if you click on an object that is surrounded NSEW but still accessible, you walk there, to that object's spot, and interact with it, instead of just walking there."
 * The issue with animals and other movable items not respawning when nature reclaims an area has been fixed. Fixed so that empty tiles that used to contain a natural object are restored when map is culled back to natural state.
 * Fixed cause of ghost players who just stand there but aren't really there (it was caused by someone passing through your area, going at least 64 tiles in one go without ever stopping their walk).
 * If name of Eve or baby is not unique within past two hours on the server, the closest unique name is chosen instead. No more roman numeral suffixes.

Fixes

 * "Fixed so that lives-left text never overlaps with re-detect or custom-server-disable buttons on login page. Fixed so that re-detect button doesn't linger after visiting settings page triggers a re-measure of FPS."
 * "There are now both Retry and Re-detect buttons when FPS mismatch occurs, allowing you to re-measure right then and there without restarting the game. We don't keep re-measuring every time we return to this screen, speeding up player login. We wait to fetch life token data from the server until after the first FPS measurement is over, to avoid networking hiccups messing up the measurement."
 * "Fixed memory leak."
 * "Fixed memory leak in killMessage."
 * Added support for sprites that disappear when an object is contained.

Server Fixes

 * "Reduced map database pollution with unnecessary 0-values (before, we would clear a tile's contained items, setting its num-contained to 0 in the db, every time an item was picked up from that tile, even if the item that was picked up contained nothing---now, we check that there are contained items there to clear before clearing them and inserting a 0 for num contained in the database). This cuts the number of database entries in half in many situations (thus reducing the disk size of the database dramatically)."
 * "If you disconnect and reconnect when you have 0 lives left, you are no longer blocked from logging in to resume your last life."
 * "Fixed bug where you could enter the kill-intent state against family members when holding the sword, and if you ever got close enough, the server would generate an endless flood of update messages for the failed kill action, overload network connections, and leading to disconnects. Now you can't even enter the kill-intent state if the weapon you are holding is not applicable to your target."
 * "Can no longer trigger a transition for worn clothing that takes it to an unwearable state (for example, hitting crown with hammer to turn it back into an ingot while you're still wearing it)."
 * "No more tutorial players in name logs."
 * "Fixed typo in square root of two in server code."
 * "Fixed disappearing springs caused by map cache not being aware of grid placement status."
 * "Trees and other permanent objects regrowing destroy sections of underlying roads in natural reclamation. However, surface non-permanent natural objects (stones, iron, etc.) will re-occur on top of the road."
 * "No language barriers on low-pop servers."
 * "Making sure REMV action is grid adjacent."
 * "Monument stats include year now."
 * "Fixed calculation of distance for fleeing/chasing animal movement."
 * "If you quit the client to disconnect and then reconnect as a twin, it will now kill your old self to make room for your twin (it used to confusingly reconnect you to your old life, and let your partner through as a lone twin)."
 * Will now swap held shoe with non-matching shoe first, or if both shoes are non-matching, swaps with the shoe you clicked on.