Commit graph

208 commits

Author SHA1 Message Date
MysterD
e578943700 Started optimizing text rendering 2023-04-01 23:44:10 -07:00
MysterD
0b6e087936 coop now restores a backup configuration file if loading the config file threw an error 2023-04-01 17:01:50 -07:00
MysterD
213af9b2dc Remove djui panels from main djui header 2023-04-01 00:30:35 -07:00
MysterD
a9fe991ba4 Make language configurable in-game 2023-03-31 19:38:06 -07:00
MysterD
fe8c510ee4 Started adding the ability to translate DJUI menus 2023-03-31 15:18:19 -07:00
MysterD
8029400e48 Use UTF-8 for djui text 2023-03-30 23:12:32 -07:00
MysterD
e47f40af9e Swapped out hashmap to C++ for sync objects 2023-03-27 14:29:15 -07:00
Isaac0-dev
6cb1b2faec
Beta 32.0.1 (#325)
* patch for beta 32

* require the development flag for Lua profiler

* autogen
2023-03-26 01:15:28 -04:00
Agent X
53b8a2f8e6
Fix compilation warnings and stop demos when hosting (#313)
* [WIP] fix warnings

Committing now as is for Isaac to take a look at this.
Having issues with VERSION_TEXT

* Fix VERSION_TEXT crash and stop demos on host
2023-03-21 22:41:43 -04:00
Isaac0-dev
7e46ce4a21
fixes and other improvements (#309)
* HOOK_JOINED_GAME

* expose VERSION_TEXT, and two more adjusments

* show if a constant type is a string with autogen

* fix another blunder by that guy

* should use an or operator here

* fix frame limiter stuff
2023-03-21 19:43:29 -04:00
Agent X
4fd13c6bda
Bug fixes for mostly the title screen (#308)
- Add NULL checks to DynOS warps
- Change checks for skipping interpolation on the original title screen for much better ones
- Interactions are no longer processed if you are on the title screen
- Re-add some of the legacy demo code for the original title screen
- Fix disconnecting on the original title screen
- Fix disconnecting on the act select screen
- Fix interpolation crash
2023-03-18 17:14:01 -04:00
Isaac0-dev
9f1bf8cc6e
disable interpolation when frame limiter is at 30 (#286)
* fix player connected spam on joining a game

* make it possible to actually disable interpolation

by setting the frame limiter to 30
also move the "Disable Popups" option to misc settings.

* maybe someday ill learn to read.

* one day.
2023-02-20 21:29:23 -05:00
Isaac0-dev
98834d5670
improve --client flag, fix hud font character width for spaces (#277)
* improve --client flag and domain resolution

* stop using the debug flag for dev binds

* smaller character width with spaces for the hud font
2023-02-16 18:54:23 -05:00
Agent X
85afeb6402
Expose title screen geo functions to DynOS (#246)
* Expose title screen level/geo stuff

* Move builtin defines
2022-12-17 19:28:19 +01:00
PeachyPeach
36d85af91b
Custom palette persistence fix (#233)
Bug:
    Clicking on Palette Preset to cycle through palettes overwrites and erases the custom palette

Fix:
    Added config values coop_custom_palette_* to save the custom palette colors
    Clicking on Edit Palette now sets the current palette to Custom and loads the custom values instead of using the previous preset selected
2022-11-18 18:43:44 -08:00
Isaac0-dev
e387b6b24b
Fixes and quality of life changes (#213)
Add the Lua Profiler to the debug menu.
    Prevent Mario from sleeping on the main menu.
    Fix IP address string corruption when saving the config file.
    Bring back the Discord fatal message.
2022-10-30 17:29:59 -07:00
Isaac0-dev
89afa8181e
just a few more improvements (#207)
Add get_dialog_box_state
    Prevent some attacks from registering as pvp attacks.
    Clean up all cases of camera.lua
    Put gLastCollectedStarOrKey in a better spot.
    Clean up my moderator code a bit, changing gIsModerator to boolean.
    Brang back kicked, banned and full party messages.
    Fixed a warning on older compilers like raspberry pi's and use configAmountofPlayers instead of MAX_PLAYERS
    Fixed compiling with the flag DISCORD_SDK off.
    Added "Fixed Collisions" to the debug menu.
    Added HMC, CCM, RR, BITDW, PSS and TTC to the main menu options.
    Fix my own oversight; Prevent the port from being duplicated in the join menu. (temporary fix)
    Hopefully bring back the crash handler on windows by not checking for termination signals on windows
2022-10-18 15:34:46 -07:00
Agent X
b5789a7c54
Improve the "Error: network shutdown" popup (#170)
It now only appears when someone stops hosting and you are disconnected from their lobby, I also changed the text to "Disconnected: server closed" in case it wasn't obvious
2022-08-25 17:42:15 -07:00
Agent X
7e1110cde9
Remove TARGET_WEB (#159)
Just a simple code cleanup opportunity I saw
"I won't be porting this to the web" - djoslin

Compiled and tested everything to see if it works, feel free to check yourself or look over the code

Also, I noticed TARGET_N64 was there too, might do a clean up on that since we all know this isn't getting ported to the N64 anytime soon.
2022-08-25 17:32:20 -07:00
TheGag96
dc3ca7c76d
Arbitrary shirt, pants, glove colors + settings menu (#145)
* Support for more granular player colors

You can now configure RGB values for shirt, pants, gloves, and shoes.
Due to some limitations, configuring shoes does nothing at the moment.

* Remove paletteIndex and friends

Restructured and filled in some remaining code to account for that.

* Add Edit Palette panel to Player panel

* Change PlayerPalette contents to an enum-indexed array, remove shoes

This gets rid of all the hokey code doing switch cases on the
different parts.

* Fix goof with player model selection box

Should actually have affect now even if a custom palette is being used.

* Fix gap in player color display list commands

The extra space was leftover from when I was trying to get shoes
working. Forgot to clean it up.

* Standardize PlayerParts enum, including for lua constants autogen

* djui_panel_player.c: Properly hook sending palette changes on unpause

Editing the palette and then unpausing should send out the packet to
everyone with the new palette changes (and update the palette preset
selection box), but since we weren't hooking that situation before, it
would stay changed only for you. You would have had to press the Back
button for it to work right.

* Allow Lua mods to continue using `paletteIndex`, `overridePaletteIndex`

This lets mod code like this still work unchanged:

if s.team == 2 then
    np.overridePaletteIndex = 7
elseif s.team == 1 then
    np.overridePaletteIndex = 15
else
    np.overridePaletteIndex = np.paletteIndex
end

It's essentially faked, and would work strangely if the value of either
variable was inspected more closely directly. This should at least
handle the typical use case, though.

Every frame, `overridePaletteIndex` is checked to see if it was modified
from its previous value. If so, `overridePalette` is set to the preset
corresponding to the index. `paletteIndex` contains a special value that
when used to assign to `overridePaletteIndex`, it copies `palette` into
`overridePalette` to restore the real colors, which of course may not
follow the presets at all.

* characters.h: Pack `PlayerPalette` to eliminate size differences between computers

* mario_misc.c: Remove remaining "TODO GAG"
2022-08-07 15:13:19 -07:00
MysterD
ae7c1427b9 Only use defined signals 2022-06-05 22:57:17 -07:00
Isaac0-dev
db7b82fc01
Detect termination signals (#127) 2022-06-05 19:11:15 -07:00
MysterD
e47e1ede47 Made capped framerates and vsync smoother 2022-05-28 20:13:02 -07:00
MysterD
933914d984 Add djui_hud_world_pos_to_screen_pos, and render interpolated rect/texture 2022-05-13 19:54:49 -07:00
MysterD
d75b0e9133 Started working toward allowing disconnection 2022-05-09 07:27:47 -07:00
MysterD
f2c032c6d8 Specify filetypes in audio folder, add audio_custom_shutdown() 2022-05-08 15:44:04 -07:00
Beyley Thomas
b8553162c2
Add basic Bass audio engine (#58) 2022-05-08 00:25:09 -07:00
MysterD
121ae62d4c WIP: uncapped framerate 11 2022-04-30 17:25:47 -07:00
MysterD
582cae97ed WIP: uncapped framerate 9 2022-04-29 21:28:14 -07:00
MysterD
5e17edfd01 WIP: uncapped framerate 6 2022-04-27 21:27:14 -07:00
MysterD
0eece3001f WIP: uncapped framerate 4 2022-04-27 18:41:05 -07:00
MysterD
02ab54b3ad WIP: uncapped framerate 3 2022-04-27 18:25:43 -07:00
MysterD
cca8cdc860 WIP: uncapped framerate 2 2022-04-26 22:42:57 -07:00
MysterD
da0d4b3733 WIP: uncapped framerate 2022-04-26 20:00:18 -07:00
MysterD
592df229b6 Prevent DynOS packs from being enabled then disabled on launch 2022-04-23 03:23:30 -07:00
Prince Frizzy
54a6135cb9
Cleanup Deluxe (#45) 2022-03-29 20:45:56 -07:00
MysterD
0983474429 More progress on mod table rewrite 2022-03-14 19:30:02 -07:00
MysterD
0a3d0b2033 Started rewriting the mod table 2022-03-14 18:18:14 -07:00
Prince Frizzy
75bb9b7912
Update to Refresh 13 (#19)
* Refresh 13

Co-authored-by: n64 <n64>
2022-03-13 00:17:10 -08:00
MysterD
8b377289a5 Remove unstable popup warning 2022-03-11 21:22:32 -08:00
MysterD
1fcf776e34 Enforce limits in player settings packet to prevent possible crash 2022-03-04 21:33:29 -08:00
MysterD
32d62272b4 Merge branch 'unstable' of github.com:djoslin0/sm64ex-coop into unstable 2022-02-26 16:49:30 -08:00
SonicDarkYT
9cf1061d59
More Color Palettes (#137)
* Update pc_main.c

* Update mario_misc.c

* Update djui_panel_player.c
2022-02-26 16:49:24 -08:00
MysterD
660e787502 Fix bugs pointed out by valgrind 2022-02-20 22:06:53 -08:00
Cameron Hall
fc8bb5e6bd Fix strange audio bugs on 32-bit
increase audio heap size, fix buffer overflow reading gBankSetsData, warn on soundAlloc failure

Provided by: camthesaxman
2022-02-06 15:34:34 -08:00
MysterD
0c05fbae87 Made Lua mods show up in player list 2022-02-05 10:26:07 -08:00
MysterD
fe11e25e0b Allowed enabling/disabling of mods through the UI 2022-01-23 15:45:42 -08:00
MysterD
767809f56a Lua mod table and download
Mods are now loaded into a table
Clients now request a mod list from the server, then download each file one at a time before joining
Embedded constants.lua into the program
2022-01-22 23:59:49 -08:00
MysterD
34e903b89a Merge branch 'unstable' into lua 2022-01-21 19:19:21 -08:00
MysterD
addd16721f Added headless server compile mode 2022-01-21 19:13:41 -08:00