Bay 12 Games Forum

Please login or register.

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

Author Topic: Fortress Roundable feedback on 'The Centaur Problem'  (Read 5616 times)

voliol

  • Bay Watcher
    • View Profile
    • Website
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #15 on: February 13, 2021, 11:57:03 am »

The topic has sprung up again in the latest DF Talk (#28) and also an interview with Blind, so why not revive this topic? I discovered this planned reply in a .txt file, sitting there since last year (and then added to it now). I'll start with it.



The "centaur problem" seems like a heap of semi-related problems. Let's try to list them.

Major subproblem I: Combining body parts

This is why the problem should perhaps be more aptly named "the combining-body-parts problem". Why? Because not only should the system be able to generate centaur(id)s, but also other beastly hybrids e.g. griffons and chimaeras, frankenstein's monster-oid "constructed" creatures, and support magic that turn your intestines into frogs (from DF talk #7, though this might be an edge case). Considering this, we have a few issues to solve:

  • How to combine body parts, in the raws. It is already possible to create creatures like centaurs and griffons using custom body parts, but this is not what we want. There should be a raw method for combining the bodies of creatures, using those already defined in the raws. Without this working, everything else falls. Preferably, a mold of sorts should be able to be used by the game to generate/modify creatures on the fly, so you don't have to define every single *taur separately. Animal people and giant animals use creature variations for a similar (but not applicable) effect, but every animal person/giant animal needs to be defined separately, which is a hassle.
  • How to deal with the "central" body part. Currently, all creatures have a body parts that acts as the origin for all other body parts, be it directly or indirectly. Ordinarily, this body part is the "upper body" or just the "body". Some combined creatures, such as centaurs, would end up with two central body parts, unless one of these loses their "central" status. This is a problem, as a creature instantly dies when their central body part is severed. They also need their own names, as aiming for a centaur's "upper body" has double meanings.
  • How to size body parts. Should the human anterior of a rhinotaur be the same size as the human anterior of a centaur? I believe humans have a feeling for what is the "right" size for things to be, but this gut feeling might not be too easy for the program to guess. A normal dove's head atop a human's shoulders would seem ridiculously undersized to most humans, but none would assume the horse parts of a centaur to have the same mass as the human legs they replaced.
  • How to deal with body parts sharing the same ID/name. E.g. Chimaera will sometimes have multiple body parts with the same body part ID and/or name, like multiple heads originally called just "HEAD"/"head". Another example is the two upper bodies of a centaur, or extra arms sewn to a constructed creature.
  • How to deal with materials and tissues sharing the same ID/name. Similar to the previous one, but with the alternative to merge the conflicting materials/tissues. Basically, whether a centaur has human skin and horse skin, or simply centaur skin.
  • Whether to include internal organs. There is little precedence in classic art and literature (I believe) whether centaurs have two full sets of internal organs. However, the game has to deal with this in some way. Depending on the way the combining works in the first place, internal organs might either be included or excluded initially, with additional definitions to either add or remove them.
  • Making sure required organs are included. Mostly an issue with weird modded bodies, but it needs to be considered so that no creature ends up with no body part to house a thought organ, without having [NO_THOUGHT_CENTER_FOR_MOVEMENT].
  • How to deal with multiple heads. Does each head have a mind of its own, or do they share a single one, like the current hydras? Both options seem pretty safe when it comes to meeting expectations of how the creature is supposed to act, so that can be chosen pretty arbitrarily. The problem lies in how multiple minds are to share one body, do they partition the non-head body parts etc.
  • How to dress combined creatures. In reality, this is a broader problem that needs to be solved for all non-humanoid creatures. Basically, the issue of centaur pants. And snakeman pants. And whether a three-armed dwarf can wear a normal chestplate. Note this one is not strictly necessary if the others are done right, but if excluded it might lead to inintuitive armor coverage.

Major subproblem II: Combining behavior

This is why "the centaur problem" is still a relevant name. When combining creatures, and generating magical ones from those directly described in the raws, how does this affect their behavior? Centaurs, being the combination of a sapient omnivore creating civilizations (human) and a non-sapient herbivorous beast (horse), are one of the most apt examples for this, their very existance forms a paradox. When combining behavior, that is any tokens that are not strictly related to the creature's bodily composition, we have these issues:

  • How to deal with diets. Technically, diets are not fully implemented into Dwarf Fortress. Obligate carnivores are in, and so are grazers. But a muskox man will eat a +cat roast+ as eagerly as a garden cress one. But with combined creatures this is still relevant, if not only for a future-proofing. Does a centaur eat grass due to its horse parts? Or a mixed diet for its human stomach and teeth? The SPECIFIC_FOOD token complicates the issue further.
  • How to deal with aggressivity. Probably tied to diets, as a predator can't be BENIGN with the way that token currently works. There are plenty of aggressive herbivores in real life though, like the hippo, so more than one factor must be considered. The reason for the creature's existence is also important here; a forgotten beast, or other evil creature/monster created through this process will be aggressive no matter what.
  • How to deal with the combination of aquatic and terrestial, and other contradictory biomes. Basically, should merfolk be aquatic, amphibious or even terrestial? What about reverse merfolk with fishy heads? It could be argued that this can be solved by looking at the body-parts available for transportation, a merperson should not appear on dry land because it does not have legs, while reverse merfolk are allowed. But what about a foul experiment that results in a shark-tailed being? Or a spell cast upon a fish giving it legs (but not lungs)? More broadly, this applies to all kinds of magic biomes, like the combination of acreature that can only survive in fire and something else.
  • How to do gait speeds. A centaur is obviously as fast as a horse, but is a cheetah person any faster than a human, having a mostly-human body? At times gait speeds must be those of one creature, in other cases it is more undefined.
  • How to deal with intelligence/sapience. Real life has it that intelligence lies in the head, but mythology and fantasy denies this with animal-headed people, and human-faced beasts such as the manticore. Creatures with entire human torsos (centaurs, merfolk), always seem to be sapient in myths; bestial centaurs personally strike me as odd. Conversely, creatures with no grasp body parts shouldn't found civilizations they can't uphold in practice. Perhaps this should be a setting in the aforementioned molds.
  • How to deal with multiple heads+minds. If a creature has a mind for each head and its heads are different, are the minds of these heads also different? Does the ram, lion and serpent heads of a manticore (with a split mind) all act/think like the base species they come from, or does it have three manticore heads, all thinking like a manticore?

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #16 on: February 13, 2021, 09:41:13 pm »

Amusingly, this was something we covered when we were making the nagas mod...

Spoiler: "anatomy image" (click to show/hide)
(Image not mine, and I didn't actually go with that exact layout.)

Somewhat similar to the previous description given by JesterHell, multiple hearts and a secondary lung are needed.  It's worth noting that even normal, real-life snakes need a secondary heart.

One of the things I changed, however, was the position of some organs, including having kidneys and bladder in the "human part"/upper half.  Bladders only need to be near the kidneys, and it's only for the convenience of only needing one hole in the rear that a cloaca would develop, so if you want to spread organs out, you can.  I'm no biologist, but having the kidneys closer to the main heart and lungs and areas of most blood flow has a good chance of being biologically useful.  (Putting reproductive organs on the human parts also helps avoid some "beastiality" claims from what TVTropes calls The Mermaid Problem.)

Dwarf Fortress can make things easier because the tissue templates already scale organs to the overall size of the body and to certain body parts (although this can have negative impacts in some regards, as small parts like fingers have thinner skin than large parts like torsos, as thickness is based upon total width of body parts), so a very large humanoid has proportionally large organs.  That said, if you have something like a drider, the human portion's lungs aren't going to be enough, as already mentioned.  (And if you take the body plan of a real spider for a drider, then you have tremendous problems, as exoskeletons won't work for a creature of that size, and many spiders have no lungs at all, relying upon airholes in the exoskeleton and the lymph system.)

DF tends not to be realistic with the biologies of its fantasy creatures (hence Bronze Colossus), but if realism is the goal, here, we need to make creatures of different sizes have body plans based upon size more than upon the chimeric creatures they are supposedly made from.  I'd explain in detail, but Kurzgegat did it for me, and with animations.  Square-cube law also dictates the thickness bones need to be, as the mass of a creature is cubed as you double all the dimensions of a creature, and yet the bones that support the creature only quadruple in thickness, meaning that twice as much strain is placed on the bones.  Those thick, tree trunk-like legs of an elephant are basically all bone, and from there, if you somehow want to make an even larger creature, there is nothing you can do besides make the bones even more ridiculously thick.

What this means in practical terms is that it might work best to do like the procedural demons - start with a size, then have some optional parts that can mix-and-match to add variety.  Hence, if we have a system where we presume the split between one animal and another takes place at the divide between upper and lower torso, you just presume all functions of a certain kind (like having heart and lungs) are taken care of by the upper torso, while if a lower body has special needs (like a very long snake-like body needing a secondary heart), that can be added in by that particular lower torso.  You might have special biped versions or quad- or octo-ped versions of the same types, and have descriptions that just say this quadruped is more like a tiger and that one is more like a horse.  The upper torso might have different numbers of arms or added wings, but have a set number of functions it has to perform like have a heart or have an excuse for not having a heart (like being living stone), instead.  (Granted, this can also result in a horse-taur that has the head of a horse and the lower body of a horse... yet still have a human torso upper body.)

That said, one thing to keep in mind is that I don't think that DF cares about organ sizes right now in any way other than how easy it is to hit them.  Dwarves have larger livers in DF as a half-joke for all the alcohol they consume, but most organs don't have a function tied to their size, and many organs lack any function at all.  (Spleens can be torn out with impunity, for example, nevermind having a small one having no impact.  In fact, years ago, I remember that your heart being damaged would only kill you from blood loss, not cardiac arrest.  I don't know if this has been changed by now.  Hence, having an organ too small for your body is almost certainly not something DF considers when assessing the health of creatures.)

Also, one thing I think is worth keeping in mind is that legends of the unicorn aren't just horses with spiral horns like popular culture shows them today.  They had a body of a horse, a tail like a donkey, feet like an elephant, and a curved horn.  Some scholars think this was actually referring to the rhinoceros, and people just used descriptors of parts being shaped like other animals to paint a picture of overall body shapes before some people started treating it like it was a chimera.  Especially if we're going for a more realistic "evolved" (rather than magical Frankensteining done by the gods) tauric creature, simply slapping parts from random creatures together makes a lot less sense than just having new creatures that have parts that copy the same function or vague shape of other animals' body parts, but if one part is a zebra, and another part is like a gorilla, it makes more sense to either have stripes throughout the whole body or no stripes at all, as partial stripes isn't as advantageous.
« Last Edit: February 13, 2021, 09:51:15 pm by NW_Kohaku »
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #17 on: February 14, 2021, 07:46:32 am »

To be blunt the problem with internal organs stems from trying to reconcile absolute anatomical nonsense such as a centaur with reality. The result is a clusterfuck. I would merely sidestep the issue completely by not even making something as nonsensical as a centaur or w/e.

The "anatomy image" posted above by NW_Kohaku does work to an extent, but i'd go even a step further by getting rid of the pitiful "anterior" human organs completely and stretching forward the more effective "posterior" snake organs into the human part of the body. The ribcage might have to be broadened a bit to accommodate it. Then again, Naga made by me wouldn't look anything like the typical human upper/snake lower body setup.

The point is, the problems are with what defines the centaurs: Having a hard edge between the human and the horse. It is a problem with no solution, at least not one that makes any sense or stands up to any scrutiny.

I think this extends to the "centaur problem" as a whole. with how such abominations act and all that, in that it can't be decided whether fantasy where the being's behaviour is disconnected from what they are physically. Or reality where biology largely determines behaviour, is desired.

Thus my solution to the centaur problem would be to make sure parts get only replaced, with analogous ones, or at least along a functionally equivalent line, such as the Upperbody/lowerbody one. No fcking centaurs allowed. Hilariously, a human upper body on a horse lower body, with some adjustments, makes fifty thousand times more sense to me than centaurs.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

FantasticDorf

  • Bay Watcher
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #18 on: February 14, 2021, 07:53:19 am »

Thus my solution to the centaur problem would be to make sure parts get only replaced, with analogous ones, or at least along a functionally equivalent line, such as the Upperbody/lowerbody one. No fcking centaurs allowed. Hilariously, a human upper body on a horse lower body, with some adjustments, makes fifty thousand times more sense to me than centaurs.

So, add the upright human with cloven horse legs at the start like a satyr, then add a body structure behind them as a extension of the spine featuring the back legs? Kind of means centaurs would have two sets of lower bodies & hips.
Logged

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #19 on: February 14, 2021, 07:57:29 am »

Thus my solution to the centaur problem would be to make sure parts get only replaced, with analogous ones, or at least along a functionally equivalent line, such as the Upperbody/lowerbody one. No fcking centaurs allowed. Hilariously, a human upper body on a horse lower body, with some adjustments, makes fifty thousand times more sense to me than centaurs.


So, add the upright human with cloven horse legs at the start like a satyr, then add a body structure behind them as a extension of the spine featuring the back legs? Kind of means centaurs would have two sets of lower bodies & hips.

No, i meant you stop right here
Quote from: FantasticDorf link=topic=175335.msg8248450#msg8248450
add the upright human with cloven horse legs at the start like a satyr
but its instead an actual horse lower body, instead of an anthropomorphized one.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

voliol

  • Bay Watcher
    • View Profile
    • Website
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #20 on: February 14, 2021, 11:18:49 am »

In DF Talk #28 Toady describes the centaur problem as "taking any piece of anything and slapping it on something else" (~38 minutes in). Him calling it the centaur problem and also having centaurs in the raws as fanciful creatures implies centaurs are planned already, being halted by hows rather than ifs. With all due respect Strik3r, I don't think it's an option to avoid the problem by restricting it to analogous body parts.

I suppose low-magic worlds could still have a need for realistic creatures, if they are allowed to have generated ones.

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #21 on: February 14, 2021, 11:41:43 am »

And the how of it is: There is no way. Considering that the centaur problem has existed longer than i've KNOWN[1] about DF, with no one ever having found a solution. Ergo, i am forced to conclude that there is no solution, and trying to find one is a fool's errand.

The only idea that i can come up with off the top of my head is to make a creature's properties more dependent on it's body parts. so for example, a claw attack instead of being defined in the creature file, is defined in a reworked body defs file, on the clawed arm def or something itself. Then also have a robust tagging system for bodyparts and some way of defining how tagged bodyparts interact with one another in a creature (I.E. What gets deleted, what connected to what) or something, basically something that approaches scripting, just to create working creatures in a way that doesn't create nonfunctional creatures if hybridized.

However, this creates just as many problems as it solves.

Then of course, you still haven't solved any of the other problems, such as centaurs' organs.

(1) I lurked DF forums for years before creating an account.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #22 on: February 14, 2021, 03:11:07 pm »

Doing something like having two lungs, but having the lungs be larger (maybe taking up the whole human part of a centaur) would make sense, as the lungs should be relatively close to whatever hole the breathing takes place through.  (Throats are vulnerable weak points, after all, so it's best to keep them short.)

That said, there are reasons to have something like a posterior heart, as snakes really do have them, and they're real, not made-up monsters.  It's because a body of a certain length or greater will need a secondary pumping station to keep the blood flowing through a long enough body, relative to the general size.  This may be a problem particular to something like a serpentine body or a body which otherwise has a very long appendage.

Speaking of strange real-life anatomy, the octopus has a sub-brain for each of its tentacles that is coordinated by the main brain.  These sub-brains can independently control the tentacle they are chained to, needing only vague direction from the main brain.  They also control reflexive camouflage changing.  I don't believe that it would necessarily be something that would go in DF, even if we had a "Scylla"-type creature (it would take new rules that mean sub-brains being crushed don't cause death), but it just goes to show that having extra organs in oddball body configurations is definitely something that will happen in nature whenever there is a reason to deviate from the basic quadruped body plan.

When it comes to centaurs specifically, it's also worth asking how large the human torso is in comparison to a normal horse's neck and head.  Horse neck and heads are kinda big compared to people, you know?  If the human torso and head are somewhat small, they basically don't need to be anything but muscle, bone, esophagus, and windpipe, and you don't need to rebalance the animal around a shifted center of mass if the human torso weighs as much as the horse head would.  It might not be a bad idea to shove some lungs into the human torso to make room for a bigger heart, but otherwise, after making the digestive track an omnivore's (or at least, less specialized grass-eater), it would work out.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

Pillbo

  • Bay Watcher
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #23 on: February 14, 2021, 03:40:51 pm »

And the how of it is: There is no way. Considering that the centaur problem has existed longer than i've KNOWN[1] about DF, with no one ever having found a solution. Ergo, i am forced to conclude that there is no solution, and trying to find one is a fool's errand.

Is it really that surprising that we haven't found a solution? None of us are programming the game, we can only theorize. Only Toady can create the solution, so when's the last time he tried? Has he ever tried or has it been put on the backburner since the problem was first identified? Seems to me it's a matter of him addressing the problem and making choices.
Logged

Shonai_Dweller

  • Bay Watcher
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #24 on: February 14, 2021, 04:42:29 pm »

And the how of it is: There is no way. Considering that the centaur problem has existed longer than i've KNOWN[1] about DF, with no one ever having found a solution. Ergo, i am forced to conclude that there is no solution, and trying to find one is a fool's errand.

Is it really that surprising that we haven't found a solution? None of us are programming the game, we can only theorize. Only Toady can create the solution, so when's the last time he tried? Has he ever tried or has it been put on the backburner since the problem was first identified? Seems to me it's a matter of him addressing the problem and making choices.
Yeah, there is no "problem" as such, just decisions Toady needs to make when he comes to implementing it. He frames it as a problem just to point out that it's not as simple as adding "centaur" to the creature raws, rather he wants a standardized system that can mix creatures together in a reasonable manner.
Logged

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #25 on: February 14, 2021, 05:11:22 pm »

And the how of it is: There is no way. Considering that the centaur problem has existed longer than i've KNOWN[1] about DF, with no one ever having found a solution. Ergo, i am forced to conclude that there is no solution, and trying to find one is a fool's errand.

Is it really that surprising that we haven't found a solution? None of us are programming the game, we can only theorize. Only Toady can create the solution, so when's the last time he tried? Has he ever tried or has it been put on the backburner since the problem was first identified? Seems to me it's a matter of him addressing the problem and making choices.
Yeah, there is no "problem" as such, just decisions Toady needs to make when he comes to implementing it. He frames it as a problem just to point out that it's not as simple as adding "centaur" to the creature raws, rather he wants a standardized system that can mix creatures together in a reasonable manner.

Which, coincidentally, is the problem to solve. What is said standardized system? How would it do it's mixing of creatures, again, without spitting out errors and completely non-functional creatures galore? And as you stated, "In a reasonable manner", while resolving every issue outlined in Voilol's post here:
And do so in an extensible manner, where even modded creatures/bodyparts can be used by the system?

So yes, you're right, it's by far not as simple as "add centaur".
And might not even be worth the time to implement.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #26 on: February 14, 2021, 07:05:31 pm »

There are actually two problems being discussed here, and I think they are being confused.

Centaurs as a natural being aren't such a huge issue, because if centaurs were a natural being then they would have a logical body plan for a hexapod vertebrate with a centaur-like exterior, rather than being a literal human torso sewed onto a literal horse torso.  There's no reason for a natural centaur to have multiple hearts, two stomachs, a paradoxical diet, etc, because a natural centaur is not a human stuck onto a horse, it's a creature that just happens to superficially resemble a human stuck onto a horse.  (Actually a praying mantis is kind of like an insectoid centaur already.)  Or they could if you want to!  But this isn't a programming issue, you can make any imagined variant of centaur anatomy already, so it's just a question of preference.

This is not the "Centaur Problem".

The "Centaur Problem" is that DF is supposed to have points where, through wild magic or mad necromantic science, you can literally take two unrelated creatures and Frankenstein them together in arbitrary ways.  These exist already as placeholders - intelligent undead allegedly created through horrific experiments on random creatures, except that right now there is no physical relationship between the being created and the creature it was supposedly created from.  Toady wants it to be possible to chop up two creatures and physically graft bits of one onto another into horrid abominations with entirely new bodyplans, and have them work together.

It's not about defining a centaur in the raws - that's easy.  It's about creating a system where you can have a human and a horse in the raws, and then an in-game wizard can join the two together and create a functioning centaur through procedural logic.  The same system should also let you graft an extra arm onto a humanoid, magically turn someone's guts into frogs or their hand into a spider, and basically create new bodyplans during gameplay.  This is a considerably harder problem from a programming standpoint.

voliol

  • Bay Watcher
    • View Profile
    • Website
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #27 on: February 18, 2021, 01:47:33 pm »

It can be further bisected into:
(1) A body rewrite allowing individuals to have unique body plans, and to stick strange parts onto them as they are already alive (exchanging their hands for spiders etc.)
and
(2) Some way to generate species, using this body rewrite to create bodies composed of parts from multiple species (and then probably make those bodies permanent species definitions as it's easier on storage space than if every centaur has a full copy of their strange body plan).

(1) Is a technical issue best left to Tarn, I think. There's not much need discussing it, or at least I don't think I'm qualified.

For (2) I'm thinking the way to do it is to use some kind of template/molds, as suggested in these two old threads. At first glance it's counterintuitive as you think you want as much variation in the generated creatures as possible, and templates would only restrict that, it's way better for the . But computers don't have human intuition, if allowed to generate body plans in an entirely random fashion most of them will end up as messes with torsos for arms and branching legs, rather than pleasing *taurs or multi-headed beasts. Mathematically, otherworldly body plans are much more common than the sensible ones, especially sensible ones already established in human culture. And we want those, because Dwarf Fortress partially a generic fantasy generator.[1]
Templates also have the upside of being already planned for the random dragon variants, also mentioned in DF Talk #28. It's expanding a system rather than having two separate ones.

These templates could still be pretty generous, like one for any *taur, one for any two-headed species with same-species heads, one for animal-headed giants, and one for gryphon-type beings. Let's take a look at a (sketch of an) example:

Code: [Select]
[OBJECT:CREATURE_GENERATOR]

[CREATURE_GENERATOR:CENTAUR]
[NEW_SUB_BODY:ANTERIOR]             "ANTERIOR" is just the internal name of the "sub-body"
[REQUIRED_BP:BY_TOKEN:UPPERBODY] the anterior can only be a creature with an upper body
[REQUIRED_TOKEN:CAN_LEARN] and it needs to be able to learn

[REMOVE_BP:BY_CATEGORY:BODY_LOWER]  removes the lower body, and all connected parts
[REMOVE_BP:BY_CATEGORY:LEG]
[REMOVE_BP:BY_CATEGORY:LEG_UPPER]   as well as legs, should it have legs connected to the upper body (like a gorlak)

[NEW_SUB_BODY:POSTERIOR]
[REQUIRED_BODY:QUADRUPED]
[ALT_REQUIRED_BODY:QUADRUPED_NECK_FRONT_GRASP] The posterior is any creature with any of these body plans.
[ALT_REQUIRED_BODY:QUADRUPED_NECK]
[ALT_REQUIRED_BODY:QUADRUPED_NECK_HOOF]
[ALT_REQUIRED_BODY:4ARMS_STANCE]
[ALT_REQUIRED_BODY:INSECT]
[ALT_REQUIRED_BODY:SPIDER]
[ALT_REQUIRED_BODY:CRAB_BODY]
[FORBIDDEN_TOKEN:CAN_LEARN] And it shouldn't be able to learn

[REMOVE_BP:BY_CATEGORY:NECK] Removes the necks and neck-less heads of the posterior
[REMOVE_BP:BY_CATEGORY:HEAD]

[SELECT_BP:BY_TOKEN:UPPERBODY] Selects the upper body of the posterior,
[VIS_NAME:middle body:middle bodies] and renames it "middle body"

[CONNECT_SUB_BODIES:ANTERIOR:BY_TOKEN:UPPERBODY:POSTERIOR:BY_TOKEN:UPPERBODY] Connects the anterior by its upper body to the posterior by its upper body

[RESIZE_SUB_BODY:ANTERIOR:BY_RELATIVE_BP_SIZE:ANTERIOR:BY_TOKEN:UPPERBODY:POSTERIOR:BY_TOKEN:UPPERBODY:65]
Resizes the entire anterior so that the upper body of the anterior is 65% the size of the "upper body" of the posterior (the middle body)

[BODY_SIZE_BY_SUB_BODY:POSTERIOR] The size of this generated creature is balanced so the posterior sub-body is as large as the creature it came from.
Of course, pretty much all but the first point of my list from earlier is missing in the example, but I hope the gist of it gets through nonetheless.

[1] Doesn't mean the weird body plans should never be used, but that they should be restricted to genning intentionally nightmarish beings, like experimental abominations and nightmares, or used at high randomness-levels.

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #28 on: February 18, 2021, 05:08:17 pm »

(2) Some way to generate species, using this body rewrite to create bodies composed of parts from multiple species (and then probably make those bodies permanent species definitions as it's easier on storage space than if every centaur has a full copy of their strange body plan).

I have to question if this should be the case.  To take the previous example, if someone was a human that had their hand turned into a spider, and then they had a child (presumably with a bag over their hand or a kinky partner), would their genetic material really be impacted by the spider?

I mean, I know we're dealing with magic here, but even so, there are two ways of looking at this.  First is that the spell is just rearranging organic matter into other organic matter in one localized area, and the rest of the body is still fully human.  This would be no different than an amputee having children - there's no reason "amputee" would be part of their genetics.  The second is that you're fundamentally altering a creature's nature with that magic, and therefore, it actually does become a new species, of a spiderhandman (tm), which then... maybe doesn't have kids because it's a new species with no mates?

While magic can write its own rules, it does tend to follow what the people involved in making it say "feels right", and at least in the case of just transforming a hand into a spider, or guts into frogs, that sort of localized transformation doesn't feel like creating a whole new creature totally different from a human, it feels more like transforming a part of their body into something else while the rest of their body is still human, just with a chunk now missing.

When you talk about transformations that create new species in mythology, it tends to be whole-body transformations.  Arachne was a weaver that was transformed into a spider by the jealous and fickle Artemis for beating her in a weaving contest with a tapestry that showed the gods as jealous and fickle and constantly transforming innocent mortals into animals for petty reasons.  Arachne is then a spider and gave birth to more spiders and possibly is mother of all spiders somehow (although that would require a mate at some point...)  Sleipnir was born after Loki transformed into a mare temporarily to distract a frost giant's stallion because the Norse gods are also total scumlords who wanted to renege on a contract.  While still in mare form, Loki gave birth to the eight-legged horse, but was able to transform back to male humanoid god form after the birth was complete.

Hence, if you're talking about a magic new species, it would seem to still make more sense to have a "natural centaur" if you're going to create a species.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

Maximum Spin

  • Bay Watcher
  • [OPPOSED_TO_LIFE] [GOES_TO_ELEVEN]
    • View Profile
Re: Fortress Roundable feedback on 'The Centaur Problem'
« Reply #29 on: February 18, 2021, 05:50:00 pm »

(2) Some way to generate species, using this body rewrite to create bodies composed of parts from multiple species (and then probably make those bodies permanent species definitions as it's easier on storage space than if every centaur has a full copy of their strange body plan).

I have to question if this should be the case.[...]
If spiderhands is a common magic, it may make sense from a programming perspective to define spiderhandsness once-for-all in that way, without necessarily implying that the creature forgets its real species (from the genetic simulation's perspective) when reproducing.
Logged
Pages: 1 [2] 3