diff --git a/README.md b/README.md index 990fd07..c28687e 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,8 @@ Please note however the game is still relatively simple and so **the physics IS - **OpenBSD**: via SDL2 - **web browser**: via translation to JavaScript with emscripten - **Circuitmess Ringo AKA MAKERphone** (32b 160 MHz, 520 KB RAM) - - on resource-limited computers in very limited ways (simplest rendering with low FPS, only loading tiniest maps, no ghosts, replays or audio): + - **Raspberry Pi** (5, 3B+): with GNU/Linux + - on resource-limited computers, in very limited ways (simplest rendering with low FPS, only loading tiniest maps, no ghosts, replays or audio): - **Pokitto** (32bit 48 MHz CPU, 36 KB RAM) - **Circuitmess Nibble** (32b 160 MHz CPU, 80 KB RAM) - **ESPboy** (32b 160 MHz CPU, 80 KB RAM) diff --git a/TODO.txt b/TODO.txt index 3f38bfc..547fdc2 100644 --- a/TODO.txt +++ b/TODO.txt @@ -9,10 +9,10 @@ fuck issue trackers :D - very long replay DID 1x - absence of music file DID - different resolutions KINDA DID 1x - - different settings (332, POTATO, ...) + - different settings (332, POTATO, ...) DID - crazy shit with physics KINDA DID - - replay with input not occuring for more that LCR_SETTING_GHOST_STEP - - different platforms + - replay with input not occuring for more that LCR_SETTING_GHOST_STEP DID + - different platforms DID - error handling (bad map format, bad replay format, items in data file, ...) - valgrind, cppcheck, different compilers, optimization levels, ... - play replay from one platform on another KINDA DID @@ -24,9 +24,9 @@ fuck issue trackers :D - empty and large data file - FPS on each platform - try to use the racing module by itself - - spellcheck comments + - spellcheck comments KINDA DID - test a map without any CPs where the car starts at finish WORKS BUT NOT REP - - just read through the code and eyeball it + - just read through the code and eyeball it DOING =========== BUGS ================= diff --git a/frontend_sdl.c b/frontend_sdl.c index a562cb7..d606ef5 100644 --- a/frontend_sdl.c +++ b/frontend_sdl.c @@ -35,7 +35,6 @@ SDL_Window *window; SDL_Renderer *renderer; SDL_Texture *texture; SDL_Surface *screenSurface; -SDL_GameController *sdlController; uint8_t running = 1, fullscreen = 1; @@ -185,10 +184,6 @@ int main(int argc, char *argv[]) puts("initializing SDL"); SDL_Init(SDL_INIT_AUDIO); - sdlController = SDL_GameControllerOpen(0); - - puts(sdlController ? "found a controller" : "no controller found"); - puts("initializing audio"); SDL_AudioSpec audioSpec; SDL_memset(&audioSpec,0,sizeof(audioSpec)); @@ -269,7 +264,6 @@ int main(int argc, char *argv[]) closeDataFile(); - SDL_GameControllerClose(sdlController); SDL_PauseAudio(1); SDL_CloseAudio(); SDL_DestroyTexture(texture); diff --git a/frontend_x11.c b/frontend_x11.c index d1d1102..14d7984 100644 --- a/frontend_x11.c +++ b/frontend_x11.c @@ -11,16 +11,17 @@ #include #include // for usleep -#define LCR_SETTING_LOG_LEVEL 2 -#define LCR_SETTING_RESOLUTION_X 320 -#define LCR_SETTING_RESOLUTION_Y 240 -#define LCR_SETTING_MUSIC 0 - #ifndef PRESET_QUALITY #define PRESET_QUALITY 3 #endif #include "frontend_helper.h" + +#define LCR_SETTING_LOG_LEVEL 1 +#define LCR_SETTING_RESOLUTION_X 320 +#define LCR_SETTING_RESOLUTION_Y 240 +#define LCR_SETTING_MUSIC 0 + #include "game.h" char framebuffer[LCR_SETTING_RESOLUTION_X * LCR_SETTING_RESOLUTION_Y * 4]; diff --git a/make.sh b/make.sh index e2bf617..628f152 100755 --- a/make.sh +++ b/make.sh @@ -54,7 +54,7 @@ elif [ $PLATFORM = "x11" ]; then # X11 build, requires: xlib # has no sound - COMMAND="${COMPILER} ${C_FLAGS} -lX11 frontend_x11.c" + COMMAND="${COMPILER} ${C_FLAGS} frontend_x11.c -lX11" elif [ $PLATFORM = "emscripten" ]; then # emscripten (browser Javascript) build, requires: emscripten # limited, low quality, no files diff --git a/media/manual.txt b/media/manual.txt index aa8e7e2..f8e3de2 100644 --- a/media/manual.txt +++ b/media/manual.txt @@ -359,11 +359,15 @@ changing anything about physics will be done very, very rarely. Q: Can I play with a controller? -A: Yes, but analog input is not supported, i.e. you can use controller only as a -replacement for keyboard. This is partly for simplicity but it also sets the -same conditions for everyone, keyboard players don't have to feel disadvantaged. -Of course, someone can add analog input support to the game, but that will -probably result in replay incompatibility with the original game. +A: Controllers are not supported as of the game's release, but mods are planned +to make them work. In any case the game will never truly support analog input, +but a mod could make analog input sort of work. It is partly for simplicity +(e.g. to keep replays simple) to only support keyboard, but it also sets the +same conditions for everyone, keyboard players don't have to feel disadvantaged +against a more precise analog input -- if analog input is ever supported, it +will have to just emulate very fast keyboard tapping. For now, you can use a +program that maps controller inputs to keyboard in order to play with a +controller. Q: The graphics looks weird, stuff near camera seems to kind of warp weirdly. diff --git a/media/ss0.png b/media/ss0.png new file mode 100644 index 0000000..921b8df Binary files /dev/null and b/media/ss0.png differ diff --git a/media/ss1.png b/media/ss1.png new file mode 100644 index 0000000..9fb2d45 Binary files /dev/null and b/media/ss1.png differ diff --git a/media/ss10.png b/media/ss10.png new file mode 100644 index 0000000..41f2e9d Binary files /dev/null and b/media/ss10.png differ diff --git a/media/ss11.png b/media/ss11.png new file mode 100644 index 0000000..cbe8ff7 Binary files /dev/null and b/media/ss11.png differ diff --git a/media/ss12.jpg b/media/ss12.jpg new file mode 100644 index 0000000..9b33d90 Binary files /dev/null and b/media/ss12.jpg differ diff --git a/media/ss2.png b/media/ss2.png new file mode 100644 index 0000000..b25e3f2 Binary files /dev/null and b/media/ss2.png differ diff --git a/media/ss3.png b/media/ss3.png new file mode 100644 index 0000000..3026ceb Binary files /dev/null and b/media/ss3.png differ diff --git a/media/ss4.png b/media/ss4.png new file mode 100644 index 0000000..441937d Binary files /dev/null and b/media/ss4.png differ diff --git a/media/ss5.png b/media/ss5.png new file mode 100644 index 0000000..7b96146 Binary files /dev/null and b/media/ss5.png differ diff --git a/media/ss6.png b/media/ss6.png new file mode 100644 index 0000000..3e50f22 Binary files /dev/null and b/media/ss6.png differ diff --git a/media/ss7.png b/media/ss7.png new file mode 100644 index 0000000..0f5a622 Binary files /dev/null and b/media/ss7.png differ diff --git a/media/ss8.png b/media/ss8.png new file mode 100644 index 0000000..cf89801 Binary files /dev/null and b/media/ss8.png differ diff --git a/media/ss9.png b/media/ss9.png new file mode 100644 index 0000000..a6ffabd Binary files /dev/null and b/media/ss9.png differ