Commit Graph

1547 Commits

Author SHA1 Message Date
Wowzewow (Wezzy)
1ae6bb61ac Stack Inhand Sprites and Tile Tweaks (#21126)
- imageadd: "Updates stack inhand sprites, makes them use contained
sprites, and touches up the tile sprites to be more accurate."
2025-08-10 20:47:06 +00:00
Batrachophreno
c2f054fd81 DMdocs (#21103)
Progress on DMDocs. PRing progress so far so there's not one mega PR
later with 1500 affected files.

I want my goddamn highlight text on what all these goddamn procs goddamn
do goddamnit. >:(

No actual code change anywhere in this PR, only comments.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
2025-08-09 12:22:56 +00:00
Batrachophreno
d15abdac1f Grants Xenobotanists and Xenobiologists access to the Shuttles (#21065)
Permission given by Matt. Have fun y'all.

Did a little extra code refactoring in here while fixing things up to be
a bit more consistent. Xenoarchs also had access to the pilot room for
sensor readings etc, so gave the same to xenobots/xenobios.

However, while in here I got annoyed by the fact that while
ACCESS_INTREPID exists, the other shuttles all rely on per-job manual
overrides to their mapped objects to handle access control. Therefore, I
added ACCESS_SPARK, ACCESS_QUARK, and ACCESS_CANARY, and updated all the
associated jobs/objects to use them instead of a mishmash of bespoke
edits.

_(I would have preferred to use naming conventions like
ACCESS_SHUTTLE_EXPEDITION, ACCESS_SHUTTLE_MINING,
ACCESS_SHUTTLE_SCIENCE, ACCESS_SHUTTLE_INTERCEPTOR, but I was good and
used the in-game names in the code, as was existing convention.)_
2025-08-03 16:12:44 +00:00
Batrachophreno
f096b206a0 Atmos Alarm Control computer program search fix and UI refactor (#21056)
Scope creeped PR. Fixes a breaking bug in the Atmos Alarm Control
application introduced after areas-cleanup PR, but also refactors it
into a grid-based interface that actually allows you to reliably search
alarms by name, department, and deck # (possible now with all the area
metadata we have to play with).

Also does behind-the-scenes cleanup of alarm panel code in general, a
few area def problems, and some manually defined air alarm names on the
map.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
2025-08-01 22:41:34 +00:00
Batrachophreno
2840eac672 Grav Gen fix, zero-g inertial drift fix (throwing works again) (#21074)
Weird ephemeral behavior. Previous debugging of this never got anywhere
because for some reason, the gravgen var/list localareas would not
populate. Changing method suddenly made zero-g work perfectly: momentum
is back, throwing objects to move in the opposite direction works, etc.

Definitely one for test merge since I'm not sure WHY its working
perfectly again in local tests with this change.
2025-07-30 10:16:22 +00:00
Batrachophreno
0851144182 Area definitions cleanup (Horizon/Runtime) (#20914)
**Goals:**
1. Delete area definitions no longer used in any map or file.
2. Update area definitions such that everything used in mapping the
Horizon exists in 'maps\sccv_horizon\areas' with the parent
'area\horizon\'.
3. Reorganize/rename/restructure those Horizon area definitions to make
future mapping easier and code that hooks into area properties easier.
4. Present area names and blurbs in the status panel.

This PR only handles Horizon and Runtime areas, for digestibility/ease
of reviewing. Offsite areas for another PR.

Naming convention reference:
The /area/ 'name' variable no longer contains either 'Horizon' or the
Deck# of the area or its approx location on the ship. All Horizon areas
now have several new variables as metadata-- area names now need only be
strictly descriptive, and the appropriate constants used in the area
definition, and a new function generates the display name with
consistent formatting for us.

Detailed documentation to follow after any adjustments are made to
mappers' preferences.

This also adds area blurbs to most areas- if not bespoke, then general
department-wide blurbs to parents. I know feature creep always sucks,
but while some areas having pre-existing blurbs, the overwhelming
majority of areas don't, and while testing it was very distracting to
see them randomly appearing and disappearing. Most blurbs are pretty
basic but I feel are entirely presentable- more clever individual ones
can follow in a separate PR.
2025-07-25 19:16:33 +00:00
Batrachophreno
387cee9243 Object Examine Text Overhaul (#20923)
Extends and reworks how various extended information text (desc_info,
desc_build, desc_upgrades) are handled to make object interactions and
mechanics A.) much more clearly documented in-game and B.) much easier
to support from the back-end.

Almost certainly a candidate for test merge.

Assembly/Disassembly instructions are noticeably sporadic, largely due
to our current lack of a unified framework. That's a future thing I'd
like to attack so that it can be handled programmatically, but for now I
only targeted the biggest culprits as I came across them.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
2025-07-21 15:35:14 +00:00
Batrachophreno
714ca4f8f9 APC False Alarm Fix (#20915)
APC alarms screaming for some reason on live after adding an alarm to
try to catch failure_timer settings from electrical storms. Revert extra
alarming now, debug later!

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
2025-06-30 22:23:58 +00:00
Batrachophreno
c2a9041a8f New/Changed Events Tuning (#20888)
First round of tuning after the addition of new electrical storms,
changes in behavior, etc. Details in the changelogs, but apart from
general balancing of event weights and effects, this PR also expands the
description info on Telecomms machinery to communicate that you need to
use Nanopaste to repair them (which I don't think was documented in-game
anywhere), and also adds a stack of Nanopaste to the TComms vestibule to
facilitate repairs if no one is around to produce the stuff.

Also you can beat Telecomms machinery with a stick to start garbling
them now! Take that, Medical channel!

There will probably be another round of balancing after this to make
sure the events all feel and play maximally right/fun.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
2025-06-30 18:02:59 +00:00
Batrachophreno
27b5079066 Stock parts power usage and examine handling (#20892)
In preparation for future development, both A.) increased the power draw
of upgraded machines in more predictable ways and B.) reformated Examine
text output to handle displaying machines' upgradeable parts and what
they do in a more user-friendly way.

A.) is important because it opens the door to adding upgrade components
available for more machines.

B.) is important because not only do we need to communicate those sorts
of mechanics in a clean, clear, consistent way, but it also opens the
doors to being able to communicate more types of interaction mechanics
similarly well (such as assembly/disassembly tips).

Examples of new Examine boxes:
![Screenshot 2025-06-26
102050](https://github.com/user-attachments/assets/d7aa8b4c-b35f-4477-a1a2-b2846e92e06c)
![Screenshot 2025-06-26
102140](https://github.com/user-attachments/assets/0abb0a4c-a373-4427-af47-cadd192dfdc7)
![Screenshot 2025-06-26
102109](https://github.com/user-attachments/assets/886e4298-8a60-4cbb-be69-3de4cc8254d5)
![Screenshot 2025-06-26
102030](https://github.com/user-attachments/assets/5752da8c-b567-4337-94d4-b2ac2ca7ac36)

Note- while updating, made get_examine_text() also give Antagonism text
boxes to ghosts and storytellers, not just active Antags. This seemed
like a no-brainer thing but can be split into a separate PR if
requested.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
2025-06-30 18:02:57 +00:00
SleepyGemmy
5f9201fdf0 Transferred Typo Fixes (#20879)
this PR fixes transferred being spelled as "transfered".
2025-06-25 21:10:01 +00:00
Batrachophreno
4a63be9448 More Event Variations, Event Balance (#20813)
Some functional updates to events:
**Comms Blackouts:** Now has a variant (min. 6 pop,
engineering-weighted) which gives each machine a 10% chance to take a
little integrity damage. Additionally, Telecomms Processors now factor
their integrity damage into their ability to decompress messages, so
this alternative comms blackout might cause radio transmissions (either
global or for a given department) to start getting a little garbled- not
enough to genuinely impede comms, but enough to justify Engi to fix them
up.

**Prison Break:** Given how rarely we actually have people sitting
around in the prison waiting for breakouts over the course of a given
round, this event has been changed to be more akin to the existing
Containment events- the entire department (minus armory, nuke storage,
checkpoints, etc.) are at risk of lights blown, access issues, etc. Just
a little more variety added to the mix.

**Space Vines:** Minimum 4 pop to fire. Shouldn't matter much in the
grand scheme of things, just reduces annoyance factor for extremely
low-pop if they roll some vines that fuck them up. Will look into
refactoring that event so that the danger factor of the vines increases
with population, and remove the min pop requirement again.

**Drone Revolution:** Minimum 4 pop to fire. Again, shouldn't matter
much in the grand scheme of things but this highest tier event will
seriously fuck up anyone who latejoins and uses the maints to, say, help
set the ship up during low pop! No I'm not salty!

**Electrical Storm:** Refactored this and restored the Mundane and Major
variants. While we want this event to keep Engineers on their toes and
provide openings for people to break regs if they so wished, most of the
event is theater (lots of flickering lights now!) While the Mundane and
Moderate variants are mostly flavorful and will just give Engineers a
few excuses to visit different departments and RP with people, Major
events will be your 'all hands on deck' affairs (as Major events are
ought) and in very rare circumstances could even cascade into more
serious issues. Did a ton of unit testing on this and feel very good
about how each variant actually looks, will make any additional tweaks
if needed once we see how it plays with an actual population!

The Event Probabilities sheet was also very out of date, missing Comet
Expulsion, had the old Viral Outbreak, lots of old values, etc. Updated
all the events, and also updated the % formulas to factor in minimum
population- changing the 'Assumed Personnel' values at the top to a
level below the minimum population for a given event will now correctly
set its probability to 0%, making it clearer what actual odds are given
different pop levels.

I also don't think pop_needed was working correctly: various changes in
there to get it behaving.

Obv this PR grew in scope from outset and touches a small handful of
different things, so lmk anything to mix and match and change and drop.
!review
2025-06-22 18:09:11 +00:00
hazelrat
83bfc31aab Adds a stasis setting to hydroponics trays (#20842)
As title. The stasis setting can be enabled with a multitool if the lid
is down, and prevents the tray from processing - it can't die, but it
also can't grow. I've sprited a little overlay so you know which trays
are under stasis.

This is intended to give hydroponicists more levity with leaving
hydroponics without having to worry about their plants dying while
they're gone.


![image](https://github.com/user-attachments/assets/19358e75-221a-4f17-a0b3-2a8d07992f0d)

![image](https://github.com/user-attachments/assets/87fcb95a-6899-41ed-9109-3a0c619517f2)
2025-06-22 18:08:48 +00:00
Matt Atlas
3837112bd1 Revert "Fix missing pixels in new hairstyle" (#20854)
bad merge
2025-06-17 02:33:31 +02:00
Batrachophreno
356bb10e9f Fix Electrical Storm event (#20830)
Electrical Storm event does nothing because it checks for valid target
APCs in SSmachinery, but SSmachinery currently doesn't hold a list of
APCs to use. This PR correctly registers APCs on init and unregisters
them on destroy so that Electrical Storms will actually upset Engineers
now.

This should proooobably come with an IG bulletin on the discord or
something warning engineers that their shit will actually get rocked
(especially since its kind of weird in-universe that electrical storms
that used to Do Nothing actually have an impact) now).
2025-06-16 22:17:49 +00:00
Batrachophreno
156620ad4f Fix missing pixels in new hairstyle (#20828)
See title- the new haircuts leave two pixels of the head uncovered, this
fixes that. My bad, know better testing now... :(
2025-06-16 22:16:59 +00:00
Batrachophreno
720b1d36d5 APC Item Interaction Cleanup (#20763)
Originally was trying to fix the issue where, if you first used a welder
on a broken APC like the Guide to Construction on the wiki says, it
instead kind of deletes the APC, making it very difficult to continue
dismantling/repairing it without alt-click shenanigans (and nearly
impossible if you also have the alt-click bug).

Think I have the bug resolved and also did some very minor
refactoring/commenting documentation to make the code easier to navigate
in the future.
2025-06-01 10:54:45 +00:00
QuestioningMark
a4f81bc893 Bugfix: Makes INDRA work again (#20666)
globlist was wrong in reactants file, that's fixed now

Wezzy helped massively here
2025-03-27 11:19:34 +00:00
Fluffy
86f8d6fd4f Movement update v2 (#20548)
Refactored (second passage) how movement works, now it's mostly in line
with TG handling and avoids calling 3 gazillion Cross() Uncross() etc.
on every atom in a turf.
Fixed EMP protection from species not actually protecting (this includes
the surge prevention for IPCs).
Fixed EMP 3D calculation runtiming because I forgot to make the value
absolute and it was doing the square root of a negative number.
It's now possible to queue the round to start with the Start Round verb
even while the system is initializing, for an even faster pain train to
enter the round and test things.
2025-03-22 11:38:05 +00:00
Cody Brittain
afa06b4cd1 Ported radiation collector arrays from baystation12 (#19174)
These are intended to be available in the cargo list, so marking as
draft until that can be confirmed.

This ports radiation collectors from baystation12. These use the
ssradiation system that we have, to generate power from phoron and
radiation. This is contrasted with the prior iteration of these units,
which solely generated power from the singularity. These could be used
to generate power around a supermatter reactor, or a fusion reactor, or
any number of things that the playerbase can think of. The only thing is
that these cost precious phoron; you do not want to use these as the
sole source of power aboard anything.

### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/machinery/rad_collector.dmi | Chinsky (Baystation12) |
CC-BY-SA |

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2025-03-17 21:46:50 +00:00
Fluffy
3185c10cf1 516 internal links (#20428)
Convert all (appropriate) links to use the required `byond://` for 516

Added a grep to detect incompatible ones
2025-02-20 22:54:10 +00:00
Fluffy
7265630dde Turn more unmanaged global vars into GLOB (#20446)
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.
2025-02-17 23:34:02 +00:00
Fluffy
f3dab68568 Area tweaks (#20391)
Reworked area changes and power define channels

No player visible changes (hopefully)
2025-02-16 18:53:46 +00:00
Wowzewow (Wezzy)
e7232d04fc The Great Device Resprite and Contained Sprite-ening (#20344)
Don't let the large file size scare you, it's just mostly splitting
stuff into contained sprites and putting them in the correct place.

Anyway, resprites most non-resprited devices in devices.dmi, and puts
them in contained sprites.
Also puts any related /obj/item/device into contained sprites too.
That's basically the long and short of it.
2025-01-24 12:16:30 +00:00
Matt Atlas
eb3bc19014 A lot of bugfixes. (#20358)
- bugfix: "Fixed PDAs not being automatically updated by the Force
Change Name admin action."
- bugfix: "Announcements from non-Horizon ships drifting into hazards no
longer spawn observer chat. You will only get the announcements if you
are on the same z-level. The Horizon will still send its announcements
globally."
  - bugfix: "Offships no longer send newscaster announcements."
  - bugfix: "Fixed ling stings not working. Again."
- bugfix: "The robotics core console no longer reverts into a normal R&D
console when disassembled and reassembled."
- bugfix: "The robotics core console now has its own circuit that can be
made through R&D."
- bugfix: "Fixed the message that simple mobs print when they step on a
trap."
  - bugfix: "Fixed the foam sword sprite."
  - bugfix: "Fixed damaged wall overlays."
  - bugfix: "Fixed the INDRA field getting messed up by pointing at it."
  - bugfix: "Apple pies now count for the pie bounty."
- bugfix: "Changeling chameleon claws no longer spawn in the warehouse."
  - bugfix: "Admin click-drag to possess has been fixed."
- bugfix: "Added a minimum damage threshold to delimb, in order to stops
ridiculously small damage from taking off limbs. The threshold is the
organ's max damage divided by 3."
  - bugfix: "The Pull psionic ability no longer pulls anchored objects."

Fixes #17739
Fixes #17369
Fixes #19535
Fixes #19166
Fixes #20184
Fixes #20165
Fixes #20164
Fixes #20117
Fixes #19961
Fixes #20231
Fixes #20277
Fixes #20346

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2025-01-13 22:13:44 +00:00
Fluffy
1ba0b35838 New opendream pragmas (#20260)
Enabled new opendream pragmas
Fixed some runtime access check operators (`:`) around the codebase (not
all, some are unfixable as they're used in macros)

No player facing changes (hopefully)
2024-12-29 11:12:09 +00:00
Cody Brittain
5db905615d Re-added the Turbine (#19828)
![image](https://github.com/user-attachments/assets/8cf5c42a-0f36-49ae-b34e-19567c747a28)

This is intended for future use.

This is a direct port from Paradise, modified to work with our code.

### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| sound/effects/electheart.ogg | tigercat2000 (Paradise) | CC-BY-SA |
| icons/obj/pipeturbine.dmi |
[PestoVerde322](https://github.com/PestoVerde322) (Beestation) |
CC-BY-SA |

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-12-28 18:30:31 +00:00
Fluffy
df014f9bc0 Mouse drop refactor (#20256)
Refactored mousedrag procs, added signals, some safeguards, did some
cleanups around, renamed them to make a little more sense. Mostly put in
line with TG's code.
Fast clicking and releasing with a drag, depending on the grace period
and how fast it is done, can be counted as clicks, to aid in combat
scenarios where you spamclick.
2024-12-26 14:26:32 +00:00
Stev-the-third
46b044d302 Nuclear Missile Silo (#20222)
The Nuclear Missile Silo Bunker Thingamjig is a 2-z odyssey map. Should
be nice and generic so storytellers can tell a variety of stories,
including just blocking off the entire bunker and having a nice snowy
town if they want to.

![StrongDMM-2024-12-13 09 59
43](https://github.com/user-attachments/assets/30d36670-72a9-41d1-b48b-84d20d166600)

![image](https://github.com/user-attachments/assets/ced645a8-4896-4739-b17c-255da643c534)

And the sub-maps:

![image](https://github.com/user-attachments/assets/3add3533-7f41-4e3e-960e-cf61b36a7172)


Future plans for a later PR include a day/night cycle and maybe weather

---------

Co-authored-by: Stev-the-third <rose@flurf.net>
2024-12-15 13:52:34 +00:00
Fluffy
389466360e Areas and station areas work (#20195)
Refactored sorting.
Added test to verify all horizon areas (outside exceptions) are marked
as station areas.
Added test to verify shuttle areas are not marked as station areas.
Refactored how the area sorting var is made and used.
Added a global list of all areas.
2024-11-27 13:13:44 +00:00
Matt Atlas
1da20ad33f Adds the Odyssey gamemode. (#18972)
https://forums.aurorastation.org/topic/20198-mission-briefing-auroras-gamemode-revolution

To-do:

- [x] Finish storyteller verbs.
- [x] Storyteller landmarks.
- [x] Proper storyteller spawning. Right now the gamemode system is
happy with just picking one storyteller and no actors.
- [x] Antagonist whitelists code.
- [x] Adding the Storyteller whitelist.
- [x] Mission map loading code.
- [x] Map in a bunch of missions.
- [ ] Storyteller adminhelps.

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: DreamySkrell <>
2024-11-26 20:18:43 +00:00
DreamySkrell
5c344e36a3 SCCV Quark - new xenoarch/science shuttle (#20127)
feedback thread:
-
https://forums.aurorastation.org/topic/21275-sccv-quark-new-xenoarch-shuttle-feedback-thread/#comment-178259

changes:
- rscadd: "Adds SCCV Quark, new shuttle for xenoarch/science, on
Horizon."
- rscadd: "Small remap of the aux hangar on Horizon, adding some
expedition supplies there."
 
reasoning and explanation:
- The idea is that xenoarchs/science use this if they want to go on a
solo adventure for whatever reason (and die to random simplemobs),
without stealing the intrepid (that could be used to go to the odyssey
scenario site).
- Xenoarchs would still be allowed to use the intrepid, if it's not used
for odyssey or whatever and they want to organize a bigger expedition
with more crew (or at least I hope so, I don't make the rules).
- It's a small shuttle, but it has more than enough seating and some
cargo space. I think, at least, it is fine for a xenoarch or two and a
few passengers.
- We need a xenoarch/science shuttle like yesterday, and no one's really
shown any interest in mapping it in the past few months, so I made this.
- If anyone has a different idea and wants to map their own shuttle,
it's fine ofc. This is just my PR, anyone is free to open their own, and
the best shuttle will be merged



![image](https://github.com/user-attachments/assets/269f6369-c95a-4e78-8305-0525df30058b)

![image](https://github.com/user-attachments/assets/507fca8c-ea38-4a7b-b268-8b62acc7f543)

![image](https://github.com/user-attachments/assets/fc7857a6-2a4a-414a-a49b-3610a123c812)

![image](https://github.com/user-attachments/assets/984cfcc1-756b-4963-b6fe-b01912326eb6)

![image](https://github.com/user-attachments/assets/ca803886-925a-4449-a343-4c4f3acdbeba)

(explanation on top of description)

---------

Co-authored-by: DreamySkrell <>
2024-11-08 15:35:04 +00:00
Fluffy
0b4bb4ead1 Bluespace drive (#20053)
![immagine](https://github.com/user-attachments/assets/1e75f35b-b795-44ac-af96-0fecb0fedf9a)

Added the bluespace drive.
Fixed overmap projectiles not transferring correctly.
Code improvements. A lot of.

---------

Co-authored-by: courierbravo <73250577+courierbravo@users.noreply.github.com>
2024-11-06 17:10:10 +00:00
Fluffy
d40d459d42 Refactored movement observable away (#20083)
Refactored movement observable away, use only the signal.
Some tweaks to the signal.
2024-10-26 15:53:07 +00:00
Fluffy
3de4911dc8 Chemmaster and chemdispenser UI disables if the machine is not operable (#20101)
Chemmaster and chemdispenser UI disables if the machine is not operable.
Turned a comment into a DMDoc.

Fixes #19825
2024-10-26 10:15:36 +00:00
Fluffy
d9c44532fc Refactored directionals (#20082)
Refactored directionals, ported lists of directions from TG, got rid of
useless proc to get the reverse direction.
2024-10-25 17:56:02 +00:00
Fluffy
404c90f688 Replaced the outside turfs with exoplanet ones for the digsite (#20066)
Replaced the outside turfs with exoplanet ones for the digsite.
Fixed some exoplanet areas not having an exoplanet base turf.
Wrote a unit test for exoplanet areas to ensure they have an exoplanet
base turf.
2024-10-20 18:49:39 +00:00
Fluffy
b8902e2e16 Runtime map now loads in ~11 seconds instead of ~40, sped up various other things (#19957)
Runtime map now has a bunch of new areas / items with often-tested
stuffs, and some hard-to-put-at-runtime stuffs.
Runtime map jobs now are positioned to make it faster to reach the
aforementioned often-tested stuffs.
Runtime map doesn't generate an overmap anymore by default, which speeds
up the process.
Runtime map now loads in ~11 seconds instead of ~40 seconds as it was
before.
Updated the maploader to be faster in parsing maps.
Bapi is not engaged anymore if we're only measuring the map size, which
speeds up the process.
In fastboot we do not generate the codexes anymore, which speeds up the
process.
In fastboot and if exoplanets and away sites are not enabled, we do not
parse the map templates anymore, which speeds up the process.
Updated the icon smoothing to be faster.
Optimized cargo area code.
Other optimizations.
2024-10-06 21:31:01 +00:00
Fluffy
9636363e60 Refactored the attack proc (#19908)
Refactored the attack proc signature.
Added signals and components for the attack proc.
Added signals and components for the attackby proc.
Adjusted some leftover attackby procs signatures.
Added grep test to ensure people don't keep adding attack/attackby procs
with the wrong signature.
2024-10-06 21:30:00 +00:00
Snowy1237
ff8ff7389a Makes power outlets not dense (#20002)
see title or something
2024-10-06 21:21:20 +00:00
Geeves
af4da2bb06 Power Outlets (#19943)
* Added power outlets to the service area. More can be printed at RnD.
The capacitor can be upgraded to improve charging speed for connected
devices.
2024-10-04 14:53:51 +00:00
Joshie
fd7873647a Uranium Portable Generator Fix (#19978)
Fixes the uranium-powered portable generator exploding when it's used at
level 4. The safe heat threshold was supposed to be 300c, but a small
variance of 16c was causing it to just surpass that and go into overheat
when it's not supposed to.
2024-10-03 14:57:59 +00:00
Fluffy
c24b4c7097 Projectile refactoring madness (#19878)
Refactored the projectile code, mostly in line with TG's now.
Refactored various procs that are used or depends on it.
Projectiles can now ricochet if enabled to.
Damage falloffs with distance.
Homing projectiles can now have accuracy falloff with distance.
Projectiles have a maximum range.
Muzzle flash is configurable per projectile.
Impact effect of the projectile is configurable per projectile.
Accuracy decreases with distance.
Projectiles work with signals and emits them, for easy hooking up from
other parts of the code.
Meatshielding is now less effective .
Impact sound is now configurable per projectile.

High risk.
2024-09-23 10:12:57 +00:00
Fluffy
0ae0b10764 Refactored all the backslash ref and ref() calls to use REF() instead (#19847)
Refactored all the backslash ref and ref() calls to use REF() instead.
Added a linting for raw ref proc calls.
2024-09-13 10:17:32 +00:00
Fluffy
41a05bc196 Refactored the abstract meta propriety (#19797)
Refactored the abstract meta propriety into defines.
It's now more easy to spot/see abstract types thanks to the macro that
defines them.
Added a check on initialization of atoms to avoid spawning abstract
types.
Made the spawn_atom proc check for abstractness.
Made the spawn_atom proc use tgui_list for types list shorter than 1000
elements, which enables to search in them. It's too laggy on larger
lists so above 1000 it uses the builtin input.
Made the spawn_atom use a list subtraction instead of a double list,
it's lighter on memory and processing.
2024-08-23 10:49:28 +00:00
Fluffy
a3a4d46fa7 Hitby refactor (#19624)
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.
2024-07-28 20:52:08 +00:00
Fluffy
f26e4a0380 Collapse dmms (#19698)
Collapsed all the multi-z dmm maps into single-file dmms
Moved some of the map geometry into traits
2024-07-27 19:00:57 +00:00
Fluffy
3e1b9d4170 Repathed /obj/item/projectile to /obj/projectile (#19693)
Repathed /obj/item/projectile to /obj/projectile, same as TG and Bay,
that's pretty much it.
2024-07-27 10:09:46 +00:00
Fluffy
363650f185 Borgs can now access the APCs channel configuration again (#19674)
Borgs can now access the APCs channel configuration again, like the AI
already can
2024-07-23 06:14:57 +00:00
Fluffy
1345beac4b Added the z-level manager system from TG (#19532)
Added the z-level manager system from TG, mostly
2024-07-22 13:00:38 +00:00