Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Closing Caverns  (Read 1618 times)

Maikcollos

  • Bay Watcher
    • View Profile
Closing Caverns
« on: January 19, 2018, 04:56:56 am »

Does it affect creatures entering my caverns if I close every opening to the cavern except one side per floor which is armored with cage traps?
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #1 on: January 19, 2018, 07:16:52 am »

As long as there are critters that can enter, they should continue to do so even if you restrict possible entrance to a single entrance.

I typically block off all sides with one entrance per side open that's one tile thick with a wall outside of that (and a wall above, if it's higher than one Z level. These entrances are then connected to airlock with cage traps in them (plus a door bait for building destroyers), and I build repeating spike traps as needed to eliminate FBs.

One issue with a single opening per cavern is if your embark has a savage, as savage biomes allow two critter groups to be on the map at the same time, and a single opening means they all enter at the same place, which may result in more fighting and dead critter pieces than you want.
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #2 on: January 19, 2018, 12:13:52 pm »

I've been wondering this exact thing!

So monster spawning isn't a function of open edge tiles at all? That is really good to know. I was always hesitant to slow down the meat farm!
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #3 on: January 19, 2018, 02:06:14 pm »

No.

Each level (surface, each of the caverns) supports one critter group at a time (two with savage biomes. I don't know if that applies to the magma sea or not. The circus follows rules as well
Spoiler (click to show/hide)
). Campers take up one critter group spot for that level, thus blocking spawning. It can be noted that critter that are wild and "free" within an enclosed area act as one critter group (cages don't count), so if you e.g. have a yeti breeding program, the yetis will block one critter group on the surface (Yeti's can't be tamed, so the only way to breed them is to have them in free range captivity).
This behavior can be exploited to block cavern levels from spawning new critters so your wall builders can work in relative safety (but FBs do not belong to critter groups: they arrive when they feel like it...).
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #4 on: January 19, 2018, 05:30:42 pm »

Thank you.

That is a really cool thing to get confirmation on. Makes sense now that I think about observed spawning mechanics in caverns: killing one group to trigger the next.

I've also tried, unsuccessfully, to figure out if a species can go extinct. Maybe they get killed off during history gen? Do you know anything about that?

I've spent ~20 years waiting for some Jabberers to capture to no avail. 
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #5 on: January 20, 2018, 05:07:08 am »

Creatures (and plants) are generated for regions, and only a random set of those legal to the biome(s) in the region are actually present, for a start, with numbers for the populations (except vermin and plants, which are innumerable. In addition to that an embark gets generated with a list of creatures (and plants, again) drawn from a 7 * 7 world tile area centered on the embark's world tile each entry in this list also has numbers associated to it. This list is what the DFHack command region-pops uses.
What you actually get in your embark depends on what's available in the regions present in your embark, which is a subset of the 7 * 7 list. I don't know if DF allows migration from one region to another when both regions support the species and have it selected as available (if both of these conditions aren't met migration should not occur).
Each cavern level has its own set of regions, and those region boundaries have the same shape as the surface ones on the in game tile level (the 2 * 2 meter tiles), but the world tile association of regions aren't the same for the surface and each cavern: they're all different.
You can drive species to local extinction, which seems to be a particular problem for glaciers and yetis, as glaciers have rather few species, so all critters arriving are drawn from a rather small pool of species with limited numbers.

I don't know if species go extinct during world gen: they're most probably not allocated to the region in the first place.

End of rambling...
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #6 on: January 20, 2018, 04:42:58 pm »

That was an excellent post thank you!

I had never noticed the region pop command. It looks like I can verify what the situation is and even boost their numbers if need be. That is fantastic news.
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #7 on: January 21, 2018, 08:56:13 pm »

End of rambling...

So region-pops confirmed a complete lack of Jabberers which seems to prevent me from adding to their numbers. Both the "incr" and "boost" functions return "unknown population token" which was my fear.

I'm looking into a way to force them into existence in the world raws. Am I barking up the wrong tree? Is there any way to establish a population at this point?
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #8 on: January 22, 2018, 04:57:23 am »

Within the existing world and embark? Difficult at best, I'd say.

If I were to try to do it, I would:
- Add them to the appropriate cavern biomes. That's reasonably easy to do using the Biome Manipulator. That's definitely not sufficient, though, and it might not even be required.
- Hack the data structure where the 7 * 7 world tile plant/creature data is stored to REPLACE a creature present with the desired one for the locations corresponding to the world tiles+caverns under manipulation.

I haven't done any hacking for animals. For plants I've managed to add grasses (which, oddly enough, seem to be placed in their own little data structure, with no corresponding structures for other plants found), but haven't been able to add any plants, while replacement has worked. I only tried hacking the surface, though. This was done a fair while ago, so my memory is a bit fuzzy (which might not require that much time...).
Logged

Sarmatian123

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #9 on: January 22, 2018, 05:30:19 am »

I think introducing your own species into biomes, like alpacas, would solve this issue. However, how do you make domesticate alpacas to roam surface area in a semi-wild fashion? If you put pasture, then animals will go out from it (vultures? bird of prey?, you need to roof it too it seems, so say good bye to trees) and force Dwarves to perform useless "pasture animal" job. Maybe, if you wall every big pasture leaving a single door in it (+ roof maybe?). However with every 1000 quartz blocks you put in, the fps will go further and further down. More animals will cause same effect. Overgrazing will come slowly into play and there is no location for pastures, so you could redefine some auto-butcher jobs on pastures. Anyhow wild life will chew still on your fps and you can always start your own alpacas farming to get more tanned skins. I found that when you put wall 6 tiles away from edge of the map, all around your embark, suddenly for some unknown reason your fps drops drastically. Animal pathing issues?
Logged

FantasticDorf

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #10 on: January 22, 2018, 08:04:46 am »

I think introducing your own species into biomes, like alpacas, would solve this issue.

You can't im afraid, [COMMON_DOMESTIC] creatures live entirely within the civilisation entity and hence once domesticated (you can tame wild camels who are [COMMON_DOMESTIC] but they already exist in a wild biome) can't re-enter map populations or start new populations. I tried experimenting with ejecting domestic pigs past the map border by throwing them with bridges, but unfortunately that failed with horribly messy results.

Like aboveground biomes, you can if you're willing to use a exploit block off 1 z high cavern entrances entirely with bridges to narrow down the number of valid entry points into your map, it wont stop creatures in entrances with space above your bridge from flying in instead.

You can also artifically increase the number of monsters in the wild also by breeding live-birth wild creatures on a chain by putting males & females on restraints near each other and letting the children migrate off the map. A notable example for doing this are to increase the population of yeti's which are generally very rare and valuable creature who are also immortal so can breed indefinitely.
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #11 on: January 22, 2018, 02:18:13 pm »

- Hack the data structure where the 7 * 7 world tile plant/creature data is stored to REPLACE a creature present with the desired one for the locations corresponding to the world tiles+caverns under manipulation.

Is there a guide for dummies on this? I'm doing some googling but my knowledge of this stuff is mostly limited to simple edits to raw files. I'm not even 100% sure what I'm googling for tbh

also, thanks again for the replies!
Logged

martinuzz

  • Bay Watcher
  • High dwarf
    • View Profile
Re: Closing Caverns
« Reply #12 on: January 22, 2018, 02:35:41 pm »

I believe you can see which animals will spawn on your map without using DFHack, by going into you (z)>>animals>>overall training screen. If I am not mistaken, this will only show the animals domesticated by your civ, plus those that can spawn on your map.
Logged
Friendly and polite reminder for optimists: Hope is a finite resource

We can ­disagree and still love each other, ­unless your disagreement is rooted in my oppression and denial of my humanity and right to exist - James Baldwin

http://www.bay12forums.com/smf/index.php?topic=73719.msg1830479#msg1830479

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Closing Caverns
« Reply #13 on: January 22, 2018, 04:48:59 pm »

- Hack the data structure where the 7 * 7 world tile plant/creature data is stored to REPLACE a creature present with the desired one for the locations corresponding to the world tiles+caverns under manipulation.

Is there a guide for dummies on this? I'm doing some googling but my knowledge of this stuff is mostly limited to simple edits to raw files. I'm not even 100% sure what I'm googling for tbh

also, thanks again for the replies!

No there's definitely no guide, as it's a bit removed from what's done "normally". That's what I did when investigating it to try to find out how it works, and I don't know what others have done earlier (the structures are mapped, after all, and region-pops exists, so I definitely had a starting point). It's a matter of writing temporary scripts to run (to find info and where it's located), and use gui/gm-editor to change things (and find what to change/look for with the scripts).

I'm not sure, but I think the animal training list simply lists domestic animals and those your civ has training knowledge in, with new ones being added as you capture them, or possibly as you have had your first training session with them (and thus gained the first piece of knowledge).
Logged

smithist

  • Bay Watcher
  • ~freakish wriggling~
    • View Profile
Re: Closing Caverns
« Reply #14 on: January 22, 2018, 05:20:50 pm »

Hmm. I'll copy the world folder and futz around a little I guess. Not sure about the training knowledge but either way I've confirmed they won't spawn.

I have some other war animal prospects I suppose. I've just always liked Jabs and appreciate that they can be fully domesticated. I didn't even think to look into this until recently and I've gotten fairly attached to my current embark. oh well

thanks PatrikLundell
Logged
Pages: [1] 2