After having our first zombie round, I saw some issues and came up with some solutions
-zombies can now devour their victims
-zombie transformation now properly removes people's languages
-trioxin will now revive the dead, allowing for people that were mudered by zombies to return back to life as a zombie
-attacking people already infected with the zombie transformation will send a message to the attacking zombie
Overview
Adds thirst mechanics. Thirst mechanics work exactly like hunger mechanics where if you don't drink enough liquid, you become thirsty and move slower. Several other mechanics involving drinks were also changed.
For organic races, you gain hydration by consuming beverages and water. Water is the most effective way of hydrating yourself. IPCs are not affected by hydration and do not have to worry about it. If you overeat or overdrink, your nutrition decreases faster until you are of normal hunger and thirst levels.
Penalties for not eating or drinking are now more severe. If you refuse to drink or eat all shift, you will be up to 33% slower and take twice as much pain damage. The amount scales based on your hunger or thirst levels. If you are considered hungry or thirsty, it starts scaling until you're starving or seriously dehydrated. If you overeat and overdrink as well, you get a ~5% reduced movement and pain tolerance with each mechanic.
The icons for hunger have been updated to be more specific, and they match the new thirst indicators as well. https://i.imgur.com/QQbWxYI.png
You can now also inject beverages into your blood for x4 effectiveness. Before, IV dripping yourself with vodka did nothing but give you a small amount of toxins, but now it should be a hell of a party.
Dionaea can now be affected by beverages with respect to nutrition gains and temperature changes. Dionaea cannot be affected by some effects, such as stuttering and intoxication, still.
Healing effects for certain beverages (tea, milk) were removed. This a HRP server, milk shouldn't heal you.
Halloween is close, and due to such, we must increase the spookyness.
This pr adds zombies. They spread via the bite, that will infect someone with a chemical, that will create a parasite, if left unchecked, it will turn the victim into a flesh eating undead.
Adjusts the effect of a stun baton strike to the head. Instead of dealing 1.5x agony, it will now blur and disorientate the target.
Removes the arbitrary limitation on most hats that prevented them from actually covering the head. Their status as non-combat items should be represented by other values, as is standard for the rest of the clothing items.
Tweaks the head organ to also include the FACE as a body part applicable to def_zones. This may have some other trickle down effects, but should work normally.
So I was given input by the community that new IPC and borg surge modules are kinda useless. As they only provide 1-3 EMP protections given that ION rifles are 10 shots charge, and that IPC costs 14 TC which is more then half of traitor uplink. And borgs surge cost too much in resources to build. I expected that, so now I think I want to buff it.
IPC surge module now costs 12 TC(as opposed to 14).
comes in with 2-5 EMP protections which is RNG based.
Borg's surge module built cost in gold and silver was reduced by 50% from 10000 G and 15000 S to 5000 G and 7500 S.
Borg's surge module comes in with 2-5 EMP protections which is RNG based
Also I made surge's nanopaste to look fancier 💯
Adds cyborg heavy surge prevention module as an upgrade by robotics. It is expensive to make, requires a bit high tech, and can protect cyborg for 1-3 EMP pulses which is purely random when module is installed.
Adds IPC surge prevention module via antag uplink. The module comes in the form of modified red nanopaste that only interacts with IPCs. Like cyborg module it gives EMP protection for 1-3 pulses which is purely random by nanopaste. Can be used only once per paste. Cost for it is 14 telecrystals(idk if need to bump it higher, idea is that you can't buy two of them as traitor).
adds sprite for new nanopaste with surge module.
Cleans up some code in files I worked on.
Fixes bug where destroyed cyborg components would vanish. Fixes#5000
Implements various changes at the behest of lore-dev BygoneHero, namely:
Vaurca can now wear specially modified softsuits.
Vaurca now have their own special rigsuit a la the breacher: the combat exoskeleton. It comes with various special modules, including a boring laser that allows them to dig below themselves rapidly, a vaurca variant of the combat injector which includes phoron and k'ois paste, and a neural lattice which reduces halloss by sharing it with everyone else wearing a neural lattice.
Vaurca also have received various other currently unavailable event items, including a variant of the tactical mask that filters out nitrogen and allows the Vaurca wearing it to eat, tachyon rifles and carbines which penetrate up to three layers of walls and possess other fringe benefits, the gauss rifle which is a semi-automatic variant of the crossbow with greater power and a 6 rod magazine, the energy zweihander, commando armor and scout armor.
Introduces a general climbing mechanic. Climbing can be initiated by clicking on a wall or an open turf, and it is a percentage chance that is modified by the amount of stable/large items beneath you, and decreased by the amount of unstable/small items. Vaurca are naturally proficient and always succeed at climbing.
Changes Vaurca to see in blue-green vision. Their vision is generally brighter and reddish colors are converted to a blue-green color.
Adds the Sedantis flag, an interhive flag that celebrates the universal longing for Sedantis and is a symbol of the Vaurca diaspora.
The less controversial tweaks
Tweaked the metabolism rate of mental medication to reflect their intended values. Reduced the dosage threshold to suppress traumas to reflect their intended values.
Syringe (drugs) now contains truth serum.
Cardox is now slightly poisonous, and can directly remove phoron from blood when consumed. Cardox can now remove phoron in the air when applied to turfs.
A secure box of loyalty implants, hextrasenil pills, and cardox grenades are now located in the vault.
The vault now contains some misc emergency gear that a head of staff can access in case of a dire situation. Current gear are loyalty implants, expensive cardox grenades, and Hextrasenil pills.
This prs removes the old method of ipc resurrection, which was just removing and placing the mmi/heart back into the body, which was really lazy and caused a lot of bugs.
Now, robotics can create a ipcs frames using the different brands in the robotics frabricator, based on the torso's brand. The law manager can disable by using a multitool on the head which is the diffence between creating a cyborg or an ipc. Also; it allows you to customize your snowflakness after your new body is created.
Changes: you can't print all torso types from robotics anymore, but there are torsos that come with their own brand, that you should be able to buy from cargo, that will allow someone to create another type of ipc.
Feedback Topic: https://forums.aurorastation.org/viewtopic.php?f=18&t=10705
Overview
With the new implementation of Brain Trauma, I find it would be best for the antidepressants to include some relation to it. Obviously, Lord Fowl was away ahead of me and implemented them in the update already, but not the way that I would like it to be implemented.
Antidepressants
Currently, taking antidepressants suppress brain trauma conditions, however the suppression of brain trauma is not relative to the strength and dosage of the medication much like actual antidepressants. This proof-of-concept update now introduces a framework that factors in the dosage of the medication when it comes to applying or removing brain trauma effects, as well as adds harsher penalties for missing dosages which are relative to your regular dose.
Additional antidepressants are added to the update. Antidepressants are no longer a "one pill cures all" but many pills that cures 1-4 things. There are also two additional medications that act as some sort of loyalty pill, and a pill that acts as a disloyalty pill. The messages for the disloyalty pill only express rebellious nature, and isn't meant as a pill that gives an excuse to antagonize.
The following brain traumas are no longer cured by pills:
Dumbness
Gerstmann Syndrome
Cerebral Near-Blindness
Mutism
Cerebral Blindness
Paralysis
Narcolepsy
Discoordination
Aphasia
Smoking Cigarettes and Cigars
All cigarettes and cigars have a tobacco and nicotine reagent. These reagents slowly deals minor organ damage to certain organs while acting as a very mild painkiller, antidepressant, and stimulant. Like before, cigarettes can be injected with additional medicine, however the medicine is applied over time while you're smoking it, instead of all at once. Custom cigarettes can be made in the biogenerator, our found elsewhere, and can hold up to 15 units of reagents.
Breathing
Breathing emotes are played every second. Before, being in a smoke cloud would force you to "eat" the smoke. This update fixes it so that the smoke is breathed in instead. Currently, there isn't really any change, but it adds potential for new reagent effects such as inhalers or gassing people properly. If you have a mask with internals on, you're immune to the effects.
Additional Changes
Most reagents had no effect if they had less than 0.01 metabolism. This update fixes that so that most reagents can metabolize at less than 0.01. Painkillers and other special reagents still have a similar cap.
Discussion thread: https://forums.aurorastation.org/viewtopic.php?f=18&t=10261
Refactors electrocute_act slightly. Electricity will now only start in your hands if ground_zero is explicitly set to l_hand or r_hand. All instances where electrocute_act is called because you touched something (IE opening a crate, touching the powergrid) have been set so that ground_zero is your currently active hand.
Otherwise, ground_zero will be randomly selected from available organs.
This is important because it is the siemens_coefficient of ground_zero only that affects electrical conductivity. EG if you get tesla_zapped in the chest you will not be saved by wearing insulated gloves. Once the electricity is in your body it does not matter.
Sufficiently powerful electricity (shock_damage >= 6) will induce an EMP in the relevant contact zones. This EMP will affect all items in the relevant organ only. Shock damage will still become reduced as the arc propagates through your body, and the EMP's produced will be updated accordingly.
The IPC power cell organ will now produce effects when EMP'd based on the current damage value of the organ pre-decrement, ranging from stuttering and blurriness to unconsciousness. Other special EMP effects for other IPC organs are pending, but I am thinking of holding it off for Part 2/1,034
Baton class weapons have been modified. Their raw force damage has been reduced, but they will now deal shock damage to a roughly equivalent value.
Harmbatons will deal 5 brute and 10 shock, and their electrocute_act will have a defined def zone (e.g it is a localized shock and there will be no arcs)
Cattleprods will deal 3 brute and 6 shock on both harm and help intents, and their electrocute_act is non-localized and will cause arcing.
Stunrods will deal 7 brute and 14 shock on both harm and help intents, and their electrocute_act is non-localized and will cause arcing.
(For clarification, cattleprods and stunrods currently still deal no brute on help intent, but will cause shock damage)
Fixes an issue with electrocute_act where if def_zone is called would not actually do anything.
changes:
- Sleeps in ex_act() should no longer stall explosions (this could sometimes be significant).
- ZAS should no longer runtime when CSRFZ checks a non-simulated turf.
- throw_at() sleeps should no longer delay droplimb() calls.
Added several new preservatives and flavorings in vending machine junkfood. As a result, junkfood is now more filling
Tweaked pain messages.
Penalties for Organ damage now start at >=1 instead of >0.
Added Adipemcina, a fictional heart medication that specially reduces heart damage.
By the request of BygoneHero with some prodding on my part, the gestation periods for both K'ois Mycosis and Black K'ois Mycosis have been severely reduced. K'ois Mycosis will now take 7 and a half minutes to reach maturity, and Black K'ois Mycosis will take 10 minutes to reach maturity. Previously it was 30 minutes and 20 minutes respectively. I believe that these new values are more appropriate, plus it means people won't die before they reach the final stage, for better or for worse.
Implements Black K'ois
Implements K'ois Mycosis
Implements Black K'ois Mycosis
Buffs K'ois' healing properties for Vaurca
Vaurca can now control where they bite
* Repaths eyes, observers, dview, and new_players to /mob/abstract subtypes.
* Adds /mob/abstract, a base type for 'abstract' mobs that aren't meant to be directly affected by the game world.
This PR adds 2 subtypes of industrial and two subtypes of baseline, one for each cybernetics manufacturer. Sprites by BRAINOS.
other changes:
IPCs can now be flashed or flashbanged.
Admin spawn paths have been added for subspecies that did not have them.
IPCs are no longer slowed by being cold.
Adds 19 new hair styles and 3 new facial hair styles, splits human_face.dmi into several DMIs, and support for hair/sprite_accessories that use blending modes other than ICON_ADD.
Changes: Industrial IPC burn modifier changed to 1.1. Baseline IPC burn modifier changed to 1.2. Industrial IPCs should tank more damage, baselines should tank less due to their more agile frame, though brute is still only moderately effective against baselines. They aren't brittle but aren't tanky like industrials. This also makes baselines take a fair bit more damage from remaining in a vacuum, which they took very little before. Industrials were applied this in a bit of an unfair way, however, given they are walking heat sinks and should be treated as such. Both will still get roasted by lasers, the baseline moreso than the industrial.
This pr makes xenomorphs less awful via some additions and porting some fixes:
-removes the NO_MINOR_CUT that is not used anywhere and replace with NO_EMBED that stops things from embedding into mobs, like xenomorphs, shadow people and golems
-adds the night vision verbs to xenomorphs
-fixes aliens eggs layers behind under their weeds
-fixes some hud things missing
-makes their limbs unbreakable
This should make them a bit less buggy.
Mostly synthetic code cleanup, some tweaks to human examine and ID cards too.
changes:
Synthetic sprint procs have been compressed down to one proc for all machine subspecies vs. one per subspecies.
Synthetic sprint now only stuns synthetics with empty cells for 30 seconds for all types.
Refactored synthetic limb roboticization.
Changed how a lot of synthetic/industrial checks work.
ID portraits are now 128x128, and scaled without blurring.
Species can now specify an examine text color (for their species name) that differs from their flesh color.
Fixed some eye checks not respecting species.vision_organ.
Examine pulse-checking now uses do_mob & has a progress bar.
Adds sounds for opening lockers, going down ladders, turning on your internals, removing and placing extinguishers in the cabinet, sounds for bone breaking and sound to the bsa.
changes:
Reworked how human body icon keys are generated; resulting keys should be much shorter now and involve less duplication of the same string.
Players are now shown a message when they try to add markings to a species that has none available.
Admin revive for human-types will now also re-apply their organ and marking prefs.
Admin revive now also resets shock_stage (fixes rejuv'd mobs being slow for a while)
changes:
Organs now use Initialize().
The observe message now shows the configured respawn delay instead of always 30 minutes.
Seed datums no longer have a timer in New().
External organs no longer have a timer in New()/Initialize()
Converted some spawns in organs to timers.
Floor init no longer breaks to plating first for mapped in tiles.
Added the INITIALIZE_IMMEDIATE macro to make Initialize() not wait for SSatoms init.
Mannequins now use INITIALIZE_IMMEDIATE instead of a custom-defined New().
Mannequins (from get_mannequin) now delete themselves if unused for 5 minutes or longer.
Mostly efficiency changes to human icons, little bit of code deduplication in head icons.
The human overlay list has been changed to accept /list so that multiple items can be added to a layer without having to resort to adding overlays to an intermediary object like an /image.
changes:
Human skin color (not tone) is now stored as a hex string instead of a 3-value list.
Human body hair color (resomi only) is now stored as a hex string instead of a 3-value list.
Body markings now play nice with the human icon cache (Fixes#3110)
Hair properly uses its cache now in all cases.
Merged head organs and human icon's implementations of hair icon gen into a proc on human.
Replaced the individual hair and beard caches with a shared composited hair cache used by both head icon and mob icons.
Lists in the human overlay list are now flattened out onto the human, allowing for multiple objects within a single human icon layer without using an intermediary image.
Removed some unused caching lists.
Damage overlays no longer utilize overlays on a blank image for drawing, instead using a list in the human overlay list.
Shoe overlays no longer utilize overlays on the shoe image, instead using a list in the human overlay list.
Surgery overlays no longer utilize overlays on a blank image, instead using a list in the human overlay list.
changes:
Human-type hair (facial & head), eyes, and lips are now cached in SSicon_cache.
Underwear, undershirts, and socks are now cached in SSicon_cache.
Removed forced icon regen for update_body - if this actually did anything, the cache key for these icons needs to be made more detailed.
Organs now fully use SSoverlays to apply overlays (previously they partially used it, which may have caused bugs).
A couple of hair styles (bald, shaved) are pretty common, so this should remove/reduce the overhead of constantly regenerating their icons. Also means that BST's icons only really need to be generated once.
changes:
Body marking icons are now cached in SSicon_cache.
Renamed the body-hair cache (used only by Resomi) to make it more clear what it is.
Humans now use SSoverlay for applying overlays, though they force-compile instead of waiting for it to tick.
Fixed a bug where getFlatIcon() did not work properly with SSoverlay overlays.
Fix the most common RTs from Sunday's testing.
Also works on orebags. Limits their capacity to 200, as anything higher than that breaks the fancy inventory system something awful. Maybe I should write a UT to test and confirm this. Expanding: I don't think TICK_CHECK in inventory procs is a good idea, without fully implementing a non-fancy storage subclass. Non-fancy would just be speedy without all of the fancy inventory orientation bullshit. But CBA to do that now and I'm not sure if it's worth it for the edgecase of drone satchels atm.
-removes the brute reduction from the regular baseline, because robotic limbs already have those
-reduces the industrial brute resist from 0.5 to 0.8, because again robotics limbs already have some
-fixes industrial and shells head not being tagged as vital and makes their max damage be equal as other external organs