What's new in the latest build?

0.17.122 : …speeeeed!

Updates in this build:

  • This update is all performance improvements, mostly focused on the CPU side, and mostly during a paused game state. (these performance boosts affect performance at all times, but I was focused on stuff that happens whether or not the game is paused, more than stuff that only happens while time is passing) There’s still a bunch more work still to do on this, but I think we’re in a much better state now even than in 0.17.121!

There also have been localisation updates for all languages.

My plan is for this build to be the next ‘default’ build on Steam; the first ‘default’ build update in far too long! I’m expecting to set this live as the Steam default build in about 36 hours, so if folks see major bugs with it, definitely hit me up either with a direct message here or on our Discord channel! Thanks so much for your patience, everyone!

0.17.124 : Translation fixes!

(Steam ate the 0.17.123 build, so we’re jumping straight to 0.17.124!)

New in this build:

  • There were some translation issues in the 0.17.122 build, and this fixes those!
  • Several CPU optimisations (still a lot more to do, here!)
  • If a subscriber is unsubscribing, logged in, and not logging out… then have them log out so they can actually unsubscribe? Instead of throwing our breakfast on the floor and stamping our feet and getting angry about it.

0.17.125

New in this build:

  • Fixed the ‘paused’ display taking over mouse control while the game was paused, preventing any other windows from taking mouse input.
  • Fixed the ‘paused’ display drawing behind the top left header block, instead of in front of it.

0.17.126

New in this build:

  • Fixed the critical issues in German localisation from the last build.
  • Substantial performance boosts to the simulation, when a lot of players are connected to the game at once.

0.17.127

Hotfix build which fixes an assertion failure in yesterday’s 0.17.126, when shrinking or destroying monster zones.

0.17.128 : The 2^7 build

(whoops! I got excited and posted this before the build has gone live on Steam. It should be live on the ‘test’ branch on Steam in about 30 minutes!)

New in this build:

  • Fixes drawing of walls that extend into the water.
  • Fixes sometimes being unable to destroy paths.
  • Fixes several bugs in NPC guard combat AI, which often resulted in guards just standing still and letting monsters attack them continually, or even monsters entirely ignoring them. This also fixes guards to correctly counter-attack if they’re attacked by a player. (Which the player AI won’t actually do right now, but if you take control of a subscriber and make them attack a guard, the guard now actually fights back)
  • Fixes scenery to adjust position correctly as the ground moves under them.
  • Fixes region raise/sink to re-generate the region correctly and create scenery objects correctly.
  • Much better detection and handling of whether paths/walls cross, during placement.
  • Re-implemented terrain rating calculations. These became substantially more complicated under the “free-paint terrain” system, compared against the old grid-based system, and were resulting in frame rate spikes when quests or buildings or paths were querying the terrain to determine what sort of land was around them, for performing “beauty” and “convenience” ratings. I’ve rewritten these calculations to be a lot simpler, while still getting approximately the same results as before, and this seems to have fixed those performance spikes (which were worst in big games with lots of quests or paths).
  • …and a bunch of other little fixes and improvements!

0.17.129 : Hotfix for German

New in this build:

  • There was an issue in the German localisation which caused it to not show money amounts correctly. I’ve now fixed that.
  • Fixes camera being able to rotate upside down (I was sure this fix went into 0.17.128, but it actually missed it by a single commit! Oops!)
  • Fixes fallback to “no sound” mode if FMOD is unable to open an output audio device.
  • New music track for the intro cutscene.

0.17.130

New in this build:

  • Further localisation hotfixes, mostly getting German up and working again.
  • Fixes a crash if you enter an ability’s cost or effect to be -., which isn’t actually a valid number but which the text editor allows you to type.
  • Renames the ‘@Despawn’ item to ‘@ReleaseControl’, and moves it to the second tab of the ‘Control’ action bar, so you don’t hit it accidentally. Also added it to localisation.
  • Control binding strings now go through localisation, instead of always displaying in English.

0.17.131 : Rare crash fix

