52 Commits

Author SHA1 Message Date
VMSolidus 08ec3e124d Ship Movement Guarding Fix (#21836)
It's not supposed to be possible to get into the decellerate() proc when
your ship isn't moving, since the button to get there locks. Somehow
this happens anyways, so here's a guard clause in case that softer check
didn't work, in order to make a division by 0 not possible.
2026-02-09 15:01:22 +00:00
VMSolidus ee30451d9a Fix Ship Acceleration (Without Byond 516) (#21625)
This PR fixes some math errors in Overmap Ship math that were causing
ships to have entirely wrong acceleration when moving in any diagonal
direction. It was off by about 30% in the diagonal directions. This is
also an alternate PR to #21620 which doesn't require changing the repo
to Byond 516

I hate this so much more than the other PR, I really badly need Vectors
for doing what I do, and to do stuff like this PR so much better.
2025-11-30 11:18:35 +00:00
Ben b88f19690d The Great Station Site Refactor (#21172)
**Requesting Test Merge**

Refactors multiple stationary away sites (like sensor array) to
ship/stationary to allow for their systems to properly function

Current maps refactored
- Sensor Array
- Hedgemony Waypoint
- People's Station
- IHSS Reclamation

---------

Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
2025-09-06 10:32:02 +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 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
hazelrat 129839be66 Fixes a few incorrect fore dirs (#19935)
Corrects the erroneous fore_dirs of a few ships and shuttles so they
function properly in ship combat. Updates a few of the visitable/ship
variables with dmdocs for clarity.
2024-09-27 08:21:44 +00:00
Fluffy e6917d84e5 Fixed relaymove blocking you in place (#19595)
Fixed relaymove blocking you in place

Should fix #19569 and #19507
2024-07-09 15:41:23 +00:00
Fluffy 67030cf90e Relaymove tweaks (#19489)
Made relaymoves uniform in function header and non sleepable.
Improved IPC/borg recharger, made it time constant.
Tweaked client/Move() to avoid a range(), moved a relaymove around to
fix a bug, some minor tweaks.
Fixed IPC/borg recharge station not taking the IPC/Borg in on bump.
2024-06-22 15:13:29 +00:00
Fluffy 1b40dbce82 Updated the sound system (#18724)
* sdaf

* sdaf

* sdfa

* sadf

* sfda

* gfd

* reduce thrusters volume

* sdafsadsdaf

* sdfa

* Reduced some sound ranges and made some/more not ignore walls for loops

* health analyzers too

* ivdrip adjustment

* most tools now use play_tool_sound to have the sound played, reduced range for it
2024-03-25 20:40:36 +00:00
Fluffy 2455785fd9 Bots revamp (#18649)
* revamp logic

* ui, navbeacons

* JPS, buildable navbeacons, heap, more pain

* sdf

* sdaf

* Update html/changelogs/fluffyghost-botsnavbeaconspath.yml

Co-authored-by: Ben <91219575+Ben10083@users.noreply.github.com>
Signed-off-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>

* sdf

* sd

* SSmove_manager, navbeacon and cleanbot fixes

* sdaf

* swap most mobs to use movement loops

* dfgs

---------

Signed-off-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Co-authored-by: Ben <91219575+Ben10083@users.noreply.github.com>
2024-03-21 20:11:56 +00:00
Geeves 31dba284d6 Overmap Edge Fix (#18031)
* Overmap Edge Fix

* dmdoc'd
2024-01-01 11:57:56 +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
Geeves b220fba3eb Overmap Tooltip (#17771) 2023-11-27 00:49:49 +00:00
DreamySkrell 5f93a29a8c a (#16954)
Co-authored-by: DreamySkrell <>
2023-08-04 14:29:58 +00:00
DreamySkrell 516f920f1e Helm Control tgui - visual bearing and direction (#16892)
* a

* b

* c

* d

* e

* f

* g

* h

* data.locations

* fixed

* gui

* red roll buttons

* roll and turn switch positions

* stuff

* c

* a

* tgui lints

---------

Co-authored-by: DreamySkrell <>
2023-07-30 18:31:02 +00:00
DreamySkrell 5f47481bc7 Overmap drifting (#16833)
* a

* c

* aaa

* a

---------

Co-authored-by: DreamySkrell <>
2023-07-27 01:25:52 +00:00
Geeves b02c7e5a14 Overmap Layering (#16307) 2023-05-12 18:59:11 +00:00
kyres1 54a35e35cc Massively upgrades sensor readout fluff (#16073)
* jesus christ part 1

* i cant be cool

* unathi start

* finishing the fight

* lore requests

* fixes lore request
2023-04-03 10:47:28 +00:00
Matt Atlas 4a0466972d Adds a Horizon roundstart report with overmap bearings, sensor tweaks. (#15765) 2023-02-14 22:52:47 +01:00
kyres1 be8dac08c1 Makes overmap pretty (#15752) 2023-02-09 13:32:14 -03:00
Fluffy 14d41d1e84 Overmap sensors overhaul (#15666) 2023-02-03 23:39:18 +01:00
Geeves f243e418ff Movable Overmap Events (#15551) 2023-01-23 20:50:44 +01:00
Matt Atlas 5257d2bc2b Gravity generators now stop ship maneuver effects. (#15254) 2022-12-10 18:07:11 +01:00
Wildkins 2fcfa8adb7 Ports /tg/ spatial grid system, refactors telecomms, destroys lag (#15140) 2022-12-09 12:35:33 +01:00
Matt Atlas 0d52eea501 Removes bridge crew access to the ammunition room and flak, other changes. (#15084)
* Removes bridge crew access to the ammunition room and flak, other changes.

* fffff

* fix projectiles not deleting at map end; projectile range nerf; wrap-around; leviathan projectile speed up

* fixes

* automatic detargeting

* fix that

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2022-11-15 23:04:08 +01:00
Matt Atlas 03b78debc1 Francisca buffs, fixes maneuvers. (#15052) 2022-11-07 19:30:10 +01:00
Matt Atlas 65cece06b7 Adds a ship to ship combat system and weapons for the Horizon. (#14851) 2022-11-05 20:11:16 +01:00
Matt Atlas d56dd390b8 Adds IFF beacons to ships, allowing people to change the ship name or obfuscate it. (#14471) 2022-08-09 15:38:43 +02:00
Doxxmedearly eadb271aaa Telecomms considers sector range, away site radio fixes (#14014) 2022-06-01 15:36:52 +02:00
Wildkins a4461a17af Implement Bay's SSmachinery and power usage updates, further unclogging the toilet (#13910) 2022-05-16 18:50:16 +02:00
mikomyazaki 692bef4a37 Shuttle unit test + bugfix (#13578) 2022-04-20 22:15:27 +02:00
mikomyazaki d24f8bee18 Ports pixel movement for overmap ships from Nebula & Baystation12. 2022-02-19 03:33:24 +00:00
mikomyazaki 357246a115 Puts holopads on their own list in SSmachines, reduces searching through all machines, frequently, while the UI is open. 2022-02-11 17:13:02 +00:00
mikomyazaki 3bf4c4ba97 Long-range holopads are now valid targets for calls from other long-range holopads. 2022-02-11 16:18:34 +00:00
Geeves e44c4c15eb Overmap Pilot Helmets (#12185) 2021-07-21 14:10:33 +02:00
Matt Atlas f59e35e77c Ports Overmap from Baystation. (#8800) 2020-05-23 23:14:08 +03:00
Matt Atlas 2e5fdf970c Landmark Shuttles (#8512)
The lifeless live again. Or in this case, what never actually lived here.

Ports Baystation12/Baystation12#17460 probably for real this time. What this allows us to do is create shuttles on runtime and make shuttles easier by just making landmarks and a shuttle instead of areas and shuttles. Also allows runtime landmark creation via flares or whatever AND allows shuttles to use different landmarks at will.

I removed most of the overmap stuff, I think. It shouldn't be hard to slam it in whenever we need to.

Changes:

    "Shuttle code has been completely reworked."
    "Shuttles can now be modified to have more than one destination."
    "Shuttles now have a takeoff sound."
    "You can now throw mobs against walls to damage them. A lot."
    "You now need a neckgrab to throw mobs."
    "BEING UNBUCKLED DURING SHUTTLE LAUNCH IS DANGEROUS! Don't do it."
    "Adminghosts can now interact with all shuttles."
2020-04-05 21:15:31 +03:00
Matt Atlas 72c968eba6 Genericises rotate() on objects. (#8430) 2020-03-17 17:17:42 +01:00
Lohikar 8f4b4effae Kill processing_objects (#3398) 2017-09-09 15:22:58 -05: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
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
Dennok a65c3a63bc Fix 2015-04-22 09:43:15 +03:00
Dennok 3800db491f get_brake_path() change
Replace "max(abs(speed[1]),abs(speed[2]))" with "get_speed()"
I think this is more logically.
2015-04-22 09:27:24 +03:00
Dennok 44dc5c58ce Relocate rotate()
And add var/rotate for some dont rotated ship.
2015-04-22 09:12:24 +03:00
Dennok 98e6decd23 Remove standatd_icon 2015-04-21 20:22:51 +03:00
Dennok fdc3dac17e Forbid delit [ 2015-04-21 16:06:38 +03:00
Dennok bdc9642cfd Rotete replace. 2015-04-21 15:57:55 +03:00
Den daf6c17c88 Fix speed and add rotate()
If move NORTH and EAST  speed[i] be + and "last_movement[i] + default_delay - speed[i]" decrease but if move SOUTH and WEST  speed[i] be - and "last_movement[i] + default_delay - speed[i]" increase. abs(speed[i]) Fix it. "last_movement[i] + default_delay -abs(speed[i])" always decrease.

rotate() rotate ship icon in move dir.(Don't need a make additional dir sprites)
2015-04-17 23:37:57 +03:00
Chinsky 18607897f0 Merge branch 'master' of https://github.com/Baystation12/Baystation12 2015-02-21 21:47:16 +03:00