163 Commits

Author SHA1 Message Date
Cody Brittain 3f62424312 [MDB Ignore] [IDB Ignore] Kills off /obj/item/device (#21774)
This has zero reason to exist in our code base. We have no procs or
variables tied to this. I removed it to make future modifications
cleaner.

---------

Signed-off-by: Cody Brittain <1779662+Generalcamo@users.noreply.github.com>
2026-02-01 05:14:26 +00:00
Cody Brittain 96a2951608 Improve, cleanup, and expand wound code (#20757)
This PR includes several changes to bring our wound code up to date with
baystation, nebula, and modern standards. Highlights include:
- The usage of integers between 0 and 100 for ratios (expressed as a
percentage), instead of 0.0 to 1.0. Small decimal values are prone to
floating point precision errors, but by moving to a percentage instead,
we can reduce the impact of this.
- The untangling of damage flags and injury flags, which were used
interchangably in the code. This could have caused issues should we
expand any of these.
- Larger embedded objects now halt bleeding in wounds, until they are
pulled out. In exchange however, embedded objects will halt healing in
wounds (it is difficult to close an open wound that currently has a rod
stuck in it)
- A lot of data, such as implanted objects and organs, are now stored in
amputated limbs.
2025-12-19 20:22:29 +00:00
Batrachophreno db452842bf Greimorian Egg Cluster Implantation Refactor (#21554)
Fixes https://github.com/Aurorastation/Aurora.3/issues/21509

**Summary:**
Cleans up a lot of old Greimorian egg implantation code- rewrote the
actual worker injection behavior to use the organ/internal/parasite code
we have, instead of creating effects with their loc set to the organ
itself.

This largely means that not only is Greimorian implantation able to be
treated pharmaceutically (as you'd expect, with them being parasitic and
medicine including antiparasitics), but it also means that 'greimorian
eggs' also get the same treatment as nerve flukes, etc. That is to say,
antags can now purchase Greimorian Clade Kits from the uplink and inject
people or monkeys with them to cause Unhappy Tidings.

This code is also fairly easy to modify, if one wanted to create more
implantable parasites that burst out of people, unrelated to
Greimorians.

**Changes:**
- refactor: "Refactors the egg injection of Greimorian Workers to use
parasite code; it can now be treated with anti-parasitic medicines in
addition to amputation of the affected limb. Works on all playable
species, and monkeys."
- rscadd: "New reagent 'Greimorian Eggs' creates an egg cluster parasite
in a random organ when metabolized in the bloodstream. It also has very
mild soporific effects."
- balance: "Greimorian Workers and playable Greimorian Servants/Queen
now inject Greimorian Eggs instead of Soporific."
- rscadd: "Greimorian Clade Kit now available in Uplink under Bioweapons
section (Greimorians now able to be introduced to ship by egg cluster or
injectable reagent)."
- balance: "All parasite kit bioweapons have had their vial reagent
count increased from 2 -> 5."
- balance: "Helmizole no longer treats K'ois Mycosis, Black K'ois
Mycosis, Zombification, or Tumors (Benign or Malignant)."
  - code_imp: "Updates a lot of code documentation to dmdocs."
2025-12-02 10:53:54 +00:00
naut dfe57a310f New boxes (#21439)
* Thoroughly resprites boxes. They're now more modular and, importantly,
colorable.
* Resprites cardboard, as a material.
* Repaths boxes behind the scenes to be more object-oriented, with boxes
being resorted into their own subtypes. You might notice this in the
gargantuan amount of files this PR changes.

Part of a bigger (yet modestly-sized still) resprites project. Atomized
the boxes bit into this PR specifically so that any conflicts don't
destroy any other spriting PRs.

<img width="652" height="273" alt="image"
src="https://github.com/user-attachments/assets/5590b22d-c9d7-49b5-9adf-0b6e01a6962b"
/>

<img width="383" height="345" alt="image"
src="https://github.com/user-attachments/assets/aab83040-2d5d-4283-b019-3d6bed2e3e47"
/>

<img width="142" height="343" alt="image"
src="https://github.com/user-attachments/assets/75a98d36-0171-4e48-9dec-de5511f35d39"
/>

<img width="127" height="225" alt="image"
src="https://github.com/user-attachments/assets/a1ff8b1b-bd2a-4c0d-b538-32fe401724c3"
/>

<img width="334" height="399" alt="image"
src="https://github.com/user-attachments/assets/e41330ac-ed4a-4e81-a87a-5ba901b47b5c"
/>
2025-10-07 16:59:55 +00:00
Wildkins 5fec421dae Destroy several sources of lag (#21422)
Destroys a ton of sources of lag:

- /obj/machinery/biogenerator/interact and
/obj/machinery/computer/rdconsole/attack_hand

Both of these call REF(src) constantly on their UI update, which also
happens constantly. Death by a thousand cuts

- /obj/machinery/button/ignition/attack_hand and
/obj/machinery/button/switch/holosign/attack_hand

Sleeps rather than timers, iterating the entire machinery list rather
than just storing the IDs we need at roundstart

- /obj/machinery/telecomms/update_icon and /obj/machinery/meter/process

Calling overlay updates WAY TOO MUCH. UpdateOverlays is a significant
overhead for the server at this point and the two of these combined are
responsible for a little over 20% of updates. They now should only
update overlays when necessary rather than every tick.

- NEW! /obj/machinery/disposal/proc/update and
/obj/machinery/portable_atmospherics/hydroponics/update_icon

These two were also offenders, worse than telecomms but better than
meters. They have also been brought into line.

- /mob/living/carbon/slime

Hard-del'd if grinded into slime extract less than two minutes after
being "born". Fixed by adding TIMER_DELETE_ME flag.

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2025-10-04 11:05:07 +00:00
Matt Atlas 75d5ee5a64 Fix surge damage not ticking. (#21248)
title

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2025-08-28 10:36:41 +00:00
CometBlaze cde97b7aa3 Renames the Positronic Brain Implant (#20899)
Changes the Positronic-Implanted Brain to Pseudoneuron-Assisted Brain.
The current name causes confusion and creates a link to IPCs that
synthlore does not want. This shouldn't affect the concepts that can
currently be explored by the implant as is.
This was discussed with and approved by NM.
2025-07-01 15:51:19 +00:00
Fluffy 3185c10cf1 516 internal links (#20428)
Convert all (appropriate) links to use the required `byond://` for 516

Added a grep to detect incompatible ones
2025-02-20 22:54:10 +00:00
Fluffy d799b7354d Ingested ryetalyn (#20080)
Ingested ryetalyn now cures tumors, and does its effect.
Implemented time-constant STP_PROB in some procs.

Fixes #20058
2024-10-25 17:56:12 +00:00
Fluffy b8902e2e16 Runtime map now loads in ~11 seconds instead of ~40, sped up various other things (#19957)
Runtime map now has a bunch of new areas / items with often-tested
stuffs, and some hard-to-put-at-runtime stuffs.
Runtime map jobs now are positioned to make it faster to reach the
aforementioned often-tested stuffs.
Runtime map doesn't generate an overmap anymore by default, which speeds
up the process.
Runtime map now loads in ~11 seconds instead of ~40 seconds as it was
before.
Updated the maploader to be faster in parsing maps.
Bapi is not engaged anymore if we're only measuring the map size, which
speeds up the process.
In fastboot we do not generate the codexes anymore, which speeds up the
process.
In fastboot and if exoplanets and away sites are not enabled, we do not
parse the map templates anymore, which speeds up the process.
Updated the icon smoothing to be faster.
Optimized cargo area code.
Other optimizations.
2024-10-06 21:31:01 +00:00
Fluffy 9636363e60 Refactored the attack proc (#19908)
Refactored the attack proc signature.
Added signals and components for the attack proc.
Added signals and components for the attackby proc.
Adjusted some leftover attackby procs signatures.
Added grep test to ensure people don't keep adding attack/attackby procs
with the wrong signature.
2024-10-06 21:30:00 +00:00
Fluffy 3dc4cce9c2 Minor span refactoring (#19177)
Minor span refactoring
2024-05-19 16:37:29 +00:00
Cody Brittain c01768e45c Assisted organ sprites, and assisted brains (#19087)
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>
2024-05-09 15:08:00 +00:00
RustingWithYou 8c4b86349d Makes prosthetics editable in appearance editor (#18879)
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>
2024-04-18 22:50:20 +00:00
Fluffy 689a65f111 Unified /organ Initialize() in a single proc (#18731)
* Atomization

* sadf

---------

Co-authored-by: FluffyGhost <FluffyGhost>
2024-03-26 09:09:09 +00:00
Matt Atlas 4423d03f2f Adds examine boxes. (#18370)
* Adds examine boxes.

* lint

* what kind of dreams did you dream?

* unlimited

* midgardsormr

* sdsd

* fixes

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2024-02-11 21:58:20 +00:00
Fluffy 25dc248979 Updated statpanel and added client pings (#18337)
* SSatlas.current_map

* hardsuit spell tab appears to clear correctly

* sdfsa

* from the moment i understood the weakness of my flesh, it disgusted me

* sdf
2024-02-08 12:29:42 +00:00
Matt Atlas cadd19beac Ports the TG globals controller and converts globals. (#18057)
* SDQL2 update

* fix that verb

* cl

* fix that

* toworld

* this is pointless

* update info

* siiiiick..

* vv edit update

* fix that

* fix editing vars

* fix VV

* Port the /TG/ globals controller.

* part 1

* part 2

* oops

* part 3

* Hollow Purple

* sadas

* bsbsdb

* muda na agaki ta

* ids 1-15

* 16-31

* 41-75

* bring me back to how things used to be before i lost it all

* the strength of mayhem

* final touches

* cl

* protect some vars

* update sdql2 to use glob

* stuff?

* forgot that is not defined there

* whoops

* observ

* but it never gets better

* a

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2023-12-26 01:16:02 +00:00
Fluffy a02be9f1fd Updated SSAtoms to TG's version (#18032)
* emperor protects

* sdfas

* sadf

* sdf
2023-12-25 20:38:08 +00:00
Fluffy d8d063edc6 EMP Refactor & Multi Z-level EMPs (#17781)
* sdfasf

* sdfas

* dsf
2023-12-04 19:37:49 +00:00
Fluffy 4538e2a7cc Fix indentations (#17481)
* cbt

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* fsadffsda sad

* sadfasd

* jhn

* dsfa

* saf

* safsad

* sda
2023-10-05 10:15:58 +00:00
Cody Brittain ce5ac79e3c Split examine verb and function, and improve it (#17251)
* Split examine verb and function, and include adjacency and distance checking in examine function

* Fix various issues

* Update code/modules/mob/examinations.dm

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>

* Add required define vars

* Update code/game/objects/items/stacks/wrap.dm

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>

---------

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
2023-09-09 08:07:36 +00:00
Fluffy b183188689 Better logging (#16164)
* Initial

* Cleared duplicates

* More work, get rid of log_error

* more

* log_debug() to macro LOG_DEBUG

* More work

* More

* Guh

* Maybe better?

* More work

* gah

* Dear lord

* *inserts swears here*

* gdi

* More work

* More

* dear lord

* fsdfsdafs

* rsdaf

* sadfasf

* sdafsad

* fgsd

* small fuckup fix

* jfsd

* sdafasf

* gdi

* sdfa

* sfdafgds

* sdafasdvf

* sdfasdfg

* sdfsga

* asdf

* dsfasfsagf

* ihibhbjh

* fsadf

* adfas

* sdafsad

* sdfasd

* fsda

* vhb

* asf

* for arrow

* removed source file-line logging, added header for tgui
2023-08-05 21:53:11 +00:00
naut fa94e54788 Adds Cytophenolate, a new immunosuppressant (#16958)
* Immunosuppressant

* chagnelgo

* slows metabolism down to make prescription meds not overly tedious

* CL update

* Update code/modules/organs/organ.dm

---------

Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
2023-08-04 14:43:42 +00:00
Sparky af68a3ae89 Assisted organ fix (#16315)
* Assisted Organ Fix

Fixes assisted organs being turned into mechanical variants. i.e. Currently choosing an assisted heart gives you an assisted circulatory pump, not a pacemaker.

* This should probably use the define.

* copy-paste error
2023-05-12 18:21:29 +00:00
Fluffy 04d89f212a Singletons + refactor of /datum/observ + refactor of /decl/ into /singleton/ (#15519) 2023-01-10 19:22:14 +01:00
Matt Atlas b1869884c1 Revert "Singletons + refactor of /datum/observ (#15487)" (#15515) 2023-01-05 19:21:22 +01:00
Fluffy 0ddcf0817a Singletons + refactor of /datum/observ (#15487) 2023-01-05 18:41:40 +01:00
Wowzewow (Wezzy) 3330695805 Organ Damage Threshold Fix (#14649) 2022-08-19 12:32:40 +02:00
mikomyazaki dae76e0558 Life improvements: Part 1 (#13912) 2022-05-18 14:22:43 +02:00
Sparky 193186ac9f Mech Organs Don't Squeltch (#13083) 2022-02-08 11:40:54 +01:00
Alberyk f42edd018e Adds more customization to robotic internal organs but it is not broken (#13068) 2022-02-06 18:07:42 -03:00
Matt Atlas 3225711e67 Revert "Adds more customization to robotic internal organs (#12994)" (#13065) 2022-02-02 19:46:57 +01:00
Alberyk a32ce7644e Adds more customization to robotic internal organs (#12994) 2022-02-02 13:07:11 -03:00
Doxxmedearly febf264361 Fixes germ_level going negative (#11850) 2021-05-08 03:42:40 -03:00
Doxxmedearly 9fab9f838d Yet More Infection Tweaks (#11804) 2021-05-04 23:00:39 -03:00
Geeves 44222f1cc8 Admin Damage Menu (#11386) 2021-04-08 12:12:32 -03:00
Matt Atlas 80be3d88e1 Another set of brainmed adjustment & miscellaneous things. (#11354) 2021-03-05 23:35:58 +01:00
Doxxmedearly 7c599d89ed Thetamycin Tweaks (#11164) 2021-02-13 12:57:03 +01:00
Doxxmedearly 476d901a71 Infection Tweaks (#11072) 2021-01-29 11:52:08 +01:00
MarinaGryphon c720e947ed /decl/chem (#10538) 2021-01-17 00:11:28 +02:00
Matt Atlas 8007ccd2ea IPC battery rework, ion rifle nerf, surge damage. (#10245)
- EMPs no longer deal permanent damage. Instead, they deal a temporary kind of damage called surge damage, that lasts for 10 seconds at maximum.
  - Surge damage makes mechanical or assisted limbs count as broken and nonfunctional.
  - Surge damage has special interactions with the mechanical heart and eyes.
  - EMP damage is no longer randomized. It is now much more consistent.
  - IPC battery is no longer represented as nutrition. Instead, the microbattery organ contains a super-capacity cell that is used for all their actions. This is represented with a new HUD icon.
  - Hardsuits can now be charged in robot chargers if you are wearing them.
  - Ion bolts now have a hit sound.
  - Removed the ion rifle lethal mode.
  - The ion rifle now has four shots.
2020-12-19 01:34:40 +01:00
Matt Atlas d4666caaac Ports Goonchat from Baystation. (#9635)
changes:

    rscadd: "Ported a new chat system, Goonchat, that allows for cool things like changing font style, size, spacing, highlighting up to 5 strings in the chat, and DARK MODE."
    rscadd: "Repeated chat messages can now get compacted. You can disable this in goonchat settings."
    rscadd: "You can change icon style to any font on your system."
    tweak: "The game window has been altered a bit to adjust for this."
    rscdel: "Removed skin style prefs as they are no longer used."
2020-09-24 23:06:04 +03:00
Cyantime 1a8940bbd8 Adds defines for species and bodytypes (#9707) 2020-08-24 13:59:24 +02:00
Chada-1 d7e680a575 Full rename of all real chems to bone apple tea'd versions. (#9400)
As a continuation of #9389
As a bonus, any drugs that mentioned their IRL counterpart in their description now describe their predecessor as ancient, and the new ones as modern. The biggest difference here is just the Antihistamine which was given a full new name. They're similar enough that they'll be recognized (most of them) but different enough for us to call our own and not care what the real medicines are/do since these are our sci-fantasy versions just inspired by them.
2020-07-26 13:19:41 +03:00
MarinaGryphon 37c80988ce Converts Reagents to Typepaths and Centralises Reagent Spawning (#9140)
Converts reagents to use typepaths instead of IDs.
    Centralises reagent spawning in a lot of places to use reagents_to_add instead of a variety of custom methods or initialise overrides.
2020-07-05 20:47:48 +03:00
Wowzewow (Wezzy) fad8415a8e Pickup, Drop and Equip sounds (#8861) 2020-05-22 15:40:00 -03:00
Matt Atlas 105cb5d64e Remove sharp/edge in procs and consolidate them into damage flags. (#8672) 2020-04-30 20:29:35 +02:00
Alberyk 7d86fdf901 Cyberpunk 2462: augments for real this time (#8113)
This pr adds an augment option to the loadout, that by using copious amounts of shitcode, allows players to spend their snowflake points into becoming total powergamers cool augmented cyborgs.
Also, make a couple of changes to allow all limbs to host internal organs and interact with them in surgery.
2020-04-23 19:27:53 +03:00
NonQueueingMatt 1c0923ec38 Merge remote-tracking branch 'Aurorastation/master' into you_have_ligma 2019-12-21 17:16:24 +01:00