Napoléon I 1805 - 1815 ToTPP and Lua scenario updated to v1.3

Hi Prof. Garfield

I knew I had missed something!

I have certainly used your fantastic tutorials alongside some different lua-tutorial videos on youtube - with success :thumbsup: As I try to learn the basics, I have found great use of snippets of code from the scenarios for certain features, like the creation of munition for ranged attack units, the recruitment feature etc. But you're right that the OTR lua files are a bit overwhelming :crazyeye:

I'd like to extend a thank you for the work you have put in to make it so approachable for a novice like myself. It is greatly appreciated.
 
Hi Jack J,

In addition to Prof. Garfield's lua lesson, if you are interested in scenario designing I highly recommend you go to the "Scenario Creation Excel Sheet" thread and check out this post.

In it you will find a whole series of links and guides including the TOTPP v015.pdf file which outlines all the features that TNO developped for his Test of Time Patch Project (including how to add labels to the map, which you can find under item #63 Landmarks).

I hope you will find this usefull.
 
The amount of resources you guys provide continue to amaze me.
I believe I initially downloaded the spreadsheet, but somehow never looked into it and forgot about its existence since. This is great. Thanks :)
 
There are a lot of exciting projects currently underway, but I wanted to acknowledge how enjoyable and masterful I found this scenario to be. I hope everyone reading this post has attempted Napoléon I. I've been meaning to compliment the designers (Tootall and Knighttime) for a long time. I think it is near-perfect in terms of challenge and strategic flexibility. As usual, the richly detailed ReadMe by Tootall was super helpful in orienting me to the novel game mechanics.

Forgive me for providing some late, unsolicited feedback. First, this scenario is very difficult to win without first achieving Maritime Supremacy. (I think this is a smart and realistic outcome.) The success of this endeavor hinges somewhat on the starting positions of Villeneuve and his fleet. Kudos to the designers for randomizing these locations, which enhances the scenario's replay appeal. When I first attempted the game, I fared poorly on the naval front and ultimately got bogged down in a slugfest in Spain. By the end of 1811, Napoleon and half of my artillery units were blasting away at the last Spanish/British possessions around Gibraltar. Suffice it to say, this prevented me from mobilizing enough forces to Eastern Europe in 1812. I wasn't able to capture 4 key cities in Russia and was eventually thrown back to the Rhine. I never had so much fun losing a game before!

On my next attempt, I was able to gain Maritime Supremacy and knock Britain out of the war. This made my invasion of Russia much easier. Below are a few observations I made during my play:

1) What is the purpose of the "sea route" next to Taranto? It didn't seem to have any effect for me besides the loss of 100 francs.

2) Why do the light infantry (Infanterie Légère) cost more than the Régiment de Ligne units? The latter, with their twice as high defensive value, are far more valuable than the former. This is especially the case considering that I earned a stable supply of Carabiniers, which have a higher attack value than light infantry. I ended up swapping the costs of the two units, so that Régiment de Ligne was more expensive at 60 francs. Even with the light infantry at 50 francs, I found no need to buy or build such units.

3) I noticed a bug in an event that fires after subduing Spain. This is a simple error in which the Russian garrison event accidentally references Spain. The event should be changed to:
Spoiler :

-- If France fails to maintain a proper garrison in Russia after it has been subdued subtract 50 francs from treasury
if state.russiaIsSubdued == true then
if getFrenchTroopsInRussia() < 40 then
civ.ui.text(func.splitlines(displayMonthYear() .. " - Status Report:\n^\r^French garrison troops in Russia: " .. getFrenchTroopsInRussia() .."\n^\r^The lack of garrison troops is costing the French Treasury " .. garrisonCostRussia .. " this month."))
changeMoney(France, garrisonCostRussia * -1)
end


Feel free to ignore my 2nd observation, as it may be more a matter of personal preference. Again, I was blown away by the meticulous care and unique mechanics that went into this scenario. I see that it has inspired innovations from other designers. Thank you for creating this masterpiece!
 
I think it is near-perfect in terms of challenge and strategic flexibility.

I'm glad you found this scenario. My first playthrough of it, buried somewhere in these forums, where the AI absolutely trounced me in Spain and elsewhere and chased me all over Europe, was the inspiration for HoF. I think Napoleon is one of the finest scenarios ever made--truly up there with Red Front. If we had the same numbers now that we had then, I have no doubt there'd be threads dedicated to dissecting strategies to beat it.
 
Hi minipow01,

When I first started designing Napoleon in earnest TNO was just releasing the lua component of ToTTP. I didn’t at first comprehend how revolutionary a tool this would end up being, though John certainly did and he would soon begin working on his first ‘Caesar’ project along with Grishnach .

