• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

unmerged(150596)

Sergeant
9 Badges
Aug 9, 2009
52
0
  • Europa Universalis IV
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Europa Universalis IV: Res Publica
  • Semper Fi
  • Victoria 2: A House Divided
Hi,

Now the 1.3 patch is on the road of being released soon correcting a large amount of bugs, i am starting this thread to speek about modding in hoi3.
Many great mods where existing in hoi2 extending the life of the game still played after 5 years. The mods teams are working to port those mods to hoi3 system.
Reading the actuel hoi3 scripting guide http://forum.paradoxplaza.com/forum/showthread.php?t=416126 i think that some commands, sometimes existing in hoi2, are missing to give the modders the oportunity to make great mods based on hoi3.

I am very aware that the correction of bugs was the priority number 1 of the dev team until now, but i also sure that modding capacity is a necessity to have great mods for hoi3. So i am proposing you to add some commands on the decision and event mechanism.


Event trigger (no scope)
- day = x # True if the day is greater than x

Event trigger (country scope)
- escort_pool = x # True is the number of escort is greater than x
- transport_pool = x # True is the number of transport is greater than x
- is_tech_active = name # True is the technologie <name> is active
- tech_level { name = "name" value = x } # True is the technologie <name> is greater than x
- practical_level { name = "name" value = x } # True is the practical <name> is greater than x
- theory_level { name = "name" value = x } # True is the theory <name> is greater than x
- total_amount_of_brigade { type = "name" value = x } # True if the number of brigade of the type <name> is greater than x (land, air or naval)
- embargo = tag # True if the specified country <tag> make embargo
- mobilization # True if the mobilization has begun
- officer = x # True is the % of officer is greater than x
- nuke = x # True is the number of nuclear bomb is greater than x

Event trigger (province scope)
- has_building_level { name = "name" value = x } # True is the building <name> is greater than x
- country_units_in_region = x # True if the number of units in region is greater than x

Event effect (country scope)
- escort_pool = +/- x # Increase/Decrease number of escort by x
- transport_pool = +/- x # Increase/Decrease number of transport by x
- activate_tech = name # Activate the technology <name>
- desactivate_tech = name # Desactivate the technology <name>
- gain_tech = name # Increase from one point the technology <name>
- gain_tech { name = "name" value = x } # Technology <name> is set to level x
- gain_practical = name # Increase from one point the practical level <name>
- gain_practical { name = "name" value = x } # Practical <name> is set to level x
- gain_theory = name # Increase from one point the theorical level <name>
- gain_theory { name = "name" value = x } # Theory <name> is set to level x
- remove_unit = name # Remove unit <name>
- remove_unit_type = name # Remove an unit from the brigade type <name> (land, air or naval)
- sleepevent = x # Disable event x
- embargo = tag # Begin an embargo with <tag> country
- end_embargo = tag # End an embargo with <tag> country
- mobilization # Begin the mobilization
- end_mobilization # End the mobilization
- officer = +/- x # Increase/Decrease the % of officer by x
- nuke = +/- x # Increase/Decrease the number of nuclear bomb by x
- song = name # Play the song <name> if the country of the player is the same of the event

Event effect (provine scope)
- add_armygroup { name = "name" historical_model = x/current reserve=0/1 } # Add an armygroup HQ <name2>
- add_army { hierarchy = "name1" name = "name2" historical_model = x/current reserve=0/1 } # Add an army HQ <name2> to the hierarchy <name1> (the hierarchy here is armygroup)
- add_corps { hierarchy = "name1" name = "name2" historical_model = x/current reserve=0/1 } # Add a corps HQ <name2> to the hierarchy <name1> (the hierarchy here is army, armygroup)
- add_division { hierarchy = "name1" name = "name2" } # Add a division <name2> to the hierarchy <name1> (the hierarchy here is corps, army, armygroup)
- add_regiment { hierarchy = "name1" name = "name2" type = "type_brigade" historical_model = x/current reserve=0/1 } # Add a brigade <name2> to the hierarchy <name1> (the hierarchy here is division, corps, army, armygroup)
- add_air { hierarchy = "name1" name = "name2" } # Add an air <name2> to the hierarchy <name1> (the hierarchy here can be a carrier, a corps, an army, an armygroup)
- add_wing { hierarchy = "name1" name = "name2" type = "type_wing" historical_model = x/current } # Add a wing <name2> to the hierarchy <name1> (the hierarchy here is air)
- add_navy { hierarchy = "name1" name = "name2" } # Add a navy fleet <name2> to the hierarchy <name1> (the hierarchy here can be a corps, an army, an armygroup)
- add_ship { hierarchy = "name1" name = "name2" type = "type_ship" historical_model = x/current } # Add a ship <name2> to the hierarchy <name1> (the hierarchy here is navy)

