Dev Diary #21 - Mobilization system

Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Dev Diary #21 - Mobilization system

Message par Fernando Torres »

Image

Image Image

Today, we’ll introduce to our Mobilization System.

Since the biggest task in creating a game is balancing it, the issue of manpower had to be carefully thought. Most previous systems using the Europa engine were more or less arbitrary for that reason, something about which we felt uneasy. Deeming that using real-life values and concepts could help (after all, a game is a – rather crude – model of the real world), we started to work on a new MP system.

The first step was to change the MP distribution on the map. It now follows the actual distribution of the world population around 1936 (at least between the countries, inner distribution is sometimes less accurate, depending on the sources we found), something that can be easily modded with the scenario files or the province.csv file. To make things simple, we used the ratio 1 on-map MP = 1,000,000 inhabitants IRL.
Once this was done, it was possible to set realistic recruitment and mobilization systems. Once we logically agreed that 1 in-pool MP (the manpower actually used to make units) should stand for 1,000 men, we could make calculations to set realistic growth rates, and MP availability.

Nations of Darkest Hour’s era were mostly characterized by highly militarized societies. Many of them enforced a mandatory military service, with reserves liable to mobilization, and those which did not generally had an elaborated system of territorial forces, to make sure they could quickly have a strong military force at hand in case of war. After many thoughts and debates, we decided to take inspiration from this model.

For that purpose, we used the now defunct “professionalism/conscription” slider. Now called “mobilization/demobilization”, it reflects the level of militarization of a country, ranging from having no armed forces at all, to a fully mobilized population. Each step reflects a particular military system:
  1. Demilitarized: the country has no standing army, its defense generally relies only on police forces or militia (i.e. Costa Rica).
  2. Fully professional army: the country has a professional force of volunteers, it can build any military unit (i.e. USA at the start of the game).
  3. Selective conscription or part-time military service: only a part of a class of age is incorporated for military service (i.e. USA after the Selective Service Act), or the whole class but for short instruction periods (i.e. Switzerland).
  4. Conscription – normal term: the situation of most European countries in 1936. A whole class is incorporated for, generally, 1 year.
  5. Conscription – extended term: the same as the previous but with a longer term – typically 2 years, (i.e. Germany from 1937 or 1938).
  6. Conscription – long term: conscription of a whole class for 3 years (i.e. France in 1913) or even longer (but in that case it was often coupled to a selective conscription, i.e. USSR or at least Tsarist Russia IIRC).
  7. Partial mobilization: often an immediate pre-war measure. Classes that had just accomplished their military service term are recalled under the flag, as they are generally liable for such a thing for a few years after the end of their term (in France it was called “availability” and lasted three years). Some reserve units are activated, reservists are sometimes called back too.
  8. General mobilization: the standard wartime measure of that era. All men between 20 and 45/50 are mobilized (though in practice many remain in the civilian life, at least for some time), all reserve units are activated.
  9. Extended mobilization: a further effort to face the bloody needs of war. Men previously left back in their factories are transferred to the front, age limits for military service is often pushed to 18-50/55 years old.
  10. Total mobilization: the supreme sacrifice, the last effort to put men on the battlefield. Every man fit for military service is mustered in, with teenagers of 15/16 and old men up to 60 or 65 also incorporated – often as a militia.
Please note that daily MP growth is now extremely slow in peacetime. In any army, while young men are regularly conscripted, others complete their active service duty and return to civilian life. Therefore, the actual growth of militarily available men in peacetime is proportional to the growth rate of the overall population – for the sake of simplicity we put it at the average, rounded value of world population growth between 1920 and 1940: 1% per year, divided between 365 days… a very low, but realistic growth, indeed.

The principle is that, when you need MP to expand your military and recruit new units while at peace, you must extend the duration of the military service. By doing so, you’ll receive a new class of age, that is, a small part of your male population that will be conscripted in your military – thus being available to form new units (in exchange for some dissent of course). Thanks to the new on-map distribution, the amount of manpower given by this will be proportional to the country’s population. Also, the proportions used for these calculations are taken from data about the mid-30’s armies, ensuring a more realistic system.

To accomplish this we improved the existing manpowerpool command: now it can add a percentage of the total manpower available in all the controlled national provinces:

Code : Tout sélectionner

Improved manpowerpool command – added optional [when = 1/[0]] switch. When set 1 add the MP as percentage (value = x.x) of the MP in all controlled national provinces.
So for example passing from one-year conscription (level 4) to two-years conscription (level 5) will give you a quantity of manpower equal to 4.5% of the population of the national provinces under your control.

