Commit Graph

66 Commits (de47af04618d72a7e8ff7a820660904e59844fb3)

Author SHA1 Message Date
Agent X 84833065f1 Some changes 2024-07-14 11:37:48 -04:00
Agent X 91320b9cf9 Revert "Decrease the sleep times in some spots, We do not need them to be so long. (#373)"
This reverts commit 9b1123dde9.
2024-04-19 12:37:37 -04:00
Agent X 77ac424475 Make some BBH displaylists unlit 2024-03-23 21:05:26 -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
Agent X 2a7caa2e07 Fix cake screen cutting off early 2024-03-10 00:45:00 -05:00
Agent X 6d68d4cf63 Fix black railing in BBH 2023-12-15 20:15:14 -05:00
Agent X 4beed13254 Fix LLL vertex color anomaly 2023-12-08 21:07:51 -05:00
Agent X 802affd839 ENHANCE_LEVEL_TEXTURES and make all DynOS textures overridable in Lua 2023-11-11 12:15:32 -05:00
Agent X 521b0ab7a9 DynOS Skyboxes 2023-11-06 18:37:02 -05:00
Agent X 49bca1cc01 sm64coopdx
Co-Authored-By: Yuyake <140215214+AngelicMiracles@users.noreply.github.com>
Co-Authored-By: FluffaMario <50761036+FluffaMario@users.noreply.github.com>
Co-Authored-By: Gregory Heskett <gheskett@gmail.com>
Co-Authored-By: iZePlayzYT <69536095+iZePlayzYT@users.noreply.github.com>
Co-Authored-By: Isaac0-dev <62234577+Isaac0-dev@users.noreply.github.com>
Co-Authored-By: eros71 <16540103+eros71-dev@users.noreply.github.com>
2023-10-30 01:03:36 -04:00
MysterD 41a4fcf516 Keep animations in-bounds 2023-05-18 12:42:18 -07:00
Agent X 55dc1b6403
Reset paintings on network shutdown (#393) 2023-05-14 19:15:25 -07:00
MysterD d30b1e61a6 Add a container to animation tables so that we can track their length and stay in bounds 2023-05-10 20:57:35 -07:00
Prince Frizzy ee3a7018ab
Adds support for compiling other regions (#378)
* Initial support for compiling with EU.

* Fix EU text.

* JP now compiles, TODO: Fix Autogen to fix JP and fix text in djui.

* audio: Prevent crash in EU.

* audio: Sync EU audio to 60 Hz instead of 50 Hz

* Add logging and remove sanity check to hopefully track EU crash.

* Various improvements for EU

Improve some memory debugging
Improve sound debugging
Initalize some variables in load.c for the sound system
Synchronize the EU cutscenes with the US version.

* Fix credits music playing in EU, Document some EU audio code.

* Autogen now supports version excluded object fields and functions. Reran autogen in accordance.

* Fix some potentional shifting issues due to version differences.

* Decrease the sleep times in some spots, We do not need them to be so long. (#373)

* Add the region to the version string.

---------

Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2023-05-03 00:54:25 -07:00
MysterD da5cf8230b Fix up co-op ripples 2022-08-07 01:10:10 -07:00
MysterD c0cfc89236 Sync setHome value in spawn object 2022-06-02 21:02:43 -07:00
MysterD ad6642a4bd Add support for custom HUD textures and faster texture packs w/o EXTERNAL_DATA 2022-05-06 22:03:12 -07:00
MysterD 4a89900a8b Fix error in LOAD_MODEL_FROM_GEO_EXT (level gen) 2022-04-10 16:20:02 -07:00
MysterD ef63435bc1 Un-hardcoded vanilla trajectories 2022-04-08 21:01:17 -07:00
MysterD 37367a9756 Made the entry level configurable by Lua 2022-04-08 19:39:22 -07:00
MysterD 469e4ac4e4 Load Super Keeberghrh's ERROR model when DynOS can't find the model 2022-03-16 01:34:18 -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 6f8714c764 Added FluffaLuigi's Wario model 2022-02-13 21:52:35 -08:00
MysterD 4cebce4864 Added Waluigi - model provided by Super Keeberghrh 2021-09-05 14:23:47 -07:00
MysterD 4688ffe1f0 Added toad player character 2021-08-18 22:55:31 -07:00
MysterD 43932249c6 Added support for spawning Luigi-versions of metal/vanish/wing cap as items 2021-08-15 11:46:28 -07:00
MysterD 1b5ceda89d Split luigi/custom character models into custom and zcustom 2021-08-15 01:06:25 -07:00
MysterD 0d05853138 Fix ending cutscene crash and make game playable afterward without rehosting 2021-08-04 23:56:33 -07:00
MysterD 13d504a953 Replaced old host/join menu with new DJUI menu system 2021-07-04 22:40:04 -07:00
anzz1 bc7ec31c02
Enemy hat fixes (#83)
* Ukiki now steals Mario/Luigi hat correctly
* Klepto now steals Mario/Luigi hat correctly
* Mr. Blizzard now knocks off Mario/Luigi hat correctly
* Fwoosh now knocks off Mario/Luigi hat correctly

Co-authored-by: anzz1 <>
2020-10-16 03:03:25 -07:00
MysterD fe163a73dd Add no camera collision to various objects 2020-10-04 23:55:06 -07:00
MysterD e0903003f4 Rewrote how players are initialized, stored, and displayed
Since the second-player code was the first code I wrote, it was implemented
poorly. At that point, I didn't know the code base at all and the way it was
written would prevent anyone from ever adding to those parts.

The rewrite allows me to use the default geo.inc.c file for Mario, and removes
all of the geo2.inc.c files. I no longer do a bunch of bit shifting to figure
out which player is being drawn in the rendering code.

I'm also now able to remove tons of duplicate code that exists just for the
remote player. The main player code is generic enough to support both indices.
A side-effect of the rewrite is I was able to remove many assumptions in the
code where two-players is assumed, but many other parts of the code still
assume two players.

This is a fairly major change that, if all goes well, will be completely
unnoticed by the player. However, I do expect new bugs to pop up in strange
places. Time will tell.
2020-09-06 18:52:52 -07:00
MysterD df7904e288 Geo2 removal wip 2020-09-06 13:54:01 -07:00
MysterD 906ea3345e Players turn into bubbles when they die
Player life counters are separate.
When one player dies they lose a life and are turned into a bubble.
If the other player pops it, they are alive again.
If all players are bubbled, they get kicked out of the level.
If the bubbled player ran out of lives, they can not come back to life
until the level is over.
Whenever a level change happens, everyone's life count is set to a
minimum of two.
No game overs.

Took heavy inspiration from Kaze Emanuar
2020-09-05 18:10:55 -07:00
MysterD 68ad6bc15c Added host/join in-game GUI
Now people aren't forced to launch with command-line parameters,
instead they can host or join a server by selecting buttons in
the main menu.
2020-09-03 18:30:15 -07:00
MysterD b7a1ec009c Removed debug enemies from castle grounds 2020-08-28 23:06:56 -07:00
MysterD ab9d7db29f Synchronized square platforms as groups of two 2020-08-28 20:25:34 -07:00
MysterD 8c650a5b7d Created system to reserve sections of SyncIDs per client
This allows clients to spawn a new sync object after the level loads and synchronize it.
Changed how un-initialized sync objects are detected
Koopa shells are the first thing to use this new system

Removed network_object_settings() command, instead explicitly setting the sync object parameters
2020-08-24 18:33:53 -07:00
MysterD 1f1753e469 Added MARIO2 to all level scripts 2020-08-09 09:16:09 -07:00
MysterD eeec6aae49 L is real 2020
Added Luigi model.
Renamed all previous references to 'Luigi' to 'Mario2' since player 1
isn't always mario, and player 2 isn't always luigi.
Now server is always mario and client is always Luigi.

Luigi model credits:
Original model by Cjes, converted by AloXado320, textures added/fixed by
SunlitSpace542.
2020-08-08 21:36:49 -07:00
MysterD 0a2c76c76e Fixed max sync distance issue, synced Koopas 2020-08-05 20:25:52 -07:00
MysterD f32d3a2ba7 Added Luigi to courtyard and BoB, fixed some crashing issues 2020-08-03 17:59:44 -07:00
MysterD 9b5b5acf19 Synchronized goombas, synced randomness, added extra fields to object packets 2020-08-02 18:29:46 -07:00
MysterD 3d055255bc Added ability to sync multiple objects 2020-08-02 16:09:32 -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 7accb94398 Made fish Luigi-aware 2020-07-31 22:35:14 -07:00
MysterD 4351a6345a Made Goomba Luigi-aware, fixed Mario's hurtboxes 2020-07-31 22:13:05 -07:00
MysterD c437e075ff Separated held objects, made Bobombs Luigi-aware 2020-07-31 18:03:57 -07:00
MysterD 2d2dff6647 Added IMMEDIATELOAD debug flag to skip all intro stuff 2020-07-30 20:42:39 -07:00