By the time I had finished laying all the ground work and had a fully functional scenario, minus the events, they had released their projects and I soon understood not only how powerful it was but how it could potentially allow me to implement all the special features I’d been storing up in my mind (and would with their permission reuse many of their features in Napoleon's design).

After some preliminary discussions with Grishnach, she offered some advice on the route to go but was unavailable to assist directly as she was already busy working on other projects with John and McMonkey.

That’s when, around the same time, Knighttime offered to collaborate and bring his considerable programming talents to the mix. As I’ve often said, his coding laid down the whole foundation to the events, particularly with regards the diplomatic interactions, without which I could not have achieved my full goal and vision.

It’s already been 2 years since I released the last version of the scenario and roughly a year and a half when I last had a private discussion on the project with John Ellis enquiring on the reasons why I made the design choices I did. For those who may be interested here is recap of that discussion:

Spoiler :

Hi John,

First of all thank you for the interest you’ve expressed in the scenario and for your follow up questions.

As I mentioned previously, I worked on this project over a period of two years and in that time, as you may imagine, it went through many evolutions and changes based not only on hundreds of hours of my own play testing but on the numerous feedback from community members.

It’s also important to understand that during the design process, I tried to adhere to the following fundamental ideas:

  • This was a historical simulation, which meant as much as possible I tried to remain true to the historical context of the period (no outlandish or far-fetched alternate historical outcomes)
  • This was a strategic level simulation, which meant all the mechanism of the game had to be designed to form an interconnected and cohesive whole that attempted to maintain the historical economic, diplomatic, industrial and military balance of the nations at play.
  • Human vs AI capabilities: whenever required, introduce features or provide handicaps to compensate for the AI’s natural weaknesses, in order to maintain a certain level of play balance and provide the human player with a greater challenge then would be otherwise possible.
Many of the points you brought up where also a source of discussion in my development thread, so I may have reused my same arguments here.

1. Maritime Supremacy:

Why did I impose a time limit or even make it a precondition for receiving the ‘Naval Transport’ advance.

I didn't want France to have any chance whatsoever of being able to invade England if it hadn’t first met some prerequisite objective, in this case maritime supremacy. Historically, the possibility of a successful naval invasion of England by France was a tenuous proposition in the best of circumstances.

Even if Admiral Villeneuve had won a glorious victory at Trafalgar in October 1805 the window of opportunity for invading England was very limited, as the British where in the process of mobilizing their reserve naval forces and France being primarily a continental power would be unable to match this level of mobilization. Not to mention the fact that in pure expertise and experience, the French Navy wasn't the equal of the Royal Navy (as far as I’m aware it failed to win a single naval engagement of note during either the Revolutionary or Napoleonic periods) . This was even more problematic due to the fact that, at the time of the naval battle, the Grande Armée was some 1000km away from the English Channel trying to defeat the combined forces of Austria and Russia.

Though it is true, as you say that Napoleon was able to invade Egypt, it was only after eluding the pursuing Royal Navy in the larger expanse of the Mediterranean Sea. But, as we know, once Admiral Nelson’s fleet showed up off the Bay of Abukir and defeated the French Navy stationed there, Napoleon’s invasion of that region was, without the possibility of further reinforcements or supplies, ultimately doomed to failure.

No such furtive operation would have been possible in the narrow English Channel were every French port was under constant surveillance and consistently blockaded by the larger and aggressive British Navy. The fact that Napoleon never really considered invading England after Trafalgar should be a testament to that reality.

Therefore, the more time went on, the stronger the British Navy became the less likely that any feasible invasion by the French Navy became possible. So I determined, in game terms, that if the France couldn’t establish some form of minimal naval superiority required to even envision any kind of serious invasion by January 1808, when France’s continental military engagements were still manageable, the likelihood that it ever could was for all practical purposes extremely unlikely.

With regards the transports, if I allowed the French to build or even possess a couple of these units, prior to establishing maritime supremacy, it would make achieving that objective for all intents and purposes irrelevant as the human player could almost always slip an invasion force onto the British Isles without any large naval commitment or even battle.

Why is that so? Because one of the most difficult aspects to control in Civilization scenarios is the behavior of the AI’s naval units. In fact it is almost impossible to do so. In test after test, with different variables, I’ve seen British naval units just sail by French naval units without stopping or attacking. In a game like this, were control of the sea is vital, you simply can’t rely on the AI to do the job that needs to be done.

In reality, any such invasion force would have been fiercely contested and opposed by the Royal Navy, making not only the initial landing but subsequent attempts to resupply or reinforce almost entirely impossible. Hence my desire to establish MS as a precondition for being able to invade England.

2. The Spanish Alliance

Why did I consider the achievement of Maritime Supremacy essential to cementing this Alliance?

First of all you have to understand that it was always my intention from the very beginning to make it difficult for the French to renew the alliance with Spain simply because, historically, the relations between these two powers was a very tenuous one at best.

As I wrote in my opening texts, the Catholic clergy, who controlled the peasantry, was fiercely opposed to the ideals of the French Revolution, because it threatened their position of power. The ruling class resented French pressure to curtail its trade with England, as this was its main source of revenue, and this was only possible as long as its ports were open to English vessels. There were many anglophiles within the ranks of the Army and the elite who preferred relations with England over France.

When Napoleon deposed the Ferdinand VII and tried to place his brother Joseph on the Spanish throne, the reaction from the people and the army was immediate and violent and would remain so for the entire Peninsula War demonstrating that the alliance had always been on a very shaky foundation.

Portugal was England’s staunchest ally on the Continent, and as long as it remained independent from French control could be a direct route for English goods, influence and if need be arms into Spain.

Therefore, it seemed like an entirely plausible conclusion, and game mechanic, that to maintain this alliance that France had to curtail England’s access and influence to Spain and that could only be achieved if it controlled the seas around Spain’s ports (Maritime Supremacy) and Portugal itself.

All the same, I wanted to give the French player, who so desired, at least an opportunity, though a slim one, to attempt to change the course of history.

To be honest, the conditions for invading Portugal and achieving MS were easier initially but after multiple plays through by two experienced players, countmc and Prof. Garfield, revealed that they were able to achieve both with somewhat regularity. As such, I felt compelled to make it somewhat more difficult in game terms (as it proved to be historically as well, as Napoleon’s fleets never came anywhere close to the defeating the Royal Navy and though his armies were able to overrun Portugal in 1808 it did not weigh in the balance when came time to maintaining his alliance with Spain).

I will concede, in my attempts to stymie these two players, that in my final version 1.3, I may have made the conquest of Portugal, within the allotted time a little too difficult to achieve in most circumstances.

3. The missile bombardment idea for ships

The introduction of naval shells for the French Navy was the consequence of a very long series of trials, modifications and testing, related in no small part to the objective of achieving Maritime Supremacy.

As I recall, initially there were no such missile units and I left it to the navies to fight it out in the traditional manner. But as I mentioned previously, the AI had a nasty tendency to ignore French vessels and thus began an endless series of trials and tribulations. I’ll spare you the very long list of details but essentially, I went from the ships being able to fire multiple shells from wherever they stood, to only being able to fire one shell when located on an ocean tile. All these changes were done ultimately, to expose the French Navy and ultimately provide the AI controlled navies more opportunities to engage the French.

It hasn’t been my personal experience that I could easily roll up Spanish Coastal cities with my naval units, as the British or Spanish navies aren’t totally ineffective or passive. I don’t recall other players reporting this to be the case either. I’m not saying in your experience this might not have been the case but simply that it’s never really come up as major issue in the development thread.

The Bombarde usually only comes later in the game and isn’t exactly cheap to build or maintain (at 300 shields it’s the equivalent of building 6 Régiment de Ligne and cost 8 Francs per turn to sustain).

The idea of Shore bombardment and the British Royal Marines was a feature that was hotly contested by many players as well, but I insisted on maintaining this feature. Though it is true the British vessels didn’t assault French coastal positions in this manner, what is true is that Napoleon did maintain a substantial garrison troops within France itself during the entirety of the war in order to protect it from any potential threat.

In the early versions of the scenario, some players reported leaving France almost totally undefended, which seemed wholly unrealistic. Therefore, the whole reason these 2 features were introduced was with the specific goal of making life more difficult for the human player and force them to properly defend France, along with other Spanish and Italian coastal cities, from possible British invasion forces (of which the Royal Marines are the spearhead). Otherwise, failure to do would risk having to deal with unexpected and unwelcome invasions, which if left unchecked could see significant areas of France overrun.

You may ask, why did I put so much emphasis on the concept about Maritime Supremacy? Because ultimately control of the sea was a great deal more than simply France’s ability to maintain their alliance with Spain. It was about its ability to curtail England’s trade with the other European powers, which served to undermine France’s diplomatic relations with these powers. It was about England’s ability to support these same powers financially when at war with France and finally England’s ability to sustain its own military operations against France on the European mainland.

In the end, I fear I will never be able to find a perfect solution given the very real limitations of the platform. But I think I was still able to produce a reasonable and plausible one.


4. The infantry/cavalry's roles

In my design, I decided I would follow a relatively simple but historical classification of units: infantry, cavalry, artillery, guard, fleets along with a few specialist units.

Each classification, when appropriate, could be split further into offensive vs defensive types or in the case of artillery and naval units into increasing levels of offensive capabilities.

Each would be assigned more or less their traditional roles and their resource costs graded according to their classification (with infantry being the cheapest to produce and the artillery and naval vessels the most expensive).

Therefore artillery would provide your offensive punch, cavalry your spearhead and pursuit, light infantry for mopping up, line infantry your defensive backbone and Hussars be used for reconnaissance (a vital role in a game like Civilization where the only way to know an enemy’s disposition in cities is through the spy mechanism).

This approach would allow me to do three things:
  • Provide a similar number of units types mix for all 7 nations
  • Reduce the overall number of choices the AI would need to make when building units (when it comes to the AI more is not better, as it will typically only build a select few types and disregard most others no matter how much you try to make distinctions between them)
  • Reduce my need to create for the AI, through the event file, those extra units that it would never choose to build on its own and therefore force me to compensate each nations overall on board productive capacity to maintain the historical power balance.

As an example, the Napoleonic era saw a whole range of cavalry unit types, many more than I could ever have included with the framework of the game. As I recall the Cuirassiers and Lancers weren’t even the most numerous types to be found within the ranks of the cavalry corps (in fact, during my research on the period I discovered that there were more Dragoons cavalry regiments than Lancers or Cuirassiers combined).

The reason I choose the later two, given the overall unit limit, is that I wanted cavalry units that had more offensive/defensive contrasts for the player to choose from. In this case, the Lancers have a higher attack factor but a lower defensive one, whereas the Cuirassiers have a reasonable attack factor but good defensive one.

By limiting, as much as possible, each unit classification to two units, I hoped to limit the number of choices the AI had to make in its build choices. But even these relatively smaller numbers proved too much for it, and there are a number of ‘assists’ I had to include in the event file to add so that these units would see the light of day in the game (and therefore, for Russia and England in particular, I had to reduce the productive capacity of some of their cities to compensate for the extra units I was generating through the event file).


5. Artillery

The French 12pdr and Mortar units are indeed quite powerful artillery units, in game terms, and they can significantly impact your success on a battlefield, particularly against well defended cities or positions. Originally, it was possible for the French to research both of these units much sooner. But I soon discovered that players would beeline for them as soon as possible and thereby considerably improve their overall chances of victory on the battlefield, a little too much in the way of play balance in favor of the human player.

After some further research, I discovered that though these units were indeed already available in the French inventory prior to 1805, they were actually only in very limited numbers, with the core of French artillery being composed mainly of 6 and 8 pdrs. It’s not till mid-1809 that Napoleon, after France’s manpower reserves were starting to suffer from the countless wars, ordered an increase in the firepower of his artillery corps. It’s only from them on that the 12 pdr started to represent a greater portion of overall artillery batteries.

The same reasoning holds true for the Mortier de 12po who are particularly useful in the campaign in Spain where the majority of major forts reside. If I allowed the French player to possess them too early they would make the conquest of the Peninsula much less challenging. As we know France campaigned for 6 years in this area and ultimately failed to secure the country despite all its commitment of troops (it had over 300,000 soldiers deployed there at the height of the conflict).

So therefore in the case of both the 12pdr and Mortier de 12po, I made a tactical decision to delay their introduction in order to increase the human player’s difficulty level and thereby give the AI a better fighting chance.

6. Leader units

This topic came up frequently in my development thread and as I said at the time, I have to be honest; this is the one feedback that I received from players that baffled me the most.

As I mentioned to the community at the time, I’ve played hundreds of hours as part of my testing and had to confront scores of Coalition leaders, and though, yes they had at times given my forces a bloody nose, forced me to make a hasty tactical retreat, put up a stubborn resistance in this or that city or hill, in the end I never ultimately failed to overcome each and every one of them be it through tactical manoeuvring, patience or simple brute force.

As most players familiar with the period know, Napoleon certainly did NOT win all the battles he fought. And for me that was the whole point of these leaders, to give the players, and myself, a real challenge and not simply be able to steam roll over the opposition whenever or wherever I went.

If it helps, don’t think of Allied leaders as merely the generals with their staff, but more perhaps as veteran units that are the spearhead of an enemy offensive being led by particularly capable leaders.

In the end, these units have fulfilled the role I designed them for. If someone asked me in the future what elements would I want to keep in any redesign of the scenario, Allied leaders would certainly be among the top features on that list.


7. Missing units

Like most players and designers, I too like to see a large diversity of units in the game and for many tactical battle scenarios, where production often isn’t a consideration; this is quite possible and desirable. But for strategic level games, that encompass the entire economic, diplomatic, productive capacities of the human and AI nations this becomes more problematic.

Why is that so? As I mentioned previously, because though the human player may be discerning in the build choices he may decide to make, the AI will not. It will only select to build a few unit types no matter how distinct you try to make their combat/defense values. Even in the more limited array of units available in this scenario, there are still many that each AI power would simply not build at all or only in very limited numbers.

For my part, I wanted to ensure that each nation had this basic mix of units types available, with some variations from one nation to the next. In addition, I wanted to make room for a selection of naval units, specialists, leaders and just as importantly a number of minor power units (which played an important role in providing Napoleon extra manpower for his wars).

Trust me, you aren’t the first community member to suggest a slew of different unit options but, as all designers have to do, I made choices that I felt best reflected my personal vision for the scenario.

Why didn’t I make more distinction between the belligerent’s unit’s combat values? For my part, at the start, I didn’t have too much material or experience in determining what could be proper combat values for units of the era.

As you may have read in the Credit notes of the ReadMe guide, the game ‘War & Peace’ by Mark McLaughlin, served as a source of inspiration and a research resource for my own design. In it, the game has a relatively simple unit concept, i.e. there are infantry, cavalry, Landwehr/Militia, Guerrilla, Guard, Fleets/Transport units. What distinguishes the units from one nation to the other is their morale factor, where 1 single combat factor may represent 5000 infantry units

For example, each combat factor for the French/Russian or British infantry units have a morale value of 2, whereas Spanish/Prussian/Austrian combat factors have a morale value of 1. Guards typically have a morale of 3 whereas Militia and Landwehr a morale of 0.

From this very simple basis, I began to construct a combat values structure starting with the defensive/offensive infantry. There were many adjustments done along the way but as a basis I came up with the following starting point:

French/Russian/British Line Infantry (defensive unit with a morale 2): 5/6/1/1
Austrian/Prussian/Spanish Line Infantry (defensive unit with a morale 1): 4/5/1/1

French/Russian/British Line Infantry (offensive unit with a morale 2): 6/3/1/1
Austrian/Prussian/Spanish Light Infantry (offensive unit with a morale 1): 5/3/1/1

As I researched more about the different unit types and the combatants of the era I started to build a more comprehensive combat structure for all the units and made many refinements and adjustments along the way. It was a simple approach. Could it have been better? Possibly but ultimately I think it was a cohesive and coherent approach and brought balanced results. No one has ever indicated that play balance was effected as a consequence of these decisions and I never felt in my own play throughs that the balance.

As a designer, it’s always difficult to properly gauge that fine line between making a scenario that is somewhat or very challenging for players. You don’t want to make it so hard that only the most expert players can ever hope to achieve success but still not so easy that it poses no challenge.

At the same time, though we strive to cover as many situations in our design as we can, it’s simply not possible to foresee all the possible combinations of events that the different players may encounter or the preferences of each; especially in a scenario that is 120 turns long, contains six other major powers and a map with over 7000 tiles.

I could go on with all the many other reasons I made all the decisions I made during the design process, but I think I covered at least most of the important ones in relations to your questions.

It’s certainly the fate of all designers that others will not always agree with the decisions or the paths you made and that’s okay but at least I hope that my answers helped to explain why I made the choices I did.

To be honest, if I tried to incorporate all the different changes and additions that players made or requested, I probably would still be working on the scenario today. If this were a franchise on the market that produced revenue I would probably view this in a different perspective. For me, this is primarily just hobby, though one I greatly enjoy (the research, design and testing process are all fascinating to me). I have such a backlog of other projects I want to pursue, some of which are already in different stages of development, many of which I imagine I'll probably never have a chance to complete.

I'm quite proud of what me and Knighttime managed to create with Napoleon, it's imperfections and all. But upon reflection on answering your questions, I came to realise spending two years on a single project is probably as much time as I'm prepared to dedicate to any one in particular (my second most time consuming project was Vietnam and that one 'only' took one year).



Forgive me for providing some late, unsolicited feedback. First, this scenario is very difficult to win without first achieving Maritime Supremacy. (I think this is a smart and realistic outcome.) The success of this endeavor hinges somewhat on the starting positions of Villeneuve and his fleet. Kudos to the designers for randomizing these locations, which enhances the scenario's replay appeal. When I first attempted the game, I fared poorly on the naval front and ultimately got bogged down in a slugfest in Spain. By the end of 1811, Napoleon and half of my artillery units were blasting away at the last Spanish/British possessions around Gibraltar. Suffice it to say, this prevented me from mobilizing enough forces to Eastern Europe in 1812. I wasn't able to capture 4 key cities in Russia and was eventually thrown back to the Rhine. I never had so much fun losing a game before!

It’s very nice to hear that even after two years that there are still players enjoying the scenario.

As it was historically, Spain remains a real drain on French resources and a theater you cannot easily ignore not only because of British interference but because of its valuable objective cities.

On my next attempt, I was able to gain Maritime Supremacy and knock Britain out of the war. This made my invasion of Russia much easier. Below are a few observations I made during my play:

I will admit, despite my best attempts to make the British naval AI more competitive, that Maritime Supremacy has proven to be the Achilles heel of the scenario. If you can defeat the British navy early on and successfully invade England, you definitely have a leg up in achieving supremacy on the continent.

As I recall, in my final version of the scenario I did add the possibility that Russia could declare war on France if it invaded England. Did this occur during your last play through?

1) What is the purpose of the "sea route" next to Taranto? It didn't seem to have any effect for me besides the loss of 100 francs.

