Commit Graph

29 Commits

Author SHA1 Message Date
Timberpoes
f36c7fa43f Split malf AI antag datum away from traitor, enable malf AI roundstart ruleset. (#59064)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-05-13 02:39:16 -07:00
TiviPlus
ff1631b7b9 Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
2020-09-23 00:46:21 +01:00
ShizCalev
9d846517d9 Fixes Admin Help Tickets not showing the name of the admin who generated a ban. (#52195) 2020-07-14 20:14:38 -04:00
Jordie
61d5549ac3 fix missing comma and argument name in edit query (#52127)
Co-authored-by: Jordie0608 <=>
2020-07-12 03:15:01 +10:00
nemvar
b87f65d95e Converts ALL typepaths to lowercase (#51642)
* Case of lower

* More changes

* Ruins the nice 420 diff, brainfart when doing the second batch of conversions

* More changes

* Next batch. I think

* Converts even more paths

* Restarts bots

* Capital Free Zone

* Come on travis, do something

* Renames areas

* Bots, please stop dying

* Updates CONTRIBUTING.md and updates a few paths I missed.

* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
2020-06-17 20:47:57 -03:00
EdgeLordExe
b237791423 HERETICS: Solo Antagonist that grows with power (#51199)
* basic antag items


hey


based


game is on


ree


e


brings back good sprites


eueuuee


eeeeeeeeeeeeeeeeeeee


more


tgui baby


FINALLY


e


Small changes


adds better point s


Finishing touch!


FINISHED

ANTAG FINISHED. FUCKING. FINALLY
grammer


E


E?

* rebuilt tgui

* gamemode fixes

* i love inconsistent var names

* sprootes

* ath review

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

* Automatic changelog compile [ci skip]

* a shit ton of changes

* Apply suggestions from code review

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

* sprootes

* more changes ree

* Fixes and upgrades

* sprootes done

* dmdoc compliance

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* mewtewnew revieww ~~

* e

* Automatic changelog compile [ci skip]

* e

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* E

* autodoc

* E

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* removed Destroy()

* * 0.5

* bugsquash

* e

* changes to ashlord's rite

* e

e

* e?

* the fuck

* adds station wide alerts for ascension events

* fixes an autodoc

* tgui

* e

e

* removes a redundant line of code

* sickly blade is now normal size item

* changes a line of code in flesh

* no revives for ghouls!

* uwu

* Update code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm

Co-authored-by: nemvar <47324920+nemvar@users.noreply.github.com>

* E

* E2

* Automatic changelog compile [ci skip]

* Makes eldritch cult into HERETICS

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* E

* unfucks medallions code

* long live list loops

* E

* E

* i love my git crashing

* Magics

* E

* removes TRAIT_GHOUL since it was redundant

* Update code/modules/mob/living/carbon/inventory.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/carbon/inventory.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/carbon/human/species.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/carbon/human/species.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/carbon/human/human_update_icons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* fixies uwu

* hopefully i fixed all return ..()

* E

* EEEEEEE

* wormie now is refactored

* removes destroy

* Update code/modules/surgery/bodyparts/bodyparts.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Automatic changelog compile [ci skip]

* Update code/modules/mob/living/simple_animal/eldritch_demons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/knowledge/rust_lore.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/knowledge/rust_lore.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* E

* E

* Update code/modules/mob/living/simple_animal/eldritch_demons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/knowledge/rust_lore.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/simple_animal/eldritch_demons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/mob/living/simple_animal/eldritch_demons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* E

* E?

* E

* one more

* k

* OH SHIT OH FUCK

* replaces ROLE_ECULT with ROLE_HERETIC and fixes preferences

* REE

* fleshy fixes

* fixes summonings

* REE

* texture fix

* fixes a stupid fucking runtime that i noticed coz i forgot people can be borged. FUCK

* grammer

* nullrods can now remove runes

* HOLY SHIT, HOTFIX NERF

* E

* E

* TEMPORARY SOLUTION TO MAKE HERETICS SPAWN NATURALLY

* Update code/modules/antagonists/eldritch_cult/eldritch_antag.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/eldritch_book.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/eldritch_effects.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/eldritch_cult/eldritch_items.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* SECOND TEMPORARY FIX

* fixes fixes fixes fixes

* i hope this no longer will qdel summons

* E

* please push this asap

* E

* buffs sickly blade to 17 damage and only allowes culties to use it

* Explanations uwu

* examine changes ree

* e

* E

* )

* E

* E

* Ash fix

* changes to mad touch

* replaces e_cult with heretics and fixes protect objective to suceed when someone suicides

* E

* makes worm code use COMSIG_MOVABLE_MOVED

* replaces bad var names

* makes eldritch knowledge an assoc list

* E

* Update code/modules/mob/living/simple_animal/eldritch_demons.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* what the fuck

* the fuck

* fixies

* EEE

* fixes

* e

* fixes

* mansus grasp slight buff

* changes overall changes

* E

* logging

* changes the eldritch armor into a nicer looking kryson robes

* tgui bundle

* QOL sprites and a spell to contract armsy

* SPRITES

* readds rust floors

* Fixes pointed out by anturk

* E

* E

* E

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* Cleanup

* Fixes

* E

* EEEEEEEEEEE

* makes heretics a little bit more common

* Update code/modules/antagonists/eldritch_cult/knowledge/flesh_lore.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* EEE

* eee

* E

* E

* Init

* Makes shit more readable

* h

* e

* E

* wounds compatibility patch

* hnng

* rusty better sprite

* turn

* Apply suggestions from code review

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* E

* further renames e

* E

* JS side

* changes reee

* e

* E

* yeesh

* e

* E

* pr

* e

* E

* changes re

* AAAAAAAAAAAAAA

* e

* antag huud

* e

* e

* hnnng

* hnng

* HNNNNG final patch - LAST TESTMERGABLE COMMIT

* HNNG NEVERMIND THIS IS THE LAST TESTMERGABLE COMMIT DONT LISTEN TO LIES BELOW

* e

* FINAL PATCH - MERGE READY

Adds defines, buffs blood siphon a bit so it can utilize wounds and replaces ROLE_CULTIST with ROLE_HERETIC

* forgot about a single debug line aaa

* hnnnhng

* hng

* a!

* aaa

* applies code review

* e

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: nemvar <47324920+nemvar@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-06-14 18:10:16 +02:00
Jordie
67e4646d34 Fix for unbanning panel search (#51564)
I tested with general logging on, these parameters were being passed as '' instead from DM's "" to NULL in sql.

i.e.

WHERE	('dave' IS NULL OR ckey = 'dave') AND
	(NULL IS NULL OR a_ckey = NULL) AND
	('' IS NULL OR ip = INET_ATON('')) AND
	('' IS NULL OR computerid = '')

Haven't checked if this is happening elsewhere.
2020-06-11 09:12:37 +12:00
Tad Hardesty
829e95896e Replace BSQL with rust-g, paramaterize all queries (#51255)
cl
refactor: BSQL has been replaced with rust-g, improving SQL reliability and safety.
/cl

Queries were parameterized as much as possible. Careful code read by someone else also versed in SQL would be a good idea. Things seemed fine spot-testing roundstart, library, bans, and polls, but more stress-testing may be useful.

Also updates rust-g to v0.4.5:

    Improved Linux .so detection
    Perlin noise functions

Also updates Travis script to bionic.
2020-06-08 16:00:07 +12:00
Jordan Brown
63e20801ed TGS chat usage cleanup
- Rename send2tgs to sent2adminchat.
- Move both chat procs to SSdiscord.dm.
- Fix bug when sending to TGS4 non-admin chats.
- Add DMdocs
- Improve notify command
  - Store mentions as strings
  - Disable command if config setting isn't enabled
2020-05-23 13:33:09 -04:00
Jordie
248a6fd50c Datum based poll creation and vote handling update (#50843)
An almost complete rework of how creating polls, their data and voting on them is handled.

Instead of repeatedly querying for poll data, running polls are loaded at runtime into poll_question and poll_option datums that stores all the needed variables for both. This datum is then used for creating, editing and accessing poll data. The database is only contacted when saving changes or votes.

Creating polls and options is now done with a html window instead of a series of popups akin to how the banning panel works. The form data is parsed and error-checked before passing to be saved.
This is done in two stages, first time a poll's details are entered and it must be initialized (created as a datum) before options can be added and all of both are saved to the database. Instructions about how this work are shown on the poll creation window.

A new field for polls has been added, subtitles, which is text only shown when a poll is opened by a player instead of on the list of polls. Intended so the actual question text can be kept to only a name and important information about a poll goes in a subtitle.
All polls can now have revoting enabled on them.
Polls can have a starting datetime specified, this can be in the past but why would you do that?
Polls and options can be edited once created, excluding the type of a poll. Doing so will by default clear all existing poll votes. Votes can also be cleared by a button.

The handling of how votes are processed has been adapted for the datum system but is on the whole not functionally that different aside from poll validation not being roughly copypasted across each poll type's vote proc

All poll tables now have a deleted column for retaining 'deleted' data.
poll_question has also gained the columns created_datetime, subtitle, allow_revoting, their function explained above, and a change of idx_pquest_time_admin to idx_pquest_time_deleted_id.

A stored procedure set_poll_deleted has been added. This is called when setting a poll as deleted to avoid needing 4 separate queries from the server or one fairly long 4-way joined 

Create Poll verb is renamed to Server Poll Management
2020-05-11 14:34:51 +12:00
Rob Bailey
c20a04543b Port of Replays from Yogstation (#48579)
* demos (ported from yogstation)

rustg update + write with no format

use external hook for logging

use proper log vars

fix + clarifying comment

don't start the log

release build of rust-g

fix something caught by the lint

Update code/__DEFINES/subsystems.dm

Co-Authored-By: Jordan Brown <Cyberboss@users.noreply.github.com>

Update code/controllers/subsystem/demo.dm

Co-Authored-By: JJRcop <jrubcop@gmail.com>

Update code/controllers/subsystem/demo.dm

Co-Authored-By: JJRcop <jrubcop@gmail.com>

moves hooks out of a dedicated file

len = 0 to Cut(), remove semicolons

untyped loop

* updated rust_g

* 513 updates
2020-04-06 13:15:48 -04:00
Fikou
a59e4fb1b5 merges civilian and service departments (#50142)
* merges the service and civilian departments

* yee haw
2020-03-26 22:05:28 +08: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
kingofkosmos
52325eda25 Merge branch 'master' of https://github.com/tgstation/tgstation into misc_span_fixes1
# Conflicts:
#	code/game/machinery/Sleeper.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/objects/structures/beds_chairs/chair.dm
#	code/game/objects/structures/lavaland/geyser.dm
#	code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm
#	code/modules/antagonists/clockcult/clock_mobs/_eminence.dm
#	code/modules/paperwork/contract.dm
2019-10-17 06:02:06 +03:00
KomradeSpectre
9ff071af60 Clockcult Removal 2019 (#47057)
* Nanotrasen fires the Wave Motion Gun at the Clock Cult

* Fixes a random changelog appearing from the reebe void.

* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.

* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.

* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron

* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.
2019-10-15 10:13:41 +02:00
kingofkosmos
280d416d4f Adds missing spans, missing periods and missing span endings. Also changes spans to suit the situation better. 2019-10-12 19:34:11 +03:00
Jordie
2b05020317 Deadchat ban option (#45789)
* adds deadchat ban option

* makes deadchat use new ban type
2019-08-10 02:13:44 -07:00
Kierany9
9e46c1e481 Add assimilation bans (#45149) 2019-07-13 19:15:25 -07:00
kingofkosmos
1bf60bbe06 Adds missing </span>'s. 2019-06-02 21:29:14 +03:00
Jordie
6c65780c36 fix some faulty last conn logic (#42984) 2019-03-07 11:03:09 +01:00
Kyle Spier-Swenson
297fe59a0c Update sql_ban_system.dm 2019-02-20 18:21:13 -08:00
Kyle Spier-Swenson
3c10853a7d Bans now only default to banning ip if a permaban.
CID defaults to always checked.

Use IP and CID from last connection now defaults to enabled unless all the default checked values are provided. 

Use IP and CID from last connection now only fills in checked values, rather then forcing both IP and CID.

Use IP and CID from last connection no longer triggers an error if the user can not be found, instead asking the banning admin if the want to continue (same behavior as when this happens without that option checked).

The main reason behind this is that your avg 1 to 2 day ban shouldn't impact everybody on the same network, especially when it comes to colleges and shared internet. The old system worked such that ip bans were only possible on perma server bans, this still gives full flexibility.
2019-02-20 16:18:40 -08:00
Jordie0608
1ed5dc7b95 fixes for non-ckey ban messages and dropping admins on server bans 2019-01-28 22:04:28 +11:00
Jordie0608
20d2bbd8bc new ban group for appearance, emote and ooc, fix javascript error and role bans dcing client 2019-01-12 19:14:29 +11:00
Jordie
f0cdd841da Ban editing and logging fixes (#42148)
Fixes #42146
Fixes ban created notes being double escaped.
Fixes admin tickets not being resolved for a disconnected client when banned.
Re-adds ban reason to admin log for a ban as requested
2019-01-02 00:31:42 +13:00
Jordie0608
f40546def8 edit ban reason url encode and clicking disabled reason/server radios 2018-12-20 16:55:02 +11:00
Jordie0608
0d4db5b978 compatability for IE8's lack of css3 breaking panel checkboxes 2018-12-17 23:03:48 +11:00
Jordie0608
360ebb3e33 adds roles and duration of ban to note created by ban 2018-12-08 23:52:44 +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