Holger Schemel [Fri, 8 Oct 2021 09:56:19 +0000 (11:56 +0200)]
fixed endless loop if stopping tape while auto-playing
Holger Schemel [Tue, 5 Oct 2021 16:06:15 +0000 (18:06 +0200)]
added extreme speedup in case of missing tapes when auto-testing
This uses the same tape check to speed things up in case of missing
tapes that was already used for uploading tapes in commit
e11fa67d.
Holger Schemel [Tue, 5 Oct 2021 14:00:06 +0000 (16:00 +0200)]
added printing tape date when dumping tape
Holger Schemel [Sat, 2 Oct 2021 12:41:52 +0000 (14:41 +0200)]
fixed drawing initial header and item text to screen
This commit partially reverts and fixes commit
6c9f59b4, removing a
speed bottleneck introduced by that commit, while keeping the fix from
that commit that should prevent not displaying the first of a series
of items displayed together with a header text.
Holger Schemel [Wed, 29 Sep 2021 22:54:25 +0000 (00:54 +0200)]
swapped condition logic to improve code readability
Holger Schemel [Wed, 29 Sep 2021 22:47:41 +0000 (00:47 +0200)]
fixed bug with using same player UUID for new player with same setup values
Holger Schemel [Wed, 29 Sep 2021 22:35:51 +0000 (00:35 +0200)]
moved new score server setup values to separate setup file
This change prevents wiping out the player UUID when using the setup
file with an older game version that would remove all new setup file
entries when saving setup values. This would especially destroy the
player UUID, which could then not be recovered to its previous value
(while all other new setup values could easily be set back again).
Using a new, different setup file for the player UUID (and all other
new score server setup values) solves this problem.
Holger Schemel [Wed, 29 Sep 2021 21:50:31 +0000 (23:50 +0200)]
added wrapper function for loading and saving all setup files
Holger Schemel [Wed, 29 Sep 2021 18:42:10 +0000 (20:42 +0200)]
changed some platform strings
Holger Schemel [Wed, 29 Sep 2021 18:13:49 +0000 (20:13 +0200)]
fixed error handling when doing HTTP requests
Holger Schemel [Sat, 25 Sep 2021 10:38:13 +0000 (12:38 +0200)]
added fallback site to script to download SDL libraries
Holger Schemel [Sat, 25 Sep 2021 00:31:58 +0000 (02:31 +0200)]
added message when attempting to quit game on Emscripten platform
Holger Schemel [Sat, 25 Sep 2021 00:31:02 +0000 (02:31 +0200)]
minor formatting change
Holger Schemel [Sat, 25 Sep 2021 00:30:10 +0000 (02:30 +0200)]
added score server request handling for Emscripten platform
Holger Schemel [Sat, 25 Sep 2021 00:26:15 +0000 (02:26 +0200)]
moved code for HTTP request handling to separate functions
Holger Schemel [Sat, 25 Sep 2021 00:08:38 +0000 (02:08 +0200)]
renamed functions
Holger Schemel [Fri, 24 Sep 2021 23:45:30 +0000 (01:45 +0200)]
merged API functions
Holger Schemel [Fri, 24 Sep 2021 23:42:33 +0000 (01:42 +0200)]
changed API code to use thread data pointer instead of variables
Holger Schemel [Fri, 24 Sep 2021 14:25:27 +0000 (16:25 +0200)]
moved creating and freeing API thread data to separate functions
Holger Schemel [Fri, 24 Sep 2021 14:15:56 +0000 (16:15 +0200)]
moved API thread data structure definitions
Holger Schemel [Fri, 24 Sep 2021 14:13:43 +0000 (16:13 +0200)]
renamed API related functions to match API names
Holger Schemel [Fri, 24 Sep 2021 14:08:47 +0000 (16:08 +0200)]
added function to create HTTP response object from buffer
Holger Schemel [Fri, 24 Sep 2021 14:07:20 +0000 (16:07 +0200)]
improved robustness of client/server encoding functions
Holger Schemel [Thu, 23 Sep 2021 07:48:59 +0000 (09:48 +0200)]
fixed threads for Emscripten
Holger Schemel [Wed, 22 Sep 2021 21:43:28 +0000 (23:43 +0200)]
fixed Makefile for Android
Holger Schemel [Wed, 22 Sep 2021 19:35:12 +0000 (21:35 +0200)]
fixed potential buffer overflow bug
Holger Schemel [Wed, 22 Sep 2021 12:47:21 +0000 (14:47 +0200)]
added sending platform to score server
Holger Schemel [Mon, 20 Sep 2021 21:15:00 +0000 (23:15 +0200)]
added restoring level number when interactively uploading tapes to server
Holger Schemel [Mon, 20 Sep 2021 19:19:51 +0000 (21:19 +0200)]
added printing summary after uploading tapes to server
Holger Schemel [Mon, 20 Sep 2021 18:47:20 +0000 (20:47 +0200)]
added restoring last level set when interactively uploading tapes to server
Holger Schemel [Mon, 20 Sep 2021 18:34:19 +0000 (20:34 +0200)]
changed path and Makefile targets for engine test script
Holger Schemel [Mon, 20 Sep 2021 18:27:22 +0000 (20:27 +0200)]
added extreme speedup when uploading all existing private tapes
Holger Schemel [Sun, 19 Sep 2021 11:28:33 +0000 (13:28 +0200)]
version number set to 4.3.0.0
Holger Schemel [Thu, 16 Sep 2021 14:58:41 +0000 (16:58 +0200)]
removed writing tape file for upload if INFO chunk is missing or wrong
Holger Schemel [Thu, 16 Sep 2021 14:56:20 +0000 (16:56 +0200)]
added using command line level identifier/nr for single tape tests/uploads
Holger Schemel [Thu, 16 Sep 2021 14:49:42 +0000 (16:49 +0200)]
added command line options for level identifier/nr for tape tests/uploads
Holger Schemel [Thu, 16 Sep 2021 14:47:29 +0000 (16:47 +0200)]
changed using command line player name only for tape tests/uploads
Holger Schemel [Tue, 14 Sep 2021 22:25:31 +0000 (00:25 +0200)]
added saving tape without INFO chunk to temporary file before uploading
Holger Schemel [Sun, 12 Sep 2021 23:10:40 +0000 (01:10 +0200)]
code cleanup
Holger Schemel [Sun, 12 Sep 2021 23:09:13 +0000 (01:09 +0200)]
added checking for missing INFO chunk when loading tape by filename only
Holger Schemel [Sun, 12 Sep 2021 22:56:26 +0000 (00:56 +0200)]
added saving incorrect solution tape to temporary file before uploading
Holger Schemel [Sun, 12 Sep 2021 11:27:07 +0000 (13:27 +0200)]
added definitions for using test score server
Holger Schemel [Sun, 12 Sep 2021 11:13:45 +0000 (13:13 +0200)]
added sending timestamp of batch tape uploads to score server
Holger Schemel [Tue, 7 Sep 2021 08:40:28 +0000 (10:40 +0200)]
moved code for hiding tapes upload to setup menu function
Holger Schemel [Mon, 6 Sep 2021 22:22:21 +0000 (00:22 +0200)]
renamed setup option for using score server
Holger Schemel [Mon, 6 Sep 2021 22:03:19 +0000 (00:03 +0200)]
added setup file option to toggle setup menu option to upload all tapes
Holger Schemel [Mon, 6 Sep 2021 21:21:24 +0000 (23:21 +0200)]
added setup menu option to upload all tapes to score server
Holger Schemel [Sun, 5 Sep 2021 22:20:48 +0000 (00:20 +0200)]
changed interface for functions to auto-play tapes to return played tapes
Holger Schemel [Sun, 5 Sep 2021 22:16:46 +0000 (00:16 +0200)]
added asking for and uploading tapes to score server (only once)
Holger Schemel [Sun, 5 Sep 2021 22:07:52 +0000 (00:07 +0200)]
changed interface for functions to auto-play tapes
Holger Schemel [Sun, 5 Sep 2021 21:45:40 +0000 (23:45 +0200)]
added setup option to ask for uploading tapes to score server
Holger Schemel [Sun, 5 Sep 2021 21:42:22 +0000 (23:42 +0200)]
changed function from static to public
Holger Schemel [Sun, 5 Sep 2021 19:15:00 +0000 (21:15 +0200)]
improved debug output for level or artwork tree info dump
Holger Schemel [Sun, 5 Sep 2021 19:14:07 +0000 (21:14 +0200)]
improved drawing initial header and item text to screen
Holger Schemel [Sun, 5 Sep 2021 18:54:49 +0000 (20:54 +0200)]
improved code for drawing init text to screen
Holger Schemel [Sat, 4 Sep 2021 11:53:11 +0000 (13:53 +0200)]
added support to auto-play/test/etc. all existing tapes
Holger Schemel [Sat, 4 Sep 2021 11:43:41 +0000 (13:43 +0200)]
minor code change
Holger Schemel [Sat, 4 Sep 2021 11:28:48 +0000 (13:28 +0200)]
moved code to initialize level set when auto playing tapes
Holger Schemel [Sat, 4 Sep 2021 10:16:56 +0000 (12:16 +0200)]
moved code for tape replay header and summary to separate functions
Holger Schemel [Sat, 4 Sep 2021 10:13:09 +0000 (12:13 +0200)]
moved variables for auto playing tapes to separate structure
Holger Schemel [Sat, 4 Sep 2021 08:10:06 +0000 (10:10 +0200)]
fixed wrong variable type
Holger Schemel [Fri, 3 Sep 2021 13:45:14 +0000 (15:45 +0200)]
code cleanup
Holger Schemel [Fri, 3 Sep 2021 13:40:34 +0000 (15:40 +0200)]
added function to get next valid tree node
Holger Schemel [Fri, 3 Sep 2021 13:22:48 +0000 (15:22 +0200)]
fixed tree node navigation bug (when stepping up empty sub-trees)
Holger Schemel [Fri, 3 Sep 2021 13:17:19 +0000 (15:17 +0200)]
improved comments
Holger Schemel [Fri, 3 Sep 2021 13:13:58 +0000 (15:13 +0200)]
removed unnecessary "else if" structure
Holger Schemel [Fri, 3 Sep 2021 12:55:32 +0000 (14:55 +0200)]
added leaf node count to level/artwork tree info dump
Holger Schemel [Mon, 23 Aug 2021 10:25:57 +0000 (12:25 +0200)]
added saving non-standard solution tape to temporary file before uploading
Holger Schemel [Mon, 23 Aug 2021 10:16:58 +0000 (12:16 +0200)]
added function to get temporary tape filename
Holger Schemel [Mon, 23 Aug 2021 10:14:24 +0000 (12:14 +0200)]
moved getting different solution tape filenames to separate functions
Holger Schemel [Mon, 23 Aug 2021 08:31:34 +0000 (10:31 +0200)]
added requiring player name when uploading solution tapes via command line
Holger Schemel [Sat, 21 Aug 2021 08:49:53 +0000 (10:49 +0200)]
added command line option for anonymous player name for score uploads
Holger Schemel [Fri, 20 Aug 2021 14:26:15 +0000 (16:26 +0200)]
added always using game version in requests to score server
Holger Schemel [Mon, 16 Aug 2021 21:39:56 +0000 (23:39 +0200)]
added renaming player also on score server
Holger Schemel [Mon, 16 Aug 2021 21:37:17 +0000 (23:37 +0200)]
changed functions for score server access from static to public
Holger Schemel [Tue, 10 Aug 2021 12:54:30 +0000 (14:54 +0200)]
removed storing and sending system UUID again
Holger Schemel [Tue, 10 Aug 2021 06:58:47 +0000 (08:58 +0200)]
added sending system and player UUID to score server
Holger Schemel [Sat, 7 Aug 2021 22:24:11 +0000 (00:24 +0200)]
moved initializing random numbers before creating UUIDs
Holger Schemel [Sat, 7 Aug 2021 19:29:06 +0000 (21:29 +0200)]
added setup values to store system and player UUID
Holger Schemel [Sat, 7 Aug 2021 19:12:59 +0000 (21:12 +0200)]
fixed reading boolean values from files that are neither 0 nor 1
Holger Schemel [Sun, 18 Jul 2021 10:49:52 +0000 (12:49 +0200)]
fixed triggering CE actions by digging or collecting
The improvement for CE actions by digging or collecting elements not
triggering before the dig or collect action was completely finished
had a very nasty bug in that such CE events when triggered by snapping
that element (which also counts as digging or collecting) just did not
work. This bug is fixed by this change.
This fixes commit
ca2d6507.
Holger Schemel [Wed, 14 Jul 2021 21:52:59 +0000 (23:52 +0200)]
added temporary code for one-time level set conversion
Holger Schemel [Sat, 10 Jul 2021 11:16:02 +0000 (13:16 +0200)]
removed unused function
Holger Schemel [Sat, 10 Jul 2021 11:13:56 +0000 (13:13 +0200)]
fixed unmapping undo/redo buttons at non-standard position
Holger Schemel [Sat, 10 Jul 2021 10:48:45 +0000 (12:48 +0200)]
renamed setup option for showing load/save snapshot buttons
Holger Schemel [Sat, 10 Jul 2021 10:40:32 +0000 (12:40 +0200)]
added setup option for showing (only) undo/redo game buttons
Holger Schemel [Fri, 9 Jul 2021 12:56:17 +0000 (14:56 +0200)]
added saving special tape properties
Holger Schemel [Sat, 3 Jul 2021 11:53:13 +0000 (13:53 +0200)]
moved duplicate code to separate functions
Holger Schemel [Sat, 3 Jul 2021 11:45:20 +0000 (13:45 +0200)]
added command to upload existing tapes to server
Holger Schemel [Sat, 3 Jul 2021 11:40:12 +0000 (13:40 +0200)]
improved handling of command parameters when auto-processing tapes
Holger Schemel [Sat, 3 Jul 2021 11:37:00 +0000 (13:37 +0200)]
added support for saving specified score tape file to server
Holger Schemel [Sat, 3 Jul 2021 11:31:08 +0000 (13:31 +0200)]
added check if loading tape file fails when auto-processing tapes
Holger Schemel [Sat, 3 Jul 2021 11:24:49 +0000 (13:24 +0200)]
fixed misleading comment
Holger Schemel [Tue, 29 Jun 2021 11:29:02 +0000 (13:29 +0200)]
fixed potential crash bug when processing manipulated tape files
Holger Schemel [Tue, 29 Jun 2021 10:20:21 +0000 (12:20 +0200)]
added option to write tape log file (for high score server)
Holger Schemel [Mon, 28 Jun 2021 14:41:38 +0000 (16:41 +0200)]
added command to play tape and upload resulting score to server
Holger Schemel [Thu, 24 Jun 2021 10:09:34 +0000 (12:09 +0200)]
added support for optional password for score server access
Holger Schemel [Wed, 23 Jun 2021 11:11:57 +0000 (13:11 +0200)]
fixed bugs with thread functions not being re-entrant
This change fixes potential problems with thread functions being
called several times in parallel (which may happen if the network
operations performed by these functions really take long). In these
cases, the thread's data structure (see previous commit) will not be
used exclusively anymore.
To fix this, the thread's data structure will be allocated separately
for each invocation of the corresponding thread function.
Holger Schemel [Wed, 23 Jun 2021 08:48:52 +0000 (10:48 +0200)]
fixed bugs with thread functions calling thread-unsave functions
This change fixes potential problems with static values returned by
functions that are not thread-safe (filenames of score cache files
and score tape filenames, which change with each invocation of these
functions). Additionally, more problems can (and likely will) happen
with using global variables (score data of last added score entry),
which are changed in the main process while the thread function is
using them.
To fix this, all relevant data is copied to a structure which is then
exclusively used by the corresponding thread function.
Holger Schemel [Wed, 23 Jun 2021 07:52:38 +0000 (09:52 +0200)]
fixed bug with potentially changing global variable in thread
When automatically incrementing level after solved game, the global
variable to store the level number may be changed while the thread
to upload the score to the server is just using it, which may cause
the score to be submitted for the wrong level number.
To fix this, the (already existing) local variable with the level
number is used instead.