**Modular laser changes**
- tl:dr Shooting mod laser at a mob counts up an improvement potential
variable, which when the gun is disassembled, gets spread across the
components.
- When the components are repaired, by someone with high skill, there is
a chance to increase a variable, such as damage, shot count, accuracy.
- Players give the biggest increase, followed by non-player humans
(protohumans & mechs fall in this catagory), then simple mobs and
finally monkeys. Non combat modlasers improve slowly when used for their
intended task (betarays slowly tick up when shooting hydroponics bays)
The philosophy for these changes is that research should continue to be
involved with the equipment they give out.
It should also be difficult (but not impossible) for research to upgrade
their weapons without support from other departments.
Xenobio slimes, protohumans, medical help to keep the protohuman alive
while you shoot it, security help to actually use the guns on real
targets (this gives the biggest increases).
The more powerful a weapon is the harder it is to upgrade, as it'll kill
it's targets quicker. The more upgraded a weapon is the more difficult
it is to upgrade further, improvement potential will get wasted on
components that have already hit their cap.
On their own, by the time the 5 monkeys research start with are dead,
it's possible for a max skill scientist to improve one gun's worth of
components by ~25%.
The weapons research can now make at roundstart (with max tech) are
significantly worse than what spawns in the armoury.
The weapons research can make with gold, silver, uranium and phoron are
equal to what spawns in the armoury.
The weapons research can make with diamonds are better than what spawns
in the armoury.
Major nerfs to heat vents, auxiliary capacitor and capacitor overcharge,
these were the problem children.
It is now impossible to make a weapon that does not take damage through
use. Safe designs will only break with heavy use, by people who don't
bring them back to research for repairs.
Powerful designs break quickly and need repeated repairs.
Adds two side grade capacitors that can be made at roundstart (with max
tech), one higher damage and fewer shots. One lower damage and more
shots.
High skill characters get much more information when examining modular
lasers and a chance to throw the gun away before it explodes.
Adds some defines to help balance these changes:
Improvement cap (the total percent a component can increase) Currently
100%.
Increase & Decrease Cap, how much an individual variable can be
increased or decreased. Currently 2x and 0.2x.
Improvement multiplier, multiplies all improvement gains. Currently 1x.
**Firing Pin fixes & changes**
Fixed ID locked firing pins and adds them to R&D.
Adds the inner research department to the firing range locked pins. This
is so xenobotanists, xenobiologists & xenoarchs can use the modular
lasers. Freeze rays for slimes, betarays for xenobotanists, laser
activation for artifacts for xenoarch.
It is still impossible for a scientist to make a weapon they can use
anywhere, but they can give them to security who can use them freely.
**Misc bug fixes**
The weapon analyzer UI now updates and only shows relevant statistics,
instead of displaying every variable even when they do nothing.
Replaces the buggy tesla zap with just electrocuting the holder.
Fixes a few broken visual messages.
Fixes the vermin modulator not killing anything, now it also works on
grems.
Fixes click delay on malfunction.
Fixes radiation damage numbers.
Fixes the temperature modulator.
Fixes the report printout showing the wrong numbers.
---------
Co-authored-by: Copilot <copilot@github.com>
This has zero reason to exist in our code base. We have no procs or
variables tied to this. I removed it to make future modifications
cleaner.
---------
Signed-off-by: Cody Brittain <1779662+Generalcamo@users.noreply.github.com>
Destroys a ton of sources of lag:
- /obj/machinery/biogenerator/interact and
/obj/machinery/computer/rdconsole/attack_hand
Both of these call REF(src) constantly on their UI update, which also
happens constantly. Death by a thousand cuts
- /obj/machinery/button/ignition/attack_hand and
/obj/machinery/button/switch/holosign/attack_hand
Sleeps rather than timers, iterating the entire machinery list rather
than just storing the IDs we need at roundstart
- /obj/machinery/telecomms/update_icon and /obj/machinery/meter/process
Calling overlay updates WAY TOO MUCH. UpdateOverlays is a significant
overhead for the server at this point and the two of these combined are
responsible for a little over 20% of updates. They now should only
update overlays when necessary rather than every tick.
- NEW! /obj/machinery/disposal/proc/update and
/obj/machinery/portable_atmospherics/hydroponics/update_icon
These two were also offenders, worse than telecomms but better than
meters. They have also been brought into line.
- /mob/living/carbon/slime
Hard-del'd if grinded into slime extract less than two minutes after
being "born". Fixed by adding TIMER_DELETE_ME flag.
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Readds ID resprites from #19522 that were removed in #20535.
Fixes ID cards improperly rotating in storage. The workaround is clunky
but functional. This is applied to all vertical IDs.
Fixes firing pins not turning vertical in storage.
These fixes were PR'd with the IDs due to the IDs requiring the fixes.
The IDs can be dropped for just the fixes if desired.
Image of changes in effect:
<details><summary>Details</summary>
<p>
<img width="264" height="92" alt="image"
src="https://github.com/user-attachments/assets/966d4350-e9f7-4eaf-bd87-3990b316197a"
/>
</p>
</details>
Fixes#19603Fixes#20558
- bugfix: "Fixes plant bags - now uses storage_slot system, along with
other bag subtypes."
- bugfix: "Borgs can interact with tables again."
- refactor: "Refactors make_exact_fit to be a binary variable."
- refactor: "Refactors storage items to use make_exact_fit instead of
arbitrary max_storage_space values."
- refactor: "Refactors storage items to use defines for storage space."
- bugfix: "Fixes monkey cube boxes having superfluous overlay."
- rscadd: "Updates the progress bar toggle message."
- qol: "Objects that rotated 90 degrees in storage no longer rotate in
storage slots."
<img width="732" alt="dreamseeker_qRVkIlYN78"
src="https://github.com/user-attachments/assets/1226ed22-52c1-4965-a1b4-2290e56a2ab3"
/>
I had to unironically bust out my pen and paper for this bullshit and
magnifying tool to actually check if things were pixel perfect.
- bugfix: "Fixes storage box alignment and storage space UI to use
better maths."
- qol: "Tweaks IDs, IDs and firing pins now rotate 90 degrees when in
storage for easier clickability."
- bugfix: "Fixes Item Tooltip toggle message."
- bugfix: "Fixes roundstart items in storage not showing item outlines."
Fixes#20529
---------
Signed-off-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
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.
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.
This adds code blue to the list of alert levels that allow wireless
firing pins to fire on lethal mode.
There's a cultural thing on Aurora where Code Red is never used, because
it stops the vote from being called. This means that during most high
intensity interactions, we stay on Code Blue, and the disruptor pistol
can't be used on lethal mode.
This simply adds code blue to the list of permissible codes for lethal.
---------
Signed-off-by: Crosarius <30341877+Crosarius@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* 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>
* Your unbeatable smile wrecks the media
We wanna know your secret, so mysterious
* Even the things she lacks end up in her area
Such a perfect liar, you are
* Miss ingenious, godly idol!
(You're my savior, you're my saving grace)
* So, what'd you eat today?
What's your favorite book?
* And if you wanna go to play, where are you gonna go?
I haven't eaten at all
* That's a secret
No matter what you ask
* She's elusive, evasive
* So nonchalant
Yet still shining bright;
* Her secret: out of sight, as if visible, has the taste of honey
There is none, none, none of this
* And also none, none, none of that
What type of guy do you like?
* Who is your partner?
Come on, answer me
* "I don't understand what falling in love with someone else is like" (Hey! Hey!)
I cannot tell what is true from what is a lie (Hey! Hey! Hey! Hey!)
* And yet again, someone falls for such words (Hey! Hey! Hey! Hey!)
Gently lulled into love
* Drawing everyone's eyes
You are the perfect, ultimate idol
* Never to appear again
A reincarnation of Venus
* With that smile, with that "I love you"
You captivate everyone
* Even if those eyes, those words, are false
They make up a perfect love (Ai)
* Yeah, yeah, that girl stands out, exceptional
We were extras from the beginning
* BS that acted as adornments for the star's leading role
Everything we've accomplished is thanks to her — no!
* How impudent
How could envy and jealousy not exist?
* examine
* This isn't some made-up drama for appearances
So I cannot forgive
* You're not perfect, I cannot forgive you
I cannot forgive myself
* I cannot accept any version of you other than the one stronger than everyone else
* Everybody trusts and worships
The very strongest, most invincible idol
* Weaknesses and whatnot are not to be found
Carrying the morning star within
* Showing any weakness is no good, no good (Hey! Hey!)
Don't let them see anything that they don't want to know (Hey! Hey! Hey! Hey!)
* Anything but being one-of-a-kind is a definite no, no (Hey! Hey! Hey! Hey!)
That is the real love (Hey!)
* can commune fixes
* can commune rename
* fix is psi blocked
* fixes agian
* My signature smile that fires up the media
The only secret that I shall keep is this:
* My career was built upon fake "I love you"s
This is love, in my own way
* Even the flowing sweats are beautiful Aqua
These eyelids that hid the Ruby within
* Sing, dance, flutter, I am Maria —
Right, lying is the most exquisite form of love
* I have never been loved by anyone
Nor have I loved anyone else
* That such lies of mine will become true someday
I trust in it
* Someday, surely, I will have it all in hand
I am such a greedy idol
* Because I wish to love everybody properly in a life-sized way
I shall lie today as well (Hey! Hey! Hey! Hey!)
* a
* b
* c
* d
* And yet, still, (Hey! Hey!)
I have been unable to tell you, and you, alone (Hey! Hey! Hey! Hey!)
* jesus christ
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/game/gamemodes/technomancer/spell_objs.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human_helpers.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/organs/organ_external.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/assay.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/command.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/emotional_suggestion.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/psi_search.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/singularity.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/time_stop.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* cl update
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Your unbeatable smile wrecks the media
We wanna know your secret, so mysterious
* Even the things she lacks end up in her area
Such a perfect liar, you are
* Miss ingenious, godly idol!
(You're my savior, you're my saving grace)
* So, what'd you eat today?
What's your favorite book?
* And if you wanna go to play, where are you gonna go?
I haven't eaten at all
* That's a secret
No matter what you ask
* She's elusive, evasive
* So nonchalant
Yet still shining bright;
* Her secret: out of sight, as if visible, has the taste of honey
There is none, none, none of this
* And also none, none, none of that
What type of guy do you like?
* Who is your partner?
Come on, answer me
* "I don't understand what falling in love with someone else is like" (Hey! Hey!)
I cannot tell what is true from what is a lie (Hey! Hey! Hey! Hey!)
* And yet again, someone falls for such words (Hey! Hey! Hey! Hey!)
Gently lulled into love
* Drawing everyone's eyes
You are the perfect, ultimate idol
* Never to appear again
A reincarnation of Venus
* With that smile, with that "I love you"
You captivate everyone
* Even if those eyes, those words, are false
They make up a perfect love (Ai)
* Yeah, yeah, that girl stands out, exceptional
We were extras from the beginning
* BS that acted as adornments for the star's leading role
Everything we've accomplished is thanks to her — no!
* How impudent
How could envy and jealousy not exist?
* examine
* This isn't some made-up drama for appearances
So I cannot forgive
* You're not perfect, I cannot forgive you
I cannot forgive myself
* I cannot accept any version of you other than the one stronger than everyone else
* Everybody trusts and worships
The very strongest, most invincible idol
* Weaknesses and whatnot are not to be found
Carrying the morning star within
* Showing any weakness is no good, no good (Hey! Hey!)
Don't let them see anything that they don't want to know (Hey! Hey! Hey! Hey!)
* Anything but being one-of-a-kind is a definite no, no (Hey! Hey! Hey! Hey!)
That is the real love (Hey!)
* can commune fixes
* can commune rename
* fix is psi blocked
* fixes agian
* My signature smile that fires up the media
The only secret that I shall keep is this:
* My career was built upon fake "I love you"s
This is love, in my own way
* Even the flowing sweats are beautiful Aqua
These eyelids that hid the Ruby within
* Sing, dance, flutter, I am Maria —
Right, lying is the most exquisite form of love
* I have never been loved by anyone
Nor have I loved anyone else
* That such lies of mine will become true someday
I trust in it
* Someday, surely, I will have it all in hand
I am such a greedy idol
* Because I wish to love everybody properly in a life-sized way
I shall lie today as well (Hey! Hey! Hey! Hey!)
* a
* b
* c
* d
* And yet, still, (Hey! Hey!)
I have been unable to tell you, and you, alone (Hey! Hey! Hey! Hey!)
* jesus christ
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/game/gamemodes/technomancer/spell_objs.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human_helpers.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/organs/organ_external.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/assay.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/command.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/emotional_suggestion.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/psi_search.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/singularity.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/time_stop.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* cl update
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
-adds weaponry permission access, that is used by the securitron to check if the person can use a weapon, added to all security roles, the head of personnel and the captain
-added a firing pin that checks for access
-fixed the ert id having access to things they should not
I'm going full steam ahead with this.
Adds firing pins/ Authentication mechanisms. these are needed to fire any specific weapon.
Weapons generally spawn with firing pins in them. or at least should. The exception to this is anything made in R&D - which needs to secure a firing pin from somewhere.
There's currently the following firing pins:
One that checks for a specific implant, EG a loyalty implant one.
One that always fails, and can replace other pins. (this one would likely be admin only. it's clown themed)
The Laser tag code got refactored to the pins. so each gun has a different pin. if you somehow got this pin, you could make it so you could only shoot a gun while wearing a laser tag vest, for example.
A Testing range pin, which only allows firing in specific areas - of which are mapped in currently.
A DNA locked one. and a subtype which will explode if someone else tries to use it.
the system's designed to be easy enough to add on to.
Feedback fourm is here: