Commit graph

4869 commits

Author SHA1 Message Date
Isaac0-dev
cdf3ad4e66 exposed handle_special_dialog_text 2025-11-15 14:13:20 +10:00
Isaac0-dev
c1af89aaf3 reset castle secret stars text on lobby reset, fix course name truncating 2025-11-14 09:15:51 +10:00
Emily♥
88c69c3f22
Fix issues with normal cap (#1003)
Fixes the following issues:
- Mario no longer regains his normal cap when doing the picking up cap action (this allowed you to reobtain it by picking up a Wing Cap, for example)
- Mario will now regain his cap from the ground, even without going into the cutscene. Previously, Mario had to enter the cutscene action to get the cap, so it wouldn't activate if Mario jumped into the cap (Klepto and Mr. Blizzard set the flags directly).
2025-11-14 07:24:14 +10:00
PeachyPeachSM64
520404a4c0 notes for future gbi extension 2025-11-13 19:55:45 +01:00
Isaac0-dev
15a67ed261 completely remove stretched skyboxes in extreme widescreen
bbh has 2 moons
2025-11-13 12:22:13 +10:00
djoslin0
7be78962ce
Update coopnet / libjuice (#1002)
Updates libjuice to 1.6.2 and applied some bugfixes to coopnet's peering code.
Confirmed to fix connection issues with DeadParrot's unusual networking topologies.
Only fully tested win64, I cross compiled the rest of the libraries.

Co-authored-by: MysterD <myster@d>
2025-11-13 08:06:29 +10:00
Baconator2558
458d683e41
Add gsDPSetEnvRGB() (#997)
This command sets the RGB values of a material's environment color without setting the alpha. This is important, as functions like `geo_update_layer_transparency()` use the environment color alpha to control a model's overall opacity. However, if one of the model's materials sets its own environment color alpha, then that will take priority. This command allows these models to still use environment colors in their materials.
2025-11-13 08:00:31 +10:00
Juan
26f9799621 fix Spanish.ini (#950)
* fix Spanish.ini

* fix Spanish.ini
2025-11-13 07:20:59 +10:00
sapbotgit
ba728fad8b Corrections of spelling by native speaker (#928) 2025-11-13 07:19:48 +10:00
Agent X
b5d5ba7687 Expose save_file_set_cannon_unlocked
For a project I'm working on.
2025-11-08 15:01:45 -05:00
PeachyPeachSM64
a45dbbbeb5 Fix gfx_set_command bug if symbol is a substring of another symbol 2025-11-08 16:46:59 +01:00
PeachyPeachSM64
70530b1bde Fix audio file not found on Windows 2025-11-05 23:44:34 +01:00
PeachyPeachSM64
c15748d995 Bring back ChainSegment and PlayerPalette 2025-11-05 23:12:14 +01:00
djoslin0
c2a6110223
Make version checking slightly better (#992)
Currently version checking throws false positives constantly.
This change will set uninitialized variables and require parsing
a version number that starts with v in order to display the
pop-up

Co-authored-by: MysterD <myster@d>
2025-11-05 10:25:44 +10:00
PeachyPeachSM64
9a3d3a7640 Remove unused/unusable structs from autogen 2025-11-04 22:19:12 +01:00
Cooliokid956
5fd55ffac1
djui_hud_is_mouse_locked() (#986)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
* djui_hud_get_mouse_locked()

Adds a total of 1 function:
# `bool djui_hud_get_mouse_locked()`
Returns the DJUI mouse lock status

Tip: This won't return the true state of mouse lock, so make sure to use `get_first_person_enabled()` and `camera_config_is_mouse_look_enabled()` as well

---
This also fills in some descriptions left out by Isaac in his viewport/scissor functions

* djui_hud_is_mouse_locked()

Same as before but is

* this is better imo
2025-10-29 18:41:27 +01:00
Emily♥
9f7ad0f93e
Some syncing fixes for Bowser and Heave Ho (#989)
* Fix Eyerok pounding in multiplayer

Eyerok now only enters the double pound state if ALL players stand on the pedestal rather than just one. Players standing on the pedestal will be ignored. I had to write a new function for this, I hope this is acceptable.

* Suggested changes

I didn't want to change the name of arg0 in eyerok_check_mario_relative_z because it was a vanilla function, but I suppose I can.

* Remove interaction limit for PVP

Fixes issues with certain mods

* Fixes for Bowser and Heave Ho

Hopefully this makes things a bit better.
2025-10-29 18:39:40 +01:00
PeachyPeachSM64
fcef8699f2 Fix other various buffer overflows and make string conversion 188% faster
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
2025-10-26 16:01:47 +01:00
PeachyPeachSM64
c4c7f6c1b9 Fix buffer overflow in HOOK_ON_DIALOG
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-10-26 13:57:20 +01:00
PeachyPeach
32f395fb0c
ModFs improvements (#907)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
* zip + json properties; check existing file in create file

* smlua_audio_utils_replace_sequence

* audio_stream_load, audio_sample_load, smlua_model_util_get_id

* get_texture_info + can also load PNG files

* smlua_collision_util_get

* add wildcard in properties files + set text mode

* filepath restrictions

* Some mod_storage improvements

- Cache mod storage files into a map to reduce file I/O
- Fix a bug in mod_storage_save
- Add mod_storage_load_all that returns all keys/values as a table

* shutdown; fix buffer overflow; fix warnings; lua table

* reject binary files starting with MZ or ELF

* function members

* better doc

* adding file rewind

* ModFS guide; replace yaml by ini; read string buffer changes
2025-10-21 19:42:06 +02:00
Beckowl
25838f13bc
fix require (#908)
* fix require

* Refactor smlua_find_mod_file

* formatting

* initialize arrays for consistency

* normalize relative path in mod_allocate_file instead (fix mod dev mode)

* do cleanup

* Remove useless branch + add comments

* fix mod_file_exists

* WIP: cache mod files at root (LIVE RELOAD IS BROKEN)

* Fix live reload

* remove useless declaration (??)

* fix incorrect top handling

* cleanup x2

* stupid

* loading sentinel + mark top level files as loading

* address dj's comment
2025-10-21 19:04:48 +02:00
Cooliokid956
9a934f8443
Static Object Collision / Check for freed CObject (#924)
* Static Object Collision

* no soc surface pool; bnot

* Isaac review

---------

Co-authored-by: PeachyPeachSM64 <72323920+PeachyPeachSM64@users.noreply.github.com>
2025-10-21 19:04:05 +02:00
Cooliokid956
98891b7334
Fix custom Palette Idle action (#946)
* Palette Idle fixes

- Return to Idle only from palette editor action
- disallow cap toggles if cap is missing

* The Peachy review
2025-10-21 19:02:53 +02:00
Baconator2558
3b5a1a3dcb
Fix X Axis Inversion on Free Cam + Fix PlayerCamState in Custom Camera Modes (#958)
* Update bettercamera.inc.h

Fixes X axis inversion on free cam

* Use PlayerCamState for Free Cam

* Use PlayerCamState for ROM Hack Cam

* Use sMarioCamState to access PlayerCameraState

Probably should've just done this initially.
2025-10-21 19:02:06 +02:00
PeachyPeach
4671f09f79
G_CULL_INVERT_EXT; Vec2 functions; bug fixes (#985) 2025-10-21 18:56:35 +02:00
Jaid
f58b82997f
Update custom_font.c (#956)
Some checks failed
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
2025-10-17 00:30:26 +02:00
Baconator2558
77a43c60a3
Add Ability to Rotate Held Objects (#953)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update rendering_graph_node.c

---------

Co-authored-by: PeachyPeach <72323920+PeachyPeachSM64@users.noreply.github.com>
2025-10-17 00:30:00 +02:00
Chase Bradley
fc7a2f5557
Fix buffer overruns in update checker's network-facing code. (#888)
* fix buffer overrun when formatting remote version string

* fix buffer overrun when null-terminating the latest version string

* Update update_checker.c

---------

Co-authored-by: PeachyPeach <72323920+PeachyPeachSM64@users.noreply.github.com>
2025-10-17 00:24:11 +02:00
PeachyPeachSM64
b4c8f023d2 Make painting textures replaceable by Lua
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
Fix `textureArray` type to be recognized by autogen.

Painting textures can be replaced with the following code:
```
local tex1 = get_texture_info("texture_bottom")
local tex2 = get_texture_info("texture_top")

gPaintingValues.bob_painting.textureArray[1] = tex1.texture
gPaintingValues.bob_painting.textureArray[2] = tex2.texture
```

Texture format must be RGBA 16-bit for built-in textures or
RGBA 32-bit for mod loaded textures.
2025-10-05 12:12:14 +02:00
WBmarioo
68f4fd18d7
Originals Edits (#951)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
* Originals edits

Added VL Tone and CJ Luigi voices. VL is a (slightly, not as much as djoslin toad) pitched up mario voice and CJ uses excoop's original luigi voice.

* Fix some things

Fix one, will fix voice table soon

* Update main.lua

Fix typo

* Fix 3

final fix, with indenting

* update voice pitch code

edits to toad/vl voice pitch code. added three voice files to CJ, now his table is completed.

* pitch table

is a table and it looks better now
2025-09-23 19:08:46 +02:00
PeachyPeach
d9f5869fcd
Fix Texture type; add various get_name functions (#945)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
2025-09-15 20:59:26 +02:00
ManIsCat2
f80f8eba62
gsSPLightColor() support (#948)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
* G_MW_LIGHTCOL

* Update gfx_pc.c

---------

Co-authored-by: PeachyPeach <72323920+PeachyPeachSM64@users.noreply.github.com>
2025-09-15 18:56:40 +02:00
PeachyPeachSM64
d3f57ae845 fix warnings again
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
2025-09-14 17:44:00 +02:00
PeachyPeachSM64
1e146de393 autogen 2025-09-14 16:33:12 +02:00
PeachyPeachSM64
2e98dd5a5e Fix warnings 2025-09-14 14:19:58 +02:00
Beckowl
1c71449ed2
Add lua params support to level macros (allocate dialog pt. 2) (#905)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
* all OBJECT fields are now Lua variables

* add lua variable support to SHOW_DIALOG

* fix object_with_acts

* minor tweak

* Peachy review

---------

Co-authored-by: PeachyPeachSM64 <72323920+PeachyPeachSM64@users.noreply.github.com>
2025-09-13 20:36:28 +02:00
ManIsCat2
6524e709a3
Fresnel Lighting from F3DEX3 (#941)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
* Fresnel part1

* Fresnel part2

* vmacu
2025-09-13 12:40:38 +02:00
PeachyPeachSM64
2c332d4db6 Fix HOOK_ON_DIALOG
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-09-13 01:26:15 +02:00
Emily♥
7f2c5cc53b
Remove interaction limit for PVP (#942)
* Fix Eyerok pounding in multiplayer

Eyerok now only enters the double pound state if ALL players stand on the pedestal rather than just one. Players standing on the pedestal will be ignored. I had to write a new function for this, I hope this is acceptable.

* Suggested changes

I didn't want to change the name of arg0 in eyerok_check_mario_relative_z because it was a vanilla function, but I suppose I can.

* Remove interaction limit for PVP

Fixes issues with certain mods
2025-09-13 00:08:30 +02:00
PeachyPeachSM64
653056bd10 Revert "Reset Mario animations on server shutdown"
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
This reverts commit 7405ae7244.

Make Animation and AnimationTable fields immutable

Fix variable type in music_changed_through_warp
2025-09-02 20:28:03 +02:00
Baconator2558
da13adf72c
Fix obj_init_animation (#936)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
* Fix obj_init_animation

* Update object_helpers.c
2025-08-30 21:49:02 +02:00
PeachyPeachSM64
cee5957e11 Fix cap sequences not replaced/playing on dynos warp and level entry; Add gLevelValues.shellSequence
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-08-29 22:54:40 +02:00
PeachyPeachSM64
6f9c83d3e4 Revert "Read-Only marked as protected" (#921)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-08-29 19:08:27 +02:00
Cooliokid956
85ab20357d
Restored OOB death + De-sorted fields + Read-Only marked as protected (#921)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
* De-sort fields + Add `protected`

This fixes the atrocious ordering in autocomplete (a,b,g,r 😭)
also adds the protected scope for read-only fields

_ReadOnlyTable revision

* Restored OOB death (when alone)

also bubbles the player

* Rerun autogen

* Peachy Review

* kill goto

* Curly Brace
2025-08-28 18:06:55 +02:00
ManIsCat2
5f1a2d0b42
Gfx commands to Copy Lights into Env/Prim color (#927)
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-08-28 06:27:25 +10:00
Isaac0-dev
e0c76a9ecc fix a warning from previous prs
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
2025-08-27 09:36:30 +10:00
John S
c0e03a2ca9
Add clamping at 99999 to the FPS counter (#932) 2025-08-27 09:31:59 +10:00
Isaac0-dev
e74ea05fde
revise better frame pacing (#901)
improved frame pacing, where frame delaying is done just before displaying the frame.
so, the frame is fully rendered, and then the delay is done to wait the extra time before displaying the frame.
This is a far more reliable and consistent way to manage frame pacing, and it will help to keep the framerate from choking too badly when the game lags a little. 

The changes to `gfx_end_frame` is to minimize the steps necessary between delaying and actually displaying the frame. This is an optimization just to increase the accuracy of frame pacing even further.

Also, delta calculation is improved when the number of frames to draw is known. 

Djui cursor movement is also updated every frame for smoother movement.
2025-08-27 08:17:16 +10:00
Isaac0-dev
ac1cf57cf0
new djui hud tools: viewport, scissor and render line (#916)
added these new djui hud tools for Lua:
- djui_hud_set_viewport
- djui_hud_reset_viewport
- djui_hud_set_scissor
- djui_hud_reset_scissor
- djui_hud_render_line - this code could already be done exactly. this is just to make rendering lines more efficient. 

Also made nametags use a viewport for scaling in the credits.
2025-08-27 08:15:41 +10:00
John S
95588761fd
Fix the FPS display for displaying FPS counts higher than 5 digits (#931)
Some checks failed
Build coop / build-linux (push) Has been cancelled
Build coop / build-steamos (push) Has been cancelled
Build coop / build-windows-opengl (push) Has been cancelled
Build coop / build-windows-directx (push) Has been cancelled
Build coop / build-macos-arm (push) Has been cancelled
Build coop / build-macos-intel (push) Has been cancelled
2025-08-26 07:42:19 +10:00