BarbsPlus for ExtraModMod Preview and Discussion Thread

[to_xp]Gekko;12755345 said:
I don't see the flavourstart option, is it not included yet?

Not yet. Its part of BarbarianCultures, and I need to remove some potential quirks in it. I also would like get some feedback on wilderness first, I fear BarbarianCultures would interfere to much.

Looking forward to get some feedback from you all!
 
I played a quick game with the Svaltafar to test Wilderness. In the early game I've seen more variety of barbarian units (I even saw a barbarian galley while I was still rushing for FoL). I have also seen greater number of barbarians moving far away of my cities than usual (I always play with Raging Barbarians). Fewer barbarians seemed to come to my cities, but when they did they came in groups or a few waves instead of coming always scattered.

In the middle game (about turn 140 on quick) I barely noticed any difference with vanilla gameplay. I'm playing with the Erebus MapScript, and there is probably too little space between civilizations for wilderness to make any difference (the maximum value between the Luchuirp and me seems to be 29). Check the attached screenshot for details.

After ending turn 156, the game seems to hang up. You can reproduce it by loading the attached savegame and pressing enter. It was made with ExtraModMod 0.3.1 with wilderness_0.0.1_alpha_EMM_0.3.1.zip on top of it, in a folder called "barbsplus".

My impression is that wilderness should increase a bit more with distance, and that its effect should be increased to make players take it into account. It also feels as if too few barbarians are spawning, even with Raging Barbarians on Is there any way to check the minWilderness value of barbarian units ingame? I managed to see the wilderness value of tiles with the debug tools, but I did not find it in units. That would be helpful to debug the barbarian units' movement.
 

Attachments

  • Distance.JPG
    Distance.JPG
    283.6 KB · Views: 183
  • terkhen AD-0156.CivBeyondSwordSave
    324.7 KB · Views: 157
I played a quick game with the Svaltafar to test Wilderness. In the early game I've seen more variety of barbarian units (I even saw a barbarian galley while I was still rushing for FoL).
Advanced units like Galleys will appear earlier. I didn't change tech requirements, but Barbarians get techs earlier now. This is mostly beacuse barbarians get techs based on a percentage of players, and in FfH players will focus on a combat path and thus less civs will have a certain combat technology while having equally strong units.

I have also seen greater number of barbarians moving far away of my cities than usual (I always play with Raging Barbarians). Fewer barbarians seemed to come to my cities, but when they did they came in groups or a few waves instead of coming always scattered.

In the middle game (about turn 140 on quick) I barely noticed any difference with vanilla gameplay. I'm playing with the Erebus MapScript, and there is probably too little space between civilizations for wilderness to make any difference (the maximum value between the Luchuirp and me seems to be 29). Check the attached screenshot for details.

After ending turn 156, the game seems to hang up. You can reproduce it by loading the attached savegame and pressing enter. It was made with ExtraModMod 0.3.1 with wilderness_0.0.1_alpha_EMM_0.3.1.zip on top of it, in a folder called "barbsplus".

My impression is that wilderness should increase a bit more with distance, and that its effect should be increased to make players take it into account. It also feels as if too few barbarians are spawning, even with Raging Barbarians on Is there any way to check the minWilderness value of barbarian units ingame? I managed to see the wilderness value of tiles with the debug tools, but I did not find it in units. That would be helpful to debug the barbarian units' movement.

I have to solve that hang error, maybe it also messes up spawning speed.

I think I'll also allow barbarians to spawn in visible tiles in higher wilderness if raging barbarians is selected; this would probably make them appearing also in later stages of the game.

The amount of barbarians spawned is very dependent on difficulty level (On what level were you playing? I'm not able to load your save for some reason). I think I'll make the Noble to Deity transition more smooth (I think lower levels are for beginners and should stay that way). If the above doesn't help, I'll also increase the barbarians spawning amount overall.

If you start on a small continent, it is possible that you get a quite low peak wilderness. I'll increase the minimum peak value, which is at the moment 25 and also doesn't scale with the percent of uninhabited land: normally, you get really high wilderness values only on uninhabited islands. I implemented that if there are no or few of such islands (which is often the case with erebus) the maximum peak wilderness for uninhabited continents is scaled from 70 up to 100. I forgot to scale the minimum peak wilderness, which may have been a difference for your game (the maximum peak wilderness is for the biggest continent, the minimum peak wilderness applies only if there is a inhabited continent much smaller than the biggest one).

No idea why they came in groups. that behaviour may be caused by the mod but is not intended (yet).

Thinking of it, less barbs coming is only logical, because some barbs stay in high wilderness. That's another argument for increasing the overall spawning density.

[to_xp]Gekko;12756890 said:
you probably shouldn't test on Erebus, it's REALLY weird and it skews results a lot :)

