FlavourMod 2

Jean Elcard

The Flavournator
Joined
Feb 26, 2006
Messages
1,008
Location
Leipzig, Germany
FlavourMod v2.8.4 for Fall from Heaven

FlavourMod 2 is officially done. It's purpose is still the same, but it is now much better integrated in the game itself and not merly a rather unhandy mapscript mod. Besides the new features it introduces it does everything the first version could do, but in a better, clearer and more user-friendly way. The main features of FlavourMod are:

  • Flavour Start Game Option: All civilizations start in regions matching their flavour, if such a region is available on the map. This means elves will usually start in heavy forested areas, dwarves in hills, and so on. See the "Themes and Flavours" list below for deatails or take a look at the screenshots to get an impression.
  • Extended End of Winter Game Option: Longer, colder, with ice on the ocean, climate dependent resources, scaling with game speed, simply better. To learn more about my changes to this option and see some screenies check out this post: Extended End of Winter Features
  • Choke and Vantage point Detection: Goblin Forts, Ruins, Forts and sometimes Castles or even Citadels can be found on the map from the beginning. Not somewhere, but at strategical important choke points. Furthermore, FlavourMod places some Ancient Towers on valuable vantage points to help you survey.
  • Flavoured Unique Feature Locations: The same as for starting plots is now true for Unique Features. Flavourful locations for each of them. The Maelstrom starts in a rather small sea or ocean (Sto's idea) and The Guardian of Pristin Pass guards a real "pass" in the mountains for example.
  • Additional Map Scripts: FlavourMod comes along with three additonal very nice and flavourful map scripts made by the commnity for the comunity: PerfectWorld 2 (Cephalo), Mountain Coast (lonkero173) and Erebus Continent (Seven05)
  • Installer: FlavourMod is coming with an installer, which guides you through the installation process and tries to prevent you from installing FlavourMod where it doesn't belong. There is also an Uninstaller.
  • Customization: Changing a civs preferences, the mininmal distance btween Unique Improvements or switching on or off certain features of FlavourMod is easily possible with only a little bit of python knowledge. I tried to keep it as simple as possible. The file you would have to edit has the name "CvFlavourInterface.py". Please ask, if you have any questions.
  • Giant Maps: If huge maps aren't enough for you, than try the giant ones. Available for all map scripts.

DOWNLOAD & INSTALLATION:

Here you can download the FlavourMod installer for Fall from Heaven. Be sure to have the correct version installed already, otherwise the installer won't let you install FlavourMod. The installer bundles up FlavourMod with Perfect World, a very nice and flavourful mapscript made by Cephalo and the FlavourMod SDK: the changed dll source code files and the source of the installer itself.

FlavourMod v2.8.4 for Fall from Heaven 0.41m Installer (03/05/2010)

In case you don't have the correct FfH patch available: FfH Patch m

FlavourMod is also a part of Fall Further. A big thank you to Vehem and Xienwolf. Since I'm now a member of the Fall Further team myself, you'll probably find the new stuff for FlavourMod there first. But don't worry, there will be a Fall from Heaven version in the future too.

The Civilizations in FlavourMod - Their Themes and Flavours:

Spoiler :
Fall from Heaven Civilizations:
  • Amurites: mage society -> reagents and mana
  • Bannor: lawful crusaders -> metals, to support their military society and religious fanatism
  • Balseraphs: crazy mind clowns -> dye, cotton, silk and sheep for colours and dresses
  • Calabim: vampire aristocraty -> high food potential area, to feed the human stock
  • Clan of Embers: orcs -> edge of the jungle, Pyre of the Seraphic to sacrifice angels
  • Doviello: age of ice barbarians -> light tundra, because they like it cold
  • Elohim: wardens of the secret sites -> all kinds of unique features
  • Grigori: stay away from the gods and their endless wars -> isolated or as far away as possible, seven pines
  • Hippus: mercenary horse lords -> flat featureless terrain to support mobility, horses
  • Illians: winter god worshippers -> snow, tundra, Letum Frigus
  • Khazad: gold dwarves -> hills, high commerce potential, pigs, gold
  • Kuriotates: sprawling cities -> three rings of high potential yield plots
  • Lanun: pirates -> coastal start, pearls
  • Ljosalfar: light elves -> thick forest, some dislike for colder regions
  • Luchuirp: dwarven tinkers -> hills, high hammer potential, pigs, marble, ivory
  • Malakim: desert people lead by an elf -> desert, incense, plains
  • Sheaim: arcane end of world prophets -> mana, reagents
  • Sidar: detached immortals -> isolated or as far away as possible
  • Svartalfar: dark elves -> forest, mana
Fall Further's additional Civilizations:
  • Archos: spider worshippers -> hills, high food potential to breed cave spiders
  • Austerin: explorers of windy places -> windswept featureless terrain
  • Cualli: evil lizards -> nowhere cold, prefer jungle over forest
  • Mazatl: good lizards -> nowhere cold, prefer jungle over forest, Mount Kasheek
  • Chislev: indian style tribal warriors -> plains
  • Dural: artists and students -> marble, to help build their wonders
  • Kahdi: lusting for knowledge -> reagents, mana (Oghma), high commerce (Mammon)

Notes: FlavorMod 2 does not change the map scripts itself, it "only" takes the starting locations provided by the base mapscript and redistributes them. Hence, if there is no suitable place for a particular civ, it will be set to start somewhere, but probably in a rather ill-fitting area. Albeit there will be a clear tendency, no guarantees can be made, that all starts will be 'flavoury' for everybody. This also means that the mod is usually working better on bigger maps with more players than on smaller ones with fewer players, because of the higher number of available starting locations available for redistribution. And another small drawback: Teams won't start near each other in many cases. Would be pretty complex to assure flavour and close team members at the same time.

Credits:
Dreiche2: Had the idea for a mod like this and made some good first, but much simpler versions.
Cephalo: Creator of the Perfect World and Creation map scripts. I learned a lot from his code.
Vehem: A discussion in the Fall Further thread made me coding FlavourMod.
Kael and Team: For the best game mod in the world, ever.

Screenshots:
The attached screenshots below show some nice examples for flavourful starting locations generated by the mod for civs and for the Maelstrom. Furthermore they are thought to demonstrate where you have to look for the FlavourMod game option and the in-game message at game start-up.
 

Attachments

  • Doviello.jpg
    Doviello.jpg
    149.7 KB · Views: 7,332
  • Ljosalfar.jpg
    Ljosalfar.jpg
    127.3 KB · Views: 3,886
  • Malakim.jpg
    Malakim.jpg
    142.2 KB · Views: 3,124
  • Mazatl.jpg
    Mazatl.jpg
    167.3 KB · Views: 3,203
  • Maelstrom.jpg
    Maelstrom.jpg
    119.6 KB · Views: 3,525
  • QualityMessage.jpg
    QualityMessage.jpg
    134.3 KB · Views: 3,258
  • GameOption.jpg
    GameOption.jpg
    18.8 KB · Views: 2,905
Like you can see, it's a beta, so please report anything you notice.

Next steps for me:

Fixing bugs, if they should arise. And they will arise, I'm sure.

I everything works as intended I will release the Fall Further version of FlavourMod 2.

I'm planning to apply the algorithm I use for finding flavourful starting locations for the placing of unique features as well. Especially for moving away the broken Sepulcher from any type of civilization. Damn, is this thing annoying. ;)
 
Looks good - I've added a link to this alongside the one for the original in the Fall Further thread. The unique feature weighting would be an excellent addition - especially for dodging Barbatos.
 
This is my first time using any of the flavor mods, so I am not sure what is intended and what is a bug. This was all of a small map, Perfect World. with 7 opponents.

I just started a game as Hannah the Irin, and it seemed odd that I started with 3 reagents right next to my settler. The Amurites to the west started with 4 reagants, and the Sheaim to the south-east also started with 3. Even the Calabim had 2. There were also a few scattered throughout the map. I can see Sheaim and Amurites getting one each, but this seems a bit excessive for one map, considering this is suppose to be a rare resource. In this same game, Kandros Fir started with forest covered bronze and iron near him, which I do not believe is supposed to happen.

In another game, the Sheiam did not get any reagents. The Amurites had no mana nodes any where near their starting city.

Also, the pearls that the Lanun get (which is great) tend to prevent any of the sea food resources from appearing around them.

In general, it seems like the amount of resources has been increased too much (especially when you get a clump of something).

Over all, I am enjoying it, and will continue using this. ;)
 
