-
Posts
2084 -
Joined
-
Days Won
934
Content Type
Profiles
Forums
Blogs
News
Store
Everything posted by Tyron
-
Dear Extraordinary Survivalists v1.18.7, a stable release, can now be downloaded through the account manager (section "Other Goodies"). This update contains a number of high priority fixes that make another 1.18 release worthwhile. Anego Studios Status update After the hectic release of 1.18 most off us went off the gas pedal, took some time off to recharge and enjoy the summer days. Most of the team has now returned from their holidays and activity is picking up again. As for me personally, there are a number of loose ends that I need to tie up before I can fully focus on actual game content again. I started on some updates on our model creator so that our artists can work to the best of their abilities, as well as some improvements to our world edit commands for Elvas, our builder. At the same time th3Dilli is finishing up the .net7 version of the game and so we are looking into perhaps making the plunge to .net7 as a minor update to 1.18. The release is however tightly coupled to also supporting .net7 on our Vintagehosting servers which is now in testing phase, while (again) at the same time we are in the final phases having principal mod support for Vintagehosting, which also requires a couple of updates on the game client for convenient mod management. On another front I am currently attempting to delegate more work that I have been doing so far, which is also a time intensive process. The first step in that direction was to promote Vallen to community manager and disabling my direct messages on discord, as about 50% of all DMs were things that can be handled via support tickets. I'm also looking into handing over development of Vintagehosting as well as a potential rewrite of the model creator. Redram has been churning out some very interesting mechanical power and animal models, but we don't know yet into which release those will go. Radfast has embarked on a grand journey deep into the game engine code, possibly never to be seen again . Should he re-emerge on the other side then the game engine will have an epic new feature that I shall not disclose for now Elvas is currently doing a full rework on our existing surface ruins, but I also cannot tell when that will make it into the game - soon or later for sure The next story event is in planning phase as well, I personally hope we can prepare some of it already as part of the 1.19 update - we still need to figure out what to prioritize, as we already have a gigantic list of things we would want to address as part of a dejank update. And lastly, most of the team, including myself, will meet for the first time in real life in London this October. We'll also take a peek at the EGX Event that happens around that time, and we'll likely also invite every one of you to come say hello. More information on that later. While taking quite some time organize, I believe it will greatly benefit us in the long term. In short, lots of things happening! Screenshot by Ave_Maria, shared in #screenshots on Discord Game updates Tweak: Can now eat honey comb directly Tweak: Added logging to identify issue with missing textures on toolracks Tweak: Show all processes on Linux and Mac too with /debug threadpoolstate Fixed: Completely broken visuals on some items stored on the ground, such as shoes Fixed: Block ticking not working at all in some cases in large worlds Fixed: Do not spawn massive amounts of threads during worldgen on CPUs with high core count. Should fix high cpu usage on CPUs with 20+ cores (and my game servers running at the same time) Fixed: .reload textures command not working and producing invisible chunks on redraw Fixed: Farmland had incorrect moisture level calculation from rainfall (thanks Amzd!) Fixed: Game server freezing completely on certain chunks from old savegames Fixed: Landform scale world config missing translation entries and using wrong default values Fixed: Able to build a coke oven from any material Fixed: Copying positions to clipboard should be disallowed if allowCoordinateHud is off and not with allowMap being off Fixed: /time add command result message only returning invalid language key Fixed: Coal burning only in layers (2 items) instead of per single coal Fixed: When only one coal was left in a coal pile you could not pick it up Fixed: .charsel leaving changed class on the client side if the player did not have permission to change it in the first place
- 7 comments
-
- 37
-
-
-
-
Dear players, as part of our net7 upgrade we also exchanged much of the framework required to run the game, which also has better support for mac, so we would be very interested to know if this version works for mac users now - with the potential of officially supporting Mac again. You can download the net7 build from info.vintagestory.at Thanks!
-
Dear Extraordinary Survivalists v1.18.6, a stable release, can now be downloaded through the account manager (section "Other Goodies"). Hopefully the last release for 1.18.x unless something is critical enough to fix. Optionally, a .NET 7.0 build of this version is also available on info.vintagestory.at. It offers better and smoother performance and - in the vanilla game - no disadvantages that we are aware of. If you play a modded game, a very small number of the available mods for 1.18.6 will currently not load in the .NET 7.0 version, try your favourite mods and see! Gameplay in single player and multiplayer is identical between the .NET 7.0 build and the regular stable release. There are micro-differences in startup and shutdown which are hardly noticeable, for example in the way that it switches in and out of fullscreen mode. Modders: if your mod is coded and uses any GUI, please see the API Tweak mentioned below, this should help you to create a 1.18.6 version of your mod which works in the same way under both stable and .NET 7.0 releases. In future, we plan for upcoming 1.19.x and later versions of Vintage Story to be released in .NET 7.0 only, so this .NET 7.0 build can be seen as a sneak preview of that! As a reminder, .NET is the software framework that players must have installed to run the game. Its latest incarnation, .NET 7.0, provides us with noticeable performance and stability gains for the game. Our .NET 7.0 page provides a link where you can download .NET 7.0 from Microsoft if you don't have it already. NET 7.0 also greatly helps Mac and Linux compatibility, we are pleased to see large performance benefits on Linux, and we are working on getting back to the game being fully playable on Mac OS as well. As for 1.19 - we still plan that one to be focused on De-jank. That means finishing up some loose ends, adding a few small new features and one major new feature (which will be a surprise!), as well as reworking a few of the not yet optimally designed mechanics. Stay tuned! Screenshot by alostgrue, shared in #screenshots on Discord Game updates Tweak: Updated community translations Tweak: Added a number of missing translation entries Fixed: Avoid a rift ward crash Fixed: Sign/Label typing oddities (text didnt autobreak) Fixed: Using 1-click mod install while a game world is loaded caused undefined behavior. Now gracefully exits the game world first. Also includes all the fixes from 1.18.6-rc.1 and 1.18.6-rc.2: Tweak: Polar bears now cannot climb, but can swim faster than other bears Tweak: Polar bears visually lower in the water when swimming Tweak: (cosmetic) Bear respiratory rate slower when sleeping, sitting or standing still, depending on size of bear Tweak: Handbook display of baking result now shows "(in oven)" not "(in firepit)"Tweak: Additional optional parameter for command /debug logticks to include off-thread data in results Tweak: Changed command /entity cmd [selector] wipeall to /entity wipeall as it does not require a selector Tweak: v1.18.5 had fixed the server privileges escalation issue only by ~90%. This version should be 100% secure now on that aspect. 1.18.6 clients require servers to be on 1.18.6 as well. (Technical info: Completely reworked client<->server handshake) Tweak: Added capability to disable player-2-player collisions (/worldconfigcreate bool player2PlayerCollisions false) Tweak: Added frameprofiling capability for server threads to help find a performance leak likely in one of the threads. Add command /debug threadpoolstate Fixed: Crocks, bowls, and other food containers were losing cellar protection if picked up in 1.18.5 Fixed: Stone, wood and brick slabs placed vertically adjacent to snow could show Unknown (?) texture Fixed: Bears stuck in running animation forever (when chasing a creature which is in a hole the bear cannot fit into) Fixed: Electrum plate could not be smithed Fixed: Drifter drops are no longer affected by weight; drifter info no longer shows Low Weight (or any weight at all!) - so you should generally now receive more loot (on average) from killing drifters Fixed: Bees not being aggressive since 1.18.2 Fixed: Night Vision Mask duplication by putting in more then one gear as fuel Fixed: Decor blocks and also sometimes entities (armor stands etc.) were missing from any structures rotated by worldgen prior to placement Fixed: Axe breaking while felling a tree left floating leaves Fixed: Bucket with alcohol portion showing up in handbook Fixed: Player in bed rotation being backwards Fixed: Raft animations getting broken when pressing too many keys Fixed: Metal parts not centered in GUI Fixed: When unmounting a mountable (raft/bed) placed by someone else, the server did not unmount the using player, when seen by others Fixed: It was possible to read coordinates in other ways in games with worldmap disabled Fixed: Prospecting Pick results (and other chat window output localised to the individual player) are now shown in English if the player's own language is missing the translation Fixed: Extended picking range when mouse is not grabbed (thanks to @noelle-lavenza) [details: Github issue #42] Fixed: Log spam from EntityPhysics after a mod caused an exception in called entity code (for example, if an entity died during physics ticking due to walking into fire or lava, and a mod could not interpret that death reason) Fixed: Rare crash in Clay Oven Fixed: /land claim grant|revoke crashing the game if the claim had not yet been loaded Fixed: Rare client crash in CullVisibleFacesWithDecor due to multithreading Fixed: /wgen testmap rockstrata not working API Tweak: Deprecate methods in GuiElement with Bitmap parameters, please use equivalent overloads with BitmapExternal (this helps to prepare your mod for .NET 7.0, so that re-coding a mod for .NET 7.0 may then not be necessary: note that System.Drawing.Bitmap does not exist in .NET 7.0) API Feature: IServerAPI.AddServerThread() allows mods to create ServerThreads: advantages are that thread pause, shutdown and tick profiling are managed by the server API Tweak: IContainedMeshSource can now return a null mesh to ask the caller to make a default mesh instead; and the container block may be smarter about drawing the textures of IContainedMeshSource items (needs testing!) API Fixed: Some icons no longer centered in GUI dropdown (#2645) API Fixed: Game could crash if a mod uses OnTestBlockAccess with any result other than Granted (Github issue #2761) View full record
-
- 7
-
-
-
-
Dear Extraordinary Survivalists v1.18.6, a stable release, can now be downloaded through the account manager (section "Other Goodies"). Hopefully the last release for 1.18.x unless something is critical enough to fix. Optionally, a .NET 7.0 build of this version is also available on info.vintagestory.at. It offers better and smoother performance and - in the vanilla game - no disadvantages that we are aware of. If you play a modded game, a very small number of the available mods for 1.18.6 will currently not load in the .NET 7.0 version, try your favourite mods and see! Gameplay in single player and multiplayer is identical between the .NET 7.0 build and the regular stable release. There are micro-differences in startup and shutdown which are hardly noticeable, for example in the way that it switches in and out of fullscreen mode. Modders: if your mod is coded and uses any GUI, please see the API Tweak mentioned below, this should help you to create a 1.18.6 version of your mod which works in the same way under both stable and .NET 7.0 releases. In future, we plan for upcoming 1.19.x and later versions of Vintage Story to be released in .NET 7.0 only, so this .NET 7.0 build can be seen as a sneak preview of that! As a reminder, .NET is the software framework that players must have installed to run the game. Its latest incarnation, .NET 7.0, provides us with noticeable performance and stability gains for the game. Our .NET 7.0 page provides a link where you can download .NET 7.0 from Microsoft if you don't have it already. NET 7.0 also greatly helps Mac and Linux compatibility, we are pleased to see large performance benefits on Linux, and we are working on getting back to the game being fully playable on Mac OS as well. As for 1.19 - we still plan that one to be focused on De-jank. That means finishing up some loose ends, adding a few small new features and one major new feature (which will be a surprise!), as well as reworking a few of the not yet optimally designed mechanics. Stay tuned! Screenshot by alostgrue, shared in #screenshots on Discord Game updates Tweak: Updated community translations Tweak: Added a number of missing translation entries Fixed: Avoid a rift ward crash Fixed: Sign/Label typing oddities (text didnt autobreak) Fixed: Using 1-click mod install while a game world is loaded caused undefined behavior. Now gracefully exits the game world first. Also includes all the fixes from 1.18.6-rc.1 and 1.18.6-rc.2: Tweak: Polar bears now cannot climb, but can swim faster than other bears Tweak: Polar bears visually lower in the water when swimming Tweak: (cosmetic) Bear respiratory rate slower when sleeping, sitting or standing still, depending on size of bear Tweak: Handbook display of baking result now shows "(in oven)" not "(in firepit)"Tweak: Additional optional parameter for command /debug logticks to include off-thread data in results Tweak: Changed command /entity cmd [selector] wipeall to /entity wipeall as it does not require a selector Tweak: v1.18.5 had fixed the server privileges escalation issue only by ~90%. This version should be 100% secure now on that aspect. 1.18.6 clients require servers to be on 1.18.6 as well. (Technical info: Completely reworked client<->server handshake) Tweak: Added capability to disable player-2-player collisions (/worldconfigcreate bool player2PlayerCollisions false) Tweak: Added frameprofiling capability for server threads to help find a performance leak likely in one of the threads. Add command /debug threadpoolstate Fixed: Crocks, bowls, and other food containers were losing cellar protection if picked up in 1.18.5 Fixed: Stone, wood and brick slabs placed vertically adjacent to snow could show Unknown (?) texture Fixed: Bears stuck in running animation forever (when chasing a creature which is in a hole the bear cannot fit into) Fixed: Electrum plate could not be smithed Fixed: Drifter drops are no longer affected by weight; drifter info no longer shows Low Weight (or any weight at all!) - so you should generally now receive more loot (on average) from killing drifters Fixed: Bees not being aggressive since 1.18.2 Fixed: Night Vision Mask duplication by putting in more then one gear as fuel Fixed: Decor blocks and also sometimes entities (armor stands etc.) were missing from any structures rotated by worldgen prior to placement Fixed: Axe breaking while felling a tree left floating leaves Fixed: Bucket with alcohol portion showing up in handbook Fixed: Player in bed rotation being backwards Fixed: Raft animations getting broken when pressing too many keys Fixed: Metal parts not centered in GUI Fixed: When unmounting a mountable (raft/bed) placed by someone else, the server did not unmount the using player, when seen by others Fixed: It was possible to read coordinates in other ways in games with worldmap disabled Fixed: Prospecting Pick results (and other chat window output localised to the individual player) are now shown in English if the player's own language is missing the translation Fixed: Extended picking range when mouse is not grabbed (thanks to @noelle-lavenza) [details: Github issue #42] Fixed: Log spam from EntityPhysics after a mod caused an exception in called entity code (for example, if an entity died during physics ticking due to walking into fire or lava, and a mod could not interpret that death reason) Fixed: Rare crash in Clay Oven Fixed: /land claim grant|revoke crashing the game if the claim had not yet been loaded Fixed: Rare client crash in CullVisibleFacesWithDecor due to multithreading Fixed: /wgen testmap rockstrata not working API Tweak: Deprecate methods in GuiElement with Bitmap parameters, please use equivalent overloads with BitmapExternal (this helps to prepare your mod for .NET 7.0, so that re-coding a mod for .NET 7.0 may then not be necessary: note that System.Drawing.Bitmap does not exist in .NET 7.0) API Feature: IServerAPI.AddServerThread() allows mods to create ServerThreads: advantages are that thread pause, shutdown and tick profiling are managed by the server API Tweak: IContainedMeshSource can now return a null mesh to ask the caller to make a default mesh instead; and the container block may be smarter about drawing the textures of IContainedMeshSource items (needs testing!) API Fixed: Some icons no longer centered in GUI dropdown (#2645) API Fixed: Game could crash if a mod uses OnTestBlockAccess with any result other than Granted (Github issue #2761)
-
Dear Extraordinary Survivalists v1.18.6-rc.2, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). We are currently hunting down a small-ish performance leak on the loose, which should not impact most players, but has a significant impact on our Vintagehosting servers, as the problem is multiplied hundredfolds there. That is the reason I am a bit wary of going stable still. This is probably also a good opportunity to give you a small update on the current state of the game. Th3Dilli and radfast have been tirelessly working on 1.18.6 bugfixes, further performance tweaks, .NET 7.0 preparations as well as developing a new build pipeline for .NET 7.0 releases. Meanwhile the rest of the team is starting to work on 1.19. It is very likely that 1.19 will become the version where we fully migrate to .NET 7.0 and drop the .Net 4 builds. As a reminder, .NET is the software framework that players use to run the game and its latest incarnation, .NET 7.0, will provide us with noticeable performance and stability gains for the game. It will also help Mac and Linux compatibility, we are pleased to see that the .NET 7.0 test builds appear to be back to being fully playable on Mac OS, and have large performance benefits on Linux. As for myself, I had to take some time off to visit family, tend after my attention-hungry garden and to generally go touch some nature after spending a long cold Latvian winter in front the screen . That being said though, I've been itching to get back into some coding again! As for 1.19 - we still plan that one to be focused on De-jank. That means finishing up some loose ends, adding a few small new features, as well as reworking a few of the not yet optimally designed mechanics. Stay tuned! In other news, @Vallen has made an excellent series on YouTube explaining Vintage Story Bit by Bit - check it out! Game updates Tweak: Handbook display of baking result now shows "(in oven)" not "(in firepit)" Tweak: Polar bears visually lower in the water when swimming Tweak: Polar bears now cannot climb, but can swim faster than other bears Tweak: (cosmetic) Bear respiratory rate slower when sleeping, sitting or standing still, depending on size of bear Tweak: Additional optional parameter for command /debug logticks to include off-thread data in results Tweak: Changed command /entity cmd [selector] wipeall to /entity wipeall as it does not require a selector Fixed: Bears stuck in running animation forever (when chasing a creature which is in a hole the bear cannot fit into) Fixed: It was possible to read coordinates in other ways in games with worldmap disabled Fixed: /land claim grant|revoke crashing the game if the claim had not yet been loaded Fixed: Rare client crash in CullVisibleFacesWithDecor due to multithreading Fixed: Axe breaking while felling a tree left floating leaves Fixed: Extended picking range when mouse is not grabbed (thanks to @noelle-lavenza) [details: Github issue #42] Fixed: Night Vision Mask duplication by putting in more then one gear as fuel Fixed: Metal parts not centered in GUI Fixed: Bucket with alcohol portion showing up in handbook Fixed: Player in bed rotation being backwards Fixed: Raft animations getting broken when pressing too many keys Fixed: Drifter drops are no longer affected by weight; drifter info no longer shows Low Weight (or any weight at all!) Fixed: /wgen testmap rockstrata not working API Feature: IServerAPI.AddServerThread() allows mods to create ServerThreads: advantages are that thread pause, shutdown and tick profiling are managed by the server API Tweak: Deprecate methods in GuiElement with Bitmap parameters, please use equivalent overloads with BitmapExternal (might help to prepare your mod for .NET 7.0 already, so that re-coding for .NET 7.0 may then not be necessary: note that System.Drawing.Bitmap does not exist in .NET 7.0) API Tweak: IContainedMeshSource can now return a null mesh to ask the caller to make a default mesh instead; and the container block may be smarter about drawing the textures of IContainedMeshSource items (needs testing!) API Fixed: Some icons no longer centered in GUI dropdown (#2645) API Fixed: Game could crash if a mod uses OnTestBlockAccess with any result other than Granted (Github issue #2761)
-
Dear Extraordinary Survivalists v1.18.6-rc.2, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). We are currently hunting down a small-ish performance leak on the loose, which should not impact most players, but has a significant impact on our Vintagehosting servers, as the problem is multiplied hundredfolds there. That is the reason I am a bit wary of going stable still. This is probably also a good opportunity to give you a small update on the current state of the game. Th3Dilli and radfast have been tirelessly working on 1.18.6 bugfixes, further performance tweaks, .NET 7.0 preparations as well as developing a new build pipeline for .NET 7.0 releases. Meanwhile the rest of the team is starting to work on 1.19. It is very likely that 1.19 will become the version where we fully migrate to .NET 7.0 and drop the .Net 4 builds. As a reminder, .NET is the software framework that players use to run the game and its latest incarnation, .NET 7.0, will provide us with noticeable performance and stability gains for the game. It will also help Mac and Linux compatibility, we are pleased to see that the .NET 7.0 test builds appear to be back to being fully playable on Mac OS, and have large performance benefits on Linux. As for myself, I had to take some time off to visit family, tend after my attention-hungry garden and to generally go touch some nature after spending a long cold Latvian winter in front the screen . That being said though, I've been itching to get back into some coding again! As for 1.19 - we still plan that one to be focused on De-jank. That means finishing up some loose ends, adding a few small new features, as well as reworking a few of the not yet optimally designed mechanics. Stay tuned! In other news, @Vallen has made an excellent series on YouTube explaining Vintage Story Bit by Bit - check it out! Game updates Tweak: Handbook display of baking result now shows "(in oven)" not "(in firepit)" Tweak: Polar bears visually lower in the water when swimming Tweak: Polar bears now cannot climb, but can swim faster than other bears Tweak: (cosmetic) Bear respiratory rate slower when sleeping, sitting or standing still, depending on size of bear Tweak: Additional optional parameter for command /debug logticks to include off-thread data in results Tweak: Changed command /entity cmd [selector] wipeall to /entity wipeall as it does not require a selector Fixed: Bears stuck in running animation forever (when chasing a creature which is in a hole the bear cannot fit into) Fixed: It was possible to read coordinates in other ways in games with worldmap disabled Fixed: /land claim grant|revoke crashing the game if the claim had not yet been loaded Fixed: Rare client crash in CullVisibleFacesWithDecor due to multithreading Fixed: Axe breaking while felling a tree left floating leaves Fixed: Extended picking range when mouse is not grabbed (thanks to @noelle-lavenza) [details: Github issue #42] Fixed: Night Vision Mask duplication by putting in more then one gear as fuel Fixed: Metal parts not centered in GUI Fixed: Bucket with alcohol portion showing up in handbook Fixed: Player in bed rotation being backwards Fixed: Raft animations getting broken when pressing too many keys Fixed: Drifter drops are no longer affected by weight; drifter info no longer shows Low Weight (or any weight at all!) Fixed: /wgen testmap rockstrata not working API Feature: IServerAPI.AddServerThread() allows mods to create ServerThreads: advantages are that thread pause, shutdown and tick profiling are managed by the server API Tweak: Deprecate methods in GuiElement with Bitmap parameters, please use equivalent overloads with BitmapExternal (might help to prepare your mod for .NET 7.0 already, so that re-coding for .NET 7.0 may then not be necessary: note that System.Drawing.Bitmap does not exist in .NET 7.0) API Tweak: IContainedMeshSource can now return a null mesh to ask the caller to make a default mesh instead; and the container block may be smarter about drawing the textures of IContainedMeshSource items (needs testing!) API Fixed: Some icons no longer centered in GUI dropdown (#2645) API Fixed: Game could crash if a mod uses OnTestBlockAccess with any result other than Granted (Github issue #2761) View full record
-
- 14
-
-
Dear Extraordinary Survivalists v1.18.6-rc.1, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). Slightly overdue update, apologies for the delay. Screenshot/Build by Belmont#8652 Game updates Tweak: v1.18.5 fixed the server privileges escalation issue only by ~90%. This version should be 100% secure now on that aspect. 1.18.6 clients require servers to be on 1.18.6 as well. (Technical info: Completely reworked client<->server handshake) Tweak: Added frameprofiling capability for server threads to help find a performance leak likely in one of the threads. Add command /debug threadpoolstate Tweak: Added capability to disable player-2-player collisions (/worldconfigcreate bool player2PlayerCollisions false) Fixed: Crocks, bowls, and other food containers losing cellar protection if picked up in 1.18.5 Fixed: Stone, wood and brick slabs placed vertically adjacent to snow could show Unknown texture Fixed: When unmounting a mountable (raft/bed) placed by someone else, the server did not unmount the using player when seen by others Fixed: Log spam from EntityPhysics after a mod caused an exception in called entity code (for example, if an entity died during physics ticking due to walking into fire or lava, and a mod could not interpret that death reason) Fixed: Rare crash in Clay Oven Fixed: Bees not being aggressive since 1.18.2 Fixed: Prospecting Pick results (and other chat window output localised to the individual player) are now shown in English if the player's own language is missing the translation Fixed: Electrum plate could not be smithed Fixed: Decor blocks and also sometimes entities (armor stands etc.) were missing from any structures rotated by worldgen prior to placement
- 1 comment
-
- 14
-
-
-
-
Dear Extraordinary Survivalists v1.18.6-rc.1, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). Slightly overdue update, apologies for the delay. Screenshot/Build by Belmont#8652 Game updates Tweak: v1.18.5 fixed the server privileges escalation issue only by ~90%. This version should be 100% secure now on that aspect. 1.18.6 clients require servers to be on 1.18.6 as well. (Technical info: Completely reworked client<->server handshake) Tweak: Added frameprofiling capability for server threads to help find a performance leak likely in one of the threads. Add command /debug threadpoolstate Tweak: Added capability to disable player-2-player collisions (/worldconfigcreate bool player2PlayerCollisions false) Fixed: Crocks, bowls, and other food containers losing cellar protection if picked up in 1.18.5 Fixed: Stone, wood and brick slabs placed vertically adjacent to snow could show Unknown texture Fixed: When unmounting a mountable (raft/bed) placed by someone else, the server did not unmount the using player when seen by others Fixed: Log spam from EntityPhysics after a mod caused an exception in called entity code (for example, if an entity died during physics ticking due to walking into fire or lava, and a mod could not interpret that death reason) Fixed: Rare crash in Clay Oven Fixed: Bees not being aggressive since 1.18.2 Fixed: Prospecting Pick results (and other chat window output localised to the individual player) are now shown in English if the player's own language is missing the translation Fixed: Electrum plate could not be smithed Fixed: Decor blocks and also sometimes entities (armor stands etc.) were missing from any structures rotated by worldgen prior to placement View full record
- 1 reply
-
- 11
-
-
-
Dear Extraordinary Survivalists v1.18.4&5, a stable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also released 1.18.5 to fix issues isolated to some players. Dear players, please update to this version, it fixes a number of issues in 1.18.3. Multiplayer games: There is a server privileges security issue in 1.18.3 (and earlier game versions) which can affect especially the admins and other staff of multiplayer servers. It will not affect anything outside the multiplayer game and so far we have not gotten reports that this security issue has actually been abused by anyone, but even so we now advise everyone playing multiplayer to update to 1.18.5. Will tell more info about the issue in a couple of days. Note: a 1.18.5 client will require a 1.18.5 server to connect to. Screenshot by Mercatto#6367 Game updates v1.18.5 Tweak: Improve server connect failure message when connecting to a v1.18.3 server or older Fixed: Occasional berry bush crashes on the client, in 1.18.4 Fixed: /serverconfig MaxChunkRadius and certain other config commands not working in 1.18.4 (reports a hosted mode error) v1.18.4 and 1.18.5: Tweak: Barrel HUD info better formatted Tweak: More performance improvements, mainly affecting server performance for each game tick Greatly improve chest, crate, storage jar, barrel and other containers (details: skip perishable checks on empty containers or containers holding only non-perishables, retrieve climate data only once per container instead of once per contents item) Improve WeatherSystem updates Improve BEBerryBush (details: cache a number of block attribute values) Improve BEFarmland slightly Fruit tree ticking substantially faster (especially at chunk-loading) For 1000+ dropped items, items go into a dormant state unless a player is nearby (you may notice distant items being a bit "sleepy" if many items have been dropped) Improve entitypartitioning Improve entityspawner: now better especially for butterflies (faster rejection of unsuitable spawn blocks: butterflies like flowers!) Entity physics: improve trigger-insideblock Entity physics: improve locomotors (skip some player-specific code for non-player creatures) Tweak: Fruit trees in Dormant state can tolerate 3 degrees more cold without dying Tweak: Peach trees fruit slightly earlier (normally between cherry and pear) Tweak: Instead of always being "low" weight or full weight, newly spawned wild creatures spawn with random weight, usually "decent" weight then adjusted for one week worth of potential hunger so typically "low" weight in winter/arctic regions Tweak: Updated community translations Tweak: Attempt to resolve player ghosting issue in multiplayer, or at least provide warnings in client log to help track this issue Tweak: Add more debug tools for ticking blocks / grass growth to debug issues with grass not growing Fixed: Barrel HUD info with rot or other non-liquid contents always showed as Empty in 1.18.3 Fixed: Barrel now correctly redrawn on client as unsealed as soon as the sealed period finishes Fixed: Items dropped by the player on death did not always have the correct timer as set in droppedItemsOnDeathTimer, until the chunk was unloaded and reloaded Fixed: Dropped cattails and other floating items drift sideways in water in 1.18.2 and 1.18.3 Fixed: Players not taking damage from standing in fire in 1.18.3 Fixed: Writing to books and parchment could crash the game when cursor moved right when already at the end of the last page Fixed: Books duplicating newlines when additional text pasted Fixed: Coke oven door losing its lock and reinforcement, if opened/closed Fixed: Torch holder losing reinforcement, if a torch is added or removed Fixed: Blocks generally losing reinforcement, if water flowed through them Fixed: Very rare crash when creating coal pile or charcoal pile rapidly Fixed: Linux: run.sh not getting executed on some Linux distros without running the script inside a shell Fixed: Linux: Move mesa_glthread to the install.sh and prompt if the user wants to enable it Fixed: Rare crash in /player role command and certain other commands instead of an error response in chat Fixed: When using tutorial sub commands without a selected tutorial it crashed the game Fixed: Phantom errors being reported after Cancel / Force Quit button pressed during game startup, for example "Mods must not get assets before AssetsLoaded stage" error Fixed: Crash when running .blockitempngexport for certain new clutter items Fixed: When building beams and the build was cancelled due to not enough beams it would overwrite the initial block with a empty beam block Fixed: Replaceable blocks are not replaced by a beam (like grass) Fixed: Damage log, death messages and killed-by info now show the player name instead of the projectile like for example throwable stone or by creature Fixed: Fancy bed opened/closed appearance now the correct way round Fixed: Mushroom soup and stew no longer invisible in bowls and cooking pots, and mushroom ingredients named correctly Fixed: Obscure bug where farmland moisture levels did not always reflect recent rainfall View full record
-
Dear Extraordinary Survivalists v1.18.4&5, a stable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also released 1.18.5 to fix issues isolated to some players. Dear players, please update to this version, it fixes a number of issues in 1.18.3. Multiplayer games: There is a server privileges security issue in 1.18.3 (and earlier game versions) which can affect especially the admins and other staff of multiplayer servers. It will not affect anything outside the multiplayer game and so far we have not gotten reports that this security issue has actually been abused by anyone, but even so we now advise everyone playing multiplayer to update to 1.18.5. Will tell more info about the issue in a couple of days. Note: a 1.18.5 client will require a 1.18.5 server to connect to. Screenshot by Mercatto#6367 Game updates v1.18.5 Tweak: Improve server connect failure message when connecting to a v1.18.3 server or older Fixed: Occasional berry bush crashes on the client, in 1.18.4 Fixed: /serverconfig MaxChunkRadius and certain other config commands not working in 1.18.4 (reports a hosted mode error) v1.18.4 and 1.18.5: Tweak: Barrel HUD info better formatted Tweak: More performance improvements, mainly affecting server performance for each game tick Greatly improve chest, crate, storage jar, barrel and other containers (details: skip perishable checks on empty containers or containers holding only non-perishables, retrieve climate data only once per container instead of once per contents item) Improve WeatherSystem updates Improve BEBerryBush (details: cache a number of block attribute values) Improve BEFarmland slightly Fruit tree ticking substantially faster (especially at chunk-loading) For 1000+ dropped items, items go into a dormant state unless a player is nearby (you may notice distant items being a bit "sleepy" if many items have been dropped) Improve entitypartitioning Improve entityspawner: now better especially for butterflies (faster rejection of unsuitable spawn blocks: butterflies like flowers!) Entity physics: improve trigger-insideblock Entity physics: improve locomotors (skip some player-specific code for non-player creatures) Tweak: Fruit trees in Dormant state can tolerate 3 degrees more cold without dying Tweak: Peach trees fruit slightly earlier (normally between cherry and pear) Tweak: Instead of always being "low" weight or full weight, newly spawned wild creatures spawn with random weight, usually "decent" weight then adjusted for one week worth of potential hunger so typically "low" weight in winter/arctic regions Tweak: Updated community translations Tweak: Attempt to resolve player ghosting issue in multiplayer, or at least provide warnings in client log to help track this issue Tweak: Add more debug tools for ticking blocks / grass growth to debug issues with grass not growing Fixed: Barrel HUD info with rot or other non-liquid contents always showed as Empty in 1.18.3 Fixed: Barrel now correctly redrawn on client as unsealed as soon as the sealed period finishes Fixed: Items dropped by the player on death did not always have the correct timer as set in droppedItemsOnDeathTimer, until the chunk was unloaded and reloaded Fixed: Dropped cattails and other floating items drift sideways in water in 1.18.2 and 1.18.3 Fixed: Players not taking damage from standing in fire in 1.18.3 Fixed: Writing to books and parchment could crash the game when cursor moved right when already at the end of the last page Fixed: Books duplicating newlines when additional text pasted Fixed: Coke oven door losing its lock and reinforcement, if opened/closed Fixed: Torch holder losing reinforcement, if a torch is added or removed Fixed: Blocks generally losing reinforcement, if water flowed through them Fixed: Very rare crash when creating coal pile or charcoal pile rapidly Fixed: Linux: run.sh not getting executed on some Linux distros without running the script inside a shell Fixed: Linux: Move mesa_glthread to the install.sh and prompt if the user wants to enable it Fixed: Rare crash in /player role command and certain other commands instead of an error response in chat Fixed: When using tutorial sub commands without a selected tutorial it crashed the game Fixed: Phantom errors being reported after Cancel / Force Quit button pressed during game startup, for example "Mods must not get assets before AssetsLoaded stage" error Fixed: Crash when running .blockitempngexport for certain new clutter items Fixed: When building beams and the build was cancelled due to not enough beams it would overwrite the initial block with a empty beam block Fixed: Replaceable blocks are not replaced by a beam (like grass) Fixed: Damage log, death messages and killed-by info now show the player name instead of the projectile like for example throwable stone or by creature Fixed: Fancy bed opened/closed appearance now the correct way round Fixed: Mushroom soup and stew no longer invisible in bowls and cooking pots, and mushroom ingredients named correctly Fixed: Obscure bug where farmland moisture levels did not always reflect recent rainfall
- 18 comments
-
- 18
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.2/3, a stable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release 1.18.3 to fix a few critical issues. The recent performance changes look to be stable enough, here's a stable release! This also includes fixes to a few longer-standing issues. Should you run into serious issues please report them to us. Thanks! [Known issue in 1.18.3: barrels holding rot / compost / preserved foods or other solid contents may show "Empty" on the HUD: the barrel contents are actually still there if you right-click on the barrel] Screenshot by KORMOT, EATER OF COSMOS#9983 Game updates Everything listed in the rc.1/2 release notes and rc.3/4 release notes (except the minor Resonance Archives fixes, those will return in a future update) Tweak: Configurable timer for dropped inventory on death, default 10 minutes, editable in /assets/game/entities/humanoid/player.json entry droppedItemsOnDeathTimer Tweak: Block Interaction Help displays only permitted interactions when looking at claimed blocks [example: don't show wrench interactions for clutter blocks in the Resonance Archives] Tweak: Smelting temperature of Nickel reduced to 1325°C (within the capability of coke) Tweak: For Electrum and Cupronickel, smelting properties added to ingots, metalbits, and metalplates Tweak: Bucket contents localization in English lang file uses our new pluralisation format, other languages could too Fixed: Occasional crash on collecting resin for players who chose the Tailor or Blackguard classes - thanks to @NoelleLavenza for contribution Fixed: Butterflies generally never spawning in previous 1.18 game versions (except perhaps in high summer) Fixed: Rare client crash with System.IO.FileNotFoundException when connecting to a game with large numbers of modded blocks Fixed: Crashes when writing to parchment or book if cursor moved to the end of the page Fixed: Very rare crash when creating coal pile or charcoal pile rapidly Fixed: No more logged BETransient errors for tallgrass-eaten-snow Fixed: Coke oven door losing its lock and reinforcement, if opened/closed Fixed: Torch holder losing reinforcement, if a torch is added or removed Fixed: Wrench orientable blocks do not lose reinforcement when rotated Fixed: Water and other weak/non-solid blocks being unintentionally reinforcable (this also fixes the issue where water flowing through a reinforced block removed the reinforcement) Fixed: Correct Block Interaction Help for buckets, including reinforcement info if relevant Fixed: Barrels now display block reinforcement info if reinforced Fixed: Pluralisation format now works correctly in strings with multiple parameters Fixed: Serious lag during clayforming (especially in multiplayer or with relevant mods) View full record
-
- 8
-
-
-
Dear Extraordinary Survivalists v1.18.2/3, a stable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release 1.18.3 to fix a few critical issues. The recent performance changes look to be stable enough, here's a stable release! This also includes fixes to a few longer-standing issues. Should you run into serious issues please report them to us. Thanks! [Known issue in 1.18.3: barrels holding rot / compost / preserved foods or other solid contents may show "Empty" on the HUD: the barrel contents are actually still there if you right-click on the barrel] Screenshot by KORMOT, EATER OF COSMOS#9983 Game updates Everything listed in the rc.1/2 release notes and rc.3/4 release notes (except the minor Resonance Archives fixes, those will return in a future update) Tweak: Configurable timer for dropped inventory on death, default 10 minutes, editable in /assets/game/entities/humanoid/player.json entry droppedItemsOnDeathTimer Tweak: Block Interaction Help displays only permitted interactions when looking at claimed blocks [example: don't show wrench interactions for clutter blocks in the Resonance Archives] Tweak: Smelting temperature of Nickel reduced to 1325°C (within the capability of coke) Tweak: For Electrum and Cupronickel, smelting properties added to ingots, metalbits, and metalplates Tweak: Bucket contents localization in English lang file uses our new pluralisation format, other languages could too Fixed: Occasional crash on collecting resin for players who chose the Tailor or Blackguard classes - thanks to @NoelleLavenza for contribution Fixed: Butterflies generally never spawning in previous 1.18 game versions (except perhaps in high summer) Fixed: Rare client crash with System.IO.FileNotFoundException when connecting to a game with large numbers of modded blocks Fixed: Crashes when writing to parchment or book if cursor moved to the end of the page Fixed: Very rare crash when creating coal pile or charcoal pile rapidly Fixed: No more logged BETransient errors for tallgrass-eaten-snow Fixed: Coke oven door losing its lock and reinforcement, if opened/closed Fixed: Torch holder losing reinforcement, if a torch is added or removed Fixed: Wrench orientable blocks do not lose reinforcement when rotated Fixed: Water and other weak/non-solid blocks being unintentionally reinforcable (this also fixes the issue where water flowing through a reinforced block removed the reinforcement) Fixed: Correct Block Interaction Help for buckets, including reinforcement info if relevant Fixed: Barrels now display block reinforcement info if reinforced Fixed: Pluralisation format now works correctly in strings with multiple parameters Fixed: Serious lag during clayforming (especially in multiplayer or with relevant mods)
-
Dear Extraordinary Survivalists v1.18.2-rc.3 & rc.4, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release rc.4 to fix a multiplayer crash issue and add some missing localization. This update focusses some more on server performance and should fix one or two significant issues introduced in rc.1 / 2. "winter hunting", shared by outlaw#9502 on discord Game updates Tweak: Added ability for server owners to blacklist client side mods. Add "ModIdBlackList": ["modid1","modid2"], to server config. Tweak: Further performance tweaks for large numbers of entities / large numbers of item drops. Cumulatively these approximately half the overall amount of time per tick spent on ticking entities: Entity ticking: improve dropped items and other passive entities (details: these now use a CachingCollisionTester as well, and various minor tweaks) Entity ticking: significant reduction in tick time for dropped items Significant reduction in server tick time when large numbers of entities (e.g item drops) have to be despawned Entity AI ticking: no performance drop when large numbers of dropped items are nearby creatures Entity AI ticking: improvement to task-startexecute-idle and task-startexecute-stayclosetoentity Entity ticking: reduce general ticking overhead (~3-10ms average for 10k entities on average hardware, occasionally more) Entity ticking: greatly reduce time for behavior-timeddespawn and behavior-floatupwhenstuck Entity physics: improvements in locomotors (details: refactor EntityPlayer-only code into a new locomotor PlayerEntityInAir) Entity physics: Stats "walkspeed" checks are now checked only by player entities Tweak: Despawn time of dropped items can now be reduced by editing the asset file item.json without affecting the timer for dropped items during player death (the timer for dropped items on death is now hardcoded to 10 minutes) Tweak: Added missing English-language localizations for the trait names and various aged chests Tweak: Added new localization keys for gamemode settings, seed growth in days, beehive population size, lantern linings, and various hotkeys Tweak: Mouse scroll on number input fields works now in the same direction as the buttons (up = Turn the wheel upward (away from you) => increases the number) Fixed: Number input fields could mess up the output when using mouse scroll + (SHIFT/CTRL) Fixed: Client-side trader dialogue crashes in 1.18.2-rc1 and rc2 Fixed: Client-side crashes for some players joining multiplayer after other players are already present on the server, in 1.18.2-rc3 Fixed: Very rare crash with charcoal and other art pigments in hand Fixed: Handbook links to Display Cases now work (link shown on items which can be stored in Display Cases) Api Tweak: Added onshelfTransform to '.tfedit' for the Shelf and Bookshelfs Api Tweak: Display case, shelf, bookshelf, ground storage, tool/mold rack now update live when editing in the transform editor Api Tweak: When switching tabs in tfedit the applied transforms are now reset: only clicking Close & Apply retains the changes Api Technical notes for code modders (1): For performance, the EntityPartitioning system now holds only Interactable entities in partitions. GetNearestEntity() and WalkEntities() deprecated and replaced with GetNearestInteractableEntity() and WalkInteractableEntities() to make this clear. Player GameMode or NoClip changes therefore now require the EntityPlayer's partition be updated because its IsInteractable state may have changed, for example if the mode was changed to / from Spectator mode. Changes to GameMode settings therefore now have to call EntityPlayer.UpdatePartitioning(). If your mod creates an entity whose IsInteractable status depends on the entity's current properties then you may need to implement a similar method in your entity, when those properties change. Api Technical notes for code modders (2): server.LoadedEntities is now a CachingConcurrentDictionary instead of a ConcurrentDictionary and is now marked internal, not intended to be directly accessed by mods. If your code directly accesses server.LoadedEntities (unlikely) then you may need to recompile your code for 1.18.2-rc3. In any case we recommend not accessing server fields directly, instead use the API, specifically IServerWorldAccessor.LoadedEntities. There is no API change. Mods which are already using the API as intended should be unaffected and will not need to recompile. For more details see the updated XML documentation for IServerWorldAccessor.LoadedEntities. An example of intended use of the API by mods to access the loaded entities, this example code will still work and is unaffected by the change discussed here: ICollection<Entity> entities; if (api.Side == EnumAppSide.Server) entities = (api as ICoreServerAPI).World.LoadedEntities.Values; else entities = (api as ICoreClientAPI).World.LoadedEntities.Values; Api Technical notes for code modders (3): "walkspeed" stats relate to the armor and character class changes to a player's walking speed. If your coded mod uses Entity.Stats "walkspeed" for a non-player entity, for example NPCs, you might need to make changes similar to the code changes to EntityPlayer in this update. For example override Entity.GetWalkSpeedMultiplier in your entity. Example code: public override double GetWalkSpeedMultiplier(double groundDragFactor = 0.3) { double mul = base.GetWalkSpeedMultiplier(groundDragFactor); mul *= Stats.GetBlended("walkspeed"); return mul; } View full record
- 1 reply
-
- 5
-
-
-
Dear Extraordinary Survivalists v1.18.2-rc.3 & rc.4, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release rc.4 to fix a multiplayer crash issue and add some missing localization. This update focusses some more on server performance and should fix one or two significant issues introduced in rc.1 / 2. "winter hunting", shared by outlaw#9502 on discord Game updates Tweak: Added ability for server owners to blacklist client side mods. Add "ModIdBlackList": ["modid1","modid2"], to server config. Tweak: Further performance tweaks for large numbers of entities / large numbers of item drops. Cumulatively these approximately half the overall amount of time per tick spent on ticking entities: Entity ticking: improve dropped items and other passive entities (details: these now use a CachingCollisionTester as well, and various minor tweaks) Entity ticking: significant reduction in tick time for dropped items Significant reduction in server tick time when large numbers of entities (e.g item drops) have to be despawned Entity AI ticking: no performance drop when large numbers of dropped items are nearby creatures Entity AI ticking: improvement to task-startexecute-idle and task-startexecute-stayclosetoentity Entity ticking: reduce general ticking overhead (~3-10ms average for 10k entities on average hardware, occasionally more) Entity ticking: greatly reduce time for behavior-timeddespawn and behavior-floatupwhenstuck Entity physics: improvements in locomotors (details: refactor EntityPlayer-only code into a new locomotor PlayerEntityInAir) Entity physics: Stats "walkspeed" checks are now checked only by player entities Tweak: Despawn time of dropped items can now be reduced by editing the asset file item.json without affecting the timer for dropped items during player death (the timer for dropped items on death is now hardcoded to 10 minutes) Tweak: Added missing English-language localizations for the trait names and various aged chests Tweak: Added new localization keys for gamemode settings, seed growth in days, beehive population size, lantern linings, and various hotkeys Tweak: Mouse scroll on number input fields works now in the same direction as the buttons (up = Turn the wheel upward (away from you) => increases the number) Fixed: Number input fields could mess up the output when using mouse scroll + (SHIFT/CTRL) Fixed: Client-side trader dialogue crashes in 1.18.2-rc1 and rc2 Fixed: Client-side crashes for some players joining multiplayer after other players are already present on the server, in 1.18.2-rc3 Fixed: Very rare crash with charcoal and other art pigments in hand Fixed: Handbook links to Display Cases now work (link shown on items which can be stored in Display Cases) Api Tweak: Added onshelfTransform to '.tfedit' for the Shelf and Bookshelfs Api Tweak: Display case, shelf, bookshelf, ground storage, tool/mold rack now update live when editing in the transform editor Api Tweak: When switching tabs in tfedit the applied transforms are now reset: only clicking Close & Apply retains the changes Api Technical notes for code modders (1): For performance, the EntityPartitioning system now holds only Interactable entities in partitions. GetNearestEntity() and WalkEntities() deprecated and replaced with GetNearestInteractableEntity() and WalkInteractableEntities() to make this clear. Player GameMode or NoClip changes therefore now require the EntityPlayer's partition be updated because its IsInteractable state may have changed, for example if the mode was changed to / from Spectator mode. Changes to GameMode settings therefore now have to call EntityPlayer.UpdatePartitioning(). If your mod creates an entity whose IsInteractable status depends on the entity's current properties then you may need to implement a similar method in your entity, when those properties change. Api Technical notes for code modders (2): server.LoadedEntities is now a CachingConcurrentDictionary instead of a ConcurrentDictionary and is now marked internal, not intended to be directly accessed by mods. If your code directly accesses server.LoadedEntities (unlikely) then you may need to recompile your code for 1.18.2-rc3. In any case we recommend not accessing server fields directly, instead use the API, specifically IServerWorldAccessor.LoadedEntities. There is no API change. Mods which are already using the API as intended should be unaffected and will not need to recompile. For more details see the updated XML documentation for IServerWorldAccessor.LoadedEntities. An example of intended use of the API by mods to access the loaded entities, this example code will still work and is unaffected by the change discussed here: ICollection<Entity> entities; if (api.Side == EnumAppSide.Server) entities = (api as ICoreServerAPI).World.LoadedEntities.Values; else entities = (api as ICoreClientAPI).World.LoadedEntities.Values; Api Technical notes for code modders (3): "walkspeed" stats relate to the armor and character class changes to a player's walking speed. If your coded mod uses Entity.Stats "walkspeed" for a non-player entity, for example NPCs, you might need to make changes similar to the code changes to EntityPlayer in this update. For example override Entity.GetWalkSpeedMultiplier in your entity. Example code: public override double GetWalkSpeedMultiplier(double groundDragFactor = 0.3) { double mul = base.GetWalkSpeedMultiplier(groundDragFactor); mul *= Stats.GetBlended("walkspeed"); return mul; }
- 1 comment
-
- 12
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.2-rc.1, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release rc.2 to address multiple issues The large influx of active players has put 1.18 servers under heavy load - in this update we have tried to reduce the load by using more optimal algorithms and optionally utilize use more CPU cores. Server owners that suffer from bad tickrates - do try this version, open your servermagicnumbers.json and set "MaxPhysicsThreads: 4", or similar (suggested range 2-8, depending on the number of CPU threads available). Players still on game version 1.18.1 should be able to play normally on a 1.18.2-rc.1 or 1.18.2-rc.2 server - they connect OK and we have not received reports of any issues in this configuration. If you experience unusually wonky physics or entity spawning, do let us know! Screenshot by Credones#5878 Game updates rc.2 changes Tweak: Landform scale is now a configurable parameter in the customize world screen Tweak: "Standard Survival" Playstyle default value changes: Reduce upheaval rate (40%->30%), Reduce landform scale (120%->100%). This will affect new worlds only. Existing worlds should remain unaffected. Tweak: Linux: Enable mesa_glthread on systems that should support it via run.sh (AMD/Intel GPUs) Tweak: Graceful server shutdown and exit in almost all situations. ?May improve dark chunks issue Fixed: Rotation of ground storable when using WorldEdit rotate (included schematics placed rotated by worldgen) Fixed: Rare TreasureMap crash Tweak: Tongs recipe uses rope instead of twine Tweak: Metal plaques now material metal, and not combustible. Tweak: Ink and Quill can be ground stored Tweak: Improved in-game guidance on understanding prospecting results Tweak: Seaweed bends and sways nicely Tweak: Removed bronze chain and lamellae from panning bony soil to avoid age skipping Tweak: Lit torches placed below water (by player or by worldgen) will be extinguished Tweak: Water in 2-deep (or more) lakes can flow sideways (similar to 1-deep ponds) if a bank is broken Tweak: Holes in water below the surface of lakes can normally now heal, if enough source blocks are around Tweak: Re-added flavor text for Hunter class. Tweak: If Resonance Archives entrance would be below sea-level, raise it up to sea-level Tweak: Added extra check for a privilege "ignoremaxclients" that can be added to let privileged players (for example, staff) join multiplayer servers despite the max clients limit Tweak: For commands, more informative error message if wrong subcommand typed in a command which can also be used with no subcommands, such as /time Tweak: Performance tweaks Added Multithreading support to entity physics. Experimental, server-side only. Can enable up to 8 physics threads in total (including the main thread), default is 1, i.e. multithreading disabled. Enable by setting "MaxPhysicsThreads" in servermagicnumbers.json to 2 or higher. (The game will ignore settings higher than 8.) Related to this change, /logticks output for controlled physics is formatted differently now. Server: Significantly improve server entityspawner performance Server and client: reduce entity tick time for task-startexecute-fleeentity, and seekentity and stayclosetoentity tasks Server and client: entity physics: improve per-tick time for knockback check and trigger-insideblock Small improvement in multiplayer server-side tick performance generally, when sending blockEntity updates to many clients Small improvement in server and client-side performance, when spawning each entity Reduce the lag-spike on creating new ground-storage piles Grass block updates slightly improved [details: use ExchangeBlock in place of SetBlock] Fixed: Support beams deleting existing blocks Fixed: Beams sometimes disappearing from sight if their base block is behind the player Fixed: Gravel/sand falling when placing ruins and other schematics (leading to a falling gravel sound when entering new world areas) Fixed: Rotations for crate, anvil, chute, display case, trunk, labeled chest, doors, and chiselled blocks when used in schematics and worldedit - this includes when these blocks are used in Trader caravans, because caravans can be randomly rotated when worldgen places them When chiselled blocks are rotated in a schematic, their materials textures (for example, log textures) should also now be correctly rotated Fixed: Player underwater was not suffocating if lanterns or ladders in same space Fixed: Manually placing water will now place correctly if placed in the same space as an existing partial solid block Fixed: Wording mistake in a short story. Fixed: Missing name for aged chests Fixed: Might mitigate the fruit tree crash? :shrug: Fixed: On client shutdown, very rare ThreadAbortException in chunkTesselator thread Fixed: "/help we" now lists out the directional subcommands correctly Fixed: Potential rare bug with blockEntities removed on server not being removed client-side Fixed: Setting player roles did not sync to client Fixed: Missing translations in the moddb util Fixed: Able to circumvent drunkenness / low stability chat text distortion Fixed: "The Invention" music track never playing Fixed: Unknown block in some clutter handbook pages Fixed: Unknown blocks in some chests in the Resonance Archives Fixed: World edit command results sent to the wrong player Fixed: A new crash in BehaviorPillar? :shrug: Fixed: Server side exception that kicks the player when talking to traders Fixed: Multiple visual issues with the new seraph clothing pieces Fixed: Unused herbs (angelica.png, ...) trying to resolve images and causing errors on startup Fixed: server.sh not showing command results Fixed: Multiple minor issues with the Resonance Archives Api Tweak: Behaviors and AITasks now have an optional AfterInitialize() method, can be used to fetch info from other behaviors for the same entity after the other behaviors are guaranteed initialized Api Fixed: Typo in MultiBlock.OnBlockInteractStop() called *Step methods instead of *Stop Api Technical Notes for modders: Entity physics, including updates to entity.OnGround and .Swimming flags, now happens after all other entity behaviors have been ticked but before the next entity tick. Entity physics can be multithreaded: several threads will process entity physics in parallel, at the appropriate time in the overall game tick. Please ensure that your implementations of Entity.OnFallToGround(), Entity.OnCollideWithLiquid(), Entity.OnExitedLiquid() are all globally threadsafe. "Globally" threadsafe means, changes to the fields or properties of the calling entity itself are OK (for one single entity, these methods cannot be called at the same time for the same entity on different threads, and other entity behavior code will not be running during physics updates). But global data stored in a non-threadsafe way (for example, a single Dictionary in your mod holding all swimming entities, unless it is a ConcurrentDictionary) should not be modified inside these physics methods, on a server. Likewise setting blocks, spawning new entities or entityItems (drops) or other changes with global effects on the server in these physics methods (or in any other code which extends entity physics) is not a good idea. If necessary, use server.EnqueueMainThreadTask() to safely set blocks, spawn new entities or to change global data, if your mod's code is currently taking these kinds of actions in entity physics methods. Api Technical Notes for modders (2): In the unlikely event that your mod's code replaces or extends EntityBehaviorControlledPhysics.OnGameTick() or .OnPhysicsTick() it may not work correctly with the new multithreaded system, please contact the devs for specific help. API Technical Notes for modders (3): If your coded mod uses multithreading - either TyronThreadPool queuing or creating its own threads on a server - then ServerMain.FrameProfiler will now be null on threads which are not the main thread and not ServerThreads created in the vanilla game engine. This may trigger null reference exceptions in your code if the FrameProfiler is used in your own threads. This is intended behavior: your code should not meaningfully write to the FrameProfiler except on the main thread. If in doubt, in your code use ServerMain.FrameProfiler?.Mark() or similar code. View full record
- 7 replies
-
- 11
-
-
-
-
Dear Extraordinary Survivalists v1.18.2-rc.1, a unstable release, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also release rc.2 to address multiple issues The large influx of active players has put 1.18 servers under heavy load - in this update we have tried to reduce the load by using more optimal algorithms and optionally utilize use more CPU cores. Server owners that suffer from bad tickrates - do try this version, open your servermagicnumbers.json and set "MaxPhysicsThreads: 4", or similar (suggested range 2-8, depending on the number of CPU threads available). Players still on game version 1.18.1 should be able to play normally on a 1.18.2-rc.1 or 1.18.2-rc.2 server - they connect OK and we have not received reports of any issues in this configuration. If you experience unusually wonky physics or entity spawning, do let us know! Screenshot by Credones#5878 Game updates rc.2 changes Tweak: Landform scale is now a configurable parameter in the customize world screen Tweak: "Standard Survival" Playstyle default value changes: Reduce upheaval rate (40%->30%), Reduce landform scale (120%->100%). This will affect new worlds only. Existing worlds should remain unaffected. Tweak: Linux: Enable mesa_glthread on systems that should support it via run.sh (AMD/Intel GPUs) Tweak: Graceful server shutdown and exit in almost all situations. ?May improve dark chunks issue Fixed: Rotation of ground storable when using WorldEdit rotate (included schematics placed rotated by worldgen) Fixed: Rare TreasureMap crash Tweak: Tongs recipe uses rope instead of twine Tweak: Metal plaques now material metal, and not combustible. Tweak: Ink and Quill can be ground stored Tweak: Improved in-game guidance on understanding prospecting results Tweak: Seaweed bends and sways nicely Tweak: Removed bronze chain and lamellae from panning bony soil to avoid age skipping Tweak: Lit torches placed below water (by player or by worldgen) will be extinguished Tweak: Water in 2-deep (or more) lakes can flow sideways (similar to 1-deep ponds) if a bank is broken Tweak: Holes in water below the surface of lakes can normally now heal, if enough source blocks are around Tweak: Re-added flavor text for Hunter class. Tweak: If Resonance Archives entrance would be below sea-level, raise it up to sea-level Tweak: Added extra check for a privilege "ignoremaxclients" that can be added to let privileged players (for example, staff) join multiplayer servers despite the max clients limit Tweak: For commands, more informative error message if wrong subcommand typed in a command which can also be used with no subcommands, such as /time Tweak: Performance tweaks Added Multithreading support to entity physics. Experimental, server-side only. Can enable up to 8 physics threads in total (including the main thread), default is 1, i.e. multithreading disabled. Enable by setting "MaxPhysicsThreads" in servermagicnumbers.json to 2 or higher. (The game will ignore settings higher than 8.) Related to this change, /logticks output for controlled physics is formatted differently now. Server: Significantly improve server entityspawner performance Server and client: reduce entity tick time for task-startexecute-fleeentity, and seekentity and stayclosetoentity tasks Server and client: entity physics: improve per-tick time for knockback check and trigger-insideblock Small improvement in multiplayer server-side tick performance generally, when sending blockEntity updates to many clients Small improvement in server and client-side performance, when spawning each entity Reduce the lag-spike on creating new ground-storage piles Grass block updates slightly improved [details: use ExchangeBlock in place of SetBlock] Fixed: Support beams deleting existing blocks Fixed: Beams sometimes disappearing from sight if their base block is behind the player Fixed: Gravel/sand falling when placing ruins and other schematics (leading to a falling gravel sound when entering new world areas) Fixed: Rotations for crate, anvil, chute, display case, trunk, labeled chest, doors, and chiselled blocks when used in schematics and worldedit - this includes when these blocks are used in Trader caravans, because caravans can be randomly rotated when worldgen places them When chiselled blocks are rotated in a schematic, their materials textures (for example, log textures) should also now be correctly rotated Fixed: Player underwater was not suffocating if lanterns or ladders in same space Fixed: Manually placing water will now place correctly if placed in the same space as an existing partial solid block Fixed: Wording mistake in a short story. Fixed: Missing name for aged chests Fixed: Might mitigate the fruit tree crash? :shrug: Fixed: On client shutdown, very rare ThreadAbortException in chunkTesselator thread Fixed: "/help we" now lists out the directional subcommands correctly Fixed: Potential rare bug with blockEntities removed on server not being removed client-side Fixed: Setting player roles did not sync to client Fixed: Missing translations in the moddb util Fixed: Able to circumvent drunkenness / low stability chat text distortion Fixed: "The Invention" music track never playing Fixed: Unknown block in some clutter handbook pages Fixed: Unknown blocks in some chests in the Resonance Archives Fixed: World edit command results sent to the wrong player Fixed: A new crash in BehaviorPillar? :shrug: Fixed: Server side exception that kicks the player when talking to traders Fixed: Multiple visual issues with the new seraph clothing pieces Fixed: Unused herbs (angelica.png, ...) trying to resolve images and causing errors on startup Fixed: server.sh not showing command results Fixed: Multiple minor issues with the Resonance Archives Api Tweak: Behaviors and AITasks now have an optional AfterInitialize() method, can be used to fetch info from other behaviors for the same entity after the other behaviors are guaranteed initialized Api Fixed: Typo in MultiBlock.OnBlockInteractStop() called *Step methods instead of *Stop Api Technical Notes for modders: Entity physics, including updates to entity.OnGround and .Swimming flags, now happens after all other entity behaviors have been ticked but before the next entity tick. Entity physics can be multithreaded: several threads will process entity physics in parallel, at the appropriate time in the overall game tick. Please ensure that your implementations of Entity.OnFallToGround(), Entity.OnCollideWithLiquid(), Entity.OnExitedLiquid() are all globally threadsafe. "Globally" threadsafe means, changes to the fields or properties of the calling entity itself are OK (for one single entity, these methods cannot be called at the same time for the same entity on different threads, and other entity behavior code will not be running during physics updates). But global data stored in a non-threadsafe way (for example, a single Dictionary in your mod holding all swimming entities, unless it is a ConcurrentDictionary) should not be modified inside these physics methods, on a server. Likewise setting blocks, spawning new entities or entityItems (drops) or other changes with global effects on the server in these physics methods (or in any other code which extends entity physics) is not a good idea. If necessary, use server.EnqueueMainThreadTask() to safely set blocks, spawn new entities or to change global data, if your mod's code is currently taking these kinds of actions in entity physics methods. Api Technical Notes for modders (2): In the unlikely event that your mod's code replaces or extends EntityBehaviorControlledPhysics.OnGameTick() or .OnPhysicsTick() it may not work correctly with the new multithreaded system, please contact the devs for specific help. API Technical Notes for modders (3): If your coded mod uses multithreading - either TyronThreadPool queuing or creating its own threads on a server - then ServerMain.FrameProfiler will now be null on threads which are not the main thread and not ServerThreads created in the vanilla game engine. This may trigger null reference exceptions in your code if the FrameProfiler is used in your own threads. This is intended behavior: your code should not meaningfully write to the FrameProfiler except on the main thread. If in doubt, in your code use ServerMain.FrameProfiler?.Mark() or similar code.
- 7 comments
-
- 21
-
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.1, a stable release, can now be downloaded through the account manager (section "Other Goodies"). This should address some of the issues newly encountered in 1.18, beyond that, the update looks to be in pretty good shape! Screenshot by C0ffo#5899 Game updates Fixed: Mudbrick slab crafting - both clay types can now be seen in the recipe Fixed: Earthball item model now looks like the block model (as opposed to looking like the puffball model) Fixed: Mitigate a crash related to doors Fixed: Major issue preventing progression in the main story event Fixed: Some oddities when opening a previously written book Fixed: Should fix a startup crash happening in some cases Fixed: Carpets not showing up in handbook Fixed: Meteoric Iron cleaver did not have attack power or tier Fixed: Some items that should float, did not (axle, waterlily, fruitpress, henbox, wooden pan, layer of sticks, firestarter) Fixed: larch saplings showing wrong wood textures Fixed: Rushmat broken and logging an error on startup Fixed: Potential endless crash loop with the crucible on modded content Fixed: Grass blocks orange/brown coloration issue (bug introduced in 1.18)
- 2 comments
-
- 29
-
-
-
-
Dear Extraordinary Survivalists v1.18.1, a stable release, can now be downloaded through the account manager (section "Other Goodies"). This should address some of the issues newly encountered in 1.18, beyond that, the update looks to be in pretty good shape! Screenshot by C0ffo#5899 Game updates Fixed: Mudbrick slab crafting - both clay types can now be seen in the recipe Fixed: Earthball item model now looks like the block model (as opposed to looking like the puffball model) Fixed: Mitigate a crash related to doors Fixed: Major issue preventing progression in the main story event Fixed: Some oddities when opening a previously written book Fixed: Should fix a startup crash happening in some cases Fixed: Carpets not showing up in handbook Fixed: Meteoric Iron cleaver did not have attack power or tier Fixed: Some items that should float, did not (axle, waterlily, fruitpress, henbox, wooden pan, layer of sticks, firestarter) Fixed: larch saplings showing wrong wood textures Fixed: Rushmat broken and logging an error on startup Fixed: Potential endless crash loop with the crucible on modded content Fixed: Grass blocks orange/brown coloration issue (bug introduced in 1.18) View full record
-
1.18.0 The Resonance Archives steam starting issue.
Tyron replied to Ilya Abramov's topic in Questions
wow, strange. I'll see if i can reproduce it -
1.18.0 The Resonance Archives steam starting issue.
Tyron replied to Ilya Abramov's topic in Questions
Aim at the floor with coal in hands -
Dear Extraordinary Survivalists v1.18.0, a stable release, can now be downloaded through the account manager (section "Other Goodies"). At long last! We're happy to release a stable build of 1.18 to our fantastic community. And while it took over 7 months and around 500 individual features, tweaks and fixes we did manage to cram a lot of stuff into this update. Honestly, I did not expect the main story event to turn out so well as it did in the end. I believe there is immense potential to tell a truly compelling story if we keep at it. As always, we're immensely grateful to everyone that tested the test builds and provided us with bug reports and other feedback. We hope you will enjoy this update! What about the .net7 build? We announced a proposed update to .net7 to improve perfomance - it is currently on hold. We are waiting for a 3rd party library to fully support net7, which should be pretty soon. Whats next? For 1.19 we would like to refocus on the topic of dejank - a dejank redux so to speak. We'd like to playtest with the VS team and iron out inconsistencies and annoyances where we find them, but we already have a long list of things we'd like to look at. We hoped to also rework the surface and underground ruins for 1.18 - which will need to be pushed back to 1.19. We also hope to work on the second main story event in parallel when feasible. Game update trailer Screenshots & Gifs Added first main story event: The Resonance Archives. A vast underground structure for you to explore, master its challenges and loot rare treasures. Added NPC Dialogue. You can now have conversations with traders Added Glider: Descend elegantly from tall mountains. Added rift wards to defuse treacherous rifts near your base. Added rafts. Stay dry when traversing the seas. New gadgetry: Night vision device, Single-use base return teleporter and a death point return teleporter can be crafted from rare exotic parts (WIP) Oceans: You can now create worlds with large bodies of water. (Currently) off by default, enable it in the Customize World screen More diverse world generation, such as the new upheaval system, which creates large-scale mountainous areas Geologic activity system. Some areas in the world now spawn hot springs, and possibly even lava rivers closer to the surface Overhauled poles. Instead of massive mountains, there are now windswept glaciers and desolate valleys Rocktyped ruins: Ruins now adapt to the local rock strata (the builders apparently liked to source their rock locally) New landforms: You will fall in love with the new terraced mountains and super flat areas Moss now grows on trees Added veins of cracked rock Added writing system and interactable bookshelves. 1.18 is also "your lore update" \o/ 160+ new types of butterflies and a butterfly net to catch them. Caught butterflies can be placed in display cases. Door overhaul: Added much larger doors/gates, as well as wood-typed doors, and door animations Sign block overhaul: Can now change font size, improved writing experience and added metal plaques Angled beams system: A wholly different placement system for wooden beams Improved chiseling: Glass is now fully chiselable and seamless. There is now also a chiselable "creativegrass" block in creative mode. Added treasure maps. The Treasure Hunter trader offers to help you find hidden treasure ... for a fee Reworked most flower models Improved reeds model Visible fertilizer. You can now see how much fertilizer you applied to farmland Reworked firewood and orientable firewood piles Improved handbook: Now shows output quantities and other QOL changes Overhauled the command system. New Command Block functionality. Command blocks can open and close doors and operate certain other activatable blocks (for example a Mechanical Power clutch). There is also a new Conditional Block which detects nearby entities meeting specified conditions, and a Ticker Block to repeat actions automatically Players in multiplayer can now download a copy of their own claimed land to their local computer. This should help players migrate to a new 1.18 world. Added a tutorial mode (WIP) Auto updater for Windows users Mods can now be installed with a single click from our mod database. Added ability to swap textures, limited to clutter blocks only Added wearable spectacles Full visual rework of our music player - it is now called Resonator, and the media are called tuning cylinders All game updates since 1.17.12 Feature: The first main story event. A massive, highly detailed underground structure for you to adventure into, with many new features and blocks (not described nor pictured here, to avoid spoilers!) Feature: Improved world generation Added Oceans system. Disabled by default but can be set up in the World Configuration screen. Added saltwater whe playing with oceans. Added vertical upheavel system. Very large scale mountainous regions, and flattened plains regions. Configurable. Geologic activity system. Some areas now have underground lava rivers closer to the surface, as well as hot springs above underground lava pools. Configurable. Overhauled polar regions. Instead of mountain ranges there now are glaciers devoid of structures. Added packed ice block. Added 6 new landforms: Large islands, Realistic flatlands, Realistic mountains ledged, Realistic mountains quintuple-ledged, Stepped sinkholes and "Veryflat". Fine-tuned many of the existing landforms. Increase landform sizes by 20% Feature: Chunk border smoothing system. Should greatly mitigate jarring world borders when opening a 1.17 world in 1.18, and future versions where worldgen changes Feature: Cracked rock now spawns like quartz veins Feature: Can now generate up to 8x8 million block worlds (Experimental. Previous max was 1x1mil) (Technical info: Fixed 2 issues with large worlds - entity movement jitter and chunks saved in the wrong locations) Feature: Surface ruins are now rocktyped based on local rock strata. Feature: Surface ruins and trees in wet&warm climates now have moss on their logs Feature: Improved support for ruin/building generation, most notable for mods that add these. (Structures placed by worldgen now accurately use local grass/soil/sand/gravel, Sometimes ruins could be placed overlapping near the edges of mapregions, this should no longer occur, Underground schematics which included water were sometimes filled with stone in place of the water, Rivulets (waterfalls) can no longer generate in 1-thickness stone ceilings including the roofs of ruins, Ground storage items, wall leaning tools, and interactable bookshelves should now rotate properly, Structures (in structures.json) can now have suppressTrees and suppressWaterfalls bool settings: these prevent the stated worldgen feature from being able to spawn anywhere within the structure's bounding box (trees includes shrubs)) Tweak: Tree foliage fine tuning. Each individual tree is now slightly ahead or behind the season tinting, and chopping a tree is now more likely to only fell the targeted tree Tweak: Added gravel coverage & loose rock to mountain peaks to mitigate large empty areas with exposed rock Tweak: Added smoother terrain noise generator by K.Jpg, reduces artifacting that some terrain experienced before Tweak: Improved support for large world heights Reduce rivulet spam high in the mountains, most apparent on large world heights Ore deposits now scale with world height (except surface copper) Terrain detail now scales with world height setting. Previously terrain would become very low detail at large world heights. Tweak: Added slight vertical variation to block layers y-values Tweak: Increased ruined village size variability Tweak: Reduced trees at the north/south pole Tweak: Fewer floating islands (20 block size cull threshold -> 40 block size threshold) Tweak: Added another soil layer Tweak: Reduced spawn depth of treasure chests Tweak: The grades of the deposits bismuthinite, galena, ilmenite, limonite, hematite, magnetite, malachite and sphalerite now increase, the deeper they spawn Tweak: Prevent generation of loose boulders and loose stone on snow and ice Fixed: Water lily no longer generates in very deep water Fixed: Loose patches of rusty gears not spawning underground Fixed: Floating sand generating on water in cold areas Feature: Added Glider. Descend elegantly from tall mountains. Its crafting recipe is a potential reward from the main story event. Feature: Added Rafts. An innovative 1- or 2-seater watery transportation system. Requires crude oar in main hand. Feature: Jonas devices - Night vision device, Single-use base return teleporter and a death point return teleporter can be crafted from rare exotic parts found in ruins and other source. (Work in progress still) Feature: Added rift ward, reduces spawn of rifts by 95% in a 30 block radius around the ward. Consumes temporal gears. Feature: Added treasure maps. They add waypoints on your world map pointing towards treasures or give you directions if the worldmap is disabled. Sold by traders. Feature: New music track for when you are travelling, titled "Radiance and Rust" Feature: Writing system and Bookshelves Can now write in books and parchments. Books can be signed to make then non-editable Added ink and quill item, required for writing in books Added fully interactable bookshelves, lets you store and remove up to 14 books in each one Feature: Added 160+ new types of butterflies. Butterflies can now be caught with a butterfly net & can be placed in display cases. Butterfly spawning behavior now depends on climate and elevation. Feature: More collectibles! Clutter blocks can now drop at a 50% chance. Added over 100 more clutter blocks. Feature: Doors overhaul Added 3m tall doors, as well as 2x2 gates and 2x4 gates, all of which can also be combined to double doors / double gates. Doors crafted from boards are now wood-typed and no longer have a sleek look The old sleek looking door can be purchased at the trader instead The opening and closing sequence of doors is now animated Feature: Sign block overhaul Signs and labeled chests text font size is now configurable and more easily moddable Sign text editor text area more accurately represents how the actual text is displayed on the sign Added writeable metal plaques that use a new medieval font Feature: Improved Handbook Improved search result quality (prioritize full word over partial words, deprioritize ore blocks and items) The handbook now displays output quantities for crafting and barrel recipes Added growing properties of fruit trees to the handbook New textures for diluted alum, cassiterite and chromite so one can tell apart the 3 liquids suitable to create mordanted cloth in the handbook Lanterns are now grouped. Fixed Cider and Aqua vitae not listed. Fixed several links not working in the handbook Feature: Improved display cases. Added tall display case. Can now center-place items in display cases. Placing direction now affects the placed item rotation Feature: Added angled beams system. Allows you to create long straight lines of wood in your constructions. Comes in wood variants and some aged metals. Note: beams are purely decorative Feature: Tutorial system. Can now start/stop a tutorial from the handbook. Multi-tutorial support. In pre.1, currently only has one starter guide tutorial. Feature: Large amounts of new seraph clothing, found in underground ruins Feature: Visible fertilizer. Fertilizer applied to farmland is now visually shown on the farm land Feature: Added one new rotation option to the planks block, now acts like logs when placing (vertical, n-s and w-e) Feature: Can now download land claims using command /land claim download [index] Feature: The game now attempts to download unsatisfied mod dependencies from the Vintage Story ModDB Feature: Added auto-updater for the Windows client (not available on Linux/Mac) Feature: Added 1-click mod installer support for our mod database Feature: Added experimental playstyle called "Homo sapiens" that intends to remove all lore content from the game. WIP. Feature: Dialogs and main menu now have a textured background Feature: Added 50 wearable butterfly pins (creative mode only currently) Feature: Added glasses face accessory for seraph Feature: Added ruined weapons. Unique models with fairly high damage, but very low durability. You'll have to choose whether to use them in a pinch or keep them on display somewhere. Feature: Full remake of the "music box". New model and new concept. The music player is now called "Resonator" previously "Echo Chamber", and the mediums are now called "Tuning cylinder" instead of "Resonance Archive". Feature: New (survival mode) construction options Feature: Parchment can now be crafted Feature: Added sod roofs and debarked logs, survival craftable Feature: Improved chiseling! Feature: Chiseled glass is now seamless. Improved FPS in heavily chiseled areas by about 4% (thanks, Xytabich) Feature: Chiseled blocks can now support climate/season colored blocks. Added "creativegrass" to the creative inventory as an example Tweak: Modified how chiseling partial blocks behaves. in 1.17 it constrained the players within the original bounding boxes. In 1.18 it constrains the player within the original volume of each material. Feature: Improved world maps! Improved shading to better visualize the steepness of the terrain Waypoints are now more visible against the map background Tweak: The Add Waypoint dialog now auto suggests a name based on the chosen icon and color By default, a waypoint is now created where you last died. Only the most recent death waypoint is kept. Can be disabled server wide via worldconfig allowDeathwaypointing or per player via /waypoint deathwp false Feature: Added /land claim export to allow players on multiplayer servers to export their claim to be saved on the server. Disabled by default, requires privilege "exportclaims" to run. It is up to server owners to determine what to do with these exports - they are in the server data folder. Useful for migrating to a 1.18 world via worldedit. Feature: Added ability for players to generate the main story event from 1.18 - the Resonance Archives - at a chosen location through commands. This is for players and server owners that would like to have the main story event also in their old worlds. Instructions: 1. Find a suitable location where there are no chunks that you want to keep, in a large area around 2. Look at a block for the desired center location. Run command /setstorystrucpos resonancearchive l[] 3. Then standing at the same center location, use either command /wgen regen 6 to generate the terrain on even ground, which might expose parts of the structure on the world surface in some instances, or use command /wgen regenf 7 to generate hilly terrain which will better cover the full extent of the Resonance Archives, but might create some chunk borders. Tweak: Gameplay balancing changes Feature: Player can no longer hold hot items above 300°C in hands directly - requires wooden tongs in off-hand now. Feature: Bows now have accuracy modifiers. High end bows are now more accurate Feature: Hunters now have 20% increased bow drawing strength Tweak: Added coyote timer to player jumps (i.e. you can still jump up to 0.15 seconds later after falling off a block) Tweak: Increased min charge time for bows from 0.35s to 0.65s Tweak: Animal harvesting no longer yields bones, but breaking the carcass does Tweak: For the standard survival playstyle, a respawn location set by a temporal gear is now limited to 20 uses. Tweak: Prospecting pick node search mode is now enabled by default in standard survival (radius 6) Tweak: Foxes, Wolves and Bears will now de-spawn after 14 in-game days Tweak: Standing in lit firepits or on hot ingot/tool molds now damages players and creatures alike (though players can still handle hot ingots and tools with impunity) Tweak: Player can no longer place blocks directly in Lava Tweak: Lore items no longer disappear when discovering, and can be right-clicked to read directly. Tweak: The sling now requires a 0.75 seconds charge time instead of 0.35s Tweak: Wood chests now require 1/4th of a metal ingot to craft in the form of a new "metal nails and strips" item which can be smithed Tweak: Shield blocking mechanic tweak - attacks from a steep angle (above or below the player beyond 65°) now require the player to be looking up/down to block the attack Tweak: Increased steel chisel durability (5000 -> 6000) Tweak: Breaking tallgrass with a knife no longer removes it but trims it. Trimmed grass no longer drops dry grass. Tweak: Cassiterite, chromite, and lead now use the same quantity averaging as ilmenite, when crushed Tweak: Nuggets of ilmenite, galena, chromite, and cassiterite can now be crushed in the Pulverizer. In order to maintain parity with regular ore, the yield of nuggets is less than 1. You will generally, on average, get one crushed unit for every 3 nuggets. Tweak: Animal harvesting speed bonus for higher tier knives (proportional to the knife's plant harvesting speed) Tweak: Reduced Drifter max light spawn threshold from 9 to 7, to more easily Drifter-proof areas Tweak: In single player, the game now fully pauses during character creation Tweak: Alum deposits can now also spawn surface ores Tweak: Reduced chance of calm rift weather Tweak: Bighorn sheep hitbox and wander speed fine tuning Tweak: Meals now get lost when a pot or bowl with a meal is dropped in water Tweak: All stone-age knives now produce just 1 knife from the knapping recipe but have their durabilities doubled Tweak: Clean bandages can now be used to heal for +3 hp Tweak: Made sand storms a bit less common Fixed: Bears drowning in water Fixed: Hunger exploit when eating a meal while full Fixed: Damage taken from inserting a temporal gear was absorbed by armor Tweak: Visual fine tuning Feature: New 3d model for reeds Feature: Reworked firewood model! Also affects firewood piles, firepits and pit kilns as well Feature: Added underwater Sediment disturbance particle effect Feature: Particles from held torches are now also affected by wind. Tweaked fire effects of torches and firepits to be more fire-like. Tweak: Increased overall scene brightness on sunny days Tweak: Desert storm fog no longer appears when it recently rained Tweak: Cloud visuals fine tuning. Now a bit more fluffy looking. Mitigate jarring cloud edges. Tweak: More shader fine tuning (fixed horizon not same color as fog with godrays enabled, flat fog extending slightly further into the horizon, mitigate heavy smudge on the sun with godrays enabled, Tweak: Snowfall is now more dense Tweak: Harvesting berries now spawns some particles Tweak: The "protect eyes" seraph pose during strong winds now no longer triggers if you are indoors or not looking into the wind direction Tweak: Seraph now also adjusts its torso when looking around Feature: Seraph now plays one of 4 random animations after being idle for 20 seconds, at a 1% chance per tick Feature: Seraph can now wear spectacles Tweak: Text on sign blocks is now a bit sharper Tweak: Reduced see-through effect of water near the player Tweak: Made rain drip particles wind affected Tweak: Creature step pitching visual fine tuning Tweak: Reduced shiny effect for blocks that are in shade Tweak: Temporal stability twitching now disabled when not in survival mode Tweak: Replaced weak block reflectivity mode with a pixelated version, the old smooth one was also broken on Nvidia cards Tweak: Performance optimizations New "ChunkUploadRateLimiter" graphics settings that can help you reduce potential lag spikes during chunk loading (Detail: on PCs with fast CPUs and slow GPUs, new chunks may be rendered so quickly that a slow GPU chokes up, causing intermittent frame rate drops on affected systems, when moving into new map areas) Supercharged chunk generation on CPUs that have at least 8 logical processors, e.g. 4 core, 8 thread CPUs. (Technical info: Chunk generation thread no longer goes to sleep while generating at 8+ logical processors) Eliminated lag spikes in some areas of the game, most specifically when searching for buckets in the creative inventory (4s lag spike -> no lag spike) Improve world startup speed by ~2.0 seconds. (Technical info: Make Lang system lock-free) Further improved startup performance on worlds that are using many modded blocks (or were using many! even if a mod is removed, it can have some lasting effect on block data storage in a saved game) Much improved overall FPS when dropping thousands of items. (Technical info: If there is over 1500 entities loaded, dropped items will enter a physics dormancy state after a couple of seconds if there is no player in a 7 block range, where they will tick their physics 20 times slower) Slightly optimize dropped item despawn behavior as well Slightly increased overall FPS (Technical info: Tighter frustum culling check + do not draw moss and lichen, or loose stones at LOD2, additional face culling on less-visible distant leaves at LOD2) Slightly increased overall FPS #2 (Technical info: cave art and stone, gravel overlays not rendered at LOD2; partial blocks which are fully dark (0 sunlight, 0 blocklight) are rendered only at LOD0 distance, will only affect underground as world surface blocks have sunlight values) Tweak: Improve FPS by up to 23% when at max view distance. (Technical info: Clamp lod bias beyond 640 view distance, resulted in 13 FPS => 16 FPS / 17mil tris => 12 mil tris at max view distance in a heavily forested area) Tweak: Improve FPS with many falling blocks Tweak: Small creatures should now no longer trigger falling block avalanches Tweak: Mitigated a few sources of lag spikes on client and server (Technical info: Reduced lock contention, removed some unnecessary bits of code) Fixed: Client side slow memory leak (Technical info: map regions were never unloaded on the client) Feature: Full rewrite of the command system to be more powerful, more flexible, self-documenting and more everything. Disclaimer: WIP. Thousands of lines of code were rewritten, but not all current commands are updated to the new Command API syntax. Many commands now allow for complex selectors and can operate on multiple targets at once. Full documentation will be made available by us by the time of a stable release. For now, please use the in-game /help command, it should be able to provide full help for the commands which use the new Command API. For example, /help tp Improved /ban command. Now must supply a time span and reason before banning a user. For a reasonless permaban, added command /hardban. More informative banned screen for the banned player when attempting to join. More informative output on "/list banned" and no longer prints expired bans. Expired bans are now deleted on server startup. Bans/Unbans are now logged to server-audit.txt /tp now uses the new entity and target location selector systems. Examples: /tp 0 150 0 - Teleport yourself to 0 150 0 /tp s[] Saraty - Teleport yourself to saraty /tp Tyron Saraty - Teleport tyron to saraty /tp p[] Saraty - Teleport all players to saraty /tp p[range=12] ~ ~10 ~ - Teleport all players within a 12 block range 10 blocks in the air /tp l[] Tyron - Teleport the currently looked at entity/player to Tyron /tp Tyron l[] - Teleport Tyron to the currently looked at entity/player When typing a wrong command, the command system now tries to find a similar one and suggests it as a clickable link Feature: New command /setblock <code> <position> Feature: New command /executeas <entityselector> <command> Feature: New command /activate <position> [arguments]. For supported blocks, it should be similar to a player right-clicking or activating the block. Currently supported: opening/closing doors, trapdoors and gates; executing a Command Block; operating a mechanical power Clutch Feature: New command /entity setattr command to set attributes on an entity Tweak: Removed /clearentities, replaced with /entity wipeall <entityselector> Tweak: /entity count and /entity countg now accept an entity selector argument Tweak: /entity remove now requires an entity selector, e.g. e[type=drifter*] Tweak: Commands /cit and /chunkunload are now respectively /chunk cit and /chunk unload Tweak: Command /debug cr is now /debug chunk relight Tweak: Command /debug delplr is now /player [playername] wipedata Tweak: Command /debug clrplrinv is now /player [playername] clearinv Tweak: Command /debug setgen is now /entity setgen Tweak: Command /debug setlact is now /entity setlact Tweak: Changed syntax of /giveitem and /giveblock: Before: /giveitem type quantity toplayername {attributes} Now: /giveitem type{attributes} quantity entityselector /weather command tweaks Tweak: /autosavenow and /genbackup: Can now be run from server console Fixed /setblock not respecting block attributes argument Tweak: /we mark now requires '=' prefix for absolute positions Tweak: The /kill command now requires the "selfkill" privilege, granted by default, so that server admins can choose to remove it. Tweak: Disable .debug commands for non-admins in multiplayer Feature: More creative mode content Feature: Added Conditional Block and Ticker Block as first steps to better support adventure map making Feature: Much more Clutter. Clutter has its own Creative tab. Added aged and rotten ebony planks, improved clutter crates, ruined small crate, more ruined tables and bed variants, ruined scroll racks, empty ruined tool racks, ruined lanterns, heavy doors, banners, pipes. aged armor stands, dirty gravel, long tables, aged polish rock, carved acacia log, ruined trunks, ruined translocator etc.. Feature: Can now place omok pieces on a remodeled Omok table top. Pieces can be bought at the trader. Feature: Added various new block decor overlays to creative mode, such as mold, rust, spotty moss, wet gravel Feature: New Aged bricks block Feature: Added a texture flipper tool. Allows you to change the wood type on a number of clutter blocks. Feature: Added "measuring rope" creative mode block to help with relative coordinates needed by various commands Feature: new Worldgen Hook block to support generation of additional worldgen structures when this block is placed by worldgen, (see technical info in API changelog below) Tweak: Added veryaged and veryaged-rotten variants of debarked logs and support beams Tweak: Added several more features to the Spawner meta block Tweak: Can now find all decor blocks by searching for "layer" or "decor" in the creative inventory Tweak: WorldEdit changes Feature: Worldedit: Added ability to gen trees with vines via "/wgen tvines 0..1" Feature: Flood fill tool: Can now separately ignore water or plants Feature: New chisel brush world edit tool paint in voxels Feature: Added /we mpacifywater. Pacifies water in selected area - i.e. turns all flowing water into still water Feature: Added /we mdeletewater. Deletes all water in selected area Tweak: Added "ignore water and plants" switch for the flood fill tool Tweak: Added chiselable collider meta block Tweak: World edit selection tools now have a more intuitive selection behavior Tweak: Air brush mode has a new "replace only selected block" mode Tweak: Added /we cx, /we cy and /we cz to change the selection in x,y and z axis Fixed: Imported and placed Schematics now place Decor blocks correctly Fixed: Worldedit Undo/Redo not working with decor blocks Fixed: Worldedit Undo/Redo borked with liquids Fixed: /wgen regen sometimes not sending chunks properly Feature: Textareas now support word automatic wrapping Tweak: Game now starts at year 0 Tweak: Improved wonky hitbox on bells, bells no longer spawn surface drifters and try harder to spawn a mob nearby. A dead bell now remains on death. Tweak: Can now use wrench to rotate clutter blocks (also hold sneak to turn turn a block around the looked at block face) Tweak: All wrench-rotatable blocks now show this in their block interaction help Tweak: Disabled ram optimization setting "Do not optimize". Tends to make things worse, performance wise Tweak: Reduced max resolution slider value to 100% (was 200%). Can be still increased with .clientconfig Tweak: Made butterflies not flee from you when you sneak Tweak: Flower visuals rework. Several flowers now use a richer model. Reworked woad texture, (still to add: reworked cow parsley, reworked california poppy) Tweak: New texture for golden poppy and woad flowers. Increased golden poppy spawn chance 5-fold Tweak: Firestarter can be used in claimed lands with the use permision (required build/break permission previously) Tweak: Ground stored items can now be placed/removed in claimed lands with the use permission (required build/break permission previously) Tweak: Fish AI fine tuning Tweak: Nails and strips can now also be used for block reinforcement Tweak: Echo chamber is now renamed to Resonator Tweak: Added our moderators to the credits screen Tweak: Better auto-guessing for the right window size and GUI scale on first startup Tweak: The game is now more robust against removing/re-adding mods or blocktypes (Technical info: Block entity data on missing blocks was lost upon save&reload, it's now preserved in case the block is later re-added) Tweak: Various dejanks / Quality-of-live changes Tweak: Fine tuned camera position time step, might reduce frame jitter Tweak: Vintagebeef now has a 3d model, tweaked pear on tree texture, fine tune roof corner 3d models Tweak: Fixed minor UI issues in the settings dialog. Added "Framerate issues" link to the wiki Tweak: 3rd person camera now looks through glass instead of zooming onto the seraph Tweak: Vines no longer drop "end" sections Tweak: Hide reticle in spectator mode Tweak: Snappier plate armor step sound Tweak/Fixed: The torchholder now also has a tight attachment area for chiseling Tweak: Prevent creatures from stepping on stalagmites/ctites Tweak: Breaking soil under ferns now removes the fern Tweak: Lit torches now write when they burn out in held tooltip and burn out in 48 hours as its written on the extinct torch. Tweak: The hotkeys to toggle the coordinate hud, block info hud and block interaction help (V, B, N) now require Ctrl to pressed by default (CTRL+V, CTRL+B, CTRL+N). Our intention is to save new players from accidentally switching off this useful help Tweak: Torches are no longer "Material: Other" Tweak: Removed butter from creative menu & handbook. Removed unused "Crank" item from the game Tweak: Parchment and books are now groundstorable Tweak: Renamed 'Cooper's Reed' to 'Cattails'. Reed baskets renamed to Reed chests, to avoid confusion with reed handbaskets Tweak: Added mod name to held item info if it's not a vanilla block Tweak: Removed "Stove" block from creative inventory (you can still get it via /giveblock stove-unlit-north) Tweak: The creative only rhodium items are now nickel Tweak: The world config fertilityRecoverySpeed no longer affects fertility recovery from fertilizer Tweak: More strongly attenuate lightning and thunder sounds while underground Tweak: /gm sp now puts the player back in 1st person mode if they were in 3rd person mode Tweak: Better positioning of the hover item info box when it moves out of the window area Tweak: Creatures now avoid walking into fire or boiling water Tweak: Added lots of missing translation entries. Updated community translations. Added Dutch translations. Tweak: Added many more translator credits and organized them alphabetically. If your name is in the credits and you don't want it to be, please contact us through email, support ticket, or Discord. Tweak: Worldgen errors are now logged to a separate, permanent log file, server-worldgen.txt for later inspection Tweak/Fixed: Added "sudo sysctl -w vm.max_map_count=262144" to install.sh to fix RAM issues on Linux Removed: Instanced grass/flower rendering. Fixes flower rendering bugs. Fixed: Changing sound output device broke many sounds Fixed: Game crashing on world load when the installation path contained curly braces Fixed: Game crashing with StackOverflowException when the VintageStoryLib.dll was not found. Now crashes with a more useful error. Fixed: Game crashing in multiple locations when the survival mod assets were not loaded Fixed: Sun rising in the evening when the survival mod was disabled Fixed: Using wrench in creative mode consumed durability Fixed: Tapestry in GUI mirrored, fixed wrong textures on the sides of tapestry Fixed: Link text alignment issues with centered fonts Fixed: Hacked locusts were despawning when out of player range Fixed: Lighting flashes in the cloud were not removed in some cases, causing permanent bright spots Fixed: Gui derp when right clicking a clay form twice Fixed: Potential crashes when knapping with stones that were also suitable for cave art Fixed: "Meta (Spawner)" gui creature selection derps Fixed: z-fighting on seraph hand when holding a forlon estoc Fixed: Group invite notification not received by players Fixed: A crash related to cloth sim Fixed: Wrong texture on part-baked and charred sunflower bread Fixed: No linebreak made by the text editor if there were no spaces to linebreak at Fixed: Wrong texture on the aged basket, added ruined basket as well Fixed: Able to overfill troughs using chutes Fixed: Should fix a server-side exception when a client crashes during connect Fixed: Game crashing when removing a cinematic camera point when there is no points, then re-adding a point Fixed: Incorrect particle collisions with clutter blocks Fixed: One occasional source of "Tried to get block outside generating chunks!" error in logs Fixed: Vintagehosting: Able to select a server version not compatible with vintagehosting Fixed: Issues with saving macros Fixed: Multiple issues with the move tool, amongst others clutter blocks not updating correctly as well as an issue when loading block entities client side Fixed: Chest animations borked Fixed: Animated blocks such as chests glowing if something else animated in camera view is glowing Fixed: Unknown decor blocks (e.g. from removed mods) were invisible. Now they display an unknown texture. Fixed: New world not starting if it can't find a suitable spawn location Fixed: Multiple issues when importing a schematic from a previously modded world Fixed: Prevent a very old bug where some chunks become completely black (=unlit) after reopening a savegame Fixed: Armorstands not having their items when placed from story schematics Fixed: Rare errors in logs reported by BETransient, on snow-covered Reeds blocks Fixed: Multiple usability issues with display cases. Added a line on its purpose in the handbook Fixed interaction help not displayed Instead of executing the default interaction when right clicking with a unsuitable item/block it now displays an error to the player Fixed: Serious issue with cascaded ore bomb explosions somehow exploding multiple times causing extreme lag. Tweaked explosion smoked particles a bit. Fixed: Can no longer walk through claimed doors (technical info: Land claiming / Privilege testing when breaking, placing or using blocks is now synchronized to client) Fixed: One major cause of dark/unlit chunks (technical detail: fully dark chunks could result from errors (code exceptions) in worldgen in any of the worldgen passes before lighting is reached; now the world generator will normally attempt to continue with later passes including the lighting pass, while logging the error to new log file server-worldgen) Fixed: Exception when SHIFT clicking item from crafting output into a full inventory Fixed: Polar bears spawning in mountains Fixed: Game crashing when failing to connect a server Fixed: 0.5 second interval lag spikes when playing on a server with many players Fixed: Auroras visible where they shouldn't be Fixed: Added missing server side smithing recipe validation Fixed: Creative inventory sometimes not reacting to mouse clicks to pick up an item/block Fixed: Might fix issues with game stuck in the world loading/connecting screen Fixed: Window border settings not remembered after game restart Fixed: Wrong block breaking decals on bookshelves and clutter blocks Fixed: Server side block related commands not behaving correctly with meta blocks around (render meta blocks mode was not synced to server) Fixed: Should avoid a crash related to fruit trees Fixed: 2 server side exceptions near the world border Fixed: Should fix able to interact with claimed firepits, querns and barrels Fixed: Players in spectator mode were emitting light from held torches / respawn glow Fixed: Should fix client desync with ground storage, creating ghost items in the players inventory Fixed: Should fix HUD going invisible on MacOS \o/ Fixed: Player stepping sound spam when other player stand on some blocks Fixed: Should fix players sometimes spawning inside blocks in new worlds Fixed: Missing/Incorrect translation entries Fixed: Modloader asking players to download missing dependencies on disabled mods Fixed: Wrong crafting texts on the barrel dialog Fixed: Creativegrass listed in the survival handbook Fixed: Some privileges being listed twice in serverconfig.json Fixed: Extremely old bug in world generation where a jarring climate edge generates near world borders Fixed: Snow accumulation (based on RainHeightMap) wrong if chiseled block atop another chiseled block Fixed: Player affected by wind while indoors with doors or leaded glass Fixed: Mitigate rendering issues with tallgrass against other blocks Fixed: Wrong coords from .copy posi Fixed: Crash in Creative mode if a still water block was placed in a barrel Fixed: Pink glass not coloring lantern light Fixed: Game crashing when displaying empty text links Fixed: Work items displayed in the handbook were invisible and a source of lag Fixed: Various rare crashes (technical info: a rare chunkdbthread crash when 3rd party mods attempt to store data, crash when taking Boiling water with a bucket, random ChunkDataLayer.GetGeneralCase null reference due to a rare race condition during palette compaction; on multiplayer servers EntitySimulation.SendEntitySpawns log spam if the connected client had no entityPlayer; BehaviorDoor accesssing GetLiquidBarrierOnSide during worldgen; BEGroundStorage attach block to side when no StorageProps set) Fixed: Earthball mushroom picked item texture incorrect Fixed: Water lilies blocking specular reflection Fixed: Polar bears spawning on mountains Fixed: 4th slice of pie not stacking Fixed: Mushroom stew in pot invisible API Changes The most significant change is a full command system rewrite. The old way of registering commands still works but is now marked obsolete. The new command system allows you to define commands using the Fluent interface design pattern, as well as have prebuilt argument parsers for you to choose from. The new syntax also allows us to automatically generate command syntax documentation \o/ I've continued my efforts towards more behavior-based programming of blocks and items. There is a new BlockGeneric and StrongBlockBehavior base class which forward more method calls. Where possible, I tried to add or rewrite code to use block behaviors or block entity behaviors - such as the new door code. Support for multiblock structures is also improved, evident by the new large multiblock doors. The player mounting system should also be significantly more robust and flexible, see also raft code. Adding Worldmap waypoint icons is now dead simple - just drop in an svg file in the right folder. When a game world has loaded up, it will now print an error summary, so you no longer need to go searching trough the log files for errors. It looks like this when there are no errors: 14.2.2023 12:22:23 [Client Notification] =============================================================== 14.2.2023 12:22:23 [Client Notification] (^_^) No issues captured during startup 14.2.2023 12:22:23 [Client Notification] =============================================================== Beyond that, there is the usual myriad of minor changes. Have a look: Feature: New "StrongBlockBehavior" base class. Has a greater range of callbacks. Feature: Block/Item Texture overlays now allows you to define a blend mode in json. For an example see assets\survival\blocktypes\wood\woodtyped\door.json. Available Modes: Normal, Darken, Lighten, Multiply, Screen, ColorDodge, ColorBurn, Overlay Feature: All waypoint icons are now loaded from svg files Feature: Story structure generation system. Allows generation of a very large schematic, once per world Feature: New side-agnostic api subsystem: api.ChatCommands Feature: NPC dialogue system Can now add dialogue to any NPC with pure JSON Supports multiple response options, setting/reading of variables, giving and requesting items, playing sounds, and more Tweak: Conversable behavior should now allow for customized conversations based on character class and npc personality. If will now try to load the conversation file in the following order: 1. convo-{charclass}-{personality}.json 2. convo-{charclass}.json 3. convo.json Feature: Added BlockEntity.OnExchanged() callback for block entities where blockAccessor.ExchangeBlock() was called on Feature: New Block.Activate() method. To be used for automation. Currently available for doors, trapdoors, fence gates and clutches, and Command blocks and Conditional blocks Feature: Added method ForceLandformAt() to GenMaps.cs. Allows one to override the landform in a given area. Feature: Added sapi.WorldManager.TestMapChunkExists and sapi.WorldManager.TestMapRegionExists Feature: Added new OnTestBlockAccess event to override land claiming behavior Feature: Added client side events MapRegionLoaded and MapRegionUnloaded Feature: BehaviorCanIgnite now will search for a IIgnitable interface in the block, block behavior, block entity and block entity behavior Feature: Added OnGetTemporalStability event to mod system "SystemTemporalStability" Feature: WorldgenHook block, triggers the specified worldgen hook (set by command /dev worldgenhook) when this block is placed by a schematic during worldgen Feature: Event.WorldgenHook and Event.TriggerWorldgenHook to run custom worldgen code at a particular position, triggered by something else for example placement of a specific block The default Worldgen hook is "genHookStructure <assetname>" which generates structure elements from schematics according to rules specified in the named file found in folder assets\survival\worldgen\hookgeneratedstructures Tweak: Added BlockEntity.OnPlacementBySchematic() method Tweak: Added IServerPlayer.InWorldAction event Tweak: The interfaces IMultiBlockMonolithicSmall, IMultiBlockMonolithic, IMultiBlockModular for multiblock behaviors can now also be implemented inside a BlockBehavior (previously only able to implement them in a Block class) Tweak: Added ability to supply a different crop model when grown on farmland, attribute onFarmlandShape (of type compositeshape) Tweak: Json patches now can be disabled via `enabled` property Tweak: Added helper method Block.GetBEBehavior() Tweak: Added helper method IBlockAccessor.GetInterface<T>() Tweak: Non-json files in blocktypes, entities and itemtypes are now ignored by the loader Refactor: "api.BlockTextureAtlas.AtlasTextureIds[0]" is now "api.BlockTextureAtlas.AtlasTexture[0].TextureId" Refactor: Moved away several methods from the Block class Method Block.WildCardReplace now moved to extension method AssetLocation.WildCardReplace Methods Block.OnTryIgniteBlock and Block.OnTryIgniteBlockOver now moved to IIgnitable interface (make your class inherit from this interface and remove the override keyword to make it compatible again) Methods Block.SetWindFlag, Block.ClearWindFlags and Block.ToggleWindModeSetWindData are now extension methods of MeshData Refactor: Refactored meshing/transformation mechanism of BlockEntityDisplay class. Now caches content meshes amongst all blocks of the same class, instead of keeping a copy of every mesh for every block. Refactor: Added Tesselator.GetTextureSource() and marked GetTexSource() as obsolete Refactor: Gui Methods .AddButton() and .AddSmallButton() with orientation argument are now marked obsolete (simply remove the orientation arg from your code to fix) Refactor: Extracted AnimationUtil class out of BEBehaviorAnimatable to be used in more universal ways. Refactor: BEBehaviorAnimatable.InitializeAnimator() method reordered args Refactor: Clean up survival textures folder: moved several out of place textures into various folders Refactor: Removed last row in the elementTransforms uniform matrices for entity shape rendering, as its always 0 0 0 1, reduces upload overhead by 25% Refactor: BlockEntityShapeFromAttributes is now a block entity behavior. The block entities "Clutter" and "ClutterBookshelf" are thus no longer necessary and were removed Refactor: OnEntityDespawn event, renamed class of 2nd argument "EntityDespawnReason" to "EntityDespawnData" and uppercased its field Refactor: Breaking changes to IMountable interfaces. MountPosition property now needs to return a EntityPos instead of Vec3d, removed MountYaw property (set pos.Yaw instead). Added new property EnumMountAngleMode AngleMode. Added LocalEyePos property for a sitting entity you'd likely want to return something akin to "new Vec3f(0,1,0);" Refactor: Move snow cover related code from BEMicroBlock into BEBehaviorMicroblockSnowCover Refactor: Deleted SyncedEntityPos class. Moved the only useful field in there (LastReceivedClientPosition) to ServerPlayer.cs Refactor: GetClimateAt(), argument EnumGetClimateMode now defaults to NowValues instead of WorldGenValues Refactor: If you have meat-like items in your mod or use inFirePitProps, you'll have to readjust your transforms, as the firepit spit is now diagonally placed. Sorry. Refactor: ITreeGenerator interface: Moved most parameters into a new TreeGenParams class Refactor: Renamed IBlockEntityRotatable to IRotatable Refactor: Clean up GuiDialogHandbook code in preparation for use in a new command handbook Refactor: Client side world loading code - now all in one file instead of 6 different ones Refactor: Rename block.LiquidBarrierHeightOnSide() to block.GetLiquidBarrierHeightOnSide() Refactor: Renamed the multiblock interfaces again and they no longer inherit from eachother, which made no sense. Renames: IMultiBlockMonolithicBasic => IMultiBlockColSelBoxes IMultiBlockNormal => IMultiBlockInteract IMultiBlockExtensive => IMultiBlockBlockBreaking New: IMultiBlockBlockProperties Refactor: For the server side event ChunkColumnGeneration. Changed delegate method arguments. Now passes on a single IChunkColumnGenerateRequest object containing the previous 4 arguments Tweak: Added guid field to Waypoints Tweak: Added OnHeldInteractCancel to CollectibleBehavior Tweak: All Wildcard matching util methods now accept * as Domain to ignore domain checking. Also works for the SearchItems and SearchBlocks methods. Also fixes spawner block dialog not showing modded creatures Tweak: Added LanguageCode field to TextCommandCallingArgs so its easier to respond with correctly translated strings server side via Lang.GetL() Tweak: BlockLayeredSlowDig class more moddable now Tweak: Server now keeps track of player placed or broken blocks for each chunk Tweak: Made some AStar stuff public/virtual Tweak: BlockEntityTeleporterBase.GetTarget() is now public Tweak: Server event CanPlaceOrBreak now comes with an additional claimant argument that must be null when the request is denied Tweak: Added OnBlockBrokenWith and OnBlockBreaking to CollectibleBehavior Tweak: Fixed missing server side verification of auction price Tweak: New entity callback OnAsyncParticleTick(). Lets you spawn per-+entity particles in a separate thread. Tweak: IBlockAccessor.WalkBlocks() now calls the callback method twice for the same position if there is a liquid in the fluids layer Tweak: Player head control rework. Now simplified code. Tweak: BlockWater now has json configurable ice block code and freezing point Tweak: Firewood piles now also use the new ground storable system. Fixed ground storable issues with TransferQuantity > 1 Tweak: The game now logs a warning/error summary after startup Tweak: Ground storage json property TessQuantityElements is now marked obsolete, use property ModelItemsToStackSizeRatio instead Tweak: IMountable interface now requires 2 more properties CanControl and MountedBy Tweak: IMountableSupplier interface now requires property MountPoints Tweak: Massive flower assets overhaul. Moved all flower shape files from block/basic to block/plant/flower and removed redundant shapes. Tweak: Sign block: Writable width, amount of lines, font size, font style and text positioning is now json configurable Tweak: Transform editor now allows X-axis flipping Tweak: Added ICustomHandbookPageContent interface for blocks and items if they want to modify handbook text in code Tweak: New properties maxQuantityByGroup and spawnCapPlayerScaling for entity runtime spawn conditions Tweak: Less hardcoded sleeping system. Can now remove the tiredness behavior from players to disable sleeping mechanic. Tweak: If a block defines block entity behaviors in json but did not define a entity class, then it will now default to "BlockEntityGeneric" Tweak: Prevent the game crashing from invalid blocks Tweak: api.Event.MapRegionGeneration event, added argument "ITreeAttribute chunkGenParams = null" Tweak: New argument for "/wgen regen" to generate only one type of landform, e.g. "/wgen regen 3 veryflat" Tweak: Added chattype:// link protocol to add text to the clients chatbox Tweak: Handbook pages on items/blocks now show their page code if extended debug info is enabled (.edi) Internal: The ServerRedirect packet should correctly redirect the client now, untested and not available through the API yet Fixed: Code domain issue in BlockGenericTypedContainer.GetDecal Fixed: Particly registry not available through IClassRegistryAPI Fixed: Cairo graphics system printing not-disposed errors for unowned surfaces Fixed: Finally fixed generic chest blocktype texture oddities Fixed: Entity idleSoundRange not synced to client Fixed: Block Durability property not synced to client Fixed: Renamed container property "transitionSpeedMulByType" to simply "transitionSpeedMul" which should make it work as intended Fixed: Not able to make grid recipes with 2 liquids Fixed: "shelvable: false" showed up as shelvable in the handbook Fixed: Default value arg in player.GetModData() was ignored Fixed: MeshData.Clone() set incorrect values for VerticesMax and IndicesMax, potentially causing any future operations on the mesh to crash due to being out of bounds. Fixed: Entities imported from schematics sometimes had a wrong offset on them Fixed: Fixed StackOverflow in mapregion.SetModData<T>() Fixed: structures.json, Schematics property not respecting mod domains Fixed: ~150 XML Doc warnings. Moved method BehaviorArtPigment.BlockSelectionToSubPosition() to BlockSel.ToDecorSubPosition() Removed: "Modular" multiblock type. Was never implemented and not really useful either. Saves 150 block ids. Updates since rc.8 Tweak: Added a new property to schematics, EntranceRotation (0,90,180,270) to define where an entrance is, so at worldgen the optimal side is chosen when placing, works only for Surface and SurfaceRuin placement Tweak: mitigate visual borders between low and medium fertility soil during worldgen by reducing the chances it can generate as such Tweak: "Metal parts" model changed. Metal parts and scrap are now ground-storable. Fixed: Rare crash when right-clicking books and other in-hand items while near doors Fixed: Small oiledhide 2x, 3x and 4x recipes impossible to craft Fixed Omok placement off by 1 Fixed "ranged charge time" instead of "ranged charge speed" Fixed: Recipe output showing wrong amounts in handbook Fixed: A crash in the corpse return teleporter Fixed: Z-Fighting on rush mat Fixed: Some parts invisible during animation of the death point return teleporter Fixed: Lava no longer flowing Fixed: Exception thrown when placing red top grass planters (added placeholder texture for now) Fixed: Able to continue gliding when removing the glider mid-flight Fixed: Rare crash introduced in rc8 Fixed: Should address /player [name] wipedata not wiping some player data Api Fixed: Lang.HasTranslation() did not recognize some entries
- 9 comments
-
- 40
-
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.0-rc.7, a release candidate, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also released rc.8 to fix up a startup issue as well as the Resonance Archives occasionally generating underwater More bugs fixed. Stable release even Sooner™ We are happy to report that you should now be able to play v1.18 on old worlds (worlds created in v1.17 or earlier) without too much sacrifice. To have the main story event in your old world, you do however need to run 2 commands by hand - see below. We have addressed two very long-standing bugs, one with dark chunks seen sometimes in the world and one with the land claiming system where players could walk through claimed doors with various tricks - this should no longer be possible, but has the potential to introduce new issues - please let us know if that's the case. Thanks! We have also simultaneously released a 1.17.12 version with the specific fixes below, to ease the process of servers updating from 1.17 to 1.18. Servers with existing maps now have the choice: export player claims and create a fresh map with all the 1.18 features, or retain the existing world and add the main story event to it at a suitably-chosen location (but in that case it will not have other 1.18 features including the new terrain and updated ruins etc., except in newly generated regions of the world) Screenshot by Cosmic Redshift#7238, shared on Discord Game updates 1.17.12 Fixed: Game crashing when trying to connect to a password protected server without password Tweak: Backported land claim downloading from 1.18. Accessible via /wec downloadclaim [index] - download to the player's data folder. Note: In 1.18 the same command is "/land claim download" /wec exportclaim [index] - save to game server data folder. Note: In 1.18 the same command is "/land claim export" Note for this to succeed in 1.17.12, the claimed chunks need to be currently loaded, therefore it is best to travel to each claimed region before running this command. Game updates 1.18.0-rc.7 Feature: Items from the new clothing sets can now be found in ruins Feature: Added /land claim export to allow players on multiplayer servers to export their claim to be saved on the server. Disabled by default, requires privilege "exportclaims" to run. It is up to server owners to determine what to do with these exports - they are in the server data folder. Useful for migrating to a 1.18 world via worldedit. Feature: Added ability for players to generate the main story event from 1.18 - the Resonance Archives - at a chosen location through commands. This is for players and server owners that would like to have the main story event also in their old worlds. Instructions: 1. Find a suitable location where there are no chunks that you want to keep, in a large area around 2. Look at a block for the desired center location. Run command /setstorystrucpos resonancearchive l[] 3. Then standing at the same center location, use either command /wgen regen 6 to generate the terrain on even ground, which might expose parts of the structure on the world surface in some instances, or use command /wgen regenf 7 to generate hilly terrain which will better cover the full extent of the Resonance Archives, but might create some chunk borders. Tweak: Continue work on new gadgetry. Added some initial game juice to the base return teleporter and made it 1-time use, the Rift ward is now grid-craftable, fixed night vision device no longer working, fixed temporal gears adding only 1 hour of fuel. Tweak: Made sand storms a bit less common Tweak: Added command /wgen regenf to also regenerate mapregions (/wgen regen no longer does that) Tweak: Added lots of missing translation entries Tweak: Worldgen errors are now logged to a separate, permanent log file, server-worldgen.txt for later inspection Fixed: One major cause of dark chunks (technical detail: fully dark chunks could result from errors (code exceptions) in worldgen in any of the worldgen passes before lighting is reached; now the world generator will normally attempt to continue with later passes including the lighting pass, while logging the error to new log file server-worldgen) Fixed: Can no longer walk through claimed doors (technical info: Land claiming / Privilege testing when breaking, placing or using blocks is now synchronized to client) Fixed: Work items displayed in the handbook were invisible and a source of lag Fixed: Improved ruin generation system Revert 1.18.0-rc.6 change that trader caravans could generate in slightly more places since that lets them end up with wheels in more weird places Structures placed by worldgen now accurately use local grass/soil/sand/gravel Sometimes ruins could be placed overlapping near the edges of mapregions, this should no longer occur Underground schematics which included water were sometimes filled with stone in place of the water Rivulets (waterfalls) can no longer generate in 1-thickness stone ceilings including the roofs of ruins Ground storage items, wall leaning tools, and interactable bookshelves should now rotate properly Api Feature: Structures (in structures.json) can now have suppressTrees and suppressWaterfalls bool settings: these prevent the stated worldgen feature from being able to spawn anywhere within the structure's bounding box (trees includes shrubs) Fixed: Various rare crashes (technical info: a rare chunkdbthread crash when 3rd party mods attempt to store data, crash when taking Boiling water with a bucket, random ChunkDataLayer.GetGeneralCase null reference due to a rare race condition during palette compaction; on multiplayer servers EntitySimulation.SendEntitySpawns log spam if the connected client had no entityPlayer; BehaviorDoor accesssing GetLiquidBarrierOnSide during worldgen; BEGroundStorage attach block to side when no StorageProps set) Fixed: Earthball mushroom picked item texture incorrect Fixed: Water lilies blocking specular reflection Fixed: Polar bears spawning on mountains Fixed: 4th slice of pie not stacking Fixed: Mushroom stew in pot invisible Fixed: Should address damage taken from inserting a temporal gear absorbed by armor 1.18 related changes Tweak: Updated community translations Fixed: Floating snow on top of support beams Fixed: 1.18 doors are now lockable again, in multiplayer. Thanks to @NoelleLavenza Fixed: Ground storage pickup sound gone Fixed: /land free X confirm not working Fixed: /serverconfig setspawnhere not working Fixed: Crafting recipe output quantity in the handbook wrong Fixed: Chiseled blocks in inventory were invisible Fixed: Gas lamps were named "Luminescent jonas lamp" Fixed: /player name privilege command no longer allowing use of custom privilege codes Fixed: Reso archive map not giving marking location on map on multiplayer
- 4 comments
-
- 13
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.0, a stable release, can now be downloaded through the account manager (section "Other Goodies"). At long last! We're happy to release a stable build of 1.18 to our fantastic community. And while it took over 7 months and around 500 individual features, tweaks and fixes we did manage to cram a lot of stuff into this update. Honestly, I did not expect the main story event to turn out so well as it did in the end. I believe there is immense potential to tell a truly compelling story if we keep at it. As always, we're immensely grateful to everyone that tested the test builds and provided us with bug reports and other feedback. We hope you will enjoy this update! What about the .net7 build? We announced a proposed update to .net7 to improve perfomance - it is currently on hold. We are waiting for a 3rd party library to fully support net7, which should be pretty soon. Whats next? For 1.19 we would like to refocus on the topic of dejank - a dejank redux so to speak. We'd like to playtest with the VS team and iron out inconsistencies and annoyances where we find them, but we already have a long list of things we'd like to look at. We hoped to also rework the surface and underground ruins for 1.18 - which will need to be pushed back to 1.19. We also hope to work on the second main story event in parallel when feasible. Game update trailer Screenshots & Gifs Added first main story event: The Resonance Archives. A vast underground structure for you to explore, master its challenges and loot rare treasures. Added NPC Dialogue. You can now have conversations with traders Added Glider: Descend elegantly from tall mountains. Added rift wards to defuse treacherous rifts near your base. Added rafts. Stay dry when traversing the seas. New gadgetry: Night vision device, Single-use base return teleporter and a death point return teleporter can be crafted from rare exotic parts (WIP) Oceans: You can now create worlds with large bodies of water. (Currently) off by default, enable it in the Customize World screen More diverse world generation, such as the new upheaval system, which creates large-scale mountainous areas Geologic activity system. Some areas in the world now spawn hot springs, and possibly even lava rivers closer to the surface Overhauled poles. Instead of massive mountains, there are now windswept glaciers and desolate valleys Rocktyped ruins: Ruins now adapt to the local rock strata (the builders apparently liked to source their rock locally) New landforms: You will fall in love with the new terraced mountains and super flat areas Moss now grows on trees Added veins of cracked rock Added writing system and interactable bookshelves. 1.18 is also "your lore update" \o/ 160+ new types of butterflies and a butterfly net to catch them. Caught butterflies can be placed in display cases. Door overhaul: Added much larger doors/gates, as well as wood-typed doors, and door animations Sign block overhaul: Can now change font size, improved writing experience and added metal plaques Angled beams system: A wholly different placement system for wooden beams Improved chiseling: Glass is now fully chiselable and seamless. There is now also a chiselable "creativegrass" block in creative mode. Added treasure maps. The Treasure Hunter trader offers to help you find hidden treasure ... for a fee Reworked most flower models Improved reeds model Visible fertilizer. You can now see how much fertilizer you applied to farmland Reworked firewood and orientable firewood piles Improved handbook: Now shows output quantities and other QOL changes Overhauled the command system. New Command Block functionality. Command blocks can open and close doors and operate certain other activatable blocks (for example a Mechanical Power clutch). There is also a new Conditional Block which detects nearby entities meeting specified conditions, and a Ticker Block to repeat actions automatically Players in multiplayer can now download a copy of their own claimed land to their local computer. This should help players migrate to a new 1.18 world. Added a tutorial mode (WIP) Auto updater for Windows users Mods can now be installed with a single click from our mod database. Added ability to swap textures, limited to clutter blocks only Added wearable spectacles Full visual rework of our music player - it is now called Resonator, and the media are called tuning cylinders All game updates since 1.17.12 Feature: The first main story event. A massive, highly detailed underground structure for you to adventure into, with many new features and blocks (not described nor pictured here, to avoid spoilers!) Feature: Improved world generation Added Oceans system. Disabled by default but can be set up in the World Configuration screen. Added saltwater whe playing with oceans. Added vertical upheavel system. Very large scale mountainous regions, and flattened plains regions. Configurable. Geologic activity system. Some areas now have underground lava rivers closer to the surface, as well as hot springs above underground lava pools. Configurable. Overhauled polar regions. Instead of mountain ranges there now are glaciers devoid of structures. Added packed ice block. Added 6 new landforms: Large islands, Realistic flatlands, Realistic mountains ledged, Realistic mountains quintuple-ledged, Stepped sinkholes and "Veryflat". Fine-tuned many of the existing landforms. Increase landform sizes by 20% Feature: Chunk border smoothing system. Should greatly mitigate jarring world borders when opening a 1.17 world in 1.18, and future versions where worldgen changes Feature: Cracked rock now spawns like quartz veins Feature: Can now generate up to 8x8 million block worlds (Experimental. Previous max was 1x1mil) (Technical info: Fixed 2 issues with large worlds - entity movement jitter and chunks saved in the wrong locations) Feature: Surface ruins are now rocktyped based on local rock strata. Feature: Surface ruins and trees in wet&warm climates now have moss on their logs Feature: Improved support for ruin/building generation, most notable for mods that add these. (Structures placed by worldgen now accurately use local grass/soil/sand/gravel, Sometimes ruins could be placed overlapping near the edges of mapregions, this should no longer occur, Underground schematics which included water were sometimes filled with stone in place of the water, Rivulets (waterfalls) can no longer generate in 1-thickness stone ceilings including the roofs of ruins, Ground storage items, wall leaning tools, and interactable bookshelves should now rotate properly, Structures (in structures.json) can now have suppressTrees and suppressWaterfalls bool settings: these prevent the stated worldgen feature from being able to spawn anywhere within the structure's bounding box (trees includes shrubs)) Tweak: Tree foliage fine tuning. Each individual tree is now slightly ahead or behind the season tinting, and chopping a tree is now more likely to only fell the targeted tree Tweak: Added gravel coverage & loose rock to mountain peaks to mitigate large empty areas with exposed rock Tweak: Added smoother terrain noise generator by K.Jpg, reduces artifacting that some terrain experienced before Tweak: Improved support for large world heights Reduce rivulet spam high in the mountains, most apparent on large world heights Ore deposits now scale with world height (except surface copper) Terrain detail now scales with world height setting. Previously terrain would become very low detail at large world heights. Tweak: Added slight vertical variation to block layers y-values Tweak: Increased ruined village size variability Tweak: Reduced trees at the north/south pole Tweak: Fewer floating islands (20 block size cull threshold -> 40 block size threshold) Tweak: Added another soil layer Tweak: Reduced spawn depth of treasure chests Tweak: The grades of the deposits bismuthinite, galena, ilmenite, limonite, hematite, magnetite, malachite and sphalerite now increase, the deeper they spawn Tweak: Prevent generation of loose boulders and loose stone on snow and ice Fixed: Water lily no longer generates in very deep water Fixed: Loose patches of rusty gears not spawning underground Fixed: Floating sand generating on water in cold areas Feature: Added Glider. Descend elegantly from tall mountains. Its crafting recipe is a potential reward from the main story event. Feature: Added Rafts. An innovative 1- or 2-seater watery transportation system. Requires crude oar in main hand. Feature: Jonas devices - Night vision device, Single-use base return teleporter and a death point return teleporter can be crafted from rare exotic parts found in ruins and other source. (Work in progress still) Feature: Added rift ward, reduces spawn of rifts by 95% in a 30 block radius around the ward. Consumes temporal gears. Feature: Added treasure maps. They add waypoints on your world map pointing towards treasures or give you directions if the worldmap is disabled. Sold by traders. Feature: New music track for when you are travelling, titled "Radiance and Rust" Feature: Writing system and Bookshelves Can now write in books and parchments. Books can be signed to make then non-editable Added ink and quill item, required for writing in books Added fully interactable bookshelves, lets you store and remove up to 14 books in each one Feature: Added 160+ new types of butterflies. Butterflies can now be caught with a butterfly net & can be placed in display cases. Butterfly spawning behavior now depends on climate and elevation. Feature: More collectibles! Clutter blocks can now drop at a 50% chance. Added over 100 more clutter blocks. Feature: Doors overhaul Added 3m tall doors, as well as 2x2 gates and 2x4 gates, all of which can also be combined to double doors / double gates. Doors crafted from boards are now wood-typed and no longer have a sleek look The old sleek looking door can be purchased at the trader instead The opening and closing sequence of doors is now animated Feature: Sign block overhaul Signs and labeled chests text font size is now configurable and more easily moddable Sign text editor text area more accurately represents how the actual text is displayed on the sign Added writeable metal plaques that use a new medieval font Feature: Improved Handbook Improved search result quality (prioritize full word over partial words, deprioritize ore blocks and items) The handbook now displays output quantities for crafting and barrel recipes Added growing properties of fruit trees to the handbook New textures for diluted alum, cassiterite and chromite so one can tell apart the 3 liquids suitable to create mordanted cloth in the handbook Lanterns are now grouped. Fixed Cider and Aqua vitae not listed. Fixed several links not working in the handbook Feature: Improved display cases. Added tall display case. Can now center-place items in display cases. Placing direction now affects the placed item rotation Feature: Added angled beams system. Allows you to create long straight lines of wood in your constructions. Comes in wood variants and some aged metals. Note: beams are purely decorative Feature: Tutorial system. Can now start/stop a tutorial from the handbook. Multi-tutorial support. In pre.1, currently only has one starter guide tutorial. Feature: Large amounts of new seraph clothing, found in underground ruins Feature: Visible fertilizer. Fertilizer applied to farmland is now visually shown on the farm land Feature: Added one new rotation option to the planks block, now acts like logs when placing (vertical, n-s and w-e) Feature: Can now download land claims using command /land claim download [index] Feature: The game now attempts to download unsatisfied mod dependencies from the Vintage Story ModDB Feature: Added auto-updater for the Windows client (not available on Linux/Mac) Feature: Added 1-click mod installer support for our mod database Feature: Added experimental playstyle called "Homo sapiens" that intends to remove all lore content from the game. WIP. Feature: Dialogs and main menu now have a textured background Feature: Added 50 wearable butterfly pins (creative mode only currently) Feature: Added glasses face accessory for seraph Feature: Added ruined weapons. Unique models with fairly high damage, but very low durability. You'll have to choose whether to use them in a pinch or keep them on display somewhere. Feature: Full remake of the "music box". New model and new concept. The music player is now called "Resonator" previously "Echo Chamber", and the mediums are now called "Tuning cylinder" instead of "Resonance Archive". Feature: New (survival mode) construction options Feature: Parchment can now be crafted Feature: Added sod roofs and debarked logs, survival craftable Feature: Improved chiseling! Feature: Chiseled glass is now seamless. Improved FPS in heavily chiseled areas by about 4% (thanks, Xytabich) Feature: Chiseled blocks can now support climate/season colored blocks. Added "creativegrass" to the creative inventory as an example Tweak: Modified how chiseling partial blocks behaves. in 1.17 it constrained the players within the original bounding boxes. In 1.18 it constrains the player within the original volume of each material. Feature: Improved world maps! Improved shading to better visualize the steepness of the terrain Waypoints are now more visible against the map background Tweak: The Add Waypoint dialog now auto suggests a name based on the chosen icon and color By default, a waypoint is now created where you last died. Only the most recent death waypoint is kept. Can be disabled server wide via worldconfig allowDeathwaypointing or per player via /waypoint deathwp false Feature: Added /land claim export to allow players on multiplayer servers to export their claim to be saved on the server. Disabled by default, requires privilege "exportclaims" to run. It is up to server owners to determine what to do with these exports - they are in the server data folder. Useful for migrating to a 1.18 world via worldedit. Feature: Added ability for players to generate the main story event from 1.18 - the Resonance Archives - at a chosen location through commands. This is for players and server owners that would like to have the main story event also in their old worlds. Instructions: 1. Find a suitable location where there are no chunks that you want to keep, in a large area around 2. Look at a block for the desired center location. Run command /setstorystrucpos resonancearchive l[] 3. Then standing at the same center location, use either command /wgen regen 6 to generate the terrain on even ground, which might expose parts of the structure on the world surface in some instances, or use command /wgen regenf 7 to generate hilly terrain which will better cover the full extent of the Resonance Archives, but might create some chunk borders. Tweak: Gameplay balancing changes Feature: Player can no longer hold hot items above 300°C in hands directly - requires wooden tongs in off-hand now. Feature: Bows now have accuracy modifiers. High end bows are now more accurate Feature: Hunters now have 20% increased bow drawing strength Tweak: Added coyote timer to player jumps (i.e. you can still jump up to 0.15 seconds later after falling off a block) Tweak: Increased min charge time for bows from 0.35s to 0.65s Tweak: Animal harvesting no longer yields bones, but breaking the carcass does Tweak: For the standard survival playstyle, a respawn location set by a temporal gear is now limited to 20 uses. Tweak: Prospecting pick node search mode is now enabled by default in standard survival (radius 6) Tweak: Foxes, Wolves and Bears will now de-spawn after 14 in-game days Tweak: Standing in lit firepits or on hot ingot/tool molds now damages players and creatures alike (though players can still handle hot ingots and tools with impunity) Tweak: Player can no longer place blocks directly in Lava Tweak: Lore items no longer disappear when discovering, and can be right-clicked to read directly. Tweak: The sling now requires a 0.75 seconds charge time instead of 0.35s Tweak: Wood chests now require 1/4th of a metal ingot to craft in the form of a new "metal nails and strips" item which can be smithed Tweak: Shield blocking mechanic tweak - attacks from a steep angle (above or below the player beyond 65°) now require the player to be looking up/down to block the attack Tweak: Increased steel chisel durability (5000 -> 6000) Tweak: Breaking tallgrass with a knife no longer removes it but trims it. Trimmed grass no longer drops dry grass. Tweak: Cassiterite, chromite, and lead now use the same quantity averaging as ilmenite, when crushed Tweak: Nuggets of ilmenite, galena, chromite, and cassiterite can now be crushed in the Pulverizer. In order to maintain parity with regular ore, the yield of nuggets is less than 1. You will generally, on average, get one crushed unit for every 3 nuggets. Tweak: Animal harvesting speed bonus for higher tier knives (proportional to the knife's plant harvesting speed) Tweak: Reduced Drifter max light spawn threshold from 9 to 7, to more easily Drifter-proof areas Tweak: In single player, the game now fully pauses during character creation Tweak: Alum deposits can now also spawn surface ores Tweak: Reduced chance of calm rift weather Tweak: Bighorn sheep hitbox and wander speed fine tuning Tweak: Meals now get lost when a pot or bowl with a meal is dropped in water Tweak: All stone-age knives now produce just 1 knife from the knapping recipe but have their durabilities doubled Tweak: Clean bandages can now be used to heal for +3 hp Tweak: Made sand storms a bit less common Fixed: Bears drowning in water Fixed: Hunger exploit when eating a meal while full Fixed: Damage taken from inserting a temporal gear was absorbed by armor Tweak: Visual fine tuning Feature: New 3d model for reeds Feature: Reworked firewood model! Also affects firewood piles, firepits and pit kilns as well Feature: Added underwater Sediment disturbance particle effect Feature: Particles from held torches are now also affected by wind. Tweaked fire effects of torches and firepits to be more fire-like. Tweak: Increased overall scene brightness on sunny days Tweak: Desert storm fog no longer appears when it recently rained Tweak: Cloud visuals fine tuning. Now a bit more fluffy looking. Mitigate jarring cloud edges. Tweak: More shader fine tuning (fixed horizon not same color as fog with godrays enabled, flat fog extending slightly further into the horizon, mitigate heavy smudge on the sun with godrays enabled, Tweak: Snowfall is now more dense Tweak: Harvesting berries now spawns some particles Tweak: The "protect eyes" seraph pose during strong winds now no longer triggers if you are indoors or not looking into the wind direction Tweak: Seraph now also adjusts its torso when looking around Feature: Seraph now plays one of 4 random animations after being idle for 20 seconds, at a 1% chance per tick Feature: Seraph can now wear spectacles Tweak: Text on sign blocks is now a bit sharper Tweak: Reduced see-through effect of water near the player Tweak: Made rain drip particles wind affected Tweak: Creature step pitching visual fine tuning Tweak: Reduced shiny effect for blocks that are in shade Tweak: Temporal stability twitching now disabled when not in survival mode Tweak: Replaced weak block reflectivity mode with a pixelated version, the old smooth one was also broken on Nvidia cards Tweak: Performance optimizations New "ChunkUploadRateLimiter" graphics settings that can help you reduce potential lag spikes during chunk loading (Detail: on PCs with fast CPUs and slow GPUs, new chunks may be rendered so quickly that a slow GPU chokes up, causing intermittent frame rate drops on affected systems, when moving into new map areas) Supercharged chunk generation on CPUs that have at least 8 logical processors, e.g. 4 core, 8 thread CPUs. (Technical info: Chunk generation thread no longer goes to sleep while generating at 8+ logical processors) Eliminated lag spikes in some areas of the game, most specifically when searching for buckets in the creative inventory (4s lag spike -> no lag spike) Improve world startup speed by ~2.0 seconds. (Technical info: Make Lang system lock-free) Further improved startup performance on worlds that are using many modded blocks (or were using many! even if a mod is removed, it can have some lasting effect on block data storage in a saved game) Much improved overall FPS when dropping thousands of items. (Technical info: If there is over 1500 entities loaded, dropped items will enter a physics dormancy state after a couple of seconds if there is no player in a 7 block range, where they will tick their physics 20 times slower) Slightly optimize dropped item despawn behavior as well Slightly increased overall FPS (Technical info: Tighter frustum culling check + do not draw moss and lichen, or loose stones at LOD2, additional face culling on less-visible distant leaves at LOD2) Slightly increased overall FPS #2 (Technical info: cave art and stone, gravel overlays not rendered at LOD2; partial blocks which are fully dark (0 sunlight, 0 blocklight) are rendered only at LOD0 distance, will only affect underground as world surface blocks have sunlight values) Tweak: Improve FPS by up to 23% when at max view distance. (Technical info: Clamp lod bias beyond 640 view distance, resulted in 13 FPS => 16 FPS / 17mil tris => 12 mil tris at max view distance in a heavily forested area) Tweak: Improve FPS with many falling blocks Tweak: Small creatures should now no longer trigger falling block avalanches Tweak: Mitigated a few sources of lag spikes on client and server (Technical info: Reduced lock contention, removed some unnecessary bits of code) Fixed: Client side slow memory leak (Technical info: map regions were never unloaded on the client) Feature: Full rewrite of the command system to be more powerful, more flexible, self-documenting and more everything. Disclaimer: WIP. Thousands of lines of code were rewritten, but not all current commands are updated to the new Command API syntax. Many commands now allow for complex selectors and can operate on multiple targets at once. Full documentation will be made available by us by the time of a stable release. For now, please use the in-game /help command, it should be able to provide full help for the commands which use the new Command API. For example, /help tp Improved /ban command. Now must supply a time span and reason before banning a user. For a reasonless permaban, added command /hardban. More informative banned screen for the banned player when attempting to join. More informative output on "/list banned" and no longer prints expired bans. Expired bans are now deleted on server startup. Bans/Unbans are now logged to server-audit.txt /tp now uses the new entity and target location selector systems. Examples: /tp 0 150 0 - Teleport yourself to 0 150 0 /tp s[] Saraty - Teleport yourself to saraty /tp Tyron Saraty - Teleport tyron to saraty /tp p[] Saraty - Teleport all players to saraty /tp p[range=12] ~ ~10 ~ - Teleport all players within a 12 block range 10 blocks in the air /tp l[] Tyron - Teleport the currently looked at entity/player to Tyron /tp Tyron l[] - Teleport Tyron to the currently looked at entity/player When typing a wrong command, the command system now tries to find a similar one and suggests it as a clickable link Feature: New command /setblock <code> <position> Feature: New command /executeas <entityselector> <command> Feature: New command /activate <position> [arguments]. For supported blocks, it should be similar to a player right-clicking or activating the block. Currently supported: opening/closing doors, trapdoors and gates; executing a Command Block; operating a mechanical power Clutch Feature: New command /entity setattr command to set attributes on an entity Tweak: Removed /clearentities, replaced with /entity wipeall <entityselector> Tweak: /entity count and /entity countg now accept an entity selector argument Tweak: /entity remove now requires an entity selector, e.g. e[type=drifter*] Tweak: Commands /cit and /chunkunload are now respectively /chunk cit and /chunk unload Tweak: Command /debug cr is now /debug chunk relight Tweak: Command /debug delplr is now /player [playername] wipedata Tweak: Command /debug clrplrinv is now /player [playername] clearinv Tweak: Command /debug setgen is now /entity setgen Tweak: Command /debug setlact is now /entity setlact Tweak: Changed syntax of /giveitem and /giveblock: Before: /giveitem type quantity toplayername {attributes} Now: /giveitem type{attributes} quantity entityselector /weather command tweaks Tweak: /autosavenow and /genbackup: Can now be run from server console Fixed /setblock not respecting block attributes argument Tweak: /we mark now requires '=' prefix for absolute positions Tweak: The /kill command now requires the "selfkill" privilege, granted by default, so that server admins can choose to remove it. Tweak: Disable .debug commands for non-admins in multiplayer Feature: More creative mode content Feature: Added Conditional Block and Ticker Block as first steps to better support adventure map making Feature: Much more Clutter. Clutter has its own Creative tab. Added aged and rotten ebony planks, improved clutter crates, ruined small crate, more ruined tables and bed variants, ruined scroll racks, empty ruined tool racks, ruined lanterns, heavy doors, banners, pipes. aged armor stands, dirty gravel, long tables, aged polish rock, carved acacia log, ruined trunks, ruined translocator etc.. Feature: Can now place omok pieces on a remodeled Omok table top. Pieces can be bought at the trader. Feature: Added various new block decor overlays to creative mode, such as mold, rust, spotty moss, wet gravel Feature: New Aged bricks block Feature: Added a texture flipper tool. Allows you to change the wood type on a number of clutter blocks. Feature: Added "measuring rope" creative mode block to help with relative coordinates needed by various commands Feature: new Worldgen Hook block to support generation of additional worldgen structures when this block is placed by worldgen, (see technical info in API changelog below) Tweak: Added veryaged and veryaged-rotten variants of debarked logs and support beams Tweak: Added several more features to the Spawner meta block Tweak: Can now find all decor blocks by searching for "layer" or "decor" in the creative inventory Tweak: WorldEdit changes Feature: Worldedit: Added ability to gen trees with vines via "/wgen tvines 0..1" Feature: Flood fill tool: Can now separately ignore water or plants Feature: New chisel brush world edit tool paint in voxels Feature: Added /we mpacifywater. Pacifies water in selected area - i.e. turns all flowing water into still water Feature: Added /we mdeletewater. Deletes all water in selected area Tweak: Added "ignore water and plants" switch for the flood fill tool Tweak: Added chiselable collider meta block Tweak: World edit selection tools now have a more intuitive selection behavior Tweak: Air brush mode has a new "replace only selected block" mode Tweak: Added /we cx, /we cy and /we cz to change the selection in x,y and z axis Fixed: Imported and placed Schematics now place Decor blocks correctly Fixed: Worldedit Undo/Redo not working with decor blocks Fixed: Worldedit Undo/Redo borked with liquids Fixed: /wgen regen sometimes not sending chunks properly Feature: Textareas now support word automatic wrapping Tweak: Game now starts at year 0 Tweak: Improved wonky hitbox on bells, bells no longer spawn surface drifters and try harder to spawn a mob nearby. A dead bell now remains on death. Tweak: Can now use wrench to rotate clutter blocks (also hold sneak to turn turn a block around the looked at block face) Tweak: All wrench-rotatable blocks now show this in their block interaction help Tweak: Disabled ram optimization setting "Do not optimize". Tends to make things worse, performance wise Tweak: Reduced max resolution slider value to 100% (was 200%). Can be still increased with .clientconfig Tweak: Made butterflies not flee from you when you sneak Tweak: Flower visuals rework. Several flowers now use a richer model. Reworked woad texture, (still to add: reworked cow parsley, reworked california poppy) Tweak: New texture for golden poppy and woad flowers. Increased golden poppy spawn chance 5-fold Tweak: Firestarter can be used in claimed lands with the use permision (required build/break permission previously) Tweak: Ground stored items can now be placed/removed in claimed lands with the use permission (required build/break permission previously) Tweak: Fish AI fine tuning Tweak: Nails and strips can now also be used for block reinforcement Tweak: Echo chamber is now renamed to Resonator Tweak: Added our moderators to the credits screen Tweak: Better auto-guessing for the right window size and GUI scale on first startup Tweak: The game is now more robust against removing/re-adding mods or blocktypes (Technical info: Block entity data on missing blocks was lost upon save&reload, it's now preserved in case the block is later re-added) Tweak: Various dejanks / Quality-of-live changes Tweak: Fine tuned camera position time step, might reduce frame jitter Tweak: Vintagebeef now has a 3d model, tweaked pear on tree texture, fine tune roof corner 3d models Tweak: Fixed minor UI issues in the settings dialog. Added "Framerate issues" link to the wiki Tweak: 3rd person camera now looks through glass instead of zooming onto the seraph Tweak: Vines no longer drop "end" sections Tweak: Hide reticle in spectator mode Tweak: Snappier plate armor step sound Tweak/Fixed: The torchholder now also has a tight attachment area for chiseling Tweak: Prevent creatures from stepping on stalagmites/ctites Tweak: Breaking soil under ferns now removes the fern Tweak: Lit torches now write when they burn out in held tooltip and burn out in 48 hours as its written on the extinct torch. Tweak: The hotkeys to toggle the coordinate hud, block info hud and block interaction help (V, B, N) now require Ctrl to pressed by default (CTRL+V, CTRL+B, CTRL+N). Our intention is to save new players from accidentally switching off this useful help Tweak: Torches are no longer "Material: Other" Tweak: Removed butter from creative menu & handbook. Removed unused "Crank" item from the game Tweak: Parchment and books are now groundstorable Tweak: Renamed 'Cooper's Reed' to 'Cattails'. Reed baskets renamed to Reed chests, to avoid confusion with reed handbaskets Tweak: Added mod name to held item info if it's not a vanilla block Tweak: Removed "Stove" block from creative inventory (you can still get it via /giveblock stove-unlit-north) Tweak: The creative only rhodium items are now nickel Tweak: The world config fertilityRecoverySpeed no longer affects fertility recovery from fertilizer Tweak: More strongly attenuate lightning and thunder sounds while underground Tweak: /gm sp now puts the player back in 1st person mode if they were in 3rd person mode Tweak: Better positioning of the hover item info box when it moves out of the window area Tweak: Creatures now avoid walking into fire or boiling water Tweak: Added lots of missing translation entries. Updated community translations. Added Dutch translations. Tweak: Added many more translator credits and organized them alphabetically. If your name is in the credits and you don't want it to be, please contact us through email, support ticket, or Discord. Tweak: Worldgen errors are now logged to a separate, permanent log file, server-worldgen.txt for later inspection Tweak/Fixed: Added "sudo sysctl -w vm.max_map_count=262144" to install.sh to fix RAM issues on Linux Removed: Instanced grass/flower rendering. Fixes flower rendering bugs. Fixed: Changing sound output device broke many sounds Fixed: Game crashing on world load when the installation path contained curly braces Fixed: Game crashing with StackOverflowException when the VintageStoryLib.dll was not found. Now crashes with a more useful error. Fixed: Game crashing in multiple locations when the survival mod assets were not loaded Fixed: Sun rising in the evening when the survival mod was disabled Fixed: Using wrench in creative mode consumed durability Fixed: Tapestry in GUI mirrored, fixed wrong textures on the sides of tapestry Fixed: Link text alignment issues with centered fonts Fixed: Hacked locusts were despawning when out of player range Fixed: Lighting flashes in the cloud were not removed in some cases, causing permanent bright spots Fixed: Gui derp when right clicking a clay form twice Fixed: Potential crashes when knapping with stones that were also suitable for cave art Fixed: "Meta (Spawner)" gui creature selection derps Fixed: z-fighting on seraph hand when holding a forlon estoc Fixed: Group invite notification not received by players Fixed: A crash related to cloth sim Fixed: Wrong texture on part-baked and charred sunflower bread Fixed: No linebreak made by the text editor if there were no spaces to linebreak at Fixed: Wrong texture on the aged basket, added ruined basket as well Fixed: Able to overfill troughs using chutes Fixed: Should fix a server-side exception when a client crashes during connect Fixed: Game crashing when removing a cinematic camera point when there is no points, then re-adding a point Fixed: Incorrect particle collisions with clutter blocks Fixed: One occasional source of "Tried to get block outside generating chunks!" error in logs Fixed: Vintagehosting: Able to select a server version not compatible with vintagehosting Fixed: Issues with saving macros Fixed: Multiple issues with the move tool, amongst others clutter blocks not updating correctly as well as an issue when loading block entities client side Fixed: Chest animations borked Fixed: Animated blocks such as chests glowing if something else animated in camera view is glowing Fixed: Unknown decor blocks (e.g. from removed mods) were invisible. Now they display an unknown texture. Fixed: New world not starting if it can't find a suitable spawn location Fixed: Multiple issues when importing a schematic from a previously modded world Fixed: Prevent a very old bug where some chunks become completely black (=unlit) after reopening a savegame Fixed: Armorstands not having their items when placed from story schematics Fixed: Rare errors in logs reported by BETransient, on snow-covered Reeds blocks Fixed: Multiple usability issues with display cases. Added a line on its purpose in the handbook Fixed interaction help not displayed Instead of executing the default interaction when right clicking with a unsuitable item/block it now displays an error to the player Fixed: Serious issue with cascaded ore bomb explosions somehow exploding multiple times causing extreme lag. Tweaked explosion smoked particles a bit. Fixed: Can no longer walk through claimed doors (technical info: Land claiming / Privilege testing when breaking, placing or using blocks is now synchronized to client) Fixed: One major cause of dark/unlit chunks (technical detail: fully dark chunks could result from errors (code exceptions) in worldgen in any of the worldgen passes before lighting is reached; now the world generator will normally attempt to continue with later passes including the lighting pass, while logging the error to new log file server-worldgen) Fixed: Exception when SHIFT clicking item from crafting output into a full inventory Fixed: Polar bears spawning in mountains Fixed: Game crashing when failing to connect a server Fixed: 0.5 second interval lag spikes when playing on a server with many players Fixed: Auroras visible where they shouldn't be Fixed: Added missing server side smithing recipe validation Fixed: Creative inventory sometimes not reacting to mouse clicks to pick up an item/block Fixed: Might fix issues with game stuck in the world loading/connecting screen Fixed: Window border settings not remembered after game restart Fixed: Wrong block breaking decals on bookshelves and clutter blocks Fixed: Server side block related commands not behaving correctly with meta blocks around (render meta blocks mode was not synced to server) Fixed: Should avoid a crash related to fruit trees Fixed: 2 server side exceptions near the world border Fixed: Should fix able to interact with claimed firepits, querns and barrels Fixed: Players in spectator mode were emitting light from held torches / respawn glow Fixed: Should fix client desync with ground storage, creating ghost items in the players inventory Fixed: Should fix HUD going invisible on MacOS \o/ Fixed: Player stepping sound spam when other player stand on some blocks Fixed: Should fix players sometimes spawning inside blocks in new worlds Fixed: Missing/Incorrect translation entries Fixed: Modloader asking players to download missing dependencies on disabled mods Fixed: Wrong crafting texts on the barrel dialog Fixed: Creativegrass listed in the survival handbook Fixed: Some privileges being listed twice in serverconfig.json Fixed: Extremely old bug in world generation where a jarring climate edge generates near world borders Fixed: Snow accumulation (based on RainHeightMap) wrong if chiseled block atop another chiseled block Fixed: Player affected by wind while indoors with doors or leaded glass Fixed: Mitigate rendering issues with tallgrass against other blocks Fixed: Wrong coords from .copy posi Fixed: Crash in Creative mode if a still water block was placed in a barrel Fixed: Pink glass not coloring lantern light Fixed: Game crashing when displaying empty text links Fixed: Work items displayed in the handbook were invisible and a source of lag Fixed: Various rare crashes (technical info: a rare chunkdbthread crash when 3rd party mods attempt to store data, crash when taking Boiling water with a bucket, random ChunkDataLayer.GetGeneralCase null reference due to a rare race condition during palette compaction; on multiplayer servers EntitySimulation.SendEntitySpawns log spam if the connected client had no entityPlayer; BehaviorDoor accesssing GetLiquidBarrierOnSide during worldgen; BEGroundStorage attach block to side when no StorageProps set) Fixed: Earthball mushroom picked item texture incorrect Fixed: Water lilies blocking specular reflection Fixed: Polar bears spawning on mountains Fixed: 4th slice of pie not stacking Fixed: Mushroom stew in pot invisible API Changes The most significant change is a full command system rewrite. The old way of registering commands still works but is now marked obsolete. The new command system allows you to define commands using the Fluent interface design pattern, as well as have prebuilt argument parsers for you to choose from. The new syntax also allows us to automatically generate command syntax documentation \o/ I've continued my efforts towards more behavior-based programming of blocks and items. There is a new BlockGeneric and StrongBlockBehavior base class which forward more method calls. Where possible, I tried to add or rewrite code to use block behaviors or block entity behaviors - such as the new door code. Support for multiblock structures is also improved, evident by the new large multiblock doors. The player mounting system should also be significantly more robust and flexible, see also raft code. Adding Worldmap waypoint icons is now dead simple - just drop in an svg file in the right folder. When a game world has loaded up, it will now print an error summary, so you no longer need to go searching trough the log files for errors. It looks like this when there are no errors: 14.2.2023 12:22:23 [Client Notification] =============================================================== 14.2.2023 12:22:23 [Client Notification] (^_^) No issues captured during startup 14.2.2023 12:22:23 [Client Notification] =============================================================== Beyond that, there is the usual myriad of minor changes. Have a look: Feature: New "StrongBlockBehavior" base class. Has a greater range of callbacks. Feature: Block/Item Texture overlays now allows you to define a blend mode in json. For an example see assets\survival\blocktypes\wood\woodtyped\door.json. Available Modes: Normal, Darken, Lighten, Multiply, Screen, ColorDodge, ColorBurn, Overlay Feature: All waypoint icons are now loaded from svg files Feature: Story structure generation system. Allows generation of a very large schematic, once per world Feature: New side-agnostic api subsystem: api.ChatCommands Feature: NPC dialogue system Can now add dialogue to any NPC with pure JSON Supports multiple response options, setting/reading of variables, giving and requesting items, playing sounds, and more Tweak: Conversable behavior should now allow for customized conversations based on character class and npc personality. If will now try to load the conversation file in the following order: 1. convo-{charclass}-{personality}.json 2. convo-{charclass}.json 3. convo.json Feature: Added BlockEntity.OnExchanged() callback for block entities where blockAccessor.ExchangeBlock() was called on Feature: New Block.Activate() method. To be used for automation. Currently available for doors, trapdoors, fence gates and clutches, and Command blocks and Conditional blocks Feature: Added method ForceLandformAt() to GenMaps.cs. Allows one to override the landform in a given area. Feature: Added sapi.WorldManager.TestMapChunkExists and sapi.WorldManager.TestMapRegionExists Feature: Added new OnTestBlockAccess event to override land claiming behavior Feature: Added client side events MapRegionLoaded and MapRegionUnloaded Feature: BehaviorCanIgnite now will search for a IIgnitable interface in the block, block behavior, block entity and block entity behavior Feature: Added OnGetTemporalStability event to mod system "SystemTemporalStability" Feature: WorldgenHook block, triggers the specified worldgen hook (set by command /dev worldgenhook) when this block is placed by a schematic during worldgen Feature: Event.WorldgenHook and Event.TriggerWorldgenHook to run custom worldgen code at a particular position, triggered by something else for example placement of a specific block The default Worldgen hook is "genHookStructure <assetname>" which generates structure elements from schematics according to rules specified in the named file found in folder assets\survival\worldgen\hookgeneratedstructures Tweak: Added BlockEntity.OnPlacementBySchematic() method Tweak: Added IServerPlayer.InWorldAction event Tweak: The interfaces IMultiBlockMonolithicSmall, IMultiBlockMonolithic, IMultiBlockModular for multiblock behaviors can now also be implemented inside a BlockBehavior (previously only able to implement them in a Block class) Tweak: Added ability to supply a different crop model when grown on farmland, attribute onFarmlandShape (of type compositeshape) Tweak: Json patches now can be disabled via `enabled` property Tweak: Added helper method Block.GetBEBehavior() Tweak: Added helper method IBlockAccessor.GetInterface<T>() Tweak: Non-json files in blocktypes, entities and itemtypes are now ignored by the loader Refactor: "api.BlockTextureAtlas.AtlasTextureIds[0]" is now "api.BlockTextureAtlas.AtlasTexture[0].TextureId" Refactor: Moved away several methods from the Block class Method Block.WildCardReplace now moved to extension method AssetLocation.WildCardReplace Methods Block.OnTryIgniteBlock and Block.OnTryIgniteBlockOver now moved to IIgnitable interface (make your class inherit from this interface and remove the override keyword to make it compatible again) Methods Block.SetWindFlag, Block.ClearWindFlags and Block.ToggleWindModeSetWindData are now extension methods of MeshData Refactor: Refactored meshing/transformation mechanism of BlockEntityDisplay class. Now caches content meshes amongst all blocks of the same class, instead of keeping a copy of every mesh for every block. Refactor: Added Tesselator.GetTextureSource() and marked GetTexSource() as obsolete Refactor: Gui Methods .AddButton() and .AddSmallButton() with orientation argument are now marked obsolete (simply remove the orientation arg from your code to fix) Refactor: Extracted AnimationUtil class out of BEBehaviorAnimatable to be used in more universal ways. Refactor: BEBehaviorAnimatable.InitializeAnimator() method reordered args Refactor: Clean up survival textures folder: moved several out of place textures into various folders Refactor: Removed last row in the elementTransforms uniform matrices for entity shape rendering, as its always 0 0 0 1, reduces upload overhead by 25% Refactor: BlockEntityShapeFromAttributes is now a block entity behavior. The block entities "Clutter" and "ClutterBookshelf" are thus no longer necessary and were removed Refactor: OnEntityDespawn event, renamed class of 2nd argument "EntityDespawnReason" to "EntityDespawnData" and uppercased its field Refactor: Breaking changes to IMountable interfaces. MountPosition property now needs to return a EntityPos instead of Vec3d, removed MountYaw property (set pos.Yaw instead). Added new property EnumMountAngleMode AngleMode. Added LocalEyePos property for a sitting entity you'd likely want to return something akin to "new Vec3f(0,1,0);" Refactor: Move snow cover related code from BEMicroBlock into BEBehaviorMicroblockSnowCover Refactor: Deleted SyncedEntityPos class. Moved the only useful field in there (LastReceivedClientPosition) to ServerPlayer.cs Refactor: GetClimateAt(), argument EnumGetClimateMode now defaults to NowValues instead of WorldGenValues Refactor: If you have meat-like items in your mod or use inFirePitProps, you'll have to readjust your transforms, as the firepit spit is now diagonally placed. Sorry. Refactor: ITreeGenerator interface: Moved most parameters into a new TreeGenParams class Refactor: Renamed IBlockEntityRotatable to IRotatable Refactor: Clean up GuiDialogHandbook code in preparation for use in a new command handbook Refactor: Client side world loading code - now all in one file instead of 6 different ones Refactor: Rename block.LiquidBarrierHeightOnSide() to block.GetLiquidBarrierHeightOnSide() Refactor: Renamed the multiblock interfaces again and they no longer inherit from eachother, which made no sense. Renames: IMultiBlockMonolithicBasic => IMultiBlockColSelBoxes IMultiBlockNormal => IMultiBlockInteract IMultiBlockExtensive => IMultiBlockBlockBreaking New: IMultiBlockBlockProperties Refactor: For the server side event ChunkColumnGeneration. Changed delegate method arguments. Now passes on a single IChunkColumnGenerateRequest object containing the previous 4 arguments Tweak: Added guid field to Waypoints Tweak: Added OnHeldInteractCancel to CollectibleBehavior Tweak: All Wildcard matching util methods now accept * as Domain to ignore domain checking. Also works for the SearchItems and SearchBlocks methods. Also fixes spawner block dialog not showing modded creatures Tweak: Added LanguageCode field to TextCommandCallingArgs so its easier to respond with correctly translated strings server side via Lang.GetL() Tweak: BlockLayeredSlowDig class more moddable now Tweak: Server now keeps track of player placed or broken blocks for each chunk Tweak: Made some AStar stuff public/virtual Tweak: BlockEntityTeleporterBase.GetTarget() is now public Tweak: Server event CanPlaceOrBreak now comes with an additional claimant argument that must be null when the request is denied Tweak: Added OnBlockBrokenWith and OnBlockBreaking to CollectibleBehavior Tweak: Fixed missing server side verification of auction price Tweak: New entity callback OnAsyncParticleTick(). Lets you spawn per-+entity particles in a separate thread. Tweak: IBlockAccessor.WalkBlocks() now calls the callback method twice for the same position if there is a liquid in the fluids layer Tweak: Player head control rework. Now simplified code. Tweak: BlockWater now has json configurable ice block code and freezing point Tweak: Firewood piles now also use the new ground storable system. Fixed ground storable issues with TransferQuantity > 1 Tweak: The game now logs a warning/error summary after startup Tweak: Ground storage json property TessQuantityElements is now marked obsolete, use property ModelItemsToStackSizeRatio instead Tweak: IMountable interface now requires 2 more properties CanControl and MountedBy Tweak: IMountableSupplier interface now requires property MountPoints Tweak: Massive flower assets overhaul. Moved all flower shape files from block/basic to block/plant/flower and removed redundant shapes. Tweak: Sign block: Writable width, amount of lines, font size, font style and text positioning is now json configurable Tweak: Transform editor now allows X-axis flipping Tweak: Added ICustomHandbookPageContent interface for blocks and items if they want to modify handbook text in code Tweak: New properties maxQuantityByGroup and spawnCapPlayerScaling for entity runtime spawn conditions Tweak: Less hardcoded sleeping system. Can now remove the tiredness behavior from players to disable sleeping mechanic. Tweak: If a block defines block entity behaviors in json but did not define a entity class, then it will now default to "BlockEntityGeneric" Tweak: Prevent the game crashing from invalid blocks Tweak: api.Event.MapRegionGeneration event, added argument "ITreeAttribute chunkGenParams = null" Tweak: New argument for "/wgen regen" to generate only one type of landform, e.g. "/wgen regen 3 veryflat" Tweak: Added chattype:// link protocol to add text to the clients chatbox Tweak: Handbook pages on items/blocks now show their page code if extended debug info is enabled (.edi) Internal: The ServerRedirect packet should correctly redirect the client now, untested and not available through the API yet Fixed: Code domain issue in BlockGenericTypedContainer.GetDecal Fixed: Particly registry not available through IClassRegistryAPI Fixed: Cairo graphics system printing not-disposed errors for unowned surfaces Fixed: Finally fixed generic chest blocktype texture oddities Fixed: Entity idleSoundRange not synced to client Fixed: Block Durability property not synced to client Fixed: Renamed container property "transitionSpeedMulByType" to simply "transitionSpeedMul" which should make it work as intended Fixed: Not able to make grid recipes with 2 liquids Fixed: "shelvable: false" showed up as shelvable in the handbook Fixed: Default value arg in player.GetModData() was ignored Fixed: MeshData.Clone() set incorrect values for VerticesMax and IndicesMax, potentially causing any future operations on the mesh to crash due to being out of bounds. Fixed: Entities imported from schematics sometimes had a wrong offset on them Fixed: Fixed StackOverflow in mapregion.SetModData<T>() Fixed: structures.json, Schematics property not respecting mod domains Fixed: ~150 XML Doc warnings. Moved method BehaviorArtPigment.BlockSelectionToSubPosition() to BlockSel.ToDecorSubPosition() Removed: "Modular" multiblock type. Was never implemented and not really useful either. Saves 150 block ids. Updates since rc.8 Tweak: Added a new property to schematics, EntranceRotation (0,90,180,270) to define where an entrance is, so at worldgen the optimal side is chosen when placing, works only for Surface and SurfaceRuin placement Tweak: mitigate visual borders between low and medium fertility soil during worldgen by reducing the chances it can generate as such Tweak: "Metal parts" model changed. Metal parts and scrap are now ground-storable. Fixed: Rare crash when right-clicking books and other in-hand items while near doors Fixed: Small oiledhide 2x, 3x and 4x recipes impossible to craft Fixed Omok placement off by 1 Fixed "ranged charge time" instead of "ranged charge speed" Fixed: Recipe output showing wrong amounts in handbook Fixed: A crash in the corpse return teleporter Fixed: Z-Fighting on rush mat Fixed: Some parts invisible during animation of the death point return teleporter Fixed: Lava no longer flowing Fixed: Exception thrown when placing red top grass planters (added placeholder texture for now) Fixed: Able to continue gliding when removing the glider mid-flight Fixed: Rare crash introduced in rc8 Fixed: Should address /player [name] wipedata not wiping some player data Api Fixed: Lang.HasTranslation() did not recognize some entries View full record
- 9 replies
-
- 19
-
-
-
-
-
Dear Extraordinary Survivalists v1.18.0-rc.7, a release candidate, can now be downloaded through the account manager (section "Other Goodies"). [Edit:] Also released rc.8 to fix up a startup issue as well as the Resonance Archives occasionally generating underwater More bugs fixed. Stable release even Sooner™ We are happy to report that you should now be able to play v1.18 on old worlds (worlds created in v1.17 or earlier) without too much sacrifice. To have the main story event in your old world, you do however need to run 2 commands by hand - see below. We have addressed two very long-standing bugs, one with dark chunks seen sometimes in the world and one with the land claiming system where players could walk through claimed doors with various tricks - this should no longer be possible, but has the potential to introduce new issues - please let us know if that's the case. Thanks! We have also simultaneously released a 1.17.12 version with the specific fixes below, to ease the process of servers updating from 1.17 to 1.18. Servers with existing maps now have the choice: export player claims and create a fresh map with all the 1.18 features, or retain the existing world and add the main story event to it at a suitably-chosen location (but in that case it will not have other 1.18 features including the new terrain and updated ruins etc., except in newly generated regions of the world) Screenshot by Cosmic Redshift#7238, shared on Discord Game updates 1.17.12 Fixed: Game crashing when trying to connect to a password protected server without password Tweak: Backported land claim downloading from 1.18. Accessible via /wec downloadclaim [index] - download to the player's data folder. Note: In 1.18 the same command is "/land claim download" /wec exportclaim [index] - save to game server data folder. Note: In 1.18 the same command is "/land claim export" Note for this to succeed in 1.17.12, the claimed chunks need to be currently loaded, therefore it is best to travel to each claimed region before running this command. Game updates 1.18.0-rc.7 Feature: Items from the new clothing sets can now be found in ruins Feature: Added /land claim export to allow players on multiplayer servers to export their claim to be saved on the server. Disabled by default, requires privilege "exportclaims" to run. It is up to server owners to determine what to do with these exports - they are in the server data folder. Useful for migrating to a 1.18 world via worldedit. Feature: Added ability for players to generate the main story event from 1.18 - the Resonance Archives - at a chosen location through commands. This is for players and server owners that would like to have the main story event also in their old worlds. Instructions: 1. Find a suitable location where there are no chunks that you want to keep, in a large area around 2. Look at a block for the desired center location. Run command /setstorystrucpos resonancearchive l[] 3. Then standing at the same center location, use either command /wgen regen 6 to generate the terrain on even ground, which might expose parts of the structure on the world surface in some instances, or use command /wgen regenf 7 to generate hilly terrain which will better cover the full extent of the Resonance Archives, but might create some chunk borders. Tweak: Continue work on new gadgetry. Added some initial game juice to the base return teleporter and made it 1-time use, the Rift ward is now grid-craftable, fixed night vision device no longer working, fixed temporal gears adding only 1 hour of fuel. Tweak: Made sand storms a bit less common Tweak: Added command /wgen regenf to also regenerate mapregions (/wgen regen no longer does that) Tweak: Added lots of missing translation entries Tweak: Worldgen errors are now logged to a separate, permanent log file, server-worldgen.txt for later inspection Fixed: One major cause of dark chunks (technical detail: fully dark chunks could result from errors (code exceptions) in worldgen in any of the worldgen passes before lighting is reached; now the world generator will normally attempt to continue with later passes including the lighting pass, while logging the error to new log file server-worldgen) Fixed: Can no longer walk through claimed doors (technical info: Land claiming / Privilege testing when breaking, placing or using blocks is now synchronized to client) Fixed: Work items displayed in the handbook were invisible and a source of lag Fixed: Improved ruin generation system Revert 1.18.0-rc.6 change that trader caravans could generate in slightly more places since that lets them end up with wheels in more weird places Structures placed by worldgen now accurately use local grass/soil/sand/gravel Sometimes ruins could be placed overlapping near the edges of mapregions, this should no longer occur Underground schematics which included water were sometimes filled with stone in place of the water Rivulets (waterfalls) can no longer generate in 1-thickness stone ceilings including the roofs of ruins Ground storage items, wall leaning tools, and interactable bookshelves should now rotate properly Api Feature: Structures (in structures.json) can now have suppressTrees and suppressWaterfalls bool settings: these prevent the stated worldgen feature from being able to spawn anywhere within the structure's bounding box (trees includes shrubs) Fixed: Various rare crashes (technical info: a rare chunkdbthread crash when 3rd party mods attempt to store data, crash when taking Boiling water with a bucket, random ChunkDataLayer.GetGeneralCase null reference due to a rare race condition during palette compaction; on multiplayer servers EntitySimulation.SendEntitySpawns log spam if the connected client had no entityPlayer; BehaviorDoor accesssing GetLiquidBarrierOnSide during worldgen; BEGroundStorage attach block to side when no StorageProps set) Fixed: Earthball mushroom picked item texture incorrect Fixed: Water lilies blocking specular reflection Fixed: Polar bears spawning on mountains Fixed: 4th slice of pie not stacking Fixed: Mushroom stew in pot invisible Fixed: Should address damage taken from inserting a temporal gear absorbed by armor 1.18 related changes Tweak: Updated community translations Fixed: Floating snow on top of support beams Fixed: 1.18 doors are now lockable again, in multiplayer. Thanks to @NoelleLavenza Fixed: Ground storage pickup sound gone Fixed: /land free X confirm not working Fixed: /serverconfig setspawnhere not working Fixed: Crafting recipe output quantity in the handbook wrong Fixed: Chiseled blocks in inventory were invisible Fixed: Gas lamps were named "Luminescent jonas lamp" Fixed: /player name privilege command no longer allowing use of custom privilege codes Fixed: Reso archive map not giving marking location on map on multiplayer View full record
-
Dear Extraordinary Survivalists v1.18.0-rc.6, a release candidate, can now be downloaded through the account manager (section "Other Goodies"). More bugs fixed. Stable release very Soon™ This release includes some optimizations to reduce lag spikes in some areas of the game, which we'd like to test before stable. Also 1.18 had a major impacting on Vintagehosting, due to another performance issue which should be addressed with this one. Screenshot by Mercatto#6367 Game updates Tweak: (Experimental) Trader caravans can now generate in slightly more places (more tolerant towards non-flat terrain) - this is reverted in v1.18.0-rc.7, it tended to put wheels into hillsides Tweak: Mitigated a few sources of lag spikes on client and server (Technical info: Reduced lock contention, removed some unnecessary bits of code) Api Tweak: Added guid field to Waypoints Api Fixed: Renamed container property "transitionSpeedMulByType" to simply "transitionSpeedMul" which should make it work as intended 1.18 related changes Tweak/Fixes: Various fine tuning on the main story event Fixed: Server-side exception when a user tries to break blocks without breaking permissions Fixed: Major server-side performance issue on high end hardware that runs many active servers (Technical info: Game server was spinning up waaaay too many threads on high core cpus) Fixed: Trader caravans, occasional chest and storage vessel placement outside the caravan (1.18-rc1+ issue) Fixed: Should fix metal blocks from 1.17 not remapped correctly to 1.18 metal blocks Api Fixed: Unable to properly format translatable TextCommandResult messages
- 6 comments
-
- 18
-
-
-
-