we have a gorillion hard deletions and it turns out half of them are
because we set the "ALWAYS HARD DELETE THIS" flag rather than just like.
fixing the hard delete.
cool
For a robust crafting system, I need a new materials framework.
For a new materials framework, I need to clean up reagents.
To clean up reagents, I need to pare down foods from reagent holders.
To pare down foods from reagent holders, I need to port edibility
components.
To port edibility components, I need to port processing components.
To port processing components, I need to port tool behaviors.
This is all back-end code, no new features or functionality from this.
V2 of [previous music playing
PR](https://github.com/Aurorastation/Aurora.3/pull/21466). TLDR no
longer uses the connect_range component for implementation because it
turned out a bit too inflexible for overlapping music players.
Removes a NanoUI template for the [TGUI
update](https://github.com/Aurorastation/Aurora.3/pull/21046).
New changelog:
- refactor: "Ported Jukebox's NanoUI interface to TGUI."
- refactor: "Ported Jukebox audio playing functionality to a component."
- refactor: "Sound keys refactored from singletons to datums, along with
larger breakout of sound.dm to allow for easier SFX updates in future."
- code_imp: "Expanded track datums to include track lengths."
- code_imp: "Reorganized music file folders for more intuitive access."
- rscadd: "Earphone status feedback text now includes track length."
- rscadd: "Added autoplay functionality to earphones."
- bugfix: "Fixed earphones' 'Previous Song' verb not sending you to the
end of the playlist when used while the first track is selected."
- bugfix: "Fixed gain adjustment for 'Konyang-1' (-23 dB -> standard
-9.8 dB)."
- bugfix: "Fixed y-offset of audioconsole-running overlay animation to
line up with the actual screen."
---------
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
https://www.youtube.com/watch?v=9mPvZ96pHJI
A pull request commissioned by the Synthetic Lore Team to
comprehensively rework synthetics (read: IPCs) and how they work in
Aurora. The objective is to make IPCs as unique as possible from humans,
upgrading the robotic feel and atmosphere, while also preserving a good
sense of balance in-game.
Key features:
- A comprehensive expansion of synthetic organs, all of which now
fulfill a purpose: hydraulics, cooling units, power systems, actuators,
diagnostics units.
- Customizable organs with benefits and drawbacks, such as with cooling
units and power systems.
- Unique ways to repair the organs and more involved steps.
- Unique damage mechanics - every organ has wiring and electronics which
affect its functioning, and they are defended by plating which provides
natural armour.
- Improved and immersive diagnostics.
- Unique features, benefits, and drawbacks for every IPC frame.
- A rework of the positronic brain, which can be either destroyed or
shut down, alongside effects caused by low integrity.
- A rework of how EMPs affect IPC organs.
- Non-binary damage states for each organ.
To-do:
- [x] Finish the unique features for each frame.
- [x] Look into if mechanical synthskin is possible.
- [x] Power system.
- [x] Posibrain mechanics.
- [ ] Passive cooling expansion.
- [x] EMP mechanics.
- [x] Repair mechanics.
- [x] Mob weight mechanics.
- [ ] Gurney for heavy mobs.
- [x] New augments.
- [ ] IPC tag scanning and flashing.
---------
Signed-off-by: Werner <1331699+Arrow768@users.noreply.github.com>
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Geeves <22774890+Geevies@users.noreply.github.com>
Co-authored-by: Werner <1331699+Arrow768@users.noreply.github.com>
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.
Progress on DMDocs. PRing progress so far so there's not one mega PR
later with 1500 affected files.
I want my goddamn highlight text on what all these goddamn procs goddamn
do goddamnit. >:(
No actual code change anywhere in this PR, only comments.
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
1. Look up now follows your mob (no more auto-removal when you move,
only when you go below a solid tile). Maybe add a hotkey?
2. Made the codebase work with the latest version of spacemandmm lint.
3. Advanced kits don't work on robotic limbs.
4. Density shifting should now always use set_density. Ported
TRAIT_UNDENSE from CM to better control the density of living mobs.
Fixes weird shifting behaviour with wall leaning -- what was happening
is that mob density was getting reset to TRUE because the mob wasn't
lying down.
5. TGUI say light prefs actually save.
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Extends and reworks how various extended information text (desc_info,
desc_build, desc_upgrades) are handled to make object interactions and
mechanics A.) much more clearly documented in-game and B.) much easier
to support from the back-end.
Almost certainly a candidate for test merge.
Assembly/Disassembly instructions are noticeably sporadic, largely due
to our current lack of a unified framework. That's a future thing I'd
like to attack so that it can be handled programmatically, but for now I
only targeted the biggest culprits as I came across them.
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
This makes nanopaste take about twice as long to apply at a baseline, 2
seconds rather than 0.7, multiplied by five times if the mob you are
applying it to is yourself, reckoning out to 10 seconds to apply it once
to yourself. This also prevents you from applying nanopaste multiple
times at once, so this time limit can't be contravened.
The intention of this is to discourage using nanopaste mid-firefight,
which has been very powerful in the past since it took less than a
second to apply and could be spammed repeatedly to speed that up even
further. I also hope that it'll encourage IPCs to ask for help to apply
nanopaste, involving other people in the repair process, or to simply
use the workshop now that nanopaste is less instantaneous.
Turned a ton of unmanaged globals into managed globals.
Refactored some UT output.
Removed some unused things, including vars.
Added a test to ensure people don't keep adding new unmanaged vars.
* Bandages now do not disappear as damage heals, instead, a special
Remove Bandages verb must be used to remove bandages. This cannot be
used to re-open wounds for now, and can only be used if the bandage
would've downgraded / disappeared at that point.
* Taking damage on a bandaged limb now removes the bandages.
Moved all calls of randpixel_xy in Initialize() (if they were in New())
Some tweaks of the proc
This should avoid some random CI failures due to it matching shifted
pixels as dirty vars
No player facing changes
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.
Refactored all the builtin text procs to use string interpolation
instead.
Added a linting for the above.
This is based on, and should only be merged after, #19847
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.
Refactored fire_act() to be in line with TG version, removed useless
parameter, added signal, made non sleepable and forced to call parent.
Added atom_act.dm file for the various *_act procs.
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>
* sdaf
* sdaf
* sdfa
* sadf
* sfda
* gfd
* reduce thrusters volume
* sdafsadsdaf
* sdfa
* Reduced some sound ranges and made some/more not ignore walls for loops
* health analyzers too
* ivdrip adjustment
* most tools now use play_tool_sound to have the sound played, reduced range for it
* pain
* sadfas
* sdfa
* sdfasf
* sfa
* sdf
* might the lord have mercy on our soul
* i cri everidai
* adeste fideles
* sdf
* where will this lead, what's coming next, from your inventions
* dear lord
* gjvhk
* i cri everidai
* fsgf
* sdfa
* sdaf
* hiuhi
* 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>
* tis time for nefarious deeds
* all it takes is one lattice
* francisca directions and minor tweaks
* scarab origin ooc note
* lint pls
---------
Co-authored-by: ShakyJake <jakeisnowshaken@gmail.com>
* Refactored do_after to use a flag-based system for options
* More flags
* Ditto
* Use the HAS_FLAG macro
* do_after pass
* Fix burning paper code
* Resolve issues from Fluffy's code reviews
* .
* after dark
* FIXES
* breakin
* butt
* Update code/game/objects/items/devices/floor_painter.dm
Co-authored-by: Cody Brittain <cbrittain10@yahoo.com>
* Update code/game/objects/items/devices/floor_painter.dm
Co-authored-by: Cody Brittain <cbrittain10@yahoo.com>
* Update code/game/objects/structures/lattice.dm
Co-authored-by: Cody Brittain <cbrittain10@yahoo.com>
* testing 1
* a
* FUCK THIS PRESET!!!
* allah
* OTEMACHI
* tis' done
* Project Exorcism : Sneed's Snairs (Formerly Chuck's)
* Update code/game/objects/structures/stool_bed_chair_nest/chairs.dm
* Update code/game/objects/structures/stool_bed_chair_nest/chairs.dm
* Update stools.dm
* Update code/game/objects/structures/stool_bed_chair_nest/stools.dm
* Update code/game/objects/structures/stool_bed_chair_nest/stools.dm
* Update stools.dm
* Update chairs.dm
* Update code/game/objects/structures/stool_bed_chair_nest/chairs.dm
* inhand fixes
* airlocks (matt has cooked)
fuck
* my cody plays the mamba
* fuck
* fixes layering issue
* airlocks and everything else Please fucking kill me
* underlays
* unfuck blending
* finished replacing old ass shit
* your ass is geass
* conflicts die now
* public fat'wa
* progress on walls and windows
* more mapping
* baltimore accents be like
* minor progress
* monitors
* fire alarms and apc adjustments
* apcs pixel adjustments, final airlock look
* also grilles
* shuttle wall start plus shuttle windows
* starting consoles
* table outlines
* I love broke ass sprites
* fixing the stupid ass exterior walls
* light fuckery
* terminal directionals, external airlocks, table fixes, blahblahblah
* fix 1
* fix 2
* some more fixes
* fix chairs
* basic untested railings and updating colors from atteria
* bridge and some fixes
* removing some artifacts on the new walls
* breaking wood tables and adding 4 wall materials
* fix
* compile & wood fixes
* make the horizon compile again
* railings, firedoors, ATMs, intercomms and tables again
* mapping begins also some tweaks to map view of icons
* full tile steel walls
* i sure hope nothing bad happens
* airlock updates (untested)
* reverts most wall machinery
* skull
* wall coloring
* makes the tg wood chill out
* work on airlocks
* hull consistency
* cause you live forever in the lights you make
* whoops can't show that in a christian manga
* terminals should be on walls and everything's hunky dory now
also i changed the wood stuff as per atteria's suggestion
* fixing airlocks
* fixes
* window resprite, coloring adjustments
* scc hull resprite
* new grilles, frame edits, and borosilicate
* greyscale wood palette improvement
* shuttle windows
* window frame fix
* apc update
* refit and reshaded fire alarms
* mapping icon fixes
* table fixes
* map fixes, platforms and stairs
* updates cutter, new walls and terminals
* mapping fixes
* fix preview
* preview fix stone
* stairs
* initial work for the map
* railing and windowpane fuckery
* new external airlocks
* a
* fix the maps in preparation
* wall object pixel offsets
* air alarms D1
* extinguisher cabinets
* APC DESTROYED MISSION ACCOMPLISHED GOOD WORK
* deck 3: floor decals, APCs, air alarms, fire extinguisher cabinets
* deck 3: fireaxe cabinet
* /shuttle_landmark/distress/blue, move base_turf from map to obj def
* intercom presets
* formatting
* deck 1: floor decals
* deck 2: named area fix (LMAO), signs to use single quotes
* deck 2: floor decals, APCs, air alarms, fire extinguisher cabinets, fireaxe cabinets
* Platforms and stairs!
* grates and bugfixes
* Angled ship walls + grate color fix
* corrects apc anim overlay
* deck 2 and away site fixes
# Conflicts:
# maps/sccv_horizon/sccv_horizon-2_deck_2.dmm
* deck 2 missing grate
* warning stripes
* railings and ledges
* windows and fixtures
* windoorsagain
* airlocks pt1
* windows de-seamed and transparent
* airlocks and pixel offsets
* fixes for airlocks
* more airlock fixes
* presets for ringer, request console and newscaster
* 132
* asfsaf
* kitchen tiling
* thicker freezer tile bevels
* More angled walls
* New shutters and blast doors
* directional corrections
* ops railing fixes
* updated window map things and shutters
* value changes and blast door changes
* Ledges and platforms galore (D2/D3)
* all decks: fix door dirs
* all decks: newscasters, intercoms, requests consoles, ringer consoles
* helm light blue decals to dark blue
* supermatter door dir fix
* fix directional presets (dirs/offsets): newscaster, intercom, requests console, ringer console
* firedoor changes
* deck 3: overlapping wall mountables fixes
* map changes
* airlock changes
* map tweaks
* airlock & stair icons
* various mapping modifications
* Double airlocks + fixing denied states + fixing airlocks on all levels
* Rebase
* directional terminals buttons and lights again, platform tweaks
terminal north facing sprites, atm/food terminal directionals
proper door control and lightswitch directionals (presets still need to be set up, mapping)
re-adds new light tube sprites, again
new sprites for floor lights and the other stuff that got added
adjusted platforms to be recolorable, added light and dark versions, fixed some shading
* missing ERT outfit thingy fix
* floor lights fixed
* deck 3: various small fixes
* deck 1: various small fixes
* deck 2: various small fixes
* fixes
* d2 fixes & multitile door fix
* d2 fixes, remove unused airlock files, button icon fixes, window icon fixes
* make it actually compile, oops!
* make it actually compile, pt2
* CE office camera
* pew pew pew
* pew pew pew 2
* fixes
* deck 3: buttons fixes
* deck 3: button and other fixes
* deck 3: fixes and stuff
* D1 fixes & skrell airlocks
* minor D2 tweaks
* a lot of airlock-related fixes, glass tables, paint sprayer fixes, decal fixes, changelog
* maintenance hatch sprites
* fixing double doors
* flips multi-tiles, fixes multi-tiles, adds desk windoors
* new plastic flaps
* deck 2: a few buttons
* side + middle doors
* created paths for 3-tiles doors
* apply to map the 3 tiles airlocks
* some fixes, windoor alpha
* remove this random ass potted plant
* more map fixes
* holodeck disposal pipe fix
* secure airlock sprites
no code or obj definitions yet
* vault airlock
* vault door fixes
* scc window alpha
* adjusts double door glass, firedoor open state
* adjusts construction states for doors
* remove some defunct icons and fix anims
* assembly stuff
* pharma fixes
* vault door dir
* firedoor smart generation moved to its own proc
* lift doors, d1 fixes
* firedoor smart generation: adjacent wall check
* firedoor smart generation: adjacent firedoor check
* all decks: missing firedoor and other fixes
* deck 2: weird maint stairs fix
* oops
* diona airlock fix
* the shuttle wall gigadeath
* fixes
* some fixes for leftover map item paths, and double lattices
* new diona walls
* more fixes
* and more
* deck 1: fix out of bounds keys
* deck 3: fix out of bounds keys
* runtime 3: duplicate APCs fix
* all decks: make all 3 tile wide doors glass
---------
Co-authored-by: Wezzy <wowzewow@gmail.com>
Co-authored-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Cody Brittain <cbrittain10@yahoo.com>
Co-authored-by: kyres1 <noodle.buster31@gmail.com>
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: atteria <tarkona@protonmail.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Co-authored-by: DreamySkrell <107256943+DreamySkrell@users.noreply.github.com>
Co-authored-by: naut <nautilussplat@gmail.com>
Co-authored-by: naut <55491249+nauticall@users.noreply.github.com>
* I wanna set the universe on fire
* dfsaaf
* setup
* dir issue?
* dsf
* Perhaps the script
* saf
* cry
* pain
* sdfas
* Try reintroduction of tag-matcher
* Failed
* Tries to suppress dotnet compile warnings
* Like this maybe?
* woopsie
* Damn pathings
* Hate
* Pragmas
* unlint?
* Maybe?
* GDI
* Redundant ifdef removed and changelog
* Did I forgot the tag matcher, or it was still broken?
* Yea no that script is still broken
* Removed tag-matcher as requested
* *sigh*
* test
* bro what?
* hope
* just fixing the input
* Let's see if we catch it...
* bluecrystals 1
* Splits telecrystals into bluecrystals and telecrystals.
* fixes
* dans ma tete ce n'est pas evident
* c'est toujours trop beau pour etre vrai
* on ne peut toucher le ciel des doigts
* thanks lily
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>