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.
Stopped IPCs from being able to see without optics installed.
Made Industrial Frames actually pressure-proof, which allows them to use suit coolers on their back.
(Apologies for accidentally including some old commits. They've already been merged, anyway, so I hope it's not too much trouble.)
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
changes:
Fixes PDA manifest.
Fixed some bad turfs on the outpost.
Very slightly sped up lighting initialization.
Fixed mine turfs bordering on space turfs having a bad edge.
Possibly sped up asteroid gen slightly.
-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
changes:
Flashlights now default to LIGHT_WIDE directional lighting.
Glowsticks, Lamps, Flares, and Slime Cores use LIGHT_OMNI.
Maglights use LIGHT_NARROW.
Heavy-duty flashlights use LIGHT_SEMI.
EVA suits default to LIGHT_WIDE.
Lanterns use LIGHT_OMNI, as well as now having a more appropriate light color.
Floodlights use LIGHT_WIDE, as well as having a more appropriate light color.
Synthetics default to LIGHT_WIDE. (including drones)
Added some predefined light_wedge values to the lighting defines file.
Fixed some bad angles that screwed up north/south lights in some cases.
-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
Tweaks diona values on all lights, and range/power on a couple
Also adds a slightly dimmer sprite for tube light fixtures that they switch to during night mode. To reduce the incongruity from having a bright tube putting out very little light
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.
This PR simplifies the lighting update system (removes update_type) and instead makes the lighting system decide which update method to use based on server load.
Instant updates are used during low-load, scheduled during high.
Also removes: update_lights_now() (redundant), diff_light() (unused).
-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"
Autosync the local warrants with the datacore on opening the device
Please describe the intent of your changes in a clear fashion.
Please make sure that, in the case of icon or mapping changes, you include images of these changes in the PR's description.
-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
The downloader and the file manager no longer come default on any device.
A client enrollment app comes now with every console
The user has to select weather the device is a private or company device and select a software preset if its a work console
Work devices are locked down to a specific set of programs
Private devices get the downloader and the file manager to install programs as usual.
Threw out the backup of the old-old camera monitor.
Made software presets a generic thing that are not dependant on the form factor of a device.
Ported holowarrants from bay
Ported wall mounted consoles from bay
Ported various computer fixes from bay
Vending machines spawn now with the holowarrant "client"
Mapping changes:
CE and HoS dont get a modular computer with command preset (they did not have that before bay merge, so why should they now)
Added a modular computer with command preset to the head of staff briefing room
Replaced the camera monitoring console in the Engine Control room with a modular computer
Replaced the cam monitor in the CE´s office with a wall mounted console
Switched places of the bar sink and console
Replaced the consoles with obj/item consoles
Mapped in the ERT and Merc Console (Merc Shuttle, ERT Area)
Fixed the "border" at the heisters base
Also waiting for CCIA on a design for the warrants.
But that can be changed with a follow up pull
- 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