Mods / Brain Freeze

Tags: #Food #QoL #Tweak
Author: TheInsanityGod
Side: Both
Created: Jan 4th at 7:12 PM
Last modified: May 3rd at 7:50 PM
Downloads: 2754
Follow Unfollow 103

Latest release (for outdated Vintage Story v1.20.9):
brainfreeze_1.2.1.zip  1-click install


UPDATE NOTICE: 1.2 and onward uses Insanity Lib instead of Custom Transition Library (remember to remove old library when updating)


Current Features:

  1. Frozen liquids (that freeze based on temperature)
  2. Ice Cubes (and yes they are edible)
  3. Reworked snow so it melts based on temperature and is edible (mostly usefull for HydrateOrDiedrate)
  4. Freezing penalties are now more sever (speed penalty and increased damage

Planned Features:

  1. extending HydrateOrDieDrate rain collection so it can collect snow in winter
  2. Creating Ice based foods
  3. Redoing how water blocks freezes into ice (so it doesn't end up looking like swiss cheese)
  4. Changing how wettness affects player when cold

Compatibility:

  1. Hydrate or Diedrate

Version For Game version Downloads Release date Changelog Download 1-click mod install*
v1.2.1 209 May 3rd at 7:50 PM Show brainfreeze_1.2.1.zip 1-click install
v1.2.0 98 Apr 30th at 6:49 PM Show brainfreeze_1.2.0.zip 1-click install
v1.1.1 772 Mar 11th at 3:18 PM Show brainfreeze_1.1.1.zip 1-click install
v1.1.0 892 Jan 28th at 6:19 PM Show brainfreeze_1.1.0.zip 1-click install
v1.0.4 264 Jan 20th at 5:39 PM Show brainfreeze_1.0.4.zip 1-click install
v1.0.3 107 Jan 19th at 1:39 PM Show brainfreeze_1.0.3.zip 1-click install
v1.0.2 213 Jan 14th at 10:19 AM Show brainfreeze_1.0.2.zip 1-click install
v1.0.1 153 Jan 4th at 7:32 PM Show BrainFreeze_1.0.1.zip 1-click install
v1.0.0 46 Jan 4th at 7:14 PM Show BrainFreeze_1.0.0.zip 1-click install

46 Comments (oldest first | newest first)

💬 TheInsanityGod , May 4th at 9:11 PM

oneil, are you talking about "Hardcore Water : Transport Edition"? if so no, those are actual water blocks.

💬 oneil, May 4th at 8:16 PM

quick question : does the aqueduc of the aqueduc mod freeze ? thanks :3 

💬 TheInsanityGod , May 3rd at 7:51 PM

Thanks for reporting the issue B0YAR, fixed in new release.


Had nothing to do with "Toolsmith" btw, not sure how no one noticed this until now (inlcuding myself) but apperently I was missing a null check on the blockselector which causes it to throw when aiming at the sky.

💬 B0YAR, May 3rd at 12:09 PM

v1.20.9

The
mod conflicts with the "Toolsmith" mod by throwing the client off the server with an error when trying use whetstone to sharpen the chisel. Please add compability.

3.5.2025 14:50:08 [Error] Exception: Object reference not set to an instance of an object.
at BrainFreeze.Code.Behaviors.IceBreakerTool.OnHeldInteractStart(ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, Boolean firstEvent, EnumHandHandling& handHandling, EnumHandling& handling) in D:\Modding\VintageStory\BrainFreeze\BrainFreeze\Code\Behaviors\IceBreakerTool.cs:line 19
at Vintagestory.API.Common.CollectibleObject.OnHeldInteractStart(ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, Boolean firstEvent, EnumHandHandling& handling) in VintagestoryApi\Common\Collectible\Collectible.cs:line 1291
at Vintagestory.GameContent.ItemChisel.OnHeldInteractStart(ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, Boolean firstEvent, EnumHandHandling& handling) in VSSurvivalMod\Item\ItemChisel.cs:line 189
at Vintagestory.Server.ServerSystemInventory.HandleHandInteraction(Packet_Client packet, ConnectedClient client) in VintagestoryLib\Server\Systems\Inventory.cs:line 255
at Vintagestory.Server.ServerMain.HandleClientPacket_mainthread(ReceivedClientPacket cpk) in VintagestoryLib\Server\ServerMainNetworking.cs:line 238
at Vintagestory.Server.ServerMain.ProcessMain() in VintagestoryLib\Server\ServerMain.cs:line 957

💬 TheInsanityGod , Apr 25th at 5:34 PM

Whiteshadoh, You'd want to to change "FreezingDamage".

"SuperBrainFreeze" has nothing to do with the freezing damage... it disables registration limits, meaning it will try to make every liquid freez-able (I know I'm the one who put it in there but I would not recommend touching it)

Config is currently only documented in the code (and in ConfigLib if you use AutoConfigLib I suppose), once I'm done with my new/expanded library it will also be inside the actual config file

💬 Whiteshadoh, Apr 25th at 4:41 PM

TheInsanityGod
When enabling
"SuperBrainFreeze": true,
game will crash and refuses to load.
1.20.7 no mods besides vanilla core and brain_freeze (+) custom_transistion_library

only thing i was interested in the increasing the freezing tick damage but that seems to be busted atm unless the true flag is wrong?

💬 Viktoria, Apr 22nd at 7:48 AM

Seconding wine spoilage.

💬 Okayeg, Apr 18th at 7:57 AM

idk if it's just me but every time I try to make wine or beer it starts to spoil right after it's done

💬 xCoiotex, Apr 2nd at 3:30 AM

i'll download this to test, but i need to finish mah soups first to make a new batch

💬 TheInsanityGod , Apr 1st at 9:17 PM

MrTango, xCoiotex.

Sadly this is a more complicated issue with the underlying nature of how vanilla treats transitions on meals. I've managed to somewhat duct tape this in the update of the Custom Transition Library (Sadly this is an issue during creation of the item, so I can't fix existing items)

💬 MrTango, Mar 30th at 6:31 PM

+1 soup missing perish status from crock & bowl :(

💬 TheInsanityGod , Mar 27th at 4:22 PM

xCoiotex, I've recently been informed of a similar issue where the meals in bowls shows incorrect spoil time (visual issue only) so good chance that this is related to this mod.

(for as far as I've had time to look into it, it seems vanilla code is having issues with having other transitions on food items, which to be fair don't exist in vanilla)

💬 xCoiotex, Mar 26th at 8:15 PM

dunno if it's this mod, but i can't see the "days left" on some crook with onions and redmeat soup, could be a compability issue with butchering, but unsure

💬 Drehverschluss, Mar 21st at 5:02 AM

Sounds promising! Cant wait to have a warm home :)

💬 TheInsanityGod , Mar 20th at 4:40 PM

Actually I plan to rework the entire room temperature mechanism altogether using ExpandedRoomsLib (a companion mod/library that I really should get arround to working on finishing)

Will most likely take a while though (Been bussy working on WearAndTear and other stuff)

Drehverschluss

💬 Drehverschluss, Mar 20th at 11:26 AM

Hello. Just want to ask a Question. Do you maby plan to make snow/ice-blocks cool the cellar down? Or just "a way" to cool the room where all the raw food is stored?

💬 Endurance, Mar 11th at 11:15 PM

TheInsanityGod That sounds like it could have been it since it happened a few seconds after me teleporting. Thank you so much for looking into it and getting a fix out so quickly! Really looking forward to experiencing this mod in winter :D

💬 TheInsanityGod , Mar 11th at 3:18 PM

Endurance, I was unable to reproduce the issue but I found (and solved) a potential edge case. (related to handling of invalid positions)

(Don't think I can find much more without access to the actual world)

💬 Endurance, Mar 9th at 8:31 PM

TheInsanityGod Sure thing! Thanks for looking at this!

1.20.4


Conquest Landform Overhaul v1.0.1.zip
hydrateordiedrate_1.9.8.zip
ImmersiveOreCrush_2.2.1.zip
apeflowerpots-1.20.4-v1.2.1.zip
Firestarters_1.4.3.zip
traitacquirer_0.9.6.zip
FromGoldenCombs-1.20-v1.8.11-rc.7.zip
configlib_1.5.1.zip
ManualToolCrafting_1.3.5.zip
animalcages_v3.2.1.zip
CustomTransitionLib_1.0.0.zip
traitacquireraddon_1.0.0.zip
BetterFirepit-1.1.5.zip
pottery-wheel_v1.1.2.zip
CommonLib_VS1.20.0-rc.1_net7_v2.6.1.zip
CoreOfArts_0.2.3.zip
immersivewoodsawing_0.2.7.zip
MorePiles-v2.1.2.zip
BetterBloomery-1.0.5.zip
Conquest Blocklayer Overhaul v1.0.2.zip
ndlvillagers_1.3.1.zip
ForestSymphony_1.0.2.zip
chimneyflues-1.1.1.zip
lavoisier_1.3.1.zip
chiseltools1.14.12.zip
HelveHammerExtensions_VS1.20.0_net7_v1.7.0.zip
ChestOrganizer-1.2.3.zip
DanaTweaks-v3.4.0.zip
RareDenseOres_0_2_7.zip
Aged1.0.8.zip
ArtOfGrowing_0.5.3.zip
AngelBelt-1.20-1.6.0.zip
usefultraders-v2.2.0.zip
vsimgui_1.1.7.zip
flist.tx
kevinsfurniture_1.6.4.zip
oneroof_1.8.2.zip
Re-Smeltables Light_ v1.1.0.zip
clipfix-1.0.9.zip
gimmeoneseedplz_1.0.7.zip
rivers_4.1.0.zip

 

The only errors I could see were along the lines of this:
[Error] Grid Recipe with output Item code game:metalplate-copper contains an ingredient that cannot be resolved: Item code game:chisel-gold

💬 TheInsanityGod , Mar 9th at 1:45 PM

Endurance, thanks for reporting this issue, could you provide me with a bit more information:

  • Game version
  • Mod List
  • Any other exceptions inside of the server-main.log
💬 Endurance, Mar 9th at 11:15 AM

This mod caused my game to freeze up, making it impossible to join my world until I disabled it. The server main log was getting spammed with:

Exception: Object reference not set to an instance of an object.
at BrainFreeze.Code.Transition.BrainFreezeTransitionHandler.GetTemperatureAtPos(IWorldAccessor world, ItemSlot inSlot, BlockPos pos) in D:\Modding\VintageStory\BrainFreeze\BrainFreeze\Code\Transition\BrainFreezeTransitionHandler.cs:line 35
at BrainFreeze.Code.Transition.BrainFreezeTransitionHandler.GetTransitionRateMul(IWorldAccessor world, ItemSlot inSlot, EBrainFreezeTransitionType transType, Single currentResult) in D:\Modding\VintageStory\BrainFreeze\BrainFreeze\Code\Transition\BrainFreezeTransitionHandler.cs:line 42
at CustomTransitionLib.HarmonyPatches.AppendGetTransitionSpeedMultiplier.Postfix(IWorldAccessor world, ItemSlot inSlot, EnumTransitionType transType, Single& __result) in D:\Modding\VintageStory\CustomTransitionLib\HarmonyPatches\AppendGetTransitionSpeedMultiplier.cs:line 16
at Vintagestory.API.Common.CollectibleObject.GetTransitionRateMul_Patch1(CollectibleObject this, IWorldAccessor world, ItemSlot inSlot, EnumTransitionType transType)
at Vintagestory.API.Common.CollectibleObject.UpdateAndGetTransitionStatesNative_Patch0(CollectibleObject this, IWorldAccessor world, ItemSlot inslot)
at Vintagestory.GameContent.BlockContainer.UpdateAndGetTransitionStates(IWorldAccessor world, ItemSlot inslot) in VSSurvivalMod\Block\BlockContainer.cs:line 205
at Vintagestory.Server.ServerSystemInventory.UpdateTransitionStates(Single dt) in VintagestoryLib\Server\Systems\Inventory.cs:line 148
at Vintagestory.Common.GameTickListener.OnTriggered(Int64 ellapsedMilliseconds) in VintagestoryLib\Common\Model\GameTickListener.cs:line 31
at Vintagestory.Common.EventManager.TriggerGameTick(Int64 ellapsedMilliseconds, IWorldAccessor world) in VintagestoryLib\Common\EventManager.cs:line 170
at Vintagestory.Server.ServerMain.Process() in VintagestoryLib\Server\ServerMain.cs:line 896

💬 TheInsanityGod , Feb 26th at 7:56 PM

Kirona, for as far as I'm aware the game does not download dependencies automatically in the first place, atleast it's never done so for any mod I've used.

(Keep in mind that connecting to a server is different case, as it will just try to download all mods present on server)

💬 Kirona, Feb 26th at 2:23 AM

I think the dependency is inaccurately linked/referenced in the mod - my client was unable to locate it for download so I had to install it manually. Not a huge issue but I figured I'd let ya know.

💬 TheInsanityGod , Jan 29th at 5:14 PM

Is there an "especially when wet" feature? No, this would be the "Changing how wettness affects players when cold" listed under the planned features

Did you mean "Water Weather Simulation"? if so yes it is (currently) compatible (I haven't touched how water blocks freeze yet). The similar-ish feature you are talking about would be the "redoing how water freezes"  listed under Planned Features

Thalius

💬 Thalius, Jan 29th at 12:52 PM

Also, is this compatible with Winter Weather Simulation, which makes lake water and such behave better when it comes to freezing? Or will you impliment similar features? It'd be nice if lakes and oceans freezed and thawed when they should, with a chance of breaking when walked on in temps that are not deep cold.

💬 Thalius, Jan 29th at 12:43 PM

Is there an "especially when wet" feature to the harsher freezing penalties?

I've lived in the far north. Cold is really not that hard to deal with as long as you are dry and dressed well. If you get wet though and can't get dry or indoors, you're done for. Heck, I used to haul cedar logs out of the forest in upper Michigan dressed in long johns and jeans in a t-shirt in 10 degree weather and snow, and felt fine all day as long as I kept my hands and feet dry, and the wind was not blowing.

I've not minded the rate at which cold creeps in on you in the game. I laugh at jumping in a lake or ocean and then running around in the arctic though, seemingly without serious issues. Being wet and cold should be a rapicly debilitating danger.

💬 Thalius, Jan 20th at 7:47 PM

Intrigued by the concept of this project. Looking forward to seeing what comes of it.

Dealing with the cold should be more... dynamic, if I can use that word. There really is very little in the game currently that maks the cold interesting at all. It's pretty, and eventually you might freeze to death if you stay out long enough. I currently have to pay very little attention to cold, even when wet.

Liquids freezing like they should, lake ice forming and behaving more naturally, and especially stronger adverse effects of being wet in cold temps are all good things to bring to the game.

💬 TheInsanityGod , Jan 20th at 5:41 PM

When someone changing a single namespace causes your entire code to blow up lol

Problem fixed now, just remember that this means you have to update HydrateOrDieDrate to the latest version as well otherwise... well you will have the same issue but in reverse :P

💬 ElegantChimp, Jan 20th at 4:02 AM

+1 to the issue @bringitonwimps brought up

💬 bringitonwimps, Jan 20th at 3:25 AM

newest update of hidrate and diedrate now lost compatibility... 

https://pastebin.com/JwXe97ki

💬 tuesdaey, Jan 19th at 6:15 PM

i like the concept of this mod, there should be more inque features of the north that make it a draw for travel or settling. the south has exotic trees and crops, papyrus, and animals like hyena. The north has...aurora borealis. And now ice!!

💬 TheInsanityGod , Jan 14th at 10:21 AM

Thanks for the bug report bringitonwimps. This exception actually stems from XSkills rathen then my mod: They have injected some code to run after an object is eaten and are attempting to get the nutritional properties from this location, however at this point the itemstack no longer exists (since you ate the last item on the stack). For normal (simple) food this isn't an issue since the nutrient properties are static and the method doesn't use the itemstack, my ice cubes however work more similar to a meal where the ingredients decides the nutrient properties.

I've done what I can on my side (you should no longer get an exception) and made a bug report on xSkills github https://github.com/Xandu93/VSMods/issues/2 (because this does mean their cooking quality bonus will fail to apply on the last item of a stack, if the item uses the ItemStack for nutrient calculations)

💬 bringitonwimps, Jan 14th at 4:15 AM

this is happening when i eat ice

https://pastebin.com/2b07sYPb

After some more testing it seams to happen when i eat the LAST ice cube in a stack and upoin returning to the server i get about a 20 xec freeze/lag spike.  FYI server is in my home.

💬 TheInsanityGod , Jan 7th at 8:04 PM

silently appends to planned feature list

💬 Toudi, Jan 7th at 7:46 PM

can you add that getting wet in negative temperatures while not in room or cellar is making player loose temperature faster? now it feels like getting into water in winter has no penalty

💬 TheInsanityGod , Jan 7th at 3:26 PM

Hmm this is certainly a strange issue indeed 🤔

💬 SalmonGod, Jan 7th at 3:15 PM

Alright I'll try turning your mod on again next time I play and see how it goes.  Still seems odd to me though since I restarted several times over the course of that session.  I changed the Optimize RAM setting to Aggressive at the same time as I disabled Brain Freeze, but then I reverted that option back to Somewhat shortly after and the issue never returned.

💬 SalmonGod, Jan 7th at 3:10 PM
💬 TheInsanityGod , Jan 7th at 2:56 PM

SalmonGod, thanks for the extra info.
Watched the vintage story part of the stream and I'm not so sure disabling this mod is what fixed the issue:
The liquid you pick up with a bucket (or other liquid container) is actually an entirely different item then the block placed in the world (vintage story has weird liquid code), my mod currently only affects the liquid item (which I haven't seen you obtain) so my code hasn't even been doing anything 😅 (or atleast it shouldn't have been doing anything)

I noticed you also switched you vram Optimize RAM setting at the same time... which according to the official wiki https://wiki.vintagestory.at/Settings can cause mild lag spikes. ('mild' is a bit vague if you ask me but oh wel)

I believe what truly fixed your issue was the graphic settings you changed such as Optimize Ram setting and restarting the game (to cleanup any garbage that might not have been cleaned propperly during world reloading)

💬 SalmonGod, Jan 7th at 7:21 AM

I was streaming, so you can see the whole thing if you'd like.

https://www.twitch.tv/videos/2345571410

About 2:45 is where I switch over to Vintage Story.  The performance issues are there from the beginning but they get progressively worse, until I think around 4:45 is where it gets to the point of overwhelming.  Frequest 30 second freezes at the end of which in-game time skips several hours.  5:14 is where I turn off Brain Freeze, and I do a full scroll of the mod manager, so you can see all the other mods I was running.

💬 TheInsanityGod , Jan 6th at 4:33 PM

Hmm that's certainly strange, I didn't run into any performance issues when testing myself. This is probably some weird interaction between my mod and a different mod, could you provide me with a bit more information SalmonGod? (modnames with version, and the last thing you did before this performance issue happend)

💬 SalmonGod, Jan 6th at 2:43 PM

Started a new game yesterday with several new mods.  Had serious performance issues, with the game taking up 60 GB of RAM and heating up my GPUs.  I wasn't purely scientific about it.  But I'm like 90% sure removing Brain Freeze is what resolved my issues.  It was the only mod I removed on that reboot, along with some minor graphics settings tweaks.  RAM usage dropped by half and GPUs fell to more what I'm used to seeing.  Heads up that there might currently be performance issues with the mod.  Hoping it gets better though, because this looks neat.

💬 Sell, Jan 6th at 11:55 AM

Clever idea, makes winter food and drink storage more interesting. Anything that expands on the winter challenges is an easy win in my book. Excited to see where this mod goes, hope you get to explore it more.
Cheers,

💬 Thranos, Jan 5th at 10:52 AM

It is, but not officially, and certainly not on the DB.

💬 TheInsanityGod , Jan 4th at 10:01 PM

Now if only AculinaryArtillery was updated to 1.20...

💬 AzuliBluespots, Jan 4th at 9:46 PM

DID SOMEONE SAY ICECREAM????

 (edit comment delete)