To avoid adding complexity to the engine, these reforms of the military system are driven by decisions, rather than by moving the slider directly. The generic decision will be available as soon as you’ll run low on MP. In peacetime, you can’t go beyond partial mobilization. General mobilization was an exceptional measure, only taken in case of serious crises, and the “mobilization is not war” principle most often proved delusional, as in 1914. Thus, except in specific situations simulated by events, you need to be at war to enact general mobilization and further steps.
Since the mobilization-demobilization slider should only be moved by events, we added the ability to prevent a user from moving a slider:

Code : Tout sélectionner

Added another option to policy_effects.csv for each policy slider: MANUAL_OR_ BY_INFLUENCE _MOVES (0 – no slider moves are possible except by events, 1 – manual slider moves are allowed too, 2 – moves by Influence are allowed too)  
Modders will probably appreciate this possibility for their own projects. :)

But what can we do with all that MP? In real life, countries that mobilized their men at war often formed reserve divisions with them, generally in a few weeks. Though inactive, those divisions were generally in actual existence, merely as an administrative. Because in DH we previously chose to extend build times for divisions to a realistic level, we included these reserve divisions in the starting orders of battle. They appear severely understrength (to reflect their reserve nature) and with outdated equipment (reserve divisions were generally armed with older weapons). It’s up to the player/AI to reinforce these divisions once they mobilized.

This can be done thanks to a new command that lets you set, add or substract strenght to a unit and take/return manpower to the pool. Here's the code:

Code : Tout sélectionner

Added new event command to change unit’s current STR (MP taken/returned from/to the pool). Applies to unit in redeployment or sent as expeditionary forces too:
   command = { type = strength which = all/land/air/naval/unit type when = 0/1 where = 0/1 [org = x.xx] value = +/- x.xx }
   which    - specifies unit type(s)
   when   - 0 – set STR value (if value = 0.0 then the this unit will be instantly deleted), 1 – add to STR value (final STR cannot be less then 0.01 or 1% and more then max unit STR, usually 1.0 or 100%)
   where   - 0 – take/return MP from/to the pool. If there is not enough MP then the command is skipped. 1 – Ignore MP pool (MP not taken/added to it).
   value   - 0.0 (0%) to 1.0 (100%). Can be negative if when = 1
   org   - Percentage of the current ORG that should remain if when = 0 (0.0 – set ORG to 0%, 1.0 – keep current ORG unchanged. Default is 1.0. NOTE: This value is modified by the actual STR change for each division). Set ORG to percentage of max. Org if when = 1  
It is a very powerful command, with many uses. First of all, it can add manpower to units and subtracts it from the manpower pool and viceversa. Units are processed from a sorted list (ARM, MECH, MOT and some others get priority; reinf. priority check-box is also taken into account) one by one (some take MP, others could return MP, so the list is always processed to the end even if the current MP is 0), so if you have enough manpower for only 10 divisions out of 50, then only 10 will be reinforced. Moreover if a unit receives strenght it can lose organization (to simulate the arrival of reserves), but this change is proportional to the strenght added: a division that receives only 10% of its strenght will lose half the organization lost by a unit which receives 20% of its strenght.
Moreover, setting strenght = 0 will delete the units, so with a single command you can instantly delete for example all the militias or all the air units of a country.

Here are some examples of how to use this new command:

Code : Tout sélectionner

   action = {
      name = "Set STR to 5% to land units"
      command = { type = strength which = land when = 0 where = 0 org = 1.0 value = 0.05 } #org unchanged
   }
   action = {
      name = "Set STR to 100% to land units"
      command = { type = strength which = land when = 0 where = 0 org = 0 value = 1 }  #org reduced proportionally
   }
   action = {
      name = "Set STR to 5% to naval units"
      command = { type = strength which = naval when = 0 where = 0 org = 1.0 value = 0.05 } #org unchanged     
   }   
   action = {
      name = "Set STR to 100% to naval units"
      command = { type = strength which = naval when = 0 where = 0 org = 0 value = 1 }  #org reduced proportionally
   }   
   action = {
      name = "Set STR to 5% to air units"
      command = { type = strength which = air when = 0 where = 0 org = 1.0 value = 0.05 } #org unchanged         
   }   
   action = {
      name = "Set STR to 100% to air units"
      command = { type = strength which = air when = 0 where = 0 org = 0 value = 1 }  #org reduced proportionally
   }   
   action = {
      name = "Set STR to 5% to all units"
      command = { type = strength which = all when = 0 where = 0 org = 1.0 value = 0.05 } #org unchanged
   }   
   action = {
      name = "Set STR to 100% to all units"
      command = { type = strength which = all when = 0 where = 0 org = 0 value = 1 } #org unchanged
   }
   action = {
      name = "Delete all submarines units"
      command = { type = strength which = submarine when = 0 where = 0 org = 0 value = 0 } #org unchanged
   }   
   action = {
      name = "Add 5 STR to land units"
      command = { type = strength which = land when = 1 where = 0 org = 1.0 value = 0.05 } #org unchanged         
   }   
   action = {
      name = "Remove 10 str from all land units"
      command = { type = strength which = land when = 1 where = 0 org = 0 value = -0.1 }  #org unchanged
   }   
