From 8add3f93f532534a1b815abcaf83b7eab63b4b9e Mon Sep 17 00:00:00 2001 From: GameStar <56610486+BlueBoat29@users.noreply.github.com> Date: Mon, 24 Nov 2025 14:06:12 -0600 Subject: [PATCH] Gun Balancing (#2279) * some things * I'm tiredxs * yea * gun * retexture i think * soresm ore * op * Create TACZ_CHANGELOG.md * surely final stuff * iuh --- kubejs/assets/tacz/lang/en_us.json | 4 + kubejs/assets/tacz/textures/gun/slot/m700.png | Bin 0 -> 2390 bytes kubejs/assets/tacz/textures/gun/uv/m700.png | Bin 0 -> 13988 bytes kubejs/assets/tacz/textures/gun/uv/m700_n.png | Bin 0 -> 5473 bytes kubejs/assets/tacz/textures/gun/uv/m700_s.png | Bin 0 -> 4853 bytes kubejs/server_scripts/gregtech/recipes.js | 2 + kubejs/server_scripts/tacz/index_modifiers.js | 214 +++++++++++++++++- kubejs/server_scripts/tacz/recipes.ammo.js | 27 ++- kubejs/server_scripts/tacz/recipes.guns.js | 98 +++++--- kubejs/startup_scripts/tacz/constants.js | 8 +- tacz/TACZ_CHANGELOG.md | 133 +++++++++++ tacz/ulv_guns.zip | Bin 114255 -> 108945 bytes 12 files changed, 449 insertions(+), 37 deletions(-) create mode 100644 kubejs/assets/tacz/textures/gun/slot/m700.png create mode 100644 kubejs/assets/tacz/textures/gun/uv/m700.png create mode 100644 kubejs/assets/tacz/textures/gun/uv/m700_n.png create mode 100644 kubejs/assets/tacz/textures/gun/uv/m700_s.png create mode 100644 tacz/TACZ_CHANGELOG.md diff --git a/kubejs/assets/tacz/lang/en_us.json b/kubejs/assets/tacz/lang/en_us.json index 7e1a52660..dd65ee5de 100644 --- a/kubejs/assets/tacz/lang/en_us.json +++ b/kubejs/assets/tacz/lang/en_us.json @@ -25,8 +25,12 @@ "create_armorer.attachment.extended_mag_ca_2.name": "Copper Plated Magazine", "create_armorer.attachment.extended_mag_ca_3.name": "Brass Plated Magazine", "create_armorer.ammo.rbapb.name": "Rimmed Blunt Ammo", + "create_armorer.gun.pistol_auto_stress": "\"Stress\" Semi Pistol", "create_armorer.gun.mg_platemag_flywheel": "\"Flywheel\" Machine Gun", + "create_armorer.gun.sniper_semi_clockwork": "\"Clockwork\" Rifle", "create_armorer.gun.rifle_assult_crane": "\"Crane\" Assault Rifle", + "tacz.ammo.30_06.name": ".30-06 SLAP Ammo", + "tacz.gun.m700.name": "\"Clutch\" Sniper Rifle", "item.tacz.ammo_box.iron": "Steel Ammo Box", "item.tacz.ammo_box.gold": "§9Magnalium Ammo Box", "item.tacz.ammo_box.diamond": "§6Desh Ammo Box" diff --git a/kubejs/assets/tacz/textures/gun/slot/m700.png b/kubejs/assets/tacz/textures/gun/slot/m700.png new file mode 100644 index 0000000000000000000000000000000000000000..35b6afacfd1192e10587cbcaf35b548f675321ff GIT binary patch literal 2390 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 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tacz/textures/gun/uv/m700_s.png b/kubejs/assets/tacz/textures/gun/uv/m700_s.png new file mode 100644 index 0000000000000000000000000000000000000000..f37bef343d8afc57bb736bd293cdee5bdaf3a347 GIT binary patch literal 4853 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 ZkKM3!ITx$gy3-&-Jzf1=);T3K0RYD?86*Gz literal 0 HcmV?d00001 diff --git a/kubejs/server_scripts/gregtech/recipes.js b/kubejs/server_scripts/gregtech/recipes.js index b76dc2ea4..1d57dc612 100644 --- a/kubejs/server_scripts/gregtech/recipes.js +++ b/kubejs/server_scripts/gregtech/recipes.js @@ -1842,6 +1842,8 @@ const registerGTCEURecipes = (event) => { .duration(20 * 5) .category(GTRecipeCategories.INGOT_MOLDING) + event.replaceInput( {output: 'gtceu:nano_saber'}, 'gtceu:ruridit_plate', '#forge:plates/ostrum_iodide' ) + // Change // The 9x buff for large boiler recipes above does not apply to this for some reason, so it gets 3x duration for an effective 1/3 reduction instead diff --git a/kubejs/server_scripts/tacz/index_modifiers.js b/kubejs/server_scripts/tacz/index_modifiers.js index 3f7cc5d57..c157e27de 100644 --- a/kubejs/server_scripts/tacz/index_modifiers.js +++ b/kubejs/server_scripts/tacz/index_modifiers.js @@ -18,6 +18,7 @@ const ammoIndexLogic = (event) => { switch(id) { case "tacz:45_70": json.stack_size = 64; break; case "tacz:12g": json.stack_size = 64; break; + case "tacz:30_06": json.stack_size = 64; break; case "create_armorer:40mmhe": json.stack_size = 16; break; case "create_armorer:rbapb": json.stack_size = 64; break; @@ -99,6 +100,12 @@ const gunIndexLogic = (event) => { return event.removeGun(); } + + if (id === "create_armorer:sniper_semi_clockwork"){ + const json = JSON.parse(event.getStdJson()); + json.type = "rifle"; + return event.setJson(JSON.stringify(json)); + } } const attachmentDataLogic = (event) => { @@ -109,6 +116,7 @@ const gunDataLogic = (event) => { const id = event.getId().toString(); const json = JSON.parse(event.getStdJson()); + //Pistols if (id === "ulv_guns:flintlock_data"){ json.bullet.damage = 14; json.bullet.extra_damage.damage_adjust = @@ -121,36 +129,168 @@ const gunDataLogic = (event) => { } if(id === "create_armorer:pistol_revolver_torque_data"){ + json.ammo = "create_armorer:rbapb"; + + json.bullet.pierce = 2; + json.bullet.damage = 12; + json.bullet.extra_damage.armor_ignore = 0.25; + json.bullet.extra_damage.head_shot_multiplier = 1.5; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 25, "damage": 12}, + {"distance": 50, "damage": 11}, + {"distance": 75, "damage": 9}, + {"distance": "infinite", "damage": 7} + ] + + } + + if(id === "create_armorer:pistol_auto_stress_data"){ + json.ammo = "create_armorer:rbapb"; + json.ammo_amount = 10; + json.extended_mag_ammo_amount = + [ + 14, + 18, + 22 + ] + + json.fire_mode = + [ + "semi" + ] + + json.bullet.damage = 8; + json.bullet.extra_damage.armor_ignore = 0.25; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 32, "damage": 8}, + {"distance": 64, "damage": 7}, + {"distance": "infinite", "damage": 6} + ] + } + + if(id === "applied_armorer:niklas_pistol_semi_pride_data"){ json.bullet.extra_damage.armor_ignore = 0.25; } + if(id === "applied_armorer:niklas_pistol_double_win_win_data"){ + json.bullet.damage = 10; + json.bullet.extra_damage.armor_ignore = 0.25; + json.bullet.extra_damage.head_shot_multiplier = 1.5; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 15, "damage": 10}, + {"distance": 35, "damage": 9}, + {"distance": "infinite", "damage": 8} + ] + } + + //Snipers + if(id === "tacz:springfield1873_data") { + json.bullet.damage = 25; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 40, "damage": 25}, + {"distance": 70, "damage": 21}, + {"distance": 100, "damage": 17}, + {"distance": "infinite", "damage": 12} + ] + } + + if(id === "tacz:m700_data"){ + json.ammo_amount = 2; + json.extended_mag_ammo_amount = + [ + 4, + 6, + 9 + ] + + json.bullet.damage = 32; + json.bullet.extra_damage.head_shot_multiplier = 1.75; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 48, "damage": 32}, + {"distance": 96, "damage": 28}, + {"distance": 128, "damage": 23}, + {"distance": "infinite", "damage": 18} + ] + } + + if(id === "applied_armorer:moritz_sniper_semi_k30_data") { + json.bullet.pierce = 4; + json.bullet.damage = 40; + json.bullet.extra_damage.armor_ignore = 0.55; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 100, "damage": 40}, + {"distance": 200, "damage": 35}, + {"distance": "infinite", "damage": 30} + ] + } + + + //Rifles if(id === "create_armorer:sniper_semi_clockwork_data"){ + json.ammo = "create_armorer:slap"; + json.ammo_amount = 10; + json.extended_mag_ammo_amount = + [ + 13, + 16, + 20 + ] + + json.bullet.extra_damage.armor_ignore = 0.30; json.bullet.damage = 22; + json.bullet.extra_damage.head_shot_multiplier = 1.50; json.bullet.extra_damage.damage_adjust = [ {"distance": 60, "damage": 22}, {"distance": 120, "damage": 19}, {"distance": "infinite", "damage": 17} ] + json.builtin_attachments = {}; json.builtin_attachments.scope = "create_armorer:sight_simple"; } + if(id === "create_armorer:rifle_assult_crane_data"){ + json.ammo_amount = 20; + json.extended_mag_ammo_amount = + [ + 28, + 36, + 44 + ] + } + if(id === "applied_armorer:moritz_rifle_ar77_data") { json.ammo = "applied_armorer:hard_core_quartz_bullet"; - json.bullet.damage = 13; + json.ammo_amount = 25; + json.extended_mag_ammo_amount = + [ + 36, + 45, + 52 + ] + + + json.bullet.damage = 14; json.bullet.extra_damage.armor_ignore = 0.35; json.bullet.extra_damage.head_shot_multiplier = 1.75; json.bullet.extra_damage.damage_adjust = [ - {"distance": 80, "damage": 13}, - {"distance": 120, "damage": 11}, - {"distance": "infinite", "damage": 9} + {"distance": 80, "damage": 14}, + {"distance": 120, "damage": 12}, + {"distance": "infinite", "damage": 10} ] } + //Shotguns if(id === "tacz:db_long_data"){ json.bullet.extra_damage.armor_ignore = 0.22; } @@ -159,6 +299,71 @@ const gunDataLogic = (event) => { json.bullet.extra_damage.armor_ignore = 0.22; } + //SMGs + if(id === "create_armorer:smg_auto_crank_data"){ + json.ammo = "create_armorer:rbapb"; + + json.ammo_amount = 25; + json.extended_mag_ammo_amount = + [ + 35, + 45, + 55 + ] + + json.bullet.damage = 8; + json.bullet.extra_damage.armor_ignore = 0.25; + json.bullet.extra_damage.head_shot_multiplier = 1.2; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 24, "damage": 8}, + {"distance": 48, "damage": 7}, + {"distance": 72, "damage": 6}, + {"distance": "infinite", "damage": 5} + ] + } + + if(id === "applied_armorer:niklas_smg_freedom_data"){ + json.ammo_amount = 35; + json.extended_mag_ammo_amount = + [ + 45, + 55, + 65 + ] + + json.bullet.damage = 10; + json.bullet.extra_damage.armor_ignore = 0.25; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 24, "damage": 10}, + {"distance": 48, "damage": 9}, + {"distance": 72, "damage": 8}, + {"distance": "infinite", "damage": 7} + ] + } + + //Heavy + if(id === "create_armorer:mg_platemag_flywheel_data") { + json.ammo_amount = 40; + json.extended_mag_ammo_amount = + [ + 55, + 80, + 115 + ] + + json.rpm = 640; + + json.bullet.damage = 12; + json.bullet.extra_damage.damage_adjust = + [ + {"distance": 32, "damage": 12}, + {"distance": 64, "damage": 11}, + {"distance": "infinite", "damage": 10} + ] + } + if(id === "create_armorer:cannon_40mm_salamander_data"){ json.bullet.damage = 50; json.bullet.extra_damage.damage_adjust = @@ -166,6 +371,7 @@ const gunDataLogic = (event) => { {"distance": 200, "damage": 50}, {"distance": "infinite", "damage": 45} ] + json.builtin_attachments = {}; json.builtin_attachments.scope = "create_armorer:sight_simple"; } diff --git a/kubejs/server_scripts/tacz/recipes.ammo.js b/kubejs/server_scripts/tacz/recipes.ammo.js index f0aebe5fe..2fbc8f20f 100644 --- a/kubejs/server_scripts/tacz/recipes.ammo.js +++ b/kubejs/server_scripts/tacz/recipes.ammo.js @@ -93,6 +93,13 @@ function registerTACZAmmoRecipes(event){ .duration(20) //Clockwork era + event.recipes.gtceu.assembler('tfg_tacz:rb_small_lv') + .itemInputs('4x #forge:nuggets/lead','2x #forge:foils/copper', '#forge:ingots/brass', + '#forge:dusts/gunpowder') + .itemOutputs(Item.of('tacz:ammo', 4, + '{AmmoId:"create_armorer:rbapb"}')) + .EUt(GTValues.VA[GTValues.LV]) + .duration(20) event.recipes.gtceu.assembler('tfg_tacz:rb_small') .itemInputs('4x #forge:nuggets/lead','2x #forge:foils/copper', '4x tfg:small_bullet_casing', '#forge:dusts/gunpowder') @@ -107,20 +114,36 @@ function registerTACZAmmoRecipes(event){ '{AmmoId:"create_armorer:rbapb"}')) .EUt(GTValues.VA[GTValues.EV]) .duration(20) + event.recipes.gtceu.assembler('tfg_tacz:slap_large') - .itemInputs('4x #forge:nuggets/lead','4x #forge:foils/copper', '4x tfg:large_bullet_casing', + .itemInputs('4x #forge:bolts/lead','4x #forge:foils/copper', '4x tfg:large_bullet_casing', '#forge:dusts/gunpowder') .itemOutputs(Item.of('tacz:ammo', 4, '{AmmoId:"create_armorer:slap"}')) .EUt(GTValues.VA[GTValues.MV]) .duration(20) event.recipes.gtceu.assembler('tfg_tacz:slap_large_nc') - .itemInputs('8x #forge:nuggets/lead','8x #forge:foils/copper', '8x tfg:large_bullet_casing', + .itemInputs('8x #forge:bolts/lead','8x #forge:foils/copper', '8x tfg:large_bullet_casing', 'tfg:nitrocellulose') .itemOutputs(Item.of('tacz:ammo', 8, '{AmmoId:"create_armorer:slap"}')) .EUt(GTValues.VA[GTValues.EV]) .duration(20) + + event.recipes.gtceu.assembler('tfg_tacz:3006_large') + .itemInputs('4x #forge:rods/annealed_copper','4x #forge:foils/copper', '4x tfg:large_bullet_casing', + '#forge:dusts/gunpowder') + .itemOutputs(Item.of('tacz:ammo', 4, + '{AmmoId:"tacz:30_06"}')) + .EUt(GTValues.VA[GTValues.MV]) + .duration(20) + event.recipes.gtceu.assembler('tfg_tacz:3006_large_nc') + .itemInputs('8x #forge:rods/annealed_copper','8x #forge:foils/copper', '8x tfg:large_bullet_casing', + 'tfg:nitrocellulose') + .itemOutputs(Item.of('tacz:ammo', 8, + '{AmmoId:"tacz:30_06"}')) + .EUt(GTValues.VA[GTValues.EV]) + .duration(20) //Certus era diff --git a/kubejs/server_scripts/tacz/recipes.guns.js b/kubejs/server_scripts/tacz/recipes.guns.js index 40d6dda8f..93a60512b 100644 --- a/kubejs/server_scripts/tacz/recipes.guns.js +++ b/kubejs/server_scripts/tacz/recipes.guns.js @@ -70,66 +70,85 @@ function registerTACZGunRecipes(event){ //Region clockwork era event.recipes.gtceu.assembler('tfg_tacz:ca_torque_revo') - .itemInputs('gtceu:steel_small_fluid_pipe', '4x #forge:ingots/aluminium', '2x #forge:plates/brass', + .itemInputs('gtceu:steel_small_fluid_pipe', '4x #forge:ingots/black_steel', '2x #forge:plates/brass', '6x #forge:rings/brass', '2x gtceu:treated_wood_planks', '8x #forge:screws/black_steel', - 'tfg:advanced_clockwork_mechanism') - .inputFluids(Fluid.of('gtceu:soldering_alloy', 288)) + '3x greate:steel_cogwheel') + .inputFluids(Fluid.of('gtceu:soldering_alloy', 256)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"create_armorer:pistol_revolver_torque",HasBulletInBarrel:1b}')) .circuit(1) + .EUt(GTValues.VA[GTValues.LV]) + .duration(80) + event.recipes.gtceu.assembler('tfg_tacz:ca_stress_pistol') + .itemInputs('gtceu:steel_small_fluid_pipe', '4x #forge:ingots/black_steel', '2x #forge:ingots/aluminium', + '3x #forge:plates/brass', 'gtceu:treated_wood_planks', '12x #forge:screws/black_steel', + '4x #forge:screws/brass', 'tfg:advanced_clockwork_mechanism') + .inputFluids(Fluid.of('gtceu:soldering_alloy', 468)) + .itemOutputs(Item.of('tacz:modern_kinetic_gun', + '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"create_armorer:pistol_auto_stress",HasBulletInBarrel:1b}')) + .circuit(2) .EUt(GTValues.VA[GTValues.MV]) .duration(80) event.recipes.gtceu.assembler('tfg_tacz:ca_crane') .itemInputs('gtceu:steel_small_fluid_pipe', '7x #forge:ingots/aluminium', '2x #forge:ingots/black_steel', '4x #forge:plates/brass','2x gtceu:copper_tiny_fluid_pipe', '2x gtceu:treated_wood_planks', '2x #forge:small_gears/steel', '14x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') - .inputFluids(Fluid.of('gtceu:soldering_alloy', 540)) + .inputFluids(Fluid.of('gtceu:soldering_alloy', 684)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', '{GunCurrentAmmoCount:0,GunFireMode:"AUTO",GunId:"create_armorer:rifle_assult_crane",HasBulletInBarrel:1b}')) .EUt(GTValues.VA[GTValues.MV]) .duration(100) + event.recipes.gtceu.assembler('tfg_tacz:ca_crank_smg') + .itemInputs('gtceu:steel_small_fluid_pipe', '5x #forge:ingots/aluminium', '5x #forge:plates/brass', + '6x gtceu:steel_tiny_fluid_pipe', '2x gtceu:treated_wood_planks', '2x #forge:small_gears/steel', + '16x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') + .inputFluids(Fluid.of('gtceu:soldering_alloy', 612)) + .itemOutputs(Item.of('tacz:modern_kinetic_gun', + '{GunCurrentAmmoCount:0,GunFireMode:"AUTO",GunId:"create_armorer:smg_auto_crank",HasBulletInBarrel:1b}')) + .circuit(3) + .EUt(GTValues.VA[GTValues.MV]) + .duration(100) event.recipes.gtceu.assembler('tfg_tacz:ca_pump_bearing') .itemInputs('2x gtceu:steel_small_fluid_pipe', '4x #forge:ingots/aluminium', '4x #forge:plates/brass', '8x gtceu:treated_wood_planks', '#forge:small_gears/steel', '#forge:gears/steel', '16x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') - .inputFluids(Fluid.of('gtceu:soldering_alloy', 432)) + .inputFluids(Fluid.of('gtceu:soldering_alloy', 504)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"create_armorer:shotgun_pump_bearing",HasBulletInBarrel:0b}')) .EUt(GTValues.VA[GTValues.MV]) - .circuit(3) + .circuit(4) .duration(100) event.recipes.gtceu.assembler('tfg_tacz:ca_clockwork_sniper') - .itemInputs('gtceu:steel_normal_fluid_pipe', '7x #forge:ingots/aluminium', '7x #forge:ingots/black_steel', + .itemInputs('gtceu:steel_normal_fluid_pipe', '6x #forge:ingots/aluminium', '3x #forge:ingots/black_steel', '4x #forge:plates/brass','6x gtceu:copper_tiny_fluid_pipe', '2x gtceu:treated_wood_planks', - '14x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') - .inputFluids(Fluid.of('gtceu:soldering_alloy', 792)) + '12x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') + .inputFluids(Fluid.of('gtceu:soldering_alloy', 684)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"create_armorer:sniper_semi_clockwork",HasBulletInBarrel:1b}')) .EUt(GTValues.VA[GTValues.MV]) - .circuit(4) + .circuit(5) .duration(120) event.recipes.gtceu.assembler('tfg_tacz:ca_flywheel_mg') .itemInputs('gtceu:steel_normal_fluid_pipe', '10x #forge:ingots/aluminium', '6x #forge:ingots/black_steel', '6x #forge:plates/brass', 'create:steam_engine', '3x gtceu:steel_tiny_fluid_pipe', '2x gtceu:treated_wood_planks','20x #forge:screws/black_steel', '2x tfg:advanced_clockwork_mechanism') - .inputFluids(Fluid.of('gtceu:soldering_alloy', 936)) + .inputFluids(Fluid.of('gtceu:soldering_alloy', 1008)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', '{GunCurrentAmmoCount:0,GunFireMode:"AUTO",GunId:"create_armorer:mg_platemag_flywheel",HasBulletInBarrel:1b}')) .EUt(GTValues.VA[GTValues.MV]) .duration(160) + event.recipes.gtceu.assembler('tfg_tacz:tacz_m700') + .itemInputs('3x gtceu:steel_small_fluid_pipe', '5x #forge:ingots/aluminium', '4x #forge:plates/black_steel', + '16x gtceu:treated_wood_planks', '16x #forge:screws/black_steel', 'tfg:advanced_clockwork_mechanism') + .inputFluids(Fluid.of('gtceu:soldering_alloy', 768)) + .itemOutputs(Item.of('tacz:modern_kinetic_gun', + '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"tacz:m700",HasBulletInBarrel:0b}')) + .EUt(GTValues.VA[GTValues.MV]) + .circuit(6) + .duration(120) //Region certus era - event.recipes.gtceu.assembler('tfg_tacz:aa_pride') - .itemInputs('gtceu:titanium_small_fluid_pipe', '4x #forge:ingots/titanium', '2x #forge:plates/stainless_steel', - '2x #forge:rods/long/titanium', '8x #forge:screws/hsla_steel', 'tfg:certus_mechanism') - .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 1152)) - .itemOutputs(Item.of('tacz:modern_kinetic_gun', - '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"applied_armorer:niklas_pistol_semi_pride",HasBulletInBarrel:0b}')) - .circuit(2) - .EUt(GTValues.VA[GTValues.EV]) - .duration(80) - event.recipes.gtceu.assembler('tfg_tacz:aa_right') .itemInputs('gtceu:titanium_small_fluid_pipe', '5x #forge:ingots/titanium', '3x #forge:plates/stainless_steel', '#forge:rods/long/titanium', '10x #forge:screws/hsla_steel', 'tfg:certus_mechanism') @@ -139,6 +158,16 @@ function registerTACZGunRecipes(event){ .circuit(1) .EUt(GTValues.VA[GTValues.EV]) .duration(80) + + event.recipes.gtceu.assembler('tfg_tacz:aa_pride') + .itemInputs('gtceu:titanium_small_fluid_pipe', '4x #forge:ingots/titanium', '2x #forge:plates/stainless_steel', + '2x #forge:rods/long/titanium', '8x #forge:screws/hsla_steel', 'tfg:certus_mechanism') + .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 1152)) + .itemOutputs(Item.of('tacz:modern_kinetic_gun', + '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"applied_armorer:niklas_pistol_semi_pride",HasBulletInBarrel:0b}')) + .circuit(2) + .EUt(GTValues.VA[GTValues.EV]) + .duration(80) event.recipes.gtceu.assembler('tfg_tacz:aa_win_win') .itemInputs('2x gtceu:titanium_small_fluid_pipe', '10x #forge:ingots/titanium', '6x #forge:plates/stainless_steel', @@ -150,6 +179,17 @@ function registerTACZGunRecipes(event){ .EUt(GTValues.VA[GTValues.EV]) .duration(120) + event.recipes.gtceu.assembler('tfg_tacz:aa_k30') + .itemInputs('2x gtceu:titanium_small_fluid_pipe', '8x #forge:ingots/titanium', '2x #forge:ingots/magnalium', + '8x #forge:plates/stainless_steel', '3x #forge:rods/long/hsla_steel', '2x tfc:lens', + '24x #forge:screws/hsla_steel', 'tfg:certus_mechanism') + .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 1728)) + .itemOutputs(Item.of('tacz:modern_kinetic_gun', + '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"applied_armorer:moritz_sniper_semi_k30",HasBulletInBarrel:0b}')) + .circuit(4) + .EUt(GTValues.VA[GTValues.EV]) + .duration(220) + event.recipes.gtceu.assembler('tfg_tacz:aa_ar') .itemInputs('gtceu:titanium_small_fluid_pipe', '10x #forge:ingots/titanium', '5x #forge:plates/stainless_steel', '2x #forge:rods/long/hsla_steel', '2x tfc:lens', '20x #forge:screws/hsla_steel', @@ -172,16 +212,16 @@ function registerTACZGunRecipes(event){ .EUt(GTValues.VA[GTValues.EV]) .duration(180) - event.recipes.gtceu.assembler('tfg_tacz:aa_k30') - .itemInputs('2x gtceu:titanium_small_fluid_pipe', '8x #forge:ingots/titanium', '2x #forge:ingots/magnalium', - '8x #forge:plates/stainless_steel', '3x #forge:rods/long/hsla_steel', '2x tfc:lens', - '24x #forge:screws/hsla_steel', 'tfg:certus_mechanism') - .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 1728)) + event.recipes.gtceu.assembler('tfg_tacz:aa_freedom') + .itemInputs('gtceu:titanium_small_fluid_pipe', '7x #forge:ingots/titanium', '4x #forge:plates/stainless_steel', + '2x #forge:rods/long/hsla_steel', '2x tfc:lens', '16x #forge:screws/hsla_steel', + 'tfg:certus_mechanism') + .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 2160)) .itemOutputs(Item.of('tacz:modern_kinetic_gun', - '{GunCurrentAmmoCount:0,GunFireMode:"SEMI",GunId:"applied_armorer:moritz_sniper_semi_k30",HasBulletInBarrel:0b}')) - .circuit(4) + '{GunCurrentAmmoCount:0,GunFireMode:"AUTO",GunId:"applied_armorer:niklas_smg_freedom",HasBulletInBarrel:1b}')) + .circuit(7) .EUt(GTValues.VA[GTValues.EV]) - .duration(220) + .duration(160) event.recipes.gtceu.assembler('tfg_tacz:aa_gl') .itemInputs('gtceu:tungsten_steel_normal_fluid_pipe', '12x #forge:ingots/titanium', '6x #forge:plates/stainless_steel', diff --git a/kubejs/startup_scripts/tacz/constants.js b/kubejs/startup_scripts/tacz/constants.js index 319b52e24..ae2892684 100644 --- a/kubejs/startup_scripts/tacz/constants.js +++ b/kubejs/startup_scripts/tacz/constants.js @@ -134,7 +134,7 @@ global.TACZ_AMMO_INDEX = [ 'tacz:357mag', 'tacz:46x30', 'tacz:57x28', - 'tacz:30x06', + 'tacz:30_06', 'tacz:50ae', 'tacz:45_70', 'tacz:762x25', @@ -346,12 +346,14 @@ global.TACZ_ENABLED_GUNS = [ //Pistol 'ulv_guns:flintlock', 'create_armorer:pistol_revolver_torque', + 'create_armorer:pistol_auto_stress', 'applied_armorer:niklas_pistol_semi_right', 'applied_armorer:niklas_pistol_semi_pride', 'applied_armorer:niklas_pistol_double_win_win', //Sniper 'tacz:springfield1873', + 'tacz:m700', 'create_armorer:sniper_semi_clockwork', 'applied_armorer:moritz_sniper_semi_k30', @@ -367,7 +369,8 @@ global.TACZ_ENABLED_GUNS = [ 'tacz:db_long', //SMG - + 'create_armorer:smg_auto_crank', + 'applied_armorer:niklas_smg_freedom', //Heavy 'create_armorer:mg_platemag_flywheel', @@ -380,6 +383,7 @@ global.TACZ_ENABLED_GUNS = [ global.TACZ_ENABLED_AMMO = [ 'tacz:12g', 'tacz:45_70', + 'tacz:30_06', 'create_armorer:slap', 'create_armorer:rbapb', 'create_armorer:40mmhe', diff --git a/tacz/TACZ_CHANGELOG.md b/tacz/TACZ_CHANGELOG.md new file mode 100644 index 000000000..49e0d5b08 --- /dev/null +++ b/tacz/TACZ_CHANGELOG.md @@ -0,0 +1,133 @@ +# TACZ CHANGELOG +## TFG Version 0.11.9 +## Additions + +### "Clutch" Sniper Rifle +- True MV tier marksman Rifle +- Uses new .30-06 SLAP Ammo +- Stats + - Damage: 32 + - Ammo Capacity: 3 + - Armor Piercing: 50% + - Headshot Multi: 175% + +### "Stress" Semi Pistol +- MV tier Pistol +- Uses Rimmed Blunt Ammo +- Stats + - Damage: 8 + - Ammo Capacity: 26 + - Armor Piercing: 25% + - Headshot Multi: 120% + +### "Crank" SMG +- MV tier SMG +- Uses Rimmed Blunt Ammo +- Stats + - Damage: 8 + - Ammo Capacity: 26 + - Armor Piercing: 25% + - Headshot Multi: 120% + +### Freedom SMG +- EV tier SMG +- Uses Etched Quartz Bullets +- Stats + - Damage: 10 + - Ammo Capacity: 36 + - Armor Piercing: 25% + - Headshot Multi: 150% +## Balance Changes +## Pistols +### "Torque" Revolver +- Tier: MV -> LV +- Damage: 18 -> 12 +- Damage Falloff: + - 0-25: 18 -> 12 + - 25-50: 17 -> 11 + - 50-75: 16 -> 9 + - 75+: 16 -> 7 +- Armor Pierce: 40% -> 25% +- Headshot Multi: 200% -> 150% + +### Pride Pistol +- Armor Pierce: 20% -> 25% + +### Win-Win Pistols +- Damage: 9 -> 10 +- Damage Falloff: + - 0-15: 9 -> 10 + - 15-35: 8 -> 9 + - 35+: 7 -> 8 +- Armor Pierce: 10% -> 25% +- Headshot Multi: 125% -> 150% + +## Snipers + +### Springfield Sniper +- Damage: 35 -> 25 +- Damage Falloff: + - 0-40: 35 -> 25 + - 40-70: 28 -> 21 + - 70-100: 19 -> 17 + - 100+: 16 -> 12 + +### K30 Sniper +- Damage: 45 -> 40 +- Damage Falloff: + - 0-100: 45 -> 40 + - 100-200: 43 -> 35 + - 200+: 38 -> 30 +- Armor Pierce: 50% -> 55% +- Pierce: 3 -> 4 + +## Rifles + +### "Clockwork" Rifle +- Designation: Sniper -> Rifle +- Ammo: Rimmed Blunt -> SLAP +- Ammo Count: + - Base: 8 -> 10 + - Extend 1: 10 -> 13 + - Extend 2: 12 -> 16 + - Extend 3: 14 -> 20 +- Headshot Multi: 200% -> 150% + +### "Crane" Assault Rifle +- Ammo Count: + - Base: 10 -> 20 + - Extend 1: 20 -> 28 + - Extend 2: 30 -> 36 + - Extend 3: 40 -> 44 + +### AR77 Rifle +- Ammo Count: + - Base: 20 -> 25 + - Extend 1: 27 -> 36 + - Extend 2: 34 -> 45 + - Extend 3: 40 -> 52 +- Damage: 13 -> 14 +- Damage Falloff: + - 0-80: 13 -> 14 + - 80-160: 11 -> 12 + - 160+: 9 -> 10 + +## Machine Guns + +### "Flywheel" Machine Gun +- Ammo Count: + - Base: 50 -> 40 + - Extend 1: 65 -> 55 + - Extend 2: 80 -> 80 + - Extend 3: 100 -> 115 +- Fire Rate: 600 -> 650 +- Damage: 13 -> 12 +- Damage Falloff: + - 0-32: 13 -> 12 + - 32-64: 12 -> 11 + - 64+: 10 -> 10 + +## Ammo + +### SLAP Ammo +- Lead Nuggets -> Lead Bolts \ No newline at end of file diff --git a/tacz/ulv_guns.zip b/tacz/ulv_guns.zip index 074c170d96e907e7a2900d34c43cf565c656e97c..c58813fc3e9a61b17f15f0e9fc7bf71e6c3d8e34 100644 GIT binary patch delta 7396 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 delta 13003 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 E0F#akuK)l5