[SCENARIO] World War I

This worked magically :woohoo:! How come people keep saying that ranged combat is impossible without DLL changes or new modcomps like Dales modcomps. Units behave EXACTLY as intended. They stay siege units, so no undesired air interception! They engage another artillery first! They can both attack and withdraw, they range bombard with their own hot key (B), and they remove regular cultural defences as before. They do not destry improvement -- which is fine I guess. Sure, would be nice to destroy farms and towns of enemy, but this will also destroy trenches (forts) -- too powerful and realistic.

So, kuddos, man! This all feels too good to be true, considering how many :I cannot do this" I got from seasoned modders. Right now I am playing BIG Earth 2010 PBEM with 7 humans and very heavy fighting, but our Modern Mobile Artillery there cannot range bombard.

So here is what I suggest:

1. Introduce 2 classes of artillery Light and Heavy, with 2 improvement upgrades each.
2. Only Heavy Art can range bombard. Direct attacks on cities and units need to be disallowed (too heavy for tactical attack) or at least produce worse withdrawal results than Light Art. Allow heavy art to KILL units and decrease in half the number of affected collaterals (too overpowered right now). Only heavy art can target another aerts (both light and heavy). Not sure if you can program active defence but that could be nice.
3. Light Art needs to stay exactly the way it was before. Should be twice cheaper than heavy and cannot kill but can attack directly and withdraw. Perhaps can start with tactics promotion to increase disengagement rate.
4. Improved upgradeable versions should just have better stats.
5. Dreadnoughts need to have range bombard too (but no preference in target).

I gave enemy lots of fighters but none of my range bombard artillery missions been intercepted, because game still treats them as siege units! Brilliant!
 
Thank you ;) I read this forum a lot you know and I have a good memory on where to pick the info needed.

I'll re-read carefully your post tomorrow and see what I can do about heavy artillery (art art art!). Dreadnoughts range bombardment is already in as several other changes stemmed from recent posts. In time, I could also introduce a railway gun, only able to move on railroads!

Today, I'm working on the Poison Gas unit, with Python action button that AI can use (that part is for tomorrow too): it inflicts damages on adjacent cells (not in cities) and is thereafter destroyed. For me, python, that is the fun part! :)
 
Tigranes, 2 or 3 things about your last post:

Some people say ranged bombardment is the cause of CtDs, others will deny that. I guess we will have to figure it out the hard way!

I'm a bit surprised about your remark on the hotkey as it is the same (B) as Bombard, when you are next to a city. Actually, ranged attacks have now (A) as the hotkey.

I won't have art for 2*2 types of artilleries. So things will remain with Light and Advanced Light, while I have a Railway Gun (borrowed from In The Trenches... :mischief:) to serve as heavy artillery. Dreadful, but you can only have one at a time, and it travels only on railroads. Watch out for railroads pillaged!

Statistics will be mixed (but I took your views in consideration), don't hesitate to assault me one more time with other figures! :D
 
I have now uploaded version 3 to the database.

Changes between version 2 one week ago and version 3 of today:

13 WWI Technologies: iCost raised again by 50% (total increase so far: 200%).

Removed AttitudeExtra=-2 from Germany to Italy
Added AttitudeExtra=4 from Britain to Belgium
Added AttitudeExtra=4 from Serbia to Russia

Event March 1915: Germany gets WWI_TECH_STRENGTHENED_STEEL_HULLS in addition to the three submarines.

Two artilleries:
a) added iAirRange=1, iAirCombat=iCombat, iAirCombatLimit=iCombatLimit, iEvasionProbability = 50, UNITAI_COUNTER, all for ranged bombardment
b) added UnitCombatTarget = UNITCOMBAT_SIEGE (counter-unit)
(actually, it's more complicate thant that now! See it for yourself)

Dreadnought: added ranged bombardment

in addition:
MISSION_BOMBARD: <HotKey>KB_B (no change)
MISSION_RANGE_ATTACK: <HotKey>KB_A

Machine Gun do not upgrade anymore to Portable (Light) Machine Gun.
Portable (Light) Machine Gun:
a) changed to UNITCOMBAT_GUN
b) req. Military Academy
c) no longer immune to collateral damages.

