Bay 12 Games Forum

Dwarf Fortress => DF Suggestions => Topic started by: FantasticDorf on January 12, 2020, 06:42:12 pm

Title: Fortress Roundable feedback on 'The Centaur Problem'
Post by: FantasticDorf on January 12, 2020, 06:42:12 pm
It was very interesting to hear both of you speak recently so soon the podcast which was a nice lift to my evening.

In many ways its difficult to come up with anything comprehensive on the fly, but i believe there might be a way to reference the way that the body parts interact with the alphabetical system used for marking reactions in order to get towards a solution of sticking two creatures together without a full conversion.

Here's a enclosed mock up, done so for size of a hybrid_variation_default.txt

Spoiler (click to show/hide)

The kind of idea is that A is the dominant, over B, which via the creature variation the lower half of the centaur fills in the blank spaces with conversions such as the addition of legs or actively replacing features. It may seem similar to a creature variation, but that's largely deliberate and the actual creature procured will be unique and retain the features of each.

A more narrow animal-person hybrid variation could be imagined up without infringing particularly upon creating a new body type for purpose or within a more specialised scope.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: TheyreAllGullyDorfs on January 15, 2020, 01:51:43 pm
How would you handle vital organs though? Centaurs have two sets of rib cages, do they have four lungs? Two digestive tracts? If one gets hit in the heart where is the bolt, in the human torso or the horse chest? Centaurs are hard.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: FantasticDorf on January 15, 2020, 05:18:48 pm
How would you handle vital organs though? Centaurs have two sets of rib cages, do they have four lungs? Two digestive tracts? If one gets hit in the heart where is the bolt, in the human torso or the horse chest? Centaurs are hard.

Good question, but id solve it just the same to have it still tied to if its not eliminated from either or replaced, put both in. I didn't provide a full example, but it would most probably take a heart away and have the secondary body re-establish it. Organs should follow the target bodyplan for wherever it might lie once defined.

The organs aren't that special on their own until they're made to be, maybe some creature literally has brass lungs. In which case the ordering would be important or contribute to the unique result.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: JesterHell696 on January 16, 2020, 02:35:54 am
How would you handle vital organs though? Centaurs have two sets of rib cages, do they have four lungs? Two digestive tracts? If one gets hit in the heart where is the bolt, in the human torso or the horse chest? Centaurs are hard.

I think I read somewhere once that centaurs would have to have a second heart to be able to pump blood throughout its body, let me check.

Quote from: Dr. Dr. H.C. Reinhard V. Putz of Germany’s Ludwig Maximilian University Munich Institute of Anatomy
  • The centaur likely boasted both a primary and secondary heart to pump blood through its hybrid system. All the more reason that the old centaur looks so defeated: he can suffer from two simultaneous broken hearts.
  • Within two torsos, the creature also boasts two synchronized diaphragms.
  • Even within its equine lower half, the creature would require a human stomach to digest it’s omnivore’s diet of human food.
  • While it should come as no surprise to many, the male centaur boasts only a single pair of horsey reproductive glands and a penis “likewise developed according to equine anatomical standards.”

https://www.improbable.com/airchives/paperair/volume12/v12i5/centaur-12-5.pdf

About as close to a "correct" answer as is possible for the subject.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: SixOfSpades on January 17, 2020, 02:49:46 am
I think I read somewhere once that centaurs would have to have a second heart to be able to pump blood throughout its body, let me check.
Would they have to have a second heart? No, they would not. Elephants don't, whales don't, and even giraffes (whose hearts must work the hardest to overcome gravity) don't. So there's no reason to believe that a centaur "must".

Quote
Even within its equine lower half, the creature would require a human stomach to digest it’s omnivore’s diet of human food.
Equally important to note is that there is no way a human's pathetically weak jaws & teeth could possibly chew up enough grass to feed a normal horse's herbivorous metabolism. Both sides, human and equine, would almost have to be omnivorous.


