New Rise and Fall mechanics beta phase

Found an interesting bug:

Loading this spawn turn autosave causes you to receive an additional stack of starting units, plus what you already had. It looks like you can do this indefinitely until you have as large of a starting army/settlers as you want. Also my civ name is TXT KEY CIV. This is the result of three restarts:

Spoiler :
upload_2021-11-28_15-42-56.png
 

Attachments

  • AutoSave_Initial_AD-1499 Turn 832.CivBeyondSwordSave
    1.2 MB · Views: 23
Another feature that I forgot to mention: you get a free civics switch on your spawn turn or on your flip turn.
 
Found an interesting bug:

Loading this spawn turn autosave causes you to receive an additional stack of starting units, plus what you already had. It looks like you can do this indefinitely until you have as large of a starting army/settlers as you want. Also my civ name is TXT KEY CIV. This is the result of three restarts:


Got that also last night, the TXT_KEY_CIV one. I think the rebirth civs don't have their peoples text tags yet.
 
600 AD Arabia is unplayable; I instantly get defeated.
 
I didn't get Egypt during the flip. Byzantium should still be able to flip the whole eastern half of Rome, right? Even if it's not in the defined flip zone?
Spoiler :
upload_2021-11-29_16-10-49.png
 
New update:
- fixed a bug in observer mode
- players that have advanced start points left can still be eliminated
- AI players will use their advanced start points after receiving them
 
Yes, can you share the initial save?

Hey Leo, attaching the save here. That's the Byzantine spawn turn for me.

600 AD Arabia is unplayable; I instantly get defeated.

I think I kinda figured out the reason behind this. In Rise.Birth.check(), the check for preparing the civ for spawn is fixed at 5 turns until birth (scaled by game speed). There should be no problems for the 3000 BC and 1700 AD scenarios because the first spawning civs (Greece and America, respectively) are scheduled to spawn more than 5 turns after spawn. The situation is different for the 600 AD scenario though, as there are 3 civs spawning within the first 5 turns: Arabia, Tibet, Indonesia. If you play through the first few turns of the scenario, you will encounter the errors. Arabia will still flip its birth area the next turn, though no Mecca, no Islamic holy city, and no techs for Arabia. Tibet does not spawn even with the preplaced barb Lhasa, and Indonesia does not spawn at all. You would also notice that you can't see the birth-protected regions for these civs at the start of the scenario.

I'm not sure if this is a good solution or rather a band-aid one, but I solved this by including this line in Rise.Birth.check() line after line 542:
Code:
    def check(self):
        ...
 
        iUntilBirth = until(self.iTurn)
        if turn() == scenarioStartTurn() and self.iTurn - turn() < turns(5): iUntilBirth = turns(5)
    
        ...

Above line of code should account for those civs spawning within 5 turns after the start of the scenario, and allow the game to prepare for their spawns accordingly.
 

Attachments

  • Justinian I AD-0331 Turn 494 [spawn turn].CivBeyondSwordSave
    827.9 KB · Views: 17
Yes, I have already implemented a similar solution to this. Thanks for digging into it, and also thanks for the save.
 
Has anyone here also tried capitalizing on the expansion area mechanic also? I'm not sure if I'm receiving waaaay too many units, although it's understandable that it's just one big stack outside enemy borders instead of one stack for each target city in the area.
 
This (finely engineered) new mechanism gives a large part of Colombia's UP to every new-spawn civ.

Will Colombia get a new UP? Perhaps the Civ 6 UP (+1 :move: for all units)?
 
Has anyone here also tried capitalizing on the expansion area mechanic also? I'm not sure if I'm receiving waaaay too many units, although it's understandable that it's just one big stack outside enemy borders instead of one stack for each target city in the area.
I am not sure if I am parsing your post correctly: is it that you feel you get too many units? Or not? That it should be tuned differently for the player than for the AI?

Maybe the units should be AI only but the other effects still available to the player?