Establishing the “Sea route” in Taranto allows you to teleport to the second map and thereby permits you to transit to the island of Corfu. Capturing the city of Corfu prevents the Russian navy from generating further naval units in that port. In addition, it gives you a small gold bonus per turn as long as you control the city.

2) Why do the light infantry (Infanterie Légère) cost more than the Régiment de Ligne units? The latter, with their twice as high defensive value, are far more valuable than the former. This is especially the case considering that I earned a stable supply of Carabiniers, which have a higher attack value than light infantry. I ended up swapping the costs of the two units, so that Régiment de Ligne was more expensive at 60 francs. Even with the light infantry at 50 francs, I found no need to buy or build such units.

During my research I discovered that the Infanterie Légère were actually considered as elite units. Only the best marksmen of the French Infantry were assigned to these units and were used as advanced sharpshooters during a battle to pick off enemy targets, hence their higher combat value and thus production costs.

With regards the Carabiniers, as I recall, initially you would receive 1 free unit for every 5 enemy infantry unit destroyed but that proved way too much. I then increased it to 10 and finally 15 but perhaps it’s still too great a number. As you say, with all these extra free units it kind of makes building the Infanterie Légère moot. If I ever decided one day to release another version, I probably might increase that value to 20 or 25.

3) I noticed a bug in an event that fires after subduing Spain. This is a simple error in which the Russian garrison event accidentally references Spain. The event should be changed to:

