About The Pull Request
Ears currently behave strangely compared to other organs, especially their most closely related sensory organ, eyes. They only assign a deafness trait for quirks, mutations, and clothing (which prevents empaths from noticing hearing damage deafness), have lots of unnecessary procs for dealing/assessing damage, and several audible events check istype() for earmuffs specifically for whether a mob can hear something.
This cuts down on all of that. I removed most ear related procs from mobs, tied deafness explicitly to TRAIT_DEAF (and added a new source for hearing damage), and generally neatened up related code. As a direct result, empaths can now detect deafness from hearing damage, as I assume was intended. I also fixed a bug with examining with med HUD's or as an observer not showing a person's quirks, though I'm not sure people will really care about the info with med HUDs. Also, full revives/regenerating organs now remove all damage from existing organs rather than only trying to replace missing ones
In addition, Inacusiate and Sensory Restoration no longer instantly cure all hearing damage when applied, they now rapidly decrease both ear damage and deafness each tick. This isn't really a fix, but I figured I'd throw it in since I think cobby wanted to move away from instant fix microdose chems, and I punted the restoreEars() procs anyway
Fixes: #51435Fixes: #48974
Why It's Good For The Game
Brings ears in line with how other organs operate, makes them easier to understand, and restores (what I assume to be) intended functionality for the empath quirk and medhud/observer examines
Changelog
cl Ryll/Shaps
fix: Empaths are able to detect deafness derived from hearing damage
tweak: Inacusiate and Sensory Restoration no longer instantly heal all hearing damage when applied, instead rapidly removing both ear damage and deafness.
fix: MedHUDs and observers now display quirks as intended on examine
/cl
* Sorts quirks into medical record categories
Removes Allergens from med record, still need to squash a bug.
* Makes Rohesie's requested changes
* typo
* Replaces magic numbers with defines
About The Pull Request
Removes minor and major crimes to simplify them, they are just "crimes" now.
Adding a crime is now 2 1 pop-ups instead of 3.
Instead of adding details in sechuds, you can add it in sec consoles or by viewing crime in hud.
Why It's Good For The Game
My goal was to simplify adding crimes to encourage security to actually do that.
Since the space law is only a roleplay suggestion, we don't need that distinction.
Changelog
cl
del: Deleted minor and major crimes (they are just crimes now).
tweak: Adding a crime (via sec huds) is now only 1 pop-up, seriously try it.
add: You can now add crime details in security consoles.
/cl
About The Pull Request
A PR now several weeks in the making that spiraled ridiculously out of control for something not many even use.
What else is new in NTOS hell?
I spent several days doing nothing but playing escape from tarkov so this took longer than expected I valiantly spent all night and day working on this, and barely finished it before The Deadline
the card ntos program was split into three programs, manifest, job management, and id card modification. It didn't make much sense for them all to be the same program imo, and made the project a bit more managable.
Airlock electronics saw some improvements as well since it uses this new access control section as well.
Yet again some new functionality and improvements to core components. Buttons now have an "altSelected" feature where instead of changing the color it adds a small white marker, among some other things.
There were a couple of small changes in inconsequential ways in other places, and datacore was refactored a tiny bit. Probably some other stuff I don't remember.
I would replace the old card console with a modular computer right now, but I know a few people actually use this program and want a bit of time to iron out bugs and inconsistencies before replacing the main job console with it.
Changelog
🆑
add: tgui-next NTOS card console, job manager, and crew manifest
tweak: airlock electronics interface is a little fancier
/🆑
* Citations Step 1 - New Datacore Stuff
* Committing before merging with master
* Initial work on PDA messaging
* Adds support for automated PDA messages
This is just a flag that, when set, replaces the standard (Reply) href with a static "automated message" message
* Citations now generate PDA messages
The target of a citation will be notified via PDA message
* Escaping some non-optimal characters in PDA messages
* Creates a public warrant computer
Initial framework. Computer machine and circuit. Adds it to the DME.
* We're gonna flipflop on this for a while
* Removing unneeded functions
This is a read-only terminal, so we don't need to have all this code for managing entries and updating fields
* Whoops
So this is why byond was warning me about unused vars
* Need some help
Pushing this commit because I got this into a state where it doesn't work right
* Adds support to pay fines!
* Map changes. Adds a warrant console to the hallway outside the brig and law office on Box.
* Adds some checks to fine creation
* Aaaaand more work on paying citations
* Paying citations works! The money goes into the defense budget!
* More functionality and usability changes
* Adds warrant consoles to the rest of the maps
* Cleaning up text
* Rewrote warrant computer to be more up to date.
* Fines are capped to 1000 credits
* Requested changes
* Citations can now be paid with holochips and warrant consoles don't require your ID to be inserted.
* Fines can be paid from security record consoles, and more feedback messages
* Citation payments now actually go into the defense budget for real
* Removing even more unused code!
* Removes unused code (emp_act and ID handling)
* More unused code for the unused code gods
* ID card reference is now just fetching attached name.
* remove simple mob typepath kthx for the remove simple mob typepath kthx gods
* one usr, many M
Credits to Europaisch for help finding all the records stuff
Fixes a few issues I was not aware of with my initial PR
* Being agender is now a distinct DNA value (fixes agender spessmen
turning female when having their DNA referenced, like during cloning
and some rudimentary transformations)
* Neatens up preference code, more in line with previous code, fixes
an issue with male underwear not surviving preference loading and
defaulting to female underwear
* Allows agender spessmen to change their facial hair with mirrors
* Change medical, personnel, and security records from sex to gender
and add "Other" option (they currently display "plural" even for
agendered species like ethereals)
* The -san honorific now applies to plural gender instead of just
neuter with the Chinese Cartoons admin secret (highly important)
I have never really played genetics and only tested the DNA code with
cloning and rudimentary transformations while still in a body (which
causes it to reference the old body's DNA, like with cloning). Please
let me know if there's a better way to do this and/or if this is apt
to create issues.
* Gives each quirk a medical record, cleans up subjects into patients.
* Update code/datums/traits/good.dm
adds a period I missed
Co-Authored-By: loser <loser@nonagon.host>
* Dumps medical quirk string into medical "Notes"
* Implements bgobandit's suggestions
* ~Comma, comma, comma, comma, comma, commits from Cobby~
Also I missed an A.
Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
* Initial overhaul work and some fixes.
Running into a bug with getting healthanalyzer variables to pass.
Signed-off-by: RaveRadbury <risforradbury@gmail.com>
* Fixes some typos, shortens a message
* Update pai.dm
* Prevents pAI OS from coming up in other windows.
* Moved around some camera stuff, trying to fix lost pAI zoom
* Fixes pAI zoom, adds camera flash
* PAI buttons grey out if they need software first
* Better greying out of buttons in PAI
* Removes unimplemented HUD stuff
* Should make pAI Host Scan require being held (like DNA check)
* Includes host scan as a greyed out hud
* Improved button loop
* Fixes pda icon off-set
* Fixed inconsistent indentation
* Replaces outdated and innacurate checks for scans
Thanks to Cobblestone for the help
* Refactor pAI hud button grey out
* Changes browse to browser
* cleans up the code, gets rid of an error
* Removes indent from #undef
* Removes an unneeded text-align:right
GENETICS
The random hexadecimal rng game has been replaced with gene sequencing from goon.
Adds mutation activators and mutators
You can now store mutations
Everyone now has their own set of unique mutations
Limited mutations per person to 8 (including one always being monkey)
Adds race specific mutations (See fire breathing for lizads)
You can inspect discovered mutations, undiscovered mutations use an alias to recognize them by
Adds a sequence analyzer. Can be used to scan someones genes sequence. Useful for determing what mutations they can safely have and or collecting data for very difficult sequences
Adds mutation combining. It's currently only RADIOACTIVE + STRONG = HULK (So yes you will now need 2 mutations for to get hulk)
Adds several other mutations. Telepathy, firebreath, glowy, radioactive and strength
cl Time-Green
add: Goon genetics!
add: More mutations! Fire breath for lizards! Radioactive! Telepathy! Glowy! Strength, though its cosmetic and should be combined with radioactivity instead! Fiery sweat!
add: Adds void magnet mutation by @tralezab !
/cl
* Photography Update
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Photos broke, retrying
* Persistence stuff
* I'm almost done I promise!
* Persistence mostly working, compile, etc etc
* Persistence mostly working, compile, etc etc
* Remove something really not needed from the PR
* Prevents duplication
* default to off
* removes check tick
* increase slots in albums to 21
* Allows for singular loading
* Update camera_image_capturing.dm
* Addresses review
* Anturk
* Update camera.dm
* Update misc.dm
* Update datum.dm
* Update camera.dm
* Argument to limit excess icon work
* 50% less icon for your icon
* 75% less icon for your icon
* Correction
* statics the list, tweaks a default arg
* Cardinal argument list
* correct GLOB name
* Adds logging crew manifest to seperate file
* Coding blind
* i can spel words
* Not everyone in the lobby please.
* Proper header
* Fix
* Better format
* Configuration datum refactor
* More WIP
* New easier on the eyes format
* More WIP
* Finished config.txt
* Fucktons more WIP
* The end of conversion draws near...
* Add all this shit
* Done converting entries finally
* Hunting down compile errors
* More WIP
* MORE CONVERSIONS
* More WIP
* More WIP
* Oh shit only 90 errors this time!
* IT COMPILES!!!
* Fixes world start runtimes
* first step to fixing a potential problem is identifying it
* woops
* kk
* mso is already doing this kek
* yeah lets do that too.
* replicated code
* wups
* wups
* better
* gibe the merge b0ss
* cyberboss
* Update dummy.dm
* Add the system for managed global variables
* Travis ban old globals
* So you CAN inline proccall, that's neat
* Fix that
* master.dm
* Remove the hack procs
* Move InitGlobals to the proper spot
* configuration.dm
* Fix the missing pre-slash
* clockcult.dm
* This is probably for the best
* Doy
* Fix shit
* Rest of the DEFINES tree
* Fix
* Use global. for access
* Update find_references_in_globals
Always hated that proc
Whoever made it must've bee a r e a l idiot...
* __HELPERS tree
* Move global initialization to master.
Fix the declaration
* database.dm
* Dat newline
* I said DECLARATIVE order!
* Here's something you can chew on @Iamgoofball
* game_modes.dm
* Fix this
* genetics.dm
* flavor_misc.dm
* More stuff
* Do it mso's way. Keep the controllers as global
* Make master actually see it
* Fix
* Finish _globalvars/lists
* Finish the rest of the _globalvars tree
* This is weird
* Migrate the controllers
* SLOTH -> GLOB
* Lighting globals
* round_start_time -> ticker
* PAI card list -> pai SS
* record_id_num -> static
* Diseases list -> SSdisease
* More disease globals to the SS
* More disease stuff
* Emote list
* Better and better
* Bluh
* So much stuff
* Ahh
* Wires
* dview
* station_areas
* Teleportlocs
* blood_splatter_icons
* Stuff and such
* More stuff
* RAD IO
* More stuff and such
* Blob shit
* Changeling stuff
* Add "Balance" to changelogs
* Balance for changelog compiler + Auto Tagging
* Update the PR template
* hivemind_bank
* Bip
* sacrificed
* Good shit
* Better define
* More cult shit
* Devil shit
* Gang shit
* > borers
Fix shit
* Rename the define
* Nuke
* Objectives
* Sandbox
* Multiverse sword
* Announce systems
* Stuff and such
* TC con
* Airlock
* doppllllerrrrrr
* holopads
* Shut up byond you inconsistent fuck
* Sneaky fuck
* Burp
* Bip
* Fixnshit
* Port without regard
* askdlfjs;
* asdfjasoidojfi
* Protected globals and more
* SO MANY
* ajsimkvahsaoisd
* akfdsiaopwimfeoiwafaw
* gsdfigjosidjfgiosdg
* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!
* facerolll
* ASDFASDFASDF
* Removes the unused parts of dmm_suite
* WIP
* Fix quote
* asdfjauwfnkjs
* afwlunhskjfda
* asfjlaiwuefhaf
* SO CLOSE
* wwwweeeeeewwwww
* agdgmoewranwg
* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?
* Fix syntax errors
* 100 errors
* Another 100
* So many...
* Ugh
* More shit
* kilme
* Stuuuuuufffff
* ajrgmrlshio;djfa;sdkl
* jkbhkhjbmjvjmh
* soi soi soi
* butt
* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING
* lllllllllllllllllllllllllllllllllllllllllll
* afsdijfiawhnflnjhnwsdfs
* yugykihlugk,kj
* time to go
* STUFFF!!!
* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!
* ngoaijdjlfkamsdlkf
* Break time
* aufjsdklfalsjfi
* CONTROL KAY AND PRAY
* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* Goteem
* Fix testing mode
* This does not belong in this PR
* Convert it to a controller
* Eh, fuck this option
* Revert controllerization Ill do it some other time
* Fix
* Working controllerization
* FOR THE LOVE OF CHRIST PROTECT THE LOGS
* Protect admins and deadmins
* Use the inbuilt proc
* Mob Initialization
* new_player Repath
* Fix the dme
* Fix the shit
* Fix a loc
* Fix another loc
* But, in my haste, I forgot the cola!
* Another loc
* ANOTHER LOC
* Further docs
* Where'd that s come from
* Fix shit
* Better
* Fixes regenerate organs runtime on simple animals
* Status display initialize
* Security records runtime (this code is bad)
* Moves record removal to destroy
* Revert "Until I figure out why random keys aren't being transferred"
* Fixes cyborgs not getting their key at roundstart
* Fixes mimes not getting the prefs name
* Fixes clowns not getting prefs names
* Sets the round start timer when it actually starts
* Remove fluff CHECK_TICKs
* Moves siliconization to the jobs module
* Yeah whatever
* Fixes AIization
* HNNNNGHHHH WHY IS THIS UP HERE?
* Fix cyborgs not linking to AI
* Fixes roundstart graphical lag
* Fixes manifests
* >Expecting searching lists to be fast
* Here's where they needed flushing
* THE DATACORE IS ANNOYING REEE
* <Commit name>
* Re-making the branch and PR of demon. See #15118 for the old PR
* Adds toy demonologist to arcade machine reward list.
* Implemented two suggestions: Pitchfork now has a demonic subtype, to potentially give botanists a normal pitchfork.
Suiciding with signed contract now uses forcesay instead of say.
* Fixes compile errors.
Re factors contracts to be subtypes rather than datums. <--- incomplete, still need to summon them appropriately.
* buffed infernal power contract to give passive healing
Nerfed magic power contract to not give robeless MM
* Fixes compile errors
* Corrects orientation of true demon sprite
* Begins work on the sNPC for the true demon/ arch-demon
* Added funeral garment sprites. These will be used in banishment rituals (hopefully)
* Stashing my work so I can move to another computer.
Re-working the true-demon, it will be a carbon rather than a simple mob.
* Revert "Stashing my work so I can move to another computer."
This reverts commit e8b1e032997b7e17af4ad8630bf21d3620195c4e.
* Git exploded for me, so I have to make a new branch with EVERYTHING. sorry.
* Fixes compile error
* Ghosts can now click on an arch demon to become a slaughter demon
* Begins to convert demons into a carbon rather than simple mob.
* Demons now resurrect if not banished.
* Beepsky now properly tells security chat about the level 666 threat.
* Contracts now work again.
* old spells now get removed properly.
* adding pitchfork sprites
* Adds hud for the true-demon. Not functional.
* Fixes another error in the demon hud. Still broken.
* Demons are no longer immortal, demon huds work properly now. (it's barebones, but it works.)
* Fixes the "Have mortals sign at least # contracts of TYPE" objective
* Fixed typo in banishlore() and updated wrath/envy sintouch objectives.
* Adds huds for demons/sintouched/soulless, however they are currently unused.
* Updates the demon's hud to work with the recent hud changes.
* Cleaned up infernal jaunt, it works a lot better now and is less buggy.
* Revival contracts now actually take your soul.
* Fixes#16513
* Replaces the infinite slaughter demons with infinite imps. Sprites for imps are still needed.
* Adds sprite for imps. It's a redder, smaller slaughter demon.
* Fixes lack of icon for pitchforks
* Gives summon wealth a more appropriate icon.
* Fixes small part I forgot to merge.
* Fixes a few bugs with demonic resurrection. It's still very buggy.
* Derp, my bad, I didn't mean to admin myself on the main server.
* Fixes edge case of demonic resurrection failing. Debraining the demon is NOT supposed to be an alternative for the banishment ritual.
* Also did not mean to change this config file.
* Fixes another error in type 1 demonic resurrection. It works properly now.
* Updates employment contract text.
* Fixes type 2 resurrections.
Demonic contracts are once again permanently on fire.
* Replaces toy demonologist with toy demonomicon. It still works the same, just different icon/name.
* Adds demonomicon and employment cabinet to box/meta/dream/efficiency.
I could not add it to mini/bird due to conflicts.
* Edits ministation and BirdStation to have demonomicons and employment cabinets.
* Fixes spelling error
* Adds burial garments to maps.
* Update photocopier.dm
Fixes the span when inserting items into photocopier
* Fixes disrupt_spells proc
* Makes a lot of changes as reccomended by Remie.
* Fixes a compile error.
* Updates the lawify/loreify to be lists. Does not compile.
* Fixes compile errors.
* Arch demons no longer regress upon death.
Speaking a demon's truename gives the demon the opportunity to teleport to you.
Makes demonomicon not care about capitalization.
* Fixes startup error. Demonic summoning now works. It's very simple, just say their true name.
* Demons now have a tongue. True demon bodies are deleted upon regression.
* Demons can now be punched.
Demons can no longer resist a fire out, since it does nothing to them.
* true demons show up in player panel. Hellfire works again.
* Prepares for commit 16940
* Demons are now known as devils.
Still needs testing.
* Oops, didn't commit everything last commit.
* Finishes converting demons to devils.
* Fixes speech for lizards/flymen when they speak a demon's name.
* Update tips.txt
* Changes variable from static to global as per Remie's suggestion.
I disagree with Remie's assessment, as a list that will never change, even between games, seems like it should be static.
* Removes devil summoning. Hopefully, I'll be able to eventually find a way to implement it satisfactorily, but for now, I'll leave it out.
* Removes carriage returns
* Combined modified icon files
* Fixes#17184
* Imps no longer show up in the end round report. This is because there can EASILY be 100+ imps if the crew is well armed.
Non-employment filing cabinets no longer take 30 sec to wrench/unwrench.
* The lawyer can actually buy souls back now. Oops.
* Fixes true/arch devil spritesheet to have correct sprite names.
* Relocates Box's employment cabinet to Law office.
* De-devil-ing someone now removes the devilinfo.
De-devil-ing now returns an error when used on true and arch devils
* Re-factors whiteness code for jumpsuits.
* Merges icons, reverts failed merge of map
* Merges map with CAS decks
* Fixes copying employment contracts
* Derp, fixes compile error.
* Replaces antaghud with customizable vision range for knowledge boon.
* Prevents a runtime if devil is gibbed while ascending.
* Neatens contract code, and removes excess variable from humans.
* Fixes compile errors
* Organizes weakness code slightly. Adds ability for a species override on weakness. (Make flypeople take 2x damage from flyswatters for example)
* Removes sixteen erroneous characters from the codebase.
* Removes trailing return
* Makes typeless for loops, removes a runtime, and removes unhelpful comments.
Fixes NOCLONE and CLUMSY being in both disabilities and mutations. they're now only disabilities.
Fixes minttoxin not gibbing people with the fat disabilities.
Fixes some runtimes, replacing usr by user in some places.
Fixes mutation overlays being removed when updating overlays.
Remove the now unused mob/var/list/mutations and human/var/blood_type
Fixed some formatting in preferences.dm
Removing bar_suit icon in uniforms.dmi because it's identical to "barman"
Replaced instances of "ba_suit" and "bar_suit" with "barman" (so that the bartender uniform icon names follow the same pattern as other job uniforms ("chef", "captain", "hos", ...)
Random lizard bodies will finally have color!
Pushes features almost all the way to the DNA side of thing, the mob side is only needed during character creation.
Note that changes to the save file will invoke a one time per character runtime for legacy characters as the save file purges mutant_color, this is as far as I can tell harmless, has no effect on the player, and is self correcting.
Instances where the game would give special treatment to MODE players will instead check to see if a player's assigned_role (job) matches their special_role (antag status). All antags that start off station (as well as ninjas for some weird reason) were affected.
Fixes#8743