112 Commits

Author SHA1 Message Date
Batrachophreno 4ecb0bc21c Repath obj/machinery to obj/structure/machinery [MDB Ignore] (#22500)
Repaths obj/machinery to obj/structure/machinery. **Note for
reviewers:** the only meaningful changed code exists within
**code/game/objects/structures.dm** and
**code/game/objects/structures/_machinery.dm**, largely concerning
damage procs. With the exception of moving airlock defines to their own
file, ALL OTHER CHANGES ARE STRICTLY PATH CHANGES.

Objects, _categorically_, are largely divided between those you can hold
in your hand/inventory and those you can't. Machinery objects are
already subtypes of Structures behaviorally, this PR just makes their
pathing reflect that, and allows for future work (tool actions, more
health/destruction functionality) to be developed without unnecessary
code duplication.

I have tested this PR by loading up the Horizon and dismantling various
machines and structures with tools, shooting guns of various types
throughout the ship, and detonating a bunch of explosions throughout the
ship.
2026-05-26 19:35:48 +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 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 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 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
Fluffy d8d67ebd3a Refactored CollidedWith (#19541)
Refactored CollidedWith()
2024-06-29 10:01:18 +00:00
Fluffy 3dc4cce9c2 Minor span refactoring (#19177)
Minor span refactoring
2024-05-19 16:37:29 +00:00
Cody Brittain 9983fca311 Update SSOverlays (ported from Baystation) (#19051)
Our SSOverlays system is outdated, and is likely the cause of many of
the issues seen in #18895. It has also been linked to a massive server
performance decrease.

This brings an updated system from Baystation, hopefully with speed
increases.

Should be testmerged, ideally with #18895.

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-05-01 07:46:27 +00:00
Cody Brittain ddb14f4036 Planes & Layers part 1: The Re-Layering Redux (#18741)
This is part 1 of a project to, eventually, bring the render planes
system from /tg/ and bay into Aurora. This is a prerequisite and blocker
for many things the development team and community want to have, and
this was long overdue.

Many objects have been re-assigned layers, which are now thoroughly
defined. Maps have had their custom layer defines purged, as we should
be moving away from this in favor of saner definitions in the base
items.

This should be a test-merge due to the sheer amount of layers changed,
which will very likely create issues that I cannot possibly discover and
debug in a reasonable amount of time myself.

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-04-01 14:50:27 +00:00
Matt Atlas cadd19beac Ports the TG globals controller and converts globals. (#18057)
* 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>
2023-12-26 01:16:02 +00:00
Matt Atlas 12487c94bb Updates SDQL2 to the latest TG version and adds variable protection. (#17997)
* 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

* discord protection

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2023-12-25 17:10:35 +00:00
Fluffy 4538e2a7cc Fix indentations (#17481)
* cbt

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* fsadffsda sad

* sadfasd

* jhn

* dsfa

* saf

* safsad

* sda
2023-10-05 10:15:58 +00:00
Werner 3742231bc2 Major UT Overhaul (#16544)
* Removes old UT definition files (drone/travis)
* Adds concurrency definitions to the workflows
* Changes our workflows to be more in line with what /tg does
* Adds a workflow to build/commit TGUI
* Adds a workflow to build/commit changelogs

Add python version to dependencies.sh
Fix dme errors
Removes a bunch of not included files
Cache Opendream and add directory to check_grep.py

Co-authored-by: Werner <Arrow768@users.noreply.github.com>
2023-06-27 16:44:16 +02:00
Fluffy 2cccb4a5c9 Use rustg 1.2.0+a2 (from our other repo), update our pipeline, fix what's needed to not make it fail (#16051)
* Let's see how this goes, updated the versions of various dependencies

* Changelog

* Didn't we merge a fix for those already? Anyways...

* Almost...

* Switch flyway to 9.9.0 instead

* Forgot one place where this is doubly defined

* Package dependency attempt fix

* Try to run on latest ubuntu version

* Forgot one

* Try to force cffi consistency

* Other way around

* aurora was a mistake

* Like this more?

* Stupid pipeline

* F

* FF

* Bruh ZAS

* GDI

* FFS ZAS + UT

* Checked maps, temp is set as this in there, so updating ZAS UT, wich was probably conked before

* All AI rooms are in normal expectation, so updating ZAS UT for it

* First attempt at making the AI area in the Horizon cooled

* F

* And the old aurora

* Remove version binding on requirements

* Updated changelog

* Spelling

* Binds versions again, as majority voted
2023-03-22 19:50:15 +00:00
Matt Atlas 31c73ead85 Ports the radiation subsystem and cleans up damage flags. (#15715) 2023-02-07 13:22:47 +01:00
SleepyGemmy 5179dad83e Removes Old Deprecated Stuff (#15241) 2023-01-02 14:27:29 +01:00
Wildkins a4461a17af Implement Bay's SSmachinery and power usage updates, further unclogging the toilet (#13910) 2022-05-16 18:50:16 +02:00
Matt Atlas c30cd94024 Reworks armor damage reduction + armor components + more goodies. (#11106)
Ports Baystation12/Baystation12#27254 and Baystation12/Baystation12#24787 and everything inbetween I guess.

Note that this PR makes guns and armor overall stronger. Lasers also once again do organ damage.
2021-02-14 17:54:45 +02:00
Matt Atlas d4666caaac Ports Goonchat from Baystation. (#9635)
changes:

    rscadd: "Ported a new chat system, Goonchat, that allows for cool things like changing font style, size, spacing, highlighting up to 5 strings in the chat, and DARK MODE."
    rscadd: "Repeated chat messages can now get compacted. You can disable this in goonchat settings."
    rscadd: "You can change icon style to any font on your system."
    tweak: "The game window has been altered a bit to adjust for this."
    rscdel: "Removed skin style prefs as they are no longer used."
2020-09-24 23:06:04 +03:00
Geeves 172b34f23a Shield Generator Responsiveness (#10014) 2020-09-20 14:37:19 -03:00
Alberyk 13f303ce81 Removes mesons and material scanners from the station (#9726) 2020-08-24 13:58:14 +02:00
Werner cb4a712851 Enforces Lineendings and adds Editorconfig (#7657) 2019-12-21 16:19:24 +01:00
Mykhailo Bykhovtsev b167f0eade Tesla tweaks and bugfixes (#6955)
Bugfix: Tesla no longer gains energy from just colliding with objects

    Bugfix: Fixes sprite for singularity beacon not showing up

    Bugfix: Tesla no longer spams admin longs when a new ball is created outside of containment

    Bugfix: Telsa looses energy when dropping ball which should be slightly below how much is required for new ball.

    tweak: Tesla dissipation rate has been buffed, it now looses energy faster

    tweak: Tesla dissipates every time it zaps something

    tweak: Tesla now melts any object or mob(but not turfs) it touches or when it zaps it while sacrificing a miniball.

    rscadd: Added special emergency singularity beacon that is to be used when Singulo/Telsa are on the Loose. When Tesla zaps the beacon, it will discharge all energy into it, dying and destroying beacon.
2019-10-23 21:09:46 +03:00
skull132 0f830f1d25 Logging 2019-06-03 01:45:49 +03:00
skull132 c2d6f6f055 Logging 2019-06-03 01:26:32 +03:00
LordFowl 8d436c4a03 Converts all necessary << outputs into the to_chat() macro. (#6076)
This PR will lead us towards the Promised Day, for in its wake there shall be much celebration and ecstasy as this world becomes a world suitable for developer hegemony. The first strike is thusly;

All << is converted into to_chat().
2019-03-10 23:39:03 +02:00
LordFowl 64e386785c Abling Disability (#4485)
This PR implements a system for manipulating a client's color safely and also ports a prioritization system for sorting client color from /tg/. Currently this PR also implements client coloration in the form of color blindness, namely:
Monochromacy
Deuteranopia
Tritanopia
Protanopia

DTP are mild brain traumas, whereas monocrhomacy is a severe brain trauma.
Furthermore, this PR removes the Needs Glasses prompt in character creation, and replaces it with a disability selector, allowing people to more closely refine their special little snowflakes.
Current disabilities available:
Nervousness
Nearsightedness
Deuteranopia
Tritanopia
Protanopia
Deafness
Muteness
2018-04-05 21:57:50 +03:00
Lohikar a86398d0d2 Code Cleanup: (Bump(), Bumped()) -> (Collide(), CollidedWith()) (#4349)
This PR rips out the old Bump() and Bumped() procs and replaces them with Collide() and CollidedWith() respectively. Behavior should be the same, but Bump() should no longer be double-called, and no longer relies on spawns.

Other changes:

LAssailant is now a weakref.
Some direct loc setting are now forceMove().
2018-03-08 09:39:53 +02:00
Lohikar 6f85f08718 Convert a bunch of legacy overlay calls to SSoverlays (#4015)
Bunch of overlay conversions I found in an old stash I had forgotten about.
2018-01-07 00:34:47 +02:00
Ron 37b3c0049a Replaces unused span classes (#3539)
Replaces span class userdanger and sinister with things that exist. Also removes an unused proc.
2017-10-04 19:23:20 +02:00
Ron ad96a34dd8 Removes some in worlds (#3227)
Removes some in worlds and some commented out code that I don't think will ever be used.
2017-08-06 19:50:53 +03:00
skull132 0fc67f2cb9 Remove a whole bunch of in world loops and rework machinery global lists (#3053)
Removes a whole bunch of in world loops.
Reworks SSmachinery to hold two lists: all_machines and processing_machines. all_machines contains all machines 5ever. All of them. Literally. Forever. And ever. processing_machines only contains machines that process with the SSmachinery controller.

I checked most types at runtime on the live server to see whether they're in processing_machines or in all_machines, and did debug to ensure that most machinery ends up and stays in all_machines.

Includes a basic UT to make sure all mapped in machinery types remain within the all_machines list post-init.
2017-07-16 20:32:33 +03:00
Alberyk 2f949ecb45 Ports baystation armor system (#2954)
Ports Baystation12/Baystation12#12658

Changing how the calculation of armor works , instead of just being a check if it is protected fully, half or nothing. Making armor more reliable and less rng dependant.

Also, uranium meteors will irradiate nearby people when they explode.
2017-07-15 16:24:03 +03:00
LordFowl ed5c571e19 Z Level Conscientious Dark Lords of Destruction (#2595)
The great dark lords, Nar'Sie and Singuloth, now respect multi-z. Nar'Sie will move up/down to match it's target Z. Singularity will move up/down whenever it fails to move laterally, or to chase it's singularity beacon.

Singularity will also consume everything above and below it.

As a bonus, supermatter cascades will also spread vertically.
2017-06-04 20:00:48 +03:00
Lohikar 0038ff84f6 Misc tweaks & fixes (#2572)
changes:

Minor performance tweaks & light fixes to wall shield generators.
Added more subsystem targets to the subsystem panic verb.
Speculative fix for #2532.
Fix non-human voidsuit helmets not having a light overlay on the on-mob sprite.
2017-06-02 16:56:22 +03:00
Lohikar f6dc33a465 Newmap - SMC, Openturf, Arrivals Controller, and Mine Turf Improvements (#1958)
* Replace SSingulo with SScalamity; processing cleanup
- SScalamity now handles blobs as well as singularity-types.
- Processing subtypes have been simplified to not require a stop_processing definition.

* this is probably important

* Remove cascade disabling SSgarbage

* Fixed a bug where dust() did not qdel the target mob

* Misc fixes

* Fix decals surviving break-to-plating

* Subsystem flag tweaks

* Apparently subsystems are new'd before config is.

* Fix paper icons

* Speculative fix for insane lag

* Better machinery stat

* Make organs not use SSoverlay

* Misc bugfixes & tweaks

* Nightmode fixes

* Changelog for SMC

* Port /tg/'s improved MC crash handling

* Add some more SS Recover() procs

* supply_controller -> SScargo

* More New() -> Initialize()

* pAI and robot construction overlays

* Fix cargo unit tests

* Merge the DMM Suite's atom/New() into atoms_init

* Lighting pre-baking

* Lighting initialization logging

* Fix some bad SS init orders

* Fix SSlighting logging; rename Processes to MC

* Speculative fix for insane GC lag

* Prebaked openturf/icon_smooth & fix lighting prebake

* SS init status; SSatoms LATEQDEL

* Fix bug with MC init stat panel

* Fix parallax

* Misc

* Ignore SS_NO_DISPLAY during init

* apparently this is important

* REEEEEE

* Image GC fixes; broadcaster radio-new sanity

* RCON Cleanup

* Move pAI recruiter into subsystem

* Move global solars list into sun subsystem

* Make chickens not use a global

* Demote SSdisposals to SS_BACKGROUND; garbage-debug cleanup

* Speed up space init a little

* Fix bad timer flags on floor drying

* Subsystem panic-restart verb for mins

* Explosion speedup

* Minor subsystem & MC logging tweaks

* SSopenturf improvements

* Make pipenet actually initialize (whoops)

* Minor tweaks

* Implement lighting rounding

* comments are hard okay

* Minor lattice tweaks

* Fix some timer issues & better closet init

* Timer sanity

* Request console tweaks + Storage init sanity

* Minor SSmachiner RCON improvements

* Further reduce world-start timer count

* Standardize subsystem logging

* Garbage hard delete profiling from /tg/

* Timer hang detection & recovery

* Log machines that sleep in process() and fuck up SSmachinery

* Fix an issue with external airlocks sleeping in process()

* Failsafe logging

* Minor tweaks

* Revert "Request console tweaks + Storage init sanity"

This reverts commit 98d3579e35.

* Re-implement RC changes

* Fix SQL FT saving

* Fix SSmachinery sleep in disposals

* Minor SS tweaks

* Paper fixes

* Blood drying fixes

* Merge gameticker and SSticker

* Minor global list init cleanup

* Lagcheck biogenerator & bags

* Tweak SScargo init order; RIG Initialize()

* Caching tweaks

* Remove rogue comma

* Initialize fixes

* Lighting destroy cleanup

* Fix emagging airlocks

* Initial SSicon implementation

* Tweaks & Fixes

* Fire + Air alarm queued icon updates

* Overlays + Queued icon cleanup

* Runtime & background fixes

* Kill some meaningless set statements

* Kill some image qdels

* Bump up lighting rounding val

* Fix adv. scanner destroy runtimes

* Remove unneeded icon update limiting

* Move icon smoothing into helpers

* Show a warning if DM 510 compiles without memory leak hack enabled

* Re-organize subsystems & MC defines a little

* Airlock SFX

* Log of Changes

* Make SSicon_update disable itself when not doing anything

* Fix respawn verb runtime when used early in server-init

* Add more information to MC's stat_entry()

* Replace direct refernces to gcDestroyed with QDEL* macros

* plant_controller -> SSplants

* More plant tweaks

* Add more humor to changelog

* Move parallax globals into SSparallax

* Lighting responsiveness tweaks

* Fix parallax init order & better MC init panel stat

* Make mobs GC

* More overlays + Remove intercom spawn()

* SSfast_process; make pinpointers not use spawn-recursion to process
Also made the SM Cascade beach process with SSprocessing instead of a spawn loop.

* Update changelog

* Mob GC tweaks

* Del() cleanup

* Fix insomniac ZAS connection edges

* Minor pAI cleanup

* Convert more things to SSoverlay; fix duplicated overlay in field gens

* SM Bluespace turf tweaks

* Update SSgarbage debug globals list

* Human-type qdel tweaks

* Subsystem suspension; stat_entry improvements

* SQL Statistics cleanup

* Fix runtimes with ambrosia

* More disable() -> suspend(); fix nightmode again

* Human qdel fix; minor tweaks

* Update turbolift to work with StonedMC

* Make lifts use timers instead of a subsystem

* Make SSassets start earlier

* Convert the radio controller into a subsystem

* Fix some missing CHECK_TICKs in asteroid generation

* MC stat tweaks; make shouldnt_see a typecache

* Kill some redundant debug-controller entries

* radio_controller -> SSradio

* Better SSgarbage hard-del logging from /tg/ upstream

* Logging tweaks + GELF

* Misc client caching improvements

* Slime SSoverlay

* Oven icon fixes

* Implant fixes
- Death implants will no longer spam Common on death of user.
- Death implants should handle a deleted user better.

* Holder tweaks + Welding tool Initialize()

* Fix some bad subsystem logging

* Fix suit cooling units spawning without cells

* Starlight tweaks

* Gibber infinite gib fix

* More SSoverlay stuff

* Make crates use CUT_OVERLAY_IN

* Make SSarrivals suspend instead of disable

* Make openturf use split/phased tick checks

* Speculative fix for unwet timer runtimes

* Blood overlay tweaks/fixes

* Update crusher to play nice with SMC + SSoverlay

* Openturf improvements and fixes

* Minor turbolift tweaks

* Lighting performance improvements + ChangeTurf tweaks

* this is probably important

* Fix wall weld noises on changeturf

* More ChangeTurf tweaks

* Explosion tweaks

* Pre-game lobby tweaks

* Openturf tweaks

* Prevent admins from starting the game before init finishes

* Fix Travis

* Kill an unused var

* Fix ChangeTurf runtimes on openturfs

* Fixes

* Browser datum fixes, asset caching

* Update changelog

* Changelog

* Lobby tweaks

* Ticker tweaks; kill ticker var

* Further lobby tweaks

* Cascade tweaks

* air_master -> SSair

* Reduce overhead from radio autosay

* alarm_manager -> SSalarm

* bomb_processor -> SSexplosives

* corp_regs -> SSlaw

* ZAS overlay fixes

* Small wall icon optimization

* Fix effects master

* Assembly tweaks

* Megavend fixes

* Shuttle fixes

* Camera alert performance improvements

* Fix some world.log spam from lighting overlays

* Fix some Initialize() procs

* Openspace responsiveness tweaks

* Make HE pipes animate through openturfs

* Kill a spawn
2017-05-02 14:40:40 -04:00
PsiOmegaDelta f976e82c63 Fixes the singularity expansion message.
A simple flip of a character. Fixes #11983.
2016-01-22 08:45:07 +01:00
Kelenius 83adba88d4 Updates blob
Remains of player blob axed.
blob_act() axed. Blob now has an arbitary set of things it can attack.
It will flow over everything else. Blob has an awful tendency to destroy
non-craftables.
Will test more tomorrow.
Blob will now attack mechs.
Fixes #8106.
Fixes #10705.
2015-10-05 18:10:16 +03:00
Chinsky ad0652d864 Moved some stuff from global.dm into defines files that fit the theme, some into files where they are used (and only there, much global). Axed some obsolete stuff (rip Debug var). 2015-06-04 22:51:15 +03:00
Mloc 16d50c645d new object-based lighting system
Signed-off-by: Mloc <colmohici@gmail.com>
2015-05-10 20:54:25 +01:00
PsiOmega d381eb6083 Drops the machinery part of the singularity. 2015-04-16 12:51:02 +02:00
PsiOmega 1511e2b3f4 Ports /vg/'s Nas-Sie remake.
Second phase:
New Nar-Sie itself.
Two endgame phase - Nar-Sie and Supermatter Cascade.
Culty mobs.
2015-04-12 16:19:16 +02:00
PsiOmega 990530d118 Ports /vg/'s spell system for the sake of cult porting.
Does offer a much more pleasant basis to work with in the future, if someone wishes to add more spell-like abilities.
2015-04-09 20:08:06 +02:00
Zuhayr 98da191ac3 Gamemode refactor, lots of code shuffles, PR will have details. 2015-03-21 11:08:17 +10:30
Chinsky 6e7eb38c5d Merge pull request #7850 from Baystation12/master
master -> freeze
2015-01-16 14:23:03 +03:00
Atlantiscze 3e1ad4099e Wireless Wires Bug Removal
- This removes the dreaded wireless wires bug, which caused wires disconnected by explosions to actually still conduct power until powernet was manually updated.
- This also adresses issue with (on bay unused) singularity, which exhibits similar behavior when eating wires (wireless wires bug)
2015-01-01 17:20:21 +01:00
Amunak edffbc680d Fixed capitalization of most game items 2014-12-18 03:10:36 +01:00
PsiOmega d6c0ebf138 Syndicate beacon power consumption and objective.
Cleans up syndicate beacon power consumption.
Objectives are now only given if not disabled.
Relative-proc cleanup.
2014-11-26 09:56:15 +01:00
mwerezak dc304026a9 shuttle_controller now uses a shuttle datum 2014-06-22 18:10:56 -04:00
Ccomp5950 bf7684bced Lagsie no more, NarSie HUNGERS
removed del() calls for objects, now it sets loc to null and removes it from master_controller processing

Much quicker :)
2014-03-30 03:15:20 -05:00