It's been a long time since I last modified the file, can you specify exactly which lines of code you are referring too?

Again, I was blown away by the meticulous care and unique mechanics that went into this scenario. I see that it has inspired innovations from other designers. Thank you for creating this masterpiece!

I'm glad you found this scenario. My first playthrough of it, buried somewhere in these forums, where the AI absolutely trounced me in Spain and elsewhere and chased me all over Europe, was the inspiration for HoF. I think Napoleon is one of the finest scenarios ever made--truly up there with Red Front. If we had the same numbers now that we had then, I have no doubt there'd be threads dedicated to dissecting strategies to beat it.

On behalf of Knighttime and myself, thank you both for the very kind words.
 
Last edited:
I think Napoleon is one of the finest scenarios ever made--truly up there with Red Front. If we had the same numbers now that we had then, I have no doubt there'd be threads dedicated to dissecting strategies to beat it.

Totally agreed. I see why you made a Youtube video about it. If more people knew about these newer scenarios such as Napoleon, then I'm sure we'd see even more folks like Pablostuka and John Ellis returning to the Civ2 fold.
 
It’s very nice to hear that even after two years that there are still players enjoying the scenario.

... and I know another player who wants to enjoy your scenario, when there is the time for it. :)
 
Hi tootall,

It is fortunate you were able to incorporate so many special features with Knighttime's help. Because it takes time to appreciate all of these new features (leader attack bonuses, naval embargo zones, special building prerequisites, etc.), the scenario might seem intimidating at first. However, the Readme was very informative, and it didn't involve too much effort to familiarize myself with the game concepts.

