Port of Baystation12/Baystation12#13264
Large PR to put into Master, but the bug is really annoying and since it affect a traitor item, an often used one, I'll take the risk.
Fixes#1956
Fixes explosives implants and lawgiver not working.
The Kneebreaker Hammer should no longer do hilarious amounts of damage should you find a way to make it go through the air faster than it would if you threw it.
Well, no more damage than it would if you applied such a thing to any other item.
This PR contains bugfixes for:
Drones being unable to matter-decompile burnt matches (#717). Burnt matches will be decompiled into a small amount of wood.
Ghosts triggering infrared emitters (#644). Added a check whether the movable passing through the laser beam is actually "visible".
Reagent transfer messages showing up when clicking on chem implant cases, even when the syringe is empty (#704). Added a check whether reagents have actually been transferred. The displayed message will now also display the actual amount transferred. Removed spawn(5)-delay to prevent click-stacking.
Limb relocation messages not showing up for bystanders (#778).
-fix #2011
-fix attacking people with cult books having no delay
-nerf frag grenades a bit
-fix #1988 but this may end allowing you to hit people if you use the wrong tool, but, however will make things far easier for borgs or people doing surgery
Trying to work off some of the older bugs on the issues list:
Fix faxmachine getting stuck on "0 seconds remaining". There may be a process scheduler issue which causes a long polling interval for the faxmachine's process()-method.
Replace newline in crew record notes with <BR> when generating the records in the filing cabinets.
Surround crew record notes with "preformatted text" HTML tags on PDA / pAI screens.
When constructing protolathes or circuit imprinters, transfer the reagents contained in the beakers to internal reagent container upon completion.
Fix suspension field generator not clearing the qdel'd suspension_field reference. This fixes being unable to unwrench the generator, too.
Fix wallet sprite still showing an empty wallet when inserting a guest pass.
-fix lunchboxes being borked
-tweaks somethings in the wallet
-fix the locker item and add it to the custom loadout
-adds check to stop mouse from hanging people
-add reflection and parry to the wizard rune sword
-tweaks and add more things to the custom loadout
-remove the linebin and thermals from cargo
-add exosuit paint kits and some other things to cargo spawn
-re-add the non slip flag to skrells
- Fixes#1890
-adds more hats
-beastmen botanists now get some snowflake gloves
-unathi are now poisoned by alcohol, at jackboot's request
-fix smacking people against toilets having no delay
-fix some visible message issues and wrong date in the sink and shower
-removed being able to select bst gear using chameleon clothing
-fix some grammer
-fix vaurca voidsuits having an outdated species
In this PR:
Destroy() fixes backported from PR #1783.
JaniPDA fixes & improvements.
Chickens no longer consume their own eggs.
Language adding in setup is now 100% more sane.
Chemical dispensers now actually check that the user is still alive before renaming.
Ghosts are now marked as non-simulated atoms.
Non-simulated atoms no longer trigger proximity listeners.
Vendors no longer accept synthetic tools as stocking options.
Fixes#812.
Fixes#1877, Fixes#1929.
Fixes#1930.
Fixes#1152, Fixes#1917.
Fixes#1902.
Fixes#1165.
changes:
Added an abstract-machinery helper type for interacting with power systems without duplicating power code.
Changed intercoms to use abstract machines to handle power state changes instead of polling with process().
Hardhat lights are now directional (LIGHT_WIDE)
Fixes#1922.
changes:
bugfix: "Fixed an issue where some objects could not be deconstructed with RnD."
bugfix: "Helmet lights now actually display the powered-on sprite."
bugfix: "Cats on heads no longer magically turn invisible."
bugfix: "Cyborgs' portable destructive analyzer can no longer steal intercoms or the captain's safe."
imageadd: "Duffle (duffel?) bags now have in-hand sprites."
Fixes#1158Fixes#1662
Fixes#1790Fixes#1791
Fixes a number of issues with robot sprites, chem master machine, and surgery steps
The issue with borg sprites was caused by duplicate calls to ..()
Ive standardised robot module parent calls to the top of the function
Fixed the chemmaster not depositing pills in bottles properly. I added a new add_to_storage proc to storage.dm which is just a simple, safe means of putting stuff in stuff. it handles the checking.
Fixed some issues with surgery. A few surgery steps had incorrect "open" var ranges defined which was causing organ repair surgery to be interfered with
Also removed screwdriver from the list of bone mending tools, and added duct tape instead as the ghetto alternative. And allowed energyswords + chainswords to be used for cutting open ribs. theyre already useable for amputation
Fixed an incorrect return var for surgery that was making surgeons able to attack their patients on help intent. Shouldnt happen anymore
And also fixed the experimental welder being un-makeable at the protolathe.
Energy swords, shields, and ninja blades can now deflect projectiles.
Energy swords have a fairly moderate chance of reflecting energy weapons.
Energy shields have a much higher chance of reflecting energy weapons.
The ninja blade has the highest chance of reflecting energy weapons.
Energy sword and ninja blade can only effectively reflect shots to the groin, chest, and head.
Energy shield has full body coverage.
Energy sword has less "durability" than shield and blade (Can withstand less shots before shutting off.)
Neither sword, shield, nor blade can deflect shots to the back. Only the ablative vest provides full coverage.
Probably some other stuff I'm forgetting.
devices and tools.dm ~Advanced pinpointer added
implant.dm ~loyalty implants melt when EMP'd
nuclear_bomb.dm ~ code goes to delta when activated
microwave.dm ~ Fixes#1668
lockbox.dm ~ medal box added
exodus-1.dmm ~ medal box added
storage.dmi ~ medal box icon added
advanced pin pointer was 25 but after talking to some people they said 15 is better, I don't know though
-fix magic missiles not working
-corrupt form should not strip the wizard, should last longer and the fully upgraded form was buffed
-heads of staff, except implanted ones, can be converted to rev now
-cultists gets the cult language
-loyalty implants will stop rev convertion
-probably fixed ai and cyborgs being selected as cultists and getting access to aooc
- Fixes#1777
changes:
Removed shim for old spark system.
Converted all calls to old spark system with calls to new one.
Processor-based effects are no longer pooled, as it had minimal performance impact and was breaking things.
Tweaked some visible_messages for rogue drones.
PB effects' handling of location is now done at the /datum/effect_system level.
Ports the newest bay wizard version, with some additions and changes.
General changes:
-ported the newest bay wizard
-wizards can select some school of magic, which also changes their spell selection as whole.
-added several new spells, like raise dead, contracts that bind the person with the wizard, and more.
-added wands, limited sources of certain types of effects/spell, also with their own bad effects for non wizards
-changed the wizard checks to a faction check instead of a mind check
-fixed wizards without certain slots due to race being fucked over due to it
-added new artifacts
-balanced some spells like the emp
-added a lot of new sounds to spell, mostly from tg
-remove horse mask from spell selection, also, you can melt the mask with acid now
-wizard's spell are now displayed at round end like traitors and what they did buy
-also fixes vaurca, and vox, antags spawning without a mask by default
Adds a new process-based effects system with the goal of reducing insane lag from sparks.
Currently only supports sparks, but should be easily extendable to other types of effects.
Also fixes a bug with airlocks where the light from bolts wasn't updating.
Refactors bears slightly to reduce duplicated code & pointless spark object creation and destruction.
Lighting profiler will now log /turf locations & names correctly.
Doors will no longer trigger way more visibility checks than they need to.
-ports bay newest loadout system, which is pretty much a tab of their own, with different sections instead of a single list
-adds code that allows for several tweaks of custom loadout, like color, item path and contents
-adds dumb lunchboxes that can be filled with some food selection
-adds the option to select pre-filled vacuum-flasks or flasks
-also tries to fix the issues with xeno gear again
This is it. The big one.
Risk: Very large. This modifies or rewrites several important systems.
Some things still need balancing, but that's probably better done if/when this hits dev.
changes:
New smooth lighting system.
Machinery split into three processes: machinery, powernet, pipenet Removed due to breakage. Refactored into multi-step process.
Mob process rewritten.
NanoUI process rewritten.
Objects process rewritten.
Tweaked color output of station lights.
Slime core lights now emit colored light.
Fixed light update frequency issue with fire alarms, hydroponics trays, and airlocks.
Increased light emission from bolted airlocks.
Miscellaneous performance improvements.
New datum pool implementation.
New lighting usage profiler.
Lighting system now tracks UV light, which is not visible to players.
Space now has a parallax effect.
Disabled Spin View verbs due to incompatibility with the new lighting system.
Disabled hallucination view spin due to incompatibility with the new lighting system.
Lighting system now initializes in the lobby before the round starts to reduce BoR deadtime.
Added UV light tracking to lighting engine; dionae now gain energy exclusively from UV light.
Added colored lighting to a few consoles that used default (white) light.
- Fixes#1630
-fix juggernauts breaking the shit out of door real fast
-fix trays having literaly no delay when smacking someone with one
- Fixes#1628
-changes the recipe of sbiten, because it makes literaly zero sense for it to use vodka instead of mead, also added a bottle of it, spritted by datberry
-fixed bottles spawning without a name and icons on the cargo spawn, the base objects for bottles are just empty bottles now
-fix missing eye tape on mob sprite
-remove the last bit of "you can't fire a gun on help intent"
-fix #1217
-fix being unable to put the tactical pistol into belts/holsters, also remove needless code from it
-fix the scout rifle not accepting other magazines
-fix the hardsuit nutriment being useless and just dealing minor toxin damage
-fix missing tactical masks and tapes from unathi and tajaran sprites
-fix tapes cuffs, blinders and etc not updating when equiped to said mob
-some extra tweaks to the hud code
- Fixes#1583
- Fixes#1031
-adds some checks for magboots
-reduces the hardness of marble
-finally adds a delay when attacking common mobs with weapons
-finally adds a delay of cult mobs attacking things, like machines
-fix the flash pistol having no flash rounds
-fully remove custom items gloves from spawning from cargo
-replace all the references of ahdomai and S'randarr with Adhomai and S'rendarr
-import a bay fixe to hud runtimes
-removes christmas pun pun
-replace the old appearance that the ccia used with the newest and most robust one
-do more changes on the ccia code at ccia request, also, removes all the red and blue shit from it
This should fix forks being broken as fuck and you able to eat from them forever. also, spoons aren't sharp anymore.
Also, this ports the baystation fix to neckgrabs always flooring people, and makes resisting out of grabs when you are weakened a bit more harder.
Fix the lack of delay when attacking a ninja nest
Carp now have a chance of staying after their event ends
Fixes#1489Fixes#1499
Grippers basically torn up and remade, i went down to the root and incorporated them into cyborg click and inventory code. This should make them resistant against future bugs.
Fixes all current known gripper bugs. Grippers work properly with all the stuff they should. Minor tweaks to borg modules.
In addition, i went and raided VG, TG, paradise and bay repositories, and ported all their best sprites that were suitable for us. VG station was the most lucrative by far, about 70% of the new ones came from there.
In short, dropped has been redefined from its old usage of "left an inventory slot" to now mean "left a mob's direct contents" which is a far more useful definition programatically.
-fix missing bottles sprites
-fix some things related to custom items sprites and desc
-fix missing syndicate cyborg
-add delay to repairing robotic limbs and using first aid items
-allows sprints to be applied to hands and feet
-nanopaste can be used on robotic limbs, not only surgery
-fix #1512
-fix cargo maglocks beind centcom ones
-fix hardsuit vision restrictions not working as intended
-fix webbing being able to hold medium items
Was supposed to contain a fix for Vaurca surgery, but I decided to greenlight this ASAP once I detected a critical bug with how blobs worked.
Fixes#1509Fixes#1470Fixes#1506Fixes#1501Fixes#1484Fixes#1466
Also replaces a lot of Vaurca checks with isvaurca() so that Shells don't start doing weird shit.
Nerfs blob rollercoaster of death by making it so that blobs cannot interact with the mobs inside of other blobs.
Replaces blob's gibbing mobs with husking humans, merely killing borgs, and gibbing everything else.
Makes flamethrowers modestly more effective versus blobs - a consistent source of minor AoE damage.
Makes blobs more aesthetically pleasing.
Distinguishes the main core from the aux cores slightly more.
Fixes#1426Fixes#1427Fixes#1432Fixes#1461Fixes#1464Fixes#1471
Modifies BFG's to be more like actual BFG's.
Fixes Industrial IPCs being able to select Baseline IPC screens.
Fixes several baycode company names to fit ours in guns. Changes several of our guns to fit Baycode's naming paradigm.
Ports totally;
https://github.com/Baystation12/Baystation12/pull/12389/files
Baystation12#14599
Ports partially;
Baystation12#14216 (only blob-related functions)
All the failure messages have been replaced with failure events in industrial drills, that range from probably lethal to certainly lethal and in one case just moderately annoying.
-fix several wrong tech origin related to the guns
-tweak some sprites
-add x-ray laser rifle
-add new sprites for the suit cooling unit, with one when being worn on the back
-fixed suit cooling units not working when worn on the back and inside exosuits
changes:
imageadd: "Some AI displays now have special icons used when the AI is dead."
rscadd: "Added an admin verb that allows force-storaging of SSD AIs."
imageadd: "The AI's icon now changes when it is EMPed."
other:
Gave a name to borgs' internal radio so it doesn't show as "station bounced radio".
Disabled rejuvinate() for AIs as it didn't actually work anyways.
Fixed a potential bug where an engiborg's welder might've been able to be attached to things.
Added a code helper to check if an item is a borg tool.
changes:
bugfix: "Fixed formatting of forms when held up to a security camera."
spellcheck: "Fixed grammar error in IA and CE's headsets."
Fixes#1196.
Fixes#1358.
Fixes#1376.
Fixes#1347.
Replaces some BYOND text macros with spans.
Issues:
M'sai's preview image does not work (missing image).
Re-adds IPC APC feeding
Removes more of the horror that is type paths in text strings when they don't have to be there :ree:
Fix a bunch of lore blurbs
SQL saving is fixededed
Mark-up REGEX now requires whitespace or line ending/starts between tokens. It doesn't grab tokens surrounded by non-whitespace characters.
Updated the server greeting to only updated saved hashes if a user actively clicks on a tab.
C4 now forces old system for itself, due to raisins.
Admin verb to toggle between global default explosion type. One round only. Requires R_DEBUG or R_SERVER, is hideable.
Changes air alarms to use a bit less snowflake code per alarm type.
Fixes atmos/engineering/RD being unable to unlock the Server Room air alarm.
Minor air alarm message changes.
Adds descriptions to a few objects that lacked them.
Breaker boxes now use <span> tags instead of text macros.
Breaker boxes' description now works correctly.
-fixed some mapping issues with the central command level, such as wrong windows, missing playing cards and messed up health scanners
-added a module computer for the cccia at central command
-added frag grenades to the traitor uplink
-fixes #1328
-fixed some missings computer sprites and the fucked up account terminal
Fire extinguishers can no longer be filled with blank units.
You can no longer spam buy announcements with the traitor uplink services tab (Thank god) http://imgur.com/a/hqSdS
CE hardsuit now a bit more fire resistant. RD hardsuit now has a good deal of EMP resistance, but nerfed the protection stats a bit. (makes since because the RD works with artifacts that can EMP, right?)
Adds Shells. Adds tags. Adds IPC subspecies. Adds HK-47's. Does not add IPC construction.
Beyond the obvious review of shells, the exact stats of the IPC subspecies need review. They were largely an afterthought, and quickly overshadowed by the shell project.
Breeders now need to breathe again.
Sanity check for any gun that requires charging has been added. It's not been added to the master special_check and firing procs yet because weapons that need to charge remain fairly edge case.