Feel free to comment those propositions, add new ones or indicate if some of this commands are already existings, the scripting guide is incompete in certain ascpect (command for adding level in building not describe for exemple)

Thanks
 

zeekater

General
16 Badges
Jun 20, 2005
1.999
44
  • Hearts of Iron II: Armageddon
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Semper Fi
  • 500k Club
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: La Resistance
  • Hearts of Iron IV: By Blood Alone
  • Hearts of Iron IV: No Step Back
Some things I found out would be nice for modding buildings:

- make it possible for a building to change more then one thing in a province
- allow negative provincial resources
- allow subtraction or addition of X of a province, instead of only X%
- allow supplies/fuel to be generated in a province

Some of these were possible in HoI2 but were then left out of HoI3 :)
 

Battlecry

Field Marshal
16 Badges
Feb 22, 2007
2.528
4
  • Arsenal of Democracy
  • Crusader Kings II
  • Europa Universalis III
  • Europa Universalis IV
  • For the Motherland
  • Hearts of Iron III
  • Heir to the Throne
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Europa Universalis: Rome
  • Semper Fi
  • Rome: Vae Victis
  • 500k Club
  • Crusader Kings II: Holy Knight (pre-order)
  • Europa Universalis IV: Pre-order
  • Hearts of Iron IV Sign-up
I support this, although some in the OP are pretty impossible...remove an individual unit by name? 30 seconds thinking about that brings up a host of problems.

Effects to change the stats of units in the province are what I want most (not specific units, just all_units_in_province would be fantastic). Any way at all to affect units via province event would be great.

My 2nd biggest desire is for a fleshing out of combat events. "is_attacking" and "is_defending" are the only two triggers right now, and we could do so very much if we had a full set of triggers and effects. Having the ability to create tons of new traits is pretty dull unless we have a way to assign them in combat. Triggers for types of terrain and hardness of units involved would be priceless here.

Remove_building would be good also...I'll stop there for now.
 
Last edited:

unmerged(150596)

Sergeant
9 Badges
Aug 9, 2009
52
0
  • Europa Universalis IV
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Europa Universalis IV: Res Publica
  • Semper Fi
  • Victoria 2: A House Divided
battlecry said:
I support this, although some in the OP are pretty impossible...remove an individual unit by name? 30 seconds thinking about that brings up a host of problems.
The idea behind the 2 remove commands is to remove an unit by his type to mod the demobilization of the post-war where the belligerant disbanded many of their divisions or naval units or air unit. The remove by name in my idea is for removing a special unit (for exemple the Japanese Fuso battleship) to mod the big modernization of certain ship during the pre-war time. Those two type of commands where existing in hoi2 remenber the remove_division command.

battlecry said:
Remove_building would be good also...I'll stop there for now.
5315 = { industry = -10 }

where 5315 is the id of province
SuiciSpai said:
-province scope: IC =
-province scope: radar =
5315 = { industry = +/-x }
5315 = { radar_station = +/-x }
 

SuiciSpai

Random People
96 Badges
Aug 10, 2009
2.856
217
  • Cities: Skylines
  • 500k Club
  • Hearts of Iron II: Armageddon
  • Hearts of Iron III
  • Semper Fi
  • For the Motherland
  • Hearts of Iron III: Their Finest Hour
  • Iron Cross
  • Darkest Hour
  • Victoria 2: A House Divided
  • Knights of Pen and Paper 2
  • Crusader Kings II: Conclave
  • Stellaris: Nemesis
  • Crusader Kings II: Way of Life
  • BATTLETECH - Digital Deluxe Edition
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • War of the Roses
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Humanoids Species Pack
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Europa Universalis IV: Golden Century
  • Europa Universalis IV: Rights of Man
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Imperator: Rome Deluxe Edition
  • Age of Wonders III
  • Crusader Kings II: Holy Fury
  • Surviving Mars
  • BATTLETECH
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Mandate of Heaven
  • Shadowrun Returns
  • Europa Universalis IV: Dharma
  • Europa Universalis IV
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Distant Stars
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Teleglitch: Die More Edition
  • Victoria 2: Heart of Darkness
  • Warlock: Master of the Arcane
  • 200k Club
The idea behind the 2 remove commands is to remove an unit by his type to mod the demobilization of the post-war where the belligerant disbanded many of their divisions or naval units or air unit. The remove by name in my idea is for removing a special unit (for exemple the Japanese Fuso battleship) to mod the big modernization of certain ship during the pre-war time. Those two type of commands where existing in hoi2 remenber the remove_division command.


5315 = { industry = -10 }

where 5315 is the id of province

5315 = { industry = +/-x }
5315 = { radar_station = +/-x }

ok, thx, wasnt in the scripting guides.