Skip to content

Commit

Permalink
VERSION 2.0.7 - Difficulty MCM Options Fixed and Minor Adjustments
Browse files Browse the repository at this point in the history
- Difficulty options now correctly modify damage and AP correctly
  - Having either or both of these options on would change damage/AP modifiers to that of Very Easy in the calculations
- Ammo breakdown for standard ammo now better reflects that of standard GAMMA balance
 - Breakdown of special/variant ammo is unchanged
- 9x21 AP now has the damage buff that GAMMA will be giving it in a future update
- 9x21 HP had its damage modifier slightly reduced so that it didn't outshine .45 Hydro-shok while costing less to craft (k_hit down from 2.15 to 2.0)
- (For future GAMMA version/dev2 testers) When using any type of ammo with a Special Effect, weapon barrels will instead have the chance to take condition damage since weapon base condition no longer matters
  - Current GAMMA users will still have the base weapon condition take damage when using special ammo
  • Loading branch information
ilrathCXV committed Oct 18, 2024
1 parent a018665 commit 1eeacc5
Show file tree
Hide file tree
Showing 6 changed files with 90 additions and 83 deletions.
4 changes: 2 additions & 2 deletions gamedata/configs/mod_system_zzz_new_ammo_and_variants.ltx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ inv_grid_x = 0
inv_grid_y = 0

cost = 4100
k_hit = 1.25
k_hit = 1.15
!impair
k_ap = 0.050

Expand Down Expand Up @@ -106,7 +106,7 @@ inv_grid_y = 0
icons_texture = ui\ui_icon_sp12_9x21

k_disp = 0.66
k_hit = 2.15
k_hit = 2.0
k_impulse = 1.3
k_ap = 0.015
wm_size = 0.088
Expand Down
106 changes: 42 additions & 64 deletions gamedata/configs/parts/parts_ammo.ltx
Original file line number Diff line number Diff line change
Expand Up @@ -10,47 +10,43 @@ parts = casing_p,2,powder_1,2,bullet_pistol,2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_9x18_fmj]:part_defaults,salvage_low
parts = casing_p,1,powder_1,1,bullet_pistol,1
parts = casing_p,2,powder_1,2,bullet_pistol,2

