Commit Graph

206 Commits

Author SHA1 Message Date
ShizCalev 7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
Denton c39fecf80f Moves duplicate CID/IP logging to log_admin_private() 2020-02-10 20:46:01 +01:00
AnturK b93781eb71 Fix /client/Del to call Destroy (#49096)
Weird side-effects here we go.

Moved the removal to the top because that's pretty much most important thing here.
2020-02-02 19:59:06 -08:00
MrPerson f7eb2c905b Unicode awareness Part 2 -- copytext() (#48512)
* Unicode support Part 2 -- copytext()

This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.

I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````

with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.

This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.

* Makes the code functional

* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.

* Removes ninjaspeak since it's unused
2020-01-18 13:07:22 +13:00
spookydonut 3195ceaa22 Update SpacemanDMM suite to 1.2 (#48785)
* Update SpacemanDMM suite to 1.2

* Fix new lint errors
2020-01-16 11:49:39 -05:00
AnturK 47b168f4a3 Makes config version check support beta properly. (#48459) 2019-12-30 15:57:10 -05:00
AnturK 3388205dda Keybinding update fix (#48316) 2019-12-21 00:56:19 +01:00
Bobbahbrown 0d7ef73b17 Refactors References to IRC to be TGS (#47954)
* TGS updates round 1

* TGS updates round 2
2019-11-30 03:59:42 -08:00
AnturK a31c460dc0 Moves achievements from Hub to DB. (#47617)
Drops byond hub support and adds score and top 50 browsers.

Requires DB changes and manual creation of migration script if we want to keep old achievements so no random merges please.
2019-11-26 20:35:28 +13:00
skoglol 738bda22f3 Fixes some admin lookups (#47806) 2019-11-16 20:35:08 -05:00
Aleksej Komarov e87b6c6701 Tgui error reporting, Keyboard passthrough, RPD, NtOS, Power Monitor (#47749)
* Improve tgui fatal error reporting

* Keyboard passthrough in tgui

* New Rapid Pipe Dispenser interface

* Update README with new components

* Release held keys when browser window loses focus

* Power Monitor Interface, NtOS theme and core components

* Yet another CSS rework

* Fix Table, Chart stubs for IE8

* NtOS Main interface

* Supermatter Monitor interface

* Tweak NT color, color + sort gas bars
2019-11-16 04:02:33 -08:00
Couls 26a61a489c ports TGMCs click hack for non-hotkey players ports classic keybinds from TGMC (#47670)
About The Pull Request

Ports tgstation/TerraGov-Marine-Corps#2977, overrides click proc to return focus back to chat bar using winsets also ports tgstation/TerraGov-Marine-Corps#1904 which has two sets of defaults for hotkey and classic mode
fixes #47672 fixes #47659

much credit to @Rohesie and the TGMC team for a bunch of these improvements
Why It's Good For The Game

lets the non-hotkey players walk and talk again
Changelog

cl
add: Custom keybinds will now check what style (classic / hotkey) you prefer when resetting if you use classic mode make sure to reset your keybinds to default!
add: multiple keybind support
tweak: non-hotkey mode keeps focus on chat
fix: pressing 4 as cyborg now properly cycles
fix: AI location hotkeys now work again
/cl
2019-11-14 09:22:33 +13:00
Couls 971ef6a416 Custom movement hotkeys and restore macros for T, O and M (#47626)
* Custom movement hotkeys and restore macros for T, O and M

* stray comma

* update movement keys on SSinput initialize

* use cardinals
2019-11-07 18:07:17 -05:00
Qustinnus 8a01398814 Adds achievement datums (#47058)
* First step

* achievements part 1

* epic

* done

* epic

* removes test datums

* adds minecraft achievement

* asss

* ass 2

* ass

* fix

* UPGRADE

* back-end partially

* back-end

* woops

* epic

* linted

* Achievements (#19)

* initialize SSachievements lists

* achievement ui actually tries to load

* witty commit description

* menu

* done

* done

* jesus christ

* ok linter

* Update code/datums/achievements/_achievement_data.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* Update _achievement_data.dm

* Update misc_achievements.dm

* Update achievements.dm

* Update

* And a space, goddamit!

* Rebuild tgui

* woops

* bruh moemnet

* ok conflicts

* finally
2019-10-26 05:57:42 -07:00
oranges 9d91853f78 Non temp workaround for admins matching stickybans because of… (#46462)
* temp workaround for admins matching stickybans because of a byond bug.

* Globalify the lists used for stickyban exemptions
2019-09-25 18:45:18 -07:00
oranges 78bce66be1 Adds spam prevention to clients
The current limit is 10 messages in 5 seconds, with 20 messages in 5
seconds muting you
2019-07-22 02:31:22 +00:00
Emmett Gaines c25459d938 Adds SHOULD_CALL_PARENT to Destroy() (#45188)
Timers, signals, and components need to know when the thing they're 
attached to is getting destroyed or bad things happen. Since any datum 
can make use of these every destroy needs to call parent.
2019-07-15 18:13:48 -07:00
Kyle Spier-Swenson efec302bfd Fix my fix (#44750)
I messed up #44748 minorly. I check for a string in a list of a numbers because I don't convert it again (job is a if scoped var in the above if)
2019-06-23 08:59:43 +12:00
Kyle Spier-Swenson 03554f0aa1 Moves the asset cache bug check to below the topic limiter
While we were looking at logs to try and figure out how someone has been crashing the servers, oranges pointed out to me that these lines aren't below the topic limiter or the logger. The main asset cache stuff should be above it so legit asset cache sends don't eat up the user's topic limit, but this line can be below it and doing so should protect the user from getting spammed with asset cache browser resets whenever that one bug happens. (I also looked at logs, and the bug this code works around does still seem to be a thing.)
2019-06-22 12:30:26 -07:00
AnturK b5eacbbc87 Fix another version of the asset exploit (#44570) 2019-06-18 00:08:59 -07:00
AnturK 53adafe60d Fixes asset topic sanity. (#44550) 2019-06-15 14:57:44 -04:00
Rob Bailey 0d86efdb52 Widescreen toggle support (doesn't actually enable it) (#43754)
cl
add: Added support for a widescreen toggle, actual widescreen will require a config change.
tweak: Auto-fit view is now the default. This will only apply to new players.
/cl
2019-06-03 11:11:09 +12:00
Kmc2000 6b6537cccd Adds toggleable darkmode to the game! (#43072)
* Adds toggleable darkmode to the game! (Use the toggle darkmode verb if you want to use light mode)

* Removes a random linechange

* Undo unintentional changes

* Changes some forced font tags to use spans, which won't break darkmode.

* Fixes up some problems I found while testing
Darkmode is no longer default (this caused some issues with people getting a broken chat)

* Darkmode sucks less now

* Darkmode button now works again
2019-03-21 11:02:41 +13:00
oranges de70c67639 Merge pull request #43152 from kevinz000/bunker_message
Panic bunker message is now a config.
2019-03-20 22:09:12 +13:00
kevinz000 f8777444d6 syke, nah let's load this every time from the datum 2019-03-17 14:55:50 -07:00
kevinz000 1bb07280c2 the message is now cached and the line has been added to config 2019-03-17 14:54:34 -07:00
kevinz000 92983243c5 panic bunker message config 2019-03-17 14:41:35 -07:00
Tad Hardesty 2bc2e7fe31 Add a type annotation to represent proc paths 2019-03-05 21:09:12 -08:00
YoYoBatty c33235f108 Fixes an undeleted sql query (#42703)
* Fixes an undeleted sql query

* ARE YOU SURE ABOUT THAT
2019-02-09 21:52:10 +11:00
nichlas0010 3ec4eb619f [s] disables the Middle Mouse Button exploit (#42594)
* disables the MMB exploit

* Adds a config option to set a minimum build, with the recommended minimum build for 512 users being 1421

* readds the post-block detection, and changes MMB -> Middle Mouse Button

* Makes it the standard, I guess

Co-Authored-By: nichlas0010 <nichlas00100@gmail.com>

* Update client_procs.dm
2019-01-30 11:07:45 -05:00
kevinz000 620db42963 Refactors the Preferences window to use appearances (#41978)
Instead of using expensive getFlatIcon() calls, character previews are now shown using appearance clones in a second map window.

Its creating a secondary map and adding mut_appearances as screen objs on that map.

There are 1 set of dummy objects per client, it also only creates them while the preview window is open and garbage collects them when it's closed.

Because it creates the MA from the main preview dummy mob, the dummy mob's appearance remains a seperate object and they don't affect each other
2018-12-30 00:11:26 +13:00
Kyle Spier-Swenson d0c14d850d Fix cid randomizer note repeating more often then it should
The expire_timestamp checks were always failing because `null` is not higher than `now()`
2018-12-26 17:00:30 -08:00
AnturK 25d86fc660 Fix for part of client drops. Maybe. (#40455)
* Fix for part of client drops. Maybe.

* Whoops.

* Oh it's a verb.
2018-09-30 23:09:04 +03:00
CitrusGender bb2c82375e Add Note severity and changes UI of administrative notes (#39808)
* Adds note_severity and updates dbconfig. New SQL stuff too.

* whoops please don't hack into my database >:^(

* UI change, changed how it's stored in the DB, removed some queries when it returns, changed stuff to key.

* Update sql_message_system.dm

* this was not defined

* random indent

* wait how did this get here

* okay enough web edits I promise

* just kidding I got u

* Update common.css

* Added buttons, changed UI again, standardized the inputs, added severity for appearance bans, fed the dog

* forgot about the banning panel

* added an asset cache

* corrects asset datum var name
2018-08-26 20:23:29 +10:00
Jordan Brown 77c4f0078e Fix undeleted query (#39688) 2018-08-14 00:06:32 +03:00
Jordie 31f020f3cc Add expiration time for admin messages (#39502)
* add expiration time for messages

* typo

* fix

* src to usr

* allows removing expiry from existing messages

* cancel button
2018-08-12 06:31:14 +10:00
Jordie 0d7ef3ed65 Key instead of ckey for user facing logs and ui (#39009)
* 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
2018-08-11 02:15:50 +10:00
Jordie 9dd566a586 Change +everything admin flag to not use ALL define (#39142)
* change +everything admin flag to not use ALL define

* add proc to handle max flag value changing update to db
2018-07-27 18:15:41 +12:00
Jordan Brown 2ddf0e656f Removes can_vv_get from some things (#39136)
* Removes can_vv_get from some things

* This too

* Remove extra vv_edit_var
2018-07-24 22:15:45 +12:00
AnturK f19611ff77 Adds client byond version to feedback. (#39061)
* Adds client byond version to feedback.

* Duh

* i need more sleep
2018-07-12 17:27:25 +10:00
AnturK 5dff907e97 Adds logging minor client version. 2018-07-09 13:02:28 +02:00
Jordan Brown 00eb79eac4 Merge pull request #38692 from Jordie0608/blacklistedmakesitsoundlikethebuilddidsomethingbadwhichitdidbadbuildnaughtybuild
Blacklisted buggy build 1428
2018-06-24 10:16:36 -04:00
Jordie 21f96755b5 blacklisted buggy 1428 2018-06-24 15:28:18 +10:00
Jordan Brown cf7e8aa9ec Qdels queries, adds sleep safety checks, DBcore checks for leaks (#38363)
* Qdels all queries, adds sleep handling

* DB Core messages admins about undeleted queries

* Compile fixes. Adds missing set waitfor

* Remove world/New shennanigans. Add DBQuery/BlockingExecute()

* Less spammy notifications to admins about undeleted queries

* Increase dbcore fire time to 1 minute

* Upgrade undeleted query warning

* Better place of death

* Fix build

* Remove BlockingExecute, see BSQL PR for why

* Yep, missed that one.

* Psyche, that's the WRONG QUERY!!
2018-06-18 22:48:35 +03:00
Tad Hardesty 75aa8ec4b2 Add "Fit Viewport" verb to automatically size the map window (#38351)
* Add a verb to automatically size the map window

* Add a preference to auto-fit the viewport
2018-06-14 10:03:16 +02:00
Jordie 6b84926599 Fixes datediff not returning (#38215) 2018-06-02 13:41:58 -07:00
ShizCalev c41d6ac965 Standardizes and cleans up some admin messages & logging (#38128)
* Improved logging

* Fixes & emitter logging

* ded
2018-05-30 21:57:06 -07:00
Tad Hardesty d0466f42bc Allow dynamically updating UI style, do so on mob login (#38089) 2018-05-30 12:52:50 +02:00
Jordan Brown 3015b3bf6b Merge pull request #37963 from AutomaticFrenzy/patch/finally
Unredden the input bar when the viewport is clicked
2018-05-25 22:24:31 -04:00
Tad Hardesty 85ac15af9f Only adjust input bar color on hotkey mode 2018-05-25 15:12:17 -07:00