New in this build:

  • Fixes a crash which could occur if a monster from a monster zone in one region wandered into a different region, and then you saved and re-loaded that save (this was most common across ocean borders), as the game got confused about which region the monster should be looking for aggro inside. Now fixed; monsters only aggro inside the regions where their monster zones are placed.

0.17.132

Oops! This was actually released three days ago.

New in this build:

  • Fixes a bunch of combat AI problems which were resulting in large groups of players all always trying to attack the same monster in a monster zone.
  • Fixed a bug which caused newly-placed monster zone monsters to not be registered with the aggro system until after a save/load or after a zone density change. This meant that they wouldn’t choose to attack players who didn’t attack them first!
  • Updated the data file which guides generation of player character names, based upon a census of about 9,000 actual character names from real MMORPGs.
  • Fixed the camera ‘focus on’ functionality when choosing to focus on something or someone that’s extremely far away from the camera. (it was aborting the camera movement only partway through)
  • Fixed combat ability edits to be applied if you switch directly from looking at one ability to another ability. (We were already doing this for closing the window, for clicking the ‘Back’ button, or for switching tabs. This change just does the same thing when you switch from viewing one ability to viewing another one)

…plus a few more minor fixes!

0.17.133 : Pathfinding

Double super-experimental build; beware! This one has teeth.

New in this build:

  • First attempt at making players always obey obstructions. That is, if you’ve walled something off entirely (say, by building impassable walls all the way around it), in earlier builds the players would see that there was no legal path to get there and would shrug and ignore the obstacles and just walk through the wall. Now, for the very first time, they absolutely will not walk through walls or other obstacles, even if that means they cannot get somewhere they want to go.

    This is a dangerous change because players don’t like it when they can’t go somewhere. And if an attempt to go somewhere actually fails, it’s probably possible that they’ll try to go there again and get into an infinite loop of getting angrier and angrier that they can’t (for example) reach that inn. Or can’t afford to take the flight path which is the only way to get into the next region. Or etc. But on the other hand, it means that walls now actually work the way that you’d expect them to. I’m expecting that we’ll find a few things that players really get worked up about, which will need to be fixed in the next build. But my initial testing seems to suggest that things are behaving generally well so far!

  • Improved pathfinding logic about traveling to landmarks and taverns and other buildings where players interact outside the building. We now make sure that the spot where we’re trying to go is actually on the navmesh, instead of sometimes randomly trying to go to a point that’s inside a different building or in the middle of a wall or etc.

  • Fixed pathfinding over mountain passes.

  • Fixed pathfinding to correctly fail, when attempting to pathfind to a point that’s not on the nav mesh. (previously, it treated the “not actually on the nav mesh” destination as being in the closest triangle to the destination, which could result in some pretty weird paths being generated. And also in generating paths at all to a point that players shouldn’t be able to reach)

1 Like

0.17.134 : The “fixing teeth” build

I mentioned that 0.17.133 was a build with teeth; this build fixes an issue that came up in it.

New in this build:

  • Fixes a bug which caused players to (eventually) attempt to walk directly to an incorrect position, without even looking for a path. This would occur if the player was inside a building and chose to travel to a Landmark or to a Tavern. (that incorrect position was typically the very southwest corner of the map, which would result in them just walking into the sea and drowning)
  • Fixes a bug which causes untraversable terrain inside a region to not be treated as untraversable after a load, until the terrain is edited again in the region.
  • Fixes a bug which could cause more players than normal to log in immediately after a load, which would last until the next new day occurred.

This build also upgrades us to using Slug v5.1 for text rendering, updated from Slug 4.2. There should be no visible difference.

0.17.135: Miscellaneous tweaks

(This build was actually uploaded to Steam two weeks ago; I apparently forgot to write about it here, so I’m doing it now, before writing about 0.17.136!)

New in this build:

  • Fixed a bug which made it difficult to remove entrances from set dressing buildings on the east or north sides of buildings.
  • Added error messages for when the set dressing editing tools won’t allow you to do something, to tell you why it won’t let you do those things.
  • Fixes the “random save name” functionality to actually work correctly. (Previously it would generate a random save name, but wouldn’t actually use it)
  • Adds a debug option to draw player paths. This is handy for me to help debug pathfinding issues, but might be interesting to other folks as well, so I’ve exposed it in the game options.
  • Fixes all tooltips in the quest editing interface.

