Bay 12 Games Forum

Please login or register.

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

Author Topic: subservient unintelligent subcaste for playable race problems  (Read 3978 times)

Max White

  • Bay Watcher
  • Still not hollowed!
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #15 on: April 30, 2010, 01:43:29 am »

Maybe, but still, its one of those things I would like to think are a temporary fix until he can make it work, rather then just being swept under the rug and forgotten about.

Dwarf fortress is a massive game and there are countless little features to be attended to. Toady does a good job taking care of both the masses and the modders, but that doesn't mean I have to like it.  :P

Grimlocke

  • Bay Watcher
  • *kobold noises*
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #16 on: April 30, 2010, 11:26:48 am »

Quote from: derigo
You are not having migrants arriving tamed.  By adding the COMMON_DOMESTIC tag to the creature, you have added it to the pool of creatures than can tag along with your migrants when they arrive.  Like how cows and horses and whatnot come with migrants?  Same thing.  They're not migrants, they're pets.  I added that tag because the drones don't breed by themselves and I wanted the dwarves to have lots of access to them.
Wrong, you shouldnt state thing as certain without having confirmed them. My own mods slave dwarves wouldnt stop migrating unless I set the other castes pop_ratio to 10000. The slave migrants arrived with profession names like clothier, but without any skills. They also didnt have the 'urists pet' thing, but did have a name.

Perhaps its due to your creatures not having can_speak. If they cant do any labours they probabaly wont try to migrate with any.
Logged
I make Grimlocke's History & Realism Mods. Its got poleaxes, sturdy joints and bloomeries. Now compatible with DF Revised!

derigo

  • Bay Watcher
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #17 on: April 30, 2010, 07:14:10 pm »

You're misunderstanding me.  First of all here's a quote from the documentation of COMMON_DOMESTIC

Quote
COMMON_DOMESTIC        Allows the creature to be brought with immigrants and when creating a new fortress, as long as the creature also includes at least one of the following tokens: PET, PACK_ANIMAL, WAGON_PULLER, MOUNT. In addition, the creature must be NATURAL rather than FANCIFUL

The common domestic tag on your caste causes 3 things to happen:
1) The creature becomes available on embark as a pet.
2) (stray) nameless unowned animal version of the creature will show up along with migrants.
3) named owned pet animal versions of the creature will show up along with migrants

This is all assuming the creature also doesn't have something like the [EVIL] tag and your race entity lacks the USE_EVIL_ANIMALS tag.
In none of these cases are they actual migrants.  They are stray animals, or pets.  They will not perform any labors (unless having CAN_LEARN changes that, I don't know), they will just mill around in meeting halls with the other animals and do nothing.  In 40d, 3 was common, 2 was rare.  In df2010, 2 is common and 3 is rare. Most animals now arrive (stray).

However, because the creature in question is a subcaste of your race, you will ALSO get migrants versions of them.  These will have names,  and they WILL perform labors, and they will show up with random labors enabled.  If they don't have CAN_LEARN, or if they do but also have SLOW_LEARNER, I think you'll see the behavior of them arriving with job titles and labors enabled but without any skills(the slow learner tag has a very powerful effect). 

The POP_RATIO tag is just a weighted birthrate, the default is 1.  If you set the pop ratio of males to females as 1 and 10 respectively, it means 1 in every 10 dwarves will be male, the rest female.
The pop ratio you describe set the birthrate to something like 1 out of every 20000 dwarves born will be a 'slave caste,' the rest split evenly as normal male or normal female.  This means any babies or immigrants have an extremely low (but not non-existant) chance to be created as 'slave caste.'  Your anecdotal evidence also implies that it DOES affect how often the creatures will show up as COMMON_DOMESTIC pets or strays along with migrants, which is interesting and undocumented.  At the same time, it has no effect whatsoever on the embark ability to buy the creature, you can purchase however many of them you want. 


For my race, I wasn't intending to play as Gorlocks, I just made them playable to test them out a bit.  I wanted to be dwarves and have access to gorlock slaves.  So:
1) I made them COMMON_DOMESTIC so they would be available on embark and come as animals with migrant dwarves.
2) I made them MALE so they wouldn't breed in my fort, but would still contribute to the breeding population of the race as a whole in world-gen.
3)I made them not have CAN_LEARN, so they could be milked
4) I made them not have CAN_SPEAK, because I don't know what effect it would have (you say it prevents butchering, ok)
5) I was more interested in them being able to be milked/butchered than in them being able to perform labors, so I didn't mess around with the CAN_LEARN tag to see if it was possible.

While I was testing all of this by playing as Gorlocks, I did notice one inconsistency.  (stray) gorlocks could be butchered and milked, but NOT put in cages.  The game still considered them enough of the playable race that I couldn't put them in cages like a normal animal.
Logged

darkflagrance

  • Bay Watcher
  • Carry on, carry on
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #18 on: April 30, 2010, 08:56:33 pm »

Do Gorlock slaves treated as pets (not civ members) eat or drink?
Logged
...as if nothing really matters...
   
The Legend of Tholtig Cryptbrain: 8000 dead elves and a cyclops

Tired of going decades without goblin sieges? Try The Fortress Defense Mod

derigo

  • Bay Watcher
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #19 on: April 30, 2010, 09:39:58 pm »

No.
Logged

Grimlocke

  • Bay Watcher
  • *kobold noises*
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #20 on: April 30, 2010, 11:40:33 pm »

