Commit graph

993 commits

Author SHA1 Message Date
Redix de1c0cf24d Fixed several issues with the ghost (thanks to Learath2) 2017-10-28 14:23:24 +02: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
Learath2 b8b4f7771d Rename the callback 2017-10-19 18:13:28 +02:00
Dennis Felsing d6999bb726 Merge "Pull Request using OpenGL 3.3" 2017-10-18 12:49:27 +02:00
Learath 96acddb57f Fix the other use after free 2017-10-17 15:39:20 +02:00
heinrich5991 dfc53b48cf Fix victim handling 2017-10-17 01:32:40 +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
heinrich5991 2fc018aac3 Add asynchronous file output, port dbg_msg()s to that system
Also add tests.
2017-10-10 04:11:14 +02:00
Redix 2586c001b7 Use demos/auto/race for the race recorder 2017-09-28 19:14:36 +02:00
Redix 5721612761 Clean up trailing whitespaces 2017-09-28 16:02:01 +02:00
Redix 216e5654e8 Added config variables for server controlled ghost and race recording 2017-09-28 16:02:00 +02:00
Redix 1c377ed00f Added Fastcap support for ghost and race demo 2017-09-28 16:01:57 +02:00
Redix b1e7138847 Added ghost file handling classes 2017-09-28 16:01:56 +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
Redix 43f246f174 Made int packing functions safe 2017-09-17 02:36:50 +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 89ed22e8d8 Introduce ddnet-info.json
- Single json file containing all information for the client
- Fetched from https://info.ddnet.tw/info?name=deen
- Replaces versionsrv, news, ddnet-maps.json and ddnet-ranks.json
- Servers are sorted by most popular ones for respective player
- Always stays < 100 ms response time, compared to occasional 50 s for
  old ddnet-ranks.json
2017-09-03 17:42:04 +02:00
def 27b7549bba Make --silent stop stdout logging 2017-09-03 10:37:24 +02:00
def e64e59a839 semaphore instead of busy waiting in CJobPool 2017-09-02 12:30:55 +02:00
Dennis Felsing ed59b0f4a2 Fix binary dirs for installed locations on POSIX
Also rename them from teeworlds to ddnet
2017-09-01 13:37:01 +02:00
def 705349f2e5 Clean up and fix semaphores and threading 2017-08-31 19:18:07 +02:00
Dennis Felsing eb2634ab0a Merge pull request #852 from heinrich5991/pr_ddnet_fix_extractname
Add testing; fix, rename and test the `CEditor::ExtractName` function
2017-08-30 22:09:17 +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
heinrich5991 22be1be389 Fix and rename the CEditor::ExtractName function
Fixes #846.
2017-08-30 13:59:42 +02:00
heinrich5991 2682480f8a Rename GetUncompressedDataSize to GetDataSize
Also rename the old `GetDataSize` to `GetFileDataSize`. `GetDataSize`
now returns the actual data size, not the data size before
decompression.
2017-08-30 08:36:17 +02:00
root 2c748ebf70 Fixing PR over heinrich revision 2017-08-30 00:21:41 +02:00
sctt 0849fa6024 fixing map_resave and adding map_replace_image
Update datafile.h

Update datafile.cpp

Update datafile.cpp

Update map_resave.cpp

Update datafile.h

Update map_resave.cpp

Update datafile.h

Update datafile.cpp

Update config_store.cpp

Update config_retrieve.cpp

Update io.cpp

Update gamecontext.cpp

Update config_store.cpp

Update CMakeLists.txt

Create map_replace_image.cpp

Update map_replace_image.cpp

fixing bug with height and witdth
2017-08-29 16:21:16 +02:00
def 0b1842d438 Use filesystem paths for -f command line param 2017-08-11 21:07:20 +02:00
def 0b5dcdc478 Disable vsync by default and warn about possible delay 2017-08-08 19:53:16 +02:00
def 5d8a0ddc1e Add time in console 2017-08-04 22:38:22 +02:00
heinrich5991 33315452c3 Merge branch 'master' into leak_fix 2017-07-31 20:42:32 +02:00
HMH 19a8e7add6 removed some spaces 2017-07-28 20:44:03 +02:00
HMH 6655b35bdd minior style issues 2017-07-28 14:49:09 +02:00
heinrich5991 6247aa0c7f Enable -Wextra and -Wformat=2
Also annotate `dbg_msg`, `str_format` and `str_timestamp_ex` so that the
compiler can determine whether the format strings are correct.