But discussing centaur anatomy is actually rather fruitless, until a more pressing issue is settled first: How did centaurs come to be? Did they evolve naturally, the same as all the other "normal" creatures? Where they deliberately made by an intelligent being (most likely a god or wizard) intentionally combining the forms of man with horse? Or did they begin as a normal human, cursed with horse parts (or vice versa)? Only after the origin question is settled can we make informed guesses as to their internal makeup.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: voliol on January 17, 2020, 06:00:57 am
@SixOfSpades E.g. centaur origins will probably be decided on the fly by the myth-generator, instead of having a set one. Do you reckon the centaur raws should be created on the fly as well, with different mythgen outcomes giving different centaur definitions?

DF creatures already don’t follow all laws of physics and plausible biology, for the sake of it being a fantasy generator. If they were to, more than just the centaurs break. All giant insects should suffocate from their trachea not working at that scales. Other giant creatures (including most megabeasts and semi-megas) should collapse from their own mass. Goblins and elves couldn’t be biologically immortal, and goblins should need to eat. Etc. Etc.
It is fine for centaurs to graze, should it be a consequence of tag merging. Even if they have a ”natural” origin. It is not like a 6-limbed mammal would fit well into the tree of life anyhow.


@FantasticDwarf What I don’t quite get about your raws, is how they ensure the ”horse” upper body connects to the ”human” lower body. It seems to me the ”human” upper body connect’s directly to the ”horse” lower body, which would make for a very short centaur indeed.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: JesterHell696 on January 17, 2020, 06:18:53 am
Would they have to have a second heart? No, they would not. Elephants don't, whales don't, and even giraffes (whose hearts must work the hardest to overcome gravity) don't. So there's no reason to believe that a centaur "must".

Like I said "I think I read" not just I think, which I then looked up and quoted, where it says "likely had two hearts" not must so this sentence is pointless as it was refuted in my own post, didn't think I would need to point that out.

Equally important to note is that there is no way a human's pathetically weak jaws & teeth could possibly chew up enough grass to feed a normal horse's herbivorous metabolism. Both sides, human and equine, would almost have to be omnivorous.

I'm quoting a professor of anatomy that did this a hypothetical and just copied some bits because I'm not quoting the whole damn thing, it why I posted a link to his hypothetical so if you wanted more detail you could look for yourself.

But discussing centaur anatomy is actually rather fruitless, until a more pressing issue is settled first: How did centaurs come to be? Did they evolve naturally, the same as all the other "normal" creatures? Where they deliberately made by an intelligent being (most likely a god or wizard) intentionally combining the forms of man with horse? Or did they begin as a normal human, cursed with horse parts (or vice versa)? Only after the origin question is settled can we make informed guesses as to their internal makeup.

But since that question can never be answer because they don't actually exist its all about making an assumption as to which and working from there.

The first page of the link I posted seems to show that the professor assumed the mythical origins as true.

Quote from: Univ.-Prof. Dr. Dr. H.C. Reinhard V. Putz Institute of Anatomy, Ludwig Maximilian University Munich/Germany
Historical Background
As we know from the ancient Greeks, the Centaurs are the offspring of the ill-fated relationship of Ixion, the king of the
Thessalian Lapithes, and a cloud with the features of Hera, the wife of Zeus. At the wedding of Perithoos, king of the
Lapithes, the drunken Centaurs sought to ravish the Lapithes’ wives. In the ensuing battle (the Centauromachy), they
were driven from Thessalia to the Peloponnese. Quite understandably, Centaurs and Lapithes became mortal enemies on
that day.

Because centaur don't actually exist no truly correct answer exists, but I think I'll accept the hypothetical anatomy proposed by a professor of the subject of anatomy because its good enough for me and IMHO it as close to correct as possible, none of my post was about how to make procedural "centaurs" work, just how classic centaurs would hypothetically work.


I think your interactions with GoblinCookie might have soured you a bit because it seems like you just skimmed my post for things to critique, mostly because of that initial sentence.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Pillbo on January 17, 2020, 10:45:08 pm
I don't really have a good understanding of what "the centaur problem" really is, but I've heard reference to it.  Is it just that Toady is can't decide where to put all the organs and other anatomical details?  I know it's not impossible because it's in mods (http://www.bay12forums.com/smf/index.php?topic=155054.0) and with all the things he's pulled off sticking most of a horse to most of a person should be within his abilities.  If it's just anatomy it seems like the answer is kind of unimportant like it is with animal people.