I will admit, despite my best attempts to make the British naval AI more competitive, that Maritime Supremacy has proven to be the Achilles heel of the scenario. If you can defeat the British navy early on and successfully invade England, you definitely have a leg up in achieving supremacy on the continent.

As I recall, in my final version of the scenario I did add the possibility that Russia could declare war on France if it invaded England. Did this occur during your last play through?

I may have simply been lucky with the starting position of Villeneuve. Although he was sacrificed during his dash to the French coast, the supporting fleet was spared. I think the Maritime Supremacy idea is executed well. Perhaps you could tweak it somewhat, but the overall design choice is sound. Russia never declared war on me when I invaded and successfully subdued England.

Establishing the “Sea route” in Taranto allows you to teleport to the second map and thereby permits you to transit to the island of Corfu. Capturing the city of Corfu prevents the Russian navy from generating further naval units in that port. In addition, it gives you a small gold bonus per turn as long as you control the city.

Okay, I probably never noticed that I was getting a gold bonus. I also never understood how I could teleport units to the European Powers map. Despite moving units to the vicinity of tile 109,105 after capturing Taranto, it didn't seem possible to teleport anything.

During my research I discovered that the Infanterie Légère were actually considered as elite units. Only the best marksmen of the French Infantry were assigned to these units and were used as advanced sharpshooters during a battle to pick off enemy targets, hence their higher combat value and thus production costs.

