Skip to content

Commit

Permalink
S.P.E.C.I.A.L "S" and "P" Adjustments + 7.62 Ammo - Fixes Desert Rang…
Browse files Browse the repository at this point in the history
…er Armor (#215)

Co-authored-by: xTrainx <[email protected]>
  • Loading branch information
Aurrain and xTrainx authored Sep 19, 2024
1 parent 400e133 commit 4e8da82
Show file tree
Hide file tree
Showing 11 changed files with 77 additions and 24 deletions.
5 changes: 4 additions & 1 deletion code/__DEFINES/combat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -601,16 +601,19 @@ GLOBAL_LIST_INIT(main_body_parts, list(
#define BULLET_DAMAGE_RIFLE_308 35
#define BULLET_DAMAGE_RIFLE_308_HANDLOAD (BULLET_DAMAGE_RIFLE_308 * BULLET_HANDLOAD_MULT_DAMAGE)
#define BULLET_DAMAGE_RIFLE_308_MATCH (BULLET_DAMAGE_RIFLE_308 * BULLET_MATCH_MULT_DAMAGE)
#define BULLET_DAMAGE_RIFLE_308_SOVIET 38
#define BULLET_STAMINA_RIFLE_308 (BULLET_DAMAGE_RIFLE_308 * 0.5)
#define BULLET_RECOIL_RIFLE_308 8
#define BULLET_RECOIL_RIFLE_308_HANDLOAD (BULLET_RECOIL_RIFLE_308 * BULLET_HANDLOAD_MULT_RECOIL)
#define BULLET_RECOIL_RIFLE_308_MATCH (BULLET_RECOIL_RIFLE_308 * BULLET_MATCH_MULT_RECOIL)
#define BULLET_RECOIL_RIFLE_308_SOVIET 12
#define BULLET_SPEED_RIFLE_308 (BULLET_SPEED_BASE * 2)
#define BULLET_SPEED_RIFLE_308_HANDLOAD (BULLET_SPEED_RIFLE_308 * BULLET_HANDLOAD_MULT_SPEED)
#define BULLET_SPEED_RIFLE_308_MATCH (BULLET_SPEED_RIFLE_308 * BULLET_MATCH_MULT_SPEED)
#define BULLET_WOUND_RIFLE_308 20
#define BULLET_WOUND_RIFLE_308_HANDLOAD (BULLET_WOUND_RIFLE_308 * BULLET_HANDLOAD_MULT_WOUND)
#define BULLET_WOUND_RIFLE_308_MATCH (BULLET_WOUND_RIFLE_308 * BULLET_MATCH_MULT_WOUND)
#define BULLET_WOUND_RIFLE_308_SOVIET 25
#define BULLET_WOUND_RIFLE_308_NAKED_MULT 1
#define RUBBERY_DAMAGE_RIFLE_308 (BULLET_DAMAGE_RIFLE_308 * RUBBERY_DAMAGE_MULT)
#define RUBBERY_STAMINA_RIFLE_308 (BULLET_DAMAGE_RIFLE_308 * 1)
Expand Down Expand Up @@ -997,7 +1000,7 @@ GLOBAL_LIST_INIT(main_body_parts, list(
#define GUN_FULL_OTHER_HAND_RECOIL_MOD 2

// Global recoil modifier
#define GUN_RECOIL_GLOBAL_MULT 1
#define GUN_RECOIL_GLOBAL_MULT 0.9

/// Gun recoil modifier per shot defines
#define GUN_RECOIL_NONE (GUN_RECOIL_GLOBAL_MULT * 0.1)
Expand Down
1 change: 1 addition & 0 deletions code/game/objects/effects/spawners/f13lootdrop.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1624,6 +1624,7 @@
/obj/item/ammo_box/c4570,
/obj/item/ammo_box/tube/c4570,
/obj/item/ammo_box/a50MG,
/obj/item/ammo_box/a308box/soviet,
/obj/item/ammo_box/magazine/m308/ext,
/obj/item/stock_parts/cell/ammo/mfc,
/obj/item/ammo_casing/caseless/rocket,
Expand Down
2 changes: 2 additions & 0 deletions code/modules/clothing/custom/custom_clothing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

// WHISKEY //

/*
/obj/item/clothing/suit/armor/medium/combat/desert_ranger
name = "weathered ranger combat armor"
desc = "An original suit of pre-war combat armor used by elite military units, passed down through generations to where it is today. Though it's not lined with kevlar, this suit's still lightweight and easy to move around in."
Expand All @@ -15,6 +16,7 @@
/obj/item/clothing/suit/armor/medium/combat/desert_ranger/Initialize()
. = ..()
AddComponent(/datum/component/armor_plate)
*/

/* New system version replace when switch
/obj/item/clothing/suit/armor/light/whiskey_desert
Expand Down
4 changes: 4 additions & 0 deletions code/modules/clothing/suits/arfsuits_unused.dm
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,10 @@ Suits. 0-10 in its primary value, slowdown 0, various utility
icon_state = "legion-explorercustom"
item_state = "legion-explorercustom"

//////////////
// NCR //
//////////////

/obj/item/clothing/suit/armor/ncrarmor
name = "NCR patrol vest"
desc = "A standard issue NCR Infantry vest."
Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/special_stats.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,15 +55,15 @@ proc/get_top_level_mob(mob/S)
/// STRENGTH

/obj/item/proc/calc_melee_dam_mod_from_special(mob/living/user)
return ((user.special_s - SPECIAL_DEFAULT_ATTR_VALUE) * 1.5)
return ((user.special_s - SPECIAL_DEFAULT_ATTR_VALUE) * 1.1)

/datum/species/proc/calc_unarmed_dam_mod_from_special(mob/living/user)
return ((user.special_s - SPECIAL_DEFAULT_ATTR_VALUE) * 1.5)
return ((user.special_s - SPECIAL_DEFAULT_ATTR_VALUE) * 1.1)

/// PERCEPTION

/obj/item/ammo_casing/proc/calc_bullet_spread_mod_from_special(mob/living/user)
return ((user.special_p - SPECIAL_DEFAULT_ATTR_VALUE) * 5) // +/- 5 degrees of innate spread per lvl
return ((user.special_p - SPECIAL_DEFAULT_ATTR_VALUE) * 2) // +/- 5 degrees of innate spread per lvl

/// ENDURANCE

Expand Down
15 changes: 7 additions & 8 deletions code/modules/projectiles/ammunition/ballistic/rifle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,25 +22,24 @@
/datum/material/iron = (MATS_RIFLE_MEDIUM_CASING * MATS_AMMO_CASING_HANDLOAD_MULT) + (MATS_RIFLE_MEDIUM_BULLET * MATS_AMMO_BULLET_HANDLOAD_MULT),
/datum/material/blackpowder = MATS_RIFLE_MEDIUM_POWDER * MATS_AMMO_POWDER_HANDLOAD_MULT)
fire_power = CASING_POWER_MEDIUM_RIFLE * CASING_POWER_MOD_HANDLOAD
/*
/obj/item/ammo_casing/a762/sport
name = ".308 bullet casing"
desc = "A .308 sporting bullet casing."
projectile_type = /obj/item/projectile/bullet/a762/sport

/obj/item/ammo_casing/a308/soviet
name = "7.62 steel tip bullet casing"
desc = "A 7.62 imported bullet casing, compatible with .308 weapons."
projectile_type = /obj/item/projectile/bullet/a308/soviet
material_class = BULLET_IS_MEDIUM_RIFLE
casing_quality = BULLET_IS_SURPLUS
custom_materials = list(
/datum/material/iron = MATS_RIFLE_MEDIUM_CASING + MATS_RIFLE_MEDIUM_BULLET,
/datum/material/blackpowder = MATS_RIFLE_MEDIUM_POWDER)
fire_power = CASING_POWER_MEDIUM_RIFLE * CASING_POWER_MOD_SURPLUS
*/
sound_properties = CSP_RIFLE_MEDIUM
/*
/obj/item/ammo_casing/a308/microshrapnel
name = ".308 microshrapnel bullet casing"
desc = "Like shrapnel, but smaller, and thus more annoying."
projectile_type = /obj/item/projectile/bullet/a308/microshrapnel
fire_power = CASING_POWER_MEDIUM_RIFLE * CASING_POWER_MOD_MATCH
/*
/obj/item/ammo_casing/a762/uraniumtipped
name = "7.62 uranium tipped bullet casing"
desc = "Not depleted uranium. Regular uranium."
Expand Down
16 changes: 11 additions & 5 deletions code/modules/projectiles/boxes_magazines/ammo_boxes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -457,6 +457,15 @@
max_ammo = 20
multiple_sprites = 3

/obj/item/ammo_box/a308box/soviet
name = "ammo box (7.62 steel tip)"
icon = 'icons/fallout/objects/guns/ammo.dmi'
icon_state = "762box"
multiple_sprites = 2
caliber = list(CALIBER_308)
ammo_type = /obj/item/ammo_casing/a308/soviet
max_ammo = 20

//7.62x51, .30-06
/obj/item/ammo_box/a3006box
name = "ammo box (.30-06)"
Expand All @@ -475,7 +484,6 @@
icon_state = "improvshotbag"
max_ammo = 15
multiple_sprites = 3

/*
/obj/item/ammo_box/a762box
name = "ammo box (7.62x51 FMJ Match)"
Expand All @@ -487,8 +495,7 @@
max_ammo = 20
w_class = WEIGHT_CLASS_SMALL
custom_materials = list(/datum/material/iron = MATS_RIFLE_MEDIUM_BOX)
*/
/*
/obj/item/ammo_box/a762box/uraniumtipped
name = "ammo box (7.62x51 uranium tipped)"
ammo_type = /obj/item/ammo_casing/a762/uraniumtipped
Expand All @@ -502,7 +509,6 @@
/obj/item/ammo_box/a762box/uraniumtipped/Destroy()
STOP_PROCESSING(SSradiation,src)
..()
*/
/obj/item/ammo_box/a308box/microshrapnel
name = "ammo box (.308 microshrapnel)"
Expand All @@ -515,7 +521,7 @@
icon_state = "762box"
multiple_sprites = 2
ammo_type = /obj/item/ammo_casing/a308/rubber

*/

//.50 MG and 14mm
/obj/item/ammo_box/a50MGbox
Expand Down
20 changes: 20 additions & 0 deletions code/modules/projectiles/projectile/bullets/rifle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -582,6 +582,26 @@
pixels_per_second = BULLET_SPEED_RIFLE_308_HANDLOAD
damage_falloff = BULLET_FALLOFF_DEFAULT_PISTOL_LIGHT

/* 7.62mm proper
* MORE RECOIL
* MORE DAMAGE
* MORE COST
*/
/obj/item/projectile/bullet/a308/soviet
name = "7.62 steel tip bullet"
damage = BULLET_DAMAGE_RIFLE_308_SOVIET
armour_penetration = 0.3
stamina = BULLET_STAMINA_RIFLE_308
spread = BULLET_SPREAD_SURPLUS
recoil = BULLET_RECOIL_RIFLE_308_SOVIET

wound_bonus = BULLET_WOUND_RIFLE_308_SOVIET
bare_wound_bonus = BULLET_WOUND_RIFLE_308_NAKED_MULT
wound_falloff_tile = BULLET_WOUND_FALLOFF_PISTOL_LIGHT

pixels_per_second = BULLET_SPEED_RIFLE_308
damage_falloff = BULLET_FALLOFF_DEFAULT_PISTOL_LIGHT

/* 7.62mm rubber
* DAMAGE: 4.5
* STAMIN: 135
Expand Down
22 changes: 18 additions & 4 deletions code/modules/research/designs/ammolathe_designs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -534,14 +534,14 @@
category = list("initial", "Intermediate Magazines")

/datum/design/ammolathe/m762
name = "empty rifle magazine (7.62x51)"
name = "empty rifle magazine (.308)"
id = "m762"
materials = list(/datum/material/iron = 6000)
build_path = /obj/item/ammo_box/magazine/m308/empty
category = list("initial", "Intermediate Magazines")

/datum/design/ammolathe/w308
name = "empty sniper rifle magazine (7.62x51)"
name = "empty sniper rifle magazine (.308)"
id = "w308"
materials = list(/datum/material/iron = 6000)
build_path = /obj/item/ammo_box/magazine/w3006/empty
Expand Down Expand Up @@ -689,7 +689,7 @@
category = list("initial", "Advanced Magazines")

/datum/design/ammolathe/m762ext
name = "empty extended rifle magazine (7.62x51)"
name = "empty extended rifle magazine (.308)"
id = "m762ext"
materials = list(/datum/material/iron = 6000)
build_path = /obj/item/ammo_box/magazine/m308/ext/empty
Expand Down Expand Up @@ -746,13 +746,27 @@
category = list("initial", "Advanced Ammo")
autocalc_material_values = FALSE

/datum/design/ammolathe/a308/soviet
name = "7.62 steel tip ammo box"
id = "a308soviet"
materials = list(/datum/material/iron = 16000, /datum/material/blackpowder = 2500)
build_path = /obj/item/ammo_box/a308box/soviet
category = list("initial", "Advanced Ammo")
/*
/datum/design/ammolathe/a762
name = "7.62 ammo box"
id = "a762"
materials = list(/datum/material/iron = 16000, /datum/material/blackpowder = 2500)
build_path = /obj/item/ammo_box/a762box
category = list("initial", "Advanced Ammo")
/datum/design/ammolathe/m473fmj
name = "4.73mm caseless ammo box"
id = "m473fmj"
materials = list(/datum/material/iron = 20000, /datum/material/blackpowder = 2000)
build_path = /obj/item/ammo_box/m473
category = list("initial", "Advanced Ammo")
/*
/datum/design/ammolathe/m473rubber
name = "4.73mm caseless rubber ammo box"
id = "m473rubber"
Expand Down
4 changes: 4 additions & 0 deletions config/ooc_filter.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
###############################################################################################
# Words that will block OOC chat messages from sending. #
# Case is not important. Commented-out examples are listed below, just remove the "#". #
###############################################################################################
6 changes: 3 additions & 3 deletions hailmary.dme
Original file line number Diff line number Diff line change
Expand Up @@ -1470,9 +1470,9 @@
#include "code\modules\admin\holder2.dm"
#include "code\modules\admin\ipintel.dm"
#include "code\modules\admin\IsBanned.dm"
#include "code\modules\admin\outfits.dm"
#include "code\modules\admin\multikey_bypass.dm"
#include "code\modules\admin\NewBan.dm"
#include "code\modules\admin\outfits.dm"
#include "code\modules\admin\permissionedit.dm"
#include "code\modules\admin\player_panel.dm"
#include "code\modules\admin\secrets.dm"
Expand Down Expand Up @@ -2366,16 +2366,16 @@
#include "code\modules\jobs\jobs.dm"
#include "code\modules\jobs\loadout_ingame.dm"
#include "code\modules\jobs\job_types\_job.dm"
#include "code\modules\jobs\job_types\atlantic_cross.dm"
#include "code\modules\jobs\job_types\bos.dm"
#include "code\modules\jobs\job_types\eastwood.dm"
#include "code\modules\jobs\job_types\enclave.dm"
#include "code\modules\jobs\job_types\followers.dm"
#include "code\modules\jobs\job_types\hells_nomads.dm"
#include "code\modules\jobs\job_types\legion.dm"
#include "code\modules\jobs\job_types\locust_point.dm"
#include "code\modules\jobs\job_types\mutants.dm"
#include "code\modules\jobs\job_types\ncr.dm"
#include "code\modules\jobs\job_types\atlantic_cross.dm"
#include "code\modules\jobs\job_types\locust_point.dm"
#include "code\modules\jobs\job_types\silicon.dm"
#include "code\modules\jobs\job_types\tribals.dm"
#include "code\modules\jobs\job_types\vault.dm"
Expand Down

0 comments on commit 4e8da82

Please sign in to comment.