Or is it doable but not worth the trouble of solving a bunch of other small problems that would arise, like horses in pants?
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Ziusudra on January 17, 2020, 11:11:39 pm
It's not about centaurs specifically - it's about procedurally combining parts of creatures to create new ones. Centaurs are just a familiar example.

The real Another question is what happens if none of the parts have a brain or a heart.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: SixOfSpades on January 18, 2020, 01:25:10 pm
. . . it seems like you just skimmed my post for things to critique, mostly because of that initial sentence.
[VerySeriousFace]Well, surely you should all KNOW that it is my DUTY to see that the hypothetical anatomy of a mythical creature, unofficially modded into an indie fantasy game, absolutely MUST be treated with all POSSIBLE gravitas and solemnity.[/VerySeriousFace]  :P

But really, if I was sandbagging anything, JesterHell, it was the idea that there's only one plausible way to build a centaur. Not to demean the credentials or perspicacity of Dr. H.C. Reinhard V. Putz, but he doesn't seem to have spent much consideration on alternative physical makeups. Sure, a two-full-torso model could certainly work fine (not least for the insurance of carrying redundant systems, a rarity even in DF), but the author's focus on but one possible solution seems to be begging the question. It's still a very good jumping-off point, though.


Do you reckon the centaur raws should be created on the fly as well, with different mythgen outcomes giving different centaur definitions?
Now there's a sexy idea. We could set up raws for several variations of centaur (not to mention the vast numbers of other possible creatures), and use mythgen events to determine which one(s) get activated.

Quote
DF creatures already don’t follow all laws of physics and plausible biology, for the sake of it being a fantasy generator. If they were to, more than just the centaurs break.
True, but at the same time, one of DF's hallmarks is how it makes the fantastic realistic. That's why I support tweaking creatures, even the tried-and-true fantasy staples, to be better in accordance with actual physics & biology. Go ahead & give dragons a tail membrane that stretches out to their hind legs, because large bodies with only a single pair of wings cannot maintain level flight without some kind of stabilizer. Etc. Sure, DF creatures ignore biological limits now, but so MUCH of the game is in the "good-enough-for-now phase" that lungless giant insects blend right in. But as time goes on, I'm hoping that will change. If I/we can aid or speed that change, so much the better.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Pillbo on January 18, 2020, 01:35:52 pm
Another question is what happens if none of the parts have a brain or a heart.

Abort and restart like the WG does with worlds that don't meet necessary criteria?
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Ziusudra on January 18, 2020, 02:47:26 pm
What else is required? Lungs? Grasp? Stance?

Lungs bring to mind another question. What about parts from creatures that live in different environments? A creature that ends up with gills can't live on land. Fins are likewise problematic. If a part is from a fire immune creature does the whole gain that trait?

What about materials? Could you have a body made of bronze but head and limbs made of flesh? Does a bronze body have a heart? What does it pump?

Another question is size. Random or based on the size(s) of the creatures the parts are from? Based on the head, the stance, or an average?
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Pillbo on January 18, 2020, 04:46:52 pm
I think the answer to most is 'however you want'. If it's for sentient land-based creatures Toady could make a list of required body parts, needs, and rules for possible combinations and materials so that it can still live and behave how he wants it to. If a procgen creature doesn't meet those rules they restart or just add the missing piece like lungs to the organ list. Right now you don't get Werefish that suffocate on land, or FBs that are half Metal and half Flesh.  Werebeasts already deal with body resizing, FBs already deal with random materials and body parts, both won't combine incompatible environments.

Or maybe the creature starts with a list of necessary parts for what you're trying to make then generate the body around that list. I think after creating a couple hundred sentient beings in the game Toady has a pretty good idea what he considers required and under what conditions. Probably lungs or gills, brain or [NO_THOUGHT_CENTER_FOR_MOVEMENT], heart or no blood, etc.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: SixOfSpades on January 19, 2020, 01:38:42 pm
It is not like a 6-limbed mammal would fit well into the tree of life anyhow.
There's nothing magical about tetrapods, that's just the way Earth vertebrates happened to go. In (most) fantasy settings, dragons are 6-limbed, and people are okay with that.

With that said, analagous to the Centaur problem is the Horseman problem: Suppose DF included Horse men, right alongside the Tiger men, Axolotl men, etc. No reason why not, right? And if so, what precisely would be the difference between a Horse man & a Centaur? The number of limbs, probably, but do the differences end there?