I agree it's weird (and even a bit buggy), but it should be supported nonetheless (if it doesn't give multiple players a really bad start it's also quite fun IMO).
 
[to_xp]Gekko;12756890 said:
you probably shouldn't test on Erebus, it's REALLY weird and it skews results a lot :)

Maybe, and I agree that it requires many improvements and tweaks. But it is one of my favourite mapscrits for FFH2 and I believe that it should be supported.

Advanced units like Galleys will appear earlier. I didn't change tech requirements, but Barbarians get techs earlier now. This is mostly beacuse barbarians get techs based on a percentage of players, and in FfH players will focus on a combat path and thus less civs will have a certain combat technology while having equally strong units.

Good :)

I think I'll also allow barbarians to spawn in visible tiles in higher wilderness if raging barbarians is selected; this would probably make them appearing also in later stages of the game.

That sounds good, I was roaming the wilderness with fawns to kill enough barbarians to promote them to satyrs. I did not put them in ancient towers or hills to reduce their visibility as much as possible, but they may have something to do with the reduction anyways.

The amount of barbarians spawned is very dependent on difficulty level (On what level were you playing? I'm not able to load your save for some reason). I think I'll make the Noble to Deity transition more smooth (I think lower levels are for beginners and should stay that way). If the above doesn't help, I'll also increase the barbarians spawning amount overall.

Noble. It's strange that you can't load it, I'll make sure to play in a mod with the default FFH2 name next time. I agree with the smoother transition, and I also think that overall the spawning should be increased.

If you start on a small continent, it is possible that you get a quite low peak wilderness. I'll increase the minimum peak value, which is at the moment 25 and also doesn't scale with the percent of uninhabited land: normally, you get really high wilderness values only on uninhabited islands. I implemented that if there are no or few of such islands (which is often the case with erebus) the maximum peak wilderness for uninhabited continents is scaled from 70 up to 100. I forgot to scale the minimum peak wilderness, which may have been a difference for your game (the maximum peak wilderness is for the biggest continent, the minimum peak wilderness applies only if there is a inhabited continent much smaller than the biggest one).

Increasing the minimum peak value sounds good. Isn't it possible to take into account the percent of uninhabited land? In some mapscripts such as Pangaea or Erebus it tends to be quite high, and they also tend to have no uninhabited continents.

No idea why they came in groups. that behaviour may be caused by the mod but is not intended (yet).

It did not seem like something planned or intended, because they came in groups of different unit types (skeletons and lizardmen, for example).

Thinking of it, less barbs coming is only logical, because some barbs stay in high wilderness. That's another argument for increasing the overall spawning density.

I agree.

I agree it's weird (and even a bit buggy), but it should be supported nonetheless (if it doesn't give multiple players a really bad start it's also quite fun IMO).

Yes, that's the biggest problem with it, IMO. Sometimes you get such a bad start that it is frustrating.
 
Increasing the minimum peak value sounds good. Isn't it possible to take into account the percent of uninhabited land? In some mapscripts such as Pangaea or Erebus it tends to be quite high, and they also tend to have no uninhabited continents.
I think I don't understand. What do you mean with "uninhabited land"? Keep in mind that the wilderness is calculated in the beginning of the game, so when I speak of "uninhabited" and "inhabited" continents, I always mean whether they have starting positions or not.

I just re-read what I wrote, and its probably not really understandable. I'll try to explain better.

On wilderness calculation at the start of each game, first each plot gets an value (not scaled in any matter) based on distance to starting positions on the same continent, or the distance to the nearest starting positions for water plots, or the distance to the center of the continent if it doesn't have got any starting positions.

Then a minimum and maximum wilderness for each area (water area or continent) is calculated. For water areas, the minimum wilderness is the actual minimum wilderness already calculated, which works fine. For uninhabited continents, the maximum and minimum wilderness is dependent on how far the continents are from starting points. The farthest will have a maximum wilderness of 100.
For inhabited continents I use the following formula:
Code:
iContinentMaxInhabitedWilderness = iMinMaxInhabitedWilderness + ( iMaxMaxInhabitedWilderness - iMinMaxInhabitedWilderness ) * iContinentSize / iMaxContinentSize;
So smaller continents will have lower max wilderness values (the minimum wilderness value for inhabited continents is always 0).
iMinMaxInhabitedWilderness and iMaxMaxInhabitedWilderness are by default defined as 25 and 70. If the amount of land on uninhabited continents is below 1% of the total land (Erebus mostly), the maximum value is 100 instead; if its below 5% its 85; if its above 30% (archipelago) its 55. I plan to scale iMinMaxInhabitedWilderness similarly (issue).

It did not seem like something planned or intended, because they came in groups of different unit types (skeletons and lizardmen, for example).
Hm. Didn't notice that yet. Created an issue to keep it in mind.
 
I think by uninhabitated he actually means uninhabitable, i.e. for Erebus the parts that are nothing but ice for example.
 
I think I don't understand. What do you mean with "uninhabited land"? Keep in mind that the wilderness is calculated in the beginning of the game, so when I speak of "uninhabited" and "inhabited" continents, I always mean whether they have starting positions or not.

Sorry, what I said probably did not make much sense. I meant the % of land of a continent that is not inhabited. Even if wilderness is not dynamic, it could be possible to calculate a higher wilderness value for continents expected to be empty. For example, if you have two continents identical in size, one of them with only one civ and another with four, the first one should IMO have a higher "maximum wilderness" value because it can be expected to be more empty in the future.

With your explanation I got how it works more clearly now, and it seems to take into account the cases that I thought problematic :)