The reason why this is an open branch is to figure that out, so don't assume I have put much definite thought behind these balance decisions.

This (finely engineered) new mechanism gives a large part of Colombia's UP to every new-spawn civ.

Will Colombia get a new UP? Perhaps the Civ 6 UP (+1 :move: for all units)?
Let's see how it plays out, although now that you mention it Colombia is probably a candidate to benefit from this mechanic (and they do not currently). That would make their UP redundant for most of the areas they have to conquer, yes.
 
Something tangentially related re Colombia; if you decide to revise their UHV, please also consider changing their "Control South America" UHV, which was doable before lategame core population modifier nerfs a few years (?) ago. The UHV now requires you to do cheesy strats like "starve most of your non-core cities down to size 1" in order to not collapse, which I'm pretty sure isn't the intended gameplay you're going for?
 
There is no words which describe how I like the conseption of New Civilization' Rise - it is SO MUCH better than 100K units from nothing:)

On the same time: if I understand correctly test-branch try to save the canonical Capiltal - but it's not about 100% chance
+ sometimes srong civs (like Germany for example) could defeat even Rising Civilization
 

Attachments

  • Без Paris.png
    Без Paris.png
    2.4 MB · Views: 135
  • Без Stambul.png
    Без Stambul.png
    3.4 MB · Views: 133
New update:
- fixed and improved dynamic revealed territory
- wonders are only preserved if the new city is a valid location for them
- fixed birth preparation for civs that are born less than five turns after scenario start

Most of the issues with dynamic revealed territory arose when the civilization is close to a continent boundary, as is the case with Iran. But I also addressed some other edge cases and streamlined the code.
 
Poland is weird :p
Spawned in with a tiny army (only 2 lancers+swordsmen), no settler(s), the advanced start didn't initialise, and weirdest of all - a Punjabi worker?
Consistent across 3 tries
 
I am not sure if I am parsing your post correctly: is it that you feel you get too many units? Or not? That it should be tuned differently for the player than for the AI?

Yes, we're on the same page. But tbh though, I'm not really sure yet if it's too OP. I'll have to play a few more games to come up with a more reliable assessment. But one thing's for sure: it really helps with the expansion. At least for the human player. I haven't seen much for the AI yet.

Which reminds me, what will happen to the predetermined AI conqueror wars? Will they still coexist with the new mechanics? Or would they be removed entirely?

- fixed birth preparation for civs that are born less than five turns after scenario start

I also would like to point out that civs that are supposed to spawn turns before or on the scenario start turn aren't birth protected at the start of the scenario. Cases include Japanese, Vikings, Turks for the 600 AD scenario; and Germany for the 1700 AD scenario.
 
Which reminds me, what will happen to the predetermined AI conqueror wars? Will they still coexist with the new mechanics? Or would they be removed entirely?
They trigger way after spawn, so they remain in place for now.
 
I'm only getting a few War Elephants and Swordsmen as Arabia from 3000 BC, which seems a little weak against buffed up neighbors, and also I seem to remember Arabia would spawn with some Ghazi and Mobile Guard even though they didn't have the tech yet? I've attached the save.

EDIT: Starting a game as Holy Rome, I only get 50 gold to do advanced start, yet improvements all seem to cost at least 70 gold. How is it supposed to be scaling?

All in all this mechanically seems super clean, thanks for implementing it!
 

Attachments

  • Saladin AD-0620 Turn 554 3000 bc new spawn rules.CivBeyondSwordSave
    738.5 KB · Views: 22
  • Barbarossa AD-0840 Turn 609 new spawn rules.CivBeyondSwordSave
    659.6 KB · Views: 18
Last edited:
I'm only getting a few War Elephants and Swordsmen as Arabia from 3000 BC, which seems a little weak against buffed up neighbors, and also I seem to remember Arabia would spawn with some Ghazi and Mobile Guard even though they didn't have the tech yet? I've attached the save.
Oh, that should still be happening? Arabia's starting units have always worked outside of the normal rules.
 
Top Bottom