I understand the historical basis for treating the Infanterie Légère as elite units. In practice, their combat stats are not very formidable. Their attack value is barely better than the Régiment de Ligne.

It's been a long time since I last modified the file, can you specify exactly which lines of code you are referring too?

The code in question is:

If France fails to maintain a proper garrison in Russia after it has been subdued subtract 50 francs from treasury
if state.spainIsSubdued == true then
if getFrenchTroopsInRussia() < 40 then
civ.ui.text(func.splitlines(displayMonthYear() .. " - Status Report:\n^\r^French garrison troops in Russia: " .. getFrenchTroopsInRussia() .."\n^\r^The lack of garrison troops is costing the French Treasury " .. garrisonCostRussia .. " this month."))
changeMoney(France, garrisonCostRussia * -1)

Spain (in bold) needs to be replaced with Russia (i.e., "if state.russiaIsSubdued == true then")
 
Last edited:
I may have simply been lucky with the starting position of Villeneuve. Although he was sacrificed during his dash to the French coast, the supporting fleet was spared. I think the Maritime Supremacy idea is executed well. Perhaps you could tweak it somewhat, but the overall design choice is sound. Russia never declared war on me when I invaded and successfully subdued England.

Yes, in this case I was referring more to the fact that the British naval AI often fails to attack French naval unit out on the open sea even when the opposing units are in close proximity. This gives the human player a significant advantage in that they can attack and eliminate the British units without getting destroyed themselves.

If the British AI was more effective and aggressive, as they were in real life, it would be much harder for the French player to rack up the necessary number of kills before the British did.

Okay, I probably never noticed that I was getting a gold bonus. I also never understood how I could teleport units to the European Powers map. Despite moving units to the vicinity of tile 109,105 after capturing Taranto, it didn't seem possible to teleport anything.

It's been a long while so I had to look it up in the event file again. As per the following text did you press on the 'u' when either Davout, Lannes or Soult are located in the city of Taranto.