Quote
However, because the creature in question is a subcaste of your race, you will ALSO get migrants versions of them.  These will have names,  and they WILL perform labors, and they will show up with random labors enabled.  If they don't have CAN_LEARN, or if they do but also have SLOW_LEARNER, I think you'll see the behavior of them arriving with job titles and labors enabled but without any skills(the slow learner tag has a very powerful effect). 
Your contradicting you earlier post, but its interesting nontheless that migrant creatures that dont migrate as a pet will do labour without can_lean and can_speak. And, did you actualy confirm that last part?

Quote
The POP_RATIO tag is just a weighted birthrate, the default is 1.  If you set the pop ratio of males to females as 1 and 10 respectively, it means 1 in every 10 dwarves will be male, the rest female.
The pop ratio you describe set the birthrate to something like 1 out of every 20000 dwarves born will be a 'slave caste,' the rest split evenly as normal male or normal female.  This means any babies or immigrants have an extremely low (but not non-existant) chance to be created as 'slave caste.'  Your anecdotal evidence also implies that it DOES affect how often the creatures will show up as COMMON_DOMESTIC pets or strays along with migrants, which is interesting and undocumented.  At the same time, it has no effect whatsoever on the embark ability to buy the creature, you can purchase however many of them you want.
Though im not sure who your explaining population ratio to, that last part was my exact intention. I wanted to prevent slaves from being part of migrant and embark groups (never minding the 1/10000th chance of a slave showing up anyway). I kept them as a caste because creatures that arnt that had problems like refusing to labour, including drinking and eating.

And im pretty sure Toady stated that population ratio involves migration as well in one DF talk. Not sure which one.

Quote
4) I made them not have CAN_SPEAK, because I don't know what effect it would have (you say it prevents butchering, ok)
More precisely, it enables all creatures (including stray ones) to labour, thus overriding the ability to butcher them. Training them as either a hunting or war animal makes them butcherable again.


All in all this was a rather interesting thread. Might make a useful guide for the wiki if anyone wants to make one.
Logged
I make Grimlocke's History & Realism Mods. Its got poleaxes, sturdy joints and bloomeries. Now compatible with DF Revised!

derigo

  • Bay Watcher
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #21 on: May 01, 2010, 12:47:17 am »

Ok I've tested extensively various tag combinations and found some _very_ interesting results.  They're confusing as hell, almost self contradictory.

Ok all of this is ignoring the CAN_SPEAK tags:

Citizen slaves (non-pet, non-stray, members of a subcaste your own race), can perform jobs regardless of anything else.  If given [CAN_LEARN] they can gain skill in the jobs.  The PET or EXOTIC PET tag prevent the jobs menu from being available (its replaced with the option to butcher).  Citizen slaves cannot be butchered through the z-animals menu (it says 'Not Tame'), but they CAN be butchered by selecting them and toggling the 'ready to be slaughtered'.   Butchering behavior is determined entirely by the PET or PET_EXOTIC tags, INTELLIGENT has no effect on this.  Without CAN_LEARN, the slaves have no good or bad thoughts, or preferences.  CAN_LEARN also prevents milking.   Immigrants will come with random skills activated.  If they have CAN_LEARN they will actually have skill in those skills, otherwise they can't learn and have no skill.

'Domestic' slaves(pets or strays) can not under any circumstances perform any jobs.  They are strictly treated as animals in all ways.  The [CAN_LEARN] or [INTELLIGENT] tags DO give them the ability to gain skills, so they can probably learn to fight a little bit by attacking invaders, and they gain social skills.  However, CAN_LEARN prevents milking.   If they are a subcaste of your own race, you can't seem to put them in cages or chains.  If they are of a different race, they go into cages normally.  This state of existence is impossible without the PET or EXOTIC_PET tags. 

All of that is well and good.  But as grimlocke says, the combination of PET_EXOTIC and CAN SPEAK has other effects.  CAN_SPEAK does absolutely nothing on its own, I tested it exhaustively.  Creatures can even gain social skills without it, if they CAN_LEARN.  PET_EXOTIC functions exactly like PET in all ways, except for the noble restriction.  But if you combine the two together, you get something completely different:

All of the sudden, you have access to the jobs screen.  Butchering is completely impossible.  If the slaves are your own race,Both domestic and citizen slaves WILL do jobs, they can even be drafted into the military!  CAN_LEARN is totally unnecessary for any of this, although without it, the creatures still can't gain skills.  Milking still works so long as you don't have the CAN_LEARN tag.  Even without CAN_LEARN, the both kinds of slaves now have thoughts and preferences.  In my current game, it won't let me assign slaves of either type to noble positions. 

Whats even wierder:  If the slaves are not of your own race, they STILL have access to the job screen.  I had Gorlock slaves in a Dwarf fortress, and I could edit their jobs.  Unfortunately, testing shows they can't actually perform jobs (I got really excited for a minute when I first saw that). 

This behavior of the combo of CAN_SPEAK and EXOTIC_PET is totally undocumented, and possibly a bug.  But it sure is fun!

I tested the combination with different races last, so I'm going to throw some more tags around and see if its possible to make tame slaves of another race actually perform jobs. 


Logged

derigo

  • Bay Watcher
    • View Profile
Re: subservient unintelligent subcaste for playable race problems
« Reply #22 on: May 01, 2010, 12:55:49 am »

Yea.. no.  Unless some other random tag spontaneously enables it, creatures of another race can't perform jobs in your fort, even if you use this magic tag combo to enable their job list.  They behave completely differently.  Their job displays as 'Tame' like any other animal, rather than 'No Job' like the same race slaves.
Logged
Pages: 1 [2]