MysterD
0aa1e04f93
More lua improvements
...
Added mods folder for lua scripts
Created constants.lua so scripts could use constants internal to the C code
Created event hooks
Separated out lua functions into multiple files
2022-01-16 18:07:45 -08:00
MysterD
1a47707be8
Initial LUA support - MarioState read/write
2022-01-16 08:51:29 -08:00
MysterD
7294e127f5
Fixed over 100 code warnings
2021-08-19 18:16:16 -07:00
MysterD
8642479d82
Fix Mac + DISCORD_SDK compilation errors
2021-08-02 02:59:45 -07:00
MysterD
7e1a05a40b
DJUI: Replaced old ingame menu with new DJUI menu
2021-07-15 19:37:09 -07:00
MysterD
038c1135b3
Initial DJUI commit
...
The birth of a custom user interface system.
Has the ability to draw things to the screen at native resolution
regardless of window size.
Components can be nested within one another to an arbitrary depth.
Text rendering is completely rewritten.
Text and images can be clipped by their parent container.
2021-06-18 15:23:59 -07:00
anzz1
d1739648e1
Added Luigi sounds ( #77 )
...
* added a new audio bank 10 for luigi sounds
* made some audio memory buffers larger to fix sound cuts
* added option to enable/disable luigi sounds in the sound options menu
* added Andrat's "90's Classic Luigi Voice Pack" as default luigi sounds
Co-authored-by: anzz1 <>
2020-10-16 11:54:59 -07:00
anzz1
7971dbfa3f
Makefile update ( #80 )
...
* build with TEXTURE_FIX=1 as default
* disallow building with jp,eu,sh rom versions
2020-10-16 03:00:48 -07:00
MysterD
ed06b57649
Added mod registration system
...
Allows mods to register themselves so that mismatches don't occur. This
does not automagically detect when someone modified the game, so the
mods will have to insert a function like this into their patch:
static void __attribute__((constructor)) _register_this_mod() {
network_register_mod("mod name here");
}
2020-10-04 16:41:55 -07:00
MysterD
469fa2ff33
Added 32-bit Discord library for Windows
2020-09-25 23:18:56 -07:00
MysterD
5472f3d13a
Add development flag for easier testing
2020-09-19 02:12:49 -07:00
MysterD
4a7b9736b4
Added compile-time flag to disable Discord SDK
...
In order to support ARM/Mac, discord must be disabled.
To disable compile with:
make DISCORD_SDK=0
Fixes #62
2020-09-19 00:53:56 -07:00
MysterD
a0d5deceff
Fix DirectX builds
2020-09-15 21:48:14 -07:00
MysterD
a675f4efd5
Fixed Linux builds
2020-09-14 23:26:55 -07:00
MysterD
5fe5ffda45
Make C-lib link statically again, force various compiler options better
2020-09-14 18:29:47 -07:00
MysterD
3e1b193ea8
Add Discord Game SDK networking system
...
Allows players to host without forwarding their ports or using a program
like Hamachi.
2020-09-13 03:27:35 -07:00
MysterD
04c21d91bc
Added version checking to clients
2020-09-11 16:19:38 -07:00
MysterD
05674f3d69
Force no draw distance on and text saves off
2020-09-04 17:52:48 -07:00
MysterD
1bb0c90741
Add docker-build workarounds and container script
2020-09-04 17:03:35 -07:00
MysterD
9512fde4a5
Added custom packets for mods-of-this-mod
...
Now a patch can choose to register callbacks for sending and receiving
packets. It's a bit tricky to use but at least it won't collide with
normal packets or other mod packets.
2020-09-04 02:04:37 -07:00
MysterD
d5005c9f37
Served time for crimes against C
...
Due to my compile & launch scripts, I was silently ignoring warnings
this whole time. I've fixed my process, and gone back to fixed all of
the warnings I could (even outside of my code).
2020-09-04 01:58:54 -07:00
MysterD
621533fae8
Add coop-specific define
...
Added -DCOOP to identify that this is a coop build so that one patch can
be applied to EX and/or COOP. They can choose to ifdef entity synchronization
out.
2020-09-03 21:49:58 -07:00
MysterD
c88ff19190
Prevent infinite looping of Mario action transitions
...
There have been several times where the unpredictable behavior of
a remote player where execute_mario_action() would get caught in
an infinite loop. Now we attempt to detect an infinite hang and
escape from it. The sequence of actions will be recorded into an
errorlog.txt file. In debug mode this infinite hang will cause an
assertion to fail, crashing the game. In normal mode the game will
break out of it and hopefully carry on normally after new packets
come in.
I believe this addresses github issue #12 but I can't be sure.
2020-09-01 22:06:36 -07:00
MysterD
8711829664
Merge branch 'nightly' into coop
2020-09-01 18:08:46 -07:00
MysterD
2815f03adb
Update Makefile's default compile flags
2020-08-31 23:52:36 -07:00
fgsfds
8a23a8a5c5
add rudimentary SDL1 controller backend
...
it's more to deal with the mouse not working I suppose
2020-08-30 16:06:22 +03:00
fgsfds
3e9e2595aa
add barebones SDL1.2 backends
...
for that sweet Win9x support
2020-08-15 07:15:28 +03:00
MysterD
a896713510
Made sockets platform-independent, supporting Linux
2020-08-09 13:23:27 -07:00
MysterD
579415dca9
Started synchronizing objects, refactored networking
2020-08-02 01:43:12 -07:00
MysterD
34b1ec76f6
Started adding networking
2020-08-01 20:22:24 -07:00
MysterD
2d2dff6647
Added IMMEDIATELOAD debug flag to skip all intro stuff
2020-07-30 20:42:39 -07:00
CrispyBuns
77eede660b
Add files via upload
2020-07-14 10:54:07 -06:00
CrispyBuns
669f1a6ab1
Add files via upload
2020-07-14 10:54:07 -06:00
fgsfds
765a08c846
merge gfx updates from sm64-port
2020-07-07 15:21:14 +03:00
n64
6330644371
Refresh 11
2020-07-05 14:15:43 +03:00
fgsfds
99f69eff1c
throw out unused libultra sources
2020-06-21 02:21:46 +03:00
fgsfds
7331fab8d8
fix paths to sound data with EXTERNAL_DATA=1
2020-06-20 18:05:45 +03:00
fgsfds
fe44da4794
fix GRUCODE defines
2020-06-20 04:32:12 +03:00
n64
4a448cf10d
merge refresh 10
2020-06-20 02:49:59 +03:00
fgsfds
6686a2d7d9
use GLES shaders in web build
2020-06-17 00:15:27 +03:00
fgsfds
1d6469d2cf
fix web build
2020-06-16 22:24:54 +03:00
fgsfds
7fe8645fcd
thank you case sensitive file systems very cool
2020-06-13 00:53:01 +03:00
fgsfds
3dff608c7b
add D3D12 headers because they're missing in mingw
2020-06-11 22:24:46 +03:00
fgsfds
a81a8e6ef1
added D3D11 and D3D12 renderers from Emil/n64-fast3d-engine
...
along with options to select backends for windowing, rendering, audio and controls in the Makefile
use RENDER_API=D3D11 or D3D12 for the D3D renderers, that will also automatically enable using DXGI for windowing; SDL2 will still be used for input and audio for the time being
also adds three-point filtering to the OpenGL backend and an option for it in the menu
2020-06-11 22:24:46 +03:00
fgsfds
c04c315410
move the discord-rpc libs to lib/
2020-06-09 20:19:22 +03:00
Jan
233c2d8f72
Merge branch 'nightly' into feature/discordrpc
2020-06-09 17:16:42 +02:00
Jan200101
5933742f82
replace static linking with dynamically loaded libraries
2020-06-09 17:15:49 +02:00
Jan200101
f1ba90d25b
add discord rpc support
2020-06-09 12:01:31 +02:00
fgsfds
504b38725e
use 'python3 mkzip' instead of just 'mkzip'
2020-06-08 06:06:40 +03:00
fgsfds
9ebde3c219
add sky tiles to the zip as well
2020-06-07 22:00:57 +03:00
fgsfds
4feacc0065
add virtual filesystem thing w/ ZIP support
...
similar to Quake 3: all the archives and folders get mounted to the same mountpoint in the VFS, read access to files in the VFS is transparent
2020-06-07 21:06:25 +03:00
Zerocker
e7218f043b
Add separate DEBUG flag for tools
2020-06-07 21:16:09 +09:00
Zerocker
2ae6e0fac0
Remove old -O2 flag
2020-06-05 21:12:44 +09:00
Zerocker
caea5ec4cb
Nuke old VERSION OPT_FLAGS and add DEBUG flag
2020-06-05 20:40:08 +09:00
fgsfds
35382b83a1
roll back rsync
...
apparently I'm the only man in existence who has it installed by default
2020-06-02 22:37:43 +03:00
fgsfds
afca02c0a7
use 'rsync' instead of 'find' + 'cp -r --parents'
...
mostly because cp is fucking weird on OSX, thank you Apple very cool
2020-06-02 17:57:45 +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
e3401f1547
use a script to output zero-terminated strings instead of bash printf
2020-05-26 02:59:38 +03:00
fgsfds
9f9e79ed9d
build the res target by default when EXTERNAL_TEXTURES is enabled
2020-05-26 02:18:09 +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
fgsfds
eeca3b0ec0
remove debug print in Makefile
2020-05-25 00:58:43 +03:00
fgsfds
686ea5be7b
separate options menu strings and add JP strings
2020-05-22 01:36:49 +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
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
fgsfds
c57bacdfd7
clean up some toolchain compatibility fixes
...
also rename the abs() macro to not cause any fucking conflicts ever again
2020-05-19 22:22:52 +03:00
Zerocker
6a628322ba
Merge remote-tracking branch 'upstream/nightly' into nightly
2020-05-20 00:02:29 +09:00
zerocloude
d604711468
Merge pull request #153 from coltongit/patch-23
...
TARGET_N64 removal
2020-05-19 23:37:51 +09:00
Colton Rushton
41828987f2
Made the game even easier to compile in MXE.
2020-05-19 10:38:08 -03:00
Colton Rushton
9230cb832d
Refactor PR #156
2020-05-19 10:32:01 -03:00
Zerocker
2417004d20
Added flag to support only text-based savefiles
2020-05-18 17:46:50 +09:00
Colton G. Rushton
71d7750d45
Makefile updated to thanos TARGET_N64
2020-05-17 08:19:04 -03:00
Colton G. Rushton
5d800819df
fix small bug with MXE compilation
...
the no-pie command line option was being sent to MXE when it shouldn't have been, breaking MXE compilation. Urgent fix.
2020-05-16 22:54:03 -03:00
Colton G. Rushton
410090a84c
Fix a few minor bugs with MXE compilation
2020-05-16 21:24:29 -03:00
Colton G. Rushton
bd4187c92b
Make MXE easier to compile in
...
Specifying the target arch MXE expects in the makefile makes it easier for MXE users to compile the game.
2020-05-16 21:04:55 -03:00
fgsfds
54f986a528
Merge branch 'master' into osx_build_clean
2020-05-17 01:27:51 +03:00
fgsfds
009aef1da5
Merge pull request #132 from coltongit/patch-12
...
Further fixes to MXE compilation
2020-05-17 01:24:14 +03:00
Colton G. Rushton
5c9e3c60a7
strip out now-needless NOBZERO flag
2020-05-16 19:20:45 -03:00
Colton G. Rushton
8736776545
Another fix to MXE
2020-05-16 17:20:33 -03:00
Colton G. Rushton
3d7bdc300c
Add NO_BZERO for MXE
2020-05-16 17:12:56 -03:00
fgsfds
ff844643d2
Merge branch 'master' into master
2020-05-16 22:47:39 +03:00
Hyenadae
5dd43ad674
OSX_BUILD cleaned commit
2020-05-16 15:30:27 -04:00
Colton G. Rushton
f4a3757145
Further fixes to MXE compilation
...
Adds on the work of PR #130 .
2020-05-16 16:16:44 -03:00
fgsfds
efadc481ec
Merge pull request #130 from coltongit/patch-11
...
Fix compilation for MXE on Linux and WSL
2020-05-16 21:05:55 +03:00
Colton G. Rushton
3c6bf53dea
even further cleanup of the makefile
2020-05-16 14:59:27 -03:00
Colton G. Rushton
50af1393c3
Further clean up the makefile fixes
2020-05-16 14:38:47 -03:00
Colton G. Rushton
0a6ea9e9d4
Clean up the makefile fixes a bit
2020-05-16 14:35:56 -03:00
fgsfds
0446b244eb
separate EXT_OPTIONS_MENU into its own option
2020-05-16 19:53:36 +03:00
Colton G. Rushton
31c91c6968
Nah dude, that's possible under WINDOWS_BUILD=1
2020-05-16 13:46:18 -03:00
Colton G. Rushton
74058cf32f
Simplify MXE fixes
2020-05-16 13:01:23 -03:00
Colton G. Rushton
17695a7b4f
fix objcopy on MXE builds
2020-05-16 12:56:58 -03:00
Colton G. Rushton
b4cb8a7f65
remove needless ifeq
2020-05-16 12:30:25 -03:00
Colton G. Rushton
0f688c80d0
removing a pesky endif
2020-05-16 12:26:06 -03:00
Colton G. Rushton
07aa2cd234
Fix compilation for MXE on Linux and WSL
...
Even though this isn't usually an option on the wiki, this will allow for cross-compilation of sm64pc through MXE on both Linux and WSL, making Wine testing much easier.
2020-05-16 12:21:16 -03:00
Colton G. Rushton
a83fa35c4d
Add compile-time texture fixes to Makefile
...
Add compile-time texture fixes as a Makefile build flag, set when `TEXTURE_FIX=1`.
2020-05-16 09:41:57 -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
uwabami
24b672df33
Merge branch 'master' of https://github.com/sm64pc/sm64pc
2020-05-14 14:35:15 +02:00
Hyenadae
829c1f29a8
Fixed more border-related code and fixes to N64 build removal
2020-05-14 05:18:12 -04:00
Vinícius R. Miguel
47c4b7b41b
Show the console on Windows setting WINDOWS_CONSOLE=1
2020-05-13 13:23:52 -03:00
Jan200101
5f99e21592
extend cross compilation support
2020-05-12 16:08:34 +02:00
uwabami
c98a263cf4
adding option to disable draw distance
2020-05-12 09:26:16 +02:00
IvanDSM
1245f3c75e
Windows build clarifications.
2020-05-10 16:50:48 -03:00
IvanDSM
5e2e510500
Disable bettercamera by default.
2020-05-10 15:08:59 -03:00
IvanDSM
6c7df61480
Add warning about WINDOWS_BUILD
2020-05-10 13:13:15 -03:00
IvanDSM
a0068c747b
Fix Web build.
...
The ifeq($(TARGET_WEB),0) check on line 49 wasn't being endif'ed properly, which caused the rest of the code up until 244 (where an incorrect endif was placed) to be ignored.
This commit fixes that issue and allows web builds to work normally.
2020-05-10 12:45:46 -03:00
IvanDSM
88b063d7a1
New Makefile and fgsfdsfgs fixes
...
New Makefile based on master branch Makefile.
Ported fdsfgsfds' OOB memory access and save buffer corruption fixes.
2020-05-10 05:11:27 -03:00
Jan200101
be340547c4
port analog camera code to the master codebase
2020-05-08 13:41:35 +02:00
Jan200101
c540898c71
revert -O2 when non matching,fix EU compile,disable cursor in fullscreen
...
- O2 caused problems with audio on US builds when targeting generic systems
- compiling an EU version previously caused problems due to race condition in the Makefile
- not being able to see the cursor on a small window is annoying, only hide on fullscreen
2020-05-08 13:41:12 +02:00
Hyenadae
dba8760aad
Makefile additions and part of SDL2.C Pi-GLES define
2020-05-08 08:38:50 +01:00
HengiFettlich
31bb068358
Update Makefile
...
remove unnecessary dependencies
2020-05-07 20:46:35 +02:00
Jan200101
e87c070517
merge PC port onto the decompile
2020-05-07 20:21:22 +02:00
n64
c45aa301bb
Refresh 8
2020-04-03 14:57:26 -04:00
n64
06ec56df7f
Refresh 7
2020-03-01 22:42:52 -05:00
n64
9a801cb96d
refresh 6
2020-02-03 00:51:26 -05:00
n64
9273f38df1
refresh 5
2020-01-03 10:38:57 -05:00
n64
04732af90b
refresh 4
2019-12-01 21:52:53 -05:00
n64
a7c423cb43
Refresh 3
2019-11-03 14:36:27 -05:00
n64
b1665cdfdb
HOTFIX: Text Makefile dependency
2019-10-05 19:40:22 -04:00
n64
52e605f075
Refresh 2
2019-10-05 15:08:05 -04:00
n64
1ef98ec785
Refresh 1
2019-09-01 15:50:50 -04:00
n64
89e8690857
init2
2019-08-25 00:46:40 -04:00