Commit Graph

456 Commits

Author SHA1 Message Date
kevinz000
c6d710d40e VV refactors 2 - Actually not indefinitely WIP (#45217)
About The Pull Request

The thing other than ruining maps that I was working on
Refactors VV to use a more standard way of doing topic dropdown options rather than a huge if/else chain
Marking datums is now a right click option
Moves a few files around too/few procs
Why It's Good For The Game

Makes it easier to add more VV dropdown options in the future, and moving href list keys to defines make misspelling them harder.
Changelog

cl
add: Oh yeah also added a "return value of proccall" option for VV var editing.
refactor: View Variables has been refactored. It should now be easier to make VV dropdown options.
/cl
2019-08-03 14:43:26 +12:00
AffectedArc07
c4e75bc40b [READY] SSdiscord and Round Notifications (#44231)
* Notify System

* V2

* Adds a hint

* Stoned fixes round 1

* Use grammar wells I can

* This didnt work

* I wish you could test on TGS without committing

* Jordie fixes round 1

* oops

* This took way longer than it should have taken

* Adds in endnotify for serverops

* Spacing
2019-06-30 00:43:25 +10:00
spookydonut
c5f7f5b063 Removes shuttle manipulator (#44655)
* Removes shuttle manipulator

* oops

* moves ui to ssshuttle

* fuck it lets just remove it.

* ooops

* Revert "fuck it lets just remove it."

This reverts commit 8a95879f21d3f4aad3d56e33fa90ebc1940c1e27.

* re-remove the old admin proc
2019-06-23 21:24:10 +02:00
vuonojenmustaturska
90467b120d Adds a toolbox verb for spawning reagent containers and grenades (#44261)
Changelog

cl Naksu
admin: "Spawn reagent container" verb has been added to the Debug tab. It can be used to spawn reagent containers and grenades with fully customized contents.
/cl
2019-06-03 12:08:49 +12:00
AnturK
a386f71194 Saving/loading custom outfits. (#44183)
* Saving/loading custom outfits.

* Small fix and some more relevant name
2019-06-01 10:31:37 +12:00
ShizCalev
93c9fb4cd3 Fix admin follow runtime (#43282)
Fixed a minor runtime caused by admins clicking a follow link while in
the lobby.
2019-03-23 22:50:50 -07:00
Tad Hardesty
3756bbf900 Move GLOBAL_PROTECT statements after their globals 2019-02-21 20:59:41 -08:00
coiax
d94c5cacb0 Podspawn admin verb, like Spawn, but more IC (#41981)
* Podspawn admin verb, like spawn, but more IC

🆑 coiax
admin: New 'Podspawn' verb, which functions like 'Spawn', except
any atoms movable spawned will be dropped in via a no-damage, no-explosion
Centcom supply pod.
/🆑

Essentially, sometimes you want to spawn stuff in, quickly, in an adhoc manner.

Use of the full Centcom launchbay is fine if you're doing a full blown drop or event
or want some customisation, but sometimes you want a quick supply pod.

The admin smite "Supply Pod (Quick)" has been used for this purpose, but it has a side
effect of setting people on fire and damaging them, which isn't what you want
if it's just for spawning stuff in.

* Adds option to Game Panel->Create Object

* Code review I
2019-01-04 10:00:04 -05:00
Jordie0608
b9fb0388f7 rework of legacy admin loading to support punctuation with new format 2018-12-22 18:35:50 +11:00
Jordie
8a66665e95 Ban system and interface update (#41176)
Spiritual successor and extension to #17798, an almost entire rebuild of the SQL ban system backend and interface.
Bantypes are removed per #8584 and #6174. All bans are now 'role bans', server bans are when a ban's role is server. Admin bans are a column, meaning it's possible to ban admins from jobs.
Bans now have only an expiry datetime, duration is calculated from this when queried.
unbanned column is removed as it's superfluous, checking unban status is now done through checking unban_datetime. unban_round_id column added. Each ip and computerid columns rearranged so ip is always first, like in other tables. Bans now permit a null ckey, ip and computerid.

Ban checking is split into two procs now is_banned_from() does a check if a ckey is banned from one or more roles and returns true or false. This effectively replaces jobban_isbanned() used in simple if() statements. If connected a client's ban cache is checked rather than querying the DB. This makes it possible for a client connected to two or more servers to ignore any bans made on one server until their ban cache is rebuilt on the others. Could be avoided with cross-server calls to update ban caches or just the removal of the ban cache but as is I've done neither since I think it's enough of an edge case to not be worth it.
The second proc is is_banned_from_with_details(), this queries the DB for a role ban on a player's ckey, ip or CID and returns the details. This replaces direct queries in IsBanned.dm and the preferences menu.

The legacy ban system is removed.

The interfaces for banning, unbanning and editing bans have been remade to require less clicking and easier simultaneous operations. The banning and jobban panel are combined. They also store player connection details when opened so a client disconnecting no longer stops a ban being placed.

New banning panel:
Key, IP and CID can all be toggled to allow excluding them from a ban.
Checking Use IP and CID from last connection lets you enter only a ckey and have the DB fill these fields in for you, if possible.
Temporary bans have a drop-menu which lets you select between seconds, minutes, hours, days, weeks, months and years so you don't need to calculate how many minutes a long ban would be. The ban is still converted into minutes on the DB however.
Checking any of the head roles will check both of the boxes for you.
The red role box indicates there is already a ban on that role for this ckey. You can apply additional role bans to stack them.

New unbanning panel:
Unbanning panel is now separate from the banning panel but otherwise functionally the same.

Ban editing panel:
Actually just a modified banning panel, all the features from it work the same here.
You can now edit almost all parameters of a ban instead of just the reason.
You can't edit severity as it's not really part of the ban.
The panels have been tested but I've not been able to get my local server to be accessible so ban functionality isn't properly confirmed. Plenty of testing will be required as I'd rather not break bans.



cl
admin: Ban interface rework. The banning and unbanning panels have received a new design which is easier to use and allows multiple role bans to be made at once.
prefix: Ban search and unbanning moved to unbanning panel, which is now a separate panel to the old banning panel.
/cl
2018-12-05 08:48:37 +13:00
ShizCalev
c167d37121 Fixes admin damage editting not logging the target's real name / key. (#41318)
* Fixes admin damage editting not logging the target's real name / key.

* few more areas
2018-11-06 14:10:20 -05:00
ShizCalev
c12012c3ad Admin prefs stuff (#41041)
fixes #41106 since it'll have it's own fucking location.

cl ShizCalev
add: Admins can now personalize their asay message color on servers with the feature enabled.
tweak: Moved some admin only preference verbs out of the Preferences tab and to a new admin preferences tab to help unclutter it / prevent accidental toggling of fun things.
/cl

Note that the start of the admin message will still use the default formatting just so it can be quickly recognized as an admin message and not an OOC one.
2018-10-25 11:43:30 +13:00
MrDoomBringer
c7ef142616 [DOCUMENTED AND READY TO MINGLE](EPIC MEME VIDEO INSIDE!) NEW COOL ADMIN TOOL: ADVANCED HIGH DEFINITION SUPPLYPOD SUMMONING (also supplypod refactor) (PLEASE UPTHUMB) (#39936)
MrDoomBringer

admin: Admins can now spawn things in ICly (as well as do a bunch of other cool new stuff) using the Config/Launch Supplypod verb!

code: also supplypods have been refactored
2018-09-21 08:59:52 +12:00
kevinz000
230e47c0ea Configuration entry refactor! (#39608)
* Config entry refactor

* Fixes

* Update configuration.dm
2018-08-10 15:44:14 -04:00
Dax Dupont
9ed24a5ed2 merge 2018-06-14 13:47:34 +02:00
Dax Dupont
57f1fb4889 Adds Syndicate headset messaging 2018-06-14 13:43:04 +02:00
Dax Dupont
da5ede5ff7 Admins can now send CentCom messages as an alternative to SMs (#38401)
* Admins can now send CentCom messages as an alternative to SMs for a more ICly feel.

* aaaa

* oh shit its easy

* aaa
2018-06-14 00:23:44 -07:00
Dax Dupont
f83008185a oh shit its easy 2018-06-13 19:37:42 +02:00
Dax Dupont
113678dba8 Admins can now send CentCom messages as an alternative to SMs for a more ICly feel. 2018-06-10 17:42:46 +02:00
ShizCalev
3abd2b6d27 Cleans up logging 2018-06-09 15:51:58 -04:00
Armhulen
d4757edc79 The Run Weather Verb, from "Adds acid geysers and seismic events to lavaland" (#37910)
* run weather!

* there we go.
2018-05-19 12:51:21 -07:00
Dax Dupont
dbaeb55d33 Gives admins the D(say) hotkey + fixes buildmode permissions (#37413) 2018-04-25 22:39:07 -04:00
Dax Dupont
47de11d966 Readds shortcut for the current round logs. (#37245)
* Removes antag huds and show tickets verb

* Readds shortcut to get to the current round log files

* Make a seperate proc
2018-04-16 15:44:20 +03:00
Bjorn Neergaard
d7966ced09 Use a rust DLL for logging (#36858)
By moving our logging to a DLL we see a drop in CPU/real time of 2-3 orders of magnitude. This is due to BYOND opening and closing file handles on every write, causing incredible amounts of unneeded overhead. The logging library also handles timestamps for us, further increasing performance gains.

This library will also allow for further offloading in the future, such as completely replacing file2text() and friends.

A pre-compiled DLL is bundled, but Linux users will have to compile manually. Directions can be found at the rust-g repo.

Log output is enhanced with millisecond time stamps:

[2018-04-01 15:56:23.522] blah blah blah

This includes runtimes as well, which benefit from the same timestamp improvements and no longer have hacky splitting code to add their own timestamps.

Log shutdown is handled in a dedicated proc called as late as possible, as rust-g integration expands this will be factored out into a generic native code shutdown proc.
2018-04-11 10:01:31 +12:00
vuonojenmustaturska
ece7de4fb2 Admin borg panel (#36990)
* borgpanel

* wip borg upgrades

* some more

* lockdown

* Update borgopanel.ract

* Update borgopanel.ract

* Update borgpanel.dm

* fuggin borg upgrades :DDD

* more compile, less whatever

* meaningless churn

* and we're done

* usr, vtec

* Update borgopanel.ract

* Update borgpanel.dm

* many squid are cool

* reviews

* coerce to client, much nicer this way

* add admin logging

* review stuff
2018-04-08 11:46:27 -04:00
oranges
2727835216 Revert "[s] Disables non-essential admin verbs to prevent april fools from turning into "admins spam buttons""
This reverts commit 8f8dabdf49.
2018-03-31 23:33:21 +00:00
oranges
f560613b0f Revert "Disables additional verbs that can be used to bypass the blocks."
This reverts commit f11bbee15a.
2018-03-31 23:31:54 +00:00
Iamgoofball
f11bbee15a Disables additional verbs that can be used to bypass the blocks. 2018-03-31 15:48:37 -07:00
Iamgoofball
8f8dabdf49 [s] Disables non-essential admin verbs to prevent april fools from turning into "admins spam buttons" 2018-03-31 15:35:28 -07: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
38cbff3638 Fix some debug verbs lingering after deadmin (#36683) 2018-03-26 22:17:20 -04:00
ShizCalev
03431ab173 Fixes omega power, fixes various atmosia issues, cleans up dirty camera vars (#36545)
cl ShizCalev
fix: Fixed a large number of missing APCs on Omegastation
fix: Fixed unpowered Incinerator outlet injector on Omegastation.
fix: Replaced glass window at Omegastation's incinerator with a plasma window.
fix: Fixes broken atmos injectors on Omega
fix: Fixes broken air outlet on Meta
fix: Fixed a couple of malfunctioning atmospheric monitors across the rest of the maps
add: New test atmos monitoring console debug verb to help alleviate future issues.
/cl

Added a ton of missing APCs and cleaned up some dirty camera name varedits.
2018-03-24 15:16:26 +13:00
vuonojenmustaturska
fe04b0dfb9 Allows admins to spawn mob-like objects for shenanigans (#36153)
This is basically extracting the functionality of the animation spell into an admin verb.

Please excuse the browser.dm code, this is more of a stepping stone towards the more complicated popup needed for custom ERTs.

cl Naksu
admin: Admins can now easily spawn mobs that look like objects. Googly eyes optional!
/cl
2018-03-06 13:28:17 +13:00
Cruix
dedf5f5ed9 Disease antagonist (#35988)
* Virus antagonist initial commit

* Updated disease code

* Sentient virus improvements

* Renamed /mob/living/var/viruses to diseases, and /mob/living/var/resistances to disease_resistances

* Added sentient virus event

* Renamed VIRUS defines to DISEASE defines

* Fixed bugs in rewritten disease code

* Fixed advanced disease Copy()

* Finalized disease antagonist

* Made cooldown buttons stop processing if they are removed from an owner.
Made sentient disease active sneeze and cough not available if the host is unconscious.
Made sentient disease menu refresh when adaptations are ready or hosts are added or removed.
Made sentient disease following use movement signals instead of fastprocess.

* Added better icons to sentient disease abilities
2018-03-05 13:55:10 +01:00
vuonojenmustaturska
6f36eba7ed Admin combohud verb (#36096)
* combohuds

* Update randomverbs.dm
2018-03-03 16:34:15 -05:00
vuonojenmustaturska
a1a45f07f1 makes cargo spawning easy (#36094) 2018-03-03 16:33:28 -05:00
Jordie
23a45889ed Modernizes SQL admin loading (#35264)
* updates sqladmins with excluded flags and tempminning

* rank, editing and permission protections; json backup

* fixes

* reverted the wrong file

* fix slidecolor cascading and disabled switches not being sent in form

* removes debug uncommenting

* whoops this too

* commas fix + versions for changelog entry headers since 3.0

* actually account for can_edit_flags and use of @ with - or *

* fixes and rearrangement of admin > localhost > autoadmin precedence

* in case you want to not have autologin autoadmins
2018-03-02 13:38:26 +13:00
vuonojenmustaturska
8da498119d Removes SNPCs (#36016)
* he's dead, jim

* a few stragglers

* Restores the populate world-verb
2018-02-28 19:11:34 +13:00
Tad Hardesty
dfc0f854a3 Properly allow cancelling DynEx debug verbs (#35325)
Selecting "Cancel" now actually cancels the output rather than acting
the same as inputting zero. Also fixes a spelling error.
2018-02-06 00:35:19 -05:00
Emmett Gaines
4ec09a0c19 Re-Support old hotkey mode behaviour (#33460)
* supports old hotkey mode behavior

* testmerge fixes
2017-12-17 15:35:47 +13:00
Kyle Spier-Swenson
4e929c74a9 Deadmin tweaks: Admins without +AUTOLOGIN start deadmined. AUTOLOGIN defaults to on. (#33480)
* Deadmin tweaks, Admins without +ADMIN start deadmined.
Deadmining no longer destroys the admin datum.
Admins without +ADMIN start deadmined, reloading admins re-deadmins them.
Moved some code around to make it more sane
People with +PERMISSION can now deadmin or readmin other admins at will.

* Adds new flag for if the role should automatically log in, defaults to on, can be removed with -AUTOLOGIN
Also fixes a bug in permission panel not handling these cases gracefully
2017-12-13 22:03:37 -05:00
Jordie
8b19b490d1 JSON feedback (#32188)
* 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
2017-11-17 02:43:12 -05:00
Emmett Gaines
28e6359939 makes blueprints work on station and able to expand old areas (#32280)
🆑 ninjanomnom
add: You can now select a nearby area to expand when using a blueprint instead of making a new area.
add: New shuttle areas can be created using blueprints. This is currently not useful but will be used later for shuttle construction.
tweak: Blueprints can modify existing areas on station.
admin: Blueprint functionality has been added to the debug tab as a verb.
/🆑

Additionally the code for getting all turfs in a contained space has been refactored for some pretty good performance improvements.

Old proc: Self CPU 8.816, Total CPU: 10.009, Real Time: 10.009, Calls: 5000
New proc: Self CPU 4.174, Total CPU: 9.000, Real Time: 9.001, Calls: 5000

They've been moved into a area helpers file.
2017-11-13 22:32:36 +13:00
Kyle Spier-Swenson
d7b537ce24 SSoverlay improvements and tweaks (#32371)
* Overlay per-type cost logging.

Overlays will now log how long each type took to process.

Changed up how overlays was done to account for the fact its a queue and not a processor. (it was using almost none of the processing subsystem framework)

Made the overlay loop faster by making it not cut the list until the end.

Added a simple generic benchmark stat tracking system.

I don't know how much overhead this adds to overlays. i may put it behind testing or something, but i do want to test this on the serbers to get some stats.

* Removes flush() as it was creating race conditions

* Use ref

* text2file

* Atoms added as an overlay will have their pending overlays compiled before being converted to an appearance
2017-11-10 20:25:29 +01:00
AnturK
a51094483b Stops check antags message if round has not started yet. 2017-10-08 21:31:36 +02:00
Firecage
ee3e8d2846 merge conflict fix 2017-10-05 11:22:57 +02:00
Firecage
2ae0380fef Does some code standardization/consistency 2017-10-05 11:13:47 +02:00
Jordan Brown
4178c209f1 Configuration datum refactor (#30763)
* Configuration datum refactor

* More WIP

* New easier on the eyes format

* More WIP

* Finished config.txt

* Fucktons more WIP

* The end of conversion draws near...

* Add all this shit

* Done converting entries finally

* Hunting down compile errors

* More WIP

* MORE CONVERSIONS

* More WIP

* More WIP

* Oh shit only 90 errors this time!

* IT COMPILES!!!

* Fixes world start runtimes
2017-09-29 15:36:51 +13:00
Firecage
f57f490deb Fixes it so Deadmin properly hides the Player Panel verb for admins. 2017-09-17 19:11:59 +02:00
JJRcop
3259ac4c49 Adds Internet admin midi (#30457)
* Adds Internet admin midi

* Moves global regex into proc (shell_url_scrub)

* Moves shelleo to world
Adds quotes around the command in shelleo, to encapsulate it

* Admins can stop playing web sounds

* Revised internet midi extension order
Moved m4a to least preferred,
as it can potentially carry non-aac or non-mpeg-3 audio

* Kills \n in web sound

* play_web_sound availability based on config

* play web sound and shelleo tweaks

istypeless for in play web sound & readability parenthesis around binary AND
add return index defines for shelleo proc

* Security fix for play web sound
2017-09-08 10:31:33 -04:00