Commit graph

534 commits

Author SHA1 Message Date
heinrich5991 925aff21d4 Fix all the header guards and adjust the script a little 2018-07-06 16:11:38 +02:00
heinrich5991 36694d3852 Add a way to call for external moderator help
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.
2018-06-19 23:27:35 +02:00
ZombieToad e05bd9c6c8
remove unused thingy 2018-06-14 20:44:14 +01:00
Dennis Felsing ae3d91cf17 Set cl_refresh_rate to 0 by default to get higher fps and faster input processing 2018-05-28 08:03:31 +02:00
def a7b778977a Add sv_sql_validservernames (fixes #1123) 2018-05-11 21:57:47 +02:00
ChillerDragon 589749c2cf Allows low mousesens
Lower minimum mousesens value to avoid confusion. Responing to GG Kid's request:
https://forum.ddnet.tw/viewtopic.php?f=45&t=5807&p=58207&hilit=mousesens#p58207
2018-04-27 01:40:59 +02:00
Dennis Felsing 96ecbfcfa8 Add cl_show_hook_coll_always 2018-04-25 12:03:27 +02:00
Jupeyy ced0ea3f82 set the gfx refresh rate limit higher for the console 2018-03-02 03:29:02 +01:00
def 5587e6dc96 Remove unused inp_grab 2018-02-11 16:40:08 +01:00
yangfl 1620fc9b0f Fix typo 2018-02-07 16:10:40 +08:00
def 48980efa2e Disable OpenGL 3 by default 2018-01-14 07:33:00 +01:00
Learath2 8353701789 Add sv_rcon_vote. Fix punctuation.
Add option to only allow authed clients to call votes.
2017-12-27 10:40:51 +03:00
heinrich5991 1a236dbefc Send connection information to external server 2017-12-20 16:56:34 +01:00
heinrich5991 c10db436b4 Change some config variable defaults to official server values 2017-11-24 11:59:45 +01:00
bors[bot] 5528cde5f6 Merge #869
869: Complete rework of the ghost and race recorder r=Learath2 a=Redix

This PR fixes a lot of issues with the ghost and race recorder, introduces a new ghost file format and implements some pretty useful features.

**A quick overview:**
 - When you cross the start line multiple times, both (ghost and recorder) will only restart if it is a non-solo server
 - If available, both will use the race timer to recognize the start instead of searching for the start line
 - Fastcap support for both
 - The recorder immediately starts when the Tee spawns, so the preparation steps (which are quite important for speedruns) will be included in the demo. If you do not cross the start-line within 20 seconds, it will stop the demo until you really start.
 - Better ghost menu (colors, reloading, deleting and saving ghosts)
 - The ghosts are more resistant against lags (old ones were sometimes completely useless due to small lags)
 - New ghosts files are significantly smaller
 - Cleanup, bugfixes..


**About the new ghost format (version 4/5):**
This format is used by Teerace for over a year now. The code for handling the binary files was moved to the engine. It includes an auto updater which creates a backup of all ghosts and converts them to the new format afterwards. The major differences from the format used by DDNet right now (version 2), are the ability to store multiple types of data, the usage of delta-encoding and a more portable header.

For whatever reason, the ghost stores values for every predicted tick, but without tick information, so lost snapshots can make them unusable. The new code uses the original values from the snapshots including ticks but it can also handle the old ones without. Since hardly any server uses the high bandwidth option this practically reduces the file size.

Like the demo recorder the ghost recorder directly stores the data to a file (every 50 snapshots) instead of writing the whole file at the end of the race. Indeed this can be changed with only a few lines if the old behavior is preferred.

The updater can handle version 2 (DDNet) and 3 (old teerace format, only slightly different from version 2) files. The updating already happens when the files are scanned for generating the list in the menu and not only when you activate them. The change from version 4 to 5 was only needed due to a bug in the implementation, the ghost loader can read both.

Some numbers about the file size: (map: hotrun, both about 30 seconds)

 - Old ghost: 30.4 kB (converted: 10.7 kB)
 - New ghost: 5.4 kB


**One thing about the race recorder:**
The old implementation compared the new file only with the first file it found for the particular map. The new one compares with all related demos and deletes them possibly, so that only the best demo is left. Since DDNet can also store the demos without name, this might also delete demos from other players, that you might have in your directory.
To prevent this I at least check whether the demo contains the player name if `cl_demo_name` is on. 
In my opinion the better solution would be to remove `cl_demo_name` and always use the player name.
2017-10-30 20:27:10 +00:00
def cb00a294b8 Enable gfx_opengl3 by default 2017-10-20 22:52:38 +02:00
def 342c6048bf Use new opengl by default 2017-10-20 22:47:59 +02:00
Dennis Felsing d6999bb726 Merge "Pull Request using OpenGL 3.3" 2017-10-18 12:49:27 +02:00
Jupeyy 1814fa8d19 make OpenGL 3.3 experimental option, and don't initialize it as default 2017-10-10 15:35:20 +02:00
Redix 216e5654e8 Added config variables for server controlled ghost and race recording 2017-09-28 16:02:00 +02:00
Jupeyy 91216fb90c reduce upload size by normalizing color values, fix slow upload for some
iGPUs and force old opengl context, if issueinit fails
2017-09-27 12:16:34 +02:00
heinrich5991 a201352b29 Fix a grammar mistake in bot client message 2017-09-24 21:11:23 +02:00
heinrich5991 9761e9606a Make most user input teehistoric
Exclude private stuff like chat messages and votes.
2017-09-20 02:23:28 +02:00
heinrich5991 6ef9c8dbcd First working version of teehistorian
teehistorian records all inputs from the players as well as the player
positions in each tick. It stores this info in a highly compressible
output format (I've achived 5x compression using xz or bz2).
2017-09-20 02:16:11 +02:00
Jupeyy 77b3c39553 allow disabling texture unit optimization by command, also use
drawelements instead of drawarrays for quads
2017-09-14 02:49:35 +02:00
Jupeyy 629bf2c5f9 Merge branch 'master' of https://github.com/ddnet/ddnet 2017-09-12 20:24:58 +02:00
Jupeyy 96694fb399 make new opengl version optionally 2017-09-12 20:12:37 +02:00
def c2c453bd45 Make sending name to info.ddnet.tw optional, show dialog at start and some minor fixes 2017-09-07 20:51:46 +02:00
def 16f3ddc5a7 Show if user has rank on map in browser (+filter)
UI implementation by timakro
2017-08-30 21:34:04 +02:00
def 0b5dcdc478 Disable vsync by default and warn about possible delay 2017-08-08 19:53:16 +02:00
def 46cedf3a8c Compiler warnings 2017-07-09 10:27:58 +02:00
def 66f6f16e81 Windows DPI fixes #2 2017-07-09 09:44:07 +02:00
Learath2 ca4da73b75 Update the range of sv_default_timer_type. Fixes #760 2017-06-08 14:35:48 +03:00
def e4b3c17829 Add option to disable long pain sound (used when shooting in freeze) 2017-06-06 18:58:23 +02:00
def 7e503a306b Revert "Back to cl_cpu_throttle_inactive"
This reverts commit c217040319.
2017-06-02 23:27:35 +02:00
def c217040319 Back to cl_cpu_throttle_inactive 2017-06-02 23:18:14 +02:00
def d6e5df0023 oops 2017-06-02 21:58:16 +02:00
def b8d61e9b7d Change some defaults 2017-06-02 21:49:30 +02:00
def 8553ed727b Replace cl_cpu_throttle with cl_refresh_rate 2017-06-02 21:33:45 +02:00
def 4125941896 Disable dbg_stress in release builds (fewer confused kids that think they hacked the server, less useless code in cache) 2017-06-02 20:45:09 +02:00
def c2400c79cf Rename cl_show_other_hook_coll to cl_show_hook_coll_other and add cl_show_hook_coll_own (fixes #741) 2017-05-14 12:03:09 +02:00
Dennis Felsing a0a1276b6a Merge pull request #751 from Learath2/dd_pr_ratelimitinvite
Add ratelimiting for /invite
2017-05-14 11:50:43 +02:00
Dennis Felsing 728e548f55 Merge pull request #754 from SheikhZayx/master
CSV file instead of statboard screenshot
2017-05-14 11:49:46 +02:00
def 6d81f1f188 Fix cl_cpu_throttle_inactive 2017-05-14 11:01:48 +02:00
def 7a9f316dd1 cl_cpu_throttle_inactive can be set higher than 1 2017-05-14 10:58:01 +02:00
SheikhZayx ea0e4948b4 CSV file instead of statboard screenshot
En-/Disable statboard being saved as csv
2017-04-26 05:10:31 +02:00
def 4b376d239c rename 2017-04-24 17:36:13 +02:00
Learath2 c1a4a95d61 Add ratelimiting and config options for invite 2017-04-24 14:04:50 +02:00
def d4ed1310d2 Configurable rate limit for SQL queries 2017-04-13 09:33:26 +02:00
Henritees 33cdfee821 Handle multi-line motd correctly in the console
Rewrote MOTD processing to handle both kinds of newlines correctly
and added an option to disable printing it to the console.

Closes #711.
2017-04-03 12:29:31 +02:00
Learath2 fa22425f26 Add a checkbox to disable friend heart 2017-02-27 23:56:22 +03:00
Learath2 c76849c51a Add sliders for friend chat color 2017-02-27 23:39:06 +03:00
def 224b9d5443 echo command for clients prints to chat instead of mostly useless console 2017-01-06 00:17:53 +01:00
east 823e330a76 Merge pull request #554 from heinrich5991/pr_ddnet_random_timeouttoken
Generate server-specific timeout codes
2016-10-05 12:21:51 +02:00
ChillerDragon 944752b78a Fixed typo. 2016-10-04 20:08:39 +02:00
heinrich5991 7ca2697135 Generate server-specific timeout codes
This way, servers can no longer hijack the timeout codes of clients.
Timeout codes are generated from md5(seed + dummy + server address).

If `cl_timeout_seed` is set to the empty string, the old config options
are used instead.
2016-10-02 11:36:42 +02:00
east c9a50916b3 sv_dnsbl_vote option added 2016-09-05 11:53:26 +02:00
east 678a69bf5b basic DNSBL implementation 2016-09-05 11:38:11 +02:00
def 28f50e4440 Revert "Implement comma in search and exclude queries to separate search terms"
This reverts commit 3341e18d13.
2016-08-07 00:52:00 +02:00
def 3341e18d13 Implement comma in search and exclude queries to separate search terms 2016-08-02 22:16:02 +02:00
H-M-H b648b530d5 Merge branch 'master' into sqlmasters 2016-05-20 23:40:29 +02:00
def 695bf346ac Make gfx_refresh_rate functional (fixes #255) 2016-05-10 17:43:27 +02:00
def f3a4069867 Set gfx_highdpi to 0 as default (needs someone to fix it on Win >= 8.1 and Mac) 2016-05-08 19:40:53 +02:00
def 9bd30ce447 Make high-dpi screen support optional 2016-05-07 17:47:05 +02:00
def c325b08087 Add inp_mouseold for warped mouse input 2016-05-07 15:59:13 +02:00
H-M-H c9e65c7931 Merge branch 'master' into sqlmasters 2016-05-03 23:07:24 +02:00
def a9ed7035ee Add inp_ignored_modifiers to ignore set of keyboard modifiers 2016-05-01 23:07:19 +02:00
def 13143eac23 Reconnect for timeout instead of bans, some simplification 2016-05-01 11:12:07 +02:00
def cc002d244d Fix gfx_resizable to be on by default with X11 2016-05-01 03:28:41 +02:00
def 1446adee2c Window resizing only with X11 (not on Windows and Mac OS X) 2016-04-30 19:19:19 +02:00
def 644fec7e55 Resize window without restarting client 2016-04-30 17:59:58 +02:00
def db8a126315 Merge swick's SDL2 branch 2016-04-29 21:55:48 +02:00
def 86a0f46937 Add a connection limit (fixes #408) 2016-04-27 22:09:18 +02:00
east 32ba1c9239 Antispoof dm1 fallback on flood added 2016-04-23 17:23:01 +02:00
H-M-H e35de5a371 whether to setup a db can be configured for each server now 2016-02-20 15:33:35 +01:00
H-M-H 88ed7391da handle exceptions from sql properly
- write failed sqlinserts to a file
- improved structure
2016-02-20 15:33:35 +01:00
H-M-H 1314085928 restructured sqlconnection
reading from and writing to several different servers is now possible
TODO:
-handle Exceptions properly (try another sqlserver)
-if everything fails while writing write the insert to a file
2016-02-20 15:33:35 +01:00
H-M-H 15f2e07c48 moved sqlserver stuff into CServer-class
as sqlconnections should not last only
until next mapreload
2016-02-20 15:33:35 +01:00
H-M-H 6ba10d2719 mastersqlservers are working now
TODO: move the sqlserver objects somewhere else
so they wont be destroyed on every reload
2016-02-20 15:33:35 +01:00
Tim Schumacher 9e6e062793 added cl_skin_filter_string for skin quick search 2016-02-14 19:51:49 +01:00
def 0a49428e21 Veto considers time on server not in current race 2016-01-27 02:14:46 +01:00
def 56ca49f1de More conservative default for sv_server_info_per_second 2016-01-23 15:14:22 +01:00
heinrich5991 96f0eddbb8 Add sv_max_server_info_per_second
This controls how many complete server info responses are sent per
second.
2016-01-22 16:42:54 +01:00
Tim Schumacher d99660f20e Merge pull request #356 from H-M-H/helper_pw
Implemented Helper accesslevel
2015-10-27 02:18:00 +01:00
H-M-H 1b8a201a48 increased max sv_rules_line<x> length 2015-10-24 18:41:30 +02:00
H-M-H 0e532adb67 Implemented Helper accesslevel
basically just copied everything from moderator-accesslevel implementation

note however that mod_command changed to access_level
2015-10-23 04:21:07 +02:00
timgame 7fafd2db2f added sv_reload_when_empty 2015-10-22 17:27:30 +02:00
H-M-H bf8aea3857 Merge pull request #333 from heinrich5991/pr_ddnet_antiping_no_reset
Don't reset `cl_antiping` subconfig on restart
2015-10-22 00:01:28 +02:00
timgame 4b07927213 Added possibility to discard settings 2015-10-21 00:54:10 +02:00
def 336e916548 Add option not to create sql tables 2015-09-15 09:28:18 +02:00
heinrich5991 7512cc10d6 Introduce a mechanism to import old configs and use it for cl_antiping* 2015-09-10 12:31:02 +01:00
heinrich5991 48ecf3d5a1 Merge pull request #323 from Chairn/drag_range
Added sv_dragger_range to control the length of the laser draggers.
2015-09-07 11:12:52 +01:00
def a1e9f07bb8 Missed one 2015-09-05 00:52:08 +02:00
Chairn c5443d8e34 Added command sv_dragger_range. Maybe need some more tests. 2015-09-01 23:15:48 +02:00
def d2ac9e53ab Update info texts about variables 2015-08-27 23:41:06 +02:00
Dennis Felsing a32aca50bf Merge pull request #306 from Chairn/pr_custom_background
Added custom background in entities mod.
2015-08-27 16:08:46 +02:00
east 675c6eb1e0 Demo browser column listbox added 2015-08-27 15:05:24 +02:00
heinrich5991 bf1f7d6ccd (Safely) execute settings embedded in maps 2015-08-27 12:55:34 +02:00
Chairn 8b8ba7b860 Added variable for tile background. Improved a lil bit maplayers. 2015-08-27 00:52:50 +02:00
Chairn abbea6b2ac Added support for custom background in entities. 2015-08-27 00:52:11 +02:00
def fe22edadaa Hide console window on Windows by default 2015-08-26 12:40:50 +02:00
def 7aec49e6b1 Sort by number of players on server by default
- Then we don't have to hide empty servers, they're at the bottom anyway
- Sorting by ping is not that important, the ping already shows in a
  flashing color how good it is
2015-08-24 20:35:15 +02:00
Dennis Felsing e03071e146 Merge pull request #285 from east/antispoof
Ip spoofing protection (prevents spoofed connections)
2015-08-16 18:20:20 +02:00
def e1fe407ee5 Make team locking an option 2015-08-16 00:39:31 +02:00
east 48fc0f93bb added enable/disable conf var for vanilla antispoof 2015-08-14 18:36:28 +02:00
Dennis Felsing 37256d6e2c Merge pull request #283 from savander/DDRace64
Improvements for demoplayer (pause/unpause demo is bindable) + you can hide scoreboard after death
2015-08-13 17:25:57 +02:00
def 547274b806 Add cl_chat_reset, which can be set to 0 so that chat is not reset when pressing escape 2015-08-12 17:03:27 +02:00
def d616eee3c0 Kobra 4 as default map 2015-08-12 13:42:55 +02:00
Adam Jaworski ab6f522aa5 Whether to show scoreboard after death or not 2015-08-12 11:30:26 +02:00
def 0d5304c1d5 Reset tunes by default 2015-08-11 20:37:25 +02:00
def 94f35d6f6e Don't ignore clan of friends by default anymore 2015-08-10 15:19:11 +02:00
def 9a556cba70 Fix documentation (thanks to Lady Saavik) 2015-07-13 13:27:53 +02:00
def 17b8a5219b Show a nice message to known bot clients 2015-07-13 00:02:57 +02:00
def c79b4d3112 Add veto right for players with high time to stop map change votes 2015-07-08 17:03:22 +02:00
def b3592380d1 Re-enable broadcast for old DDNet client version 2015-07-04 14:12:49 +02:00
def 34fba30ca7 Add sv_port description 2015-06-01 12:42:44 +02:00
def 3c496c62e1 Rename gfx_quads_as_triangles to gfx_quad_as_triangle and set default to 1 2015-03-31 16:41:51 +02:00
Learath 09ce649238 First get rid of the old autoupdate
Conflicts:
	src/engine/client/client.cpp
	src/engine/client/client.h

Conflicts:
	src/engine/shared/config_variables.h
2015-02-23 20:23:35 +02:00
def 0df35a990c Remove spoof protection, interacts badly with HTTP download 2015-01-27 23:13:47 +01:00
def 3d686a223f Add an option to disable http map download (not working yet) 2015-01-20 00:21:28 +01:00
def c8405ce13e Add cl_show_broadcasts, but don't save it 2015-01-19 22:14:49 +01:00
def 8d945fe968 Exclude DDNet servery by type 2014-12-14 16:45:18 +01:00
def 3b0f768478 Add setting to ignore clan in friends and enable by default 2014-12-12 17:15:29 +01:00
def 76b6a99f26 Add Exclusion filter strings and clean up menu a bit 2014-12-10 04:49:16 +01:00
def 0947de4b3f Centisecs -> Decisecs 2014-12-02 13:55:19 +01:00
def d0c85acc0d Add cl_show_centisecs 2014-12-02 13:19:06 +01:00
def bba82712e0 Add sv_solo_server for easier solo servers (also working for tunezones finally) 2014-11-25 22:42:05 +01:00
def 91bc16c037 Add an option to assume demos to be race demos 2014-11-25 20:46:21 +01:00
def 93d0f43a6a Broadcast about DDNet client delayed a bit (fixes #72) 2014-11-25 20:33:21 +01:00
def 893fe8785b Bring back gfx_text_overlay to stop rendering text at far distances for
better performance
2014-11-16 21:51:44 +01:00
def f4231100a7 Make triangle quad rendering optional, as it seems to cause performance problems 2014-10-28 01:12:11 +01:00
def 0f257bf553 Add delay (of 1 minute by default) to loading savegames 2014-10-26 02:39:12 +02:00
def 35f8b7a6dd Add option for disabling gun sounds 2014-10-26 01:00:30 +02:00
def f8f8f0613e Rename "Ambient" to "Map Sound" 2014-10-23 15:53:23 +02:00
BeaR ef3b801999 Add volume slider for map sounds 2014-10-18 18:41:57 +02:00
def 3ff6b951c1 Configurable messages 2014-10-12 12:51:54 +02:00
def fda12b88bf Make sv_client_suggestion optional 2014-10-12 11:35:36 +02:00
def 932fb826c7 Add cl_zoom_background_layers (set to 0 to keep background nice when zoomed out) 2014-09-29 21:13:35 +02:00
def c78cea9046 Add sv_demo_chat (0 by default to disable recording chat) 2014-09-26 02:40:58 +02:00
def b4f77c4b71 Add sv_player_demo_record (mostly from Teerace) 2014-09-26 02:05:31 +02:00
def 1bee3af878 Print broadcasts by default 2014-09-23 19:34:43 +02:00
def a32e9272eb Restore Law & Order 2014-09-23 19:06:25 +02:00
Dennis Felsing 8abc15f48d Merge pull request #47 from Laxa/upstream
Add cl_output_broadcast + add button for it + fix multi-line display.
2014-09-23 18:55:13 +02:00
def d38bf7f83a typo 2014-09-23 17:33:33 +02:00
laxa 36153fc7fd Add conf variable for broadcast ouput; made broadcast output works with multiple lines 2014-09-23 10:37:44 +02:00
laxa 718e45d84d Added cl_reset_wanted_weapon_on_death 2014-09-21 14:11:27 +02:00
east c4fc429e99 small cleanup 2014-09-20 11:47:51 +02:00
east 202d5d8866 Filter flag grid added 2014-09-19 23:52:09 +02:00
east e732008157 DDNet serverlist added 2014-09-13 16:36:25 +02:00
def 0da1ba238c Add cl_cpu_throttle_inactive 2014-09-06 01:42:59 +02:00