Dear Extraordinary Survivalists
v1.22.0-rc.1, a unstable release, can now be downloaded through the account manager.
In this update we focused on cramming as much new content into one update as we possibly could. Reminder - the "rc" in the version number stands for "release candidate" which means our team's focus will now shift to bugfixing and game balancing until stable. Expect some level of jankiness still. Rivers and Sawmills did not make it in time for 1.22 unfortunately (they are still in progress) but even without these, this update is possibly the largest we ever made in terms of game content. Enjoy!
Can I start playing 1.22 now?
We are decently confident that your old worlds will not break. Please wait with upgrading to 1.22 until we fixed newly introduced worldgen issues. Even so, we highly recommend making a backup copy of your 1.21 worlds before upgrading the game to 1.22. If you want to be on the safe side, wait until 1.22.0 stable. And if you tried out our earlier pre-releases, continuing a 1.22.0-pre world is not recommended.
v1.22 still unfinished / known issues
The large bellows cannot yet be powered through the mechanical power system. There are z-fighting and clipping issues with the new clothing for the seraph and trader. Some of the trader clothing combinations are too random. The new dynamic dungeons will not drop when broken and some parts are unfinished. Various other minor issues.
Screenshots of new additions since pre.1
Added the first iteration of dynamic dungeons to Survival mode
![]()
Fully reworked Trader models
Added many new clothing sets for the player
Game updates
- Everything listed in the pre.1 post plus everything below
- Feature: A first, proof-of-concept fully dynamic dungeon now spawns in Survival mode. They appear far apart from each other, roughly every 1500 blocks
- Feature: Fully reworked trader models. Added climate specific clothing for traders
- Feature: Added many new clothing sets to be found, traded or crafted. (WIP)
-
Feature: Fully reworked berry bushes. Pre-1.22 berry bushes are now legacy blocks: they will no longer be available in the Creative inventory, but any in existing worlds are still functional blocks in-game
- Fully reworked models
- Can only be propagated by taking a cutting with a knife which when planted takes 6 to 12 months to mature into a new bush
- Berry bushes require fertilization or they will stop bearing fruit. Berry bush nutrient use tapers off by 15% per year (resulting in about 5% use after 20 years). Some bone meal each year should be enough to give you a decent harvest
- A handful of rare traits will be added in the next release candidate - traits propagate to the cutting taken
- Flowering/Ripening behavior still mostly similar to the old system
- Feature: Added 'ruined' torch holders. They will hold torches, but if broken will not drop themselves
- Feature: Can now mount shields on wall mounts
- Feature: Some fish - arapaimas, pike, piranhas, and sheatfish - may attack players if cornered. Red-bellied piranhas are especially aggressive towards injured players
- Feature: Hematite and Limonite nuggets can now be used for cave art and writing, in colors 'red ochre' and 'yellow ochre' respectively
- Tweak: Players are now visible on the map up to 1000 blocks away or if in a shared group, by default
- Tweak: Player map markers will show the supporter color, like player names in chat
- Tweak: Held/dynamic light range now better corresponds to placed light range (experimental!)
- Tweak: Increase dynamic lights detection range from 60 to 120 blocks
- Tweak: Add a bit of extra brightness near a held/dynamic light source
- Tweak: Lightning flash visual tuning. Lights up the world from a greater distance and a bit more realistically
- Tweak: Cleavers now have a non-functional 'head' item like most other tools, and must be combined with a stick to make the complete tool. Also revised the cleaver model to have 1:1 pixel scale (previously was 50% scale)
- Tweak: Quern shows grinding outputs on handbook page
- Tweak: Tuned seraph idle animations
- Tweak: Can now add linings or change the color of glass for small lanterns in ground storage
- Tweak: Added fish bones item, which is functionally equivalent to existing tiny bones (cannot be used for handles or in armor) but looks fish-appropriate.
- Tweak: Added new ground crafting sounds, for scraping soaked hides with knife, trimming small or medium scraped hides into parchment using shears, carving a bone into a flute, removing the head from a bear pelt, and sawing a raw longbow stave into a raw recurve stave using a saw
- Tweak: Copper roofing grid recipe yield doubled, except that tips are now individually made from a single copper plate
- Tweak: In the Handbook, for materials created by grinding, show the quern in "Created by" section
- Tweak: Breaking blocks adjacent to and below water flow, may now cause the water to flow into the newly made gap
- Tweak: The Devastation Tower elevator now prevents falling through when going down
- Tweak: Performance - Faster recipe matching with reduced memory usage. Should fix lag spikes on the server and client when crafting or using the handbook
- Tweak: Performance: Less CPU cost for unpacking chunks, creating packets etc - main benefits on large multiplayer servers
- Tweak: Rusty gears now have a pile model that holds up to 64 gears. The old-style piles of gears will still be found in ruins, but player-placed piles will be more orderly, and larger capacity
- Tweak: Add non-climbable versions of clutter ladders, for use in cases like bunk beds where you don't want them interfering with the player's normal movement
- Tweak: Chain mail items have a revised smaller model, and are now placeable on the ground in the quad layout
- Tweak: Handbook search now shows results more closely matched to what was typed
- Tweak: Rendered fat recipe no longer dirties the pot
- Tweak: Pigs and sheep will no longer stand around idly such that they can easily be fenced in. They will now run away from the player, or attack the player if they get too close
- Tweak: Removed unused 'eidolon gearbox' item from the game
- Tweak: Firestarter can now be burned in a firepit
- Tweak: Allow candles to be removed from an existing bunch of candles without breaking it
- Tweak: Male goats in general will not use the very smallest horn models, better differentiating them from females
- Tweak: Copper shingle blocks now have a grid recipe. The shingle blocks blocktype json was moved from 'metal' folder to 'roofing' folder
- Tweak: Grid recipes which produce roofing half-blocks now produce two halves, rather than one
- Tweak: Can now also chisel block combine in the chisel tool mode, not only in the crafting grid
- Tweak: Blocks with the pillar behavior now display their orientation in the chisel tool mode material selector
- Tweak: Added a (preliminary) handbook entry for berry bushes, explaining their propagation and care
- Tweak: Add a bit of extra brightness near a held/dynamic light source
- Tweak: Added a Creative mode pocket sun. Caution: Very hot!
- Tweak: When using the Creative-mode Entity-mover tool, you can now use mousewheel to change entity distance
- Tweak: Update community translations
- Tweak: Added server config setting UpnpInfiniteLifetime (enable with /sc upnpinfinitelifetime on). Use this for infinite UPnP port mapping lifetime; otherwise the default 10-minute lifetime auto-renews mappings. Behavior may vary depending on the router.
- Fixed: Another possible cause of ghost Players
- Fixed: Beams not placing correctly in free mouse mode or when client->server not in sync.
- Fixed: Some fruit trees would spawn as empty stumps during worldgen
- Fixed: Crash in the music system when flying fast
- Fixed: Wild fruit trees not fruiting in the first year
- Fixed: Honey would give the wrong satiety in a meal
- Fixed: Quenching/Tempering buffs not applying when they should and the item now shows its item state in the item info hud.
- Fixed: Tempering applied a buff instead of only reducing the break chance
- Fixed: Applying many buffs added many lines of text to the item info hud
- Fixed: The player would get full nutrition from drinking spoiling liquid
- Fixed: Properly stop animations when ground processing items
- Fixed: Animation would never end when breaking ore chunks in ground storage
- Fixed: Drifters had a missing face on their neck that would show on their back side, when dead.
- Fixed: Bronze rods had combined word localizations (i.e. Tinbronze, Bismuthbronze) which was not per standard
- Fixed: Grindstone grid recipe conflicted with polished stone recipe
- Fixed: Ruined metal doors had the latch on the wrong side, and their hitbox was thinner than the door.
- Fixed: Collapsed clutter scroll racks were not texture-swappable.
- Fixed: Ruined sabre had blade ground-stored transform, and so looked like it was half buried in the ground.
- Fixed: Bugnet durability wasn't consumed
- Fixed: Brass torchholder description didn't have useful info from aged torchholder description
- Fixed: /debug helddurability command not marking slot dirty
- Fixed: Armor breaks on zero durability
- Fixed: Female tamed elk hitboxes displayed raw lang keys instead of translated text
- Fixed: Empty chests playing incorrect sound when closed
- Fixed: Chiseling or rotating blocks located at a chunk edge, now correctly updates lighting on neighbors across the chunk edge
- Fixed: Harvested brown sedge tossed on the ground was nowhere near its actual hitbox
- Fixed: Some pigs had bad 'center' points in their model, resulting in mis-placed hitboxes
- Fixed: Flax fibers' held transform was WAY too small
- Fixed: Black coal was a pigment for sign writing, but could not do cave drawings
- Fixed: Certain chiseled blocks placed wrong shading onto ground beneath - seen with new trader huts
- Fixed: Tule root didn't say in description that it can be planted again
- Fixed: Luxury trader was selling two shields that were missing the wood attribute.
- Fixed: Placing a crock into ground storage would crash the game on some operating systems
- Fixed: Sheep no longer spawn in thick forests or shrubland
- Fixed: Rope couldn't be placed on ground without already existing ground storage
- Fixed: Some story locations (lazaret) caused additonal protected areas above ground after using /wgen regen at their position
- Fixed: Couldn't pick up empty armor stand
- Fixed: Devastation tower pitch black at night and other worldgenned light sources not emitting light
- Fixed: Bamboo stakes and shovel gui icons when moused over were not centered.
- Fixed: Long bowstave is invisible in ground storage when dry
- Fixed: "Toggle sprint" checkbox hover text was wrong in the game settings
- Fixed: Aged sailboat did not have a creative item to place it (and so did not show up in handbook)
- Fixed: Flax fibers were not centered in the gui
- Fixed: Hot items invisible in ground storage
- Fixed: Metal arrow fletching was solid black
- Fixed: Rare crash when chiseled block name is null
- Fixed: Drygrass item was not centered in it's selection box when laying on the ground
- Fixed: Mouflon and bighorn sheep horns had bad wall mount transforms. Mouflon horns were also missing localizations.
- Fixed: Water updates not consistently triggered if solid blocks (water-logged blocks) were in the same position
- Fixed: Clouds disappearing after sleeping in some cases
- Fixed: Dirty cooking pot had bad incorrect idle pose
- Fixed: Anomalously light texture section on adult male elk's neck fur
- Fixed: Scraping multiple soaked hides causes game crash #8479
- Fixed: Old traders were upgraded to the new traders, but naked and no face
- Fixed: When public server advertising is enabled that could send multiple duplicated requests to the masterserver. Issue since 1.22.0-pre.1
- Fixed: Some Nadiyan clothing was not using the correct textures.
- Fixed: Merchant hat and fur coat had some texture issues.
- Fixed: Various small issues with bear textures and model
- Fixed: Olives' on-ground transform was bad
- API Feature: Targetable AI tasks can specify a minimum and maximum injury amount of the target
- API Feature: Added MouseWheelMove input event
- API Feature: ItemSlotCharacter now uses virtual CheckDressType instead of static IsDressType
- API Tweak: BlockMultiblock now uses .GetInterface() instead of .GetBehavior() to find interfaces
- API Feature: Added texture bleeding system for seamless block transitions
-
Feature: New block properties for controlling texture bleed behavior:
- BleedPriority (auto from material or manual override)
- CanReceiveBleed, BleedOverlayTexture
- BleedTopFaceOnly, BleedGroup, BlocksTextureBleed
- API Refactor: Collectible.OnCreatedByCrafting() and CollectibleBehavior.OnCreatedByCrafting() "gridrecipe" argument is now of type "IRecipeBase" instead of "GridRecipe"
- API Refactor: Worldgen: Moved ChunkColumnGen event registration from StartServerSide to InitWorldGen()
- API Refactor: New tag condition matching system. Complex tag conditions hold either a set of disjunctive entries ([a and b and c] or [d and e]) or as a set of conjunctive entries ([a or b or c] and [d or e]).
- In both cases each of the inner sets can also have a set of forbidden tags that is always disjunctive. The syntax for using these in json follows one simple rule: If no junction verb is specified, the group is treated as conjunctive (a and b and c)
-
examples:
[["all", "of", "these"]]
[["all", "of", "these"], (or) { allOf: ["all", "of", "these"], noneOf: ["any", "of", "these"] }]
{ allOf: ["all", "of", "these"], noneOf: ["any", "of", "these"] }
{ anyOf: ["any", "of", "these"], noneOf: ["any", "of", "these"] }
{ anyOf: [["all", "of", "these"], { allOf: ["all", "of", "these"], noneOf: ["any", "of", "these"] }] }
{ allOf: [["anyOf", "of", "these"], (and) { anyOf: ["any", "of", "these"], noneOf: ["any", "of", "these"] }] }11:20 AM
these can be used in recipe ingredients and entiy behaviors for now* Replacement Tag System
- API Tweak: Use GetInterfaces for all instances of IIgnitable
- API Tweak: Add stencil buffer API to rendering interface
- API Tweak: Collectible.DamageItem() - Added optional arg "destroyOnZeroDurability"
- API Tweak: Frameprofiler (.debug logticks xx) now records mousedown/mouseup event cost as well
- API Fixed: Collectible.OnHeldDropped was not called server side
- API Fixed: Rideable behavior no longer ignores minGeneration setting
- API Fixed: Crash when entity tries to play sound it did not have
- API Fixed : When using a villages.json to specify modded villages a non wildcard schematics path would not resolve properly
- API Fixed: Unable to export texture atlasses when intallation folder did not have user permissions, they now go to the data folder instead
- API Tweak: New overload CraftingRecipeIngredient.Resolve(IWorldAccessor world, string sourceForErrorLogging, IRecipeBase recipe) should be used to Resolve input ingredients, to ensure they are registered to the new fast recipe matching
- API Tweak: IWorldAccessor has new read-only property IWorldAccessor.FastSearchRecipesByIngredient; this will be populated by the new CraftingRecipeIngredient.Resolve() method mentioned above
- API Tweak: Transform editor dialog now has firepit transform support
- API Tweak: Spawner blocks can now define rain and temperature conditions
- API Tweak: Added OnContainedInteractCancel for use in ground storage interactions
- API Tweak: The Block animation system now also hooked up to the animation sounds system. Example implementation: Bellows
- API Fixed: 'scale' property in shape overlays did not work
-
API Fixed: Offsets from mounted entities now make sense, existing ones will need adjusting
- The mounted animation should position the player relative to the hitbox
- The attachment point on the mounted creature should go on the part of the entity the player's movement follows
- The seat offset adjusts the location of the player's hitbox relative to the attachment point* Internal: Change pelt grid recipes that accept multiple sizes, to new 'anyof' format, for Rennorb to check, as they don't seem to work.
Changes since 1.22.0-pre.5, also included above
- Tweak: New main menu backgrounds
- Tweak: Added a creative mode pocket sun. Caution: Very hot
- Tweak: Cleavers now have a non-functional 'head' item like most other tools, and must be combined with a stick to make the complete tool. Also revised the cleaver model to have 1:1 pixel scale (previously was 50% scale).
- Tweak: Lightning flash tuning. Lights up the world from a greater distance and a bit more realisticly
- Tweak: Increase dynamic lights detection range from 60 to 120 blocks
- Tweak: Other players are always visible on the map up to 1000 blocks away or if in a shared group by default
- Tweak: Player map markers will show the supporter color, like player names in chat
- Tweak: Held/Dynamic light range now better correspond to placed light range (experimental)
- Tweak: Add a bit of extra brightness near a held/dynamic light source
- Fixed: Another possible cause of ghost Players
- Fixed: Beams not placing correctly in free mouse mode or when client->server not in sync.
- Fixed: Some fruit trees would spawn as empty stumps during worldgen
- Fixed: Crash in the music system when flying fast
- Fixed: Wild fruit trees not fruiting in the first year
-
1.22 related changes
- Tweak: Can now use sprint+mousewheel with the entity mover to rotate the entity
- Tweak: Reduce rapids spawn quantity
- Tweak: Ruined doors and trapdoors (both metal and wood) will no longer drop anything when broken.
- Tweak: Strawberry plants now spawn in patches twice as large as other berry bushes, use half the fertilizer, and have half the yield
- Tweak: Fruiting bush yields increased 25% to account for the fact that struggling wild bushes only yield 50% of normal harvest. Reduced berry bush maturation length by 25%
- Tweak: Added Spur gear up and down orientations which were missing from -pre.5
- Tweak: Spear thrown damage and draw speed nerfs backed off by about half
- Tweak: Performance (minor) save 100k RAM and fewer cache misses for SnowAccum randomShuffles, they can be ushort not int
- Tweak: Re-worded berry bush 'cluster' traits to 'sparse/dense' rather than 'weak/strong'
- Removed: Fruits which do not currently have a bush associated with them (to be added back as the bushes are completed).
- Fixed: spur gear bugs in -pre.5 (detail: they could cause neighbouring axles to turn even if no neighbouring gear)
- Fixed: Devastation area no longer generating shrikes
- Fixed: When fishing in the ocean it was possible to catch freshwater fish and vice versa
- Fixed: Treasure hunters no longer selling treasuremaps
- Fixed: Waterwheel now provides mechanical power on both sides of its axle
- Fixed: Folded clothes stored in shelves and cabinets all had the same texture.
- Fixed: Time switching no longer working after usign /wgen regen in the devastation area. Issue since 1.22.0-pre.1
- Fixed: Several visual issues with berry bushes
- Fixed: Milking animal fails to produce milk due to desync
- Fixed: Rapids water splitting if the random horizontal path changed in shuffling
- Fixed: Mature berry bushes would float in the air if the soil block under them was broken.
- Fixed: occasional snowy blocks melting slower than surroundings in spring/summer, due to vines above
- Fixed: Bears would not seek out and eat food
- Fixed: Large lanterns had two of the grid elements using the wrong face, resulting in appearing to dark.
- Fixed: Spear and pick heads had bad shelving transforms
- Fixed: Leather decor had bad transforms, and z-fighting
- Fixed: Wallpaper was hidden from the handbook
- Fixed: Currants used inconsistent localization formats. Now consolidated to one word (i.e. redcurrant)
-
30
-
6
-
6
-
2
-
1