PeachyPeach
18503ecc52
Various bug fixes + Added is_game_paused() and more background music functions to lua ( #93 )
...
Bug: DynOS models with animations cannot swap animations if they are
loaded via lua (smlua_model_util_get_id and
obj_set_model_extended).
Fix: DynOS_Actor_GetActorGfx takes a graph node instead of a georef,
and checks for DynosValidActors graph nodes if georef is NULL.
Bug: The game can crash when calling obj_set_model_extended inside a
HOOK_ON_OBJECT_RENDER hook.
Fix: The crash happens in smlua_model_util_load_with_pool_and_cache_id
due to pool being NULL. If the game can't allocate an
AllocOnlyPool object, use DynOS to generate the graph node.
Bug: warp_to_level and similar functions don't trigger HOOK_ON_WARP.
Fix: Call HOOK_ON_WARP hooks in DynOS_Warp_UpdateWarp and
DynOS_Warp_UpdateExit after level and mario initialization.
Bug: The game sometimes calls HOOK_ON_OBJECT_RENDER hooks for
unintended objects.
Fix: Initialize hookRender field to 0 when creating an object.
Bug: Actions can't apply gfx offsets to characters that have an anim
offset (Waluigi, Wario)
Fix: Add m->curAnimOffset to gfx.pos[1] instead of setting it to
m->pos[1] + m->curAnimOffset, except during the jumbo star
cutscene.
2022-05-14 14:28:25 -07:00
EmeraldLoc
75a83d6244
Fixed mac compilation ( #88 )
2022-05-10 21:20:19 -07:00
MysterD
679c5963a3
Attempt #3
2022-05-09 09:45:14 -07:00
MysterD
4f8c58faf6
Actual fix for crash when disconnecting with custom models in level
2022-05-09 09:28:20 -07:00
MysterD
319736520c
Fixed crash when disconnecting with custom models in the level
2022-05-09 08:40:18 -07:00
MysterD
f9411da5a6
Started working toward allowing disconnection
2022-05-09 07:27:47 -07:00
PeachyPeach
82aca5404e
More rom-hacks globals to lua; more bug fixes ( #84 )
...
New gLevelValues exposed to lua:
pssSlideStarTime: the time limit in frames for PSS-style levels (default: 630)
pssSlideStarIndex: the index of the star spawned below the time limit for PSS-style levels (default: 1)
coinsRequiredForCoinStar: number of coins required to spawn the 7th star of a main course (default: 100)
wingCapDuration: duration in frames of the wing cap (default: 1800)
metalCapDuration: duration in frames of the metal cap (default: 600)
vanishCapDuration: duration in frames of the vanish cap (default: 600)
wingCapDurationTotwc: duration in frames of the wing cap given to the player at the entrance of TOTWC (default: 1200)
metalCapDurationCotmc: duration in frames of the metal cap given to the player at the entrance of COTMC (default: 600)
vanishCapDurationVcutm: duration in frames of the vanish cap given to the player at the entrance of VCUTM (default: 600)
Fixed a bug preventing the level music from restarting after defeating a Boss.
Fixed some bugs with 3D coins or any model with the geo_rotate_coin function:
Disable billboard and cylboard attributes.
Set the pitch and roll to 0 for the model to rotate properly.
The model no longer rotates every frame (even when the game is paused), but every time the object is updated.
2022-05-08 12:18:25 -07:00
MysterD
0b7e4244e7
Only load DynOS model or texture packs once they're enabled
2022-05-07 18:20:53 -07:00
MysterD
5a81f072e0
Fixed custom textures on Windows
2022-05-07 16:39:19 -07:00
MysterD
39244b11aa
Fix various checks for whether or not we should generate tex files
2022-05-07 15:54:27 -07:00
MysterD
51296bd36b
Allow Lua to get any vanilla texture
2022-05-07 03:05:25 -07:00
MysterD
e1fd969cf3
Add support for custom HUD textures and faster texture packs w/o EXTERNAL_DATA
2022-05-06 22:03:12 -07:00
MysterD
b313e402c9
Automatically disable billboards on DynOS models with >6 vertices
2022-05-04 00:14:33 -07:00
PeachyPeach
208c092e12
[BUG FIX] DynOS Bin Vtx overflow ( #79 )
...
Vertex coords are saved as s16 instead of f32 inside DynOS .bin files,
causing unintended overflow for vertex coords outside of the range
[-32768, +32767]. The format cannot be changed without breaking all
existing DynOS models, so, when writing a .bin file, a sentinel value
is added at the top of the vertex buffer for buffers that need f32
coords. If that sentinel is detected during the reading process,
the next vertex coords will be read as f32 instead of s16.
2022-05-02 17:31:29 -07:00
MysterD
41aac2a3c4
Possible mac compile fix
2022-04-23 15:54:39 -07:00
MysterD
55ed56b7f4
Revert DynOS auto-disable-billboard
2022-04-23 14:28:02 -07:00
MysterD
40896e09d0
Prevent DynOS packs from being enabled then disabled on launch
2022-04-23 03:23:30 -07:00
MysterD
0f821483b1
Automatically disable billboards when a DynOS model uses more than 6 vertices
2022-04-23 03:05:16 -07:00
MysterD
a8fbf26338
Fix crash when toggling dynos packs
2022-04-23 02:22:12 -07:00
MysterD
03b81569e9
More performance improvements
2022-04-22 20:57:18 -07:00
MysterD
4a4501d0e4
Fixed finding of renamed custom actors
2022-04-22 18:54:11 -07:00
MysterD
a3df8d9c0b
Massive DynOS refactor for performance/organization
2022-04-19 21:06:18 -07:00
MysterD
8ddf90a058
Make DynOS texture lookup use a set for performance
2022-04-19 18:24:26 -07:00
MysterD
b856648d6e
Fix bug in dynos level gen of custom behaviors
2022-04-18 23:13:11 -07:00
MysterD
0c696edf0c
Display a message on screen when script errors are found
2022-04-16 22:47:16 -07:00
MysterD
d7bd7be7c5
Have level scripts prefer their local datanodes
2022-04-16 22:06:38 -07:00
Prince Frizzy
7c5261554e
Merge in small changes. ( #63 )
2022-04-16 19:12:12 -07:00
MysterD
b6be0a0e78
Rewrite of hash/cache system
2022-04-16 13:05:10 -07:00
MysterD
2636185156
Stop music on dynos warp
2022-04-15 19:32:53 -07:00
MysterD
70143353bf
Prevent DynOS from attempting to generate lvls when they already exist
2022-04-15 18:24:17 -07:00
MysterD
f774f34863
Prevent generating extra geos for player models, allow referencing mario textures
2022-04-14 21:49:41 -07:00
MysterD
a51e85531a
Fix buffer overrun
2022-04-13 21:24:38 -07:00
MysterD
75a46622f3
Added actor textures to dynos builtin list; added shadow_spike_ext
2022-04-13 19:13:25 -07:00
MysterD
078d4b3afc
Change how DynOS generates actors - generate any geolayout that isn't referenced by another
2022-04-13 18:27:21 -07:00
MysterD
599fc662ad
Re-fix movtexqc parsing
2022-04-11 22:56:44 -07:00
MysterD
95362d7961
Fix DynOS vertex offset writing
2022-04-11 22:54:36 -07:00
MysterD
7157255fc2
Merge branch 'level-scripts' of github.com:sm64ex-coop-dev/sm64ex-coop into level-scripts
2022-04-11 22:14:20 -07:00
MysterD
d5d556b8e8
Fix for dynos mod actors that replace other actors
2022-04-11 22:14:12 -07:00
MysterD
4610374570
Clang/mac fixes
2022-04-11 21:43:55 -07:00
Prince Frizzy
97b351def9
Smarter check for texture finding. ( #61 )
2022-04-11 21:24:35 -07:00
MysterD
264acbe7b9
Fix how DynOS loads custom actors
2022-04-11 18:15:54 -07:00
MysterD
3225de7e2c
Fix error in LOAD_MODEL_FROM_GEO_EXT (level gen)
2022-04-10 16:20:02 -07:00
MysterD
7ed4d90e2d
Fix level compiling with decimals
2022-04-10 14:51:13 -07:00
MysterD
45c8f9f46f
Add SM74's geo_choose_area
2022-04-10 03:07:55 -07:00
MysterD
976be8889d
Allow DynOS to warp to level with castle levels
2022-04-10 01:30:56 -07:00
MysterD
2d159af4cc
Allow coop mods to use the backup save slot independently of the normal one
2022-04-10 00:30:47 -07:00
MysterD
2e8017a39c
Allow course names/acts to be changed from Lua
2022-04-09 23:28:36 -07:00
MysterD
47dd967af5
Added a way to bind to movtexqc ids through lua, added the rest of the object constants
2022-04-09 01:47:20 -07:00
MysterD
38ac873568
Made trajectories overridable from Lua
2022-04-08 23:01:41 -07:00
MysterD
d4f462d491
Added custom level script overrides, warps work now
2022-04-08 19:29:16 -07:00
MysterD
56a314bab5
Fixed up collision bug, added collision file validation, allowed lua to get builtin collisions
2022-04-08 19:17:57 -07:00
MysterD
0342f767df
Refactored actor geos in DynOS
2022-04-08 18:56:22 -07:00
MysterD
420789b570
Split dynos_misc stuff into mgr files
2022-04-08 08:18:06 -07:00
MysterD
ac8db94f53
Renaming cleanup
2022-04-08 01:52:53 -07:00
MysterD
837f1e4f71
Function pointer cleanup
2022-04-08 01:46:29 -07:00
MysterD
652452540c
Added vanilla lvl cols to level gen, changed how pointer offsets are saved
2022-04-07 23:06:10 -07:00
MysterD
8d0eff3cb2
Added support for SM76's JUMP_AREA, added missing lvl geos, reordered parsing
2022-04-07 18:34:44 -07:00
MysterD
c5f7aecd40
Fixed token corruption in DynOS, added support for runtime LOAD_MODEL_FROM_GEO
2022-04-07 08:21:19 -07:00
MysterD
2cc48515a7
Added support for known models and unknown behaviors for level gen
2022-04-06 23:10:39 -07:00
MysterD
56be400f7e
Only force in movtexs and collisions within that levels subfolders
2022-04-06 22:14:40 -07:00
MysterD
ab115da1de
Refactored how vanilla data is stored/retrieved within DynOS
2022-04-06 21:32:55 -07:00
MysterD
6dd90100ad
Adjustments for Lua/Mods
2022-04-06 18:24:50 -07:00
MysterD
5da4060f0a
Memory management improvements
...
Log errors on allocation failure
NULL check all display list allocations
Fix reading a freed string
2022-04-06 18:10:22 -07:00
MysterD
6aa29a54e7
Added extended bounds
2022-04-06 08:40:22 -07:00
MysterD
e49593d5cf
Sneaky files re-appeared in the merge
2022-04-06 01:44:27 -07:00
MysterD
2aeb96cc59
Merge branch 'unstable' into level-scripts
2022-04-06 01:36:33 -07:00
MysterD
4c734762b1
Fix compile error
2022-04-05 23:10:39 -07:00
MysterD
431a2b5da8
Merge branch 'level-scripts' of github.com:sm64ex-coop-dev/sm64ex-coop into level-scripts
2022-04-05 23:00:20 -07:00
MysterD
635b23aa6f
Added support for custom skyboxes in DynOS level gen
2022-04-05 22:56:03 -07:00
Prince Frizzy
e6f97a3ef7
Add support for dynamic water regions. ( #55 )
...
* Add support for dynamic water regions.
2022-04-05 13:44:05 -07:00
MysterD
babcdb551e
Force Movtexs into compiled DynOS lvls
2022-04-05 08:15:08 -07:00
MysterD
5fe27f6974
Fixed how DynOS writes lua variables into level scripts, added all level geos
2022-04-05 00:22:09 -07:00
MysterD
7055d1c21c
Backwards compatibility fix for DynOS
2022-04-04 21:42:14 -07:00
MysterD
ab149832be
Added Light_t, Ambient_t, and began adding vanilla lvl geos to DynOS level gen
2022-04-04 21:25:40 -07:00
MysterD
4cd4849ada
Added ability for DynOS levels to call into lua for custom objects
2022-04-04 18:16:36 -07:00
MysterD
a495a775be
All vanilla levels can be compiled through DynOS now
2022-04-04 01:11:02 -07:00
MysterD
9cb6d3cae2
Added rooms parsing to DynOS level gen
2022-04-03 23:42:25 -07:00
MysterD
79233b994f
Added Movtex and MovetexQC to DynOS level gen
2022-04-03 22:12:17 -07:00
MysterD
1309eb7ef9
More DynOS custom level progress - BOB can now compile
2022-04-03 03:30:47 -07:00
MysterD
30f468e869
Added trajectories to custom DynOS levels
2022-04-02 16:08:19 -07:00
MysterD
a204fc996c
Recursively parse DynOS level folders
2022-04-02 15:55:06 -07:00
MysterD
95e826d1c8
Fixed custom level textures
2022-04-02 15:32:21 -07:00
MysterD
4052347247
More progress toward custom DynOS levels
2022-04-02 15:14:04 -07:00
MysterD
517b37616c
More DynOS refactoring
2022-04-01 20:04:24 -07:00
MysterD
a2880865c8
Fixed up DynOS collision files
2022-04-01 17:59:40 -07:00
MysterD
d30555be82
DynOS cleanup
2022-04-01 17:54:32 -07:00
MysterD
018a5e4f5c
DynOS level parsing - phase 1
2022-04-01 17:19:26 -07:00
MysterD
00f0562d4d
Start parsing level scripts in DynOS
2022-04-01 01:43:50 -07:00
MysterD
a32d14f6cc
Fix how DynOS decides to generate bins for geos
2022-03-31 01:17:11 -07:00
MysterD
1cd9715cda
Add 'specials' to DynOS collisions
2022-03-30 23:52:50 -07:00
MysterD
3ee38c382d
Add the rest of the surface constants to DynOS
2022-03-30 23:08:19 -07:00
MysterD
a4ed264285
Refactor coop-specific DynOS code
2022-03-30 23:05:53 -07:00
MysterD
745fce41a8
Add custom collisions to DynOS/Lua
2022-03-28 01:02:33 -07:00
MysterD
a60a11f51d
Fix errors pointed out by clang
2022-03-27 17:25:39 -07:00
MysterD
b25bb84b48
Make DynOS only generate one bin per actor
2022-03-25 22:05:07 -07:00
MysterD
7c7fcbf0b5
Allow people to disabled downloaded models (from mods)
2022-03-16 22:43:43 -07:00
MysterD
0f12429fb3
Allow lua mods to override models, have DynOS generate bins
2022-03-16 21:26:29 -07:00
MysterD
40ecf7ea51
Fixed custom lua models
2022-03-16 19:57:45 -07:00
MysterD
f74b6a47d0
Load Super Keeberghrh's ERROR model when DynOS can't find the model
2022-03-16 01:34:18 -07:00
MysterD
308628cea8
Hook DynOS into mods when they're activated (custom models)
2022-03-16 01:11:48 -07:00