Tank:
Now req. Factory (German Tank A7V req. German Assembly Plant)
Regular Armoured Car: iCombat lowered from 28 to 25
UU for Germany: A7V Tank
UU for France: Renault FT17 Tank
UU for Great-Britain: Mark V Tank
All Tanks UUs: iCombat=28 (no change)
All Tanks UUs: Movement 1 instead of 2 (WW1 specific)

Destroyers can no longer see submarines (WW1 specific)

Airports do no longer have airlift capacity (WW1 specific)

Unit Poison Gas can hit adjacent cells and damage any unit on it, except own plot or City plot

New unit: Medic (req. Hospital); Medic promotions no longer available to Melee/Mounted/Siege/Gun units

New unit: Railway Gun (Heavy Artillery): can only move along railroads, req Factory or German Assembly Plant, iCost 500/400, 1 unit at a time.

TO DO:

Poison gas: effect? + Python AI Button (TCO1's tutorial: "How To Make Python Action Buttons")

Review python events (Russian revolution, Gallipoli)

Something else that I forgot?

Enjoy :)

And please leave us comments, witty remarks and reasonable flaming! :D
 
Poison Gas does not work at all (other than disappearing). It causes no damage, was it any different during your testing, or you don't even test :lol:?
It also cannot attack cities at all (no Poison Gun cursor appears).
It would be nice to have scull and bones added to Poison Gas "Gun" art, to make them more distinguishable from artillery.

If anything is abundant in database is different graphical files. I cannot imagine that finding 4 different looking guns is such a problem.

It's a very serious mistake to assume that at the beginning all parties could only produce light guns and they need to tech for heavy (which called improved light but acts as heavy). In general there were many different types of artillery used from the very beginning:

Infantry and mountain guns
Mortars, howitzers
Field, medium and heavy guns
Superheavy and siege artillery
Railroad artillery

You start the war with Infantry, Cavalry, machine Gunners and 2 types of artillery. I call them light and heavy for simplicity. Conservative and yet accurate to a degree. Why do you think this is a bad arrangement? No art?

Gameplay should encourage the use of both types. Light art. has no range but higher degree of withdrawal and twice cheaper. Heavy art. targets both types of artillery first (counter battery), has range (needs to be nerfed to collateral damage as many units as light withdrawing), and has bad chances to survive when used directly. Damages art. need to produce smaller range bombardment effect.

Improved versions of both will be just ... improved versions!

Railway gun is fine as is ("IMPROVED IMPROVED HEAVY ART." walking on rails), let them tech for it, except Germans should start with one (Big Bertha).

Giving Germans Sub tech in 1915 together with subs is a bad idea. By 1915 no one will be able to see subs yet -- Germany will be able to blockade every single British city without a fear of being detected and destroyed. They start with 1 and 3 free subs will be more than enough to replicate partial blockade felt by Britain from subs, while Germany will feel almost full blockade from much stronger surface ships.
 
Of course I tested Poison Gas unit and of course it works! Do you have another installation problem? :shake:

It targets only cavalry, machine guns and infantry units. No, it doesn't target cities (I think it was discussed in this thread a long time ago). Anyway, I don't think that poison gas was used much on cities, mainly on the battlefield.

A trick is that they will be more and more powerful (although it is random) depending on game turns, to simulate the "inventivity" of chemists during all war, going from tear gas to chlorine, mustard, etc.

I added the railway gun because it was fun to code it moving only along railroads. Big Bertha available to Germany at the start? Why not, although it doesn't seem that it was a railway gun but rather a road-mobile weapon.

Otherwise, it's true that I'm not much interested in digging in the database and add yet another unit, even if I recognise that you are right about availability of heavy artillery at the beginning of the war. I guess I uploaded version 3 because I was a bit fed up working on this.

About submarines: from my limited experience, the three given submarines are not a real threat to British or French fleets. To give the tech allows them to build submarines but you need a drydock and it takes time, when the Russians are quickly at your North East frontier. It just makes sense to have the tech together with the submarines, although I later realised that Germans have two submarines already at the beginning of the scenario...
 
Weekly update: version 4 is up!

Changes:

Python: put a cap (97%) to damages caused by Poison Gas units (as from 100th turn, would have been deadly all the time)

Palace: not buildable in this scenario (iCost = -1)

Deleted several buildings, units, leaders, technologies not relevant to this scenario

