Commit Graph

142 Commits (208c092e12ab2cc2c1039525194dcf5615defd16)

Author SHA1 Message Date
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