Commit Graph

176 Commits

Author SHA1 Message Date
fgsfds 88b044bd76 load external gamecontrollerdb file if it's present 2020-06-03 00:10:42 +03:00
fgsfds 5b14bf3b5e precache is now turned on by default 2020-06-03 00:10:20 +03:00
fgsfds 6cee636382 change EXTERNAL_TEXTURES to EXTERNAL_DATA; load sound data from external files
no separation tho, just binary blobs o shit
2020-06-01 12:13:05 +03:00
fgsfds 8b386a2175 allow binding stick directions to controller buttons 2020-06-01 00:03:53 +03:00
Zerocker 9917188ec8 Revert "Secret Cheat was added"
This reverts commit 19990cde38.
2020-05-31 14:18:17 +09:00
Zerocker 709a049ab6 Added rumble strength option 2020-05-30 20:50:12 +09:00
Zerocker 2bc577bc3c Added haptic implementation 2020-05-30 20:37:37 +09:00
Zerocker cf122ee6e8 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-30 17:34:56 +09:00
fgsfds f6c54e95b2 read in all config line tokens (fixes the binds not saving) 2020-05-29 20:10:38 +03:00
fgsfds 93030b02a3 don't die after encountering a NULL texture 2020-05-29 19:35:35 +03:00
fgsfds 540a0387c9 fix build 2020-05-29 18:08:00 +03:00
Zerocker 3f1fd3aba8 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-29 23:19:09 +09:00
GateGuy 875d7a9b3c Added deadzone option 2020-05-28 18:40:36 -04:00
fgsfds 655c381d6f add texture preloading
when EXTERNAL_TEXTURES is defined, the texture hashmap in gfx_pc.c uses texture names as keys

all textures are precached on startup if EXTERNAL_TEXTURES is defined and 'precache' is true in the config
2020-05-26 00:54:51 +03:00
fgsfds 1873f7aba5 game now uses non-working directory paths by default
saves by default go into XDG_DATA_HOME/sm64pc

external data is read from the executable directory, if it's not found there on Unix systems the game will attempt to read it from some paths like /usr/local/share/sm64pc

both save data and readonly data fall back to other options in case of a problem

behavior can be overridden by specifying --datapath and --savepath on the CLI

both of those will expand the exclamation point ('!') to the executable path, e. g. --savepath '!/save'
2020-05-25 07:19:35 +03:00
fgsfds 9825b02f50 add option to load textures from external files
this stores the null terminated texture name instead of the texture data

activated with EXTERNAL_TEXTURES=1
2020-05-25 04:22:03 +03:00
Zerocker ce864043c1 Enabled rumble for all versions. 2020-05-24 23:52:03 +09:00
Zerocker 19990cde38 Secret Cheat was added 2020-05-24 23:50:55 +09:00
Zerocker 37ff33b0a2 Added blank SDL functions for rumble support. 2020-05-24 23:49:49 +09:00
fgsfds 4bbde37464 this ain't const anymore 2020-05-22 01:42:07 +03:00
IvanDSM 1298cd6017 Add commit hash to window title for nightly builds.
This also adds a flag for detecting nightly builds in the code.
2020-05-21 14:19:20 -03:00
fgsfds 0724f0ed09 add fog to GL1.3 renderer
uses two different methods, with the first one taking priority if it's available:

a) use the fog factor supplied in the fog colors as a GL_FOG_COORD; GL_FOG_COORD is only available in GL1.4+ or when GL_EXT_fog_coord is present

just blend the same triangles a second time, but replace the color with fog color and multiply the alpha by fog alpha
2020-05-21 03:12:51 +03:00
fgsfds 2714708ca9 avoid redefining CLOCK_MONOTONIC and shit 2020-05-20 17:56:35 +03:00
Mario Reder f99298943c fix non mingw builds
resolves #230
2020-05-20 16:50:05 +02:00
fgsfds c540712154 add GL1.3 (or 1.2 with some extensions) rendering backend
there are still some graphical glitches and no fog
2020-05-20 07:00:04 +03:00
IvanDSM fb706c42f6 CLI improvements 2020-05-19 21:22:05 -03:00
Zerocker 6a628322ba Merge remote-tracking branch 'upstream/nightly' into nightly 2020-05-20 00:02:29 +09:00
zerocloude f1698b9081
Merge pull request #205 from porcino/nightly
Option to hide the hud
2020-05-19 23:46:19 +09:00
zerocloude 0c03280516
Merge pull request #93 from yksoft1/mingw.org-compatible
Making code MinGW.org and MSYS1 compatible
2020-05-19 23:45:44 +09:00
Colton Rushton 08ad740b1c Refactor PR #176 2020-05-19 10:51:49 -03:00
yksoft1 ee795fa7af My hacks to cliopts.h is not necessary anymore. 2020-05-19 20:15:25 +08:00
U-ALTTP-PC\ALTTP e97d25c2c6 option to hide the hud 2020-05-19 03:24:51 -03:00
V. R. Miguel 29bfb1b9b8
Merge branch 'nightly' into master 2020-05-18 23:00:42 -03:00
fgsfds c18e70f44e Revert "Merge branch 'nightly' into master"
This reverts commit 2e8a821fa3, reversing
changes made to d499f55402.
2020-05-19 02:38:59 +03:00
fgsfds 2e8a821fa3
Merge branch 'nightly' into master 2020-05-19 02:33:30 +03:00
fgsfds 26705aed7a disable cheats by default; use --cheats CLI option to enable for now 2020-05-19 01:59:29 +03:00
fgsfds 6a79a9af99 bring back the old frame timing method (if vsync != 2) 2020-05-19 01:32:49 +03:00
fgsfds 59913a9beb Revert "Revert "(hopefully) fix the timing crap; add vsync option""
This reverts commit c6961b8606.
2020-05-19 01:25:59 +03:00
fgsfds c6961b8606 Revert "(hopefully) fix the timing crap; add vsync option"
This reverts commit 2bd840a299.
2020-05-18 18:48:11 -03:00
fgsfds c3c2451c6a Revert "(hopefully) fix the timing crap; add vsync option"
This reverts commit 2bd840a299.
2020-05-18 18:44:35 -03:00
fgsfds 952495ae08 clean up cliopts 2020-05-18 23:31:19 +03:00
fgsfds 2bd840a299 (hopefully) fix the timing crap; add vsync option 2020-05-18 23:03:04 +03:00
Daniel 8586c7657a Added "Exit course at any time", "Huge Mario" and "Tiny Mario" cheats
The exit course at any time cheat clears up one of the TODO items while keeping purists happy since it's optional :)
2020-05-18 17:51:53 +01:00
Zerocker e24473ee17 Support for text-based savefiles 2020-05-18 17:44:21 +09:00
Vinícius R. Miguel bd186569de Fixes --fullscreen and --windowed problems 2020-05-18 00:28:05 -03:00
V. R. Miguel cd2e6c0774
Merge pull request #165 from HeavenVolkoff/save_win_dimensions
Implement save/restore of window dimensions/position

