1157: Add a way to call for external moderator help r=Learath2 a=heinrich5991
This is done by HTTP POSTing to a location specified by
`sv_modhelp_url`. We also provide a `src/modhelp/server.py` which can
use theses POSTs to forward them to Discord servers.
The POST contains a JSON object payload, with the keys `"port"` which
contains the server port, `"player_id"` which contains the calling
player's client ID, `"player_name"` which contains the calling player's
nick and `"message"` which is the user-specified message.
Make JSON-escaping function public, add tests and fix bugs uncovered by
these tests.
Supersedes #1129.
1160: Fix warning about incompatible function pointers r=Learath2 a=heinrich5991
This comes at the cost of one allocation per started thread. This should
be okay because we're about to invoke a syscall anyway.
Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
This is done by HTTP POSTing to a location specified by
`sv_modhelp_url`. We also provide a `src/modhelp/server.py` which can
use theses POSTs to forward them to Discord servers.
The POST contains a JSON object payload, with the keys `"port"` which
contains the server port, `"player_id"` which contains the calling
player's client ID, `"player_name"` which contains the calling player's
nick and `"message"` which is the user-specified message.
Make JSON-escaping function public, add tests and fix bugs uncovered by
these tests.
Supersedes #1129.
This prevents player name exploits due to tab completion of nicknames
that could result in unwanted commands being executed.
Print a deprecation message that is supposed to be removed in the
future.
This is a new delay that specifies how many seconds you have to wait
before making your first vote. In case the server was only recently
filled (e.g. by a map change or if people start joining an empty
server), this delay is disabled (in the first case, because it's normal
to join after a map change, in the second case because you might have
joined the empty server to vote for a different map).
* enhance /pause (@heinrich5991)
* add /spec command to pause without leaving the game (@heinrich5991)
* if sv_pauseable is set to 0, /pause behave as /spec (@heinrich5991)
* should fix#124 and #127 (@ravomavain)
sv_time_in_broadcast, 1, 0, 1, CFGFLAG_SERVER, "Whether to display time in broadcast every interval or not by default, later the choice can be changed by players via chat commands"
sv_time_in_broadcast_interval, 1, 0, 60, CFGFLAG_SERVER, "How often to update the broadcast time"
sv_time_in_gametimer, 0, 0, 1, CFGFLAG_SERVER, "Whether to display time in the round/game timer or not by default, later the choice can be changed by players via chat commands"
Added the following Chat commands to give the player the choice over their settings:
"saytime", "", CFGFLAG_CHAT|CFGFLAG_SERVER, ConSayTime, this, "Privately messages you your current time in this current running race"
"saytimeall", "", CFGFLAG_CHAT|CFGFLAG_SERVER, ConSayTimeAll, this, "Publicly messages everyone your current time in this current running race"
"time", "", CFGFLAG_CHAT|CFGFLAG_SERVER, ConTime, this, "Privately shows you your current time in this current running race in the broadcast message"
"broadcasttime", "?s", CFGFLAG_CHAT|CFGFLAG_SERVER, ConSetBroadcastTime, this, "Personal Setting of showing time in the broadcast, broadcasttime s, where s = on for on, off for off, toggle for toggle and nothing to show current status"
"servergametime", "?s", CFGFLAG_CHAT|CFGFLAG_SERVER, ConSetServerGameTime, this, "Personal Setting of showing time in the round/game timer, servergametime s, where s = on for on off for off, toggle for toggle and nothing to show current status"
Fixed Chat Command "eyeemote" and made it a set + toggle instead of just toggle for better bin techneques
Moved some vars from CCharacter to CPlayer to keep their status evern after death but not after disconnect.
So now players have the choice to see which timer they wanna see if any.
Note: These changes are all untested Stay away from this update on your main server until they are tested, i don't even know if they will compile propperly
* Can now put tiles with the same indexes as in tele or switch layer i game layer but it will drawn to the correct image
* Adjusted Masking to account for Solo players
* Add the following config variables :
* sv_vote_pause: Allow voting to pause players (instead of moving to spectators) (default: 1)
* sv_vote_pause_time: The time (in seconds) players have to wait in pause when paused by vote (default: 60)
* sv_vote_pause_auto: Automatically unpaused players after the force-pause delay or not (default: 0)
* Add the following functions :
* force_pause v?i : Force v to pause for i seconds
* force_unpause v : Force v to unpause
* Adding wrappers functions to modify character or pause data if player are in game or paused.
* Moved OnFinish() function to teams.cpp so it can also be called on paused players.
* Pause is now enabled for team players.
* Adding bool CPlayer::IsPlaying() function that return true if the player is either in game or in pause. (false if spectator/dead).
* Player go through a Checkpoint tile (29 in tele layer)
* He fall in a Check-Teleporter tile (31 in tele layer)
* Player is teleported to the check-TO (30 in tele layer) that have the same number as the last Checkpoint.
Thus players are teleported to the last checkpoint he passed, regardless of whether he made the map in the right direction or not.
Tele tileset may need some improvement.
Closes Pull Request #52