Nordic Autobahn Workshop

1SDANi

The Fading Memory
Joined
Oct 27, 2014
Messages
3,083
Was playing as Germany and I see why so many people have been annoyed by the lack of a land bridge between the Netherlands and Europe. Those Vikings just won't stop making a Nordic autobahn. So I changed a single tile in the current map to be a grassland in order to fix it.

Sadly, this makes a Holy Roman invasion of the Netherlands laughably easy, so I made them start with crossbowmen instead of Archers, after all, it's not like civs starting with units they can't immediately build is a rarity. I have to go to sleep so I can't test if this fixes anything, so if someone could roll Germany a couple times and see if they can conquer any of the Viking's cities. If so, I may have to increase the number of crossbowmen. How were their relations historically? Would giving them some Huscarls to invade Holy Rome still be historical? I bet it'd be fun.

Link: https://drive.google.com/open?id=1fUev7-kwA0dknez4zqJTLVB2ykppuNQx
 
So even with the extra crossbowmen Holy Rome can conquer the Vikings with my edits, so if I want to implement a land bridge I'll either have to make the Vikings start with Machinery or give them more starting crossbowmen/Huscarls, I'd rather do the former but have yet to find where the starting techs are set. I thought I found it in Civilizations.py, but my edit didn't take effect.
Code:
iCivVikings :     Techs([iNobility, iSteel, iArtisanry, iPolitics, iMachinery], column=6),

Is there somewhere else I need to edit also?
 
There should be multiple entries for the Vikings since they differ in every scenario.
 
There should be multiple entries for the Vikings since they differ in every scenario.
Makes sense, will check

EDIT: Oh you mean the three different entires in Civilizations.py? Are they not added on each other but seperate? Is that what the exceptions and columns are for? Interesting.

EDIT2: It worked! Thank you! I'll do a couple of tests to see if this makes the Vikings strong enough to ward off the Holy Romans and make changes as appropriate.
 
Last edited:
Right. The way this works is:
- the whole column in "column" and everything that comes before
- in addition, everything in the initial list
- excepting all techs in "exception", if present
 
The Vikings aren't getting access to the Iron near them in time to build Crossbowmen in time for a HR invasion, I'm currently debating with myself whether or not it'd be best to give them more units, or make it easier for them to grab the iron. My current idea is to give AI Vikings an extra settler on the 800 SettlerValue tile near the Iron and move their workers to the Iron, but I'm having trouble figuring out how to spawn a settler in the 600 AD scenario upon their spawn. (I haven't tried to spawn it in 3000 BC scenario yet as I'd rather figure out 600 first.

Which idea would be best? Any other ideas how to fix this? If moving units and adding a settler would be better, how do I add a settler spawn?
 
RiseAndFall.py -> createStartingUnits().
 
RiseAndFall.py -> createStartingUnits().
What's the createSettlers function? Do I need to worry about that, or do I just add a makeUnitAI? How do I specify the plot to spawn them on? The scenario file?
 
You can refer to the existing lines in the file.
Well yes, but I only see one settler declaration and said settler is on a boat. Where do the other settlers come from? I was hunting through the files for quite a while prior to asking the initial question and all I found was something about the tBirthArea variable inside of Areas.py. I have no idea how one creates a settler.
 
Excepting settlers on boats, it is done by the createSettlers method. This method makes sure you get enough settlers to found the specified number of cities. If you already have cities to flip in your core, you receive less settlers correspondingly.
 
Excepting settlers on boats, it is done by the createSettlers method. This method makes sure you get enough settlers to found the specified number of cities. If you already have cities to flip in your core, you receive less settlers correspondingly.
So there's no way to specify where to place the settlers?
 
There is, you supply the plot as an argument. You can also always create settlers using makeUnit of course.
 
There is, you supply the plot as an argument. You can also always create settlers using makeUnit of course.
Am I reading the file wrong? CreateSettlers seems to just have iVikings and 2 as arguments. Where is the plot supplied?
Code:
elif iCiv == iVikings:
            utils.createSettlers(iCiv, 2)

EDIT: I see a plot argument on CreateStartingUnits, am I supposed to edit something in some place that function is called?
 
Last edited:
Oh okay, looks like the script will always use the spawn tile.
 
Oh okay, looks like the script will always use the spawn tile.
Okay, so I have to use the makeUnit function? Got it, thanks.

EDIT: How do I get a specific plot for the makeUnit function?

EDIT2: I may want to go back to visual studio, I forgot I can use that for searching functions.
 
Last edited:
Back
Top Bottom