[ammo_9x18_fmj_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,2,bullet_pistol,2,powder_battery,1

[ammo_9x18_pmm]:part_defaults,salvage_low
parts = casing_p,2,powder_1,2,bullet_pistol,1
[ammo_9x18_pmm]:ammo_9x18_fmj

[ammo_9x18_pmm_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,4,bullet_pistol,2,powder_battery,1

[ammo_9x18_ap]:part_defaults,salvage_low
parts = casing_p,2,powder_1,2,bullet_pistol_ap,1
parts = casing_p,2,powder_1,2,bullet_pistol_ap,2

[ammo_9x18_ap_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,3,bullet_pistol_ap,2, powder_battery,2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_9x19_ap]:part_defaults,salvage_low
parts = casing_p,2,powder_1,3,bullet_pistol_ap,1
[ammo_9x19_ap]:ammo_9x18_ap

[ammo_9x19_ap_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,7,bullet_pistol_ap,2,powder_battery,1

[ammo_9x19_fmj]:part_defaults,salvage_low
parts = casing_p,1,powder_1,1,bullet_pistol,1
[ammo_9x19_fmj]:ammo_9x18_fmj

[ammo_9x19_fmj_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,2,bullet_pistol,3

[ammo_9x19_pbp]:part_defaults,salvage_low
parts = casing_p,2,powder_1,2,bullet_pistol,1
[ammo_9x19_pbp]:ammo_9x18_fmj

[ammo_9x19_pbp_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,2,bullet_pistol,3,powder_battery,2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_11.43x23_fmj]:part_defaults,salvage_low
parts = casing_p,1,powder_1,1,bullet_pistol,1
parts = casing_p,2,powder_1,2,bullet_pistol,2

[ammo_11.43x23_fmj_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,4,bullet_pistol,2,bullet_pistol_ap,2
Expand All @@ -63,28 +59,24 @@ parts = casing_p,4,powder_1,4,bullet_pistol,4,powder_battery,3

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_7.62x25_p]:part_defaults,salvage_low
parts = casing_p,1,powder_1,1,bullet_pistol,1
[ammo_7.62x25_p]:ammo_9x18_fmj

[ammo_7.62x25_p_bad]:part_defaults,salvage_high
parts = casing_p,2,powder_1,2,bullet_pistol_ap,1,powder_battery,3

[ammo_7.62x25_ps]:part_defaults,salvage_low
parts = casing_p,2,powder_1,2,bullet_pistol,2
[ammo_7.62x25_ps]:ammo_9x18_fmj

[ammo_7.62x25_ps_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,2,bullet_pistol,4,powder_battery,2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_5.7x28_ss190]:part_defaults,salvage_low
parts = casing_p,2,powder_1,3,bullet_pistol_ap,1
[ammo_5.7x28_ss190]:ammo_9x18_ap

[ammo_5.7x28_ss190_bad]:part_defaults,salvage_high
parts = casing_p,1,powder_1,3,bullet_pistol,4,powder_battery,3

[ammo_5.7x28_ss195]:part_defaults,salvage_low
parts = casing_p,1,powder_1,2,bullet_pistol,1
[ammo_5.7x28_ss195]:ammo_9x18_fmj

[ammo_5.7x28_ss195_bad]:part_defaults,salvage_high
parts = casing_p,2,powder_1,3,bullet_pistol,2
Expand All @@ -100,142 +92,131 @@ parts = casing_p,3,powder_2,5,bullet_pistol,6,powder_battery,2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_12x70_buck]:part_defaults,salvage_low
parts = casing_s,1,powder_1,2,bullet_shotgun,1
parts = casing_s,2,powder_1,2,bullet_shotgun,2

[ammo_12x70_buck_bad]:part_defaults,salvage_high
parts = casing_s,1,powder_1,4,bullet_shotgun,3

[ammo_12x76_zhekan]:part_defaults,salvage_low
parts = casing_s,2,powder_1,3,bullet_shotgun,2
[ammo_12x76_zhekan]:ammo_12x70_buck

[ammo_12x76_zhekan_bad]:part_defaults,salvage_high
parts = casing_s,2,powder_1,3,bullet_shotgun,1,bullet_shotgun_ap,2

[ammo_12x76_dart]:part_defaults,salvage_low
parts = casing_s,2,powder_1,4,bullet_shotgun_ap,2
parts = casing_s,2,powder_1,2,bullet_shotgun_ap,2

[ammo_12x76_dart_bad]:part_defaults,salvage_high
parts = casing_s,3,powder_1,4,bullet_shotgun,2,powder_battery,3

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_5.45x39_fmj]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,1,bullet_r5,1
parts = casing_r5,2,powder_2,2,bullet_r5,2

[ammo_5.45x39_fmj_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,3,bullet_r5,3,powder_battery,2

[ammo_5.45x39_ep]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,1,bullet_r5,1
[ammo_5.45x39_ep]:ammo_5.45x39_fmj

[ammo_5.45x39_ep_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,3,bullet_r5,3

[ammo_5.45x39_ap]:part_defaults,salvage_low
parts = casing_r5,2,powder_2,3,bullet_r5_ap,2
parts = casing_r5,2,powder_2,2,bullet_r5_ap,2

[ammo_5.45x39_ap_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,4,bullet_r5_ap,2,powder_battery,2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_5.56x45_fmj]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,2,bullet_r5,1
[ammo_5.56x45_fmj]:ammo_5.45x39_fmj

[ammo_5.56x45_fmj_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,2,bullet_r5,2,powder_battery,2

[ammo_5.56x45_ss190]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,1,bullet_r5,1
[ammo_5.56x45_ss190]:ammo_5.45x39_fmj

[ammo_5.56x45_ss190_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,4,bullet_r5,4,powder_battery,1

[ammo_5.56x45_ap]:part_defaults,salvage_low
parts = casing_r5,2,powder_2,3,bullet_r5_ap,2
[ammo_5.56x45_ap]:ammo_5.45x39_ap

[ammo_5.56x45_ap_bad]:part_defaults,salvage_high
parts = casing_r5,2,powder_2,4,bullet_r5_ap,2,powder_battery,2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_7.62x39_fmj]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,2,bullet_r5,1
[ammo_7.62x39_fmj]:ammo_5.45x39_fmj

[ammo_7.62x39_fmj_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,4,bullet_r5,2

[ammo_7.62x39_ap]:part_defaults,salvage_low
parts = casing_r5,2,powder_2,4,bullet_r5_ap,2
[ammo_7.62x39_ap]:ammo_5.45x39_ap

[ammo_7.62x39_ap_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,4,bullet_r5_ap,2,powder_battery,2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_9x39_pab9]:part_defaults,salvage_low
parts = casing_r5,1,powder_2,1,bullet_r5,1
parts = casing_r5,2,powder_2,2,bullet_r5,2

[ammo_9x39_pab9_bad]:part_defaults,salvage_high
parts = casing_r5,1,powder_2,3,bullet_r5,2,powder_battery,2

[ammo_9x39_ap]:part_defaults,salvage_low
parts = casing_r5,2,powder_2,3,bullet_r5_ap,2
parts = casing_r5,2,powder_2,2,bullet_r5_ap,2

[ammo_9x39_ap_bad]:part_defaults,salvage_high
parts = casing_r5,2,powder_2,4,bullet_r5_ap,3,powder_battery,3

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_7.62x51_fmj]:part_defaults,salvage_low
parts = casing_r7,2,powder_3,1,bullet_r7,2
parts = casing_r7,2,powder_3,2,bullet_r7,2

[ammo_7.62x51_fmj_bad]:part_defaults,salvage_high
parts = casing_r7,1,powder_3,3,bullet_r7,2

[ammo_7.62x51_ap]:part_defaults,salvage_low
parts = casing_r7,3,powder_3,6,bullet_r7_ap,3
parts = casing_r7,2,powder_3,2,bullet_r7_ap,2

[ammo_7.62x51_ap_bad]:part_defaults,salvage_high
parts = casing_r7,3,powder_3,4,bullet_r7_ap,4,powder_battery,4

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_7.62x54_7h1]:part_defaults,salvage_low
parts = casing_r7,1,powder_3,1,bullet_r7,1

[ammo_7.62x54_7h14]:part_defaults,salvage_high
parts = casing_r7,2,powder_3,2,bullet_r7,2

[ammo_7.62x54_7h14_bad]:part_defaults,salvage_low
parts = casing_r7,2,powder_3,4,bullet_r7,3,powder_battery,2
[ammo_7.62x54_7h1]:ammo_7.62x51_fmj

[ammo_7.62x54_7h1_bad]:part_defaults,salvage_high
parts = casing_r7,2,powder_3,3,bullet_r7,3,powder_battery,6

[ammo_7.62x54_ap]:part_defaults,salvage_low
parts = casing_r7,3,powder_3,7,bullet_r7_ap,3
[ammo_7.62x54_7h14]:ammo_7.62x51_fmj

[ammo_7.62x54_7h14_bad]:part_defaults,salvage_high
parts = casing_r7,2,powder_3,4,bullet_r7,3,powder_battery,2

[ammo_7.62x54_ap]:ammo_7.62x51_ap

[ammo_7.62x54_ap_bad]:part_defaults,salvage_high
parts = casing_r7,3,powder_3,4,bullet_r7_ap,3,powder_battery,3

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_pkm_100]:part_defaults,salvage_low
parts = casing_r7,1,powder_3,2,bullet_r7,1
[ammo_pkm_100]:ammo_7.62x51_fmj
salvage = 0.2

[ammo_pkm_100_bad]:part_defaults,salvage_high
[ammo_pkm_100_bad]:part_defaults
parts = casing_r7,3,powder_3,6,bullet_r7,3,powder_battery,3
salvage = 0.5

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_7.92x33_fmj]:part_defaults,salvage_low
parts = casing_r7,1,powder_3,1,bullet_r7,1
[ammo_7.92x33_fmj]:ammo_7.62x51_fmj

[ammo_7.92x33_fmj_bad]:part_defaults,salvage_high
parts = casing_r7,1,powder_3,2,bullet_r7,2,powder_battery,1

[ammo_7.92x33_ap]:part_defaults,salvage_low
parts = casing_r7,2,powder_3,4,bullet_r7_ap,2
[ammo_7.92x33_ap]:ammo_7.62x51_ap

[ammo_7.92x33_ap_bad]:part_defaults,salvage_high
parts = casing_r7,2,powder_3,4,bullet_r7_ap,2,powder_battery,4
Expand All @@ -250,21 +231,18 @@ parts = casing_r7,5,powder_3,5,bullet_r7_ap,5,powder_battery,4

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[ammo_12.7x55_fmj]:part_defaults,salvage_low
parts = casing_r7,1,powder_3,1,bullet_r7,1
[ammo_12.7x55_fmj]:ammo_7.62x51_fmj

[ammo_12.7x55_fmj_bad]:part_defaults,salvage_high
parts = casing_r7,1,powder_3,2,bullet_r7,2, powder_battery,2

[ammo_12.7x55_ap]:part_defaults,salvage_low
parts = casing_r7,2,powder_3,6,bullet_r7_ap,2
[ammo_12.7x55_ap]:ammo_7.62x51_ap

[ammo_12.7x55_ap_bad]:part_defaults,salvage_high
parts = casing_r7,3,powder_3,7,bullet_r7,2,powder_battery,4

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[ammo_50_bmg]:part_defaults,salvage_low
parts = casing_r7,5,powder_3,10,bullet_r7_ap,5
[ammo_50_bmg]:ammo_7.62x51_ap

[ammo_50_bmg_bad]:part_defaults,salvage_high
parts = casing_r7,5,powder_3,7,bullet_r7_ap,5, powder_battery,6
9 changes: 5 additions & 4 deletions gamedata/configs/parts/parts_ammo_bas.ltx
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@
parts = casing_r7,2,powder_3,2,bullet_r7_ap,2

[ammo_23x75_shrapnel]:part_defaults,salvage_low
parts = casing_s,2,powder_3,1,bullet_shotgun,2
parts = casing_s,2,powder_3,2,bullet_shotgun,2

[ammo_23x75_barrikada]:part_defaults,salvage_low
parts = casing_s,2,powder_3,2,bullet_shotgun_ap,2

[ammo_9x21_sp10]:part_defaults,salvage_low
parts = casing_p,1,powder_1,3,bullet_pistol_ap,1
parts = casing_p,2,powder_1,2,bullet_pistol_ap,2

[ammo_20x70_buck]:part_defaults,salvage_low
parts = casing_s,1,powder_1,1,bullet_shotgun,1
parts = casing_s,2,powder_1,2,bullet_shotgun,2

[ammo_23_eco]:part_defaults,salvage_high
parts = casing_s,3,bullet_shotgun_ap,2,powder_battery,4
parts = casing_s,2,powder_3,2,bullet_shotgun_ap,2
16 changes: 15 additions & 1 deletion gamedata/scripts/arti_handlers.script
Original file line number Diff line number Diff line change
Expand Up @@ -512,7 +512,20 @@ function condition_degrade_on_fire(amount, wpn, chance)
local weapon = wpn or db.actor:active_item()
local dura_rip = amount or 0.0025
if weapon and rand == 1 then
weapon:set_condition(clamp(weapon:condition() - dura_rip, 0, 1)) -- Lose 0.25% condition when using variants
if grok_gun_condition_fixed then
if arti_jamming.has_parts(wpn) then
local parts = item_parts.get_parts_con(wpn, nil, true)
local has_parts = false
for k,v in pairs(parts) do
if arti_jamming.is_barrel(k) then
parts[k] = v - ((dura_rip == 0.0105 and 3) or (dura_rip == 0.0025 and 2) or 1)
break
end
end
end
else
weapon:set_condition(clamp(weapon:condition() - dura_rip, 0, 1)) -- Lose 0.25% condition when using variants
end
end
end

Expand Down Expand Up @@ -586,6 +599,7 @@ function on_game_start()
end

RegisterScriptCallback("actor_on_weapon_fired", particle_effects)

RegisterScriptCallback("actor_on_weapon_fired", custom_impair_special_effects)

RegisterScriptCallback("on_enemy_eval", on_enemy_eval)
Expand Down
2 changes: 1 addition & 1 deletion gamedata/scripts/bas_handler.script
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ function cloudkill_dmg_reduction(shit, bone_id)
local damage_reduction = 1 - (weakened[shit.draftsman:id()] * 0.05)
damage_reduction = clamp(damage_reduction, 0.05, 0.4)
shit.power = shit.power * damage_reduction
display_reduction = tonumber(100 - (damage_reduction * 100))
-- display_reduction = tonumber(100 - (damage_reduction * 100))
-- printf("[ArtiGrok - BaS Handler] Cloudkill DMG reduction: %s%", display_reduction)
end
end
Expand Down
Loading

0 comments on commit 1eeacc5

Please sign in to comment.