That's all for now, but I'm sure you'll have a lot of questions about this, so feel free to ask them! :)

EDIT: here are a couple of screenshots showing how UK can increase its conscription level:
Image

Image
Image
Avatar du membre
Emp_Palpatine
Eco-Citoyen
Eco-Citoyen
Messages : 17846
Enregistré le : sam. août 21, 2004 12:37 pm
Localisation : Le XIXème (Siècle, pas arrondissement)

Re: Dev Diary #21 - Mobilization system

Message par Emp_Palpatine »

Intéressant!
J'ai hâte de voir ce que ça peut donner, l'absence d'un système crédible de mobilisation étant l'un de mes plus grand grief contre HoI1/2.
Vous pensez tous que César est un con? Vous pensez que le consul et son conseiller sont des cons? Que la police et l'armée sont des cons? Et vous pensez qu'y vous prennent pour des cons? Et vous avez raison, mais eux aussi! Parce que depuis le temps qu'y vous prennent pour des cons, avouez que vous êtes vraiment des cons. Alors puisqu'on est tous des cons et moi le premier, on va pas se battre.
Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Re: Dev Diary #21 - Mobilization system

Message par Fernando Torres »

On l'a préparé aux petits oignons juste pour toi ! :ok:
Blagues à part, cette nouvelle approche change vraiment la manière de jouer. Une fois qu'on a bien intégré les enjeux de ce mécanisme, il est très difficile de s'imaginer jouer sans car c'est bigrement immersif et réaliste, en tout cas à mon sens.
Image
Avatar du membre
Emp_Palpatine
Eco-Citoyen
Eco-Citoyen
Messages : 17846
Enregistré le : sam. août 21, 2004 12:37 pm
Localisation : Le XIXème (Siècle, pas arrondissement)

Re: Dev Diary #21 - Mobilization system

Message par Emp_Palpatine »

Et concrètement, est-ce que passer en mobilisation générale apporte des unités "gratuites" constituées de réservistes ou ce genre de choses?
Ou c'est seulement la croissance du MP qui est simulée?
Vous pensez tous que César est un con? Vous pensez que le consul et son conseiller sont des cons? Que la police et l'armée sont des cons? Et vous pensez qu'y vous prennent pour des cons? Et vous avez raison, mais eux aussi! Parce que depuis le temps qu'y vous prennent pour des cons, avouez que vous êtes vraiment des cons. Alors puisqu'on est tous des cons et moi le premier, on va pas se battre.
rooom
Floodeur invétéré
Floodeur invétéré
Messages : 3881
Enregistré le : ven. juin 08, 2007 10:10 am

Re: Dev Diary #21 - Mobilization system

Message par rooom »

En logique avec le devellopement, je pencherais pour un apport légerement différé (une semaine?) d'un montant fixe de MP proportionel au MP de base.
Enfin j'aurais fait comme ca mais en fait j'en sais rien de comment ca marche :chicos:

Edit: juste pour dire car j'avais omis de le faire: beau boulot :ok:
L'État, c'est la grande fiction à travers laquelle tout le monde s'efforce de vivre aux dépens de tout le monde
Frédéric Bastiat

Bien des gens qui se considèrent très au-dessus des aberrations du nazisme et qui en haïssent très sincèrement toutes les manifestations, travaillent en même temps pour des idéaux dont la réalisation mènerait tout droit à cette tyrannie abhorrée
Friedrich Hayek
Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Re: Dev Diary #21 - Mobilization system

Message par Fernando Torres »

Tu as un bonus immédiat lorsque tu mobilises des réserves qui te remplit un peu tes divisions..de réserves et tu as le bonus à long terme qui est que tu peux enrôler beaucoup plus d'hommes.
Image
el_slapper
l'oeil de Stockholm
Messages : 2327
Enregistré le : jeu. sept. 02, 2004 12:41 pm
Localisation : argh, je suis localisé!
Contact :

Re: Dev Diary #21 - Mobilization system

Message par el_slapper »

Et il y a un malus à augmenter la mobilisation, j'espère?
"il faut savoir demander beaucoup à son moteur, mais pas trop" Juan Manuel Fangio
Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Re: Dev Diary #21 - Mobilization system