People need to remember to check all their options when using this for the first time. Since the new option is added early in the list, it will bump all following options down a notch, so if you do not check things out, your BtS 3.17 saved gameoptions will be a bit screwy.
 
People need to remember to check all their options when using this for the first time. Since the new option is added early in the list, it will bump all following options down a notch, so if you do not check things out, your BtS 3.17 saved gameoptions will be a bit screwy.

Thanks for pointing this problem out, Xienwolf. I didn't think of this. I will add this reminder as a note to the install instructions. It's nice, the game saves the game options since BtS 3.17 came out, but in my humble opinion the way it's done is rather infelicitous. Not that I would have a better idea, how to do it, though.

@Veridian: Thanks for giving the FlavourMod 2 Beta a trial. Unfortunately I can't do anything about the problem you described. FlavourMod 2 isn't interfering with the ressource distribution system. That's one of things the chosen map script does. Sometimes Cephalo's Perfect World map sript creates a whole bunch of a certain type of ressource. In your case this ressource seems to be Reagents. But to be honest, I don't really think Perfect World is the reason either. Maybe you checked the "Wildlands" game option in an earlier game of yours (before installing FlavourMod 2). This could lead to the phenomeneon described by Xienwolf above - your game options got bumped down a notch and "Blessing of Amathaon" is checked now, which would double the amount of resources on the map.

