Aquatic Mutations/Frostbite/Ease of Use

Alright. My attempt to get a fully mutated cephalapod living in the river died - so I cheated (oh noes) just to see what I didn’t manage to accomplish, to see how well it would have worked. After playing around for a little bit, this is what I’ve noticed. I think they count as bugs, but may be just oversights. I played around with fish mutations and cephalapod mutations using the debugger to see what worked and what didn’t, and how they played out.

  1. Beings with gills can’t eat underwater. As in, if you have tons of aquatic mutations and gills, and somehow have cooked fish (keep in mind, both lines still have to cook any fish they eat) - underwater, you get an error message telling you that you cannot eat underwater.

  2. Beings designed to live underwater (tested it with fish mutations too, which are largely the same) get frostbite more easily when under water. I noticed that when the temperature on a thermometer read 36" F - and on land - no frostbitten warning messages were present. But after getting wet, I was told I’d be frostbitten within the hour. There should be something coded more ‘ease of use’ for these mutations. Cephalapods at least have lots of useful mutations; they are decent at melee, stealth, and being smart. But the fish-line of mutations doesn’t even get that, and there isn’t enough allowances made, even within what exists in the game right now, to make it actually feasible for a character with aquatic mutations to mostly live in the water. The code mostly still assumes land-based biology.

If there is any doubt as to whether fish and cephalapods should get frostbite from being in the water, I will point out that warmer water is denser, and thus will sink to the bottom of any body of water while cold water will rise. I’m not saying it should never happen, as obviously a fish or cephalapod in the snow in winter, for instance, is not being smart - but at least as far as water goes, I think they should get a break.

  1. I’m rather confused by it even after testing… and I may be interpreting it wrong… but it looks as if aquatic-style mutations get bigger bonuses in shallow water then on the surface of deep water. I tried looking on the wiki to make sure I wasn’t reading the interface wrong, but the explanation kinda didn’t help. I noticed the following values:

Land: 79 (red) 135
Shallow Water: 79 (red) 285
Deep Water (Surface) 79 (red) 148
Deep Water (underneath): 79 (red) 98

I am thoroughly confused by the above. Can someone explain it to me?

I also noticed that you can’t build structures underwater, which wasn’t surprising after finding out you couldn’t eat underwater. So I have temporarily given up the idea of playing a mutant who escapes the apocalypse by living in the river. But I felt I should report the results of my tests.

  1. You can always surface for a bit to eat. Breaks immersion a bit but them’s the breaks.
  2. You get colder faster when wet, the game doesn’t take into account that the water that’s not frozen is probably not cold enough to cause frostbite.
  3. You’ll have to show me a screenshot or something, I can’t glean anything from that.

Constructions underwater should be a simple matter of making the proper construction recipes/items. I believe it is possible via JSON.

Underwater content is not really being worked on; so is practically non-existant.

Wetness causes a reduction in clothing warmth, which by itself causes frostbite, but it also increases frostbite directly.

There probably should be a line of temperature resistance mutations that fish (and cephs and bears) should get.

A lot of it is waiting on z-levels. Right now underwater is in this strange sort of scenario where you aren’t actually on a different level, you’re just “under” the current one (but still on it) and makes things really weird. Once we have z-levels in we should hopefully be able to get actual depth to our water, and from that actual space to do a lot more underwater stuff.

If I put this in mutations.json - would this allow one to take/gain a mutation ‘like’ the bio_climate bionic? The idea would be to kinda just mod/dirty-hack in a quick temperature fix.

{
“type” : “mutation”,
“id” : “bio_climate"
name” : “Aquatic Temperature Adaptation”
“points” : 3,
“visibility” : 0
"ugliness" : 0
"Description" : "Your internal biology has adapted to the effects of living underwater. This eases the effects of high and low ambient temperatures.“
category” : [“MUTCAT_FISH”],
“category” : [“MUTCAT_CEPHALOPOD”],
“prereqs” : [“GILLS”],
},

The things I couldn’t figure out from the .json

  1. How to put an OR statement in for the prereqs. (the psuedocode would be “prepreqs GILLS OR prereqs GILLS_CEPH”) Sorry, its been too long.

  2. Since I’m unclear on exactly how the variables for the ids work, I’m not sure if the ‘id’ is just pointing to an effect, and whether or not I can ‘reuse’ that effect to create a new mutation. If so, .json modding for mutations is easy enough I’m ashamed I havn’t been doing it already.

Obviously the above is kinda dirty and would have problems, I just want to see if I can, in fact, actually do that.

  1. Prereqs are automatically an OR statement. Right now you can only have one AND by using “prereq2” IIRC.
  2. Nope, the id is the unique identifier that is used to point to that mutation (or bionic, or item, or whatever). For an actual new mutation effect you’d need to dive into the code at the moment. IIRC we have the ability for you to make mutations that influence your stats from scratch in the JSON files right now, but pretty much everything else will require you to compile your own version.

i2amroy has it right. (threshreq is also an AND, but you shouldn’t be using that for non-threshold mutations anyway.)