florian-delrieu / hoi4_calculator Goto Github PK
View Code? Open in Web Editor NEWLand battle simulator for Heart of Iron IV and Warhammer 40k
Land battle simulator for Heart of Iron IV and Warhammer 40k
La valeur de HMA explose lors de l'excution de cette ligne
HOI4_Calculator/W40K_addon/W40K_Run.py
Line 12 in 2a7fe7c
SpaceMarines.HardMeleeAttack
Ajout de la documentation complète
Les stats des unités (sans armes) soient en accord avec les stats approximatives de HOI 4 (voir #39 (comment) )
Faire en sorte que les armes donne un bonus (multilicateur) des ces stats aux unités qui le composent
Ex :
- 1 compagnie de 100 gardes ( DEF=20
, ATK=2
)
- 100 fusil laser ( Tir rapide => No bonus
)
- 5 Shotgun ( Assaut => *1.05
par exemple
Erreur quand lancement de W40K_list.py
Lines 1 to 11 in 19d0c98
/Users/floriandelrieu/miniconda3/bin/python "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_List.py"
Traceback (most recent call last):
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_List.py", line 6, in <module>
Lasgun.Show_HOI_Stats()
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_UnitCreator.py", line 57, in Show_HOI_Stats
self.HOI4_Profil()
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_UnitCreator.py", line 20, in HOI4_Profil
self.SoftAttack = (SoftAttack_F[self.F]*SoftAttack_PA[self.PA] / 100)*self.Number
KeyError: 100
Soft Attack = 17.6
Hard Attack = 27.0
Defense = 42.3
Breakthrought = 8.5
Piercing = 14
float(0)
HOI4_Calculator/W40K/Class/Weapons.py
Lines 23 to 24 in f6e7ebc
Implémenter les bases du combats entre plusieurs divisions (sans effets extérieurs comme le terrain, les leaders, la météo, la supériorité aérienne)
Il faut que les division puissent s'engager, se battre et recevoir des dégâts, et se désengager ou battre en retraite
commit 70eda63
Ajouter plus de templates basics pour les divisions et les bataillons
Erreur lors du lancement de W40K_addon/W40K_Run.py
runfile('/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon/W40K_Run.py', wdir='/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon')
----------- round 0 -----------------
ATK shot 1949.82 SA + 349.42 HA // 0.0 SMA + 0.0 HMA
DEF shot 1379.98 SA + 131.7 HA // 0.0 SMA + 0.0 HMA
ATK: 194.98 --->> // 3867.24 DEF
DEF: 125.52 --->> // 998.76 ATK
Traceback (most recent call last):
File "/Users/floriandelrieu/miniconda3/envs/spam/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-2-e634e227748a>", line 1, in <module>
runfile('/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon/W40K_Run.py', wdir='/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon')
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_umd.py", line 197, in runfile
pydev_imports.execfile(filename, global_vars, local_vars) # execute the script
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon/W40K_Run.py", line 22, in <module>
BattleA.Round(-1)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon/W40K_Battle.py", line 38, in Round
self._Round(Loglevel=LogLevel)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K_addon/W40K_Battle.py", line 59, in _Round
self.ATK.round_Stats()
AttributeError: 'Regiment' object has no attribute 'round_Stats'
Import Error when runnig Saver.py
in commit 7fd922d
runfile('/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/Saves/Saver.py', wdir='/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/Saves')
Traceback (most recent call last):
File "/Users/floriandelrieu/miniconda3/envs/spam/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-2-a9776579246c>", line 1, in <module>
runfile('/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/Saves/Saver.py', wdir='/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/Saves')
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_umd.py", line 198, in runfile
pydev_imports.execfile(filename, global_vars, local_vars) # execute the script
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/Saves/Saver.py", line 5, in <module>
import W40K.LandBattles.Companies_list as CompanyList
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/LandBattles/Companies_list.py", line 1, in <module>
from W40K.UnitCreator.Unit_list import *
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/UnitCreator/Unit_list.py", line 1, in <module>
from W40K.UnitCreator.Class.Unit import Infantry, Tank, Walker
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/UnitCreator/Class/Unit.py", line 1, in <module>
from W40K.FuncAndTables.Stats_Functions import *
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/FuncAndTables/Stats_Functions.py", line 2, in <module>
from W40K.UnitCreator.Class.Weapons import * # Weapon
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/UnitCreator/Class/Weapons.py", line 2, in <module>
from W40K.FuncAndTables.Functions import *
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/FuncAndTables/Functions.py", line 1, in <module>
from W40K.UnitCreator.Class.Unit import Infantry,Tank,Walker
ImportError: cannot import name 'Infantry' from 'W40K.UnitCreator.Class.Unit' (/Users/floriandelrieu/OneDrive/Logiciels et Jeux/Heart of Iron IV/HOI4_Calculator/W40K/UnitCreator/Class/Unit.py)
Le nombre d'attaques pendant les batailles sont trop grands, les batailles durent 1 tour ...
Testé dans le commit e981ddf
Faire en sorte que les bonus dues aux compagnies soient plutot ajouté aux unité elles mêmes.
class Unit
- Space Marine armor = 0 ( should be 2 )
- Space Marine Hardness = 0 ( should be 20% )
HardMeleeAttack
est bien plus grande que la SoftMeleeAttack
Problème non détecté dans les tests de débug 1,2A et 2BThe current calculation of DEFENSE and BREAKTRHOUGT is not at all satisfactory. It needs to be seriously considered.
Note: Note that an unit (or a vehicule) without weapons havereduced (but not zero) ATK and DEF stats that can be add to those of weapons
DEF = sum( all_weapon.DEF + unit.DEF) * company.unit.DEF_bonus
unit
can be an Infantry
, Tank
or walker
at commit cf7cf10 in DEF/BRK-editing
weapons.csv
Bolter
and Melta
have same SAPlasma
have to hight HA ? noPlasma
have same HA than Autocanon
fix range bonusesEarthshaker
DEF
and BRK
statsdivision.camp_info
n'est pas conservé dans les attributs de la divisionshow
set_quantity
self.Hardness
en fonction du Typeself.org
a revoirshow
set_quantity
self.Hardness
en fonction du Typeself.org
a revoirall stats in CSV files are wrong
Need huge debugging
Ajouter la force dans le calcul de la SMA/HMA pour les unité
SMA/HMA *= 1
si CC = 3
HMA = 0
si F <= 3
Unit.csv
Leman Russ
0.00 %
Hardness mais pas Predator
MeleeAttack
Space Marines
a peu de HP
en plus par rapport aux Guardes
Weapons.py
Krak Grenade
a moins de HA
que FragGrenade
SA
pour CanonLaser
Tactic(defender_bonus=0.8, attacker_bonus=1.2, width_bonus=0.9, countered_by="Elastic Defense"),
FragGrenade.SoftAttack = 0.15
KrakGrenade.SoftAttack = 0.36
La FragGrenade
devrait avoir plus que la KrakGrenade
. Il me faut trouver un moyen de faire en sorte que la KrakGrenade
ai très peu de SoftAttack
- Ajouter les modificateur en fonction de la situation de combat ( canceled )
Tactics_class.py
Tactics
TacticsList.py
isDefendingTactic
argumentweight = 1
for all particular phase battle tacticslist
occurence by tactics
in lists namesTactics_func.py
choose_Tactics
functionA declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.