Dear Eco Citizens, we are happy to announce that Update 9.7.5, the second part of our 9.7 Performance Update series is now available. Thanks to our wonderful community, especially all players helping us with performance diagnostics and testing this release on official server White Tiger, we are confident that we were able to address most causes for FPS drops over time in Eco. Starting with this update you should no longer need to restart the game after longer play sessions to restore your FPS. Naturally, our playtests cannot test every single possible hardware and settings configuration, so your feedback will be key going forward to fix any potentially remaining issues. There will be a third update in the series expanding on the improvements already made in the new year and we'll soon be ready for more news on Update 10 as well. For now, all that is left for us to say is a big thank you from the whole Strange Loop Games team for your support during this year - we wish you and your families happy holidays and a healthy new year 2023! [img]https://clan.cloudflare.steamstatic.com/images//25097638/050f5c8ea0696a41754e78e12e2ca53f5cd2cfc4.png[/img] [h3]Optimization - Client[/h3] [list][*] [b]Fixed:[/b] Transforms update time (those updates happen for every position, rotation and scale change) increased over time and led to reduction of FPS during play sessions. [*] [b]Fixed:[/b] Rendering time for minimap objects increased over time due to leaking graphics command buffers, which also led to reduction of FPS over time. [*] [b]Improved:[/b] All trees were rewritten to optimize creation and rendering performance, got mesh based LOD (Level of Detail) and now use static meshes for rendering instead of animated skinned meshes, decreasing the rendering and chunk loading time. [*] [b]Improved:[/b] In some cases repeating errors getting written to the log files in very high amounts could decrease performance, error logging has been limited so that this doesnt happen while preserving our ability to investigate and address them.[/list] [h3]Optimization - Server[/h3] [list][*] [b]Improved:[/b] Stockpiles were generating too many block updates, trying to set blocks of stockpiles that didn't change. [*] [b]Improved:[/b] Introduced caching to some of the initially sent views, notably reduces lag when players join a server and the loading time for those players. [*] [b]Improved:[/b] Client updates are now faster, objects that aren't visible to the player are no longer checked as often. [*] [b]Improved:[/b] The network thread in some circumstances got overloaded, we moved some heavy work to a different thread, this notably reduces the amount of server lag (disconnect symbols) especially on bigger servers. [*] [b]Improved:[/b] Sped up calculations for predators by searching for potential prey from their own collection, instead of a collection that contains all physical objects.[/list] [h3]Civics[/h3] [list][*] [b]Fixed:[/b] It was no longer possible to create civics before a constitution was passed and hence there was no way to pass a constitution with additional civics as a multi-election right from the start. [*] [b]Fixed:[/b] Default demographics could be edited ingame. [*] [b]Fixed:[/b] Laws would sometimes show a "Ignoring Trigger as that would result in a recursive law" message despite the law not being recursive and the action completing successfully. [*] [b]Fixed:[/b] Hands were no longer available as a tool for civic triggers. [*] [b]Fixed:[/b] Civics showed options related to an unreleased feature. [*] [b]Fixed:[/b] Contracts no longer showed their description on the contract board.[/list] [h3]UI[/h3] [list][*] [b]Fixed:[/b] The skid steer could highlight itself as interactable when mounted. [*] [b]Fixed:[/b] The improved highlighting for selected items during avatar creation didn't apply to all parts of the avatar. [*] [b]Fixed:[/b] The claim highlights did not display white borders between deeds anymore. [*] [b]Fixed:[/b] The claim highlights in some cases displayed a color that is different from the set one. [*] [b]Fixed:[/b] The tooltip for "Citizen" didn't work correctly. [*] [b]Fixed:[/b] The title of work orders in their tooltips could change to a generic name. [*] [b]Fixed:[/b] The tooltip for titles displayed "Wages Source Bank Account" in the wrong color. [*] [b]Fixed:[/b] The position of a player joining the server on the map could be displayed at 0,0 instead of the correct coordinates. [*] [b]Fixed:[/b] The map UI could break, leading to the player only moving the icon layer when trying to move the whole map. [*] [b]Fixed:[/b] Empty slots in the "public crafting stations" tab of the economy viewer wrongly showed a empty tooltip. [*] [b]Fixed:[/b] The tooltip for an election ratifying a constitution didn't update the players eligibility to vote until a server restart. [*] [b]Fixed:[/b] Depending on world size, the icons displayed on the minimap could be too big.[/list] [h3]World Objects[/h3] [list][*] [b]Fixed:[/b] Framed Glass windows that weren't connected to a different block had no collision. [*] [b]Fixed:[/b] Redwood signs used the texture of saguaro wood. [*] [b]Fixed:[/b] Shadow placement of glass with glass refraction setting turned on showed only a bright white block instead of the glass block.[/list] [h3]Ecopedia[/h3] [list][*] [b]Fixed:[/b] Ecopedia showed hidden items that are unavailable. [*] [b]Fixed:[/b] Links in Ecopedia lost their color that hints at them being clickable.[/list] [h3]Balance[/h3] [list][*] [b]Changed:[/b] Copper plates now require a machinist table nearby to craft.[/list] [h3]Miscellaneous[/h3] [list][*] [b]Added:[/b] Holiday theme for spruces, storage boxes and elks. [*] [b]Improved:[/b] Animal collision with players has temporarily been disabled until their AI is reworked. [*] [b]Fixed:[/b] The message when hitting the shell of a tortoise with an arrow claimed it bounced off, dealing no damage despite it dealing reduced damage. [*] [b]Fixed:[/b] Claim highlights on worlds with some specific sizes, such as 120x120, were showing misaligned. (This might need a new world to take effect) [*] [b]Fixed:[/b] After reloading a chunk, fish could hover above blocks where players built structures over water. [*] [b]Fixed:[/b] The candle in the starter camp disappeared when sleeping - but it's flame did not. [*] [b]Fixed:[/b] The player avatar held their empty hands up in third person view after the player ate something. [*] [b]Fixed:[/b] Multiple visual issues with animal movement when the player has high latency. [*] [b]Fixed:[/b] Adding labour to crafting projects was sometimes not possible without restarting the project due to the players skills not being properly detected. [*] [b]Fixed:[/b] Players could be locked in vehicles and on mountable objects by loosing authorization while mounted.[/list] [h3]Server & Configs[/h3] [list][*] [b]Added:[/b] The commands dealing with profiling, administrators, bans, whitelist and mutes can now be executed via RCON. [*] [b]Added:[/b] A new system to automatically kick idle players always or just when the server capacity is occupied to a set percentage and someone tries to join. Idle players will receive a popup warning when they reached the set idle time threshold. Admins are exempt from idle kick. [*] [b]Fixed:[/b] A rarely occuring issue that could lead to crashes and objects being removed at server start.[/list] [u][b]Difficulty.eco.template[/b][/u] [list][*] [b]Added:[/b] "SkillbookCraftCost" config variable, taking the values "Normal" and "Expensive" - the latter making the recipes for skillbooks harder, which was priorily part of the "EndgameCraftCost" setting.[/list] [u][b]Network.eco.template[/b][/u] [list][*] [b]Removed:[/b] The setting "MaxConnections" was removed as it was replaced by "DefaultSlots".[/list] [u][b]Users.eco.template[/b][/u] [list][*] [b]Added:[/b] "RequiredOccupancyBeforeAFKKick" config variable, taking a value between 0 and 100 to determine how full the server needs to be (when a maximum amount of slots is set) in percent for kicks for idling to be executed. If 0, idle players will always be kicked - that is also the default. [*] [b]Added:[/b] "TimeRequiredForAFKMinutes" config variable, taking any value in minutes to determine how long a player needs to be inactive to be kicked. The default is 0, which disables the feature. [*] [b]Changed:[/b] The setting "UsersWithReserverSlotsAtQueue" was renamed to "UsersWithReservedSlotsAtQueue" due to a typo.[/list]