EDIT: I tested a few possibly problematic mapscripts (Hub, Fantasy Realm, desert filled Donut, Pangaea) and the wilderness values seemed good and distributed as one would expect :)
 
Version 0.0.2_alpha released

Download

Patches ExtraModMod 0.3.1 (see opening post).

Major Features in this version and the previous version (will start a Feature changelog beginning with next version): https://bitbucket.org/lfgr/barbsplus/wiki/Features

Fixes:
  • An AI infinite loop
  • Letum Frigus was not placed correctly
  • Orcish Axeman had no race
  • Fixed a lair bug appearing in scenarios
  • Fixed many minor bugs and typos
  • Nomad Axeman is now Swordsman

Minor features
  • Gameplay - Lizardman spawning from ruins early and in low wilderness have the weak promotion.
  • "Explore Depths" lair outcome disabled due to unknown bug.
  • Hell Terrain spawns demons instead of other random spawns
  • National Tier 4 units like Berserkers no longer spawn, except from lair exploration.

Features and Fixes from newer Extramodmod revision (merged to get the unique features changes):
  • Removed IMPROVEMENT_MUSHROOMS and IMPROVEMENT_PENGUINS from the source code
  • Axemen, Moroi, Sons of Asena and Swordsmen no longer can use Mithril weapons
  • Grigori adventurer counter tweaks (see here and here)
  • Some Unique Features provide Mana now, new Unique Features: Bair of Lacuna, Tarch's Tower, The Palus (See here)
  • Auric Ascended gets +10 Ice Affinity. Gets 4 first strikes. Causes collateral damage (60%). Movement increased from 4 to 7. Resurrects in the capital when killed. Ignores city defenses when attacking. Gets March as a free promotion. Can cast Greater Slow. Can cast Animate Frostlings (TC01, Rise from Erebus, MagisterModMod)
  • The Blinded promotion gets art from Master of Mana
  • Shrimp get a new icon with a black background (Caveman2Cosmos)

Credits:
  • Kael and the Fall from Heaven 2 team
  • Tholal and contributors - More Naval AI
  • Terkhen and contributors - ExtraModMod
  • Sephi and the Master of Mana Team - Borrowed ideas and code
  • Valkrionn and the Rise from Erebus Team - Borrowed ideas and code
  • MagisterCultuum - Borrowed ideas and code
  • Pazyryk - Borrowed ideas and code
  • Ploeperpengel - Art
  • Dancing Hoskuld - Help with Art
 
crash on the desktop on turn
 

Attachments

  • AutoSave_AD-0080.CivBeyondSwordSave
    96.4 KB · Views: 121
crash on the desktop on turn

Thank you very much. I wasn't able to figure out what exactly is causing it, but I will release a patch as soon as I am.
Please don't use "New random seed on reload" when playing test games, it makes reproducing the issue far harder. Thanks a lot anyway, of course.
 
While I don't really know what exactly was causing the issue, I know it was related to a certain array, which I changed to a vector. I tested scutarii's saved game about 15 times and got no CTD, so I think it's fixed.

Version 0.0.2a_alpha released

Download

Patches ExtraModMod 0.3.1 (see opening post).

Fixes a CTD.
 
at least no CTD so far. forget buid worker first strategy - skelys gangbang you before than....At higher difficulty level AI civs have bonuses, we'll see how diferent AI will handle barb waves.... at least so far - turn 30 - all civs alive.... at ancient era start - barbs not so active at the start as at the classical era... although, it's funny how animal settle their caves under your scout's nose, couple of tiles away but still :D

scorpion clan archers too strong ....4/6; lizzys nerfed to 3 str - good, couldn't beat them w/o bronze weapons before.
 
at least no CTD so far. forget buid worker first strategy - skelys gangbang you before than....At higher difficulty level AI civs have bonuses, we'll see how diferent AI will handle barb waves.... at least so far - turn 30 - all civs alive.... at ancient era start - barbs not so active at the start as at the classical era...
Thanks for your input.

