Questions about monster_faction


#1

Fooling around with what might become a new mod. o_o Depends on my attention span.

Anyway, looking at a new species/monster factions. Species looks like it’s just assigning a name to something, nothing difficult there.

Monster factions, though, I’ve never even looked at the file before. So . . . “type” and “name”, no problem. Then there’s “friendly”, “neutral”, “by_mood”, and “base_faction”.

I’m assuming that, by default, members of my faction (I’ll call it faction X) will be hostile to all members of all other factions. Let’s say I want Faction X and Zombies to get along like old pals. I’d have to create a “friendly” entry for zombies in faction X and a friendly entry for faction X in zombies? If I don’t do both, I assume one side will still be hostile?

“Neutral” I’ll assume means they’re naturally neutral but if one somehow damaged the other it might lead to conflict? Or does it purely mean they’ll never interact with each other?

Now, “by_mood”, I genuinely don’t know what this means. Could anyone explain what that affects and how?

And finally, “base_faction”, what effect does that have on gameplay? Like, if I made Faction X’s base_faction “zombies”, does it just inherit all the zombie information instead of requiring a new entry?

Right, well, even if you can’t address each point individually, I’d still appreciate some broad strokes if anyone has done this before.


#2

From JSON_INFO.md:

Monster Factions

Identifier Description
name Unique ID. Must be one continuous word, use underscores when necessary.
base_faction Optional base faction. Relations to other factions are inherited from it and relations of other factions to this one check this.
by_mood Be hostile towards this faction when angry, neutral otherwise. Default attitude to all other factions.
neutral Always be neutral towards this faction.
friendly Always be friendly towards this faction. By default a faction is friendly towards itself.

Hope that answers your questions.


#3

Yes, thank you very much. I’d even looked in some of the documentation, I’ll look harder next time.