Commit graph

2833 commits

Author SHA1 Message Date
Jupeyy 5e1bee2760 clean up a bit to and descripe it better 2018-03-12 15:10:49 +01:00
heinrich5991 31a3e8d4c0 Add possibility to ban players by name
This uses the Unicode confusable data together with judging how close
two strings are by using the Levenshtein distance.

Adds the commands `name_ban`, `name_unban` and `name_bans`. Kicks
players who join using a banned name and doesn't allow ingame players to
change their names to the banned ones.
2018-03-09 20:30:27 +01:00
bors[bot] fb69fa1815 Merge #1042
1042: Allow specifying DATA_DIR by compiler option r=heinrich5991 a=yangfl
2018-03-05 10:50:38 +00:00
Jupeyy ced0ea3f82 set the gfx refresh rate limit higher for the console 2018-03-02 03:29:02 +01:00
Jupeyy cc7371c1cd set upper limit, for the case, if the refreshrate is smaller than the gameticks 2018-03-02 03:12:30 +01:00
Jupeyy 089cb1ea44 this must be inactive ofc 2018-03-01 08:25:34 +01:00
Jupeyy a808ee07d3 add accedentially removed cast 2018-03-01 08:07:48 +01:00
Jupeyy 3458ee0976 check if gfx_refresh_rate is non zero 2018-03-01 07:50:52 +01:00
Jupeyy 6f0509cfae the actual description to the problem 2018-03-01 07:44:22 +01:00
Jupeyy edaf632c04 Merge branch 'master' of https://github.com/ddnet/ddnet 2018-03-01 07:38:50 +01:00
Jupeyy 238c8847c0 keep track of lost frames and updates, to ensure FPS stability and
better CPU sleep times
2018-03-01 07:34:14 +01:00
Jupeyy 3dabb5c2bd ensure right internal image format, to prevent unsupported reformatting 2018-03-01 07:31:09 +01:00
heinrich5991 61c7e9307d Don't log out on sv_rcon{,_mod,_helper}_password if not changed 2018-02-26 18:01:02 +01:00
yangfl 3c488ff5c7 Allow specifying DATA_DIR by compiler option 2018-02-22 00:12:52 +08:00
heinrich5991 f7b7054152 Fix crash on startup due to sound initialization
Of course `WavpackOpenFileInputEx` is subtly incompatible to
`WavpackOpenFileInputEx64` in that it requires the userdata for the main
steam to be nonnull.

