Alternatives for preset cities

AbsintheRed

Deity
Joined
Jul 27, 2009
Messages
8,288
Location
Szeged, Hungary
The current plan is to have some indy/barb city spawns with alternatives, to increase replayability of some civs, and to be able to represent more important cities to some degree throughout the timeline of the mod.
For example instead of a given indy city spawning in 100% of the games, we can add that it only spawns in 50%, while in 30% a second city appears instead, and a third one in the remainig 20%.

Obviously some cities are very important historically and/or for gameplay, and will still appear in 100% of the games.
Still, there are a lot of opportunities with this, let's add more flavour to the mod!

These are all the current spawning cities, and added some others as well which are currently disabled (starting with #), to give some ideas:
The first 2 numbers are coordinates, the 3rd is the turn number, the 4th is irrelevant ATM
Spoiler :
lTangier = [27,16,0,0] #500 AD
lBurdigala = [37,38,0,0] #500 AD, Bordeaux
#lNantes = [36,43,0,0] #500 AD
lAlger = [40,16,0,0] #500 AD
lBarcino = [40,28,0,0] #500 AD
lToulouse = [41,34,0,0] #500 AD
#lTours = [40,43,0,0] #500 AD
#lOrleans = [42,44,0,0] #500 AD
lMarseilles = [46,32,0,0] #500 AD
lLyon = [46,37,0,0] #500 AD
lTunis = [49,17,0,0] #500 AD
#lPisae = [53,32,0,0] #500 AD
lLondinium = [41,52,0,0] #500 AD, London
lYork = [39,59,0,0] # 500 AD, Eboracum
lMediolanum = [52,37,0,0] #500 AD, Milan
lFlorentia = [54,32,0,0] #500 AD, Firenze
lTripoli = [54,8,0,0] #500 AD
#lRoma = [56,27,0,0] #500 AD
lAugsburg = [55,41,0,0] #500 AD
#lCatania = [58,18,0,0] #500 AD
lNapoli = [59,24,0,0] #500 AD
lRagusa = [64,28,0,0] #500 AD
#lBeograd = [68,30,0,0] #500 AD
lSeville = [27,21,0,0] #500 AD
#lRavenna = [55,33,0,0] #500 AD
#lKairouan = [49,14,0,0] #500 AD
lPalermo = [55,19,2,0] # 508 AD
lRhodes = [80,13,25,0] # 600 AD
lNorwich = [43,55,35,0] # 640 AD, reduced to town on spawn of England
#lZaragoza = [36,29,45,0] #680 AD
lToledo = [30,27,45,0] #680 AD
lLeicester = [39,56,45,0] #680 AD, reduced to town on spawn of England
#lBulgar = [97,60,45,0] #680 AD
#lLeon = [27,32,50,0] # 700 AD
#lBurgos = [30,32,50,0] #700 AD
lValencia = [36,25,50,0] #700 AD
lPamplona = [35,32,50,0] #700 AD
lPorto = [23,31,50,0] #700 AD
lDublin = [32,58,50,0] #700 AD
lLubeck = [57,54,50,0] #700 AD
lTonsberg = [57,65,65,0] #760 AD
lRaska = [68,28,67,0] #768 AD
lFez = [29,12,70,0] #780 AD
#lCorunna = [24,35,75,0] #800 AD
lMilan = [52,37,75,0] #800 AD, Respawn of Mediolanum, in case it was razed
lFirenze = [54,32,75,0] #800 AD, Respawn of Florentia
#lLeipzig = [58,48,75,0] #800 AD
lPrague = [60,44,75,0] #800 AD
#lKharkov = [90,46,75,0] #800 AD
lKursk = [90,48,75,0] #800 AD
lCalais = [44,50,75,0] #800 AD
lNidaros = [57,71,75,0] #800 AD, Trondheim
lUppsala = [65,66,75,0] #800 AD, reduced to town on spawn of Sweden
#lLadoga = [81,65,75,0] #800 AD
lBeloozero = [87,65,75,0] #800 AD
#lVelehrad = [64,42,82,0] #833 AD
#lNovgorod = [80,62,87,0] #848 AD
lEdinburgh = [37,63,90,0] #860 AD
#lNottingham = [39,56,92,0] #867 AD, reduced to town on spawn of England
lAlbaIulia = [73,35,95,0] #880 AD
lTvanksta = [69,53,100,0] #900 AD, Konigsberg
#lBreslau = [64,46,100,0] #900 AD
lKrakow = [68,44,100,0] #900 AD
lDuna = [74,58,100,0] #900 AD, Riga (Duna is the name of a sheltered natural harbor near Riga)
lCaen = [40,47,104,0] #911 AD, establishment of the Duchy of Normandy
lMinsk = [79,52,120,0] #960 AD
lSmolensk = [84,55,120,0] #960 AD
lYaroslavl = [92,61,137,0] #1010 AD
lGroningen = [52,54,150,0] #1050 AD
lKalmar = [64,60,150,0] #1050 AD
#lMunster = [52,50,150,0] #1050 AD
lMus = [99,21,153,0] #1060 AD
#lMarrakesh = [24,7,157,0] #1071 AD
lGraz = [61,37,170,0] #1110 AD
#lLjubljana = [60,36,173,1] #1120 AD
lRiga = [74,58,200,0] #1200 AD, Respawn of Riga
lSaraiBatu = [99,40,200,0] #1200 AD
#lKolyvan = [74,63,200,0] #1200 AD
lTarabulus = [54,8,209,0] #1227 AD, Respawn of Tripoli
#lPinsk = [77,48,210,0] #1230 AD
lAbo = [71,66,217,0] #1250 AD
lNizhnyNovgorod = [97,58,240,0] #1320 AD
#lSamara = [97,54,240,0] #1320 AD
#lMemel = [70,55,240,0] #1320 AD, Klaipeda
#lVologda = [91,64,240,0] #1320 AD
#lTver = [88,60,240,0] #1320 AD
lTanais = [96,38,264,0] #1392 AD
#lVisby = [67,60,264,0] #1393 AD
lReykjavik = [2,70,270,0] #1410 AD
#lStaraSich = [88,40,300,0] #1500 AD
lValletta = [57,14,315,0] #1530 AD
 
As the conversation already started in a different thread, I will post some already made suggestions here.
Would like to keep these in one place, they are highly connected in most cases.
Possibly a choice between Caen and Rouen and Normany, or Calais and Ghent (though I'm unsure if this would screw up the French UHV).

Also, this could be useful for representing Brittany; there could be an equal chance of spawning Nantes (Naoned), Vannes (Gwened), or Rennes (Roazhon). Perhaps a city spawn in Wales as well? It's always struck me as extremely odd that the English can just settle there; I would recommend Caernarfon for Gwynedd, one of the most pre-eminent Welsh kingdoms, or possibly Dinefwr to represent Dyfed/Deheubarth as well (or even both).

I would definitely have Caen in a fixed place, directly south of the crab. It is too important to the 1st English UHV to have it in a less optimal position, particularly inland. It was also the centre of Christina development in Normandy.

Personally, I would have only Caen and Lyon as fixed cities in France. Other cities can spawn semi randomly at Vannes, Nantes, Rennes, Bordeaux, Toulouse, Aix-en-Provence, Marseille, Calais, Strasbourg, and Dunkerque (maximum one city per province or two in larger ones), to give four or five cities in France. That would have the advantage of making the 1st French UHV much less predictable and easy to achieve, and also give more randomness in France in general.

I agree with the Welsh spawn, but think there should be a balance between Caernarfon, Cardiff and Mathrafal (then capital of Powys, becomes Shrewsbury when captured by the English), on the hill S of the sheep. That way you make the UK a bit more dynamic, both for England and Scotland.
 
As per my post in the other thread, for France we should have Caen and Lyon fixed for France. Then for each region there should be a 100% chance of one of the following cities spawning (two for one of Aquitaine and Provence)

Brittany: Rennes (1E of the wine), Nantes (1S of the wine) Vannes (1SW of the wine)
Aquitaine: Bordeaux (current location), La Rochelle (2N of Bordeaux), Limoges (1E of the pig), Toulouse (1N of the deer)
Provence: Toulouse (current location, mutually exclusive with Toulouse on the other side of the river in Aquitaine), Montpellier (1NE of the wine), Marseille (current location), Aix-en-Provence (1W of the salt)
Swabia: Freibourg en Brisgovie (1S of the honey), Ausbourg (1E of the deer)
Picardy: Calais (current site), Dunkerque (1E of Calais)

Of those, imo Caen and Lyon should spawn in 500AD, as Caen was in existence at that time. Also Caen never spawns in 911AD when France is AI, as France settles some other location in Normandy.

As an aside, imo Normandy should be added to the French 1st UHV, as Clovis did conquer Normandy early on. Maybe give France an extra couple of axemen at the start to compensate for the extra city they need to capture? That would give France the chance to conquer one city at the start without using up all their early defenders.

For Brittany, Aquitaine, Provence and Swabia, one city in each province should spawn at random at the start, with an extra one in Aquitaine or Provence. For simplicity, probably Toulouse should always spawn but should be 50:50 which side of the river it is on for some variety. That keeps balance for France's 1st UHV, with four random cities and Lyon available instead of the current Lyon, Marseille, Ausbourg, Toulous and Bordeaux, but also gives variety around the placement of the cities, and the optimal location for France to settle their own cities.

Calais or Dunkerque should spawn in 800AD as in the current game, 50:50 chance of each imo.
 
In Wales, I would have an indie city spawn in 900. Either Caernarfon on the hill N of the sheep, Powys on the hill S of the sheep, or Cardiff either on the stone hill or 1W if we want to avoid resources.
 
For Italy, I would keep Mediolanum in place as that's a major city and pretty much undisputed capital of the north at the time. But in Tuscany, have either:

lPisae = [53,32,0,0] #500 AD, Pisa
lFlorentia = [54,32,0,0] #500 AD, Firenze
lRimini = [55,32,0,0] #500 AD
lAncona = [56,31,0,0] #500AD (not sure those coordinates are right for the village which is there)

I think Ravenna is too close to Venice to be viable for gameplay, but that one could be put in instead

Then in southern Italy have one of:

lNapoli = [59,24,0,0] #500 AD
lRossano = [61,22,0,0] #500 AD
lTaranto = [62,24,0,0] #500 AD, Tarrentum
lBenevento = [60,25,0,0] #500 AD
 
I think Bordeaux is important enough that it should always be there at start. In that case I don't think La Rochelle really makes sense to spawn.

Perhaps one of Tours, Orleans, or Bourges could also spawn on the Loire?

Maybe Narbonne could be added to the Toulouse/Provence pool?

How important was Dunkirk in the timeframe? I feel like just having Calais spawn would make more sense.

If a city were to spawn for Powys it would be Mathrafal, though technically it should be on the sheep. Instead of spawning Cardiff directly an option could be to spawn Dinefwr for Dyfed/Deheubarth W of the sheep which the English then rename Cardiff, as Morgannwg was conquered early and never important at all.

I think Naples was important enough to always spawn, but I think it would be good to spawn another city spawning in southern Italy. Perhaps also a choice between Palermo and Syracuse in Sicily?
 
Almost all of the data on the old Rus' cities are incorrect, not mentioned in the town later became the center of principalities during feudal fragmentation
(Vladimir, Suzdal, Galich)
Samara and SaraiBatu: out of map
 
I think Bordeaux is important enough that it should always be there at start. In that case I don't think La Rochelle really makes sense to spawn.

Perhaps one of Tours, Orleans, or Bourges could also spawn on the Loire?

Maybe Narbonne could be added to the Toulouse/Provence pool?

How important was Dunkirk in the timeframe? I feel like just having Calais spawn would make more sense.

If a city were to spawn for Powys it would be Mathrafal, though technically it should be on the sheep. Instead of spawning Cardiff directly an option could be to spawn Dinefwr for Dyfed/Deheubarth W of the sheep which the English then rename Cardiff, as Morgannwg was conquered early and never important at all.

I think Naples was important enough to always spawn, but I think it would be good to spawn another city spawning in southern Italy. Perhaps also a choice between Palermo and Syracuse in Sicily?

Keep in mind that we cannot only have same chance for all those cities.
We can have 80% Calais against 20% Dunkirk. 60% for Palermo with 40% for Syracusa.
Also we can keep 100% for Naples, and also add a separate 20% for Taranto, just by itself.
 
Almost all of the data on the old Rus' cities are incorrect, not mentioned in the town later became the center of principalities during feudal fragmentation
(Vladimir, Suzdal, Galich)
Samara and SaraiBatu: out of map

You are right of course, that area is the least accurate ATM.
On the other hand the map itself for Russia will be changed to some degree, so we cannot really set the positions yet.

We can decide though what cities should be included, for example one western Rus city does sound like a good idea.
Especially Galich/Halics, which would be a good buffer zone between Kiev and Hungary
(Hungarian Kings conquered it at least 5-6 times between the 11th and 14th centuries, but never got around to keep it for long)

Lincoln, Canterbury, Chichester, Bath and Hereford were the biggest towns of their time. They can alter some o the current spawns.

English preset cities are special, because some of them have the reduce city mechanics set, right before the English spawn.
 
Ofcourse, most of the variations can apply to the 1200 AD scenario as well.

@ absinthe
Are you already working on this? I can start with the ground work already. But I want to avoid doing things double.
 
Ofcourse, most of the variations can apply to the 1200 AD scenario as well.

If the city spawns after 1200, it will be applied by default.
Otherwise the city placement is set in the scenario file, so there is no real room for variance there.

@ absinthe
Are you already working on this? I can start with the ground work already. But I want to avoid doing things double.

I don't mind if you do the base changes for it, having the exact cities and chances on a desired gameplay-level will be a longer process anyway, with lots of finetuning.
Keep in mind that indy spawns in the barbs.py are set up in time clusters ATM.
I would prefer to avoid too many unnecessary checks, so you should change the basic setup to some degree.
 
If the city spawns after 1200, it will be applied by default.
Otherwise the city placement is set in the scenario file, so there is no real room for variance there.

Not necessarily. I can leave some parts of the map blanc and create a script which places some additional cities when initializing the scenario. e.g. A city (size X, buildings Y, defenders Z etc.) placed at either Calais or Dunkerque.

In fact, it wouldn't differ much from the soon to be ready spawning city mechanics. The only thing I can think of is that the 1200 AD script also includes some prebuild buildings.

I don't mind if you do the base changes for it, having the exact cities and chances on a desired gameplay-level will be a longer process anyway, with lots of finetuning.
Keep in mind that indy spawns in the barbs.py are set up in time clusters ATM.
I would prefer to avoid too many unnecessary checks, so you should change the basic setup to some degree.

All I want to do for now is to write the basic script, so we only have to add the city variations and chances.
I did see the clusters and I already changed some minor things to speed up the proces. ;)
 
I think Bordeaux is important enough that it should always be there at start. In that case I don't think La Rochelle really makes sense to spawn.

Not in 500AD it wasn't - it had been sacked three times and was in a period of decline. It was direct decisions by the Frankish Empire that saw its revival around 600AD, so that could easily have happened to a different city.

Although maybe Saintes makes more sense than La Rochelle for the time period.

Perhaps one of Tours, Orleans, or Bourges could also spawn on the Loire?

I don't think cities should spawn in the French core regions, as that just undermines the whole point of the player starting with settlers for these regions.

Maybe Narbonne could be added to the Toulouse/Provence pool?

That's a good call - Narbonne should probably replace Montpellier as it was more historic for the time frame.

How important was Dunkirk in the timeframe? I feel like just having Calais spawn would make more sense.

As important as Calais - both were connected to the sea about the same time, due to silting of the coast. Dunkirk is still a larger port today, it's just for freight traffic whilst Calais is for passengers. I would say it's 50:50 on which one should spawn.

I think Naples was important enough to always spawn, but I think it would be good to spawn another city spawning in southern Italy. Perhaps also a choice between Palermo and Syracuse in Sicily?

I don't think it was tbh - Benevento was the main Byzantine city in Southern Italy at the time, Naples only became more important as the Duchy of Naples arose later. It would only become important again if a Sicilian / Neapolitan civ was added later.
 
Not in 500AD it wasn't - it had been sacked three times and was in a period of decline. It was direct decisions by the Frankish Empire that saw its revival around 600AD, so that could easily have happened to a different city.

Well, I'm not just considering its status right at 500 AD, but overall throughout the timeframe of the mod (or at least the first half). Bordeaux was an important city/sometime capital in the Duchy of Gascony and the capital of the Duchy of Aquitaine all the way until the French conquest in 1453. It was a provincial capital for centuries before that and as you said quickly regained prominence not long after start, so I think it definitely deserves to be preplaced in all games. It's even a spawned city in DoC, which in France is shared only by Paris itself and Lugdunum.

I don't think cities should spawn in the French core regions, as that just undermines the whole point of the player starting with settlers for these regions.

That is a good point, but it does feel a little weird to have the Franks settling most of these regions rather than conquering them, which is what they really did best. Obviously if this were implemented a settler should probably be removed from France's starting stack.

I don't think it was tbh - Benevento was the main Byzantine city in Southern Italy at the time, Naples only became more important as the Duchy of Naples arose later. It would only become important again if a Sicilian / Neapolitan civ was added later.

True, I suppose. I guess an even split between Benevento and Naples would make sense.
 
We do need to consider the inertia rule. If a city was important in the beginning of the mod, but became less important not much after that, it should get a lower chance of appearing than a city which would become more important later on.

E.g. At the start of the scenario, Benevento was probably more important than Napoli. But when Napoli became important, it became more important than Benevento ever was. So therefore, I think Napoli should have a bigger chance of appearing than Benevento. (Let's say 70-30)
 
We do need to consider the inertia rule. If a city was important in the beginning of the mod, but became less important not much after that, it should get a lower chance of appearing than a city which would become more important later on.

E.g. At the start of the scenario, Benevento was probably more important than Napoli. But when Napoli became important, it became more important than Benevento ever was. So therefore, I think Napoli should have a bigger chance of appearing than Benevento. (Let's say 70-30)

Off:
Why do you always say "inertia rule"? It's like the third time you said that recently where it sounds sooo strange to me :confused:
It's inertia, like in Newton's law, right? Does the word have another meaning which I'm unfamiliar with?
Is 'inertia rule' a common expression for something different, so this makes sense to native english speakers?

On:
I added a city reduce mechanincs some revisions ago.
We can more accurately represent if there was a shift in city importance in a given region.
I don't want to go overboard with using it though, so we should only use it occasionally:
Where both cities were way too important in different eras to leave them out, or when gameplay dictates it
 
Well, I'm not just considering its status right at 500 AD, but overall throughout the timeframe of the mod (or at least the first half). Bordeaux was an important city/sometime capital in the Duchy of Gascony and the capital of the Duchy of Aquitaine all the way until the French conquest in 1453. It was a provincial capital for centuries before that and as you said quickly regained prominence not long after start, so I think it definitely deserves to be preplaced in all games. It's even a spawned city in DoC, which in France is shared only by Paris itself and Lugdunum.

We do need to consider the inertia rule. If a city was important in the beginning of the mod, but became less important not much after that, it should get a lower chance of appearing than a city which would become more important later on.

Is that not what we are trying to avoid? I think we are risking the mod being deterministic because cities which became important due to historical events are put in place automatically, thus undermining the player's ability to influence said events.

Imo we should be allowing the player (and AI) maximum variation in the games they play, rather than saying "Well, Bordeaux and Naples were important in real life therefore they will be important in your game". After all, if not for strategic decisions taken in real life those cities would probably not have been particularly important, so why not let those decisions unfold in a different way?

That is a good point, but it does feel a little weird to have the Franks settling most of these regions rather than conquering them, which is what they really did best. Obviously if this were implemented a settler should probably be removed from France's starting stack.

But then you could apply that logic to any emergent civ, and remove almost all their starting settlers as they generally occupied existing cities rather than founding their own. Imo a nation's core should always be open to the player (and AI) to choose how to settle it, and of course which cities become important.

After all, it was the division of Clovis' kingdom that led to the rise of Paris, Reims and Orleans into major cities ahead of the surrounding settlements. So surely we should let the player simulate that for themselves, and choose other cities if they so desire to make into major ones in the French core.
 
One thought I had is would it be possible to simulate the process by which some conquered cities were abandoned and resettled elsewhere by their new owners. So instead of the usual capture / raze options, is it possible to have a resettle option whereby upon city capture you have the option to raze the city and get a settler instead of any gold from the capture?

That could be a good way to simulate the 'inertia' as Merjin refers to it, and give the player a choice of replacing cities they don't really want with ones which are more useful / historic, at a cost of lost infrastructure and gold.

It could also be applied to the AI, to provide some changes / variety due to wars and conquests.
 
Off:
Why do you always say "inertia rule"? It's like the third time you said that recently where it sounds sooo strange to me :confused:
It's inertia, like in Newton's law, right? Does the word have another meaning which I'm unfamiliar with?
Is 'inertia rule' a common expression for something different, so this makes sense to native english speakers?

It's a DoC expression. Basically, it just means that in RFC and civilization in general, things are much less dynamic than historically, and so if you want to have a desired effect/city/civ control/whatever down the road you kind of have to railroad it earlier on. It's the reasoning for what would otherwise be anachronistic design decisions in DoC (and other RFC mods).

Is that not what we are trying to avoid? I think we are risking the mod being deterministic because cities which became important due to historical events are put in place automatically, thus undermining the player's ability to influence said events.

It's a matter of personal perspective. Some people like determinism and to see historically important cities be constantly founded (with a more extreme example being SoI and RFCCW) and the game to run generally as historical (basically, people like me), while others like more dynamism and "what-if" scenarios (I imagine you're in this camp).
 
Top Bottom