This allows certain alien species (Currently Vaurcae, IPCs and Dionae)
to sleep while standing, and gives them a verb to let them choose to
sleep indefinitely.
It also adds custom messages for enter sleep and examining, as well as
changing the snoring emote for the above aliens too.
---------
Signed-off-by: Sparky. <ben.polwart@gmail.com>
Co-authored-by: Llywelwyn <82828093+Llywelwyn@users.noreply.github.com>
This PR creates a new subtype of meat, "moghresian meat", specific to
animals which are located in Uueoa-Esa.
It also adds "synthetic" blood to the biogenerator, for use in the many
recipes which require blood (I did this because it's actually impossible
to get blood from cows, chickens, etc - turns out you can't draw blood
frim simplemobs, and people have been either using their own blood, or
making monkey cubes and drawing blood from them, which is WEIRD.
Mechanically the "synthetic" blood is just generic blood. I have no idea
if vampires can abuse this, but it should be no different from them
making monkey cubes in the biogenerator and eating them, so... hopefully
that's ok?)
~I have also done a once-over on the reagent values of all the food in
the Unathi foods dm, and fixed the reagent value for them. Some foods
had far fewer reagents than their constituent ingredients, which
bothered me. I also fixed their flavours so you get nicer messages
instead of "some sort of protein"
I noticed that this food reagent issue is actually prevalent in ALL the
food .DMs. A good example of this is Black Eye Gumbo, which has no
reagents listed. It can be eaten in a single bite and tastes like
nothing, and cannot be ground. I think that some people have added foods
under the impression that the reagents of the ingredients are added by
the cooking process, when this doesn't actually seem to be the case. I
fixed this just for the Unathi foods, but I don't have the time to go
through them all.~
EDIT: Turns out the reagent thing was a red-herring caused by
adminspawning food. Fixed now!
* Tweaked some messages to be based on time since last message, instead
of being based on probability. This includes low blood messages,
infected liver messages, fever messages, and some drug messages.
This is a simple value change that makes the "they are absolutely tiny
compared to you!" and "they tower over you!" messages appear at 50 cm
height difference, instead of 100 cm height difference.
This will make it mechanically possible to actually get these messages
outside of edge cases like Vaurca Bulwarks or Breeders or max-height
G2s. Now tall Unathi will be able to tower over shorter Humans, Skrell,
etc. Previously, this was impossible due to the difference between the
minimum heights for Skrell, Humans, etc and the maximum heights for
Unathi, etc being less than 100.
A significant amount of influence was taken from
https://github.com/Baystation12/Baystation12/pull/33255, however adapted
to Aurora. Key things to note is the port of the newer alpha settings
from /tg/, among other improvements.
The ancient holographic and screen overlay code has been purged. This is
now handled with emissives, while holograms are handled with filters as
well.
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
This PR adds several sprites for assisted organs, which previously
lacked any sprites at all. In addition, this adds an assisted brain,
which is now available to pick in character creation. Long-term, I'd
like to look into adding assisted implants into the medical gameplay
loop, but for now these are character-creation only. "Mechanical"
prosthetic brains are not possible, and have been excised entirely.
### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:
| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/organs/organs.dmi | Mechoid (Polaris) | CC-BY-SA |
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
This PR will make broad changes to the way that alcohol/butanol
intoxication works in game, with the intention of making alcohol
consumption actually impactful, and last much longer than it currently
does. It also includes some quality of life changes to the way that
liver damage works, better indication of the player's level of
intoxication to better communicate when the player is getting **too**
drunk, and the frequency of vomiting. Players will **no longer** die
extremely fast from getting drunk, will be able to get drunk, and stay
drunk.
- The rate of liver alcohol filtration has been reduced to 0.015
intoxication every second. This calculates out to the elimination of
0.015 BAC (One standard drink) every ten minutes.
- New messages have been added to indicate when the player is drunker
than drunk.
- At 0.10 BAC the "You feel drunk!" message is replaced with the message
"You feel absolutely smashed!"
- At 0.15 BAC the "You feel drunk!" message is replaced with the message
"You feel the room spinning..."
- Liver damage no longer occurs when the player vomits from
intoxication, and instead occurs when the player blacks out or loses
consciousness (0.20 and 0.30 BAC, respectively)
- The liver will no longer regenerate BAC is above 0.20.
- The coefficient multiplier that Unathi metabolise butanol has been
buffed from 3 to 9 (They now metabolise butanol at roughly the same rate
that Humans metabolise Alcohol)
One thing of note is that these changes have indirectly fixed a "bug"
that was occurring for Unathi with Butanolic beverages; The liver was
filtering out intoxication faster than Unathi were able to metabolise
some lower strength butanolic drinks, making them unable to get drunk
from things like sarezhi wine. With the buff to intoxication, and the
reduction in liver filtration speed, butanol is going to be returned to
being very potent for Unathi (This seems to be the way it was originally
intended?) so Unathi players who are used to Butanol being quite useless
at intoxicating Unathi are going to need to be especially careful.
Also, I have done testing on my local test server, but to be frank the
tickrate of my test server is very fast, and I'm not entirely sure just
how well these changes will translate to a live environment with a
heavier server load and longer tick times.
---------
Signed-off-by: Crosarius <30341877+Crosarius@users.noreply.github.com>
Co-authored-by: Cody Brittain <cbrittain10@yahoo.com>
Tweaked gravity check proc to be more inline with TG's version.
Added signals for gravity check, that allows atoms to perform
anti-gravity.
Fixed roller beds thinking they have no gravity and thus not emitting
the rolling sound.
Fixes#19045
* Added hemophilia and major hemophilia to the disabilities list. The
former will cause wounds to bleed for twice as long, while the latter
will cause wounds to bleed forever.
Hivebot beacons scale with the currently playing player count, if they
spawn on the main map (the Horizon, most likely).
Refactored the hivebot code slightly, mostly in terms of DMDoc and
reordering.
Our SSOverlays system is outdated, and is likely the cause of many of
the issues seen in #18895. It has also been linked to a massive server
performance decrease.
This brings an updated system from Baystation, hopefully with speed
increases.
Should be testmerged, ideally with #18895.
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
This PR will add barefoot walking sounds for Unathi. Their claws will
make a clicky sound when they walk around. The sound files are
lightweight, and should be less than 75 kilobytes total.
The claw clicks are bespoke, sourced from a family dog and edited for
clarity and noise reduction.
The footstep noises beneath are from walk_indoor_barefoot.mp3 by
dragonmin -- https://freesound.org/s/554592/ -- License: Creative
Commons 0
https://github.com/Aurorastation/Aurora.3/assets/30341877/322a9767-ba2c-41df-82ae-21a7f80816ac
Reworks blueprints to use an eye component for area selection and
changing. Blueprints will now work on whichever overmap site they spawn
on if overmap is enabled, though currently they have only been added to
the Horizon.
Adds shuttle-modifying blueprints for altering shuttle areas and
exoplanet outpost blueprints for creating areas on exoplanets. A set of
outpost blueprints and a lockbox containing blueprints for the Horizon's
shuttles have been added to the CE's locker.
Moves eye creation to a component.
Ported from:
https://github.com/NebulaSS13/Nebula/pull/465https://github.com/NebulaSS13/Nebula/pull/564https://github.com/NebulaSS13/Nebula/pull/3046
Unified most of the procs into one definition, so there are no duplicate
around the codebase.
Marked some of the above as overridable if a good enough case can be
made for them (eg. external dependency or unlikely to be used).
The appearance editor can now change organs and limbs into
prosthetic/nymph/amputated versions.
As ghostroles can now edit their own limbs, the Tarwa Conglomerate
ghostroles no longer have random nymph limbs.
Height and speech bubbles no longer need the user to be able to change
their species to modify them
---------
Signed-off-by: RustingWithYou <63625389+RustingWithYou@users.noreply.github.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Adds two new origin traits - small pain resistance and a minor stamina
increase. Currently Unathi from the Tza Prairie have the stamina boost
and Unathi from the Zazalai Mountains have the pain reduction.
Also adds drug & alcohol resistance to Crevan Tajara.
Adds an augmented translator to the game, with which the user can
understand all human languages. I did not add a translator from xeno
languages, as it would have been very strong, given the difficulty of
translation and the peculiarities of their languages.
I have decomposed the original augment file to improve readability and
code handling. Hopefully this won't cause trouble in the future. (Sorry,
but an 800+ line file is a very large file.)
Fixeeeeees...
* Fixes#17501
* Fixes#15349
* Fixes#18772
* Fixes#15125
* Various incorrect usages of the demonym of Medina (they've been
changed to "Madani")
* Half-fixes #18878. The flak/plates/helmet are all added to the crates,
but I couldn't fix the non-existent wear sprites.
Removes a thin_clothing check, meaning all bleeding, regardless of
clothing, will now be more visible upon physical examinations of people
(shift click).
Intended to make physical examinations for bleeding without a handheld
scanner, better
---------
Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Origin traits, as well as species natural armor, will correctly remove
themselves when culture/origin/species is changed.
Vaurca primary language processors (K'lax Sinta'Unathi and C'thur
Nral'malic) are now culture traits rather than loadout items. This means
that they can be added/removed from ghostroles automatically without
having to copypaste the same code 200 times.
Secondary language processors (Sinta'Azaziba, Freespeak, Tradeband) have
stayed as loadout items as some of them do not have distinct cultures or
origins they can be added to.
Part 2 of the PR series to bring /tg/'s and bay's plane masters to
Aurora, the lack of which is blocking several features we want.
This ports over the easier to understand Bay version of plane masters,
which is detailed in the relevant readme file in the code. Example
effect code for a warp effect is also in, which has been implemented for
gravity catapults.
Relies on #18741
---------
Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
### Summary:
This PR fleshes out cryonics, both inside a cryotube and outside of a
cryotube, and gives a pharmacist a lot more to do during those high
energy rounds as they will be required to prepare and oversee any
cryonic mixes. Lots of ways you can go about doing with the biggest
reward being brain regeneration that bypasses oxygenation requirements,
at the cost of significant downsides if done improperly.
This generally empowers pharmacists and physicians and offers
non-surgical treatment alternatives, though often incurs a penalty or
takes a little longer than surgical treatment, so it doesn't make
surgeons redundant.
This list'll be exhaustive so medical players aren't left in the dark
and can just refer to this while a wiki update is worked on, instead of
digging through code.
**Changes to Stasis/Cryotubes:**
- Stasis at temperates between 120K and 200K has been reduced to between
5 and 10, as opposed to 10 and 20. This means chemicals still have a
good chance of metabolising if you set a cryotube to above ~140K.
Cryotubes will still achieve good stasis if you cool below 120K -
upgraded stockparts from the workshop/R&D will help with this.
- (Bugfix) IPCs will not longer be knocked unconscious if they enter an
active cryotube.
**Misc. Reagent Additions/Tweaks:**
- Bicaridine now only requires 30u in the blood to begin attempting to
repair arterial bleeds, as opposed to 50u.
- Adds a Blood Thinning chemical effect. This prevents Coagzolug's blood
clotting effect from working and works in the opposite way - increasing
how much blood you lose per blood loss tick. Fluvectionem and
Synaptizine apply Blood Thinning at a strength of 25, translating to 25%
faster blood loss.
**Cryonic Chemicals:**
- Cryoxadone and Clonexadone both overdose at 5u. **_This is not a
problem when using a cryotube due to how cryotubes administer
reagents._** Overdosing either results in genetic damage and severe eye
damage.
- Cryoxadone and Clonexadone's organ healing capabilities have been
significantly nerfed. The organ healing is still noticable and useful
for pharmacist/surgeonless rounds; they cannot heal the brain though.
- Cryosurfactant has been renamed to Cryosilicate, mimicking
Pyrosilicate - the recipe now uses silicate instead of surfactant.
- Cryosilicate and Pyrosilicate now have an effect when used in the
body: cryosilicate will supercool a patient; pyrosilicate will
chemically incinerate someone. Leporazine will inhibit these functions.
- Bicaridine will repair arterial bleeds when used in cryogenic
conditions.
- Kelotane will repair disfigurement when used in cryogenic conditions.
- Peridaxon 2x effective in cryogenic conditions. Peridaxon can
denecrotise livers and kidneys in extracool cryogenic conditions - it
cannot denecrotise other organs. Using peridaxon in cryogenic conditions
will result in benign tumour growth (see below).
- Red Nightshade can repair bone breaks in cryogenic conditions. It will
still put a patient into a berserk state.
- Cataleptinol - see below.
**Cataleptinol Rework:**
Cataleptinol has been reworked from the ground up and is where
pharmacist's will be able to shine by making fancy cryotube beaker
mixers or cryonic mixtures for use in IV stands.
- The new recipe is 2 parts Alkysine, 0.5 parts Phoron, 1 part
Clonexadone and a 5u Cryosilicate catalyst. This translates to: 120u
Alkysine + 60u Clonexadone + 30u Phoron w/ 5u Cryosilicate = 60u (1
bottle) of Cataleptinol - expensive and lots of tricky precursors,
leaves enough left over to make a 2nd bottle without having to remake
all of the precursors.
- **In cryogenic conditions**, Cataleptinol will restore 7.5% brain
activity per metabolisation tick. This _bypasses the 85% oxygenation
requirement_, at the cost of hallucinations, blood thinning and liver
damage. The trade is roughly 40% brain activity (assuming nothing is
causing brain damage) for total liver failure.
- **Outside of cryogenic conditions**, Cataleptinol becomes a lot less
reliable and a lot more dangerous to use, with only a 75% chance of
restoring 2% brain activity per metabolisation tick. It will still
bypass oxygenation requirements, making it useful during _**severe
emergencies**_, at the cost of inducing painshock in addition to the
above hallucinations, blood thinning and liver damage. The trade is
roughly 25% brain activity (assuming nothing is causing brain damage)
for total liver failure.
- Cataleptinol _**overdoses at 3u**_ and has a fast metabolisation of
0.6u/tick - this makes it hard to dose without using an IV drip. If you
overdose Cataleptinol by using another method of administration, then
the patient's liver will crash, brain regeneration undone and the
patient will have severe seizures resulting in more pain. Using
Cataleptinol outside of cryogenic conditions **is high risk and only
potentially high reward**, but it could buy a couple more minutes.
**Tumours:**
- Adds Benign Tumours. Benign tumours simply drain nutrition and cause
frequent pain; they do not spread or affect nearby organs.
- Adds Malignant Tumours. Malignant tumours will begin by draining
nutrition then effecting symptoms based on the tumour's location (chest
tumours -> coughing, gasping, chest pain; brain tumours ->
disorientation, memory loss; abdominal -> vomiting, abdominal pain;
anywhere else -> lethargy). In the later stages, malignant tumours will
begin to damage the organs they are close to, then will eventually enter
the circulatory _~~and lymphatic~~_ system and spawn more malignant
tumours in other parts of the body.
- Peridaxon will result in benign tumour growth when overdosed or used
in cryogenic conditions.
- Genetic damage will result in malignant tumour growth.
- Ryetalyn is the anti-tumour drug and will put both benign and
malignant tumours into recession. You can also surgically intervene and
excise tumours as you would k'ois mycosis or fluke parasites.
- You cannot have more than 3 of any tumour - things won't get too out
of hand.
**IV Bag Stuff:**
- Adds 2 labels for IV bags: Cryonics Mixture, denoted by a CR; Other
Mixture, denoted by an M.
- Renames `blood packs` to `IV bags` and changes their formatting. What
was `blood pack O+` will now appear as `IV bag - O+ Blood`; `blood pack
Saline Plus` -> `IV bag - Saline Plus`.
**Misc.:**
- Only 20 genetic degradation on a limb is required to deform it instead
of 30. This should make it slightly more common, as 30 is a large number
to reach when this number is calculated per limb.
- Seizures can be given variable strengths.
- (Bugfix) Coolant tanks no longer just set a room's temperature to 0K
when destroyed. The amount it cools a room scales with the amount of
coolant still in the tank but cannot go below 173K/-100°C.
- Cryocells now have stockparts and can be upgraded/deconstructed.
Fixes some of the issues described in #18876, namely:
- Hoplan using the wrong markings and having the option to add lights
- Markings not applying to the hands when selecting the "Primary Color"
option
- Torso and arm markings not being selectable
- Markings being lighter than the selected colour
Additionally, makes it so the "Primary Color" option doesn't add a head
marking to avoid applying the default TV head marking to the alternative
heads.
Title. Performance concerns here, since this is called for each observer
each time a message is sent. Not sure if get_area or get_turf is more
performant.
May not be worth it if it effects performance.
New IPC heads can be selected by changing the head's prosthetic type, as
you would with a robot limb. All sprites by Noble Row.
Relevant to everyone else, this PR adds functionality to whitelist
sprite_accessories to certain prosthetic types, so you could
theoretically add Bishop-only markings for humans.
To-do:
- [x] Facial hair sanitization so that selecting a new head properly
removes the screens.
- [x] Marking sanitization so that selecting an invalid head for the
markings resets them.
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Reduced simple animal emote sounds to short range.
Turned the var that hold those sounds into a lazylist, saving memory (as
most simple animals don't have emote sounds).
This is part 1 of a project to, eventually, bring the render planes
system from /tg/ and bay into Aurora. This is a prerequisite and blocker
for many things the development team and community want to have, and
this was long overdue.
Many objects have been re-assigned layers, which are now thoroughly
defined. Maps have had their custom layer defines purged, as we should
be moving away from this in favor of saner definitions in the base
items.
This should be a test-merge due to the sheer amount of layers changed,
which will very likely create issues that I cannot possibly discover and
debug in a reasonable amount of time myself.
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>