About the missing Reaegents or Mana Nodes you recognized. This may happen because of the reasons I pointed out under "Notes" in my first post. If the Sheaim don't start with Mana nearby for example, than there was no starting location available on the map with both, Reagents and Mana near it. Even if there was a starting location like this, then it fitted another civilization's prefernces even better and they got the spot. And btw, if everybody would get what he or she wants in the beginning already, than there wouldn't be a reason for trade or even war, would it.
 
@Veridian: Thanks for giving the FlavourMod 2 Beta a trial. Unfortunately I can't do anything about the problem you described. FlavourMod 2 isn't interfering with the ressource distribution system. That's one of things the chosen map script does. Sometimes Cephalo's Perfect World map sript creates a whole bunch of a certain type of ressource. In your case this ressource seems to be Reagents. But to be honest, I don't really think Perfect World is the reason either. Maybe you checked the "Wildlands" game option in an earlier game of yours (before installing FlavourMod 2). This could lead to the phenomeneon described by Xienwolf above - your game options got bumped down a notch and "Blessing of Amathaon" is checked now, which would double the amount of resources on the map.

About the missing Reaegents or Mana Nodes you recognized. This may happen because of the reasons I pointed out under "Notes" in my first post. If the Sheaim don't start with Mana nearby for example, than there was no starting location available on the map with both, Reagents and Mana near it. Even if there was a starting location like this, then it fitted another civilization's prefernces even better and they got the spot. And btw, if everybody would get what he or she wants in the beginning already, than there wouldn't be a reason for trade or even war, would it.

I noticed that certain game options were on, as Xienwolf mentioned, and changed them before I loaded up a map. Blessing of Amathaon was not on, so I guess it was just the Perfect World map. I had no idea what your "notes" section meant until you just pointed it out. :blush: I will try another map type and see how it goes.
 
I installed your mod. and now for some reason its preventing me from going into worldbuilder.

Sounds a lot like the option "Lock Modified Assets" was active. Probably the option shift problem Xienwolf mentioned above. Maybe you had "New Random Seed on Reload" activated in an earlier game?

It seems I will have to move the "Flavour Start" option down to the end of the options list to prevent stuff like this from happening in the future. Very annoying new BtS 3.17 "feature". It's possible to deactivate the options saving in a mod's ini, but I don't want to change the inis just because of my mod.
 
I think Ive figured out the problem. I didnt have locked assets ticked on. but the extra option shifts everyting up one notch without displaying it properly. meaning that even when you tick on 1 option, it actually activates the one above in scenarios. Maybey you can change it so that the flavour option is the last in the list?
 
I think Ive figured out the problem. I didnt have locked assets ticked on. but the extra option shifts everyting up one notch without displaying it properly. meaning that even when you tick on 1 option, it actually activates the one above in scenarios. Maybey you can change it so that the flavour option is the last in the list?

Moving the flavour line of code to down under blue marble fixed the issues for me. All scenarios are working properly now.

I tried to move the option down, too. Right above "Blue Marble" in my case. Everything seemed fine. Flavour Start was doing its job. But hey, why was blue marble running too? I didn't tick it on. That was the point, where I realized, that if you choose one option, the one below, will be chosen automatically too, but you won't see it. Something was very wrong here.
Moving the "Flavour Start" option further down (below the invisble ones, Kael is using for testing purposes) revealed another part of the problem. The "Flavour Start" option vanished altogether.
Now I know, that adding an option to the XML options file only, will always things screw up somehow. You will have to inform two files of the SDK about your added option, as well. The saved options shift ist still going to occur, but you will at least see it displayed correctly. Furthermore, moving the option down to the end of the list won't let it vanish anymore, either. I will release the fix later today, together with the version for Fall Further.
 
The second FlavourMod 2 Beta for Fall from Heaven and the first for Fall Further are up and ready for download. I've fixed the invisible unwanted options bug and moved the "Flavour Start" option down to the very end of the game options list. This will stop any issues resulting from the shift of saved game options.

The Fall Further beta 2 includes flavour information for all seven new civilizations introduced by Vehem, including the Austerins, which were not covered by FlavourMod 1. I will update the flavour list in the first post as soon as possible.

The source files for both betas are also available now.
 
This works great with many different map-scripts. Thanks! I've two questions. First, does this make the other FFH map-scripts such as FFH-Tectonics redundant? Second, is it normal that my previous game saves would be 'broken' by this?
 
Cool beans.

Is it fully configurable from CvFlavourInterface.py? Civs can be added, settings tweaked etc? Looks like it, but before I start making the game crash I like to know if I have any hope of a different result. :)

