Commit graph

379 commits

Author SHA1 Message Date
Isaac0-dev
c65a67ccf1 use a hmap for scroll targets 2024-11-30 15:34:25 +10:00
Isaac0-dev
c0691d4b3e add unordered map to cmap 2024-11-30 15:33:11 +10:00
Isaac0-dev
2bfd9bc5f6 init dynos levels in DynOS_Level_GetCollision 2024-11-30 09:12:47 +10:00
Isaac0-dev
92fbe54ebd separate dynos pack model and mod owned model ids
to address the grand star late join model bug that can happen with mods like omm.
the bug happened when players have different dynos packs, and during a late join, the model ids are relied on to be the same.
dynos packs can offset the available model ids, therefore desyncing the model used on late join.
2024-11-28 14:02:27 +10:00
Isaac0-dev
39826deadd add a way to find surface types in collision 2024-11-22 08:57:37 +10:00
Khangaroo
693a77078d
Low-hanging fruit mod loading optimizations (#493)
* Low-hanging fruit mod loading optimizations

* Fix DynOS fread spam and don't use a linked list for mod cache (still O(n^2), but much faster)
2024-11-16 12:44:57 +10:00
Drahnokks
636b385e48
add controller.buttonReleased (#379) 2024-10-20 09:25:08 +10:00
Isaac0-dev
f8a30e4fd8 fix some issue with recent prs 2024-10-18 12:47:24 +10:00
xLuigiGamerx
49be9d159b
Allowed Dynos to use geo_mario_cap_display_list (#337)
* Allowed Dynos to use geo_mario_cap_display_list

* Fixed [CS] Extra Characters breaking voices in other CS mods
2024-09-24 10:04:50 +10:00
Isaac0-dev
4aa2a20f72
fixes, clean up and some new features (#259)
- Only inited `smlua_audio_utils` if needed, since there will probably be plenty of people who play without ever using mods with custom audio.
- Fixed the pause anywhere setting - this ended up not being fully accurate to ex-coop, which it was originally intended to be.
- Stopped regenerating dynos collision bin on start up every time therefore giving a slight start up speed boost for some people.
- Added a config file setting that lets people choose to compress dynos bins on startup (disabled by default).
- Fixed a warning that shows on non macs during compiling.
- Properly fixed the chat box focus.
- Made the public lobby rules panel "temporary".
- Added a cleaner loading screen design.
- Added an ex-coop theme easter egg, can only be activated from the config file.
- Cleaned up the Lua traceback logging, now shows the folder and file the error occurred in, rather than the full path.
- Added a way to set `gCheckingSurfaceCollisionsForCamera`, so mods can specify to surface finding functions to ignore `SURFACE_FLAG_NO_CAM_COLLISION` internally.
- Rewrote the way smlua pushes CObjects/CPointers to Lua. Now using the C Lua API entirely to connect to Lua.
	- Fixed a use-after-free bug that could easily crash the game through Lua (explained further in one of my comments below).
- Fixed a common crash in `audio_sanity_check`.
2024-09-12 19:09:01 +10:00
GhostlyDark
8636d26726
Fix incorrect skybox paths for DynOS builtin tex (#300) 2024-09-06 16:50:16 -04:00
Agent X
8b723b8e85 Fix incorrect texture path in DynOS builtin textures 2024-09-04 17:26:27 -04:00
Agent X
bc63f96f2b Disable DynOS compression for non-dev again 2024-07-03 18:38:06 -04:00
FluffaMario
5cba5bede1
Updated Player Characters (#85)
* Update Player Characters

* Oops...

* Slipped through

* Hopefully this is good now?
2024-06-30 07:40:29 -04:00
Agent X
8525a9a2ee DynOS fixes 2024-06-26 18:51:11 -04:00
PeachyPeach
c4214ed2da
Prevent the game from caching downloaded WIP mods (#69)
* don't tmp or cache wip mods

* update
2024-06-23 11:54:07 -04:00
Agent X
4607405b0c Re-enable DynOS compression (Needs testing) 2024-06-21 13:51:06 -04:00
Isaac0-dev
eeebfecca4
more loading screen fixes for non supported builds (#74) 2024-06-19 11:43:01 +10:00
Agent X
e780b74d1b Properly sync BITS ferris wheel platforms 2024-06-13 20:33:47 -04:00
Radek Krzyśków
eb45999791
Fix the texture dimensions check in DynOS (#67) 2024-06-11 18:47:22 -04:00
Agent X
0e0b3c1862 Expose gCurrentArea and gCamera to Lua 2024-06-10 11:32:05 -04:00
Agent X
29ad63f9f9 Fix some DynOS prints 2024-06-02 15:58:03 -04:00
Isaac0-dev
a347f77b3c
fix some git merge conflicts that weren't resolved (#55)
and added -latomic to build flags to fix compile warnings while compiling miniaudio
2024-06-01 13:40:58 +10:00
Agent X
70fb580311 Re-enable DynOS Vtx rounding 2024-05-21 17:10:00 -04:00
Agent X
ceb7aa4649 Palette system overhaul and preset rewrite 2024-05-21 17:09:59 -04:00
Isaac0-dev
0d71c6c12f
remove animation dma tables, and provide mods more access to mario animations (#47)
This removes the old animation system which would create 16 copies of the animation table, so this should use less memory. Made m->animation->targetAnim always be a pointer to the actual animation in gMarioAnims, so mods can grab the pointer and reuse it.
added get_mario_vanilla_animation to Lua, which lets a mod get any of mario's built in animations from its index.
2024-05-21 21:17:30 +10:00
Agent X
f2a6891a08 Rework new user folder system, make it just read sm64ex-coop if sm64coopdx isn't present, no more copying 2024-05-16 17:15:25 -04:00
Agent X
591261fd41 Rename tmp to .tmp and hide on Windows (Will test after making this commit) 2024-05-15 18:00:16 -04:00
Agent X
34113d3b53 Make tex files generate even with other ones in the dir 2024-05-12 09:16:55 -04:00
Agent X
2d314c539c DynOS NPOT texture warning instead of error 2024-05-11 17:52:42 -04:00
Isaac0-dev
85c3bde7e3
improve frame delaying and vsync (#31)
use uncapped framerate and vsync for the best experience
2024-05-09 23:56:54 +10:00
Isaac0-dev
7b4a223b67
fixed double dynos animation swap (#32)
this usually was a bug caused by mirror mario, where animInfo.curAnim was NULL, but the swap was still carried out
2024-05-09 21:36:32 +10:00
Isaac0-dev
a5c4e29d2f
allowed add_scroll_target to use behavior parameters for offset and size (#20) 2024-05-08 22:12:55 +10:00
Isaac0-dev
90b071acc0
exposed a bunch of interaction functions to Lua (#22)
Renamed the function interact_unknown_08 to interact_spiny_walking
and added the constant INTERACT_SPINY_WALKING, which has the same value of INTERACT_UNKNOWN_08
INTERACT_UNKNOWN_08 is kept for compatibility with smlua, and behavior dynos bins
2024-05-03 18:38:21 +10:00
Agent X
19b354fb2f Change around printing a little 2024-04-19 13:32:39 -04:00
Agent X
d15ebf29d3 Make WARP_NODE commands able to read custom Lua registered levels 2024-04-17 17:40:53 -04:00
Agent X
a6b938df75 Shorten include paths by removing unnecessary "src/" 2024-04-17 17:28:38 -04:00
Agent X
b08fc74a3d Fix small mistake in DynOS_Tex_Get 2024-03-25 20:39:49 -04:00
Isaac0-dev
663e4549d8
extract assets from rom at runtime (#4)
* Proof of concept for loading rom assets at runtime

* Added skybox textures

* Adjusted format

* Load all texture assets from rom

* Adjusted rom asset loading

* Load all Vtx lists from rom

* clean up toad, wario and his cap conflicts

* Load sound samples from rom

* fix toad sounds

* Loaded sequences from rom

* Load collisions from rom

* Object animations are now loaded from the rom

* Load player animations from rom

* Load goddard anims from rom

* whoops

* fix some compile errors

* drag and drop rom checker, everything works now.

* fix errors due to merge conflicts

* fix compile errors on windows, switch to md5

* fix vertex colors during load

Co-Authored-By: Agent X <44549182+agent-11@users.noreply.github.com>

* Load dialogs from rom

* Loaded course/act names from rom

* Loaded ingame text from rom

* rerun autogen & blacklist smlua_text_utils_init

* fix ttc_seg7_vertex_0700B238 colors

---------

Co-authored-by: MysterD <myster@d>
Co-authored-by: Agent X <44549182+agent-11@users.noreply.github.com>
2024-03-23 16:11:30 -04:00
Isaac0-dev
4008b38411
texture_override_set for custom level textures (#6)
* texture_override_set for custom level textures

* whoops
2024-03-23 08:20:54 -04:00
Agent X
a2fd2983b2 Add crash preventions to DynOS_Tex_Get 2024-03-22 18:54:24 -04:00
Agent X
a022b04638 Some fixes 2024-03-19 15:17:55 -04:00
Isaac0-dev
f07b74c3d2 cleanup and bug fixes 2024-03-19 19:48:48 +10:00
Agent X
7dd02b5c4d Massively improve "Global Player Models" option 2024-03-17 20:58:38 -04:00
Agent X
de1e24b7b9 Remove sm64ex-coop compatibility 2024-03-17 16:32:49 -04:00
Agent X
784284591f Consistent loading screen capitalization 2024-03-09 21:49:06 -05:00
Agent X
6681fe536b Make DynOS warp bug fix only work with coop compatibility off 2024-03-07 19:05:31 -05:00
Agent X
9870e18bf5 Add OBJ_LIST_EXT in place of OBJ_LIST_UNUSED_1 2024-03-04 20:09:53 -05:00
Agent X
2aa5fffc27 Disable Vtx rounding with DynOS gfx generation 2024-03-04 14:31:13 -05:00
Agent X
08aa265d24 Add gsDPSetBlendColor 2024-02-23 23:06:26 -05:00