Code:
[[*****************  GAME TIPS - Sea Route to Corfu  *****************
^
^The capture of the kingdom of Napoli will permit you to build a 'sea'
^route on the 'European Powers' map between the cities of Taranto
^and Corfu, the latter of which serves as a base of operations for the
^Russian navy in the Mediterranean and which could become a  
^lucrative trading post with the Ottoman Sultanate for France.
^
^To build the route, you simply need to have one of you marshalls,
^Davout, Lannes or Soult, located in the city of Taranto and press
^on the 'u' key and a pop up window will appear giving you the option
^to establish the route for 100 francs. You can establish the route
^at any time and once created it will be permanent.
^
^This 'European Powers' map sea route will be accessible from tile
^109,105 located just south-east of Taranto.

When you do so it should open up the following route on the European Powers map 2

upload_2022-2-20_17-14-45.png


Therefore when French units are on tile 109,105 press on the 'n' key to be transported to map 2. Then you can move to tile 115,109 of the same map and press on 'n' again to be brought back on the same tile next to Corfu on the main European Map 1.

Prior to establishing the sea route, map 2 should look like this.

upload_2022-2-20_17-26-19.png


Just to be certain, I did a quick test again today and it worked correctly for me.

With regards the gold bonus, it's a small return per turn but it adds up over the course of the game so the sooner you conquer Corfu the more you can benefit from it.

I understand the historical basis for treating the Infanterie Légère as elite units. In practice, their combat stats are not very formidable. Their attack value is barely better than the Régiment de Ligne.

The advantage of the Infanterie Légère becomes more pronounced when you start adding the veteran status and a leader bonus. There designed to be much more offensive units and these added bonuses will often make the difference between winning versus losing a battle, as opposed to attacking with the Line Infantry under the same circumstances.

The code in question is:

If France fails to maintain a proper garrison in Russia after it has been subdued subtract 50 francs from treasury
if state.spainIsSubdued == true then
if getFrenchTroopsInRussia() < 40 then
civ.ui.text(func.splitlines(displayMonthYear() .. " - Status Report:\n^\r^French garrison troops in Russia: " .. getFrenchTroopsInRussia() .."\n^\r^The lack of garrison troops is costing the French Treasury " .. garrisonCostRussia .. " this month."))
changeMoney(France, garrisonCostRussia * -1)

Spain (in bold) needs to be replaced with Russia (i.e., "if state.russiaIsSubdued == true then")

Thanks for noticing the error though I'm uncertain how you managed to discover it as it's buried deep in 8600 lines of code! :)
 
Last edited:
It's been a long while so I had to look it up in the event file again. As per the following text did you press on the 'u' when either Davout, Lannes or Soult are located in the city of Taranto.

Therefore when French units are on tile 109,105 press on the 'n' key to be transported to map 2. Then you can move to tile 115,109 of the same map and press on 'n' again to be brought back on the same tile next to Corfu on the main European Map 1.

Just to be certain, I did a quick test again today and it worked correctly for me.

I was able to set up the sea route by pressing 'u', but couldn't manage to transport any French units to map 2. If they were indeed transported, then I must have missed it somehow. Maybe part of the problem is that I don't know how to toggle between the main map and map 2. I would constantly have to give the wait command ('w') to dozens of units on the main map before it would take me to map 2. Is there a key I can press to switch between maps?

The advantage of the Infanterie Légère becomes more pronounced when you start adding the veteran status and a leader bonus. There designed to be much more offensive units and these added bonuses will often make the difference between winning versus losing a battle, as opposed to attacking with the Line Infantry under the same circumstances.

I guess an attack value of 13.5 versus 11.25 (when both are veteran and stacked with Napoleon) could make a significant difference. For me, I never had a shortage of offensive units, so I prioritized the building of Line infantry.

Thanks for noticing the error though I'm uncertain how you managed to discover it as it's buried deep in 8600 lines of code! :)

The only reason I noticed this error is because I was annoyingly losing 50 francs per turn after I renewed the Franco-Spanish alliance. The stated reason was that I didn't have enough troops garrisoning Russia, which didn't make any sense given that I had not yet subjugated Russia. Long story short, I knew where to look. ;)
 
Yes, in this case I was referring more to the fact that the British naval AI often fails to attack French naval unit out on the open sea even when the opposing units are in close proximity. This gives the human player a significant advantage in that they can attack and eliminate the British units without getting destroyed themselves.

If the British AI was more effective and aggressive, as they were in real life, it would be much harder for the French player to rack up the necessary number of kills before the British did.

I don't know if this applies, it's just a thought. In my experience, the aggressiveness of the AI towards a given civ depends on the attitude of the attacking civ towards the defending civ. The more hostile civ A is towards civ B, the more likely its units are to attack civ B's units.
 
Maybe part of the problem is that I don't know how to toggle between the main map and map 2. I would constantly have to give the wait command ('w') to dozens of units on the main map before it would take me to map 2. Is there a key I can press to switch between maps?
I was lost too before finding the way to go :D

exemple.png
 
I don't know if this applies, it's just a thought. In my experience, the aggressiveness of the AI towards a given civ depends on the attitude of the attacking civ towards the defending civ. The more hostile civ A is towards civ B, the more likely its units are to attack civ B's units.

Yes, this is something we considered from the very start, i.e. whatever nation France happens to be at war with, we always reset it's attitude to 100 Dislike.

Since France is basically always at war with England, unless it manages to conquer it, then it's attitude is always set at 100.

Conversely, when France goes to peace with a power we reset its attitude to 0 Like as long as it remains in that state.
 
Yes, in this case I was referring more to the fact that the British naval AI often fails to attack French naval unit out on the open sea even when the opposing units are in close proximity. This gives the human player a significant advantage in that they can attack and eliminate the British units without getting destroyed themselves.

If the British AI was more effective and aggressive, as they were in real life, it would be much harder for the French player to rack up the necessary number of kills before the British did.

This is also a problem I've run across in my WIP Empire of the Rising Sun, given how heavily it relies on open sea naval combat and AI aggression in that regard, so, I too, would be very keen on seeing if a good resolution could be done.
 
