Commit Graph

40 Commits

Author SHA1 Message Date
SkyratBot
09c2297ad1 [MIRROR] Secret Gateways: Config loaded Away Missions + Anti-observing Z level traits [MDB IGNORE] (#8437)
* Secret Gateways: Config loaded Away Missions + Anti-observing Z level traits

* 0

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-10-04 00:11:28 +01:00
Gandalf
778a589555 Removes a lot of redundant non-modular changes and maybe fixes cleanbots (#6615)
* oof

* Update _ai_controller.dm

* no need for this anymore
2021-06-30 21:50:50 +02:00
Matthew J
aac40d2ed3 [TM-ONLY][DNM] Attempts to remove all instances where a list is accessed with a '?' (#5932)
* I hate TGUI even if its better than what we had before

* this is why linters exist

* you need to be a Head or the Warden to get items

* does this please you linter?

* foundation

* basic interactions

* yea I can spell okay?

* linters please leave me alone

* begone debug code

* if you are dead, no interacting

* linters leave me alone

* linters are stealing my soul

* forgot to do this

* sound framework, probably wont work though

* max length, and interaction cooldowns

* message can now be a list and minor code improve

* I am a slave and linters are my master

* fix improper static reference

* add json loading/saving functionality

* default for message is now a list

* jsonize def interactions; implement requirements

* bad

* bug fix; CtrlShiftClick to interact

* minor qol fix

* fix CtrlShiftClick and remove debug code

* haha docker has security measures

* this was painful

* why are you in this branch

* begone

* bruh

* begone

Co-authored-by: Matthew <matthew@tfaluc.com>
Co-authored-by: Matthew J <GoldenKeyboard@users.noreply.github.com>
2021-05-25 16:26:39 +01:00
Gandalf
5f10f39257 Expeditionary corps + Black Mesa + Trusted Player System (#5418)
* OH YEAH BOIS BRING THE SALT

* AAAAAA

* AAAAAAAA

* Update tgstation.dme

* AAA

* Update uniform_digi.dmi

* AAAAA

* Update trusted_players.txt

* \ADSA

* AAA

* Update expeditionary_corps.dm

* AAAA

* Update expeditionary_corps.dm

* Update jobmanagement.dm

* Update expeditionary_corps.dm

* AAA

* AA

* Update wildwest.dmm

* AAAAAAAAA

* Update wildwest.dmm

* AAAAAA

* Update clothing.dm

* AAAA

* AAA

* AA

* AA

* AAA

* Merge branch 'master' into exp-corps

* Update _basemap.dm

* Update map_template.dm

* AAAAAAAA

* AAAAAAAA

* fc

* AAA

* Update faithless.dm

* Update faithless.dm

* Update wildwest_skyrat.dmm

* CHANGES EXP TROOPER TO SCIENCE

* OH YEAH

* AAA

* AAA

* Update jobs.dm

* AAA

* AAAAAAAAAAAAAAAAAA

* Update modular_skyrat/modules/exp_corps/code/clothing.dm

Co-authored-by: Tom <tomforde4@gmail.com>

* stupid action button

* aaa

* Merge branch 'exp-corps' of https://github.com/Skyrat-SS13/Skyrat-tg into exp-corps

* Merge branch 'master' into exp-corps

* a

* AAAAAAAAA

* Update sector_c.dm

* WOAH THATS A LOT OF FILES

* AAAAAAAA

* Update black_mesa.dm

* Update black_mesa.dm

* AAAA

* aaaaaa

* Update black_mesa.dm

* a

* 00

* a

* Update black_mesa.dm

* HEDCRABS

* fffff

* aaa

* 000

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* F

* aaa

* NO MORE GOD OPS!

* Update blackmesa.dmm

* 0

* AAAAA

* Update black_mesa.dm

* Update black_mesa.dm

* Update black_mesa.dm

* Update expeditionary_trooper.dm

* Update black_mesa.dm

* Update black_mesa.dm

* a

* a

* a

* a

* Update uniform_digi.dmi

* no raping ears

* Update uniform.dmi

* Update hev_suit.dm

* Update black_mesa.dm

* a

* a

* a

* Update blackmesa.dmm

* Update blackmesa.dmm

* AAA

* Update black_mesa.dm

* Update blackmesa.dmm

* A

* a

* Update job.dm

* Update black_mesa.dm

* Update black_mesa.dm

* Update black_mesa.dm

* Update biohazard_blob_mobs.dm

* a

* Update mold_event.dm

Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
Co-authored-by: Tom <tomforde4@gmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
2021-05-23 17:00:39 +02:00
SkyratBot
cbc41f5d13 [MIRROR] Fixes bug with atoms (including new players!!!!) not spawned from the holodeck being deleted by it if they happened to be initialized at the same time (#4260)
* Fixes bug with atoms (including new players!!!!) not spawned from the holodeck being deleted by it if they happened to be initialized at the same time (#57510)

About The Pull Request

Fixes #57446
yeah not my best moment, holodeck currently sets SSatoms to add every call to InitAtom() to a list and then give it back to the holodeck console (it actually goes through map_template/holodeck to do it but whatever). However it turns out atom/New() calls InitAtom too, so if an atom is created while SSatoms is still creating the list to give to the holodeck then that atom is added to the list regardless of whether or not its actually from the holodeck template.

Now theres an extra argument to InitAtom that tells it whether its spawned directly from a map template (ie, its part of the input list of uninitialized atoms that InitializeAtoms was given) or otherwise the output list that the holodeck uses is populated by calling GetAllContents on all atom/movables spawned directly from the template.

also renamed some vars in initTemplateBounds because it was hard to reason what it was doing and made it use as anything

also note that loading a map template with returns_created_atoms = TRUE will no longer track atoms that arent in the map file but are spawned directly onto a turf, currently nothing does this with the holodeck (which is the only map template that has this feature)

by the way this bug is my fault
Why It's Good For The Game

incredibly incredibly unlucky new players dont deserve to be deleted just because they didnt spawn in the holodeck
Changelog

🆑
fix: the holodeck is no longer so powerful that it can destroy anything and everything that dares to start existing while it's busy loading programs
/🆑

* Fixes bug with atoms (including new players!!!!) not spawned from the holodeck being deleted by it if they happened to be initialized at the same time

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-03-20 00:09:51 +00:00
SkyratBot
b332b46b65 [MIRROR] Remove hideous inline tab indentation, and bans it in contributing guidelines (#3394)
* Remove hideous inline tab indentation, and bans it in contributing guidelines

* a

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-15 15:32:02 +00:00
SkyratBot
4dbe8a2659 [MIRROR] Refactors Holodeck to Use Map Templates, Again! Black Magic OOM Crashing No Longer Included (#2957)
* Refactors Holodeck to Use Map Templates, Again! Black Magic OOM Crashing No Longer Included (#55645)

Refactors the holodeck to use map templates instead of copy_contents_to, which every maintainer seems to have complaints about.

Fixes #41485 because the matches become part of the spawned list created by ssatoms
Fixes #54789 because the holodeck area no longer has the NO_TELEPORT flag
Fixes #55676 because the map templates cant be changed midround unlike the program copies in the centcom z level
Fixes #49318 because the holodeck no longer creates new areas like the original did

This pr also changes initTemplateBounds to be a /datum/map_template proc instead of a parsed_map proc. This was mainly so I wouldn't have to duplicate vars between map_template and parsed_map. It's also nice because there's no longer a parsed_map proc inside the map_template file, especially when it didn't need to be a parsed_map proc.

The holodeck sims wont take up space in the centcom z level any more (which allows for more possible programs in the future), and map templates are more heavily tested. This is also a chance to future proof the holodeck against bugs. Holodeck also seems more responsive. This should allow for a second custom holodeck in some future ruin as well, although that of course will not be in play for the near future because of the offstation content ban. Also I documented the fuck out of the holodeck

* Refactors Holodeck to Use Map Templates, Again! Black Magic OOM Crashing No Longer Included

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-01-30 16:40:12 +00:00
SkyratBot
f79e91462c [MIRROR] LINDA Reforged (#2573)
* LINDA Reforged

* Update airlock.dm

* Update biohazard_blob_controller.dm

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2021-01-08 18:52:35 +01:00
SkyratBot
4c5433d5cf [MIRROR] The Great Radio Rework: NTNET Part 1 of many. (#2384)
* The Great Radio Rework: NTNET Part 1 of many.

* Update airlock.dm

Co-authored-by: WarlockD <warlockd@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2020-12-30 21:14:49 +00:00
SkyratBot
bd75f38fd6 [MIRROR] Initialize and LateInitialize runs correctly at round start (#1478)
* Initialize and LateInitialize runs correctly at round start (#54594)

I've been pulling my hair out on this one. Ever since I started my ntnet project, I could never get LateInitalize to work right. Apparently it has never worked right. How it was set up before on server start

    Station map loads, Does NOT run Initialize(mapload = TRUE)
    Generates space, lavaland/icebox ruins
    Loads a ruin, DOES run Initialize(mapload = TRUE) EXCEPT on areas
    End of mapping system
    Atom system Initialized and it checks and runs Initialize(mapload = TRUE) on world

You see the issue? Initialize and by extension LateInitialize is run in blocks. Worst, LateInitialize is run on turfs FIRST in ruins BEFORE Initialize is ever run on the other atoms. While there isn't much in Area, there is map_generator so I am sure it caused some grief for map creators.

The NEW order now is

    Station map loads, Does NOT run Initialize(mapload = TRUE)
    Generates space, lavaland/icebox ruins
    Loads a ruin, Does NOT run Initialize(mapload = TRUE)
    End of mapping system
    Atom system Initialized and it checks and runs Initialize(mapload = TRUE) on world

Also if you dynamicly load a map, like snowdin or such, it will Initialize all atoms at once and then run LateInitialize properly

* Initialize and LateInitialize runs correctly at round start

Co-authored-by: WarlockD <warlockd@gmail.com>
2020-10-27 02:22:25 +00:00
SkyratBot
666c1a108a [MIRROR] Some shuttes rework. Allow many shuttles of one template to work at the same time. (#1162)
* Some shuttes rework. Allow many shuttles of one template to work at the same time. (#53993)

* add replace button to shuttle panel

load button now only load new shuttle

* shuttle teplate loads as shuttle

* new shuttle console connects to shuttle

* new navigation computer connect to shurrle

* docking_port id now unique

add count to id if id already in work

* many docks from one base tenplate

* up

* fix unregister

* up

* up

* up

* block multiple shuttle loading

* return preview button

* up  id generation

* Some shuttes rework. Allow many shuttles of one template to work at the same time.

Co-authored-by: Dennok <Deneles@yandex.ru>
2020-10-05 22:31:15 +01:00
SkyratBot
600b1b4219 [MIRROR] Fix loading templates in new z-levels being off by one turf. (#1141)
* Fix loading templates in new z-levels being off by one turf (#54135)

Due to how byond maps start at 1,1 and not 0,0 when loading a map that
is the same size as the world the map will start loading at 0,0 in the
world which is outside the map. load_map defaults the x and y offsets
to 1 for a reason!

Though you can load a map that is larger (257 x 257) than the world as
a band aid for issue.

* Fix loading templates in new z-levels being off by one turf.

Co-authored-by: TheChosenEvilOne <34602646+TheChosenEvilOne@users.noreply.github.com>
2020-10-03 20:39:46 +02:00
SkyratBot
f96916cf7a [MIRROR] Fix visible template loaded hidden tings. (#1083)
* Merge pull request #54079 from Dennok/map_template-load-hidding-things-fix

Fix visible template loaded hidden tings.

* Fix visible template loaded hidden tings.

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2020-09-30 18:39:51 +02:00
SkyratBot
41129d1696 [MIRROR] map_template load fix (#929)
* map_template load fix (#53846)

* map_template load fix

Co-authored-by: Dennok <Deneles@yandex.ru>
2020-09-23 14:43:30 +02:00
SkyratBot
cfd17b5030 [MIRROR] Fix ruins overlapping the station and away missions increasing world size (#716)
* Fix ruins overlapping the station and away missions increasing world size (#53558)

Changes the bounds size proc from async to not. We need to make sure 
the bounds on map templates are correct before they are spawned or 
weird issues can happen. Fixes #53542. Fixes #53562.

* Fix ruins overlapping the station and away missions increasing world size

Co-authored-by: Whoneedspacee <yougotreallyowned@gmail.com>
2020-09-09 08:29:06 +02:00
SkyratBot
24502daba9 [MIRROR] Reenables SHOULD_NOT_SLEEP on initialize (#650)
* Reenables SHOULD_NOT_SLEEP on initialize (#53378)

* Reenables SHOULD_NOT_SLEEP on initialize

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2020-09-06 05:15:19 +02:00
nemvar
c38a7a3bb5 Removes a bunch of var/ in procs (#46946)
* Removes a bunch of /var in procs

* reset this

* Why wasn't this already?
2019-10-10 04:20:27 -07:00
Dennok
f9addce004 Runtimes fixes (#44885)
* fix meter work on un initialized pipe

* fix runtime in process_cell

whet it try to call to wrong type turf

* fix roundstart runtime in debug sungery disc

*  fix return_air() runtime

Runtime in pipes.dm, line 52: Cannot read null.air

* s

* Update surgery.dm

* Update pipes.dm

* Update meter.dm

* Update LINDA_turf_tile.dm

* Disable atmos processing in outer border on load.

* Update map_template.dm

* Update map_template.dm

* Update map_template.dm

* Update pipes.dm

more runtimes for good of runtimes
2019-07-13 03:58:02 -07:00
Brett Williams
5008b3e93f Fix "at at" in map template loading logs (#43460)
Removed unlawful reference to Disney's Star Wars franchise in map logging.
2019-04-02 18:10:20 -07:00
Dennok
781dde6239 areas_in_z after start population fix (#41452)
Fixes areas_in_z after start population. Now it get areas spawned by templates and blueprints.
2018-11-13 18:15:14 -05:00
Tad Hardesty
b4ce7bc1f1 Validate map templates uploaded by admins (#39674)
* Move the preloader datum to its own file

* Prettify some of the map loader docs

* Use src rather than usr in map template verbs

* Cache parsed templates between upload and first use

* Validate map templates uploaded by admins before use

* Add href token to validation report links
2018-08-16 10:09:21 +02:00
Tad Hardesty
b83424bd87 Refactor the map loader (#39567)
* Remove duplicate initTemplateBounds method

* Move dmmRegex var to the type that actually uses it

* Keep a single, static map_loader datum

* Combine maploader into parsed_map

* Remove some redundant parameters from parsed_map/load

* Move file2text into parsed_map/New

* Narrow the scope of the map loading lock

* Remove redundant xcrdStart var

* Fix argument names in station reloader

* Move offsets from parsing to loading only

* Tidy argument handling on parsed_map/load

* Store modelCache, track nonexistent atom paths

* Use raw strings to specify the regexes

* Remove cropMap from parsed_map/New

* Don't parse maps twice when checking multi-z validity

Speeds up SSmapping init by approximately 10%.

* Bring the documentation (somewhat) up to speed

* No, I don't know why this fixes it
2018-08-09 22:49:38 -04:00
Jordan Brown
61e70f2333 Seperates map reader parsing from loading (#38764)
* Seperates map reader parsing from loading

* Compile fixes

* Uhhh, ok dm

* Ugh

* Fix one error...

* FIxes model caching
2018-07-13 18:07:32 +02:00
AnturK
f7cf151e92 Fixes loading zlevels with static lighting. (#38365)
* Fixes loading zlevels with static lighting.

* Actually this whole part is unnecessary now because change turf handles the change properly now.

* Correct
2018-06-10 02:54:53 -07:00
Tad Hardesty
9d49ce482c Delay smoothing atoms that have not initialized yet (#38173) 2018-06-03 21:25:34 +02:00
Emmett Gaines
49d1e9ee66 Shuttles have additional baseturfs, and other minor baseturf changes (#36388)
cl ninjanomnom
fix: Shuttles have proper baseturfs now.
fix: Mineral walls properly use their baseturfs when destroyed/drilled.
add: A new engineering goggle mode allows you to see the shuttle area you're standing in.
admin: Buildmode works a bit better with baseturfs now and can properly only remove the top layer of turfs when editing. Note that as a result the order you place turfs is important and a wall placed on space means when the wall is removed there will be space underneath.
/cl

This adds an area hook for turfs getting the PlaceOnTop proc called so shuttle areas are able to intercept it and add a special turf used for determining where the bottom of the shuttle is. I'm not too certain on this being the best way to handle it but the alternatives restrict the kind of turfs that are allowed to be on shuttles which I didn't want to do as it was part of the whole intent of the baseturf change to allow any turf type on shuttles.

The alternative to the area hook would require a tool which attaches turfs to a shuttle which is why there's a shuttle area viewing tool in this pr. I considered doing it this way first but decided it was too clunky.

In addition to other changes:

Tiled/Reinforced floors have proper baseturfs now.

A large amount of the remaining ChangeTurf calls were swapped over to various baseturf helpers so, for example, mining doesn't create a lavaland turf if somehow the mineral wall is on plating.

Escape pods, the aux base, and syndicate drop pod have been converted over to shuttle templates as well.

The error when the timid var is set incorrectly has been changed to a stack_trace.

The change turf file has been made all lowercase as per standard.
2018-04-05 11:13:20 +12:00
AnturK
90a7bfdf15 Adds load away mission verb (#36568)
* Adds load away mission verb

* You seen nothing.

* Is this more readable ?
2018-03-26 22:33:45 -04:00
Tad Hardesty
bbe4d12d13 Support stations with multiple z-levels (#35339)
* Remove ZLEVEL_STATION_PRIMARY

* Add Up and Down traits for use by ladders and chasms

* Give map_config creation its own proc

* Combine LoadConfig and ValidateJSON and remove transition_config

* Make space linkage a z-level trait

* Remove ZLEVEL_EMPTY_SPACE

* Update uses of GetFullMapPath

* Handle multi-Z stations and load Lavaland and Reebe at runtime

* Remove unused space maps

* Fix inappropriate z-expansion in map reader, improve logging

* Update comments relating to z-level configuration

* Add Lavaland and Reebe to ALL_MAPS
2018-02-15 10:21:25 +01:00
ninjanomnom
dcacb06269 makes templates use PlaceOnTop 2018-01-23 01:01:18 -05:00
Tad Hardesty
35faafa8bc Refactor weather to use Z traits, assorted related cleanup (#34633)
* Add a proc for getting the station center

* Add a couple of comments to ZTRAIT defines

* Remove unused global_map list

* Refactor weather to use the trait system

* Un-hardcode the transit z-level

* Use Z traits to determine Portal Storm event areas

* Fix loading away missions containing anything that reads traits
2018-01-21 20:33:11 +01:00
Tad Hardesty
cad0922daf Fix away missions taking 2+ minutes to load (#34084) 2018-01-05 06:56:55 -05:00
Emmett Gaines
934f3459df Fixes some cases where changeturf were called incorrectly (#32584) 2017-11-11 09:34:56 -02:00
duncathan salt
5263fe9be6 makes loaded templates call air_update_turf() on bordering turfs (#31738)
* makes loaded templates call air_update_turf() on bordering turfs

* safety check for OOB turfs; fixes compile error
2017-10-15 20:34:19 -04:00
AnturK
1b55446f2d Fixes lighting object initialization on new zlevels. 2017-10-05 09:13:36 +02:00
ShizCalev
45d3d52af7 Made some object lists less terrible to read (#29304)
* spaces

* more spaces

* last ones
2017-07-18 10:44:29 -04:00
AnturK
1a810315e0 Fixes sortedAreas use. 2017-06-02 22:15:41 +02:00
AnturK
ff4596a6ba Fixes templates/ruins not updating area list 2017-04-24 10:47:45 +02:00
Cyberboss
b9f41db32c [s] Fixes an exploit allowing admins to read any file (#26107)
* THE SECURITY HOLE PILE DON'T STOP GETTING TALLER

* ARE YOU FUCKING SERIOUS?
2017-04-12 18:54:17 -06:00
Cyberboss
71deca2374 SSmachine -> SSmachines 2017-03-22 11:38:35 -04:00
Cyberboss
1365ab99d8 Merges map templates and map loader (#24140)
* Reorganize the mapping code

* Finish this up

* Reee line endings

* FUCKING LINE ENDINGS

* LINARU ENDARU

* >PLS SET REPO LINE ENDINGS

* Comments

* Hoisted by my own travis.yml changes
2017-02-19 16:55:02 +13:00