Jump to content

Tyron

VS Team (Lead)
  • Posts

    1,942
  • Joined

  • Last visited

  • Days Won

    765

Posts posted by Tyron

  1. 6 minutes ago, l33tmaan said:

    I hope the fancy new Command part of the handbook has a command for turning on that cave-in feature. 🤩

    should be "/worldconfig blockGravity sandgravelsoilcaveins"

    1 hour ago, Khornet said:

    After some further gameplay, I do have some complaints - the attack with a weapon is now synced to the actual animation, which is a lot slower. [...]
    The "player hurt" animation now plays in first person as well and from what I've experienced it INTERRUPTS your attack animation. [...]
    The "skinning"/harvesting right-click animation with the knife no longer plays any sound.

    Thanks for the feedback, we'll fix those issues, none of it is intentional

    • Like 3
  2. Dear Extraordinary Survivalists
    v1.19.0-pre.1, a preview release, can now be downloaded through the account manager (section "Other Goodies").

    We are proud to present, our next major update to Vintage Story! The working title for this update was "Dejank Redux" - polishing of existing game mechanics. In fact, it started out with a gigantic list of items from each team member on what they individually felt could need addressing, we then narrowed it down to just a small handful. Those plans included a revisit to the death and reviving mechanics, but that became displaced in favour of a cleanup/upgrades on the game engine itself, as well as many other tweaks that also felt befitting to the title of "Dejank". As usual, some new features always manage to sneakily sneak into our updates 😉

    As with our previous updates, we continue our tradition of challenging the status quo of what this game engine can do - this time primarily by introducing a new concept we call Mini Dimensions. It is our hope that once this tech has matured, it will enable all kinds of movable multiblock shenanigans. We are excited to explore this new frontier with you, dear Community!

    Juicy Engine Tech a-plenty
    This update contains a lot of new and improved engine tech that will enable new types of game play while also ensuring that the engine still has plenty of room for the game to grow.

    • Mini Dimension System: There is now rudimentary support for world chunks to be rendered into the game world independent of their position in the standard map system. In the long term, this should allow for multiblock vehicles and other wicked mechanical shenanigans. As a first proof of concept, when importing schematics (or copying from the clipboard) through World Edit, you can now see a live preview of all blocks, positioned using this system. For technical info, see our documentation file: movchunks public notes.txt
    • Unlimited textures: The textures for blocks, items and entities are no longer limited to a single texture atlas. Therefore, mods which add a lot of new textures should never run out of texture atlas space again!  This multi-atlas system was partially included since the game's early days and is now finally complete.
    • New First-person mode: Took a lot of tuning, but visible hands are finally a thing now
    • Wearable animation support: Items that the player wears can now be animated. This is important for some clothing types such as skirts.
    • Animation system v2: A new data format, more compatible to other animation formats, such as the one made with Blender (use with Blender still relies on a community made converter, however)
    • Connected textures: Rudimentary support for this now exists, to allow e.g. a 64x64 texture be mapped onto 2x2x2 blocks
    • Chat commands code rewrite: In v1.18 we introduced a new API for commands - one that would allow for automatic documentation and future capability for a command auto-complete feature.  In v1.19 the monumental effort of migrating hundreds of existing commands to this new API is now complete!
    • World Edit commands consistency overhaul: The World Edit system grew organically over time, and it was a prime candidate for a revisit. We introduced a new, consistent command naming scheme and also filled in some gaps in its feature set. More de-jank to come still.
    • Chiseling system upgrades: We continue our efforts towards ever tighter integration of chiseled blocks as a "first class citizen". Chiseled blocks now support decor layers, naturally integrate into the terrain when they are part of a ruin, and can become submerged in soil.

    Please note
    1. This first preview release is an unfinished update, mostly intended for modders and very adventurous players. You will encounter major bugs, incomplete features, possible performance issues and crashes.
    2. Further preview releases (including fixes for bugs in pre.1) will only be posted in Discord #news and on info.vintagestory.at and not on this blog. As usual, a new v1.19 blog post will then come when the first full release candidate (rc.1) is ready
    3. If testing 1.19 on an old world from 1.18 or earlier, we strongly recommend making a backup copy before loading the world in 1.19.

    Still planned for rc.1
    Many of the new mechanics and game content in this preview are in a rough state, especially the new deer, ruins and new First-person mode. They will require a lot of tuning and tweaking before we can go stable. Also wild animal catching is still unfinished.
     

    Screenshots / Gifs

    Overhauled First-person mode: Now with hands! WIP
    newfpmode.webp

    Cave-in system: Build support beams to prevent getting buried alive (only on by default in the Wilderness Survival mode)
    caveins3.gif.cc7496069f538f549e4d441ac59ac262.gif

    Added 11 species of deer and more! WIP (Antlers still missing)
    2023-10-28_14-02-43.thumb.png.72e93c34693b8e2b6a3dc0ae2b596159.png

    Animal catching: Domesticated animals can be picked up with a basket
    acatch.gif.8c7ff551991fb77b75413b049732acd7.gif

    Fully reworked ruins. Very much still a work in progress (WIP), they don't all fully spawn yet.
    ruins.thumb.png.4872679e3183c1ee400a920b79e64d8f.png

    New Accessibility settings
    accessibility.thumb.png.006e7da6a94a9d511c36e1443ffb22c1.png

    Added Command Handbook (in Creative mode)
    chb2.gif.dc4090ad0d33e0006ad73e82705c75df.gif


    Added Scroll racks, also lets you store Tuning cylinders
    scrollrack2.gif.d2bba19d14dd4fab69337e98686aa4e8.gif

    World map tweaks: No longer super revealing by default, but instead it displays your prospecting results. (WIP)
    map.gif

    Character selector tweaks: More canon hair colors, better randomizer and the ability to use your last selection from another world / server
    charsel.gif


    More chisel power: Now supports decors and topsoil
    chisel.png.034a25757b4d146e3939aa5257d7ebee.png

    Overhauled/New 3D models for troughs, buckets and seeds
    3dmodels1_19.thumb.png.a1082b8e0d151c63a1baa73e04cca196.png


    Added live preview during schematic import
    livepreview.gif.01edd7e2771705ffd87225901a4652b1.gif


    Game updates

    • Feature: Overhauled First-person mode (WIP): Now a hybrid between the old standard fp mode and the Immersive fp mode. We only render the player's hands and arms, their position depends on current actions and items held
    • Feature: Added moose, elk, and 11 species of deer, each has several antler variants. (based on the assets from the Capreolinae mod, with permission. Thanks Tentharchitect!)
    • Feature: Cave-in system in the Wilderness Survival playstyle. Solid rock and cracked rock now collapses if not supported while it is being broken/placed. Enabled via world config. Use wooden beams to stabilize mines and tunnels!
    • Feature: Added Accessibility tab. Moved View Bobbing and Toggle Sprint settings there. Added 2 new accessibility settings: Camera shake strength and Wireframe thickness.
      • Tweak: Added ability to adjust temporal instability waviness in the new Accessibility tab
      • Tweak: Added experimental minbrightness client config, potential use for YouTubers/streamers to prevent pitch-black areas.
    • Feature: Added Command Handbook. Available in Creative mode through the game pause menu, or type command .chb to open
    • Feature: Visual fine tuning
      • Improved frost overlay visuals on creatures/traders - frost now only applies during precipitation or shortly thereafter, improved visual quality and some body parts are no longer completely frosted over, such as the trader's head
      • Re-worked large trough, small trough and bucket models
      • Crop seeds and grain items now have 3D models
      • Improved SSAO quality - no longer has odd artifacts (thanks to @nug on Discord)
      • Added more depth to Dry stone wall textures. Visual tweaks
      • Redwood beams: wood grain was in the wrong direction
      • Fixed Aged fancy bed having bright green bed cover. The bed cover is now faded, aged green
      • Replaced Resonance Archives clutter bed with updated model. Added colorful linen textures for mattress sides and pillow. Added shading texture overlay for mattress sides and pillow. Fixed bed-fency-open clutter block missing textures
      • Faster storm dust particles
      • Improved seraph idle animation
    • Feature: Added scroll racks. Storage space for scrolls, papers and tuning cylinders
    • Feature: Added cracked ashlar blocks, deadfungi and spotty mold decor layer blocks and some book clutter blocks
    • Feature: Prospecting pick heatmap: added tabs to the world map
    • Feature: New more medieval looking world map visuals, using the color palette from the Medieval Map mod (by permission from Rangelost, with many thanks). Classic world map visuals can be restored using the commands "/worldconfigcreate bool colorAccurateWorldmap true" server-wide or "/player [playername] grant colorAccurateWorldmap" for each player
    • Feature: Chiseling system upgrades
      • Decor overlay support as well as support for grass covered topsoil block. Can use knife to remove decor layers again.
      • Can now properly add more material to a chiseled block, useful when wanting to create a full block from 2 slabs
      • When using slabs as input material the game did not correctly count already used material
      • Chiseled blocks no longer have their name fixed to the block name first used during creation. If no custom name is set by the player, the chiseled block will now take on the name of the majority material
      • World generation now fully supports chiseled blocks when part of a surface or underground ruin, i.e. chiseled block materials can adapt to local rock types and can get submerged into soil
    • Feature: Ability to catch small tamed animals (generation 5+) with an empty reed chest. Requires one free backpack slot
    • Feature: Raccoon and Fox pups now spawn in the world
    • Feature: Improved character selector
      • Players can now select their previously selected skin preferences, in the Create Character dialog via new 'Last selection' button
      • Greatly reduced strange hair combinations when using the Randomize button
      • Updated hair colors. Replaced all purple and pink shades.
      • The selector no longer plays the seraph voice when the Create Character dialog first appears (too laggy in the first few frames to do so, can heavily skew sounds)
    • Feature: Gameplay balancing tweaks and fixes
      • Tweak: Double-headed drifters and Bells now have a chance to drop Jonas parts/sub-assemblies.
      • Tweak: Double-headed drifters have a little more health now.
      • Tweak: Made arid areas more arid (by further filling up lakes with blocks)
      • Tweak: Being wet debuffs your warmth 50% more strongly, but players now get wet from snowfall 4 times more slowly than from rain
      • Tweak: Nerfed fur clothing set warmth values, it was circumventing the need for clothing repair
      • Tweak: Polar bears now cannot climb, but can swim faster than other bears
      • Tweak: Wooden paths can now be made with any type of board
      • Tweak: Plank path recipe now outputs 1 path per 2 boards (25% of previous output)
      • Tweak: Archimedes Screw now only accepts plates of tool metals in its recipe
      • Tweak: No fall damage when doing a gliding land while aiming less than 45° downwards, i.e. looking horizontal or upwards will negate all fall damage
      • Tweak: Adjusted prices for a couple of trader goods.
        • Linen now much more expensive, also raised Gambeson armor cost to match.
        • Most tools slightly more expensive
        • Antique armor cost now matches the value of the armor slot. Head armor cheapest, leg armor medium cost, chest armor most expensive
      • Fixed: Players not receiving fall damage when touching a wall during the fall
      • Fixed: Ingot piles were combustible
      • Fixed: Tree seeds were not combustible
      • Fixed: Fuel duration of Night vision goggles was not properly calculated (was only client side)
      • Fixed: Damaged flax crop still giving a full yield of flax fibres
      • Fixed: An upside half slab over a 1-deep hole is now no longer recognized as a cellar
      • Fixed: Sleeping did not accelerate healing. Health and Hunger are now calculated based on in-game time instead of real world time. (Can adjust the heal regeneration speed and the hunger speed using commands /worldconfig playerHealthRegenSpeed 1 and /worldconfig playerHungerSpeed 1)
    • Feature: Added a worldconfig option to change the health regeneration speed: "/worldconfig playerHealthRegenSpeed 1".  Also available on world creation
    • Feature: Can now ignite extinct torches on lit torches, firepits, forges, pit kilns, etc.
    • Feature: World Edit upgrades
      • Schematic import (and copying from clipboard) now previews a live version instead of half-transparent blue cubes
      • Major World Edit command rework based on Elvas' suggestions. Air brush placement quantity is now a % value instead of fixed value.
      • New option for Paint brush: Placement %
      • Move, Selection and Repeat tool can now also be operated by "Look direction" instead of N/E/S/W/U/D only
      • New constraint system. "/we constrain selection" constrains all World Edit operations to the current selection only. "/we constrain none" to return to default behavior
      • New flip system: "/we flip (n|e|s|w|u|d|l|x|y|z)" flips selected area in-place in given direction (cardinal, look direction or axis)
      • Fixed chisel brush icon black instead of white
      • Fixed major derps happening on block entities when using undo/redo after certain operations
      • Fixed schematic rotation: don't abort with exception if a block returns an invalid rotation, instead log an error and use unrotated variant
      • Added a couple of aliases to /we marked commands
    • Feature: Added capability for server owners to compact savegames
      • /db vacuum: Recreate savegame to minimize disk space
      • /db prune [threshold] confirm: Deletes chunk columns where there are less than [threshold] player edits (direct block placements/breakings by a player) since 1.18.0 - note that this also allows the game engine to refresh (re-generate) the world with latest version worldgen in all these areas
      • A full compact process looks like this:
        • /wgen autogen 0    (disable generation of chunks)
        • /db prune 5 confirm    (delete all chunks with less than 5 edits)
        • /db vacuum         (compact database)
    • Feature: All Treasure chests have now more valuable loot in them
    • Feature: More streamlined introduction into the game's mechanics (WIP). Instead of a dialog about the Handbook overlaid when the game first starts, now when launching the game for the first time, the player can select their character and 15 seconds after selection a small HUD element will appear on the left side offering help - this will open an Introduction dialog with links to the Handbook and the tutorial.
    • Feature: Added a stack randomizer for all Jonas items
    • Tweak: Can now shift+left click armor and wearables into the character inventory
    • Tweak: Show appreciation where it's due: new petseraph animation (untested)
    • Tweak: Entities standing on a rotating Quern now rotate as well
    • Tweak: Added tarnished steel beams
    • Tweak: Added visual hints that the Library resonator (in the Resonance Archives) is interactable
    • Tweak: World info hover box now only shows the differences from the default configuration
    • Tweak: Game text fine tuning
      • Fixed: Liquid containers showing only first decimal place and thus rounding the value
      • Tweak: Removed the '(Experimental)' suffix to large world sizes. The game engine is now stable enough for large sizes.
      • Tweak: More immersive "claimed by" error messaging, especially when in the Resonance Archives (simply reworded)
      • Tweak: Renamed 3 blocks: Crimson King maple=>Crimson maple, Green Spire cypress=>Mediterranean cypress, Stone bricks =>Ashlar blocks
      • Tweak: Oiled hides mention a bit more on how curing them works
      • Tweak: When the main menu offers to download a new update, the Confirm Update screen now has a link to the devlog entry
      • Tweak: Multiplayer server screens: don't show the server password in clear text
      • Fixed: A 'claimed' error message appearing when igniting the coal pile in the Resonance Archives generator room
    • Tweak: Audio fine tuning
      • Improved soundscape for glider gliding and Creative-mode flying
      • Over 200 sound files have been fine tuned for quality by reducing noise, eliminating popping sounds and more
      • The Resonator Music is now affected by the music slider, instead of the ambient slider
      • New eating sound for large animals
    • Handbook tweaks
      • Tweak: Handbook search now ignores diacritics in the search text  (and the same change for searching the Creative inventory)
      • Tweak: Now also displays if an item can be obtained by harvesting a creature
      • Tweak: Handbook entry for alum gives some details of where to find it
      • Tweak: Jonas generator room equipment, and Gasifier, removed from the Handbook
      • Tweak: Lamellar armor has the word 'armor' added to the name, so that it shows up in a search for "armor"
      • Tweak: Added "Mechanical power part" description to mechanical power blocks to make them more easily findable in the Creative inventory and the Handbook
    • Tweak: Improved command help
      • Add client-side .help command
      • Improved formatting of the help output in chat
    • Additional command tweaks:
      •  Added ability to individually enable world maps (in games where the map is normally disabled) using /player playername grant allowMap
      • Added commands .debug plrattr [path] and /entity cmd [selector] attr [path] to read player/entity attributes. Might help us narrow down the cause of "Dave" running during broad daylight and blood rain seen outside times of temporal instability
      • In the /entity command, added a new "id" entity selector, e.g. /entity remove e[id=1234]
    • Tweak: Log login failure messages to client-debug.txt (rarely, a player cannot connect to the auth servers at all), improve the feedback messages in-game
    • Tweak: Reduced default SpawnCapPlayerScaling from 0.75 to 0.5, as multiplayer servers with a large player count got completely flooded with drifters
    • Tweak: When privilege allowcharselonce was not granted, show the player an error message instead of opening the dialog to reduce confusion
    • Tweak: Removed unused workbench block from game
    • Tweak: Don't show < > buttons on books with only 1 page
    • Fixed: Pixelated background on the Download Mods screen
    • Tweak: Can no longer remove bot gear in Survival mode, now requires Creative mode
    • Tweak: Allow corrupted savegames to repair broken MapRegions in repair mode
    • Tweak: Added experimental feature to slightly speed up world startup, available only in the Developer settings tab
    • Tweak: Added "Macro Editor" button to the Controls settings tab
    • Tweak: Added --withConfig server startup arg. Allows one to override any serverconfig.json values at runtime
    • Fixed: Butterflies now manage to fly away eventually after getting stuck in water
    • Fixed: Reduce cases of endlessly jumpy dropped items
    • Fixed: Should now properly sync edge sitting animations on players
    • Fixed: Player body pitched awkwardly after landing with a glider
    • Fixed: Unable to complete the Resonance Archives while in immersive first person mode
    • Fixed: When a candle is placed on top of a fence it will only spawn one candle in the center
    • Fixed: Gates sometimes missing collision and selection box [detail: when a gate was placed and a second one was added to the left the right one was missing the multiblock parts and had no collision except for the bottom right block]
    • Fixed: Glider also functioning if inside a backpack (thanks korobya)
    • Fixed: Some trader carts did not fully generate
    • Fixed: Should fix watered farmland not updating for other players
    • Fixed: Multiple issues with block breaking overlay in tallgrass, leaves and vines
    • Fixed: GUI alignment issues when references to hotkeys are mixed in with other text
    • Fixed: Folders with spaces could not be opened (e.g. via "Open Mods Folder" button)
    • Fixed: The Controls settings tab and the Macro Manager now show the key for the currently set keyboard layout, instead of always assuming a US keyboard
    • Fixed: /moddb search also returned non mods, and if no version is specified now installs the latest version instead of the oldest
    • Fixed: .charsel command leaving changed class on the client side if the player did not have permission to change it in the first place
    • Fixed: Some lore discoveries activating the gong and discovery center screen text, although they were already discovered
    • Fixed: Incorrect position matching in the /entity command selector (e.g. in /entity remove e[minX=3, minY=0, minZ=3, maxX=4, maxY=2, maxZ=4])
    • Fixed: Running server with --standby argument crashes if serverconfig.json does not exist
    • Fixed: --port arg not applying to master server advertising
    • Fixed: On some systems (MacOS) the sky would load color inverted (red) [Technical detail: this now ensures we load all images as Bgra8888 since that's what we send our texture pixels as to the GPU]
    • Fixed: Linux Wayland freezing on start up issue


    Vintagehosting

    • Feature: Added ability to delete the complete hosting setup, improved logging
    • Feature: Show the server logs from your Vintagehosting server (last 200 lines of server-main.txt)
    • Fixed: Timeout issues when changing server version
    • Fixed: Made it easier for players to test world seeds locally first before using them on Vintagehosting (add 384k world size option and VS hosting servers will now default to 384k x 384k world size)
    • (Internal: Significant progress towards Vintagehosting mod support)

     

    Mod API

    • Feature: Mini Dimensions initial support. For technical details see movchunks public notes.txt
    • Feature: Support for connected textures for drawType: "Cube" blocks (see "tiling cobblestone test" block in creative mode, and blocktypes/meta/tilingcobble.json)
    • Feature: Eliminated all texture atlas limitations, i.e. mods that add a lot of blocks no longer have glitched graphics
    • Feature: Added Block randomizer. Creative mode configurable block that, when created during worldgen as part of a schematic can randomly turn into one of 10 blocks. Using meta-filler block as input for the randomizer block now forces air blocks at that location
    • Feature: Chiseled blocks should now support worldgen blocklayer replacement when using the new meta-blocklayer block as placeholder material
    • Feature: Wearable gear animations support. Models configured with a step parent and backdrop shape can now be animated in VSMC
    • Feature: Added a somewhat more Blender-compatible animations mode (via version:1 attribute for each animation)
    • Feature: Randomizer block and microblocks now respect worldgen schematic replace block properties to conform to local rock types if they are made of granite
    • Tweak: Loot vessel drops no longer hardcoded but configurable in the block type json file
    • Tweak: Can use stack randomizers to get resolved when used as a mob drop
    • Tweak: Allow shipping of .dll files inside a mod's native/ folder
    • Tweak: Game now logs a warning if the obsolete Collectible GrindedStack property is set
    • Tweak: Added api.Event.OnEntityLoaded event
    • Tweak: Disallow registering of recipes in-code at a launch phase that would cause random crashes
    • Tweak: Added Δx/y/z fields to the block selection editor (.bsedit) to move selections around
    • Tweak: Game will now print a warning on duplicate animation codes
    • Tweak: Avoid game crashing from improperly configured liquid containers
    • Tweak: Can now define player bot inventory via inventory:{} object in the entity type json file:
      [....]
      	eyeHeight: 1.7,
      	attributes: {
      		inventory: [
      			{ type: "item", code: "blade-blackguard-iron" },
      			{ type: "item", code: "armor-body-improvised-wood" }
      		],
      [...]
    • Tweak: Added "ServerIdentifier" GUID to serverconfig.json
    • Tweak: BlockPos now includes a dimension field as well as x, y, z values, see documentation for Mini Dimensions
    • Tweak: In IBlockAccessor, position-based methods with BlockPos parameters should be used where possible in place of x, y, z parameters, for future dimension compatibility
    • Tweak: Include OpenTK.Audio.OpenAL.dll and OpenTK.Mathematics.dll in server builds since native libs are already there
    • Refactor: Collectible.OnBeforeRender(): The passed ItemRenderInfo.ModelRef property has a changed type MeshRef=>MultiTextureMeshRef. Instead of calling api.Render.UploadMesh() you now need to call api.Render.UploadMultiTextureMesh() to acquire this new type. To manually render such meshref, use api.Render.RenderMultiTextureMesh()
    • Refactor: Renamed Block.PriorityInteract to PlacedPriorityInteract. Added Collectible.HeldPriorityInteract
    • Refactor: IRenderAPI.GetItemStackRenderInfo new argument: dt
    • Refactor: Method BlockEntity.OnPlacementBySchematic() has now 2 more arguments for the rocktype info
    • Refactor: Fox entity types now in one file instead of six.
    • Refactor: entity.AnimManager.HeadController and entity.AnimManager.Animator might now be null for a few frames during startup. You might need to null check these
    • Refactor: InventoryBase.GetBestSuitedSlot() has a new argument ItemStackMoveOperation op = null
    • Refactor: Split method CollectibleBehaviorHandbookTextAndExtraInfo.GetHandbookInfo() into multiple smaller ones
    • Removed: Disabled gltf test object, gltf loading broken due to multi-atlas change (scream in #gamedev if you need this, lel)
    • Fixed: IServerAPI.ServerIp property crashing on dedicated servers
    • Fixed: tree.GetAsBool() return wrong value for bool attributes :facepalm:
    • Fixed: Call to unload chunks did not trigger UnloadChunk event
    • Fixed: GetPlayersAround() horizontal range search only searched in a range of sqrt(range)
    • Fixed: MaxAnimatedElements setting not set to 46 (was 36)
    • Fixed: Modded sky.png not getting loaded
    • Fixed: Clutter block crashing game if a texture was missing, now prints an error
    • Fixed: "Companions" section of entity spawning not behaving as one would expect. Originally had only and 80% chance of spawning the main entity and then 80% chance of spawning one of the companion codes. Now the main entity is always spawned first, and every subsequent entity is selected from the companions list. Also the spawner had an hidden bias towards preferring spawning baby creatures due to their smaller hitbox
    • Fixed: When on IServerPlayer.Disconnect() is called it would crash the client
    • Fixed: Multiple instance detection by using a named mutex (since net7)
    • Fixed: CollectibleBehavior.OnHeldAttack* methods where not getting called

     

     


    View full record

    • Like 18
    • Cookie time 2
    • Amazing! 10
    • Mind=blown 2
    • Thanks 2
  3. Dear Extraordinary Survivalists
    v1.18.14/15, a stable release, can now be downloaded in the client area.

    [Edit:] Also released 1.18.15 to fix the game crashing from carving pumpkins. Throughout the month of October you can use your chisel to make Jack'O'Lanterns! 🎃

    As announced some time ago on Discord, the entire VS team will be meeting for the first time in London next week! 🎉
    That means, we might be a bit slow processing support tickets from 12th to 15th of October. But also, if you are in the London area, you can come say hello IRL on October 13th, 2.00 to 3.00 pm, we will gather on east side of Royal Victoria Square! This is adjacent to the ExCeL exhibition centre in London Docklands area, the location of the gaming industry show, EGX.  In the morning on this day we will also be hanging around EGX ourselves!

    In other news, there is a rather significant performance and memory leak in a 1.18 dedicated server due to its nature to slowly accumulate the load over time, this 1.18.14 release fixes this.

    The next major update - 1.19 - is progressing nicely! There are already over 150 individual changes, tweaks and fixes. You can expect to see a preview version (i.e. 1.19.0-pre.1) this month still.
     

    2023-10-02_13-22-30.thumb.png.4f0121f10c6685645b58534676f7593a.png
    Secret attic research room by anyanana, shared on discord

    Game updates

    • Fixed: Liquid contents in buckets invisible
    • Fixed: Slow but accumulating RAM and performance leak on dedicated servers, which required daily restarts to prevent overload on Linux

    View full record

    • Like 7
    • Thanks 2
  4. On 9/18/2023 at 8:01 PM, Filip Nowak said:

    Hi, please is the following functionality, described in the #devlog, already implemented in some published version?
    We need it as soon as possible :-). Thanks!

    /wgen autogen 0             // Temporarily disable chunk generation
    /db prune 20 confirm        // Will delete all chunks with less than 20 survival player edits in 1.18 (edit=placed or removed blocks). 
                                // Emphasis on 1.18 - this metric only exists since version 1.18, so edits from older versions are not counted. Does a dry run without the confirm part
    /db vacuum                  // Recreate the savegame to actually free up the now unused disk space

    Fipil.

    no, this is part of the 1.19 update

  5. Dear Extraordinary Survivalists
    v1.18.11/12/13, a stable release, can now be downloaded in the client area.

    In one of the recent updates we seem to have broken the Windows auto-updater. This version fixes this, but you still will need to update to 1.18.11 manually through the client area. It also fixes a large memory leak in single player when you leave and reopen worlds without restarting the game.

    [Edit:] Also released 1.18.12 to fix a missing translation entry and also add a new "Direct Mouse Mode" settings for those with mouse speed issues. Also the Windows installer no longer requires admin privileges.
    [Edit:] Also released 1.18.13 to fix 2 bugs with the Windows installer

    2023-08-24_17-46-47.thumb.png.294b32c82f4e874dec15b2d9b8889d97.png
    Screenshot by Jet, shared in #screenshots on Discord

     

    Game updates

    • Feature: New "Direct Mouse Mode" setting in the mouse settings, off by default.  Switch it on for 1:1 mouse mapping which should by-pass any OS mouse acceleration and speed settings. The effects will vary from system to system depending on how your mouse is set up in your OS for non-gaming use.
    • Fixed: The in-game auto-update from game version 1.18.9 was becoming stuck on Windows
    • Fixed: Very large memory leak when leaving and reopening single player worlds without restarting the game
    • Fixed: Wooden club and spear link not clickable in the Starter Guide
    • Fixed: Creature "Dave" always visible on max view distance and leg movement not in sync
    • Fixed: Removed "experimental voice" hover text in the Create Character dialog, as these voices are no longer experimental!

    View full record

    • Like 6
    • Cookie time 1
    • Thanks 1
  6. Dear Extraordinary Survivalists
    v1.18.9, a stable release, can now be downloaded through the account manager (section "Other Goodies").

    [Edit:] Also released 1.18.10 to fix an issue with the installers and removed a untested fix.

    2023-08-25_23-58-09.thumb.png.21bd7826e8b7d906a95a24cf01e02c01.png
    Screenshot by Galejro, shared in #screenshots on Discord
     

    Game updates

    • New since 1.18.9-rc.1
      • Tweak: Minor held item info tweaks. (Removed Light absorption info, added clutter notice to clutter block)
      • Fixed: Should fix a rare crash with lightning strikes in creative worlds
      • Fixed: Support beam placement derp when used on chiseled blocks
      • Fixed: Rafts sinking while moving (caused by the speed changes in 1.18.9-rc.1)
      • Fixed: All liquids in container no longer halftransparent
      • Fixed: Not able to read current value via /worldconfig if its one created via /worldconfigcreate
    • Feature: Game servers can now be launched in standby mode (via command line argument -s). In this mode the server is ready to accept connections from clients, but has not launched yet. As soon as the first connection attempt is made, full server launch commences. This allows server owners to launch servers with very low RAM usage until the first player connects - tests show a 20-fold reduction in RAM usage (557 MB -> 25 MB). This can be used in conjunction with the "Players last online" counter of the /stats command to auto-shutdown idle servers and restart them in standby mode. During standby mode, only the commands /stop and /stats are available.
    • Feature: Added new world config to define the despawn time of items dropped on death - only affects those dropped on death, not other dropped items. Can also use /worldconfig droppedItemsTimer command and specifying the time in seconds
    • Tweak: Increased raft speed by 33%
    • Tweak: Windows Installer: Add option to install .NET 7.0 (if not already present)
    • Fixed: Pies in water crashing the game (#3041, thanks Dmitry221060)
    • Fixed: More farmland moisture level oddities
    • Fixed: Weird visual artifacts in the foliage tinting during certain times of year
    • Fixed: --port arg not applying to master server advertising
    • Fixed: Massive lag spikes when loading or searching in the public servers list
    • Fixed: Rare game crash due to a 3rd party dependency not installed on the system (#3028)
    • Fixed: Other players crashing when a player cancels during world load (thanks Dmitry221060)
    • Fixed: Rare crashes on Ubuntu v22.04 (including crashes for clients, if the server was running that version of Linux) #2999, #3009, thanks to all who investigated the issues

    View full record

    • Like 8
    • Cookie time 1
    • Thanks 1
  7. Dear Extraordinary Survivalists
    v1.18.9-rc.1, a unstable release, can now be downloaded through the account manager (section "Other Goodies").

    Work on v1.19 is underway! It will likely be a smaller update than usual, but also completed sooner than usual. In the mean time, there are more important changes that we would like to release as part of 1.18 still.
     

    silos.thumb.png.7c9cdab65b3eb8d0f122077a6cf6b7b2.png
    Functional silos by ElvisAlligator, shared in #screenshots on Discord

    Game updates

    • Feature: Game servers can now be launched in standby mode (via command line argument -s). In this mode the server is ready to accept connections from clients, but has not launched yet. As soon as the first connection attempt is made, full server launch commences. This allows server owners to launch servers with very low RAM usage until the first player connects - tests show a 20-fold reduction in RAM usage (557 MB -> 25 MB). This can be used in conjunction with the "Players last online" counter of the /stats command to auto-shutdown idle servers and restart them in standby mode. During standby mode, only the commands /stop and /stats are available.
    • Feature: Added new world config to define the despawn time of items dropped on death - only affects those dropped on death, not other dropped items. Can also use /worldconfig droppedItemsTimer command and specifying the time in seconds
    • Tweak: Increased raft speed by 33%
    • Tweak: Windows Installer: Add option to install .NET 7.0 (if not already present)
    • Fixed: Pies in water crashing the game (#3041, thanks Dmitry221060)
    • Fixed: More farmland moisture level oddities
    • Fixed: Weird visual artifacts in the foliage tinting during certain times of year
    • Fixed: --port arg not applying to master server advertising
    • Fixed: Massive lag spikes when loading or searching in the public servers list
    • Fixed: Rare game crash due to a 3rd party dependency not installed on the system (#3028)
    • Fixed: Other players crashing when a player cancels during world load (thanks Dmitry221060)
    • Fixed: Rare crashes on Ubuntu v22.04 (including crashes for clients, if the server was running that version of Linux) #2999, #3009, thanks to all who investigated the issue

    View full record

    • Like 6
    • Cookie time 2
    • Thanks 3
  8. Dear Extraordinary Survivalists
    v1.18.8, a stable release, can now be downloaded through the account manager (section "Other Goodies").

    As mentioned in the previous devlog post we are migrating from the .net4 to the .net7 framework. It was a half year long parallel project that is now finally ready. Thank you to everyone who tested our net7 testing releases, that was immensely helpful!

    2023-08-08_16-17-55.thumb.png.126bcbce3ea382cf6f08e1b6493dd402.png
    Screenshot by ElvisAlligator, shared in #screenshots on Discord
     

    Game updates (compared to 1.18.7)

    • Changes in 1.18.8.rc.1
      • Feature: VS now runs under the .net7 framework, improving overall performance
      • Feature: added option to set the window to be always on top (useful for multi-monitor setups with the net7 versions of the game)
      • Tweak: server.sh for Linux servers: Fixed check for requirements and use the net7 dotnet binary to not require DOTNET_ROOT to be set to start the server
      • Fixed: RiftWard stuck in off state when turned off and the world was reloaded (thanks Eugene [Discord] and korobya [PR #21])
    • Changes since 1.18.8-rc.1
      • Fixed: Able to refuel the terminus teleporter by breaking and placing it (thanks korobya)
      • Fixed: Able to freely transport boiling water from hotsprings. Will now turn into normal water instead.
      • Fixed: Should fix water not rendering on AMD cards with dynamic shadows disabled

     


    View full record

    • Like 6
    • Amazing! 1
    • Thanks 2
  9. Dear Extraordinary Survivalists
    v1.18.8-rc.1, an unstable release, can now be downloaded through the account manager (section "Other Goodies").

    As mentioned in the previous devlog we've decided to push forward the .net7 migration of our game. To recap, .net (also written .NET but we think lowercase looks nicer!) is the software framework that we use to create the game and its latest incarnation, .net7, brings wide ranging performance optimizations that we are looking to capitalize on. This update 1.18.8 is functionally nearly identical to game version 1.18.7 except we have upgraded from net4 to net7.  Players running this have been reporting large performance boosts... Note that it may require a download of the latest .net from Microsoft (https://dotnet.microsoft.com/en-us/download/dotnet/7.0) if you do not have that already. Vintagehosting (our server hosting service) does not yet support 1.18.8 but we hope to get that ready in a day or two. Vintagehosting support for 1.18.8 is also in testing phase. If you run into issues please downgrade to 1.18.7.

    This .net7 project had its roots in a proof-of-concept made in a couple of days by some of our community members. One of them now works for Anego Studios overseeing the net7 migration! I estimate it took us roughly 450 man hours to fully support it. One software library the modding community depended on wasn't even available for net7 until late this spring. As always, the devil is in the detail🐛
    You would not believe how many issues we ran into when preparing this for public release. Glad to have this mostly complete now - let's squeeze out every last bit of performance from this engine!


    Vintagestory_Screenshot_2023_07.25_-_16.26_07_62.thumb.png.b75ff857d6124d901d08e7c8d7bc85be.png
    Screenshot by -=Kai=- (Conquest of Blocks), shared in #screenshots on Discord
     

    Game updates

    • Feature: VS now runs under the .net7 framework, improving overall performance
    • Feature: added option to set the window to be always on top (useful for multi-monitor setups with the net7 versions of the game)
    • Tweak: server.sh for Linux servers: Fixed check for requirements and use the net7 dotnet binary to not require DOTNET_ROOT to be set to start the server
    • Fixed: RiftWard stuck in off state when turned off and the world was reloaded (thanks Eugene [Discord] and korobya [PR #21])

     


    View full record

    • Like 9
    • Cookie time 1
    • Amazing! 1
    • Thanks 1
  10. 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 :D

    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!

    image-58(1).thumb.png.3bf29d22577da48aca27f2297fc6f8e9.png
    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

    View full record

    • Like 8
    • Amazing! 1
    • Thanks 1
  11. 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!

     

    2023-06-23_20-35-11.thumb.png.10ec3f03a210ac23da71208a66f81091.png
    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

    • Like 4
    • Amazing! 2
    • Thanks 1
  12. 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

    • Like 14
  13. 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.

    2023-05-31_08-33-17.thumb.png.79583a10fa2069b239f14d54014f9d9a.png
    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

    • Like 6
    • Thanks 5
  14. 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.

    SPOILER_image.thumb.png.636dbe3606fd09047247e6dc34bf8b81.png
    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

    • Like 4
    • Thanks 1
  15. 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]

     

    cosmos.thumb.png.f24f2e9963fc2e1a8b2b4b40c1523aef.png
    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

    • Like 7
    • Thanks 1
  16. 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.

    winterhuntingb.thumb.png.45a263dd8ce166c46e722dac67e6f559.png
    "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

    • Like 4
    • Thanks 1
  17. 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!

    2023-04-29_21-40-18.thumb.png.cad000f704b1519172b01dee7625b812.png
    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

    • Like 8
    • Amazing! 1
    • Thanks 2
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.