A couple of things I'm curious aboute:
Can ChangeSearchAreaSize be given a value above "+1"?
Do the "Yield" preferences checks for total un-improved yield?

"Flavored" starts + any map = fun! But I guess you know that... :)
 
I was wondering if there is anyway to add another civ to it? I play the Scions pretty regularly, so it would be great if it's possible.

I'm happy you like it and yes it's possible to add other civs, as long as they exist in your version of Fall from Heaven or Fall Further and don't change any of the files FlavourMod overwrites. To add Flavour for the Scions of Patria should work, as far as I know their code. How to do it exactly is described in my answer to Tarquelne's questions below.

First, does this make the other FFH map-scripts such as FFH-Tectonics redundant?

I'm not entirely sure, what you are referring to exactly, but I suppose the answer is "yes". There is no need anymore to use modified map scripts like they were necessary for the old FlavourMod or the even older Dreiche2's first flavour approaches. You only need to set the "Flavour Start" option ingame and it will work with any map script you like.

Second, is it normal that my previous game saves would be 'broken' by this?

I had to make changes to the SDK's Header files, so I think It's possible, that adding FlavourMod will break games you saved before adding it. I will have to check this out to be sure.

Is it fully configurable from CvFlavourInterface.py? Civs can be added, settings tweaked etc?

Yip, you've found the right file for doing all this. :) It's located in "<modname>/Assets/python/entrypoints", if somebody else should be looking for it. Most of the logic is in there. Changes should be only made to the constants and inside the function GetCivFlavourData(), where the flavour information for each Civilization is located. The "how" is hopefully pretty self-explaining. Ask if not.

The Flavour Information for the Svartalfar looks like this for example:
Code:
pCivFlavourInfo = CivFlavourInfo("CIVILIZATION_SVARTALFAR")
pCivFlavourInfo.addPreference("FEATURE_FOREST", 2)
pCivFlavourInfo.addPreference("BONUS_MANA", 1)
civFlavourInfos[pCivFlavourInfo.civ] = pCivFlavourInfo

It says they like Forest and and Mana. But if they have the choice between an area with a lot of Forest and less Mana and an area with a lot of Mana and less Forest, they will in most cases get the area with more forest and a bit less mana. Why only in most cases? If the Ljosalfar are in game for example, the Ljosalfar will probably get the starting position with more forest instead, because their one and only preference is forest. Why should they get the area with less forest, if the Svartalfar would be kind of happy there too. The math behind all this is pretty complex, but I hope you understand the principle that I'm trying to maximize the happyness for everybody.

Can ChangeSearchAreaSize be given a value above "+1"?

Sure. "+1" adds one more ring of plots around the starting plot to the default search area size defined by the constants "core" and "hinter". "+2" two rings and so on. Keep in mind, that one ring of plots means a lot at bigger sizes.

Do the "Yield" preferences checks for total un-improved yield?

The YieldPreference is kind of special. It takes only the "core" area plots (by default that's the city fatcross) into account and for most plots it adds up simply their NatureYield. Only if FlavourMod finds a Bonus (a resource) it looks which allowed improvement would be best for it to get the max yield of the wanted type out of the plot and takes this value.
 
It might be a bit of an overkill for a modmod (FFH) or - even worse - modmodmod (FF), but it seems everybody is making installers these days - even Kael eventually ;) - so I decided to make one too. I'm really happy with the result and hope it is working for you as it does for me. It should look like on the screenshots below.

This installer is as easy as it gets. It tries to detect your BtS installation automatically as well as your installations of Fall from Heaven or Fall Further and points you to it, so you just have to clik next. Furthermore, it will prevent you from installing in a wrong directory. It also bundles up all the stuff I released so far in a single download: FlavourMod for Fall from Heaven, FlavourMod for Fall Further, Cephalo's maps and even the source files for both versions. You can decide what you want or need while installing.

Would be a shame, if it wouldn't work for everybody. So I would like, if some of you test it out, before I replace all the old zip files with it. You probably know the drill from the installer test Kael was running these last days. I know it works with XP and an DVD installation but I don't know, if it works with Vista or Steam installations. Thanks in advance to the testers.

Here is the Link to the Installer: FlavourMod 2.0.0 beta 3 - Installer Version (link not available anymore)

Note 1: I changed some minor stuff of FlavourMod itself in this version. Nothing important, but it qualifies for a new version number.

Note 2: The installer doesn't come with an uninstaller!
 

Attachments

  • Installer-Welcome.jpg
    Installer-Welcome.jpg
    117.9 KB · Views: 417
  • Installer-Components.jpg
    Installer-Components.jpg
    101.3 KB · Views: 387
I was just referring to your explanation for the 3rd time so I figured it was high-time to say "Thanks."

Thanks!
 
Top Bottom