Thanks for the contribution, @HeavenVolkoff!
2020-05-18 00:10:42 -03:00
Vinícius R. Miguel 4246242138 Still about #172 2020-05-17 23:58:22 -03:00
Vinícius R. Miguel ba04643b61 Potential fix for #172
Adds a null-terminator to gCLIOpts.ConfigFile
2020-05-17 23:55:17 -03:00
Heaven Volkoff 98efed7c51 Reset Window now exit fullscreen
Change configFullscreen to configWindow.fullscreen
2020-05-17 23:31:31 -03:00
Heaven Volkoff 9927b3555d Fix fullscreen exit resulting in a slightly lower Y position 2020-05-17 23:31:31 -03:00
Heaven Volkoff 0fa331d961 Implement save/restore window dimensions/position
- Add an entry in options menu to reset window
2020-05-17 23:31:31 -03:00
IvanDSM d6495550f5 Release mouse when paused 2020-05-17 22:37:52 -03:00
V. R. Miguel 6811d9e01c
Fixed a dumb thing 2020-05-17 21:17:27 -03:00
Vinícius R. Miguel 15c7670ce8 Merge remote-tracking branch 'origin/nightly' into nightly 2020-05-17 21:06:59 -03:00
Vinícius R. Miguel 262963bf88 Restructuring some of the cheat code 2020-05-17 21:06:38 -03:00
fgsfds eaba9656d6
Merge pull request #169 from kurethedead/nightly
Implemented LoadTile f3d command, I4/I8/RGBA32 texture formats.
2020-05-18 02:45:11 +03:00
V. R. Miguel 2287fcce9f
Merge pull request #170 from Leon422/nightly
Added a "responsive controls" cheat
2020-05-17 20:08:13 -03:00
Daniel 17c6e56907 Added a "super responsive controls" cheat
Added a "super responsive controls" cheat. When enabled, Mario will look straight into the direction the user inputs when changing directions, with no interpolation at all. (you can still slide / side jump / etc )

The change is especially noticeable when playing with keyboard.
2020-05-18 00:05:26 +01:00
kurethedead 181e18dfea Implemented LoadTile f3d command, I4/I8/RGBA32 texture formats. 2020-05-17 15:48:06 -07:00
V. R. Miguel 15dabb7c22
Merge pull request #166 from Leon422/nightly
Enabled a Cheat menu