Fix the compiler warnings generated by these extra warnings -- some of
them were security issues.
2017-07-27 20:38:17 +02:00
heinrich5991 1ebb4f89a6 Reopen: Add a flag for rcon login via username (#800)
This uses an extended protocol message to signal that rcon
authentication might require a username, allowing the client to enable
the username prompt.

Add a forgotten logout on key update
2017-07-24 21:43:55 +02:00
def 60d7388d9f Fix demo slicing 2017-07-22 22:03:05 +02:00
def 0b5942fc04 Add special handling for infClass class selection (fixes #794) 2017-07-21 21:43:56 +02:00
HMH bfc5700314 Yes the Kernel and Interfaces need to be deleted too... 2017-07-21 19:46:31 +02:00
HMH d3714f7efa close workerthreads on shutdown 2017-07-21 15:52:42 +02:00
HMH 80fac31175 fixed memory leak in console 2017-07-21 15:51:56 +02:00
def a736a27430 No need for writing to tmp config file anymore 2017-07-16 06:54:02 +02:00
def f2444b0de7 Add map_diff tool to compare tile layers of map versions 2017-07-12 20:15:00 +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
def 35dcb4d6cf Don't open map file again if we have it open already 2017-07-08 22:09:03 +02:00
def f3e3d57a90 Always close files, cleaner demo recording, fix some other stuff 2017-07-08 13:39:20 +02:00
heinrich5991 409bc0e019 Ensure null-termination in str_escape
This also fixes a couple of potential buffer overflows. The affected
code is still buggy (doesn't do the right thing on potential buffer
overflow), but at least it won't result in crashes/out of bound writes
anymore.
2017-07-08 13:06:03 +02:00
def 36d5c8d608 string toggling supports escaped strings; also some code cleanup 2017-07-08 11:03:51 +02:00
Dennis Felsing 80565b646c Merge pull request #790 from Learath2/dd_pr_togglestr
Add toggling for string options
2017-07-08 10:03:47 +02:00
Learath2 5941755832 Add toggling for string options 2017-06-20 11:27:14 +02:00
heinrich5991 1a50d405cb Use str_find from src/base/system.h and check for C: on Windows
Previously, using drive-relative paths could be used to escape the
Teeworlds directory on Windows.
2017-06-18 16:26:29 +02:00
def 59b33b95e4 Stronger catch for .. 2017-06-17 23:07:02 +02:00
def d3daa51486 Correct filter 2017-06-16 22:19:36 +02:00
def 624fd38188 Oops 2017-06-16 20:46:41 +02:00
def 1b0de108c6 Forbid escaping base directory 2017-06-16 20:22:43 +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
eeeee 2797227063 also remove references to CGameContext from CServer 2017-06-05 22:31:56 -07: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 a6e144ea72 Let's not crash the client and server on dbg_assert 2017-06-02 20:12:20 +02:00
def 27074e926a Further cleanup 2017-06-02 19:44:14 +02:00
Dennis Felsing ca9cca4c94 Merge pull request #770 from heinrich5991/pr_fix_events_uuid
Fix unpacking of net events
2017-05-27 16:21:37 +02:00
heinrich5991 3b88d78736 Fix a possible out-of-bounds read in snapshot.cpp 2017-05-27 15:52:05 +02:00
heinrich5991 9e7020368e Fix UUID formatting - the last field only has 12 hex digits
It didn't cause misprinted UUIDs because the string buffers had the
correct size.
2017-05-27 15:02:32 +02:00
heinrich5991 5ae37e6c72 Add protocol extension with UUIDs
This system can easily be extended by independent authors without
collisions, something the old system with plain increasing integers did
not allow.

Do this by utilizing the previously unused message code `NETMSG_NULL`
which has a value of 0.

This works for engine and game messages, snapshot items and events.
2017-05-25 00:52:43 +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
heinrich5991 1d81d56850 Introduce new, vanilla-compatible server info protocol
This means that we have a reliable and fast way to query for extended info,
while also not wasting network bandwidth.

The protocol is designed to be extensible, there's four bytes space for
encoding more request types (currently zeroed), and there's one string in each
response packet and one string for each player available (currently the empty
string).

The protocol itself has no problems with more than 64 players, although the
current client implementation will drop the player info after the 64th player,
because it uses a static array for storage.

Also fixes #130, the player list is just sorted each time new player info
arrives.
2017-03-29 12:56:13 +02:00
necropotame b8e4e5beea Fix style in several places 2017-03-22 19:45:14 +01:00
Dennis Felsing 761c3c9be1 Merge pull request #646 from heinrich5991/pr_ddnet_brace_style
Fix the brace style in some places
2017-03-09 13:31:21 +01:00
heinrich5991 d98abf35db Rename WEBSOCKETS to CONF_WEBSOCKETS 2017-03-07 13:03:37 +01:00
heinrich5991 ba5af42b1f Fix the brace style in some places 2017-03-04 15:43:49 +01:00
heinrich5991 a13cdc25b2 Merge pull request #632 from Learath2/dd_pr_friend
Put hearts before friends names. Closes #606
2017-03-04 15:37:24 +01:00
Dennis Felsing 4c1053c6c4 Merge pull request #635 from heinrich5991/pr_dummy_input_demo_filter
Refactor dummy input and demo filtering
2017-03-01 07:59:24 +01:00
heinrich5991 b841fdc203 Bump version requirement for warmup race timer 2017-03-01 00:08:56 +01:00
heinrich5991 6517567e7e Merge pull request #602 from necropotame/gametick
Send the race time using warmup timer
2017-03-01 00:05:22 +01:00
heinrich5991 305a67d492 Initialize variable in the demo recorder 2017-02-28 17:16:22 +01:00
heinrich5991 e3f2316106 Revert "Revert "Refactor dummy input and demo filtering""
This reverts commit 187560c8c0.
2017-02-28 10:08:14 +01:00
Dennis Felsing 187560c8c0 Revert "Refactor dummy input and demo filtering"
This reverts commit 8375f4888e.
2017-02-28 08:15:35 +01:00
necropotame 6a9406dc81 Fixed merge conflict 2017-02-28 07:31:39 +01:00
necropotame 4cfe96801b Send the race time using warmup timer 2017-02-28 07:31:24 +01: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
heinrich5991 8375f4888e Refactor dummy input and demo filtering
Remove references to src/game/ from src/engine/
2017-02-23 14:13:14 +01:00
Learath2 9cd5fa53e5 Fix horrible indent. 2017-02-09 13:01:19 +01:00
def 224b9d5443 echo command for clients prints to chat instead of mostly useless console 2017-01-06 00:17:53 +01:00
heinrich5991 80ea4c8590 Disallow usage of semicolons in chat commands
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.
2017-01-03 14:01:51 +01:00
Dennis Felsing c92e10914a Refactor demo speed setting, add 1.5x speed (fixes #568) 2016-10-28 09:31:22 +02: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
Dennis Felsing 1990707d68 Merge pull request #527 from heinrich5991/pr_no_compressed_control
Disallow compressed control messages
2016-08-13 00:39:42 +02:00
heinrich5991 884ad25204 Disallow compressed control messages 2016-08-12 18:41:03 +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
Dennis Felsing 8b10d15845 Merge pull request #509 from timakro/pr_no_disconnect_timeout
Don't send disconnect on timeout
2016-07-08 17:25:43 +02:00
Tim Schumacher 46b75886c9 Don't send disconnect on timeout 2016-07-08 17:00:47 +02:00
Dennis Felsing 45bf601570 Merge pull request #495 from heinrich5991/pr_ddnet_smaller_dummy_map
Reduce dummy map size from 549 bytes to 191 bytes
2016-07-03 23:26:42 +02:00
heinrich5991 0244640aca Also don't send the token magic to unsupported clients
Since only the client can initiate the secure session, there's basically
no reason to send this magic to clients which didn't advertise the
feature.
2016-06-08 09:57:17 +02:00
Dennis Felsing 3dd2f23d45 Merge pull request #499 from heinrich5991/pr_ddnet_no_tokens_for_vanilla
Don't send token to harmless vanilla clients
2016-06-07 16:22:29 +02:00
heinrich5991 a2e64f0a16 Don't send token to harmless vanilla clients 2016-06-07 15:52:57 +02:00
H-M-H ada3b9a5db Merge pull request #378 from H-M-H/sqlmasters
separate sqlwrite and sqlread server
2016-05-28 23:00:16 +02:00
heinrich5991 4d6657e3f1 Fix CRC of dummy map 2016-05-26 11:06:56 +02:00
heinrich5991 b075f1ff1b Use a dummy map with background 2016-05-25 23:47:34 +02:00
heinrich5991 702ed7e023 Reduce dummy map size from 549 bytes to 191 bytes
Also include a tool to generate said map; the map is generated without
any hacks. It could likely be made smaller using a few tricks.
2016-05-24 01:47:04 +02:00
heinrich5991 e353aa80b2 Don't send uninitialized memory over the network 2016-05-23 11:48:23 +02:00
H-M-H b648b530d5 Merge branch 'master' into sqlmasters 2016-05-20 23:40:29 +02:00
def 1645310750 Keep reading packets after invalid control packet 2016-05-17 23:44:57 +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
Dennis Felsing 6c771f6bff Merge pull request #475 from east/timeoutprotfix
Copy resendbuffer on timeout protection
2016-05-07 23:41:54 +02:00
east 1cbaa0c4ef copy resendbuffer on timeout protection 2016-05-07 19:28:16 +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
def 939f2136c0 Nicer way of handling Mac fifo rewinding (just don't use high level file streams) 2016-05-05 23:32:55 +02:00
H-M-H 319729e207 ifdef for rewind as it is only required of OS X 2016-05-05 21:15:15 +02:00
H-M-H 491d878a64 always read fifo from start 2016-05-05 20:29:31 +02:00
def 14f1670fda Fix fifo console to remove newline character at end 2016-05-05 18:48:15 +02:00
H-M-H e351080dd3 removed double semicolons 2016-05-04 00:24:54 +02:00
H-M-H c9e65c7931 Merge branch 'master' into sqlmasters 2016-05-03 23:07:24 +02:00
Henningstone be010ff370 Fixed crashbug in fifo.cpp 2016-05-03 19:17:44 +02:00
def a954241169 style 2016-05-02 23:37:40 +02:00
def 21ac41bfae Clean up fifo console 2016-05-02 23:36:21 +02:00
def 61e47422f6 Clean up debug messages a bit (lower case, no useless errors) 2016-05-02 21:35:32 +02:00
def a9ed7035ee Add inp_ignored_modifiers to ignore set of keyboard modifiers 2016-05-01 23:07:19 +02:00
def 644a23ba57 Fix folder creation 2016-05-01 14:45:47 +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