Improved flags

Added unit: Flamethrower

Added unit: Heavy Artillery (Dicke Bertha is in Berlin!)

Dreadnoughts can no longer kill units (just damage them) with ranged attack: was too easy.

Enabled Settlers (let's see, there are still empty places on the map)...

Added and fixed some other stuff.

MAP:
Added Forge to all cities, Lighthouse & Harbor to all coastal cities
Added Workers to all players

CIVICS:
Added a DIPLOMACY civic option: Central Powers, Entente, Neutrality.
Tried with two more categories: Neutrality with tendency to CP or E. Probably a bit too complex, dropped it.

STILL TO DO from version 3:
Poison gas: effect? + AI Button
review python events

Your comments and reports are welcome as they are a true support to modders.

Thank you and enjoy :)
 
About the new civic option, I should add the following: some civics are blocked for some civs (Python).

Spoiler :
Code:
		listNeutrals = [
			gc.getInfoTypeForString("WWI_CIVILIZATION_SPAIN"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_DENMARK"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_NETHERLANDS")]
		
		# listNeutrals_tendency_entente: USA, Romania, Greece, Portugal
		# listNeutrals_tendency_central_powers: Bulgaria, Sweden, "Italy"...
		
		listAntiCentralPowers = [
			gc.getInfoTypeForString("WWI_CIVILIZATION_RUSSIA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_FRANCE"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_BRITAIN"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_ITALY"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_USA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_SERBIA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_ROMANIA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_BELGIUM"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_GREECE"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_PORTUGAL")]
		
		listAntiEntente = [
			gc.getInfoTypeForString("WWI_CIVILIZATION_GERMANY"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_AUSTRIA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_OTTOMANS"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_BULGARIA"),
			gc.getInfoTypeForString("WWI_CIVILIZATION_SWEDEN")]
The three truly neutral countries cannot opt for another civic option but Neutrality. The "AntiCentralPowers" cannot choose CP civic and the "AntiEntente" cannot choose Entente civic (but they could both choose neutrality).

As explained, the two "Neutral_with_tendency" civics were abandonned (what about Italy?!).

Neutrality gives + 10% iGreatPeopleRateModifier
CP & Entente give - 25% iWarWearinessModifier.

All Leaders have their favorite Civic set for one of the Diplomacy option.

Edit: to further complicate the matter, 10 leaders have the Neutrality as favorite civic: the three listed above + USA, Romania, Greece, Portugal, Bulgaria, Sweden and Italy.
 
Thank you. The basis mod by Jon Shafer was excellent.

About dreadnoughts, I meant range attacks on land units. Sometimes they could wipe out the army in a city and your least good units could conquer the city without a serious fight. Now the limit of range attack is set at 65%. This is not a question of realism but rather of gameplay.
 
Great update! I was afraid you stopped working.having fun with this one. Wanna play against/with me/us to give your thought more food? :cooool:

One thing we would need to do though is naval mine/minefield unit. In all the WW games I play -- players abuse Navy getting in the places they would never get in real world because of mines. I tried so many times to code a good mine units, there are next to none in database. Main problem is this: if you make mine as low strength immobile submarine and pre-place them along the coast of Germany -- how you replace them if you wish to continue mine warfare? They wont leave your city!
 
Thanks for the interest. I might be fed up for a while (because this takes a lot of time and thinking) but I'm still interested in developing it further. For example, I searched all the database for Civ4 industrial and modern units and the only heavy artillery found was the "Big Bertha" from Snafusmith (but it's a good one!). Plus I'm even play testing the mod now, at least until 28th of July!

Version 5 is already on the way and I want to concentrate on Python events. I want Bulgaria to automatically declare war as the Central Powers are currently too weak. And I want a Russian revolution. I still don't understand why it doesn't work, as it was already thought of from the start.

Mine warfare is realistic but it would take a long time to code. In my private mod, naval units suffer from damages from the sea or the ocean all the time. Navigation1 and 2 helps them though, but not completely. Plus you can capture ships!

I love Python but I learned it on the spot here and I am rather slow at it. So don't expect mine warfare before the ultimate deadline.

Before that "deadline" (28th of July) , I'm still open to suggestions.
 
Bulgaria does start the war, very realistically, please do not change that. Any civ can revolt, there was German Revolution too. But Russian has a special chunk of code from what I see in python file...

In hands of a good player Central's are not that weak. Ottomans could use a slight buff, and German scientific institutions. The Kaiser Wilhelm Institute of Physical Chemistry and Electrochemistry also opened in 1912. Corporations could be a worthy addition, they played huge role.
 
And yes, letting people to build cities in 4 year long scenario is a big no-no. The only real life example was Murmansk.

Murmansk was the last city founded in the Russian Empire.[12] In 1915, World War I needs led to the construction of the railroad from Petrozavodsk to an ice-free location on the Murman Coast in the Russian Arctic, to which Russia's allies shipped military supplies.[7] The terminus became known as the Murman station and soon boasted a port, a naval base, and an adjacent settlement with a population which quickly grew in size and soon surpassed the nearby towns of Alexandrovsk and Kola.
 
I have now added market to all cities. This plus the forge, lighthouse & harbor (I would say a minimum in all (coastal) cities of Europe in 1914) is a small buff principally to the Austria-Hungarian, Ottoman & Russian Empires and the Balkans. I agree that there should be no new town but ideally they should all be placed on the map which is not the case. I won't fill up the places manually.

I can add a few science buildings to Germany, but they do get the tech for submarines for free. I can add back corporations even if only three of them could be founded at this stage.

As for Bulgaria, I haven't seen it yet enter the war (but I played them). The revolts do not seem to work. I have to study the mechanisms.
 
Try to play Serbia, it's fun, you can simply resist and let game to progress fast. Bulgaria will get into the war by scripted event, you won't even notice it -- no formal declaration. Around 1916...
 
I did as I'm play testing in Hotseat with different civs to have the big picture. It was fun and in the end I managed to take an A-H city without losing mine.

I've looked into the code for "Alignment" and I understand it now. It's a brilliant system, using data scripts to make sure the data is saved and it allows for additions of whatever new mechanism to slow down or accelerate the process.

The design was as follows: for the AI only, every turn would see certain civs (USA, Italy, Bulgaria, Romania, Greece) going towards a threshold of war against Central Powers or Entente. In addition, every unit lost by the Central Powers or Entente was counted and taken into consideration.

I made the following changes:
- added Portugal to the list
- fixed the first amounts to reach exactly the month entrance into war (see also unit lost count)
- made it also for human players (that's why when I was playing Bulgaria they did not enter war)
- turned off the unit lost count for USA and Bulgaria (USA entered war because of their civilians lost in ships sunk by German submarines) and I want Bulgaria into war for the balance.
- changed the logic of the unit lost count: previously, civs would go rather with the weak to help them. I reversed the logic to make it more diplomatically incorrect: civs would rather join the strongest camp to make sure they could grab out territories fast.

I'm aware that this is all debatable. I like history to kick in but I also like to allow the game to move on and rewrite history.

What I want next is to see how individual peace treaties could be concluded after a certain date (the historical dates of capitulations). That would be up to the player. Plus also to look into the revolutions system.

By the way, I again disabled settlers and then I discovered my first Barbarian city in Russia (Barbarians are in game for the rebels in revolutions)!

I still believe that allowing settlers would be more balanced than to add 20 cities for Russia at the start...
 
Why can't Russia fight with existing cities? Land is always the king in civ but not always in real life. Let them fight with existing cities and capture Barbarian cities when they spawn. In my game I had Barbarian city in Finland! Surely it was interpreted like some Finnish independents who got suppressed adding another city to my Empire!

By the way I would really love to see Russia and Serbia being detached from the rest of the allies. First it would balance research time, Central Powers could use it. Second -- Russia must have ability to stop fighting earlier. I know we have always war or peace, so peace has to be scripted somehow. Russian player should retain some cities to be able to fight civil war!
 
I'll leave the settlers out for now.

I totally agree with the splitting of permanent alliances, I don't like it. First thing I did yesterday was to make alternative civs declare war on Central Powers or Entente but not be part of a team. Then I'll split the teams because I can't find a way with Python to undo a permanent alliance. Maybe the Ottomans should also be a separate team.

By the way, the new civics work fine. I even saw a Bulgarian AI turn to Central Powers after x turns of war!
 
Back
Top Bottom