Message par Fernando Torres »

Bien sûr
Image
el_slapper
l'oeil de Stockholm
Messages : 2327
Enregistré le : jeu. sept. 02, 2004 12:41 pm
Localisation : argh, je suis localisé!
Contact :

Re: Dev Diary #21 - Mobilization system

Message par el_slapper »

lequel?

(j'ai l'impression de jouer à l'arracheur de dents, ou au bourreau spécialiste de la torture des temps anciens : tu vas la cracher, ton info???)
"il faut savoir demander beaucoup à son moteur, mais pas trop" Juan Manuel Fangio
Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Re: Dev Diary #21 - Mobilization system

Message par Fernando Torres »

En dissent et/ou en IC
Je ne suis pas précis parce que je ne veux pas que vous me preniez au mot alors que ce sont des choses en constant équilibrage jusqu'à la sortie !
Image
Avatar du membre
Pepsi
Empereur spammique
Empereur spammique
Messages : 2554
Enregistré le : lun. févr. 19, 2007 5:11 pm
Meilleur jeu 2008 : Eu2
Meilleur jeu 2009 : HoI2

Re: Dev Diary #21 - Mobilization system

Message par Pepsi »

Personellement, j'ai un avis assez mitigé. Mauvais, sur le fait que ça change grand chose à la construction pré-39 (ic, ic (ic) et troupes juste avant la guerre avec les derniers modèles).
Par contre, ça me botte pas mal en début de guerre étant donné que ça permet d'éviter certains abus comme un uk envahissant l'allemagne avec des centaines de divisions, un soviet avec 500-600 divs en juin 41 ou encore un américain avec des centaines de divs et 10-15 porte-avions à l'entrée en guerre.


Par contre dans ce cas là, quel serait l'interêt du minitre qui donne +10pc MP ?
GA_Thrawn
Calimero
Calimero
Messages : 16844
Enregistré le : mar. août 09, 2005 7:49 pm
Localisation : De retour dans le sud

Re: Dev Diary #21 - Mobilization system

Message par GA_Thrawn »

C'est pourquoi je suis de plus en plus convaincu qu'il faut démarrer non pas en 36 mais en 38 voire 39 ca évitera cette phase ultra chiante et prévisible de construction des IC. :roll:
« Il est deux catégories de Français qui ne comprendront jamais l’histoire de France : ceux qui refusent de vibrer au souvenir du sacre de Reims ; ceux qui lisent sans émotion le récit de la fête de la Fédération. »
Marc Bloch
Avatar du membre
Emp_Palpatine
Eco-Citoyen
Eco-Citoyen
Messages : 17846
Enregistré le : sam. août 21, 2004 12:37 pm
Localisation : Le XIXème (Siècle, pas arrondissement)

Re: Dev Diary #21 - Mobilization system

Message par Emp_Palpatine »

Mouais mais bon, y a des trucs rigolos à faire, comme l'intervention en Espagne, des coups d'États... :o:

'Fin après tout, moi je joue tout seul de toute façon, je fais ce que je veux. :mrgreen:
Vous pensez tous que César est un con? Vous pensez que le consul et son conseiller sont des cons? Que la police et l'armée sont des cons? Et vous pensez qu'y vous prennent pour des cons? Et vous avez raison, mais eux aussi! Parce que depuis le temps qu'y vous prennent pour des cons, avouez que vous êtes vraiment des cons. Alors puisqu'on est tous des cons et moi le premier, on va pas se battre.
Fernando Torres
Foudre de Guerre
Foudre de Guerre
Messages : 1004
Enregistré le : lun. janv. 15, 2007 11:50 am
Contact :

Re: Dev Diary #21 - Mobilization system

Message par Fernando Torres »

D'un autre côté le jeu tourne très vite, 3 ans de paix, ça passe vraiment rapidement.
Pendant ce temps, je conseille de s'axer sur la production de ce qui formera le coeur de vos forces armées : blindés, paras, marine, aviation...

Nous travaillerons sans doute sur de nouveaux scenarios pour les patches, dont un scénario 1939 qui est effectivement particulièrement adapté au système du jeu.
Image
el_slapper
l'oeil de Stockholm
Messages : 2327
Enregistré le : jeu. sept. 02, 2004 12:41 pm
Localisation : argh, je suis localisé!
Contact :

Re: Dev Diary #21 - Mobilization system

Message par el_slapper »

Il sera possible de survivre avec la France?
"il faut savoir demander beaucoup à son moteur, mais pas trop" Juan Manuel Fangio
Répondre

Retourner vers « Darkest Hour »