diff --git a/CMakeLists.txt b/CMakeLists.txt index 378e316..0e5ec70 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,10 +4,15 @@ project(BattleBay_tool C) set(CMAKE_C_STANDARD 11) add_executable(BattleBay_tool main.c + objects.h + ships.h + readobjects.h + readtraining.h + perks.h + menu.h objects.c ships.c readobjects.c - training.c readtraining.c perks.c menu.c diff --git a/Training_data/ballpark_mortar_training.csv b/Training_data/ballpark_mortar_training.csv index 21549eb..3fcd62e 100644 --- a/Training_data/ballpark_mortar_training.csv +++ b/Training_data/ballpark_mortar_training.csv @@ -1,29 +1,29 @@ 27 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,0.05,FROST_DAMAGE -3,5,DAMAGE +3,5,BASE_STAT 4,0.05,FROST_DAMAGE -5,0.05,DAMAGE -6,0.1,DAMAGE -7,0.2,DAMAGE -8,0.3,CRITICAL_HIT_DAMAGE -9,0.1,DAMAGE +5,0.05,BASE_STAT +6,0.1,BASE_STAT +7,0.2,BASE_STAT +8,0.3,CRITICAL_HIT_BASE_STAT +9,0.1,BASE_STAT 10,0.05,FROST_DAMAGE -11,0.05,DAMAGE -12,0.02,DAMAGE -13,0.05,DAMAGE +11,0.05,BASE_STAT +12,0.02,BASE_STAT +13,0.05,BASE_STAT 14,0.05,FROST_DAMAGE -15,0.05,DAMAGE +15,0.05,BASE_STAT 16,1,RANGE -17,0.1,DAMAGE -18,0.02,DAMAGE -19,0.05,DAMAGE +17,0.1,BASE_STAT +18,0.02,BASE_STAT +19,0.05,BASE_STAT 20,0.05,FROST_DAMAGE -21,0.05,DAMAGE +21,0.05,BASE_STAT 22,2,RANGE -23,0.05,DAMAGE -24,0.02,DAMAGE -25,0.05,DAMAGE +23,0.05,BASE_STAT +24,0.02,BASE_STAT +25,0.05,BASE_STAT 26,0.05,FROST_DAMAGE -27,0.05,DAMAGE +27,0.05,BASE_STAT diff --git a/Training_data/bandage_training.csv b/Training_data/bandage_training.csv index 2245941..53c17be 100644 --- a/Training_data/bandage_training.csv +++ b/Training_data/bandage_training.csv @@ -1,15 +1,15 @@ 13 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING -2,0.05,HEALING -3,0.05,HEALING -4,0.05,HEALING -5,0.05,HEALING -6,0.05,HEALING -7,0.05,HEALING -8,0.05,HEALING -9,0.05,HEALING -10,0.05,HEALING -11,0.05,HEALING -12,0.05,HEALING -13,0.05,HEALING +1,0.05,BASE_STAT +2,0.05,BASE_STAT +3,0.05,BASE_STAT +4,0.05,BASE_STAT +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.05,BASE_STAT +9,0.05,BASE_STAT +10,0.05,BASE_STAT +11,0.05,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT diff --git a/Training_data/big_bandage_training.csv b/Training_data/big_bandage_training.csv index 2245941..53c17be 100644 --- a/Training_data/big_bandage_training.csv +++ b/Training_data/big_bandage_training.csv @@ -1,15 +1,15 @@ 13 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING -2,0.05,HEALING -3,0.05,HEALING -4,0.05,HEALING -5,0.05,HEALING -6,0.05,HEALING -7,0.05,HEALING -8,0.05,HEALING -9,0.05,HEALING -10,0.05,HEALING -11,0.05,HEALING -12,0.05,HEALING -13,0.05,HEALING +1,0.05,BASE_STAT +2,0.05,BASE_STAT +3,0.05,BASE_STAT +4,0.05,BASE_STAT +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.05,BASE_STAT +9,0.05,BASE_STAT +10,0.05,BASE_STAT +11,0.05,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT diff --git a/Training_data/big_berta_training.csv b/Training_data/big_berta_training.csv index 6d7658e..2f1dbe1 100644 --- a/Training_data/big_berta_training.csv +++ b/Training_data/big_berta_training.csv @@ -1,34 +1,34 @@ 32 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,2,RANGE -3,5,DAMAGE -4,0.1,DAMAGE +3,5,BASE_STAT +4,0.1,BASE_STAT 5,0.05,FROST_DAMAGE -6,0.05,DAMAGE -7,0.05,DAMAGE -8,0.05,DAMAGE +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.05,BASE_STAT 9,0.05,FROST_DAMAGE -10,0.02,DAMAGE -11,0.05,DAMAGE -12,0.02,DAMAGE -13,0.05,DAMAGE -14,0.05,DAMAGE +10,0.02,BASE_STAT +11,0.05,BASE_STAT +12,0.02,BASE_STAT +13,0.05,BASE_STAT +14,0.05,BASE_STAT 15,0.05,FROST_DAMAGE -16,0.02,DAMAGE -17,0.05,DAMAGE -18,0.02,DAMAGE +16,0.02,BASE_STAT +17,0.05,BASE_STAT +18,0.02,BASE_STAT 19,0.05,FROST_DAMAGE -20,0.02,DAMAGE -21,0.3,CRITICAL_HIT_DAMAGE -22,0.1,DAMAGE -23,0.02,DAMAGE -24,0.02,DAMAGE +20,0.02,BASE_STAT +21,0.3,CRITICAL_HIT_BASE_STAT +22,0.1,BASE_STAT +23,0.02,BASE_STAT +24,0.02,BASE_STAT 25,0.05,FROST_DAMAGE -26,0.1,DAMAGE +26,0.1,BASE_STAT 27,1,RANGE -28,0.05,DAMAGE -29,0.02,DAMAGE -30,0.1,DAMAGE +28,0.05,BASE_STAT +29,0.02,BASE_STAT +30,0.1,BASE_STAT 31,0.05,FROST_DAMAGE -32,0.1,DAMAGE +32,0.1,BASE_STAT diff --git a/Training_data/big_shield_training.csv b/Training_data/big_shield_training.csv index 372cfc9..31e8eb1 100644 --- a/Training_data/big_shield_training.csv +++ b/Training_data/big_shield_training.csv @@ -1,32 +1,32 @@ 30 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,HIT_POINT -2,5,HIT_POINT -3,0.05,HIT_POINT -4,5,HIT_POINT -5,0.05,HIT_POINT -6,5,HIT_POINT -7,5,HIT_POINT -8,0.05,HIT_POINT -9,5,HIT_POINT -10,0.05,HIT_POINT -11,5,HIT_POINT -12,5,HIT_POINT -13,5,HIT_POINT -14,0.05,HIT_POINT -15,5,HIT_POINT -16,5,HIT_POINT -17,5,HIT_POINT -18,0.05,HIT_POINT -19,5,HIT_POINT -20,5,HIT_POINT -21,5,HIT_POINT -22,5,HIT_POINT -23,5,HIT_POINT -24,5,HIT_POINT -25,5,HIT_POINT -26,0.05,HIT_POINT -27,5,HIT_POINT -28,0.05,HIT_POINT -29,0.05,HIT_POINT -30,0.05,HIT_POINT +1,5,BASE_STAT +2,5,BASE_STAT +3,0.05,BASE_STAT +4,5,BASE_STAT +5,0.05,BASE_STAT +6,5,BASE_STAT +7,5,BASE_STAT +8,0.05,BASE_STAT +9,5,BASE_STAT +10,0.05,BASE_STAT +11,5,BASE_STAT +12,5,BASE_STAT +13,5,BASE_STAT +14,0.05,BASE_STAT +15,5,BASE_STAT +16,5,BASE_STAT +17,5,BASE_STAT +18,0.05,BASE_STAT +19,5,BASE_STAT +20,5,BASE_STAT +21,5,BASE_STAT +22,5,BASE_STAT +23,5,BASE_STAT +24,5,BASE_STAT +25,5,BASE_STAT +26,0.05,BASE_STAT +27,5,BASE_STAT +28,0.05,BASE_STAT +29,0.05,BASE_STAT +30,0.05,BASE_STAT diff --git a/Training_data/big_torpedo_training.csv b/Training_data/big_torpedo_training.csv index 9b4640a..1b5e8fe 100644 --- a/Training_data/big_torpedo_training.csv +++ b/Training_data/big_torpedo_training.csv @@ -1,29 +1,29 @@ 27 LEVEL,BOOST_VALUE,BOOST_TYPE -1,25,DAMAGE -2,0.05,DAMAGE -3,25,DAMAGE +1,25,BASE_STAT +2,0.05,BASE_STAT +3,25,BASE_STAT 4,0.1,FROST_DAMAGE -5,0.1,DAMAGE -6,0.05,DAMAGE -7,25,DAMAGE -8,0.05,DAMAGE +5,0.1,BASE_STAT +6,0.05,BASE_STAT +7,25,BASE_STAT +8,0.05,BASE_STAT 9,0.1,FROST_DAMAGE -10,0.1,DAMAGE +10,0.1,BASE_STAT 11,0.1,PROJECTILE_SPEED -12,0.05,DAMAGE -13,0.02,DAMAGE -14,0.1,DAMAGE -15,0.05,DAMAGE +12,0.05,BASE_STAT +13,0.02,BASE_STAT +14,0.1,BASE_STAT +15,0.05,BASE_STAT 16,0.1,PROJECTILE_SPEED -17,0.02,DAMAGE -18,0.1,DAMAGE -19,0.02,DAMAGE -20,0.05,DAMAGE -21,0.1,DAMAGE -22,0.05,DAMAGE +17,0.02,BASE_STAT +18,0.1,BASE_STAT +19,0.02,BASE_STAT +20,0.05,BASE_STAT +21,0.1,BASE_STAT +22,0.05,BASE_STAT 23,0.1,FROST_DAMAGE -24,0.05,DAMAGE -25,0.02,DAMAGE +24,0.05,BASE_STAT +25,0.02,BASE_STAT 26,0.1,PROJECTILE_SPEED -27,0.02,DAMAGE +27,0.02,BASE_STAT diff --git a/Training_data/blast_cannon_training.csv b/Training_data/blast_cannon_training.csv index 210db9d..ef94070 100644 --- a/Training_data/blast_cannon_training.csv +++ b/Training_data/blast_cannon_training.csv @@ -1,33 +1,33 @@ 31 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,3,RANGE -3,10,DAMAGE +3,10,BASE_STAT 4,0.1,PROJECTILE_SPEED 5,0.05,FIRE_DAMAGE -6,0.05,DAMAGE -7,0.02,DAMAGE -8,0.05,DAMAGE +6,0.05,BASE_STAT +7,0.02,BASE_STAT +8,0.05,BASE_STAT 9,0.05,RANGE 10,0.05,FIRE_DAMAGE -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,0.1,PROJECTILE_SPEED -13,0.1,DAMAGE +13,0.1,BASE_STAT 14,0.05,FIRE_DAMAGE -15,0.05,DAMAGE -16,0.02,DAMAGE -17,0.05,DAMAGE +15,0.05,BASE_STAT +16,0.02,BASE_STAT +17,0.05,BASE_STAT 18,0.05,RANGE -19,0.02,DAMAGE +19,0.02,BASE_STAT 20,0.1,PROJECTILE_SPEED -21,0.02,DAMAGE -22,0.1,DAMAGE -23,0.02,DAMAGE +21,0.02,BASE_STAT +22,0.1,BASE_STAT +23,0.02,BASE_STAT 24,0.1,FIRE_DAMAGE -25,0.02,DAMAGE -26,10,DAMAGE -27,0.02,DAMAGE -28,0.1,DAMAGE -29,0.05,DAMAGE +25,0.02,BASE_STAT +26,10,BASE_STAT +27,0.02,BASE_STAT +28,0.1,BASE_STAT +29,0.05,BASE_STAT 30,0.1,PROJECTILE_SPEED -31,0.1,DAMAGE +31,0.1,BASE_STAT diff --git a/Training_data/bloster_armor_training.csv b/Training_data/bloster_armor_training.csv index 32152da..cbdde92 100644 --- a/Training_data/bloster_armor_training.csv +++ b/Training_data/bloster_armor_training.csv @@ -1,15 +1,15 @@ 13 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,0.01,DEFENCE +2,0.01,BASE_STAT 3,0.05,COOL_DOWN -4,0.01,DEFENCE +4,0.01,BASE_STAT 5,0.05,COOL_DOWN -6,0.01,DEFENCE +6,0.01,BASE_STAT 7,0.05,COOL_DOWN -8,0.01,DEFENCE +8,0.01,BASE_STAT 9,0.05,COOL_DOWN -10,0.01,DEFENCE -11,0.01,DEFENCE +10,0.01,BASE_STAT +11,0.01,BASE_STAT 12,0.05,COOL_DOWN -13,0.01,DEFENCE +13,0.01,BASE_STAT diff --git a/Training_data/carronade_training.csv b/Training_data/carronade_training.csv index 9612040..57b0796 100644 --- a/Training_data/carronade_training.csv +++ b/Training_data/carronade_training.csv @@ -1,35 +1,35 @@ 33 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE +1,0.05,BASE_STAT 2,1,RANGE -3,0.05,DAMAGE -4,0.02,DAMAGE -5,0.05,DAMAGE +3,0.05,BASE_STAT +4,0.02,BASE_STAT +5,0.05,BASE_STAT 6,1,RANGE -7,0.05,DAMAGE -8,0.02,DAMAGE -9,0.05,DAMAGE +7,0.05,BASE_STAT +8,0.02,BASE_STAT +9,0.05,BASE_STAT 10,0.3,FROST_EFFECT -11,0.02,DAMAGE +11,0.02,BASE_STAT 12,1,RANGE -13,0.05,DAMAGE +13,0.05,BASE_STAT 14,0.3,TURET_ROTATION -15,0.02,DAMAGE -16,0.05,DAMAGE +15,0.02,BASE_STAT +16,0.05,BASE_STAT 17,0.2,FROST_EFFECT 18,1,RANGE -19,0.05,DAMAGE -20,0.05,DAMAGE -21,0.02,DAMAGE -22,0.02,DAMAGE +19,0.05,BASE_STAT +20,0.05,BASE_STAT +21,0.02,BASE_STAT +22,0.02,BASE_STAT 23,0.05,TURET_ROTATION -24,0.05,DAMAGE +24,0.05,BASE_STAT 25,0.2,FROST_EFFECT 26,1,RANGE -27,0.05,DAMAGE +27,0.05,BASE_STAT 28,0.05,TURET_ROTATION -29,0.05,DAMAGE +29,0.05,BASE_STAT 30,1,RANGE 31,1,RANGE -32,0.02,DAMAGE +32,0.02,BASE_STAT 33,0.1,TURET_ROTATION diff --git a/Training_data/defence_aura_training.csv b/Training_data/defence_aura_training.csv index d5e1c26..301ad94 100644 --- a/Training_data/defence_aura_training.csv +++ b/Training_data/defence_aura_training.csv @@ -1,15 +1,15 @@ 13 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,0.01,DEFENCE -3,0.01,DEFENCE +2,0.01,BASE_STAT +3,0.01,BASE_STAT 4,0.05,COOL_DOWN -5,0.01,DEFENCE +5,0.01,BASE_STAT 6,0.05,COOL_DOWN -7,0.01,DEFENCE +7,0.01,BASE_STAT 8,0.05,COOL_DOWN -9,0.01,DEFENCE -10,0.01,DEFENCE +9,0.01,BASE_STAT +10,0.01,BASE_STAT 11,0.05,COOL_DOWN -12,0.01,DEFENCE +12,0.01,BASE_STAT 13,0.05,COOL_DOWN diff --git a/Training_data/defence_wall_training.csv b/Training_data/defence_wall_training.csv index e59fbfe..6e18526 100644 --- a/Training_data/defence_wall_training.csv +++ b/Training_data/defence_wall_training.csv @@ -1,29 +1,29 @@ 27 LEVEL,BOOST_VALUE,BOOST_TYPE -1,10,HIT_POINT -2,10,HIT_POINT -3,0.05,HIT_POINT +1,10,BASE_STAT +2,10,BASE_STAT +3,0.05,BASE_STAT 4,0.05,COOL_DOWN -5,0.05,HIT_POINT +5,0.05,BASE_STAT 6,0.05,COOL_DOWN -7,10,HIT_POINT +7,10,BASE_STAT 8,0.05,COOL_DOWN -9,10,HIT_POINT -10,0.05,HIT_POINT -11,10,HIT_POINT -12,10,HIT_POINT -13,10,HIT_POINT -14,0.05,HIT_POINT -15,10,HIT_POINT -16,10,HIT_POINT -17,10,HIT_POINT -18,0.05,HIT_POINT -19,10,HIT_POINT -20,10,HIT_POINT +9,10,BASE_STAT +10,0.05,BASE_STAT +11,10,BASE_STAT +12,10,BASE_STAT +13,10,BASE_STAT +14,0.05,BASE_STAT +15,10,BASE_STAT +16,10,BASE_STAT +17,10,BASE_STAT +18,0.05,BASE_STAT +19,10,BASE_STAT +20,10,BASE_STAT 21,0.05,COOL_DOWN -22,10,HIT_POINT -23,10,HIT_POINT -24,10,HIT_POINT -25,10,HIT_POINT -26,0.05,HIT_POINT -27,10,HIT_POINT +22,10,BASE_STAT +23,10,BASE_STAT +24,10,BASE_STAT +25,10,BASE_STAT +26,0.05,BASE_STAT +27,10,BASE_STAT diff --git a/Training_data/duct_tape_training.csv b/Training_data/duct_tape_training.csv index 4549bec..9815c13 100644 --- a/Training_data/duct_tape_training.csv +++ b/Training_data/duct_tape_training.csv @@ -1,17 +1,17 @@ 15 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING +1,0.05,BASE_STAT 2,0.05,COOL_DOWN -3,0.05,HEALING +3,0.05,BASE_STAT 4,0.05,COOL_DOWN -5,0.05,HEALING +5,0.05,BASE_STAT 6,0.05,COOL_DOWN -7,0.05,HEALING +7,0.05,BASE_STAT 8,0.05,COOL_DOWN -9,0.05,HEALING +9,0.05,BASE_STAT 10,0.05,COOL_DOWN -11,0.05,HEALING +11,0.05,BASE_STAT 12,0.05,COOL_DOWN -13,0.05,HEALING +13,0.05,BASE_STAT 14,0.05,COOL_DOWN -15,0.05,HEALING +15,0.05,BASE_STAT diff --git a/Training_data/explosive_canon_training.csv b/Training_data/explosive_canon_training.csv index b7a194d..cff4ec7 100644 --- a/Training_data/explosive_canon_training.csv +++ b/Training_data/explosive_canon_training.csv @@ -1,32 +1,32 @@ 30 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,0.05,FIRE_DAMAGE 3,3,RANGE 4,0.1,PROJECTILE_SPEED -5,0.05,DAMAGE -6,0.05,DAMAGE -7,10,DAMAGE -8,0.05,DAMAGE -9,0.05,DAMAGE +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,10,BASE_STAT +8,0.05,BASE_STAT +9,0.05,BASE_STAT 10,0.05,FIRE_DAMAGE -11,0.05,DAMAGE -12,0.05,DAMAGE -13,0.05,DAMAGE +11,0.05,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT 14,0.1,PROJECTILE_SPEED -15,0.1,DAMAGE +15,0.1,BASE_STAT 16,0.05,FIRE_DAMAGE 17,0.05,RANGE -18,0.05,DAMAGE +18,0.05,BASE_STAT 19,0.05,FIRE_DAMAGE -20,0.1,DAMAGE +20,0.1,BASE_STAT 21,0.1,PROJECTILE_SPEED -22,0.05,DAMAGE +22,0.05,BASE_STAT 23,0.05,RANGE -24,0.05,DAMAGE -25,0.05,DAMAGE +24,0.05,BASE_STAT +25,0.05,BASE_STAT 26,0.05,FIRE_DAMAGE -27,0.05,DAMAGE +27,0.05,BASE_STAT 28,0.1,PROJECTILE_SPEED -29,0.05,DAMAGE -30,0.05,DAMAGE +29,0.05,BASE_STAT +30,0.05,BASE_STAT diff --git a/Training_data/fire_bomb_training.csv b/Training_data/fire_bomb_training.csv index dc16332..0fb6f09 100644 --- a/Training_data/fire_bomb_training.csv +++ b/Training_data/fire_bomb_training.csv @@ -1,26 +1,26 @@ 24 LEVEL,BOOST_VALUE,BOOST_TYPE 1,1,DURATION -2,0.05,DAMAGE +2,0.05,BASE_STAT 3,0.05,COOL_DOWN 4,1,RANGE -5,0.02,DAMAGE -6,0.02,DAMAGE -7,0.05,DAMAGE +5,0.02,BASE_STAT +6,0.02,BASE_STAT +7,0.05,BASE_STAT 8,1,DURATION -9,0.05,DAMAGE +9,0.05,BASE_STAT 10,1,DURATION -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,2,RANGE 13,0.05,COOL_DOWN -14,0.05,DAMAGE +14,0.05,BASE_STAT 15,1,DURATION -16,0.05,DAMAGE -17,0.02,DAMAGE +16,0.05,BASE_STAT +17,0.02,BASE_STAT 18,0.05,COOL_DOWN -19,0.02,DAMAGE +19,0.02,BASE_STAT 20,1,DURATION -21,0.05,DAMAGE -22,0.02,DAMAGE +21,0.05,BASE_STAT +22,0.02,BASE_STAT 23,0.05,COOL_DOWN -24,0.05,DAMAGE +24,0.05,BASE_STAT diff --git a/Training_data/flare_gun_training.csv b/Training_data/flare_gun_training.csv index e8e884c..6b25af5 100644 --- a/Training_data/flare_gun_training.csv +++ b/Training_data/flare_gun_training.csv @@ -1,35 +1,35 @@ 33 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,PROJECTILE_SPEED -2,0.05,DAMAGE +2,0.05,BASE_STAT 3,0.05,DURATION -4,0.05,DAMAGE +4,0.05,BASE_STAT 5,0.05,PROJECTILE_SPEED 6,0.05,DURATION -7,0.05,DAMAGE +7,0.05,BASE_STAT 8,0.05,DURATION -9,0.05,DAMAGE +9,0.05,BASE_STAT 10,0.05,PROJECTILE_SPEED -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,0.05,HEALING_REDUCTION 13,0.05,DURATION -14,0.05,DAMAGE +14,0.05,BASE_STAT 15,0.05,PROJECTILE_SPEED 16,1,RANGE 17,0.05,HEALING_REDUCTION 18,0.05,DURATION -19,0.05,DAMAGE -20,0.05,DAMAGE +19,0.05,BASE_STAT +20,0.05,BASE_STAT 21,0.05,HEALING_REDUCTION -22,0.05,DAMAGE +22,0.05,BASE_STAT 23,0.05,DURATION 24,0.05,PROJECTILE_SPEED 25,0.05,HEALING_REDUCTION 26,2,RANGE -27,0.05,DAMAGE +27,0.05,BASE_STAT 28,0.05,HEALING_REDUCTION 29,0.05,DURATION 30,0.05,PROJECTILE_SPEED -31,0.02,DAMAGE +31,0.02,BASE_STAT 32,0.05,HEALING_REDUCTION -33,0.05,DAMAGE +33,0.05,BASE_STAT diff --git a/Training_data/frost_blaster_training.csv b/Training_data/frost_blaster_training.csv index 10d79ff..45f4d93 100644 --- a/Training_data/frost_blaster_training.csv +++ b/Training_data/frost_blaster_training.csv @@ -1,15 +1,15 @@ 13 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,FROST_EFFECT +1,0.05,BASE_STAT 2,0.05,DURATION 3,0.05,COOL_DOWN -4,0.05,FROST_EFFECT +4,0.05,BASE_STAT 5,0.05,DURATION -6,0.05,FROST_EFFECT +6,0.05,BASE_STAT 7,0.05,COOL_DOWN 8,0.5,HEALING_REDUCTION 9,0.05,DURATION -10,0.05,FROST_EFFECT +10,0.05,BASE_STAT 11,0.05,COOL_DOWN -12,0.05,FROST_EFFECT +12,0.05,BASE_STAT 13,0.05,DURATION diff --git a/Training_data/frost_launcher_training.csv b/Training_data/frost_launcher_training.csv index ffb0bad..fe1bf4a 100644 --- a/Training_data/frost_launcher_training.csv +++ b/Training_data/frost_launcher_training.csv @@ -4,15 +4,15 @@ LEVEL,BOOST_VALUE,BOOST_TYPE 2,0.02,PROJECTILE_SPEED 3,0.05,DURATION 4,0.02,PROJECTILE_SPEED -5,0.05,FROST_EFFECT +5,0.05,BASE_STAT 6,0.02,PROJECTILE_SPEED -7,0.05,FROST_EFFECT +7,0.05,BASE_STAT 8,0.02,PROJECTILE_SPEED 9,0.05,DURATION 10,0.02,PROJECTILE_SPEED -11,0.05,FROST_EFFECT +11,0.05,BASE_STAT 12,0.02,PROJECTILE_SPEED 13,0.05,DURATION 14,0.02,PROJECTILE_SPEED -15,0.05,FROST_EFFECT +15,0.05,BASE_STAT 16,0.02,PROJECTILE_SPEED diff --git a/Training_data/galting_gun_training.csv b/Training_data/galting_gun_training.csv index 71dd2a5..f94eba8 100644 --- a/Training_data/galting_gun_training.csv +++ b/Training_data/galting_gun_training.csv @@ -1,24 +1,24 @@ 22 LEVEL,BOOST_VALUE,BOOST_TYPE -1,2,DAMAGE +1,2,BASE_STAT 2,1,RANGE -3,4,DAMAGE +3,4,BASE_STAT 4,0.05,COOL_DOWN 5,1,RANGE -6,0.05,DAMAGE -7,0.05,DAMAGE +6,0.05,BASE_STAT +7,0.05,BASE_STAT 8,0.05,COOL_DOWN -9,0.05,DAMAGE +9,0.05,BASE_STAT 10,1,RANGE -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,0.05,COOL_DOWN -13,0.05,DAMAGE -14,0.05,DAMAGE +13,0.05,BASE_STAT +14,0.05,BASE_STAT 15,0.05,COOL_DOWN 16,0.05,RANGE -17,0.05,DAMAGE +17,0.05,BASE_STAT 18,0.05,COOL_DOWN 19,0.05,RANGE -20,0.05,DAMAGE +20,0.05,BASE_STAT 21,0.05,COOL_DOWN -22,0.05,DAMAGE +22,0.05,BASE_STAT diff --git a/Training_data/grenade_launcher_training.csv b/Training_data/grenade_launcher_training.csv index 8f259ba..3a1e803 100644 --- a/Training_data/grenade_launcher_training.csv +++ b/Training_data/grenade_launcher_training.csv @@ -1,32 +1,32 @@ 30 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,1,RANGE -3,5,DAMAGE -4,0.2,CRITICAL_HIT_DAMAGE -5,0.05,DAMAGE -6,0.05,DAMAGE -7,0.05,DAMAGE +3,5,BASE_STAT +4,0.2,CRITICAL_HIT_BASE_STAT +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,0.05,BASE_STAT 8,1,RANGE -9,0.05,DAMAGE -10,0.05,DAMAGE -11,0.02,DAMAGE +9,0.05,BASE_STAT +10,0.05,BASE_STAT +11,0.02,BASE_STAT 12,0.1,CRITICAL_HIT_CHANCE -13,0.05,DAMAGE -14,0.02,DAMAGE -15,0.2,CRITICAL_HIT_DAMAGE +13,0.05,BASE_STAT +14,0.02,BASE_STAT +15,0.2,CRITICAL_HIT_BASE_STAT 16,2,RANGE -17,0.05,DAMAGE +17,0.05,BASE_STAT 18,0.1,CRITICAL_HIT_CHANCE -19,0.05,DAMAGE -20,0.05,DAMAGE -21,0.05,DAMAGE -22,0.2,CRITICAL_HIT_DAMAGE -23,0.02,DAMAGE +19,0.05,BASE_STAT +20,0.05,BASE_STAT +21,0.05,BASE_STAT +22,0.2,CRITICAL_HIT_BASE_STAT +23,0.02,BASE_STAT 24,2,RANGE -25,0.02,DAMAGE -26,0.2,CRITICAL_HIT_DAMAGE -27,0.02,DAMAGE +25,0.02,BASE_STAT +26,0.2,CRITICAL_HIT_BASE_STAT +27,0.02,BASE_STAT 28,0.1,CRITICAL_HIT_CHANCE -29,0.1,DAMAGE -30,0.2,CRITICAL_HIT_DAMAGE +29,0.1,BASE_STAT +30,0.2,CRITICAL_HIT_BASE_STAT diff --git a/Training_data/long_range_mortar_training.csv b/Training_data/long_range_mortar_training.csv index d3c4dee..72eb2f6 100644 --- a/Training_data/long_range_mortar_training.csv +++ b/Training_data/long_range_mortar_training.csv @@ -1,30 +1,30 @@ 28 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,2,RANGE 3,0.05,FROST_DAMAGE -4,5,DAMAGE +4,5,BASE_STAT 5,0.05,FROST_DAMAGE -6,0.05,DAMAGE -7,0.05,DAMAGE -8,0.02,DAMAGE +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.02,BASE_STAT 9,0.05,PROJECTILE_SPEED -10,0.1,DAMAGE +10,0.1,BASE_STAT 11,0.05,FROST_DAMAGE -12,0.05,DAMAGE -13,0.02,DAMAGE -14,0.05,DAMAGE +12,0.05,BASE_STAT +13,0.02,BASE_STAT +14,0.05,BASE_STAT 15,0.05,FROST_DAMAGE -16,0.05,DAMAGE -17,0.03,CRITICAL_HIT_DAMAGE -18,0.02,DAMAGE -19,0.05,DAMAGE -20,0.02,DAMAGE +16,0.05,BASE_STAT +17,0.03,CRITICAL_HIT_BASE_STAT +18,0.02,BASE_STAT +19,0.05,BASE_STAT +20,0.02,BASE_STAT 21,0.05,FROST_DAMAGE -22,0.02,DAMAGE +22,0.02,BASE_STAT 23,1,RANGE -24,0.05,DAMAGE +24,0.05,BASE_STAT 25,0.05,PROJECILE_SPEED 26,0.05,PROJECTILE_SPEED 27,0.05,FROST_DAMAGE -28,0.05,DAMAGE +28,0.05,BASE_STAT diff --git a/Training_data/mine_training.csv b/Training_data/mine_training.csv index 4d8f576..5d8d17c 100644 --- a/Training_data/mine_training.csv +++ b/Training_data/mine_training.csv @@ -1,30 +1,30 @@ 28 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE +1,0.05,BASE_STAT 2,0.05,COOL_DOWN -3,0.05,DAMAGE +3,0.05,BASE_STAT 4,0.05,COOL_DOWN -5,0.05,DAMAGE +5,0.05,BASE_STAT 6,0.05,COOL_DOWN -7,0.05,DAMAGE +7,0.05,BASE_STAT 8,0.05,COOL_DOWN -9,0.05,DAMAGE +9,0.05,BASE_STAT 10,1,RANGE -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,0.05,COOL_DOWN -13,0.05,DAMAGE -14,0.05,DAMAGE -15,0.05,DAMAGE -16,0.05,DAMAGE -17,0.05,DAMAGE -18,0.05,DAMAGE -19,0.05,DAMAGE -20,0.05,DAMAGE -21,0.05,DAMAGE -22,0.02,DAMAGE -23,0.05,DAMAGE -24,0.05,DAMAGE +13,0.05,BASE_STAT +14,0.05,BASE_STAT +15,0.05,BASE_STAT +16,0.05,BASE_STAT +17,0.05,BASE_STAT +18,0.05,BASE_STAT +19,0.05,BASE_STAT +20,0.05,BASE_STAT +21,0.05,BASE_STAT +22,0.02,BASE_STAT +23,0.05,BASE_STAT +24,0.05,BASE_STAT 25,2,RANGE -26,0.05,DAMAGE -27,0.05,DAMAGE -28,0.05,DAMAGE +26,0.05,BASE_STAT +27,0.05,BASE_STAT +28,0.05,BASE_STAT diff --git a/Training_data/missile_launcher_training.csv b/Training_data/missile_launcher_training.csv index 399f641..5eb48d8 100644 --- a/Training_data/missile_launcher_training.csv +++ b/Training_data/missile_launcher_training.csv @@ -1,28 +1,28 @@ 26 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE +1,0.05,BASE_STAT 2,1,RANGE 3,0.05,COOL_DOWN -4,0.05,DAMAGE -5,0.02,DAMAGE -6,0.05,DAMAGE -7,0.02,DAMAGE -8,0.05,DAMAGE +4,0.05,BASE_STAT +5,0.02,BASE_STAT +6,0.05,BASE_STAT +7,0.02,BASE_STAT +8,0.05,BASE_STAT 9,0.05,COOL_DOWN -10,0.02,DAMAGE -11,0.02,DAMAGE -12,0.05,DAMAGE -13,0.05,DAMAGE +10,0.02,BASE_STAT +11,0.02,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT 14,0.05,COOL_DOWN -15,0.02,DAMAGE -16,0.02,DAMAGE +15,0.02,BASE_STAT +16,0.02,BASE_STAT 17,2,RANGE -18,0.05,DAMAGE -19,0.02,DAMAGE -20,0.05,DAMAGE -21,0.05,DAMAGE +18,0.05,BASE_STAT +19,0.02,BASE_STAT +20,0.05,BASE_STAT +21,0.05,BASE_STAT 22,0.05,COOL_DOWN -23,0.02,DAMAGE -24,0.05,DAMAGE -25,0.05,DAMAGE -26,0.05,DAMAGE +23,0.02,BASE_STAT +24,0.05,BASE_STAT +25,0.05,BASE_STAT +26,0.05,BASE_STAT diff --git a/Training_data/multi_missile_training.csv b/Training_data/multi_missile_training.csv index 399f641..5eb48d8 100644 --- a/Training_data/multi_missile_training.csv +++ b/Training_data/multi_missile_training.csv @@ -1,28 +1,28 @@ 26 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE +1,0.05,BASE_STAT 2,1,RANGE 3,0.05,COOL_DOWN -4,0.05,DAMAGE -5,0.02,DAMAGE -6,0.05,DAMAGE -7,0.02,DAMAGE -8,0.05,DAMAGE +4,0.05,BASE_STAT +5,0.02,BASE_STAT +6,0.05,BASE_STAT +7,0.02,BASE_STAT +8,0.05,BASE_STAT 9,0.05,COOL_DOWN -10,0.02,DAMAGE -11,0.02,DAMAGE -12,0.05,DAMAGE -13,0.05,DAMAGE +10,0.02,BASE_STAT +11,0.02,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT 14,0.05,COOL_DOWN -15,0.02,DAMAGE -16,0.02,DAMAGE +15,0.02,BASE_STAT +16,0.02,BASE_STAT 17,2,RANGE -18,0.05,DAMAGE -19,0.02,DAMAGE -20,0.05,DAMAGE -21,0.05,DAMAGE +18,0.05,BASE_STAT +19,0.02,BASE_STAT +20,0.05,BASE_STAT +21,0.05,BASE_STAT 22,0.05,COOL_DOWN -23,0.02,DAMAGE -24,0.05,DAMAGE -25,0.05,DAMAGE -26,0.05,DAMAGE +23,0.02,BASE_STAT +24,0.05,BASE_STAT +25,0.05,BASE_STAT +26,0.05,BASE_STAT diff --git a/Training_data/napalm_launcher_training.csv b/Training_data/napalm_launcher_training.csv index 0f93a62..c749f9d 100644 --- a/Training_data/napalm_launcher_training.csv +++ b/Training_data/napalm_launcher_training.csv @@ -1,31 +1,31 @@ 29 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE -2,0.05,DAMAGE +1,0.05,BASE_STAT +2,0.05,BASE_STAT 3,0.05,COOL_DOWN -4,0.1,DAMAGE -5,0.05,DAMAGE -6,0.1,DAMAGE -7,0.05,DAMAGE -8,0.1,DAMAGE -9,0.05,DAMAGE -10,0.1,DAMAGE +4,0.1,BASE_STAT +5,0.05,BASE_STAT +6,0.1,BASE_STAT +7,0.05,BASE_STAT +8,0.1,BASE_STAT +9,0.05,BASE_STAT +10,0.1,BASE_STAT 11,1,RANGE -12,0.1,DAMAGE -13,0.05,DAMAGE -14,0.05,DAMAGE +12,0.1,BASE_STAT +13,0.05,BASE_STAT +14,0.05,BASE_STAT 15,0.05,COOL_DOWN -16,0.05,DAMAGE -17,0.05,DAMAGE -18,0.05,DAMAGE -19,0.05,DAMAGE +16,0.05,BASE_STAT +17,0.05,BASE_STAT +18,0.05,BASE_STAT +19,0.05,BASE_STAT 20,2,RANGE -21,0.05,DAMAGE -22,0.05,DAMAGE -23,0.05,DAMAGE -24,0.05,DAMAGE +21,0.05,BASE_STAT +22,0.05,BASE_STAT +23,0.05,BASE_STAT +24,0.05,BASE_STAT 25,0.05,COOL_DOWN -26,0.01,DAMAGE -27,0.05,DAMAGE -28,0.05,DAMAGE -29,0.05,DAMAGE +26,0.01,BASE_STAT +27,0.05,BASE_STAT +28,0.05,BASE_STAT +29,0.05,BASE_STAT diff --git a/Training_data/nitro_training.csv b/Training_data/nitro_training.csv index b9fddc6..11a87e3 100644 --- a/Training_data/nitro_training.csv +++ b/Training_data/nitro_training.csv @@ -1,26 +1,26 @@ 25 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.02,SPEED +1,0.02,BASE_STAT 2,0.02,COOL_DOWN -3,0.02,SPEED +3,0.02,BASE_STAT 4,0.02,COOL_DOWN -5,0.02,SPEED +5,0.02,BASE_STAT 6,0.02,COOL_DOWN -7,0.02,SPEED +7,0.02,BASE_STAT 8,0.02,COOL_DOWN -9,0.02,SPEED +9,0.02,BASE_STAT 10,0.02,COOL_DOWN -11,0.02,SPEED +11,0.02,BASE_STAT 12,0.02,COOL_DOWN -13,0.02,SPEED +13,0.02,BASE_STAT 14,0.02,COOL_DOWN -15,0.02,SPEED +15,0.02,BASE_STAT 16,0.02,COOL_DOWN -17,0.02,SPEED +17,0.02,BASE_STAT 18,0.02,COOL_DOWN -19,0.02,SPEED +19,0.02,BASE_STAT 20,0.02,COOL_DOWN -21,0.02,SPEED +21,0.02,BASE_STAT 22,0.02,COOL_DOWN 23,0.02,COOL_DOWN 24,0.02,COOL_DOWN diff --git a/Training_data/overboost_training.csv b/Training_data/overboost_training.csv index 861a85c..40f5186 100644 --- a/Training_data/overboost_training.csv +++ b/Training_data/overboost_training.csv @@ -1,10 +1,10 @@ 8 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,SPEED -2,0.05,SPEED -3,0.05,SPEED -4,0.05,SPEED -5,0.05,SPEED -6,0.05,SPEED -7,0.05,SPEED -8,0.05,SPEED +1,0.05,BASE_STAT +2,0.05,BASE_STAT +3,0.05,BASE_STAT +4,0.05,BASE_STAT +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.05,BASE_STAT diff --git a/Training_data/railgun_training.csv b/Training_data/railgun_training.csv index 339e71f..d60d874 100644 --- a/Training_data/railgun_training.csv +++ b/Training_data/railgun_training.csv @@ -1,22 +1,22 @@ 20 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,DAMAGE -2,0.05,DAMAGE +1,0.05,BASE_STAT +2,0.05,BASE_STAT 3,0.05,COOL_DOWN -4,0.05,DAMAGE -5,0.05,DAMAGE -6,0.05,DAMAGE -7,0.05,DAMAGE -8,0.05,DAMAGE +4,0.05,BASE_STAT +5,0.05,BASE_STAT +6,0.05,BASE_STAT +7,0.05,BASE_STAT +8,0.05,BASE_STAT 9,0.05,COOL_DOWN -10,0.05,DAMAGE -11,0.05,DAMAGE -12,0.05,DAMAGE -13,0.05,DAMAGE +10,0.05,BASE_STAT +11,0.05,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT 14,0.05,COOL_DOWN -15,0.05,DAMAGE -16,0.05,DAMAGE -17,0.05,DAMAGE -18,0.05,DAMAGE +15,0.05,BASE_STAT +16,0.05,BASE_STAT +17,0.05,BASE_STAT +18,0.05,BASE_STAT 19,0.05,COOL_DOWN -20,0.05,DAMAGE +20,0.05,BASE_STAT diff --git a/Training_data/repair_bolt_training.csv b/Training_data/repair_bolt_training.csv index 06d4bb6..21693f1 100644 --- a/Training_data/repair_bolt_training.csv +++ b/Training_data/repair_bolt_training.csv @@ -1,19 +1,19 @@ 17 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING -2,0.05,HEALING +1,0.05,BASE_STAT +2,0.05,BASE_STAT 3,0.05,COOL_DOWN -4,0.05,HEALING +4,0.05,BASE_STAT 5,1.0,REMOVE_STUN -6,0.05,HEALING +6,0.05,BASE_STAT 7,0.05,COOL_DOWN -8,0.05,HEALING +8,0.05,BASE_STAT 9,0.05,COOL_DOWN -10,0.05,HEALING +10,0.05,BASE_STAT 11,0.05,COOL_DOWN -12,0.05,HEALING +12,0.05,BASE_STAT 13,0.05,COOL_DOWN 14,1.0,REMOVE_FROST 15,0.05,COOL_DOWN 16,0.05,COOL_DOWN -17,0.05,HEALING +17,0.05,BASE_STAT diff --git a/Training_data/repair_box_launcher_training.csv b/Training_data/repair_box_launcher_training.csv index d791bd2..b35df70 100644 --- a/Training_data/repair_box_launcher_training.csv +++ b/Training_data/repair_box_launcher_training.csv @@ -1,31 +1,31 @@ 29 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.1,CRITICAL_HIT_CHANCE -2,0.05,HEALING +2,0.05,BASE_STAT 3,0.05,COOL_DOWN 4,1,RANGE -5,0.05,HEALING +5,0.05,BASE_STAT 6,0.1,CRITICAL_HIT_CHANCE 7,1,RANGE -8,0.05,HEALING +8,0.05,BASE_STAT 9,0.01,CRITICAL_HIT_CHANCE 10,0.05,CRITICAL_HIT_CHANCE -11,0.05,HEALING +11,0.05,BASE_STAT 12,1,RANGE 13,0.05,COOL_DOWN 14,0.1,CRITICAL_HIT_CHANCE 15,0.05,CRITICAL_HIT_CHANCE -16,0.05,HEALING +16,0.05,BASE_STAT 17,0.1,CRITICAL_HIT_CHANCE 18,0.1,CRITICAL_HIT_CHANCE 19,1,RANGE -20,0.05,HEALING -21,0.05,HEALING +20,0.05,BASE_STAT +21,0.05,BASE_STAT 22,0.1,CRITICAL_HIT_CHANCE 23,0.05,COOL_DOWN 24,0.1,CRITICAL_HIT_CHANCE 25,0.05,CRITICAL_HIT_CHANCE -26,0.05,HEALING +26,0.05,BASE_STAT 27,1,RANGE 28,0.1,CRITICAL_HIT_CHANCE 29,0.1,CRITICAL_HIT_CHANCE diff --git a/Training_data/repair_plasma_training.csv b/Training_data/repair_plasma_training.csv index 4bb00ab..c783267 100644 --- a/Training_data/repair_plasma_training.csv +++ b/Training_data/repair_plasma_training.csv @@ -1,29 +1,29 @@ 29 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING -2,0.05,HEALING +1,0.05,BASE_STAT +2,0.05,BASE_STAT 3,0.05,COOL_DOWN -4,0.1,HEALING -5,0.05,HEALING -6,0.1,HEALING -7,0.05,HEALING -8,0.1,HEALING -9,0.05,HEALING -10,0.1,HEALING +4,0.1,BASE_STAT +5,0.05,BASE_STAT +6,0.1,BASE_STAT +7,0.05,BASE_STAT +8,0.1,BASE_STAT +9,0.05,BASE_STAT +10,0.1,BASE_STAT 11,1,RANGE -12,0.1,HEALING -13,0.05,HEALING -14,0.05,HEALING +12,0.1,BASE_STAT +13,0.05,BASE_STAT +14,0.05,BASE_STAT 15,0.05,COOL_DOWN -16,0.05,HEALING -17,0.05,HEALING -18,0.05,HEALING -19,0.05,HEALING +16,0.05,BASE_STAT +17,0.05,BASE_STAT +18,0.05,BASE_STAT +19,0.05,BASE_STAT 20,2,RANGE -21,0.05,HEALING -22,0.05,HEALING -23,0.05,HEALING -24,0.05,HEALING +21,0.05,BASE_STAT +22,0.05,BASE_STAT +23,0.05,BASE_STAT +24,0.05,BASE_STAT 25,0.05,COOL_DOWN 26,0.1,COOL_DOWN 27,0.05,COOL_DOWN diff --git a/Training_data/repair_pulse_training.csv b/Training_data/repair_pulse_training.csv index 7867a2c..a2c9380 100644 --- a/Training_data/repair_pulse_training.csv +++ b/Training_data/repair_pulse_training.csv @@ -1,21 +1,21 @@ 19 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,HEALING -2,0.05,HEALING +1,0.05,BASE_STAT +2,0.05,BASE_STAT 3,0.03,COOL_DOWN -4,0.05,HEALING -5,0.05,HEALING +4,0.05,BASE_STAT +5,0.05,BASE_STAT 6,0.03,COOL_DOWN -7,0.05,HEALING -8,0.05,HEALING +7,0.05,BASE_STAT +8,0.05,BASE_STAT 9,0.03,COOL_DOWN -10,0.05,HEALING -11,0.05,HEALING +10,0.05,BASE_STAT +11,0.05,BASE_STAT 12,0.03,COOL_DOWN -13,0.05,HEALING -14,0.05,HEALING -15,0.05,HEALING -16,0.05,HEALING +13,0.05,BASE_STAT +14,0.05,BASE_STAT +15,0.05,BASE_STAT +16,0.05,BASE_STAT 17,0.03,COOL_DOWN -18,0.05,HEALING -19,0.05,HEALING +18,0.05,BASE_STAT +19,0.05,BASE_STAT diff --git a/Training_data/sniper_cannon_training.csv b/Training_data/sniper_cannon_training.csv index 002cc80..22b6eb0 100644 --- a/Training_data/sniper_cannon_training.csv +++ b/Training_data/sniper_cannon_training.csv @@ -1,32 +1,32 @@ 30 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,0.05,FIRE_DAMAGE 3,3,RANGE -4,10,DAMAGE +4,10,BASE_STAT 5,0.1,PROJECTILE_SPEED -6,0.05,DAMAGE -7,0.05,DAMAGE +6,0.05,BASE_STAT +7,0.05,BASE_STAT 8,0.05,CRITICAL_HIT_CHANCE -9,0.05,DAMAGE -10,0.05,DAMAGE +9,0.05,BASE_STAT +10,0.05,BASE_STAT 11,0.05,FIRE_DAMAGE 12,0.05,CRITICAL_HIT_CHANCE 13,0.03,RANGE -14,0.25,CRITICAL_HIT_DAMAGE +14,0.25,CRITICAL_HIT_BASE_STAT 15,0.1,PROJECTILE_SPEED -16,0.25,CRITICAL_HIT_DAMAGE +16,0.25,CRITICAL_HIT_BASE_STAT 17,0.05,FIRE_DAMAGE 18,0.03,RANGE -19,0.02,DAMAGE +19,0.02,BASE_STAT 20,0.05,FIRE_DAMAGE -21,0.02,DAMAGE +21,0.02,BASE_STAT 22,0.1,PROJECTILE_SPEED -23,0.1,DAMAGE +23,0.1,BASE_STAT 24,0.05,RANGE -25,0.1,DAMAGE -26,0.05,DAMAGE +25,0.1,BASE_STAT +26,0.05,BASE_STAT 27,0.05,FIRE_DAMAGE -28,0.05,DAMAGE +28,0.05,BASE_STAT 29,0.1,PROJECTILE_SPEED -30,0.05,DAMAGE +30,0.05,BASE_STAT diff --git a/Training_data/standard_cannon_training.csv b/Training_data/standard_cannon_training.csv index 2088ea0..52699d4 100644 --- a/Training_data/standard_cannon_training.csv +++ b/Training_data/standard_cannon_training.csv @@ -1,34 +1,34 @@ 32 LEVEL,BOOST_VALUE,BOOST_TYPE -1,5,DAMAGE +1,5,BASE_STAT 2,1,RANGE 3,0.05,FIRE_DAMAGE 4,0.1,COOL_DOWN -5,10,DAMAGE +5,10,BASE_STAT 6,0.1,PROJECTILE_SPEED -7,0.2,DAMAGE +7,0.2,BASE_STAT 8,0.05,RANGE -9,0.05,DAMAGE +9,0.05,BASE_STAT 10,2,RANGE -11,0.05,DAMAGE +11,0.05,BASE_STAT 12,0.05,FIRE_DAMAGE -13,0.05,DAMAGE +13,0.05,BASE_STAT 14,0.1,COOL_DOWN 15,0.1,PROJECTILE_SPEED 16,0.05,FIRE_DAMAGE -17,0.03,DAMAGE -18,0.03,DAMAGE +17,0.03,BASE_STAT +18,0.03,BASE_STAT 19,0.1,PROJECTILE_SPEED -20,0.15,DAMAGE +20,0.15,BASE_STAT 21,0.05,FIRE_DAMAGE -22,0.02,DAMAGE +22,0.02,BASE_STAT 23,0.05,RANGE 24,0.1,COOL_DOWN -25,0.03,DAMAGE +25,0.03,BASE_STAT 26,0.1,PROJECTILE_SPEED -27,0.02,DAMAGE -28,0.02,DAMAGE +27,0.02,BASE_STAT +28,0.02,BASE_STAT 29,0.05,FIRE_DAMAGE -30,0.02,DAMAGE -31,0.02,DAMAGE -32,0.05,DAMAGE +30,0.02,BASE_STAT +31,0.02,BASE_STAT +32,0.05,BASE_STAT diff --git a/Training_data/standard_mortar_training.csv b/Training_data/standard_mortar_training.csv index 6efed92..c13a0bd 100644 --- a/Training_data/standard_mortar_training.csv +++ b/Training_data/standard_mortar_training.csv @@ -1,29 +1,29 @@ 27 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,5,DAMAGE -3,0.05,DAMAGE -4,5,DAMAGE +2,5,BASE_STAT +3,0.05,BASE_STAT +4,5,BASE_STAT 5,0.05,FROST_DAMAGE -6,0.05,DAMAGE +6,0.05,BASE_STAT 7,1,RANGE -8,0.05,DAMAGE +8,0.05,BASE_STAT 9,0.05,FROST_DAMAGE 10,0.05,COOL_DOWN -11,0.05,DAMAGE -12,0.05,DAMAGE +11,0.05,BASE_STAT +12,0.05,BASE_STAT 13,0.05,FROST_DAMAGE -14,0.05,DAMAGE -15,0.05,DAMAGE +14,0.05,BASE_STAT +15,0.05,BASE_STAT 16,0.3,FROST_DAMAGE -17,0.05,DAMAGE -18,0.05,CRITICAL_HIT_DAMAGE +17,0.05,BASE_STAT +18,0.05,CRITICAL_HIT_BASE_STAT 19,0.05,COOL_DOWN -20,0.05,DAMAGE +20,0.05,BASE_STAT 21,0.05,FROST_DAMAGE -22,0.05,DAMAGE +22,0.05,BASE_STAT 23,2,RANGE -24,0.05,DAMAGE +24,0.05,BASE_STAT 25,0.05,FROST_DAMAGE 26,0.05,COOL_DOWN -27,0.05,DAMAGE +27,0.05,BASE_STAT diff --git a/Training_data/standard_shield_training.csv b/Training_data/standard_shield_training.csv index acbc9fa..af993ca 100644 --- a/Training_data/standard_shield_training.csv +++ b/Training_data/standard_shield_training.csv @@ -1,29 +1,29 @@ 27 LEVEL,BOOST_VALUE,BOOST_TYPE -1,10,HIT_POINT -2,10,HIT_POINT -3,0.05,HIT_POINT -4,10,HIT_POINT -5,0.05,HIT_POINT -6,10,HIT_POINT -7,10,HIT_POINT -8,0.05,HIT_POINT -9,10,HIT_POINT -10,0.05,HIT_POINT -11,10,HIT_POINT -12,10,HIT_POINT -13,10,HIT_POINT -14,0.05,HIT_POINT -15,10,HIT_POINT -16,10,HIT_POINT -17,10,HIT_POINT -18,0.05,HIT_POINT -19,10,HIT_POINT -20,10,HIT_POINT -21,10,HIT_POINT -22,10,HIT_POINT -23,10,HIT_POINT -24,10,HIT_POINT -25,10,HIT_POINT -26,0.05,HIT_POINT -27,10,HIT_POINT +1,10,BASE_STAT +2,10,BASE_STAT +3,0.05,BASE_STAT +4,10,BASE_STAT +5,0.05,BASE_STAT +6,10,BASE_STAT +7,10,BASE_STAT +8,0.05,BASE_STAT +9,10,BASE_STAT +10,0.05,BASE_STAT +11,10,BASE_STAT +12,10,BASE_STAT +13,10,BASE_STAT +14,0.05,BASE_STAT +15,10,BASE_STAT +16,10,BASE_STAT +17,10,BASE_STAT +18,0.05,BASE_STAT +19,10,BASE_STAT +20,10,BASE_STAT +21,10,BASE_STAT +22,10,BASE_STAT +23,10,BASE_STAT +24,10,BASE_STAT +25,10,BASE_STAT +26,0.05,BASE_STAT +27,10,BASE_STAT diff --git a/Training_data/standard_torpedo_training.csv b/Training_data/standard_torpedo_training.csv index c5a3bab..640b7a1 100644 --- a/Training_data/standard_torpedo_training.csv +++ b/Training_data/standard_torpedo_training.csv @@ -1,33 +1,33 @@ 31 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,0.05,DAMAGE +2,0.05,BASE_STAT 3,0.05,COOL_DOWN 4,0.2,PROJECTILE_SPEED 5,0.1,FROST_DAMAGE -6,25,DAMAGE -7,0.05,DAMAGE -8,25,DAMAGE +6,25,BASE_STAT +7,0.05,BASE_STAT +8,25,BASE_STAT 9,0.2,PROJECTILE_SPEED -10,25,DAMAGE -11,25,DAMAGE -12,0.05,DAMAGE +10,25,BASE_STAT +11,25,BASE_STAT +12,0.05,BASE_STAT 13,0.1,FROST_DAMAGE -14,0.02,DAMAGE +14,0.02,BASE_STAT 15,0.1,PROJECTILE_SPEED -16,0.05,DAMAGE -17,0.02,DAMAGE -18,0.05,DAMAGE -19,0.05,DAMAGE +16,0.05,BASE_STAT +17,0.02,BASE_STAT +18,0.05,BASE_STAT +19,0.05,BASE_STAT 20,0.1,PROJECTILE_SPEED -21,0.02,DAMAGE -22,0.1,DAMAGE -23,0.02,DAMAGE -24,0.05,DAMAGE -25,0.05,DAMAGE +21,0.02,BASE_STAT +22,0.1,BASE_STAT +23,0.02,BASE_STAT +24,0.05,BASE_STAT +25,0.05,BASE_STAT 26,0.1,PROJECTILE_SPEED 27,0.1,FROST_DAMAGE 28,0.1,PROJECTILE_SPEED -29,0.02,DAMAGE +29,0.02,BASE_STAT 30,0.2,PROJECTILE_SPEED -31,0.02,DAMAGE +31,0.02,BASE_STAT diff --git a/Training_data/swift_torpedo_training.csv b/Training_data/swift_torpedo_training.csv index c5a3bab..640b7a1 100644 --- a/Training_data/swift_torpedo_training.csv +++ b/Training_data/swift_torpedo_training.csv @@ -1,33 +1,33 @@ 31 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,0.05,DAMAGE +2,0.05,BASE_STAT 3,0.05,COOL_DOWN 4,0.2,PROJECTILE_SPEED 5,0.1,FROST_DAMAGE -6,25,DAMAGE -7,0.05,DAMAGE -8,25,DAMAGE +6,25,BASE_STAT +7,0.05,BASE_STAT +8,25,BASE_STAT 9,0.2,PROJECTILE_SPEED -10,25,DAMAGE -11,25,DAMAGE -12,0.05,DAMAGE +10,25,BASE_STAT +11,25,BASE_STAT +12,0.05,BASE_STAT 13,0.1,FROST_DAMAGE -14,0.02,DAMAGE +14,0.02,BASE_STAT 15,0.1,PROJECTILE_SPEED -16,0.05,DAMAGE -17,0.02,DAMAGE -18,0.05,DAMAGE -19,0.05,DAMAGE +16,0.05,BASE_STAT +17,0.02,BASE_STAT +18,0.05,BASE_STAT +19,0.05,BASE_STAT 20,0.1,PROJECTILE_SPEED -21,0.02,DAMAGE -22,0.1,DAMAGE -23,0.02,DAMAGE -24,0.05,DAMAGE -25,0.05,DAMAGE +21,0.02,BASE_STAT +22,0.1,BASE_STAT +23,0.02,BASE_STAT +24,0.05,BASE_STAT +25,0.05,BASE_STAT 26,0.1,PROJECTILE_SPEED 27,0.1,FROST_DAMAGE 28,0.1,PROJECTILE_SPEED -29,0.02,DAMAGE +29,0.02,BASE_STAT 30,0.2,PROJECTILE_SPEED -31,0.02,DAMAGE +31,0.02,BASE_STAT diff --git a/Training_data/tesla_bolt_training.csv b/Training_data/tesla_bolt_training.csv index cfd08f7..65c921c 100644 --- a/Training_data/tesla_bolt_training.csv +++ b/Training_data/tesla_bolt_training.csv @@ -1,20 +1,20 @@ 18 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.02,DURATION +1,0.02,BASE_STAT 2,0.05,COOL_DOWN -3,0.02,DURATION +3,0.02,BASE_STAT 4,0.05,COOL_DOWN -5,0.02,DURATION -6,0.05,DURATION -7,0.02,DURATION -8,0.05,DURATION -9,0.02,DURATION +5,0.02,BASE_STAT +6,0.05,BASE_STAT +7,0.02,BASE_STAT +8,0.05,BASE_STAT +9,0.02,BASE_STAT 10,1.0,HEALING_BLOCK -11,0.05,DURATION -12,0.05,DURATION -13,0.05,DURATION +11,0.05,BASE_STAT +12,0.05,BASE_STAT +13,0.05,BASE_STAT 14,0.05,COOL_DOWN -15,0.05,DURATION +15,0.05,BASE_STAT 16,0.05,COOL_DOWN -17,0.05,DURATION -18,0.05,DURATION +17,0.05,BASE_STAT +18,0.05,BASE_STAT diff --git a/Training_data/tesla_shield_training.csv b/Training_data/tesla_shield_training.csv index a61da01..71a84aa 100644 --- a/Training_data/tesla_shield_training.csv +++ b/Training_data/tesla_shield_training.csv @@ -1,25 +1,25 @@ 23 LEVEL,BOOST_VALUE,BOOST_TYPE -1,25,HIT_POINT +1,25,BASE_STAT 2,0.03,DURATION -3,0.05,HIT_POINT -4,25,HIT_POINT +3,0.05,BASE_STAT +4,25,BASE_STAT 5,0.03,DURATION -6,25,HIT_POINT -7,0.05,HIT_POINT -8,25,HIT_POINT +6,25,BASE_STAT +7,0.05,BASE_STAT +8,25,BASE_STAT 9,0.03,DURATION -10,0.05,HIT_POINT +10,0.05,BASE_STAT 11,0.03,DURATION -12,0.05,HIT_POINT +12,0.05,BASE_STAT 13,0.03,DURATION -14,0.05,HIT_POINT +14,0.05,BASE_STAT 15,0.03,DURATION -16,0.05,HIT_POINT +16,0.05,BASE_STAT 17,0.03,DURATION -18,0.05,HIT_POINT +18,0.05,BASE_STAT 19,0.03,DURATION -20,0.05,HIT_POINT +20,0.05,BASE_STAT 21,0.03,DURATION 22,0.03,DURATION -23,0.05,HIT_POINT +23,0.05,BASE_STAT diff --git a/Training_data/triple_torpedo_training.csv b/Training_data/triple_torpedo_training.csv index 123f186..135ad61 100644 --- a/Training_data/triple_torpedo_training.csv +++ b/Training_data/triple_torpedo_training.csv @@ -1,32 +1,32 @@ 30 LEVEL,BOOST_VALUE,BOOST_TYPE 1,0.05,COOL_DOWN -2,0.05,DAMAGE +2,0.05,BASE_STAT 3,0.05,COOL_DOWN 4,0.1,FROST_DAMAGE -5,25,DAMAGE -6,0.05,DAMAGE -7,25,DAMAGE +5,25,BASE_STAT +6,0.05,BASE_STAT +7,25,BASE_STAT 8,0.1,PROJECTILE_SPEED -9,25,DAMAGE -10,25,DAMAGE -11,0.05,DAMAGE +9,25,BASE_STAT +10,25,BASE_STAT +11,0.05,BASE_STAT 12,0.1,FROST_DAMAGE -13,0.02,DAMAGE -14,0.05,DAMAGE -15,0.05,DAMAGE -16,0.02,DAMAGE -17,0.05,DAMAGE -18,0.05,DAMAGE +13,0.02,BASE_STAT +14,0.05,BASE_STAT +15,0.05,BASE_STAT +16,0.02,BASE_STAT +17,0.05,BASE_STAT +18,0.05,BASE_STAT 19,0.1,PROJECTILE_SPEED -20,0.02,DAMAGE -21,0.1,DAMAGE -22,0.05,DAMAGE -23,0.02,DAMAGE -24,0.1,DAMAGE -25,0.05,DAMAGE +20,0.02,BASE_STAT +21,0.1,BASE_STAT +22,0.05,BASE_STAT +23,0.02,BASE_STAT +24,0.1,BASE_STAT +25,0.05,BASE_STAT 26,0.1,FROST_DAMAGE -27,0.02,DAMAGE -28,0.05,DAMAGE +27,0.02,BASE_STAT +28,0.05,BASE_STAT 29,0.1,PROJECTILE_SPEED -30,0.02,DAMAGE +30,0.02,BASE_STAT diff --git a/Training_data/turbo_training.csv b/Training_data/turbo_training.csv index 617168c..1b8867a 100644 --- a/Training_data/turbo_training.csv +++ b/Training_data/turbo_training.csv @@ -1,6 +1,6 @@ 4 LEVEL,BOOST_VALUE,BOOST_TYPE -1,0.05,SPEED -2,0.05,SPEED -3,0.05,SPEED -4,0.05,SPEED +1,0.05,BASE_STAT +2,0.05,BASE_STAT +3,0.05,BASE_STAT +4,0.05,BASE_STAT diff --git a/main.c b/main.c index 4c6a0d5..2e5a1eb 100644 --- a/main.c +++ b/main.c @@ -8,14 +8,19 @@ #include "readobjects.h" #include "ships.h" #include "objects.h" +#include "readtraining.h" int main() { /*int gear[5][2] = {{5,8},{3,4},{1,2},{5,2},{2,4}}; struct Ship* s = initialiseShip("shooter",1.2,0.9,0.5,1596,5); - setUpShip(s,gear); - struct Object* o = readObjectFile(1,"standard_cannon","legendary"); - addOject(s,o);*/ - - start(); + setUpShip(s,gear);*/ + char* object_name= "standard_cannon"; + char* rarity = "legendary"; + struct Object* o = readObjectFile(1,object_name,rarity); + //addOject(s,o); + readTraining(o,object_name); + printf("\n"); + //printObject(o); + //start(); return 0; -} \ No newline at end of file +} diff --git a/readobjects.c b/readobjects.c index 1708b40..bfb54d4 100644 --- a/readobjects.c +++ b/readobjects.c @@ -7,7 +7,7 @@ #include "menu.h" #include "objects.h" -#define MAX_LINE_SIZE 4096 +#define MAX_LINE_SIZE 1024 /** * Reads object data from a CSV file based on the provided object type, name, and rarity. * @@ -22,34 +22,36 @@ * object's properties, or NULL if an error occurs. */ struct Object* readObjectFile(unsigned int object_type, char* object_name, char* rarity) { + if(object_name == NULL || rarity == NULL) { + printf("object_name or rarity is NULL\n"); + return NULL; + } // Loop to prompt user for object level until a valid input is provided while (true){ printf("What level is the object ?\n"); printf("(Between 1 and 50)\n"); printf("------------------------\n"); printf("Your choice: "); - clearInputBuffer(); // Clear any leftover input from previous user inputs int object_lvl = 0; scanf(" %d", &object_lvl); // Get user input for object level + clearInputBuffer(); // Clear any leftover input from previous user inputs // Validate the level input if(object_lvl < 0 || object_lvl > 50){ printf("Invalid choice, please try again\n"); }else{ // Allocate memory for the filename using object name and rarity - char* object_file_name = malloc(strlen(object_name) + strlen(rarity) + 16 + 5 + 1); + char* object_file_name = malloc(sizeof(char)*(strlen(object_name) + strlen(rarity) + 16 + 1 + 5 + 1)); if(object_file_name == NULL){ printf("error malloc object_file_name\n"); return NULL; } sprintf(object_file_name, "../Weapons_data/%s_%s.csv", object_name, rarity); // Create filename in the format: "_.csv" - // Try to open the CSV file for reading FILE* file = fopen(object_file_name, "r"); if (file == NULL) { printf("Error opening \"%s\", file does not exist\n", object_file_name); return NULL; // Return NULL if the file cannot be opened } - char line[MAX_LINE_SIZE]; char* copiedline = NULL; @@ -67,7 +69,6 @@ struct Object* readObjectFile(unsigned int object_type, char* object_name, char* strcpy(copiedline, line); // Copy the line unsigned int slot_points = atoi(copiedline); // Convert the line to an integer for slot points free(copiedline); // Free allocated memory after use - // Skip lines to reach the desired object level for(int i = 0; i <= object_lvl; i++){ if (fgets(line, sizeof(line), file) == NULL) { @@ -75,7 +76,6 @@ struct Object* readObjectFile(unsigned int object_type, char* object_name, char* return NULL; // Return NULL if reading the next line fails } } - // Process the line containing the object's attributes for the specified level copiedline = malloc(strlen(line) + 1); if (copiedline == NULL) { diff --git a/readtraining.c b/readtraining.c index a6f5baa..43ffa25 100644 --- a/readtraining.c +++ b/readtraining.c @@ -1,21 +1,20 @@ -#include #include #include #include #include #include -#include "readtraining.h" #include "menu.h" -#define MAX_LINE_SIZE 4096 +#include "objects.h" +#include "readtraining.h" +#define MAX_LINE_SIZE 1024 -void readAndApplyTraining(struct Object* o,char* object_name) { +void readTraining(struct Object* o,char* object_name) { if(o == NULL || object_name == NULL){ return; } - char* training_file_name = malloc(strlen(object_name) + 16 +8 + 5 + 1); + char* training_file_name = malloc(strlen(object_name) + 17 +13 + 1); sprintf(training_file_name, "../Training_data/%s_training.csv", object_name); - FILE* file = fopen(training_file_name, "r"); if (file == NULL) { printf("Error opening \" %s \", file does not exist\n", training_file_name); @@ -42,12 +41,15 @@ void readAndApplyTraining(struct Object* o,char* object_name) { while(true){ printf("------------------------\n"); printf("What is the level of training of your object ?\n"); - printf("(between 0 and %d", max_training_lvl); + printf("(between 0 and %d\n", max_training_lvl); printf("------------------------\n"); printf("Your choice: \n"); - clearInputBuffer(); scanf("%d", &training_lvl); - if(training_lvl >= 0 || training_lvl > max_training_lvl){ + clearInputBuffer(); + if(training_lvl<= 0 || training_lvl > max_training_lvl){ + if(training_lvl == 0){ + return; + } printf("Wrong training input level\n"); }else{ break; @@ -57,7 +59,6 @@ void readAndApplyTraining(struct Object* o,char* object_name) { fclose(file); return; } - if (fgets(line, sizeof(line), file) == NULL) { fclose(file); return; @@ -79,7 +80,8 @@ void readAndApplyTraining(struct Object* o,char* object_name) { token = strtok(NULL, ","); boost_value[iter] = atof(token); token = strtok(NULL, "\r"); - boost_type[iter] = token; + boost_type[iter] = malloc(sizeof(char)*(strlen(token)+1)); + strcpy(boost_type[iter],token); while(level < training_lvl){ if (fgets(line, sizeof(line), file) == NULL) { @@ -99,8 +101,132 @@ void readAndApplyTraining(struct Object* o,char* object_name) { token = strtok(NULL, ","); boost_value[iter] = atof(token); token = strtok(NULL, "\r"); - boost_type[iter] = token; + boost_type[iter] = malloc(sizeof(char)*(strlen(token)+1)); + strcpy(boost_type[iter],token); } + applyTraining(o,boost_type,boost_value,training_lvl); + free(boost_type); + free(boost_value); + return; +} + +void applyTraining(struct Object* o,char** boost_type,float* boost_value, int training_lvl) { + if(o == NULL || boost_type == NULL || boost_value == NULL){ + return; + } + + float p_base_stat = 1; + float p_range = 1; + float p_fire_dmg = 1; + float p_cool_down = 1; + float p_projectile_speed = 1; + float p_crit_hit_chance = 1; + float p_crit_hit_dmg = 1; + float p_frost_dmg = 1; + float p_duration = 1; + float p_heal_reduction = 1; + float p_frost = 1; + float p_turret_rotation = 1; + float p_healing_block = 1; + float p_rmv_stun = 1; + float p_rmv_frost = 1; + + int flat_base_stat = 0; + int flat_range = 0; + int flat_duration = 0; + + char* boost_type_cpy = ""; + float boost_value_copy = 0; + for(int i = 0; i < training_lvl; i++){ + boost_type_cpy = strdup(boost_type[i]); + boost_value_copy = boost_value[i]; + switch (boost_type_cpy){ + case 'BASE_STAT': + if(boost_value_copy < 1){ + p_base_stat += boost_value_copy; + }else{ + flat_base_stat += boost_value_copy; + } + break; + case 'RANGE': + if(boost_value_copy < 1){ + p_range += boost_value_copy; + }else{ + flat_range += boost_value_copy; + } + break; + case 'FIRE_DAMAGE': + if(boost_value_copy < 1){ + p_fire_dmg += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + case 'COOL_DOWN': + if(boost_value_copy < 1){ + p_cool_down += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + case 'PROJECTILE_SPEED': + if(boost_value_copy < 1){ + p_projectile_speed += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + case 'CRITICAL_HIT_CHANCE': + if(boost_value_copy < 1){ + p_crit_hit_chance += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + case 'CRITICAL_HIT_DAMAGE': + if(boost_value_copy < 1){ + p_crit_hit_dmg += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + + case 'FROST_DAMAGE': + if(boost_value_copy < 1){ + p_frost_dmg += boost_value_copy; + }else{ + printf("check training, there is a mistake either in the code or in the training dataset\n"); + return; + } + break; + case 'DURATION': + if(boost_value_copy < 1){ + p_duration += boost_value_copy; + }else{ + flat_duration += boost_value_copy; + } + break; + case 'HEALING_BLOCK': // + break; // + case 'REMOVE_STUN': // + break; //Not implemented and won't until I find it usefull + case 'REMOVE_FROST': // + break; // + case 'FROST_EFFECT': // + break; // + case 'TURET_ROTATION': // + break; // + case 'HEALING_REDUCTION': // + break; // + default: + printf("The training type: %s is unknown\n", boost_type_cpy); + } + } } diff --git a/readtraining.h b/readtraining.h index 956719a..3a6c9d1 100644 --- a/readtraining.h +++ b/readtraining.h @@ -1,7 +1,7 @@ #ifndef READTRAINING_H #define READTRAINING_H -void readAndApplyTraining(struct Object* o,char* object_name); - +void readTraining(struct Object* o,char* object_name); +void applyTraining(struct Object* o,char** boost_type,float* boost_value, int training_lvl); #endif diff --git a/scriptspy/csv_2.py b/scriptspy/csv_2.py index a0072f0..e7ea1ec 100644 --- a/scriptspy/csv_2.py +++ b/scriptspy/csv_2.py @@ -1,4 +1,8 @@ import csv +import os +import tkinter as tk +from tkinter import filedialog + header = ["LEVEL", "BOOST_VALUE", "BOOST_TYPE"] item_name = ['standard_cannon','blast_cannon','sniper_cannon','explosive_canon','galting_gun','carronade','grenade_launcher', @@ -97,59 +101,74 @@ boost_value = [ ] boost_type = [ - ['DAMAGE','RANGE','FIRE_DAMAGE','COOL_DOWN','DAMAGE','PROJECTILE_SPEED','DAMAGE','RANGE','DAMAGE','RANGE','DAMAGE','FIRE_DAMAGE','DAMAGE','COOL_DOWN','PROJECTILE_SPEED','FIRE_DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','FIRE_DAMAGE','DAMAGE','RANGE','COOL_DOWN','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','FIRE_DAMAGE','DAMAGE','DAMAGE','DAMAGE'],#standard_cannon - ['DAMAGE','RANGE','DAMAGE','PROJECTILE_SPEED','FIRE_DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','FIRE_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','FIRE_DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','FIRE_DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#blast_cannon - ['DAMAGE','FIRE_DAMAGE','RANGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','CRITICAL_HIT_CHANCE','DAMAGE','DAMAGE','FIRE_DAMAGE','CRITICAL_HIT_CHANCE','RANGE','CRITICAL_HIT_DAMAGE','PROJECTILE_SPEED','CRITICAL_HIT_DAMAGE','FIRE_DAMAGE','RANGE','DAMAGE','FIRE_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','RANGE','DAMAGE','DAMAGE','FIRE_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#sniper_cannon - ['DAMAGE','FIRE_DAMAGE','RANGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','FIRE_DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','FIRE_DAMAGE','RANGE','DAMAGE','FIRE_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','RANGE','DAMAGE','DAMAGE','FIRE_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE'],#explosive_canon - ['DAMAGE','RANGE','DAMAGE','COOL_DOWN','RANGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','RANGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','COOL_DOWN','RANGE','DAMAGE','COOL_DOWN','RANGE','DAMAGE','COOL_DOWN','DAMAGE'],#galting_gun - ['DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','FROST_EFFECT','DAMAGE','RANGE','DAMAGE','TURET_ROTATION','DAMAGE','DAMAGE','FROST_EFFECT','RANGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','TURET_ROTATION','DAMAGE','FROST_EFFECT','RANGE','DAMAGE','TURET_ROTATION','DAMAGE','RANGE','RANGE','DAMAGE','TURET_ROTATION'],#carronade - ['DAMAGE','RANGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','CRITICAL_HIT_CHANCE','DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','RANGE','DAMAGE','CRITICAL_HIT_CHANCE','DAMAGE','DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','RANGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','CRITICAL_HIT_CHANCE','DAMAGE','CRITICAL_HIT_DAMAGE'],#grenade_launcher - ['COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','FROST_DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','COOL_DOWN','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','FROST_DAMAGE','COOL_DOWN','DAMAGE'],#standard_mortar - ['DAMAGE','RANGE','FROST_DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','PROJECILE_SPEED','PROJECTILE_SPEED','FROST_DAMAGE','DAMAGE'],#long_range_mortar - ['DAMAGE','FROST_DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE'],#ballpark_mortar - ['DAMAGE','RANGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','CRITICAL_HIT_DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE'],#big_berta - ['COOL_DOWN','DAMAGE','COOL_DOWN','PROJECTILE_SPEED','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','FROST_DAMAGE','PROJECTILE_SPEED','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#standard_torpedo - ['DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#big_torpedo - ['COOL_DOWN','DAMAGE','COOL_DOWN','PROJECTILE_SPEED','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','FROST_DAMAGE','PROJECTILE_SPEED','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#swift_torpedo - ['COOL_DOWN','DAMAGE','COOL_DOWN','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','FROST_DAMAGE','DAMAGE','DAMAGE','PROJECTILE_SPEED','DAMAGE'],#triple_torpedo - ['DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE'],#railgun - ['DAMAGE','RANGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE'],#missile_launcher - ['DAMAGE','RANGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE'],#multi_missile - ['DAMAGE','COOL_DOWN','DAMAGE','COOL_DOWN','DAMAGE','COOL_DOWN','DAMAGE','COOL_DOWN','DAMAGE','RANGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE'],#mine - ['PROJECTILE_SPEED','DAMAGE','DURATION','DAMAGE','PROJECTILE_SPEED','DURATION','DAMAGE','DURATION','DAMAGE','PROJECTILE_SPEED','DAMAGE','HEALING_REDUCTION','DURATION','DAMAGE','PROJECTILE_SPEED','RANGE','HEALING_REDUCTION','DURATION','DAMAGE','DAMAGE','HEALING_REDUCTION','DAMAGE','DURATION','PROJECTILE_SPEED','HEALING_REDUCTION','RANGE','DAMAGE','HEALING_REDUCTION','DURATION','PROJECTILE_SPEED','DAMAGE','HEALING_REDUCTION','DAMAGE'],#flare_gun - ['DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE','RANGE','DAMAGE','DAMAGE','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DAMAGE','DAMAGE','DAMAGE'],#napalm_launcher - ['DURATION','DAMAGE','COOL_DOWN','RANGE','DAMAGE', 'DAMAGE','DAMAGE','DURATION','DAMAGE','DURATION','DAMAGE','RANGE','COOL_DOWN','DAMAGE','DURATION','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE','DURATION','DAMAGE','DAMAGE','COOL_DOWN','DAMAGE'],#fire_bomb - ['HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT'],#standard_shield - ['HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT'],#big_shield - ['SPEED','SPEED','SPEED','SPEED'],#turbo - ['HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING'],#bandage - ['HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING'],#big_bandage - ['SPEED','SPEED','SPEED','SPEED','SPEED','SPEED','SPEED','SPEED'],#overboost - ['SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','SPEED','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN'],#nitro - ['DURATION','COOL_DOWN','DURATION','COOL_DOWN','DURATION','DURATION','DURATION','DURATION','DURATION','HEALING_BLOCK','DURATION','DURATION','DURATION','COOL_DOWN','DURATION','COOL_DOWN','DURATION','DURATION'],#tesla_bolt - ['HIT_POINT','DURATION','HIT_POINT','HIT_POINT','DURATION','HIT_POINT','HIT_POINT','HIT_POINT','DURATION','HIT_POINT','DURATION','HIT_POINT','DURATION','HIT_POINT','DURATION','HIT_POINT','DURATION','HIT_POINT','DURATION','HIT_POINT','DURATION','DURATION','HIT_POINT'],#tesla_shield - ['FROST_EFFECT','DURATION','COOL_DOWN','FROST_EFFECT','DURATION','FROST_EFFECT','COOL_DOWN','HEALING_REDUCTION','DURATION','FROST_EFFECT','COOL_DOWN','FROST_EFFECT','DURATION'],#frost_blaster - ['DURATION','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','FROST_EFFECT','PROJECTILE_SPEED','FROST_EFFECT','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','FROST_EFFECT','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','FROST_EFFECT','PROJECTILE_SPEED'],#frsot_launcher - ['CRITICAL_HIT_CHANCE','HEALING','COOL_DOWN','RANGE','HEALING','CRITICAL_HIT_CHANCE','RANGE','HEALING','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','HEALING','RANGE','COOL_DOWN','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','HEALING','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','RANGE','HEALING','HEALING','CRITICAL_HIT_CHANCE','COOL_DOWN','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','HEALING','RANGE','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE'],#repair_box_launcher - ['HEALING','HEALING','COOL_DOWN','HEALING','HEALING','COOL_DOWN','HEALING','HEALING','COOL_DOWN','HEALING','HEALING','COOL_DOWN','HEALING','HEALING','HEALING','HEALING','COOL_DOWN','HEALING','HEALING'],#repair_pulse - ['HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING'],#duct_tape - ['HEALING','HEALING','COOL_DOWN','HEALING','REMOVE_STUN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','HEALING','COOL_DOWN','REMOVE_FROST','COOL_DOWN','COOL_DOWN','HEALING'],#repair_bolt - ['HEALING','HEALING','COOL_DOWN','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','HEALING','RANGE','HEALING','HEALING','HEALING','COOL_DOWN','HEALING','HEALING','HEALING','HEALING','RANGE','HEALING','HEALING','HEALING','HEALING','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN'],#repair_plasma - ['HIT_POINT','HIT_POINT','HIT_POINT','COOL_DOWN','HIT_POINT','COOL_DOWN','HIT_POINT','COOL_DOWN','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','COOL_DOWN','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT','HIT_POINT'],#defence_wall - ['COOL_DOWN','DEFENCE','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN'],#defence_aura - ['COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','COOL_DOWN','DEFENCE','DEFENCE','COOL_DOWN','DEFENCE'],#bloster_armor + ['BASE_STAT','RANGE','FIRE_DAMAGE','COOL_DOWN','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','RANGE','BASE_STAT','RANGE','BASE_STAT','FIRE_DAMAGE','BASE_STAT','COOL_DOWN','PROJECTILE_SPEED','FIRE_DAMAGE','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','FIRE_DAMAGE','BASE_STAT','RANGE','COOL_DOWN','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','FIRE_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT'],#standard_cannon + ['BASE_STAT','RANGE','BASE_STAT','PROJECTILE_SPEED','FIRE_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','FIRE_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','FIRE_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','FIRE_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#blast_cannon + ['BASE_STAT','FIRE_DAMAGE','RANGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','CRITICAL_HIT_CHANCE','BASE_STAT','BASE_STAT','FIRE_DAMAGE','CRITICAL_HIT_CHANCE','RANGE','CRITICAL_HIT_BASE_STAT','PROJECTILE_SPEED','CRITICAL_HIT_BASE_STAT','FIRE_DAMAGE','RANGE','BASE_STAT','FIRE_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','FIRE_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#sniper_cannon + ['BASE_STAT','FIRE_DAMAGE','RANGE','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FIRE_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','FIRE_DAMAGE','RANGE','BASE_STAT','FIRE_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','FIRE_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT'],#explosive_canon + ['BASE_STAT','RANGE','BASE_STAT','COOL_DOWN','RANGE','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','RANGE','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','RANGE','BASE_STAT','COOL_DOWN','RANGE','BASE_STAT','COOL_DOWN','BASE_STAT'],#galting_gun + ['BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_EFFECT','BASE_STAT','RANGE','BASE_STAT','TURET_ROTATION','BASE_STAT','BASE_STAT','FROST_EFFECT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','TURET_ROTATION','BASE_STAT','FROST_EFFECT','RANGE','BASE_STAT','TURET_ROTATION','BASE_STAT','RANGE','RANGE','BASE_STAT','TURET_ROTATION'],#carronade + ['BASE_STAT','RANGE','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','CRITICAL_HIT_CHANCE','BASE_STAT','BASE_STAT','CRITICAL_HIT_BASE_STAT','RANGE','BASE_STAT','CRITICAL_HIT_CHANCE','BASE_STAT','BASE_STAT','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','RANGE','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','CRITICAL_HIT_CHANCE','BASE_STAT','CRITICAL_HIT_BASE_STAT'],#grenade_launcher + ['COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','FROST_DAMAGE','COOL_DOWN','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','CRITICAL_HIT_BASE_STAT','COOL_DOWN','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','FROST_DAMAGE','COOL_DOWN','BASE_STAT'],#standard_mortar + ['BASE_STAT','RANGE','FROST_DAMAGE','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','PROJECILE_SPEED','PROJECTILE_SPEED','FROST_DAMAGE','BASE_STAT'],#long_range_mortar + ['BASE_STAT','FROST_DAMAGE','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT'],#ballpark_mortar + ['BASE_STAT','RANGE','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','CRITICAL_HIT_BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT'],#big_berta + ['COOL_DOWN','BASE_STAT','COOL_DOWN','PROJECTILE_SPEED','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','FROST_DAMAGE','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#standard_torpedo + ['BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#big_torpedo + ['COOL_DOWN','BASE_STAT','COOL_DOWN','PROJECTILE_SPEED','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','FROST_DAMAGE','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#swift_torpedo + ['COOL_DOWN','BASE_STAT','COOL_DOWN','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','FROST_DAMAGE','BASE_STAT','BASE_STAT','PROJECTILE_SPEED','BASE_STAT'],#triple_torpedo + ['BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT'],#railgun + ['BASE_STAT','RANGE','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#missile_launcher + ['BASE_STAT','RANGE','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#multi_missile + ['BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','RANGE','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT'],#mine + ['PROJECTILE_SPEED','BASE_STAT','DURATION','BASE_STAT','PROJECTILE_SPEED','DURATION','BASE_STAT','DURATION','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','HEALING_REDUCTION','DURATION','BASE_STAT','PROJECTILE_SPEED','RANGE','HEALING_REDUCTION','DURATION','BASE_STAT','BASE_STAT','HEALING_REDUCTION','BASE_STAT','DURATION','PROJECTILE_SPEED','HEALING_REDUCTION','RANGE','BASE_STAT','HEALING_REDUCTION','DURATION','PROJECTILE_SPEED','BASE_STAT','HEALING_REDUCTION','BASE_STAT'],#flare_gun + ['BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#napalm_launcher + ['DURATION','BASE_STAT','COOL_DOWN','RANGE','BASE_STAT', 'BASE_STAT','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','RANGE','COOL_DOWN','BASE_STAT','DURATION','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','DURATION','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT'],#fire_bomb + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#standard_shield + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#big_shield + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#turbo + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#bandage + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#big_bandage + ['BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#overboost + ['BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN'],#nitro + ['BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','HEALING_BLOCK','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT'],#tesla_bolt + ['BASE_STAT','DURATION','BASE_STAT','BASE_STAT','DURATION','BASE_STAT','BASE_STAT','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','DURATION','BASE_STAT','DURATION','DURATION','BASE_STAT'],#tesla_shield + ['BASE_STAT','DURATION','COOL_DOWN','BASE_STAT','DURATION','BASE_STAT','COOL_DOWN','HEALING_REDUCTION','DURATION','BASE_STAT','COOL_DOWN','BASE_STAT','DURATION'],#frost_blaster + ['DURATION','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED','DURATION','PROJECTILE_SPEED','BASE_STAT','PROJECTILE_SPEED'],#frsot_launcher + ['CRITICAL_HIT_CHANCE','BASE_STAT','COOL_DOWN','RANGE','BASE_STAT','CRITICAL_HIT_CHANCE','RANGE','BASE_STAT','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','BASE_STAT','RANGE','COOL_DOWN','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','BASE_STAT','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','RANGE','BASE_STAT','BASE_STAT','CRITICAL_HIT_CHANCE','COOL_DOWN','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE','BASE_STAT','RANGE','CRITICAL_HIT_CHANCE','CRITICAL_HIT_CHANCE'],#repair_box_launcher + ['BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT'],#repair_pulse + ['BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT'],#duct_tape + ['BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','REMOVE_STUN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','REMOVE_FROST','COOL_DOWN','COOL_DOWN','BASE_STAT'],#repair_bolt + ['BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','RANGE','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN'],#repair_plasma + ['BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT','BASE_STAT'],#defence_wall + ['COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN'],#defence_aura + ['COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','COOL_DOWN','BASE_STAT','BASE_STAT','COOL_DOWN','BASE_STAT'],#bloster_armor ['COOL_DOWN','COOL_DOWN','COOL_DOWN','COOL_DOWN']#cleanse_pulse ] -for i in range(0,42): - file_name = item_name[i] + "_training.csv" - print(file_name) - with open(file_name, 'w', newline='') as file: - writer = csv.writer(file, delimiter=',') - num = number_of_boosts[i] - writer.writerow([num]) # Convert num to a list - writer.writerow(header) - for j in range (0,num): - writer.writerow([j+1,boost_value[i][j],boost_type[i][j]]) \ No newline at end of file +# Function to prompt the user for the folder +def get_output_folder(): + root = tk.Tk() + root.withdraw() # Hide the root window + folder = filedialog.askdirectory(title="Select Folder to Save Files") + return folder + +# Get output folder from the user +output_folder = get_output_folder() + +# Check if the folder was selected +if output_folder: + for i in range(0, 42): + file_name = item_name[i] + "_training.csv" + full_path = os.path.join(output_folder, file_name) # Create full file path + print(f"Saving file to: {full_path}") + with open(full_path, 'w', newline='') as file: + writer = csv.writer(file, delimiter=',') + num = number_of_boosts[i] + writer.writerow([num]) # Convert num to a list + writer.writerow(header) + for j in range(num): + writer.writerow([j+1, boost_value[i][j], boost_type[i][j]]) +else: + print("No folder selected. Exiting...") \ No newline at end of file diff --git a/training.c b/training.c deleted file mode 100644 index 23aa8fd..0000000 --- a/training.c +++ /dev/null @@ -1 +0,0 @@ -#include "training.h" diff --git a/training.h b/training.h deleted file mode 100644 index f959961..0000000 --- a/training.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifndef TRAINING_H -#define TRAINING_H - -#endif //TRAINING_H