I play at Prince/Monarch, at Deity the barbarians are supposed harder (but not too much; the difference is supposed to be less than in vanilla FfH).
The Balance Goal is to have no big difference in barbarian strength compared with vanilla FfH when raging barbarians is not enabled; with raging barbarians they are supposed to be a challange.
although, it's funny how animal settle their caves under your scout's nose, couple of tiles away but still :D
That should not happen with the next version, animals will require a certain age (turn since creation) OR a certain level to create a lair; and they will not create lairs when a unit is directly nearby.
scorpion clan archers too strong ....4/6; lizzys nerfed to 3 str - good, couldn't beat them w/o bronze weapons before.
Will also change in next version. I didn't change the Scorpion Clan archers in the current version, but I agree they are annoyingly strong. I gave them the weak promotion in lower wilderness. Lizardmen spawned from Ruins get the weak promotion only early (before barbs get hunting) and in lower wilderness. Although, in the next version, ruins will get a non-weak lizardman from the beginning, so it will take some time before one is able to defeat them and explore/destroy the ruins.
To prevent lairs with guardians blocking starting positions, they cannot spawn in a 5x5 square radius around starting positions.
 
I finally had enough time to play a test game without distractions. I decided to play as the Ljosalfar since as far as I remember I have never played with them. I'm playing on Noble with no Acheron, all unique features, compact enforced, living world, blessing of Amathaon, wildlands and raging barbarians. I'm using World of Erebus this time.

I have been getting frequent random, non repeatable CTDs in this game. Most of them have happened at the end of a turn, while one happened after fortifying a warrior. With the attached savegame the CTD seems reproducible, you only have to pass the turn. This time I'm using a mod folder called "Fall from Heaven 2", and I also made sure that the version I'm using a clean version of ExtraModMod 0.3.1 with wilderness_0.0.2_a_alpha_EMM_0.3.1 on top of it.

By the way, you could consider a new challenge game option which increases both the minimum wilderness and the rate at which wilderness increases when you leave civilized lands.
 

Attachments

  • BarbsPlus_CTD.CivBeyondSwordSave
    149.1 KB · Views: 182
I finally had enough time to play a test game without distractions. I decided to play as the Ljosalfar since as far as I remember I have never played with them. I'm playing on Noble with no Acheron, all unique features, compact enforced, living world, blessing of Amathaon, wildlands and raging barbarians. I'm using World of Erebus this time.

I have been getting frequent random, non repeatable CTDs in this game. Most of them have happened at the end of a turn, while one happened after fortifying a warrior. With the attached savegame the CTD seems reproducible, you only have to pass the turn. This time I'm using a mod folder called "Fall from Heaven 2", and I also made sure that the version I'm using a clean version of ExtraModMod 0.3.1 with wilderness_0.0.2_a_alpha_EMM_0.3.1 on top of it.
Thanks, I'll look into it in a few days. I fixed two or three end-turn CTDs since the last release, one f.e. was almost guaranteed to happen when playing with a non-flat world.

The one you got when fortifying a warrior is entirely new to me. I hope I'll get some time to do several longer test games soon, maybe I'll get this one, too.
By the way, you could consider a new challenge game option which increases both the minimum wilderness and the rate at which wilderness increases when you leave civilized lands.
I'll keep that in mind; I think the wilderness calculation system I have needs balancing and at the moment such a gameoption would complicate that further.
 
Thanks, I'll look into it in a few days. I fixed two or three end-turn CTDs since the last release, one f.e. was almost guaranteed to happen when playing with a non-flat world.

The one you got when fortifying a warrior is entirely new to me. I hope I'll get some time to do several longer test games soon, maybe I'll get this one, too.

I'll keep that in mind; I think the wilderness calculation system I have needs balancing and at the moment such a gameoption would complicate that further.

Recently I added MSVC project files to ExtraModMod to make it easier to run games with debug enabled. I'm also planning to modify all bogus asserts to allow playing debug games without all those annoying popups. With the next release I'll play with a self compiled debug build of barbsplus to be able to provide stacktraces :)
 
Recently I added MSVC project files to ExtraModMod to make it easier to run games with debug enabled. I'm also planning to modify all bogus asserts to allow playing debug games without all those annoying popups. With the next release I'll play with a self compiled debug build of barbsplus to be able to provide stacktraces :)

Sounds great, I never play complete games with debug enabled because the game runs so much slower.
Ragarding Assert popups, I only got two different assert errors when playing with an Assert build (I use this makefile which has a predefined non-debug build with asserts enabled). One was related to eventsEnhanced and is fixed by now (commit); although the assert was obviously fired also for non-bugs (in my case it was just that a comment was the last child of an element), it could be useful to find real XML bugs. The other was about AI stuff, no idea whether it's correct or not.
 
Top Bottom