* asset cache cdn
* Fix cdn rsc (#52886)
I was converting this to use length so it didn't have to care if the list existed or not, and forgot to remove the .len. this broke cdn .rsc files because length(num) returns 0.
* Add warning about https to the external rsc config (#53367)
today in hostchat we discovered that most of the servers who tried to
do cdn the .rsc, had unknown issues because they had used https://
urls. Byond can't into https.
like 5 servers had failed to get this to work because of that pitfall,
so im gonna add a warning to the config.
* tchat
* tgchat compile
* fixes
* Merge pull request #53011 from stylemistake/tgui-chat-fix-asay
tgchat: Fix asay
* chat color
* logging
* webstorage
* compile TGUI
* actually like compiles on the DM side
* Update chat-dark.scss
* Update chat-light.scss
* Update resources.txt
* Update tgui-panel.bundle.css
* Colors
* compile
* s
* s
* Ports Gamers TGChat so we can edit it. - NOT LIVE TGCHAT BRANCH (#10226)
* asset cache cdn
* Fix cdn rsc (#52886)
I was converting this to use length so it didn't have to care if the list existed or not, and forgot to remove the .len. this broke cdn .rsc files because length(num) returns 0.
* Add warning about https to the external rsc config (#53367)
today in hostchat we discovered that most of the servers who tried to
do cdn the .rsc, had unknown issues because they had used https://
urls. Byond can't into https.
like 5 servers had failed to get this to work because of that pitfall,
so im gonna add a warning to the config.
* tchat
* tgchat compile
* fixes
* Merge pull request #53011 from stylemistake/tgui-chat-fix-asay
tgchat: Fix asay
* chat color
* logging
* webstorage
* compile TGUI
* actually like compiles on the DM side
* Update chat-dark.scss
* Update chat-light.scss
* Update resources.txt
* Update tgui-panel.bundle.css
* Colors
* compile
* s
* s
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: TheGamerdk <5618080+TheGamerdk@users.noreply.github.com>
Co-authored-by: skoglol <33292112+kriskog@users.noreply.github.com>
Co-authored-by: TheSmallBlue <ilanmori@hotmail.com>
* Fixes Replay Chat
* Update to_chat.dm
* Update chat.dm
* Update demo.dm
* yarn berry
* yarn berry compile
* Update resources.txt
* Update config/resources.txt
* Update resources.txt
* Attempt at fixing reconnect.
* Lets try fix it again
* oops
* THROW THE SINK AT IT
* ree
* Makes Travis work again thank you jamie
* Fixes snowflake images
* Update security.dm
* Updates TGChat Test Merge (#10307)
* asset cache cdn
* Fix cdn rsc (#52886)
I was converting this to use length so it didn't have to care if the list existed or not, and forgot to remove the .len. this broke cdn .rsc files because length(num) returns 0.
* Add warning about https to the external rsc config (#53367)
today in hostchat we discovered that most of the servers who tried to
do cdn the .rsc, had unknown issues because they had used https://
urls. Byond can't into https.
like 5 servers had failed to get this to work because of that pitfall,
so im gonna add a warning to the config.
* tchat
* tgchat compile
* fixes
* Merge pull request #53011 from stylemistake/tgui-chat-fix-asay
tgchat: Fix asay
* chat color
* logging
* webstorage
* compile TGUI
* actually like compiles on the DM side
* Update chat-dark.scss
* Update chat-light.scss
* Update resources.txt
* Update tgui-panel.bundle.css
* Colors
* compile
* s
* s
* Ports Gamers TGChat so we can edit it. - NOT LIVE TGCHAT BRANCH (#10226)
* asset cache cdn
* Fix cdn rsc (#52886)
I was converting this to use length so it didn't have to care if the list existed or not, and forgot to remove the .len. this broke cdn .rsc files because length(num) returns 0.
* Add warning about https to the external rsc config (#53367)
today in hostchat we discovered that most of the servers who tried to
do cdn the .rsc, had unknown issues because they had used https://
urls. Byond can't into https.
like 5 servers had failed to get this to work because of that pitfall,
so im gonna add a warning to the config.
* tchat
* tgchat compile
* fixes
* Merge pull request #53011 from stylemistake/tgui-chat-fix-asay
tgchat: Fix asay
* chat color
* logging
* webstorage
* compile TGUI
* actually like compiles on the DM side
* Update chat-dark.scss
* Update chat-light.scss
* Update resources.txt
* Update tgui-panel.bundle.css
* Colors
* compile
* s
* s
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: TheGamerdk <5618080+TheGamerdk@users.noreply.github.com>
Co-authored-by: skoglol <33292112+kriskog@users.noreply.github.com>
Co-authored-by: TheSmallBlue <ilanmori@hotmail.com>
* Fixes Replay Chat
* Update to_chat.dm
* Update chat.dm
* Update demo.dm
* yarn berry
* yarn berry compile
* Update resources.txt
* Update config/resources.txt
* Update resources.txt
* Attempt at fixing reconnect.
* Lets try fix it again
* oops
* THROW THE SINK AT IT
* ree
* Makes Travis work again thank you jamie
* Fixes snowflake images
* Update security.dm
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: TheGamerdk <5618080+TheGamerdk@users.noreply.github.com>
Co-authored-by: skoglol <33292112+kriskog@users.noreply.github.com>
Co-authored-by: TheSmallBlue <ilanmori@hotmail.com>
Co-authored-by: alexkar598 <25136265+alexkar598@users.noreply.github.com>
* Fixes
* Undo Kitchen Sink
* Fucking 7 Hours.
* status panel
* stat panel fixes
* fixes
* stat panel stuff
* Stat panel finish
* Compile, oops
* Update server_maint.dm
* Update world.dm
* Update interface.dm
* tgui compile
* Update subsystems.dm
* fix statpanel deleting whole admin tab (#54211)
fix: adminhelping no longer removes entire admin tab
fix: end of round no longer removes entire admin tab
* Update skin.dmf
* verbs?
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: skoglol <33292112+kriskog@users.noreply.github.com>
Co-authored-by: TheSmallBlue <ilanmori@hotmail.com>
Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>
Co-authored-by: alexkar598 <25136265+alexkar598@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: Tad Hardesty <tad@platymuus.com>
Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
* Cherry picks the unicode part 2 PR from TG
* Things
* drop 512 support
* TAN --> tan
* Manually does the things that was in renamed files
* CLAMP --> clamp
* ismovableatom -> ismovable
* bugfixes, tg is bad
* Ports sanitize_name
* Bumps checks
* Fixes new linter errors (#48126)
About The Pull Request
This fixes the errors raised by the new feature I'm adding to the linter: SpaceManiac/SpacemanDMM#119
* Update SpacemanDMM suite to 1.2 (#48785)
* Update SpacemanDMM suite to 1.2
* Fix new lint errors
* Removes unreachable code (#48143)
About The Pull Request
As detected by SpaceManiac/SpacemanDMM#123
* casually fixes 50 bugs
* stoopid evil dreamchecker
* stoopid evil dreamchecker
* stoopid evil dreamchecker
* almost the same thing
* Makes all UIs UTF-8
* Fixes bugs
* Fixes runtimes, some related to 513, some not
* Fixes agent ids
Co-authored-by: MrPerson <spamtaffic@gmail.com>
Co-authored-by: alexkar598 <>
Co-authored-by: spookydonut <github@spooksoftware.com>
* Move GLOBAL_PROTECT statements after their globals
* Merge pull request #42870 from AutomaticFrenzy/patch/global-protect
Move GLOBAL_PROTECT statements after their globals
* converts to using key instead of ckey for user facing logs and ui
* more key_name for airlock wires
* futureproofing check for if key changes
* --onlyckeymatch script argument and fail/success counter
* fix
* Photography Update
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Photos broke, retrying
* Persistence stuff
* I'm almost done I promise!
* Persistence mostly working, compile, etc etc
* Persistence mostly working, compile, etc etc
* Remove something really not needed from the PR
* Prevents duplication
* default to off
* removes check tick
* increase slots in albums to 21
* Allows for singular loading
* Update camera_image_capturing.dm
* Addresses review
* Anturk
* Update camera.dm
* Update misc.dm
* Update datum.dm
* Update camera.dm
* Add basic structure of z-level traits
* Restore space transitions and add z-level debug verb
* Restore proper ruin spawning and transit level creation
* Replace station_z_levels and related checks with traits
* Eliminate more uses of ZLEVEL_{STATION_PRIMARY,LAVALAND}
* Change transmission_method to use defines rather than magic numbers
* Use MIN and MAX_FREE_FREQ defines when bounds-checking radios
* Remove violently broken "Debug Signals" verb
The relevant Destroy() is never called, making the static pointers list
take lots of memory and be large enough, even at roundstart, to crash
the chat when invoked (25k+ entries).
* Remove unnecessary checks for SSradio not existing
* Move department frequencies from GLOB to defines
* Replace all hardcoded radio frequencies with named defines
* Change the radio filters to be defines
* Use a define for the default signaler code
* wip
* wip2
* makes code actually compile on 511 + fixes
* versioning
* s
* adds python conversion script, schema change and removes 'force ' from item_used_for_combat
* fix to compile
* forgot to actually commit this
* Adds new debug verb for highlighting roundstart ATs
Debug -> Debug Verbs enable
then
Mapping -> Show roundstart AT markers
Will highlight AT turfs, for easier location and comprehension rather
than looking at the list of coords. List of coords still works fine
though.
* Add the system for managed global variables
* Travis ban old globals
* So you CAN inline proccall, that's neat
* Fix that
* master.dm
* Remove the hack procs
* Move InitGlobals to the proper spot
* configuration.dm
* Fix the missing pre-slash
* clockcult.dm
* This is probably for the best
* Doy
* Fix shit
* Rest of the DEFINES tree
* Fix
* Use global. for access
* Update find_references_in_globals
Always hated that proc
Whoever made it must've bee a r e a l idiot...
* __HELPERS tree
* Move global initialization to master.
Fix the declaration
* database.dm
* Dat newline
* I said DECLARATIVE order!
* Here's something you can chew on @Iamgoofball
* game_modes.dm
* Fix this
* genetics.dm
* flavor_misc.dm
* More stuff
* Do it mso's way. Keep the controllers as global
* Make master actually see it
* Fix
* Finish _globalvars/lists
* Finish the rest of the _globalvars tree
* This is weird
* Migrate the controllers
* SLOTH -> GLOB
* Lighting globals
* round_start_time -> ticker
* PAI card list -> pai SS
* record_id_num -> static
* Diseases list -> SSdisease
* More disease globals to the SS
* More disease stuff
* Emote list
* Better and better
* Bluh
* So much stuff
* Ahh
* Wires
* dview
* station_areas
* Teleportlocs
* blood_splatter_icons
* Stuff and such
* More stuff
* RAD IO
* More stuff and such
* Blob shit
* Changeling stuff
* Add "Balance" to changelogs
* Balance for changelog compiler + Auto Tagging
* Update the PR template
* hivemind_bank
* Bip
* sacrificed
* Good shit
* Better define
* More cult shit
* Devil shit
* Gang shit
* > borers
Fix shit
* Rename the define
* Nuke
* Objectives
* Sandbox
* Multiverse sword
* Announce systems
* Stuff and such
* TC con
* Airlock
* doppllllerrrrrr
* holopads
* Shut up byond you inconsistent fuck
* Sneaky fuck
* Burp
* Bip
* Fixnshit
* Port without regard
* askdlfjs;
* asdfjasoidojfi
* Protected globals and more
* SO MANY
* ajsimkvahsaoisd
* akfdsiaopwimfeoiwafaw
* gsdfigjosidjfgiosdg
* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!
* facerolll
* ASDFASDFASDF
* Removes the unused parts of dmm_suite
* WIP
* Fix quote
* asdfjauwfnkjs
* afwlunhskjfda
* asfjlaiwuefhaf
* SO CLOSE
* wwwweeeeeewwwww
* agdgmoewranwg
* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?
* Fix syntax errors
* 100 errors
* Another 100
* So many...
* Ugh
* More shit
* kilme
* Stuuuuuufffff
* ajrgmrlshio;djfa;sdkl
* jkbhkhjbmjvjmh
* soi soi soi
* butt
* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING
* lllllllllllllllllllllllllllllllllllllllllll
* afsdijfiawhnflnjhnwsdfs
* yugykihlugk,kj
* time to go
* STUFFF!!!
* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!
* ngoaijdjlfkamsdlkf
* Break time
* aufjsdklfalsjfi
* CONTROL KAY AND PRAY
* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* Goteem
* Fix testing mode
* This does not belong in this PR
* Convert it to a controller
* Eh, fuck this option
* Revert controllerization Ill do it some other time
* Fix
* Working controllerization
* FOR THE LOVE OF CHRIST PROTECT THE LOGS
* Protect admins and deadmins
* Use the inbuilt proc
* Trimmed down map_merge function to be simpler and straightforward, no
more recycling keys;
New function get_key, looks up a dict key by abusing python;
New function key_int_value, converts a base 52 key to a base 10 integer
value;
Map helper functions are no longer dependent on global values;
Reorganized map_helpers.py;
* Added Map Conflict Fixer Helper;
Changed parse_map function to accept a map's raw text instead of a file
path;
Tweaked some map merger code;
* Map Conflict Fixer readme.md entry
completed readme.md
more
Removed debug code
We now write frontend code in Coffeescript, alongside our LESS.
PostCSS adds hacks to make CSS work on old versions of IE.
Bower is used to manage dependencies.
Gulp is used to build the code.
Images are dropped in favor of SVG or CSS effects.
NanoUI is now a 'simple' asset in the asset_cache
Clients now cache their jobbans to save on DB queries.
Legacy jobbans and "new" (savefile) jobbans have been removed.
These are old cruft that has been unused for years, and since we require
a DB for notes anyway we might as well just get rid of the legacy stuff.
I considered removing legacy bans as well, but I was unsure if that
would go way beyond the scope of this PR (my main goal here is making
jobban_isbanned not awful).
Also note that this was basically untested, as I do not have a test
database. Any help testing this would be much appreciated.
Misc:
+Fixes unreported issue with initializing lighting on a specific zlevel
+Fixes two similar issues with moveElement and moveRange. Where fromIndex or toIndex could be adjusted incorrectly in certain conditions. Potentially causing bad-sorts, or out of bound errors.
+Rewrites listclearnulls(list/L) to no longer iterate through L.len elements for every null in the list (plus 1). i.e. went from L.len*(number_of_nulls+1) list-element reads (best-case), to L.len list-element reads (worst-case)
+New proc/getElementByVar(list/L, varname, value) which finds the first datum in a list, with a variable named varname, which equals value. You can also feed it atoms instead of lists due to the way the in operator functions.
+Fixes an unreported issue with Yota's list2text rewrite. Under certain conditions, the first element would not be converted into a string. Causing type-mismatch runtimes.
+New global map_ready variable. This is not fully implemented yet, but will be used to avoid duplicate calls to initialize() for map objects.
+All turfs now maintain references to all lights currently illuminating them. This will mean higher memory use unfortunately, due to the huge number of turfs. However, it will speed up updateAffectingLights significantly. I've used list husbandry to reduce baseline memory usage, so it shouldn't be any worse than some past atmos modifications memory-wise.
-Removed 'quadratic lighting', can add this back at some point. Sorry.
+modified the way lum() works slightly, to allow turfs to have overridden delta-lumen. i.e. space cannot be illuminated more than its default ambiance. This allowed removal of some iffy special-snowflake lighting areas implemented by somebody else.
+Lighting images in the dmi can now use arbitrary naming schemes. It is reliant on order now. This allows the dmi to be replaced by simply dropping in a new dmi.
-Removed all subtypes of /area/shuttle. Shuttles now create duplicate 'rooms' of /area/shuttle. (More on this later). This will conflict with most maps. Guide on how to fix to follow.
+All verbs/tools relating to world.tick_lag were refactored to use world.fps. However old config text for setting tick_lag will still work (it converts the value to fps for you)
+MC stats improved using smoothing. They now have their own tab so they dont get in the way when you're playing as an admin.
-removed the push_mob_back stuff due to conflicting changes. Sorry Giacom.
_OK, NOW THE ACTUAL INTERESTING STUFF_
Following systems moved over to subsystem datums:
air_master
garbage_manager
lighting_controller
process_mobs (aka Life())
nanomanager
power
sun
pipenets
AFK kick loops
shuttle_controller (aka emergency shuttle/pods), supply_shuttle and other shuttles
voting
bots
radio
diseases
events
jobs
objects
ticker
Subsystems hooks and variables should be commented fairly in-depth. If anything isn't particularly clear, please make an issue.
Many system-specific global variables have been refactored into
All tickers which previously used world.timeofday now use world.time
some subsystems can iterate before round start. this resolves the issue with votes not working pregame
-Removed check for infrared beams. (it checked each time that anything moved)
-Removed 'movement_disabled' check, the verb is also completely removed.
For space Entered() turfs:
-Removed check for meteor
Now meteors and immovable rods will use the same proc to determinate their start and finish, while moving they'll check in which z level they are, deleting themselves if they leave it.
-Removed spawn() to move objects being pulled between z levels
Replaced the step() from mob pulling movement code and replaced them with Move()
For asteroid Entered turfs:
-Removed check for mining cyborgs, now it will be next to the janitor borg check to clean the floor.
Mecha code got a small clean, removing the Entered() calls from there.
You can view these logs in-game using a debug verb. You have to use the debug-verbs command to see it.
Removed the dellogging compile option. If this is a problem, speak up, but for most users, this new functionality is more useful.