Reasoning for why it needs to go:
- NTSL allows anyone to lag the server or crash it.
- Doohl being gone, no one is going to maintain or expand NTSL. Very little has been done on it for several years now, certainly not any new functionality besides signalling.
- The only interesting things that can be done with NTSL have already been done and are on the wiki. Which is what 99% of users do, copy a script off the wiki. Not interesting or fun.
- Users who actually do scripting are too limited to actually do much besides little chat scripts that are amusing for maybe 2 minutes before becoming annoying.
Fixes#11647Fixes#10595Fixes#10445
Technically fixes#10032Fixes#5779
Technically fixes#4710Fixes#1974
Adds the prototype hardsuit, intended for the Research Director.
- Primarily a bomb suit
- Emergency firesuit protection
- Slightly higher radiation protection than a normal hardsuit
* Added a generic (array based) heap data structure
* Changed A* to use a heap open set instead of a priority queue
* Fixed A* not checking for already processed turfs
* Fixed A* number of traversed nodes not being updated on new route
* Changed the heuristic proc for every A* calls to /turf/proc/Distance_cardinal, since A* now only progress in cardinal directions
isbanned() cleaned up, it logs sticky ban matches, and better handles admins being exempt from bans
Adminbans now still work once the admin is demoted.
Admins bypassing a ban because they are an admin is logged and announced to all admins including the one who walked past it.
Admins are now exempt from host bans. (this only applies to host bans for ss13, global host bans (where the 'apply to this game only' checkbox is not checked (defaults to not checked)) do not trigger isbanned() and thus, admins can not bypass them, no matter what we do.)
Added a system to queue a message for a client, to be shown next time they connect, this was needed because isbanned() is called before the client is created, so if you want to send a message to an admin, letting them know they just walked pass a matching ban, you have to do it this way.