- Xenos now have a "queen sense" which tracks the queen like a
pinpointer.
- Added WJ's custom sprites for all non-queen Xenos.
- Modded the alien type finder to support queen finding
This PR ports pockets (from Animus Green) and adds them to some clothing.
Shoes that support storing items now use pockets system.
Some hats have 1 small pocket.
Detective's hat spawns with a flask in it.
Clown's mask has a single tiny top-secret pocket. Honk!
This PR also includes two or three path fixes. It also fixes internal storages (pockets, storage implant) having less "max depth" than external ones.
Added dextrous guardians to the code, able to hold and use items and store a single item within themselves.
Dextrous guardians do low damage on punches, have medium damage resist, and recalling or leashing will force them to drop any items in their hands.
* Observers can auto-orbit meteors; space dust event
During a meteor shower, observers can automatically orbit
threatening meteors and watch them hit the station.
Added Major Space Dust event, which is a meteor shower
containing only space dust.
Reduced chance of RNG meteor event.
Fixes bug where meteors wouldn't move when spawned.
🆑
rscadd: If you are an observer, you can click on transition edges of a
Z-level in order to move as a mob would.
/🆑
Also removed some trailing returns.
I'm unhappy with the way revenants are right now, and my code for them is pretty unsatisfactory in comparison to what I know now. Although revenants will still fill the same role of just being spookier ghosts, they'll be a bit more passive - incapable, for instance, of giving diseases to people. The new revenants will be called umbras and will use vitae instead of essence.
Total change list:
Revenants have been renamed to umbras. Essence has been renamed to vitae. This may be temporary.
Umbra spawn events are now weighted higher and spawn an unoccupied umbra. Ghosts are alerted to the umbra's position and may interact with it to take control of it.
Umbras' health is not based on vitae but has a hard cap at 100.
Umbras have a passive vitae drain each tick, defaulting at 0.01. If the umbra runs out of vitae, they will die irrevocably. They also slowly regenerate health by doing this.
When an umbra dies, they leave behind umbral ashes that reform after one minute. They're difficult to see and can be scattered by activating them, although they also have high research levels if you're fast enough.
Harvesting vitae from critical targets no longer kills them. Harvesting a target in general prohibits them from being harvested until five minutes later, but they can be drained again after that.
EMPs revitalize umbras and give them hefty amounts of vitae due to their physical nature.
Umbras have four abilities: Toggle Nightvision, Discordant Whisper, Possess, and Thoughtsteal.
Toggle Nightvision is self-explanatory.
Discordant Whisper is identical to the original revenant's transmit.
Possess allows the umbra to slip into a human's body unnoticed. While in their body, umbras will slowly drain vitae from the human at a tiny rate - not enough to cause harm, but enough to induce adverse effects in the clueless human. These effects intensify over time and eventually lead to the umbra being forced out of their host.
Thoughtsteal paralyzes a living human for several seconds while the umbra steals their memories. After several seconds, the umbra copies the notes of the target's memories and turns invisible - the hapless victim is stunned for several seconds afterwards and can't be Thoughtstolen by the same umbra again. Umbras have an objective to steal the memories of 25% of the station's population.
Salt piles have been added, created by salt shaker or just by splashing salt. These piles will prevent an umbra from passing and reveal them briefly if they try.
Added priority overlays to atoms, which will not be removed when overlays are cut and will always remain on top when new overlays are added. This requires everyone to use add_overlay() and cut_overlays() instead of overlays += and overlays.Cut(). These procs are found in __HELPERS/icons.dm, and the priority overlay list is found in game/atoms.dm. Everything else is replacing deprecated overlay manipulation.
Numerous small fixes/changes/balances to devils.
Notable changes:
It now requires more souls to increase. It is now 3,7,12 souls, up from 3,6,9.
Devils now have extra rules, no coercing into signing contracts with violence, and no intentionally physically harming another devil.
Burial garment banishment now works on true devils. <--- Unreported issue, can I use that fix for the mergetoken?
Renamed all demon files to devil
Updated religious supplies to have burial garments.
Burial garments re-added to box/meta
Increased infernal fireball cooldown
Soulsellers can now use a pitchfork without being harmed.
Added new book crate, which includes a codex gigas to cargo.
- We no longer leave a blood trail if blood_volume is below a certain level which depends on the brute damage received. This way dragging a wounded player does have a bad effect.
- We no longer give humans a second reagents var containing blood, and we don't put exotic blood in the mob's reagents. Now we don't store any blood substance inside the mob, we only have a blood_volume var. When we draw blood with syringe we create the reagent that match the type (blood reagent, or an exotic blood reagent)
- can't draw blood from mob if it's low on blood, so we can't empty a mob of its blood entirely.
- Removed the blood type preference appearing in character setting.
- blood pack automatically show blood type, unless manually labeled.
- removed bloody_hands_mob human var and same name glove var.
- Some animals now have blood (pets, goat, cows)
- hitting and dragging mobs with actual blood in their veins leaves blood on you and a trail on the floor.
- probably other stuff that I'll mention in the PR.
🆑 coiax
rscadd: Spectral sword is now a point of interest for ghosts.
fix: Clicking the spectral sword action now orbits the sword, instead of
just teleporting to its location.
/🆑
Changed the notify_jump alert to notify_action, added three different
notification actions (jump, attack, orbit), modified notify_ghosts and
its callers appropriately.
Spectral sword now just counts the number of orbiting ghosts in the
turf, irregardless of what they're orbiting. Generally this'll be the
summation of orbiters of the mob, and orbiters of the sword.
Two mobs can no longer pull the same mob at the same time. Pulling someone break any other pull/grab from other mob on that person.
The grab item is gone entirely.
You can now only grab one mob at a time, instead of two (one for each hand).
Being aggressively grabbed or more now counts as being restrained (like handcuffed). A neck grab or more makes you lie down and prevents you from getting up until the grab is broken.
Fixes movement when moving with a grabbed person.
Fixes movement when moving a pulled person around you diagonally.
Fixes neckgrab moving the victim on your turf even if the turf is dense.
* Converts tablecrafting to datums
* Adds crafting.dm
Adds crafting.dm
* Fix merge conflicts
Fix merge conflicts
* Fixes dme
* Fixes returns
Fixes returns
* Only check hands and remove old paths
Only check hands and remove old paths
* Recipe fixes
Recipe fixes
* Removed action button
Removed action button
Added small ui button to inventory near the intent wheel
Removed debug
href_list is not longer /list
* Added adjucent checks
Added adjucent checks
* Snacks now get chems from parts
Snacks now get chems from parts
* Complex food fuckery fixed
Complex food fuckery fixed
* Fixes old recipe
Fixes old recipe
* Fix to infinite loops in reagent extraction
Fix to infinite loops in reagent extraction
It was finding old empty containers and tries to extract from them
* Fixes hands not checking
Fixes hands not checking
* Fixes reagents fucking up
Fixes reagents fucking up
* Even more reagent fuck ups fixed and comments
Even more reagent fuck ups fixed and comments
* Fixes all the shit i could find
Fixes all the shit i could find
* Removes debug and mechs
Removes debug and mechs
* Argument renaming
Argument renaming
* Fixes all argument names
Fixes all argument names
* Final fix of arguments
Final fix of arguments
* 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.