Thanks for the contribution, @Leon422!
2020-05-17 19:32:44 -03:00
Leon422 1a9c8dbe47
Fixed tabs/spaces 2020-05-17 23:27:40 +01:00
Daniel 28fc53c207 Enabled a Cheat menu
Enabled a cheat menu. It includes 4 cheats, and all of them rely on the global "Enable cheats" option so the user can quickly turn all the selected cheats off and back on.
2020-05-17 22:56:06 +01:00
Andrew Bobulsky fcc4cbb51d
Fix TARGET_WEB builds 2020-05-17 15:22:50 -04:00
fgsfds 094f3ebb33
Merge branch 'nightly' into master 2020-05-17 20:19:42 +03:00
fgsfds ece7649b4b use a wrapper for exiting instead of just calling exit()
this might also fix the webgl build issue
2020-05-17 19:56:56 +03:00
fgsfds 62cc4620ec no need for that, window resize events happen when fullscreen state changes 2020-05-17 19:56:33 +03:00
fgsfds 58dbb04f97 update gfx_sdl2.c with the latest stuff from Emill/n64-fast3d-engine 2020-05-17 19:49:36 +03:00
yksoft1 072025d243 Fix cliopts on MinGW.org. 2020-05-17 19:01:13 +08:00
yksoft1 753be9e1b7 Merge remote-tracking branch 'upstream/master' into mingw.org-compatible 2020-05-17 18:33:17 +08:00
Vinícius R. Miguel bdc06d1709
Merge pull request #139 from sm64pc/master
Add MXE/OSX stuff to nightly
2020-05-16 22:08:24 -03:00
IvanDSM 5145f2a897 Fix --fullscreen/--windowed CLI option altering config file.
Previously, when the --fullscreen or --windowed CLI options were set, configFullscreen was overwritten.
This caused the config file to be changed according to the CLI options given when running the executable.
A helper variable that copies configFullscreen stops the game from overwritting the config file.
2020-05-16 21:53:00 -03:00
IvanDSM 2c8382e60e Add --help and --windowed CLI options. 2020-05-16 21:39:48 -03:00
fgsfds 54f986a528
Merge branch 'master' into osx_build_clean 2020-05-17 01:27:51 +03:00
Vinícius R. Miguel e67a5443b7 Fixed some stuff 2020-05-16 18:14:43 -03:00
Vinícius R. Miguel 7bf7b34c57 Add a `--configfile` CLI option
Usage: `--configfile yahoo.ini` will load up a file named yahoo.ini as the configuration file.
2020-05-16 18:07:14 -03:00
fgsfds f6642e9a9d tabs begone 2020-05-16 22:39:37 +03:00
fgsfds f5e73a099b
Merge pull request #126 from HeavenVolkoff/gfx_use_second_light_color
Consider second color column of Light_t when calculating vertex colors
2020-05-16 22:38:36 +03:00
Hyenadae 5dd43ad674 OSX_BUILD cleaned commit 2020-05-16 15:30:27 -04:00
Vinícius R. Miguel 9e8290773b Shutdown subsystems on exit
Porting from testing, originally by @fgsfdsfgs
2020-05-16 16:23:23 -03:00
fgsfds 93cfab086a bettercam: add adjustable camera deceleration 2020-05-16 20:30:06 +03:00
fgsfds 9ae444d2b5 move filtering check to gfx_pc.c for those sweet realtime updates 2020-05-16 16:15:45 +03:00
fgsfds a259cd15a1 add dumb master volume control 2020-05-16 16:15:40 +03:00
fgsfds dbca0c413d add fullscreen and filtering settings to options
filtering only applies to newly loaded textures
2020-05-16 16:15:27 +03:00
Heaven Volkoff 1a3034898c Consider second color column of Light_t when calculating vertex colors 2020-05-16 04:48:11 -03:00
IvanDSM e96bbef650 Fix configfile skip_intro option 2020-05-15 16:47:04 -03:00
Vinícius R. Miguel 4a13fd3380 Add in-game control binding menu
Originally on the testing branch
2020-05-15 15:38:35 -03:00
Vinícius R. Miguel fd74e20373 Add a `--fullscreen` CLI option 2020-05-15 12:51:06 -03:00
IvanDSM 86a3f84010
Merge branch 'master' into skipintro 2020-05-14 23:05:21 -03:00
IvanDSM 59d0cc16c1 Add <strings.h> include
Oops!
2020-05-14 23:02:04 -03:00
yksoft1 1b03e251bb Better way to detect mingw-w64; fix bettercamera for mingw.org; close
.assets-local.txt before deleting it.
2020-05-15 00:26:56 +08:00
yksoft1 fa9af3227e Make the code buildable on MinGW.org (not mingw-w64) and MSYS1. 2020-05-14 23:47:00 +08:00
vanfanel d59c081905 Hide mouse cursor when in fullscreen mode. 2020-05-11 13:37:48 +02:00
IvanDSM bd93878c56 Add option in the configfile for skipping the intro
Now it's possible to either provide the --skip-intro command line argument or have skip_intro set to 1 on the config file.
2020-05-11 05:13:51 -03:00
IvanDSM 4cbe3af070 Added CLI functionality with --skip-intro option. 2020-05-11 02:42:22 -03:00
Vinícius R. Miguel ff2ec85f8c Adds credit to Emil.
For implementing n64-fast32-engine
2020-05-10 17:47:10 -03:00
fgsfds a0ba46eaf6 move bettercamera settings to config file; cleanup 2020-05-10 21:39:23 +03:00
Vinícius R. Miguel aa046c76d9
Merge pull request #42 from vanfanel/master
Thanks!
2020-05-10 14:02:27 -03:00
vanfanel f24d44c9c7 Remove redundant code. Make GLES and GL modes respect DESIRED_WIDTH and DESIRED_HEIGHT in windowed mode, but in fullscreen mode just use the system video mode. 2020-05-10 18:23:34 +02:00
fgsfds d0b85785fe might as well check for L while we're at it 2020-05-10 19:15:13 +03:00
fgsfds 2234e28625 rebind Z trigger back to L 2020-05-10 19:14:59 +03:00