This is also a problem I've run across in my WIP Empire of the Rising Sun, given how heavily it relies on open sea naval combat and AI aggression in that regard, so, I too, would be very keen on seeing if a good resolution could be done.

While play testing Medieval Millennium with Knighttime one of the elements we wanted to check is what where the parameters under which a missile unit would or not attack. As I recall, we discovered that the production costs of units played a role.

For example, if an attacking missile unit had a base cost of 10 production shields and the defending unit had a base cost of 30 production shields than the missile unit would not automatically attack it. On the other hand, if the defending unit’s base cost was 40 shields or more than the missile unit would always attack.

Furthermore, if the defending stack had, say, 2 units with a base cost of 30 and one of 40 and you had two missile units the latter would attack the stack. If the first missile managed to destroy the 40 cost unit, the other missile would not necessarily continue to attack the pile. Whereas if the 40 cost unit was still alive but damaged the 2nd missile would attack as well.

In Napoleon, I tried to play with this by reducing the cost of the Allied naval units versus the French (for example I reduced the Three Decker cost to 220 shields as opposed to the equivalent French Trois-ponts cost of 360). As far as I remember this only improved the British aggressiveness slightly and therefore was not the panacea I was hoping for.

In exchange, I also had to reduce the productive capacity of many of the British cities capable of building naval units to offset this reduced cost.

The only option I didn’t fully test was to reduce the cost of Allied naval unit to a mere 10 shields each because that would have introduced an issue with play balance, i.e. since technically I would have either had to significantly reduce the productive capacity of many British/Spanish cities to avoid them building an unrealistic amount of naval units or removed their ability to produce naval units altogether and handle the production of such units through the event file (Prussia and Austria weren’t able to build any naval units in the game and Russia was only limited to 1 or 2 cities).

I don’t know if this information is useful to you in your own design but I thought it couldn’t hurt to share my own personal experience on the subject.
 
Last edited:
While play testing Medieval Millennium with Knighttime one of the elements we wanted to check is what where the parameters under which a missile unit would or not attack. As I recall, we discovered that the production costs of units played a role.

For example, if an attacking missile unit had a base cost of 10 production shields and the defending unit had a base cost of 30 production shields than the missile unit would not automatically attack it. On the other hand, if the defending unit’s base cost was 40 shields or more than the missile unit would always attack.

Furthermore, if the defending stack had, say, 2 units with a base cost of 30 and one of 40 and you had two missile units the latter would attack the stack. If the first missile managed to destroy the 40 cost unit, the other missile would not necessarily continue to attack the pile. Whereas if the 40 cost unit was still alive but damaged the 2nd missile would attack as well.

In Napoleon, I tried to play with this by reducing the cost of the Allied naval units versus the French (for example I reduced the Three Decker cost to 220 shields as opposed to the equivalent French Trois-ponts cost of 360). As far as I remember this only improved the British aggressiveness slightly and therefore was not the panacea I was hoping for.

In exchange, I also had to reduce the productive capacity of many of the British cities capable of building naval units to offset this reduced cost.

The only option I didn’t fully test was to reduce the cost of Allied naval unit to a mere 10 shields each because that would have introduced an issue with play balance, i.e. since technically I would have either had to significantly reduce the productive capacity of many British/Spanish cities to avoid them building an unrealistic amount of naval units or removed their ability to produce naval units altogether and handle the production of such units through the event file (Prussia and Austria weren’t able to build any naval units in the game and Russia was only limited to 1 or 2 cities).

I don’t know if this information is useful to you in your own design but I thought it couldn’t hurt to share my own personal experience on the subject.

Thank-you. I do admit, as it stands, several key U.S. ship types are notably (if not hugely) more costly in shields than their Japanese equivalents, so it may actually be worth a try.
 
The code in question is:

If France fails to maintain a proper garrison in Russia after it has been subdued subtract 50 francs from treasury
if state.spainIsSubdued == true then
if getFrenchTroopsInRussia() < 40 then
civ.ui.text(func.splitlines(displayMonthYear() .. " - Status Report:\n^\r^French garrison troops in Russia: " .. getFrenchTroopsInRussia() .."\n^\r^The lack of garrison troops is costing the French Treasury " .. garrisonCostRussia .. " this month."))
changeMoney(France, garrisonCostRussia * -1)

Spain (in bold) needs to be replaced with Russia (i.e., "if state.russiaIsSubdued == true then")

Thanks to minipow01's feedback, I deployed a fix to the event file whereby the French treasury was being subtracted 50 gold when Spain rather than Russia was subdued, when it failed to maintain a minimum garrison.

The updated event file (v1.4) can be found in the scenario's download section of the Scenario League site here.

Thanks again to minipow01 for reporting it!
 
Thanks to minipow01's feedback, I deployed a fix to the event file whereby the French treasury was being subtracted 50 gold when Spain rather than Russia was subdued, when it failed to maintain a minimum garrison.

The updated event file (v1.4) can be found in the scenario's download section of the Scenario League site here.

Thanks again to minipow01 for reporting it!

Yes, I do recall reading, just recently, in fact, how Spain was a big money and resource sink for Napoleon. This makes sense.
 
Top Bottom