From 44054183462932364d32a81bf5ce2b42cbb8e4be Mon Sep 17 00:00:00 2001 From: Aroliacue <96730930+Aroliacue@users.noreply.github.com> Date: Sun, 24 Dec 2023 07:14:22 +1000 Subject: [PATCH] Xeno Voidsuit Sprite framework, balance adjustments and misc adjustments (#7464) --- code/__defines/sprite_sheets_ch.dm | 16 +++++ .../modules/clothing/spacesuits/spacesuits.dm | 2 +- .../carbon/human/species/species_attack.dm | 4 +- icons/mob/human_races/r_xenomorph_hybrid.dmi | Bin 3510 -> 4283 bytes .../clothing/spacesuits/void/station.dm | 0 .../modules/clothing/spacesuits/void/void.dm | 6 ++ .../human/species/station/station_ch.dm | 60 +++++++++--------- .../inventory/suit/mob_xenomorph_hybrid.dmi | Bin 0 -> 1472 bytes vorestation.dme | 3 + 9 files changed, 58 insertions(+), 33 deletions(-) create mode 100644 code/__defines/sprite_sheets_ch.dm create mode 100644 modular_chomp/code/modules/clothing/spacesuits/void/station.dm create mode 100644 modular_chomp/code/modules/clothing/spacesuits/void/void.dm create mode 100644 modular_chomp/icons/inventory/suit/mob_xenomorph_hybrid.dmi diff --git a/code/__defines/sprite_sheets_ch.dm b/code/__defines/sprite_sheets_ch.dm new file mode 100644 index 0000000000..5dc9d07f55 --- /dev/null +++ b/code/__defines/sprite_sheets_ch.dm @@ -0,0 +1,16 @@ +// Default species get default sprites, VR species get VR sprites, CH species get CH sprites. +#define CH_SPECIES_SPRITE_SHEETS_SUIT_MOB list(\ +SPECIES_HUMAN = 'icons/inventory/suit/mob.dmi',\ +SPECIES_TAJ = 'icons/inventory/suit/mob_tajaran.dmi',\ +SPECIES_SKRELL = 'icons/inventory/suit/mob_skrell.dmi',\ +SPECIES_UNATHI = 'icons/inventory/suit/mob_unathi.dmi',\ +SPECIES_TESHARI = 'icons/inventory/suit/mob_teshari.dmi',\ +SPECIES_XENOHYBRID = 'icons/inventory/suit/mob_unathi.dmi',\ +SPECIES_AKULA = 'icons/inventory/suit/mob_vr_akula.dmi',\ +SPECIES_SERGAL = 'icons/inventory/suit/mob_vr_sergal.dmi',\ +SPECIES_NEVREAN = 'icons/inventory/suit/mob_vr_sergal.dmi',\ +SPECIES_VULPKANIN = 'icons/inventory/suit/mob_vr_vulpkanin.dmi',\ +SPECIES_ZORREN_HIGH = 'icons/inventory/suit/mob_vr_vulpkanin.dmi',\ +SPECIES_FENNEC = 'icons/inventory/suit/mob_vr_vulpkanin.dmi',\ +SPECIES_ALTEVIAN = 'icons/inventory/suit/mob_vr_altevian.dmi',\ +SPECIES_XENOMORPH_HYBRID = 'modular_chomp/icons/inventory/suit/mob_xenomorph_hybrid.dmi') \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/spacesuits.dm b/code/modules/clothing/spacesuits/spacesuits.dm index 4f9f4dfdf3..fd37d819bf 100644 --- a/code/modules/clothing/spacesuits/spacesuits.dm +++ b/code/modules/clothing/spacesuits/spacesuits.dm @@ -77,7 +77,7 @@ item_flags = THICKMATERIAL body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen,/obj/item/device/suit_cooling_unit,/obj/item/weapon/storage/backpack) //CHOMPedit - slowdown = 1.5 + slowdown = 1 // CHOMPedit: 1.5 to 1. More sane movespeed delay. Voidsuits are still faster. armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS diff --git a/code/modules/mob/living/carbon/human/species/species_attack.dm b/code/modules/mob/living/carbon/human/species/species_attack.dm index 5e2aaafb8e..e36fcfe7c8 100644 --- a/code/modules/mob/living/carbon/human/species/species_attack.dm +++ b/code/modules/mob/living/carbon/human/species/species_attack.dm @@ -59,7 +59,7 @@ /datum/unarmed_attack/claws/strong attack_name = "strong claws" attack_verb = list("slashed") - damage = 5 + damage = 10 // CHOMPedit: 5 to 10, makes them actually strong. shredding = 1 /datum/unarmed_attack/claws/strong/xeno @@ -73,7 +73,7 @@ /datum/unarmed_attack/bite/strong attack_name = "strong bite" attack_verb = list("mauled") - damage = 8 + damage = 10 // CHOMPedit: 8 to 10, makes them actually strong. shredding = 1 /datum/unarmed_attack/bite/strong/xeno diff --git a/icons/mob/human_races/r_xenomorph_hybrid.dmi b/icons/mob/human_races/r_xenomorph_hybrid.dmi index e8898c726dcef1a040bd3e7fccba5e82a890cc9c..0b29ea7e28a9d13eb4d2035c00a60cd8962eec7d 100644 GIT binary patch delta 4218 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 REMfov002ovPDHLkV1nrAmJR>_ diff --git a/modular_chomp/code/modules/clothing/spacesuits/void/station.dm b/modular_chomp/code/modules/clothing/spacesuits/void/station.dm new file mode 100644 index 0000000000..e69de29bb2 diff --git a/modular_chomp/code/modules/clothing/spacesuits/void/void.dm b/modular_chomp/code/modules/clothing/spacesuits/void/void.dm new file mode 100644 index 0000000000..ec0423dbab --- /dev/null +++ b/modular_chomp/code/modules/clothing/spacesuits/void/void.dm @@ -0,0 +1,6 @@ +/obj/item/clothing/head/helmet/space/void + species_restricted = list(SPECIES_HUMAN, SPECIES_RAPALA, SPECIES_VASILISSAN, SPECIES_ALRAUNE, SPECIES_PROMETHEAN, SPECIES_XENOCHIMERA, SPECIES_XENOMORPH_HYBRID) + +/obj/item/clothing/suit/space/void + species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_RAPALA, SPECIES_VASILISSAN, SPECIES_ALRAUNE, SPECIES_PROMETHEAN, SPECIES_XENOCHIMERA, SPECIES_XENOMORPH_HYBRID) + sprite_sheets = CH_SPECIES_SPRITE_SHEETS_SUIT_MOB \ No newline at end of file diff --git a/modular_chomp/code/modules/mob/living/carbon/human/species/station/station_ch.dm b/modular_chomp/code/modules/mob/living/carbon/human/species/station/station_ch.dm index e7c1c7d122..e6f693ed16 100644 --- a/modular_chomp/code/modules/mob/living/carbon/human/species/station/station_ch.dm +++ b/modular_chomp/code/modules/mob/living/carbon/human/species/station/station_ch.dm @@ -57,21 +57,21 @@ deform = 'icons/mob/human_races/r_xenomorph_hybrid.dmi' tail = "tail" icobase_tail = 1 - unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) // Innate claws and bite. + unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/strong/xeno, /datum/unarmed_attack/bite/strong/xeno) // Innate claws and bite. darksight = 8 // Same as Tajarans. ambiguous_genders = TRUE slowdown = -0.2 // Slightly faster than average. total_health = 150 // Takes a lot of effort to take a Xenomorph down. - brute_mod = 0.90 // Physical damage doesn't phase them as much. - burn_mod = 1.40 // They do NOT like fire. - toxins_mod = 0.90 // Slightly resistant to toxins. - radiation_mod = 0.7 // Quite resistant to radiation exposure. - flash_mod = 1.1 // Flashes are slightly more effective. + brute_mod = 0.9 // Physical damage doesn't phase them as much. + burn_mod = 1.4 // They do NOT like fire. + toxins_mod = 0.9 // Slightly resistant to toxins. + radiation_mod = 0.9 // Somewhat resistant to radiation exposure. + flash_mod = 1.2 // Flashes are more effective. metabolic_rate = 1.2 // Very physically active species, thus requiring more nutritional intake. - item_slowdown_mod = 0.90 // They carry heavy things slightly better. + item_slowdown_mod = 0.9 // They carry heavy things slightly better. mob_size = MOB_MEDIUM // Technically doesn't even need this but still adding the override just in case. blood_volume = 640 // More blood to compound their high health. - bloodloss_rate = 0.90 // Bleed slightly slower. + bloodloss_rate = 1 // Bleed normally. num_alternate_languages = 3 name_language = LANGUAGE_XENOLINGUA species_language = LANGUAGE_XENOLINGUA @@ -80,7 +80,7 @@ color_mult = 1 health_hud_intensity = 1.5 chem_strength_alcohol = 1.2 // They don't handle their drinks very well. - throwforce_absorb_threshold = 10 // Heavy. + throwforce_absorb_threshold = 10 // Thrown objects don't do as much. economic_modifier = 5 // While they aren't true Xenomorphs, they still draw a lot of social stigma, and are generally mistreated and underpaid as a result. rarity_value = 4 // Very rare to find these guys on human stations. @@ -98,7 +98,7 @@ demeanour and innate xenomorph-inherited abilities are enough to draw widespread ire and distrust." min_age = 18 - max_age = 300 // Big number lol + max_age = 150 move_trail = /obj/effect/decal/cleanable/blood/tracks/claw digi_allowed = TRUE @@ -123,18 +123,18 @@ // Some Xeno parts included. has_organ = list( - O_HEART = /obj/item/organ/internal/heart, - O_LUNGS = /obj/item/organ/internal/lungs, - O_LIVER = /obj/item/organ/internal/liver, - O_BRAIN = /obj/item/organ/internal/brain, - O_EYES = /obj/item/organ/internal/eyes, - O_KIDNEYS = /obj/item/organ/internal/kidneys, - O_APPENDIX = /obj/item/organ/internal/appendix, + O_HEART = /obj/item/organ/internal/heart/grey/colormatch, + O_LUNGS = /obj/item/organ/internal/lungs/grey/colormatch, + O_LIVER = /obj/item/organ/internal/liver/grey/colormatch, + O_BRAIN = /obj/item/organ/internal/brain/grey/colormatch, + O_EYES = /obj/item/organ/internal/eyes/grey/colormatch, + O_KIDNEYS = /obj/item/organ/internal/kidneys/grey/colormatch, O_STOMACH = /obj/item/organ/internal/stomach, O_INTESTINE = /obj/item/organ/internal/intestine, O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel/weak, // Less plasma capacity. O_HIVE = /obj/item/organ/internal/xenos/hivenode, // Lets them speak Hivemind and open resin doors. - O_RESIN = /obj/item/organ/internal/xenos/resinspinner/weak // Weaker weed nodes with less spread range. + O_RESIN = /obj/item/organ/internal/xenos/resinspinner/weak, // Weaker weed nodes with less spread range. + O_EGG = /obj/item/organ/internal/xenos/eggsac // Fluff organ. ) @@ -143,7 +143,7 @@ "Our carapace bristles in the heat." ) - cold_discomfort_level = 263.15 // -10 Celsius, comfortable in below freezing temperatures. + cold_discomfort_level = 253.15 // -20 Celsius, very comfortable in below freezing temperatures. cold_discomfort_strings = list( "The cold bites through our carapace." ) @@ -172,7 +172,15 @@ heal_rate = 0 // No passive health regen without resting. mend_prob = 0 // No passive health regen without resting. - //first heal damages + // First, heal internal organs. + for(var/obj/item/organ/I in H.internal_organs) + if(I.damage > 0) + I.damage = max(I.damage - heal_rate, 0) + if (prob(5)) + to_chat(H, "We feel a soothing sensation within our [I.parent_organ]...") + return 1 + + // Next, heal external damage. if (H.getBruteLoss() || H.getFireLoss() || H.getOxyLoss() || H.getToxLoss()) H.adjustBruteLoss(-heal_rate) H.adjustFireLoss(-heal_rate) @@ -182,15 +190,7 @@ to_chat(H, "A soothing sensation falls over us...") return 1 - //next internal organs - for(var/obj/item/organ/I in H.internal_organs) - if(I.damage > 0) - I.damage = max(I.damage - heal_rate, 0) - if (prob(5)) - to_chat(H, "We feel a soothing sensation within our [I.parent_organ]...") - return 1 - - //next mend broken bones. May remove this if it's abused. + // Lastly, mend broken bones. May remove this if it's abused. for(var/obj/item/organ/external/E in H.bad_external_organs) if (E.status & ORGAN_BROKEN) if (prob(mend_prob)) @@ -280,7 +280,7 @@ // ORGANS // /obj/item/organ/internal/xenos/resinspinner/weak - name = "resin spinner" + name = "hybrid resin spinner" parent_organ = BP_HEAD icon_state = "xenode" organ_tag = O_RESIN diff --git a/modular_chomp/icons/inventory/suit/mob_xenomorph_hybrid.dmi b/modular_chomp/icons/inventory/suit/mob_xenomorph_hybrid.dmi new file mode 100644 index 0000000000000000000000000000000000000000..8b1815d56d727f0f1a0753b961c1d62b9d97980c GIT binary patch literal 1472 zcmV;x1wZC0001oP)t-sz`($s zpq*J;SY%{mZ*OmW78bQ04q^iXxS*XOARw9=44sIEaa;kGdI0yx00DA0ZO`^iopWnu zQ~&@oB_$;QA)}3rjSdbD&8Pq}0RfR13;)+OY!V5EbaEFP9M?D}TUb^R5fKdy4ILdF zBqJk(fq^zQHd0bjOiWB9BqVTcZ5$jNTwGlFCUk!Q0004WQchCV=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6#a*U0* zI5Sc+(=$pSoZ^zil2jm5sVqM;MTv_uC9|j)q=$<$ttc@!70OOY%}J~TGL3YgkV{#? z)z1ZN5db#(9t`=+eIx(?1Zhb`K~#90?OTg-+c*rARf43*%C6IgtDJL9q%^7P{{Q#g z0;H@*tT;1m=k6LH6Dkr&VzDG>&yG?QYHDg~$yVj$wp`8qZzi{I=Ki0KZw!rY$ry=% zc4eONpR9a>_)@@fnsGsvob#2nw(`#5PI~#3{IWk-=OQ`$MCWXvVJ41mfC&94`b&|0 z#LyKIGBR+$?GQUwh+IYd<@k~D(G(_n;lKq;rV11)LpHb}6#=*c1ag=)+R83Rhclv+ z1A`JeXO}tfL>0-e&-q8`6bB9nGtfAHpf>^Vl>0Wd582v70^0AFmM9sf+H%igzI{9KK`a&V~tB9ml(_$_5@%BsNQVq zcZ4-yfMwojD_Jf0DVVCNOrYdHQ6K<$7h&nZz#@Px03bR>r}0Q_L;w-i_G+`ey24tc z8y=M@Pq~WUF^84Q{u2cPaLmB_^8nt@7%0t@00g=E@Zsv?r(Gc_W}NBDjiUen0l{fZ zK?X`e7}x3{?{5=C1C^_zQsS0?kqshP? zz@E$0avkplfJ^1h;jy{ zD3HHVOTLFSW2)PivBzU z=hUg$fp}VWWN;BEZ7(RTEh*Wnx_oM0Q08f4b5zy_9`IY8D9&UuQ8XQ z6_`YbA89c@5WtOwrvm0_85Z)rtK=^?t03ljuY`sHSn|(^O#lO#)h!>=x61%-`9w!U zG9b+2-?eSm6I13|{8{?I&;5VFFL;088G+)GKCt}{=mYxxfa(LP52!w%`he;Kst>$2 aec&IHK<@p(zKk{i0000