Equally important to note is that there is no way a human's pathetically weak jaws & teeth could possibly chew up enough grass to feed a normal horse's herbivorous metabolism. Both sides, human and equine, would almost have to be omnivorous.
I forgot that centaurs would almost certainly be able to use tools to process their food before chewing it, much as humans do now. In other words, LOTS of finely minced Longland grass salads.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: IndigoFenix on January 26, 2020, 08:28:23 am
Even among mythological mix-and-match critters, centaurs are a particularly weird example. I think we should consider the possibility of mixing species without taking centaurs into account.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: voliol 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:


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:

Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: NW_Kohaku 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 (https://tvtropes.org/pmwiki/pmwiki.php/Main/MermaidProblem).)

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. (https://www.youtube.com/watch?v=MUWUHf-rzks)  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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Strik3r 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: FantasticDorf 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Strik3r 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: voliol on February 14, 2021, 11:18:49 am
In DF Talk #28 (https://bay12games.com/dwarves/df_talk.html) 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Strik3r 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: NW_Kohaku 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Pillbo 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Shonai_Dweller 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Strik3r 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: IndigoFenix 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: voliol 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 (http://www.bay12forums.com/smf/index.php?topic=26006.0) two (http://www.bay12forums.com/smf/index.php?topic=92722.msg2595760#msg2595760) 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: NW_Kohaku 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Maximum Spin 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.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: NW_Kohaku on February 18, 2021, 06:12:26 pm
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.

There is no need to define "eye gouged out human" as a separate creature from a "fully whole human" in the code.  There is just code that handles having a body part damaged or missing.  If spiderhands is a spell that transmutes flesh from a person's body into some other type of flesh, then the right answer would be to either set the hand as missing and spawn a new spider creature (if the spider can just pop off or the part is otherwise unusable by the original creature, which sounds especially likely to be the case with a spell like guts-to-toads), or else have a way to deform the body structure (if the victim of the spiderhands spell can still use a spiderhand like their own body).

After all, you'd then have to make spiderhanded versions of every being that could possibly be a target of the spiderhands spell, unless you were to somehow make it a spell that exclusively applies to one race.  You don't want a dwarf hit with a spiderhands curse to turn into a human with a spiderhand do you?  What about someone who gets hit with spiderhands on their left hand?  Or gets hit with it twice?  Now you need four versions of every creature that can be a target of spiderhands.  And then we're adding in creatures with four arms and four hands that could be turned into spiders...
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: Maximum Spin on February 18, 2021, 06:54:20 pm
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.

There is no need to define "eye gouged out human" as a separate creature from a "fully whole human" in the code.  There is just code that handles having a body part damaged or missing.  If spiderhands is a spell that transmutes flesh from a person's body into some other type of flesh, then the right answer would be to either set the hand as missing and spawn a new spider creature (if the spider can just pop off or the part is otherwise unusable by the original creature, which sounds especially likely to be the case with a spell like guts-to-toads), or else have a way to deform the body structure (if the victim of the spiderhands spell can still use a spiderhand like their own body).

After all, you'd then have to make spiderhanded versions of every being that could possibly be a target of the spiderhands spell, unless you were to somehow make it a spell that exclusively applies to one race.  You don't want a dwarf hit with a spiderhands curse to turn into a human with a spiderhand do you?  What about someone who gets hit with spiderhands on their left hand?  Or gets hit with it twice?  Now you need four versions of every creature that can be a target of spiderhands.  And then we're adding in creatures with four arms and four hands that could be turned into spiders...
Yep, I agree with all this and already thought that, just pointing out that the reproduction connection doesn't necessarily follow.
Title: Re: Fortress Roundable feedback on 'The Centaur Problem'
Post by: voliol on February 19, 2021, 03:46:40 am
Sorry NW_kohaku, that was me wording things badly.
Smaller less permanent ”transformations” I think is best handled by spells, and individually stored body definitions (”turn the target’s hand into a spider!”).
But, if you have species being generated from multiple ones, and you will when the game is generating ones in mythgen, you need a robust system for such in the raws. Every centaur, that is not initially a human but belongs to a randomly generated species created as any other during mythgen, does not need an individually stored body plan but can share it with all other centaurs.