0.17.136: Unsubscribe Reasons

New in this build:

  • The game now presents an Unsubscribers report (unsurprisingly on the ‘Reports’ tab). On this page, you can see a graph of how many unsubscribers you’ve had over time, as well as a breakdown of the reasons that people gave for unsubscribing. Like in the ‘Thoughts’ report, when you select one of the reasons, the game will show a heatmap of where players were when they had each complaint.
  • Fixes a crash bug if there are buildings in a saved game which the game doesn’t understand (because of the game coming from a newer build which contained buildings that an older build of the game doesn’t know about) (this obviously couldn’t happen before as no new buildings have been added to the game since Early Access began, but that’s about to change!)
  • Players now understand that guards might sometimes be dead, and no longer get annoyed that they’re unable to ask the guard for directions. (They go to find a different guard, or else check an online guide, instead)
  • Fixes “dropped weapons” bug, which would sometimes result in dozens or even hundreds of pure-white weapons to be randomly strewn about until you pointed the camera at the character that was supposed to be carrying each weapon. This mostly happened on larger games, when players bought weapons while out of view of the camera.
  • Improved formatting of award laurels.

0.17.137: Subscription Savings Plan

New in this build:

  • The “Unsubscribe Reasons” dialog yesterday exposed that a lot of subscribers were having trouble paying their subscription fees; they’d unsubscribe just because they didn’t have enough money in their daily entertainment budget to pay the monthly subscription fee when it was charged.

    Now subscribers budget to save up enough money for the subscription fee. It’s deducted from their entertainment budget before they’re able to spend it. You can see the status of their savings and when their next subscription payment well be on the ‘Inventory’ tab of the player information window, displayed when you select a player.

  • Fixed an AI bug which was resulting in players thinking they were waiting in a login queue when actually they were playing the game. This could cause them minor annoyances when they logged out each day.

0.17.138 : Parties V1 (a week ago)

(Oops! I keep forgetting to post these; sorry!)

New in this build:

  • This was a test build with the first implementation of support for players joining into parties to adventure together. To get parties to be formed, you must enable the ‘Parties’ technology, and then go into the ‘Design’ window and turn it on, on the ‘Features’ tab, the same way you do with PVP.

0.17.139 : Parties V2

New in this build:

  • This is a complete rebuild of the parties system from 0.17.138, which is much much more robust and reliable, and is also easier for me to maintain and extend! If nobody finds any showstopper bugs in the next 24-48 hours, then I’ll be promoting this to the ‘default’ branch on Steam.
  • Fixes a tiny tiny memory leak (leaked about a dozen bytes of memory each time you open an information window about a player; this memory would be restored when the game was exited)

0.17.140 : Hotfix

New in this build:

  • Fixes a freeze which could occur in 0.17.139 if you placed a new building, road, or wall while the pathfinder was overloaded, in a region where pathfinding requests were queued up.
  • Fixes an occasional game shutdown crash, introduced in 0.17.139.

0.17.141: (two days ago, oops again!)

New in this build:

  • Adds a whole bunch of new building model variants. Almost every type of functional building now has two or three new versions of the standard model, all created by the new artist who’s been working on the project for only a couple weeks. I’m looking forward to continuing to drop in new art assets in future updates!
  • Fixes the non-drawing of developers and game masters. (oops!)
  • Fixes building names overrunning the width of the building info window.
  • Starting points now generate obstructions around themselves, so players won’t path straight through them.
  • Fixes incorrect detection of paths running into each other when you start laying a path from the endpoint of another path. (This also affected walls)
  • Changes player info window statistic line to say “Total time played:” instead of “Connected for:” to make it more obvious that it’s talking about the total amount of time that subscriber has played the game, not just how long they’ve been connected so far during the current play session.

0.17.142 : Last updates before the Party Update (one day ago, oops!)

New in this build:

  • The party info window now shows more statistics about the selected party.
  • You can now select an individual player within a party by double-clicking on them. (previously, there was no way to select a single player who was in a party; clicking on them would select the whole party, instead)