Fixes #1041.
2018-02-18 12:45:03 +01:00
heinrich5991 73c03544b4 Support older wavpack versions 2018-02-17 01:35:07 +01:00
heinrich5991 99fe1d7bcf Revert "Fix bundled wavpack when system wavpack is available"
This reverts commit 0d9265b1fa.
2018-02-17 01:31:40 +01:00
def 0d9265b1fa Fix bundled wavpack when system wavpack is available 2018-02-15 19:30:40 +01:00
heinrich5991 c2aaef2adf Remove vendored libwebsockets 2018-02-14 12:55:37 +01:00
def e9bc42a63c Update websockets implementation (fixes #1022)
seems to work with libwebsockets 2.4
2018-02-14 12:30:14 +01:00
bors[bot] 6338a05fd3 Merge #1025
1025: Add Teehistorian UUIDs to every record r=heinrich5991 a=Learath2

For statistic collecting purposes, don't merge before updating the SQL Schema.

    ALTER TABLE record_race ADD COLUMN GameID VARCHAR(64) AFTER cp25;
    ALTER TABLE record_teamrace ADD COLUMN GameID VARCHAR(64) AFTER ID;
2018-02-13 16:01:20 +00:00
bors[bot] c0fa444f3a Merge #1034
1034: Try to find external GLEW, pnglite and Wavpack  r=Learath2 a=heinrich5991

Allow for newer versions of Wavpack, fixes #1023.

Fixes #1016.
2018-02-13 02:02:07 +00:00
heinrich5991 94818ec1f0 Try to find external GLEW, pnglite and Wavpack
Allow for newer versions of Wavpack, fixes #1023.

Fixes #1016.
2018-02-12 23:29:45 +01:00
def 5587e6dc96 Remove unused inp_grab 2018-02-11 16:40:08 +01:00
bors[bot] 6283ad2012 Merge #1015
1015: Fix typo r=heinrich5991 a=yangfl
2018-02-07 16:22:48 +00:00
Learath bc11fc2a35 Add GameUuid to teamscore aswell
Also get GameUuid through an interface.
2018-02-07 16:43:36 +01:00
Dennis Felsing f62833b699 Always keep same resolution on macosx 2018-02-07 13:21:18 +01:00
yangfl 1620fc9b0f Fix typo 2018-02-07 16:10:40 +08:00
Dennis Felsing 4c8a770ba6 macosx highdpi try #123456789 2018-02-07 08:22:57 +01:00
Learath 94d98e833a Fix mistakes. Fix CREATE TABLE 2018-02-07 01:10:02 +01:00
def 864ff1ac74 Remove highdpi stuff
This reverts commit d234c55dfa.
2018-02-06 23:21:17 +01:00
Dennis Felsing d234c55dfa Try macosx highdpi fix 2018-02-05 14:37:26 +01:00
heinrich5991 1c3dc8c316 Record rcon authentication stuff into teehistorian
This allows to check moderator actions after-the-fact.
2018-01-28 03:13:05 +01:00
bors[bot] f48a2a395b Merge #947
947: Add support for extra chunks in teehistorian r=Learath2 a=heinrich5991

This allows to add rarely-used chunks without increasing the file format
version.
2018-01-27 21:09:43 +00:00
def 151da9af97 Remove Emojis 2018-01-25 20:03:18 +01:00
def dd7281ef86 Limit m_NumTimelineMarkers (reported by GG Kid) 2018-01-23 16:04:24 +01:00
Tim Schumacher b3f7864ecf Don't change map release time when updating map stars/points 2018-01-22 20:47:26 +01:00
def 9139737aa7 Minor style cleanup 2018-01-15 19:08:33 +01:00
def 48980efa2e Disable OpenGL 3 by default 2018-01-14 07:33:00 +01:00
heinrich5991 22080c840f Move teehistorian UUIDs into engine 2018-01-11 16:01:13 +01:00
heinrich5991 6c378b972b Add support for extra chunks in teehistorian
This allows to add rarely-used chunks without increasing the file format
version.
2018-01-11 15:59:53 +01:00
bors[bot] 5b2a929bc1 Merge #976
976: fixed rand init error message r=heinrich5991 a=ChillerDragon

the ``dbg_msg()`` func doesn't work until the
``IEngine *pEngine = CreateEngine("DDNet", Silent);`` line gets executed.

I used a bool to leave the code order untouched c:
2018-01-07 17:02:44 +00:00
Chiller Dragun 52a7f84583 code styling 2018-01-07 03:03:33 -08:00
def 4813a4b857 Add cl_shownotifications (fixes #949) 2018-01-05 20:20:39 +01:00
Chiller Dragun 654dd597fe fixed rand init error message 2018-01-04 06:33:21 -08: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 eb31a52b83 Add very basic test for Unix sockets 2017-12-20 16:56:44 +01:00
heinrich5991 1a236dbefc Send connection information to external server 2017-12-20 16:56:34 +01:00
Jupeyy 060f6fd36e Load shaders through IStorage class
Fixes #939.
2017-12-02 22:19:57 +01:00
bors[bot] bad105c5e4 Merge #953
953: Overhauled job system r=Learath2 a=heinrich5991

The engine now takes `std::shared_ptr<IJob>`, this will ensure the
appropriate lifetime of the given parameters, it also allows for proper
destruction. Remove the now obsolete `IFetcher` interface and `CFetcher`
class.

Also adds some locks to `CUpdater`, previously it didn't have any locks
at all.
2017-11-27 23:34:54 +00:00
heinrich5991 fd36b8c8c8 Remove unused header file src/engine/shared/storage.h 2017-11-27 00:58:30 +01:00
bors[bot] 41f6140179 Merge #945
945: Don't use nonstandard `#pragma pack` r=Learath2 a=heinrich5991

It's not needed in that place anyway.
2017-11-26 16:27:50 +00:00
bors[bot] 5bfb25c9c8 Merge #954
954: Change some config variable defaults to official server values r=Learath2 a=heinrich5991
2017-11-26 16:13:23 +00:00
bors[bot] f9e0b6b3fe Merge #931
931: Add Speedup tiles correctly at the border creation & remove tile layer extension restriction & fix the LastIndex buffer initlialization & setup non mipmap textures up correctly(texture completness) r=heinrich5991 a=Jupeyy

Allows speedups to be drawn on extended range(out of map range) too.
2017-11-26 13:32:05 +00:00
Jupeyy b1d99de87a s_ 2017-11-26 14:10:47 +01:00
Jupeyy bff1186d3b is now s_ 2017-11-26 14:08:00 +01:00
Jupeyy 14297ae45c code pattern 2017-11-26 13:28:41 +01:00
heinrich5991 c10db436b4 Change some config variable defaults to official server values 2017-11-24 11:59:45 +01:00
heinrich5991 3f43624d21 Add a couple of tests for CJobPool 2017-11-24 10:33:42 +01:00
heinrich5991 01d81fc4cc Make m_Shutdown variable atomic instead of volatile 2017-11-24 09:23:23 +01:00
heinrich5991 a3cdfac84e Fix lookup job being zeroed in CMasterServer::Load 2017-11-24 02:13:34 +01:00
heinrich5991 94acac91a0 Overhauled job system
The engine now takes `std::shared_ptr<IJob>`, this will ensure the
appropriate lifetime of the given parameters, it also allows for proper
destruction. Remove the now obsolete `IFetcher` interface and `CFetcher`
class.

Also adds some locks to `CUpdater`, previously it didn't have any locks
at all.
2017-11-23 15:47:38 +01:00
heinrich5991 f0c647dba5 Change os_compare_version to os_is_winxp_or_lower
This stops leaking OS details in non-`system.c` files.
2017-11-23 03:10:15 +01:00
heinrich5991 be80ccb7d6 Don't use nonstandard #pragma pack
It's not needed in that place anyway.
2017-11-18 00:24:44 +01:00
bors[bot] 27722633a3 Merge #940
940: Put shaders into the data/ directory r=Learath2 a=heinrich5991

Simplifies a lot of things
2017-11-15 23:29:55 +00:00
heinrich5991 17d3f4afa4 Put shaders into the data/ directory
Simplifies a lot of things
2017-11-08 22:19:47 +01:00
bors[bot] fdb2e330ce Merge #904
904: Fix use-after-free r=heinrich5991 a=Learath2

Not sure if this is the best way to go about this, but it works :/
2017-11-08 17:30:34 +00:00
Jupeyy 78c06e180f remove dublicated GL queries 2017-11-04 05:38:48 +01:00
Jupeyy 78a9fbb9b5 use the write buffer slot, instead of elementarray slot to create the
index buffer
2017-11-04 04:57:58 +01:00
Jupeyy d367f94d7c invalidate all index buffer bindigs, when index buffer is resized 2017-11-03 19:48:17 +01:00
Jupeyy c22af4bb4d fix index buffer bindig for normal quads(fixes startup crashes) and
initialize non mipmap textures as linear(texture completness)
2017-11-03 19:33:23 +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
Redix de1c0cf24d Fixed several issues with the ghost (thanks to Learath2) 2017-10-28 14:23:24 +02:00
Michał 58b0ae5fc7 Possible emoji rendering fix 2017-10-28 09:08:17 +02:00
Learath2 a6eb1b94f2 Add lock around m_Destroy and m_PastCB 2017-10-27 15:26:39 +02:00
Jupeyy 442a1767d4 reset lastindexbuffer at object deletion 2017-10-24 03:12:48 +02:00
Jupeyy 5c9fc3d19b remove unused variable 2017-10-23 18:31:44 +02:00
Jupeyy 37c5102928 only delete VBOs when the VAO, which uses the VBO, is deleted(AMD driver
bug under windows). And only allow true fullscreen under supported
display resolutions, to enable prevention of DPI scaled opengl viewport
2017-10-23 18:02:18 +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
Dennis Felsing 6c7f6e3a7e glew on macosx as well... 2017-10-20 11:49:00 +02:00
Dennis Felsing 5a75dc7f27 New glew try 2017-10-20 11:35:44 +02:00
Dennis Felsing 88c0778b21 Bundle glew instead 2017-10-20 11:12:27 +02:00
Dennis Felsing 07db95ed59 Mac build fix 2017-10-20 10:20:29 +02:00
Dennis Felsing d7eabb0ea9 Further macosx fixes 2017-10-20 09:31:42 +02:00
Dennis Felsing db46d18e71 No GLEW on OSX necessary (untested) 2017-10-20 09:08:49 +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
Edgar Luque 3408d4f016 MinGW putenv workaround. 2017-10-17 16:38:40 +02:00
Learath 30aebc9cf4 Destroy() implies Abort() 2017-10-17 15:42:17 +02:00
Learath 96acddb57f Fix the other use after free 2017-10-17 15:39:20 +02:00
Learath 7f8356e37e Fix a heap-use-after-free 2017-10-17 14:23:56 +02:00
bors[bot] 5aca38e50e Merge #902
902: Fix victim handling r=Learath2 a=heinrich5991
2017-10-16 23:41:15 +00:00
heinrich5991 dfc53b48cf Fix victim handling 2017-10-17 01:32:40 +02:00
Jupeyy cc54c4acdf also out the LOD to the fragment shader to make sure we use the same LOD
on every hardware
2017-10-14 23:27:14 +02:00
heinrich5991 16694a0d7b Use a random token for serverbrowse requests
This alleviates the risk for spoofed servers.
2017-10-14 21:58:23 +02:00
Jupeyy 5389dd9666 fix border amount for right and bottom border lines 2017-10-14 16:37:48 +02:00
heinrich5991 8e778cd9ab Address pull request comments 2017-10-13 02:29:18 +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
Learath 1855992014 Fix style 2017-10-09 20:51:16 +02:00
Learath f4b3bc63b3 Forgot classes need to be initialized with new
Also matched the function signatures to the ones in the interface
2017-10-09 20:04:23 +02:00
Learath 26efee9506 Forgot the virtuals 2017-10-09 19:22:44 +02:00
Jupeyy 26bd800d63 calculate the LOD on CPU side and restrict mipmap levels for huge
textures to remove bad looking mipmap generations at high zoom levels
2017-10-09 18:58:44 +02:00
Learath2 70ee5d9645 Properly free CFetchTask in case of abort 2017-10-09 18:47:02 +02:00
Learath2 9bce7e8630 Use a proper interface for CFetchTask 2017-10-09 18:47:02 +02:00
Learath2 d15dcd3c58 Merge pull request #871 from heinrich5991/ddnet_teehistorian
Teehistorian
2017-10-09 18:42:27 +02:00
Jupeyy 43fa2fd1a7 use wrap mode for every individual texture 2017-10-09 15:59:16 +02:00
Learath 1b0ab87015 Get rid of unnecessary queue in CFetcher 2017-10-08 00:57:56 +02:00
def b368234dae Delete editor before graphics (fixes #881) 2017-09-30 06:27:05 +02:00
Redix 2586c001b7 Use demos/auto/race for the race recorder 2017-09-28 19:14:36 +02:00
Redix e9a0271c29 Improved ghost and race recorder file handling 2017-09-28 19:13:20 +02:00
Redix a3a82b6571 Move filename clearing function to base lib 2017-09-28 16:02:01 +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 ac234ad3ee Write the correct player name into ghosts that are saved from menu 2017-09-28 16:01:59 +02:00
Redix 5b3e9e4bbf Improved ghost file management 2017-09-28 16:01:58 +02:00
Redix 5cc0d16029 Reworked the race recorder 2017-09-28 16:01:57 +02:00
Redix 1c377ed00f Added Fastcap support for ghost and race demo 2017-09-28 16:01:57 +02:00
Redix c189678e44 Cleaned up the ghost component and made it use the ghost recorder and loader 2017-09-28 16:01:56 +02:00
Redix b1e7138847 Added ghost file handling classes 2017-09-28 16:01:56 +02:00
Jupeyy 7aa547946b more warning fixes 2017-09-27 15:01:38 +02:00
Jupeyy 463944b143 fix code pattern mistakes and warnings 2017-09-27 14:52:06 +02:00
Jupeyy 9fd1290734 auto adjust font size for entity overlay 2017-09-27 12:19:39 +02:00
Jupeyy 745d77ffeb remove functions, that aren't needed anymore 2017-09-27 12:18:46 +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
Jupeyy a85f542d1d only use 4x2 matrix 2017-09-27 12:15:30 +02:00
Dennis Felsing 4fe6dc51f7 Fix non-random announcements (thanks noby) 2017-09-26 14:20:37 +02:00
heinrich5991 a201352b29 Fix a grammar mistake in bot client message 2017-09-24 21:11:23 +02:00
def 553c97b52d Fix crash with broken ddnet-info.json 2017-09-20 22:25:55 +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
Dennis Felsing 43d0299a45 Merge branch 'master' into pr_ddnet_fix_msvs_warnings 2017-09-16 11:17:39 +02:00
Jupeyy 26607cfd47 at texture upload, check if we have enough space in the command buffer
too
2017-09-15 03:50:06 +02:00
Jupeyy 31844d3353 set max width for custom text texture upload and fixing alignments for
texture updates
2017-09-15 03:01:26 +02:00
Jupeyy f2820ea392 use 4*4 array instead of declearing a full matrix class 2017-09-14 19:47:04 +02:00
Jupeyy f48e186bfd use CLineReader instead of fgets, also delete program at destruct 2017-09-14 19:35:31 +02:00
Jupeyy b6e4b4b4a6 detach shaders automatically after linking 2017-09-14 19:34:14 +02:00
Jupeyy 4fec86a354 support old opengl version with only 2 vertex coordinates 2017-09-14 08:03:33 +02:00
Jupeyy 3bdd8c19ac delete primitive index buffer at shutdown too 2017-09-14 03:54:22 +02:00
Jupeyy 1df1731b01 use glDeleteVertexArrays instead of glDeleteBuffers 2017-09-14 03:50:42 +02:00
Jupeyy 211f8a6b11 only allow changing to use single/multiple texture units at restart 2017-09-14 02:58:13 +02:00
Jupeyy 1167ab822c reduce upload since of vertices if drawing quads 2017-09-14 02:50:31 +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 5c7c09d380 fixing most wrong code pattern 2017-09-13 20:33:58 +02:00
Jupeyy a3658e5526 store alpha textures always as RGBA 2017-09-13 18:32:08 +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
Jupeyy 92bf979467 add new functions to interface to support buffering and rendering
visual objects(opengl objects)
2017-09-12 20:11:47 +02:00
Jupeyy 2af3393810 add glyph upload for custom textures 2017-09-12 20:11:14 +02:00
Jupeyy 6a7e3d5836 add a glyph upload for custom textures 2017-09-12 20:10:27 +02:00
Jupeyy bcb5f0ca8d add new programs for various gpu render tasks, and some more uniform
setter
2017-09-12 20:09:40 +02:00
Jupeyy a477540358 add new commands to buffer objects and draw them 2017-09-12 20:08:45 +02:00
Jupeyy 5f2ccf2960 add support for buffer objects and vertex object, and its draw calls 2017-09-12 20:07:38 +02:00
def 73d9ad7615 Really only download ddnet-info.json at correct time 2017-09-08 22:16:00 +02:00
def e7e1070adf WinXP: Use http://info.ddnet.tw 2017-09-08 20:06:48 +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
heinrich5991 4d96090770 Fix MSVS warnings
```
warning C4291: no matching operator delete found; memory will not be freed if initialization throws an exception
warning C4305: truncation from 'double' to 'float'
warning C4805: unsafe mix of type 'bool' and type 'int' in operation
```
2017-09-06 10:54:29 +02:00
Jupeyy 9bd6d0c6f9 Merge branch 'master' of https://github.com/ddnet/ddnet 2017-09-04 16:13:26 +02:00
def 8b1470c31f Revert "Merge GAME_VERSION and GAME_RELEASE_VERSION"
This reverts commit 5cfd779c68.
2017-09-03 23:46:15 +02:00
def 5cfd779c68 Merge GAME_VERSION and GAME_RELEASE_VERSION 2017-09-03 18:54:43 +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 2e537684d5 actually don't need the family 2017-09-03 09:20:46 +02:00
def f2a7f5f8dd User agent in http fetcher 2017-09-03 09:18:00 +02:00
def 42bc38227d Request server list and ranks at better location 2017-09-03 09:00:57 +02:00
def 862e26dd08 Clean up time handling a bit 2017-09-03 08:48:21 +02:00
Jupeyy 1053bc735d initial port to opengl3.3 (without any optimazations) 2017-09-02 15:24:07 +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
Dennis Felsing 6c21738d9d Try to fix Windows crash 2017-09-01 08:01:26 +02:00
def 7c6c2f5d9b Fix graphics init to be later so that user resolution is available 2017-08-31 23:42:21 +02:00
def 9b214db85f Force version.ddnet.tw and update4.ddnet.tw 2017-08-31 23:28:10 +02:00
def 8ebac31c03 Use old ddnet-ranks.json when new one can't be fetched currently 2017-08-31 22:40:55 +02:00
def 03399994b5 Remove duplicate semaphore 2017-08-31 19:36:27 +02:00
def a58895291c Only trust ddnet ca 2017-08-31 19:33:20 +02:00
def 705349f2e5 Clean up and fix semaphores and threading 2017-08-31 19:18:07 +02:00
Learath2 cd386488e2 Rename semaphore_* to sphore_*
Previous naming conflicted with Mach kernel definitions.
2017-08-31 19:18:07 +02:00
Savander 1741df43cd Add gametype support to exclude field 2017-08-31 12:35:01 +02:00
def bff1c12b83 Don't try to load ddnet-ranks.json while fetcher is downloading it anyway 2017-08-31 00:07:59 +02:00
def a20db6ec56 Don't shutdown sound twice (fixes #851) 2017-08-30 23:19:33 +02:00
def 7d71dae87f Fetcher: sephamore instead of spinlock, exit thread gracefully 2017-08-30 23:14:00 +02:00
def 040fc9ca32 Implement right click and middle click on country and type filters
Right click: exclusively activate one
Middle click: reset (reenable all)
2017-08-30 22:36:39 +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
def e480b651e7 Fix fetcher write function to return size 2017-08-30 21:01:19 +02:00
def 7f0eb53ff4 Initialize in order to ensure destruction in order (fixes #848) 2017-08-30 17:22:36 +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 40b145fe20 More utf8mb4 in database connection and database default 2017-08-26 10:12:47 +02:00
def ac2943a49b utf8mb4 in database for real utf8 2017-08-26 09:00:33 +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
def c6a5a7dcb3 Try using more modern SDL audio interface 2017-07-30 12:33:51 +02:00
HMH 19a8e7add6 removed some spaces 2017-07-28 20:44:03 +02:00
HMH 04e2946efc mem_free is safe on null pointers 2017-07-28 15:42:32 +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
def 5a437b110f Nicer formatting for task fetcher 2017-07-25 19:23:10 +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 6e5375da71 Moving mouse is not a key 2017-07-22 12:28:06 +02:00
def 2fb5835980 Update json-parser to 1.1.0, zlib to 1.2.11 2017-07-22 11:07:29 +02:00
def be8a149d12 We want Y axis falloff on both speakers 2017-07-22 09:15:28 +02:00
def 0b5942fc04 Add special handling for infClass class selection (fixes #794) 2017-07-21 21:43:56 +02:00
HMH 5877b17f5a cleanup freetype 2017-07-21 20:45:23 +02:00
def b57ffa429e Use scancodes instead of keycodes for input (fixes #796, please test) 2017-07-21 19:53:49 +02:00
HMH bfc5700314 Yes the Kernel and Interfaces need to be deleted too... 2017-07-21 19:46:31 +02:00
HMH ae411710ba unload fonts that are not in use anymore 2017-07-21 19:10:50 +02:00
HMH 7f7fa06dd6 free the Client created by CreateClient 2017-07-21 16:46:29 +02:00
HMH 7486ee867e also Unload Sound 2017-07-21 16:37:23 +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 bf6c91a25c Oops, update4 2017-07-17 00:08:15 +02:00
def a30323d986 oops 2017-07-16 21:27:18 +02:00
def 4a8f3b083d Use new update server that runs on Let's Encrypt 2017-07-16 11:46:38 +02:00
def e4364983ab Use https for map downloads by default 2017-07-16 11:29:10 +02:00
def 191eefbb2f Only trust our own custom-selected CAs for our maps download server 2017-07-16 11:25:38 +02:00
def c7c9c3c4dd Possible to use https:// for map downloads, but still use http:// by default 2017-07-16 10:45:41 +02:00
def a736a27430 No need for writing to tmp config file anymore 2017-07-16 06:54:02 +02:00
def f9170fd031 ugly workaround for dummy input when frozen with grenade and getting hammered 2017-07-15 18:59:33 +02:00
def 5ad633ef26 No success with Windows fixes, have to delay until someone with a
Windows computer can look into it
2017-07-15 17:29:57 +02:00
def fba3815ddc Only send password on connection when explicitly asked to (fixes #788) 2017-07-15 17:29:20 +02:00
def 49eb0128f2 Windows cleanup 2017-07-15 16:38:40 +02:00
def 1e3476e8bd Opposite manifest setting 2017-07-15 16:18:18 +02:00
def 78dc5aa959 Another Windows DPI try 2017-07-15 15:31:53 +02:00
def f627a72ebb Refcount IME usage (fixes #577 and #738) 2017-07-15 15:25:36 +02:00
def f2444b0de7 Add map_diff tool to compare tile layers of map versions 2017-07-12 20:15:00 +02:00
def ff8d22e335 Audio volume on right speaker should depend on x coordinate, not y... 2017-07-11 22:10:23 +02:00
Dennis Felsing 38eacf21b7 Next try for Windows 2017-07-11 14:37:12 +02:00
Dennis Felsing 6a90b00b0b Types 2017-07-11 14:25:53 +02:00
Dennis Felsing d6f6095358 Types 2017-07-11 14:24:28 +02:00
Dennis Felsing 81c6d0b33c Who doesn't enjoy fixing Windows stuff? 2017-07-11 14:08:03 +02:00
def d0f4ffdaad SDL_HINT_VIDEO_HIGHDPI_DISABLED 2017-07-09 19:53:02 +02:00
def 53565aa937 fixes 2017-07-09 14:56:57 +02:00
def afe8b4dfbe Or we just disable stupid highdpi... 2017-07-09 14:50:10 +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 2a1bf93165 Try to fix Windows DPI issue 2017-07-09 09:24:08 +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 42b07441a5 Try to make SQL connections a bit more hardy 2017-07-08 14:14:50 +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
def 73c61e4169 Let's not save maps that are ok already 2017-06-11 20:18:28 +02:00
def 2bd6316ce7 Add code for fixing old maps by removing unused tiles 2017-06-11 19:53:55 +02:00
heinrich5991 743c58e4ae Revert "Fix OSX cmake build"
This reverts commit 3406f01ff9.
2017-06-09 19:34:01 +02:00
Learath2 3406f01ff9 Fix OSX cmake build
A little crude but it works.
2017-06-09 16:05:04 +02:00
eeeee 0497cdd49d stop casting auth state to bool 2017-06-08 13:03:44 -07:00
Learath2 ca4da73b75 Update the range of sv_default_timer_type. Fixes #760 2017-06-08 14:35:48 +03:00
eeeee 9c5ade24da remove ConDnsblStatus copypasta 2017-06-07 11:04:04 +02: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
eeeee 9b6699d3b8 remove casts to CServer
improving encapsulation by going through the interface instead of including engine/server/server.h
2017-06-05 20:51:12 -07:00
def b592d6af55 ms not µs for thread_sleep 2017-06-02 23:28:47 +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 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
def 814feede33 Don't copy strings into themselves 2017-06-02 18:37:29 +02:00
def 533ae0aaf8 Fix login crash (fixes #771) 2017-06-02 18:13:56 +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 f4112e3bcb Revert "Tees must be teamed up before loading"
This reverts commit d29f2306ef.
2017-05-14 22:36:44 +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 58207926ac Merge pull request #726 from Learath2/dd_pr_load
Tees must be teamed up before loading
2017-05-14 11:54:39 +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
Ryozuki 3a4738560b Don't show ips to non-administrators, Fixes #694 (#739)
People with non-administrator rights won't be able to see ips (mod, helper).
2017-04-17 12:13:58 +02:00
def d4ed1310d2 Configurable rate limit for SQL queries 2017-04-13 09:33:26 +02:00
Dennis Felsing 40d3b4071d Merge pull request #729 from Learath2/dd_pr_friendcoll
Strict checking for friends
2017-04-12 11:16:20 +02:00
Learath ec1581f13a Strict checking for friends. Fixes #539 2017-04-12 11:04:20 +02:00
Learath2 568b5e5603 Pointers should be set to NULL 2017-04-12 01:20:39 +02:00
Learath 389b432758 Take a blind stab at #718 2017-04-11 21:47:27 +02:00
Learath d29f2306ef Tees must be teamed up before loading 2017-04-11 21:18: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
east bffb989a11 add generated rcon password as default auth key 2017-03-29 14:56:44 +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
heinrich5991 f5446ca3b0 Fix unsigned/signed comparison warning when interacting with freetype 2017-03-19 17:19:59 +01:00
heinrich5991 d91cca728d Partially revert warning-fixing, it caused warnings on other systems 2017-03-12 16:47:37 +01:00
Ryozuki 84726547aa Fix warning also for server.cpp, and fixed client.cpp 2017-03-12 14:49:18 +01:00
Ryozuki 79f5b26cf7 Moved _WIN32_WINNT to the top instead 2017-03-12 14:45:57 +01:00
Ryozuki 1614e59e8f Fix some warnings 2017-03-12 12:12:39 +01:00
Dennis Felsing 1d67e29c74 Merge pull request #663 from heinrich5991/pr_ddnet_fix_default_pws
Fix handling of default passwords
2017-03-10 12:45:01 +01:00
heinrich5991 87596c30ac Fix handling of default passwords
It was horribly broken before. :) Only the first password set via
`sv_rcon*_password` worked, and that only due to a bug in `AddHashKey`
-- `AddHashKey` incorrectly assumed that only key slots greater than 0
are valid, but 0 is valid too.

Fix default passwords on password removal, fix no admin password being
generated if you only had `sv_rcon_mod_password` or
`sv_rcon_helper_password` set. Add an assert that would have caught our
mistake.
2017-03-10 12:33:34 +01:00
heinrich5991 f2b2eb8639 Allow easier login for passwords with spaces 2017-03-10 12:30:41 +01:00
heinrich5991 72f2eb32ee Fix wording in scripts/hash_passwords.py, fix brace in other file 2017-03-09 13:37:54 +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 5b63a33095 Merge pull request #639 from Learath2/dd_pr_rconauth2
New auth system for rcon.
2017-03-06 20:57:42 +01:00
heinrich5991 6302e4d7e0 Fix some style issues and a > to >= 2017-03-06 20:11:23 +01:00
heinrich5991 c1e826e853 Fix key slot indices after removing a key 2017-03-06 18:02:19 +01:00
Learath2 8c79f28802 Fix a crash on malformed input 2017-03-06 15:18:52 +01:00
Learath2 b49c13e617 KeySlots are 0 indexed... 2017-03-06 14:14:45 +01:00
Learath2 71fb030443 Fix a comparison. Hate backwards compatibility... 2017-03-06 13:46:02 +01:00
Learath2 4d0f036b4f Forgot to negate the comparisons 2017-03-06 13:22:17 +01:00
Learath2 9800360340 Check the return from str_hex_decode. Remove comment 2017-03-06 12:59:47 +01:00
Learath2 c5a12e3eba Fix the status command for logged out people 2017-03-06 12:35:37 +01:00
Learath2 6f1f348715 Fix c&p fail 2017-03-06 12:35:09 +01:00
Learath2 4101acd747 Add rcon_login 2017-03-06 10:31:05 +01:00
Learath2 95bb9894a7 Get rid of pw generation in CServer, Err out in CAuthManager instead 2017-03-04 23:16:02 +03:00
Learath2 3a22a4b62d Fix some issues 2017-03-04 23:06:22 +03: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
Learath2 cf9f3e3d38 Forgot one block 2017-03-04 10:58:02 +03:00
Learath2 d475eddb88 Add key ident to status command 2017-03-02 19:02:57 +03:00
Learath2 b7cbaedea0 New auth system for rcon 2017-03-02 18:16:29 +03: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
Dennis Felsing eb36f421c5 Merge pull request #630 from heinrich5991/pr_ddnet_cmake_basic
Add overly simple CMakeLists.txt
2017-02-27 16:28:19 +01: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 09552a6d9f Get rid of trailing whitespaces 2017-02-21 19:11:43 +03:00
Learath2 9cd5fa53e5 Fix horrible indent. 2017-02-09 13:01:19 +01:00
east 0acad1a28b dnsbl fix: HostLookup check result properly 2017-02-01 12:13:50 +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
heinrich5991 b510db9ee9 Add the VITAL flag to fastdownload packets
This lets 0.6.4 clients connect to DDNet servers again. Instead of doing
our own resend logic, just always send `sv_map_window` packets ahead and
let the Teeworlds network deal with possible resends.
2016-11-18 15:12:48 +01:00
Dennis Felsing 243ed93fdf Merge pull request #578 from heinrich5991/pr_ddnet_better_confusables
Implement the confusable algorithm from Unicode more closely
2016-11-15 13:43:26 +01:00
Dennis Felsing c21399c4c5 Merge pull request #567 from d3fault/master
dummy copyMoves/hammer disabling when dummy connecting
2016-11-07 10:20:11 +01:00
Dennis Felsing dc18f16623 Cleanup 2016-11-07 10:19:32 +01:00
Dennis Felsing b7cb4ee017 Merge pull request #573 from ddnet/pr-demo-speed
Refactor demo speed setting, add 1.5x speed (fixes #568)
2016-11-07 10:19:05 +01:00
Dennis Felsing ab6ed4c589 Discard invalid snaps 2016-11-04 13:26:46 +01:00
def 34531c0696 cleanup 2016-11-03 22:10:31 +01:00
heinrich5991 cd3b0ae855 Implement the confusable algorithm from Unicode more closely
See UTS#39 "Unicode Security Mechanisms":
http://www.unicode.org/reports/tr39/

This means that characters with accents or other things around them are
now considered the confusable with the base character.

Fixes #557. Fixes #575.
2016-10-30 13:45:55 +01:00
Dennis Felsing c92e10914a Refactor demo speed setting, add 1.5x speed (fixes #568) 2016-10-28 09:31:22 +02:00
d3fault d6b732113e dummy copyMoves/hammer disabling when dummy connecting 2016-10-26 15:00:02 -07: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 fce9ec6cda Replace UI elements for the timeout code
Now you can regenerate your timeout seed with the click of a button.
2016-10-03 13:56:15 +02:00
heinrich5991 89b6d0c3da Fix C89 compilation and a copy&paste mistake 2016-10-03 12:31:11 +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
heinrich5991 e950351346 Put the password generation into base 2016-10-01 23:04:16 +02:00
gjdaniel1999 142ae25e5d Fix #267
Fixes crashes caused by dns timeout.
2016-09-28 10:48:51 +05:30
def 3ed6692ad7 SQL string cleanup 2016-09-25 10:41:34 +02:00
Dennis Felsing 5a29fa8fca Merge pull request #544 from east/dnsbl
Basic DNSBL implementation
2016-09-19 11:57:07 +02:00
Dennis Felsing 98a2f459b6 Merge pull request #533 from BannZay/openCurrentMap
Load Current Map button added
2016-09-05 18:27:54 +02:00
BannZay 66c44cea79 MAX_PATH_LENGTH instead of pure magick 2016-09-05 18:54:35 +03:00
east c6efc85a80 dnsbl_status added 2016-09-05 14:05:07 +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
ACTom 363d0f81a4 Fix editor cannot input
fix bug that press ctrl+shift+e enter editor and cannot input anything.
fixed by TsFreddie
2016-08-27 02:29:57 +08:00
BannZay c658411f15 Load Current Map button added 2016-08-23 14:29:53 +03:00
Freddie Wang e5f23cd87c Added full IME support
Now with display of editing text.
2016-08-14 22:16:06 -07:00
Freddie Wang 51a7b01190 temporary ime fix
Fixed Asian IMEs which need to press enter to confirm candidate text.

Disabled keyinput while editing candidate in IME.
2016-08-14 21:01:31 -07: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
def 0688229f0d Forbid names starting with /, as they can be abused to make people write chat commands 2016-07-08 16:38:05 +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
def 866ffe8ef2 Fix mouse when opening editor with cl_editor 1 2016-07-03 23:16:43 +02:00
def 4681f69b1b Introduce cached ticks for client again, this time with workaround for
particles. Hopefully not many other parts of the code will need this.
2016-06-28 23:36:34 +02:00
def 19feacb2ad Revert "Cache time on client as well"
This reverts commit 987fad55cd.

Broke too many graphics animations, couldn't find a fix
2016-06-28 02:51:26 +02:00
def 987fad55cd Cache time on client as well
- Fixes FPS for me after suspend from 40 to 500 fps
- Should generally improve performance
- Might lead to a few problems where we need to call set_new_tick() in a
  few more positions, so test please
2016-06-28 02:16:55 +02:00
def aeec3c6396 Add support for mousewheelleft and mousewheelright 2016-06-21 15:31:28 +02:00
def 8753620e42 Also use cl_reconnect_timeout on 'Too weak connection' 2016-06-19 02:17:23 +02:00
def e518a701a3 Clean up sql dbg_msg calls 2016-06-15 11:52:40 +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
Tim Schumacher 96bcedec29 just set first char of ddnet filter to zero 2016-05-19 15:54:52 +02:00
Tim Schumacher dae855ee9f clear ddnet filter strings before appending 2016-05-19 15:51:48 +02:00
def 1645310750 Keep reading packets after invalid control packet 2016-05-17 23:44:57 +02:00
def bb634d7641 Reconnect to last server address, not the one selected in browser 2016-05-17 18:56:33 +02:00
HMH c4843868c4 do not log the sql-passwords 2016-05-16 15:41:52 +02:00
HMH a073d22509 set timeout for sql-reads/writes 2016-05-16 15:37:51 +02:00
def 695bf346ac Make gfx_refresh_rate functional (fixes #255) 2016-05-10 17:43:27 +02:00
def 2fc2515e0f Fix DDNet server browser to refresh only once on start, not twice 2016-05-10 12:40:33 +02:00
H-M-H 3b6baaa8d3 made CSqlData const for threadfunctions and added a class for sqlstrings
CSqlData is const for threadfunctions now to avoid modification from
within the threadfunctions as these might be called several times.
Previously this was a problem as ClearString could possibily be applied
multiple times to the same string.

To solve this the class CSqlString has been added. This class takes a
const char* and copies it. Additionally a clearstring is created from
the given const char*. This enables access to the original as well as
the cleared string safe for sql-statements.

sql_string_helpers got an own source file now.

A crashbug from CSqlServer has been fixed (pointer has not been set
back to 0)
2016-05-09 23:35:23 +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
def 461a09451d Improve handling of multiple screens and missing screens 2016-05-07 23:19:46 +02:00
def 642e7f7671 Still hide window at start (fixes fullscreen in Gnome) 2016-05-07 21:16:31 +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 4631a7cfa6 Try to enable HighDPI (untested) 2016-05-07 16:35:31 +02:00
def 340c4d2398 Leave it up to the WM where to position windows 2016-05-07 15:59:40 +02:00
def c325b08087 Add inp_mouseold for warped mouse input 2016-05-07 15:59:13 +02:00
def f2100fbad7 Change window focus handling (disable input grab when focus lost) 2016-05-06 11:29:34 +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
Dennis Felsing e7af8cfdd7 Merge pull request #466 from Ryozuki/pr_showpred
Fixed cl_showping (now cl_showpred)
2016-05-05 18:59:01 +02:00
def 14f1670fda Fix fifo console to remove newline character at end 2016-05-05 18:48:15 +02:00
Ryozuki 82d2a994ed Fixed cl_showping (now cl_showpred) 2016-05-05 18:07:00 +02:00
H-M-H 931d99e4c2 also destroy locks created by CSqlServer 2016-05-04 23:39:16 +02:00
def 1b668047c8 Clean up auto reconnect and make it independent of rendering 2016-05-04 18:23:00 +02:00
H-M-H 5dc47ede58 put sql_string_helpers into an own namespace 2016-05-04 16:51:18 +02:00
H-M-H a7c0cd58ee fixed birthdaycheck and the format of sql-inserts for the failure-file 2016-05-04 16:47:53 +02:00
H-M-H cd41220a44 wait for score-threads on shutdown 2016-05-04 15:32:24 +02:00
H-M-H 13688bbb2a fixed indentation 2016-05-04 00:27:03 +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 a8ce73dffa Comment m_InpuIgnoredModifiers a bit 2016-05-02 18:21:54 +02:00
def a9ed7035ee Add inp_ignored_modifiers to ignore set of keyboard modifiers 2016-05-01 23:07:19 +02:00
def 28571e9cb5 Damn Windows XP 2016-05-01 20:23:14 +02:00
def 0bab90aa20 ALT modifier has no special meaning for key input 2016-05-01 19:57:38 +02:00
def 487de16200 Anotehr WinXP fix 2016-05-01 19:56:18 +02:00
def dc45ecbe6d Try to fix du.bat 2016-05-01 19:56:13 +02:00
def a4840cdfd3 Fix ed_showkeys with mousewheel 2016-05-01 19:34:16 +02:00
def faa576e73d Another mouse fix try 2016-05-01 15:34:36 +02:00
def 981533e177 More mouse fixes with SDL2 2016-05-01 15:20:52 +02:00
def 143fd88c2a Ignore relative mouse movement when in absolute mouse mode 2016-05-01 15:02:08 +02:00
def 644a23ba57 Fix folder creation 2016-05-01 14:45:47 +02:00
def ab13a0086d Updater: Support downloading files into new directories 2016-05-01 14:20:55 +02:00
def 779c6d2508 Only move cursor when window has mouse focus 2016-05-01 14:00:53 +02:00
def 32db2e6915 Updater: Support DLLs for win32 and win64 2016-05-01 13:11:51 +02:00
def 88780b8fbc Use new ddnet update server 2016-05-01 12:09:02 +02:00
def 15fa9f7b74 minor fix: false instead of SDL_FALSE 2016-05-01 11:39:40 +02:00
def 6b3e0981a1 Case-insensitive 2016-05-01 11:23:56 +02:00
def 53a7623191 Updater special handling for ttf files (same as dll) 2016-05-01 11:23:32 +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 72a6e20ba8 Split CInput::NextFrame() from CInput::Update() (fixes #444) 2016-05-01 00:18:25 +02:00
def d1b87e6794 Fix resolution on Mac OSX (fixes #445) 2016-04-30 23:10:09 +02:00
def f79bdf69a5 typo 2016-04-30 22:55:21 +02:00
Dennis Felsing f016a0eb1f Merge pull request #436 from timakro/pr_other_gametype_entities_clear
added entities clear for other gametypes
2016-04-30 20:28:27 +02:00
def 0385c3b520 Workaround for global hotkeys causing SDL keydown events 2016-04-30 20:27:47 +02:00
def 4761608329 Input fixes from TW master for mouse wheel 2016-04-30 20:11:26 +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 74f4ad77d6 fixed utf8 text input from tw master 2016-04-30 04:02:32 +02:00
def 502c5aa3cb Ignore keys after window regained focus 2016-04-30 03:32:23 +02:00
def 26c9c39004 Disable HighDPI displays 2016-04-30 03:32:01 +02:00
def 9b20d3a0ad Fix relative mouse 2016-04-30 02:06:41 +02:00
def 2a7aa33830 Normal mouse speed again 2016-04-30 00:52:43 +02:00
def 7a5b79e48a More SDL2 graphics goodness, partially from TW master 2016-04-30 00:43:11 +02:00
def 11e3fd55db seperated ingame input handling from rendering (from TW master) 2016-04-29 23:05:20 +02:00
def 1727dd5a72 Some early SDL2 Android fixes 2016-04-29 22:56:13 +02:00
def e8965bee68 Some keyboard input changes from teeworlds master 2016-04-29 21:56:38 +02:00
def 354696afb7 switch between fullscreen and windowed mode without restarting the client (by oy) 2016-04-29 21:56:38 +02:00
def 6c4e6c5c44 setlocale for XOpenIM with compose key 2016-04-29 21:56:38 +02:00
def 8e3550f9c6 Fix keyboard segfault 2016-04-29 21:56:38 +02:00
def 10d6f69d32 Fix Mouse buttons 4 and 5 2016-04-29 21:56:38 +02:00
def 0155c75cf4 Keyname for mouse9 2016-04-29 21:56:38 +02:00
def cc1f80471b Use same key limit as SDL2 does 2016-04-29 21:56:38 +02:00
def a089d3d36d Fix issue with keys not being recognized on non-English keyboards 2016-04-29 21:56:38 +02:00
def bd2b61f0e5 Initialize m_pClipboardText 2016-04-29 21:56:38 +02:00
def c5db3ef5f4 Use SDL_free instead of free 2016-04-29 21:56:38 +02:00
def ea45173612 Fix NotifiyWindow on Windows 2016-04-29 21:56:38 +02:00
def 3e9b8a62ce Add includes for windows' getenv/putenv/free 2016-04-29 21:56:38 +02:00
def 632db36fe4 Add clipboard copy&paste support (by swick) 2016-04-29 21:56:38 +02:00
def 9918ada2d8 Add comment about mouse sensitivity on X11 2016-04-29 21:56:38 +02:00
def 4111acd309 Add WIP 2016-04-29 21:56:38 +02:00
def 8bfc0008b7 Hide window until OpenGL context is created
Fixes aspect ratio distortion when using multiple screens with different
aspect ratio and switching between them while starting the client
2016-04-29 21:56:38 +02:00
def 6efd028393 Make NotifyWindow work with SDL2 2016-04-29 21:56:38 +02:00
def 38cfe32385 Fix stuck mouse 2016-04-29 21:56:38 +02:00
def 5cdb36ecb0 Debugging with text input handling 2016-04-29 21:56:38 +02:00
def ff2a7272fa Improved window grabbing: only when relative mouse mode is active 2016-04-29 21:56:38 +02:00
def 63a4c804de Grab window, fixes mouse moving out of window and losing control 2016-04-29 21:56:38 +02:00
def 2d70c3e292 Try to get SDL2 on Windows working 2016-04-29 21:55:48 +02:00
def db8a126315 Merge swick's SDL2 branch 2016-04-29 21:55:48 +02:00
Tim Schumacher 4a22e762ff added entities clear for other gametypes 2016-04-29 19:29:19 +02:00
Dennis Felsing 12fa78ca75 Merge pull request #316 from Learath2/pr_dllupdate
Allow for the update of dll files
2016-04-27 22:18:30 +02:00
def 86a0f46937 Add a connection limit (fixes #408) 2016-04-27 22:09:18 +02:00
def c473689be7 Remove VITAL flag in fastdownload map packets (as suggested by heinrich5991) 2016-04-27 19:54:43 +02:00