From a0ca0271c16b3e3febe9ac095bede05f69f758d9 Mon Sep 17 00:00:00 2001 From: Steelpoint <6595389+Steelpoint@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:07:24 +0800 Subject: [PATCH] Buff Marine Armour During HvH (#6937) # About the pull request If the Faction Clash HvH game mode is enabled, this PR will buff all Marine armours to have significantly higher bullet, bomb and/or internal_damage (internal_damage reduces the chance of internal injuries like fractures) armour values. Some values are reduced in a few cases but buffed in others however. The explicit changes are as follows: **Medium** (Includes Smartgunner, B12, IO) - Bullet: 30 (from 20) - Bomb: 20 (from 15) - Internal: 30 (from 20) **Light** - Bullet: 20 (from 15) - Bomb: 15 (from 20) - Internal: 25 (from 10) **Heavy** - Bullet: 35 (from 35) - Bomb: 35 (from 35) - Internal: 30 (from 25) **MP** (Includes CO, XO, SO armours) - Bullet: 30 (from 20) - Bomb: 25 (from 20) - Internal: 30 (from 15) Synthetic armour is unchanged in both game modes. Spec armours also get buffs similar to Medium armour, B18 gets a slight boost over normal. I have decided against effecting similar changes to Helmets, Gloves and Boots at this time. # Explain why it's good for the game HvH is extremely lethal, especially so for Marines as their armour is not well suited to shrugging off bullets and bombs. Whilst this change does not significantly reduce the overall time to kill of Marines in combat, it does significantly reduce the occurrence rate of a marine suffering excessive fractures and internal bleeding from being gunned down. From testing, you should see less cases of a marine suffering three to fix fractures, and more cases of a marine suffering zero to two fractures when gunned down from full health with standard ammunition. Death remains punishing, but it will be far less oppressive once you are revived. # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: balance: If the 'Faction Clash' human versus human game mode is enabled, all marine armours will have their defensive values significantly buffed to make marine armour far more valuable and effective in resisting permanent damage. The average Marine should experience less fractures and other permanent wounds from gunfire. /:cl: --------- Co-authored-by: Steelpoint --- code/__DEFINES/mode.dm | 2 +- code/datums/decorators/gamemode_decorator.dm | 76 ++++++++++++++++++++ 2 files changed, 77 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm index 368553468af0..04c7993bd9f2 100644 --- a/code/__DEFINES/mode.dm +++ b/code/__DEFINES/mode.dm @@ -57,7 +57,7 @@ #define MODE_BASIC_RT (1<<11) #define MODE_RANDOM_HIVE (1<<12)// Makes Join-as-Xeno choose a hive to join as burrowed larva at random rather than at user's input.. #define MODE_THUNDERSTORM (1<<13)// Enables thunderstorm effects on maps that are compatible with it. (Lit exterior tiles, rain effects) -#define MODE_FACTION_CLASH (1<<14)// Disables scopes, sniper sentries, OBs, shooting corpses, dragging enemy corpses, stripping enemy corpses +#define MODE_FACTION_CLASH (1<<14)// Disables scopes, sniper sentries, OBs, shooting corpses, dragging enemy corpses, stripping enemy corpses, increase armor bullet/bomb/internal damage protection // Gamemode Toggleable Flags #define MODE_NO_SNIPER_SENTRY (1<<0) /// Upgrade kits will no longer allow you to select long-range upgrades diff --git a/code/datums/decorators/gamemode_decorator.dm b/code/datums/decorators/gamemode_decorator.dm index bc89d7a20632..0684735e7205 100644 --- a/code/datums/decorators/gamemode_decorator.dm +++ b/code/datums/decorators/gamemode_decorator.dm @@ -44,3 +44,79 @@ /datum/decorator/gamemode/decorate(atom/object) for(var/edit in edits) object.vars[edit] = edits[edit] + +//*********************** Human Versus Human ***********************// +//************ USCM Armour Values ************// + +//**** Medium Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/medium, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUM), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Light Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/light, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_MEDIUM), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUMLOW), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_MEDIUMHIGH) +)) + +//**** Heavy Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/heavy, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Smartgunner ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/smartgunner, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Military Police and Command ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/MP, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUMHIGH), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** B18 Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/specialist, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGHPLUS), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGHPLUS) +)) + +//**** Grenadier Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/M3G, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** RPG Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/M3T, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Scout Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/M3S, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUM), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Sniper Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/ghillie, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUM), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//**** Pyro Spec Armor ****// +GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/M35, /datum/game_mode/extended/faction_clash, list( + ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH), + ARMOR_EDIT(armor_bomb, CLOTHING_ARMOR_MEDIUM), + ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH) +)) + +//*********************** ------------------ ***********************//