Commit Graph

2320 Commits (5d1aa7ea6d973fa872c0297fa7a4a0cc9cf57cde)

Author SHA1 Message Date
MysterD b8bfd92061 Force frame limit to sane values 2022-04-29 21:35:10 -07:00
MysterD 2d85ba5a35 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-04-29 21:32:18 -07:00
MysterD 582cae97ed WIP: uncapped framerate 9 2022-04-29 21:28:14 -07:00
MysterD 58cee9098b Improve reliable packet timer/resend rate 2022-04-29 21:27:23 -07:00
Prince Frizzy 2a405b3233
Add two new LUA util functions. (#72) 2022-04-28 20:42:29 -07:00
MysterD ef51666c98 WIP: uncapped framerate 8 2022-04-28 00:22:15 -07:00
MysterD 803db891d2 WIP: uncapped framerate 7 2022-04-27 21:42:22 -07:00
MysterD 5e17edfd01 WIP: uncapped framerate 6 2022-04-27 21:27:14 -07:00
MysterD 6e47f226c9 WIP: uncapped framerate 5 2022-04-27 19:43:55 -07:00
MysterD 0eece3001f WIP: uncapped framerate 4 2022-04-27 18:41:05 -07:00
Isaac da79a14cec
Check if in water before changing camera. (#71) 2022-04-27 18:34:31 -07:00
MysterD 02ab54b3ad WIP: uncapped framerate 3 2022-04-27 18:25:43 -07:00
MysterD e8fe92bdad Fix issue where some billboards would randomly be disabled 2022-04-27 18:01:22 -07:00
MysterD cca8cdc860 WIP: uncapped framerate 2 2022-04-26 22:42:57 -07:00
MysterD da0d4b3733 WIP: uncapped framerate 2022-04-26 20:00:18 -07:00
MysterD c0969c7833 Added general purpose profile functions 2022-04-26 18:35:59 -07:00
Prince Frizzy bf55c2da35
Add error logging to matrix stuff. (#70) 2022-04-26 13:49:09 -07:00
PeachyPeach 6726a6280a
Changes in level_info; play_transition; dev-only warp command; bug fix for moving sounds played via lua (#69)
Improved level_info.c and added functions to LUA:
        const char *get_level_name_ascii(s16 courseNum, s16 levelNum, s16 areaIndex, s16 charCase):
            Return a level name as an ascii string. If charCase is 1, capitalize all letters.
            If charCase is -1, decapitalize all letters except the first one of each word.
        const u8 *get_level_name_sm64(s16 courseNum, s16 levelNum, s16 areaIndex, s16 charCase):
            Return a level name as an sm64 u8 string.
            If charCase is 1, capitalize all letters.
            If charCase is -1, decapitalize all letters except the first one of each word.
        const char *get_level_name(s16 courseNum, s16 levelNum, s16 areaIndex):
            Shortcut for get_level_name_ascii(courseNum, levelNum, areaIndex, -1).
        const char *get_star_name_ascii(s16 courseNum, s16 starNum, s16 charCase):
            Return a star name as an ascii string.
            If charCase is 1, capitalize all letters.
            If charCase is -1, decapitalize all letters except the first one of each word.
        const u8 *get_star_name_sm64(s16 courseNum, s16 starNum, s16 charCase):
            Return a star name as an sm64 u8 string.
            If charCase is 1, capitalize all letters.
            If charCase is -1, decapitalize all letters except the first one of each word.
        const char *get_star_name(s16 courseNum, s16 starNum):
            Shortcut for get_star_name_ascii(courseNum, starNum, -1).

    Added play_transition function to LUA.
        I chose to copy the function declaration to smlua_misc_utils.h instead of adding area.h
        to the autogen tool, as most structures, variables and functions in area.h aren't meant
        to be used by LUA scripts.

    Added a dev-only warp chat command.
        This command signature is /warp [LEVEL] [AREA] [ACT]. Level can be either a number
            or a shorthand name (bob, wf, ccm...). Area and Act are numbers.
        This command is available only when building the game with DEBUG and DEVELOPMENT.
        This command cannot be used if hosting through Discord.

    Fixed a bug with moving sounds when they are played via a lua script.
        Bug: Moving sounds (including terrain sounds, flying sound, quicksand sound)
            are not played correctly when a lua script play them via a call of
            play_sound or play_sound_with_freq_scale. This is due to how the moving
            sounds are handled internally. They use the f32 pointer provided to the
            play_sound functions to decide if the sound must be kept playing,
            stopped or restarted. Most of the time, the pointer provided is the
            cameraToObject field of Mario's object graph node. Since smlua uses a
            circular buffer for Vec3f conversion, this pointer is lost, and the
            sound engine can't decide what to do with the sound, resulting in a
            weird and incorrect sound effect.
        Fix: play_sound and play_sound_with_freq_scale now calls
            smlua_get_vec3f_for_play_sound before filling the sound request queue,
            to retrieve the correct pointer from the Vec3f provided by smlua.
2022-04-26 13:48:50 -07:00
MysterD 343076dec1 Make coop-compiler use O2 2022-04-23 20:01:52 -07:00
MysterD 5983285e4b Created a minor version number 2022-04-23 15:55:26 -07:00
MysterD 36f2b2218d Possible mac compile fix 2022-04-23 15:54:39 -07:00
MysterD 76d32bef42 Fix crash when pausing in an invalid act 2022-04-23 15:54:31 -07:00
MysterD cc0ed0e8b7 Fix crash in find_surface_on_ray_list() 2022-04-23 15:50:14 -07:00
MysterD 8bce9a53ec Another download fix, whoopsies 2022-04-23 15:13:28 -07:00
MysterD 1441c7e137 Fix memory corruption in download 2022-04-23 15:08:33 -07:00
MysterD f8b8e80cf6 Revert DynOS auto-disable-billboard 2022-04-23 14:28:02 -07:00
MysterD 592df229b6 Prevent DynOS packs from being enabled then disabled on launch 2022-04-23 03:23:30 -07:00
MysterD 9e33ce39e6 Automatically disable billboards when a DynOS model uses more than 6 vertices 2022-04-23 03:05:16 -07:00
MysterD f2ca0e18fc Fix crash when toggling dynos packs 2022-04-23 02:22:12 -07:00
MysterD d73216a899 Fixed rare crash in geo_process_node_and_siblings 2022-04-23 01:12:12 -07:00
MysterD da56bd7bad Merge branch 'unst24' into unstable 2022-04-23 00:38:39 -07:00
MysterD 71105833c5 Made specialTripleJump a field of MarioState instead of a global 2022-04-23 00:35:49 -07:00
MysterD 58282f7752 Sort mods list 2022-04-23 00:30:43 -07:00
MysterD 80a5638bd1 Added more detailed lua error logs 2022-04-23 00:15:08 -07:00
MysterD faca15ae12 Allow Lua to set fields to nil 2022-04-22 23:49:14 -07:00
MysterD d206581c87 Fix error cascade when one mod has script errors 2022-04-22 23:42:03 -07:00
MysterD 174e3d97ed Made Lua errors show a backtrace for almost all cases 2022-04-22 23:31:25 -07:00
MysterD ba544d6e35 More performance improvements 2022-04-22 20:57:18 -07:00
MysterD e16efd7dd6 Fix sm74 ee course 11 2022-04-22 19:27:19 -07:00
MysterD df294c0f64 Fix up DynOS actor override 2022-04-22 18:57:26 -07:00
MysterD e7cd7ccd6d Fixed finding of renamed custom actors 2022-04-22 18:54:11 -07:00
MysterD f6ff4a0730 Special stages show their level name in the pause menu again 2022-04-22 18:53:53 -07:00
MysterD 9e71aba050 Move Lua allow lists over to using a hashmap 2022-04-22 18:51:25 -07:00
MysterD 0d29a29c1b Use binary search for all Lua cobject fields 2022-04-22 18:51:25 -07:00
MysterD 5cfef9abb3 Added gActiveMods global to lua 2022-04-22 18:44:59 -07:00
MysterD 48cff1c5da Split up functions.md into multiple pages 2022-04-22 18:41:42 -07:00
MysterD bc7821a1e9 Added custom mod packets 2022-04-22 00:13:58 -07:00
MysterD ef7dc41560 Added HOOK_ON_DEATH 2022-04-21 18:34:12 -07:00
MysterD c292793470 Adjustments to reliable packets 2022-04-21 18:33:20 -07:00
MysterD c8a0e6da10 Fixed player interactions 2022-04-21 00:48:26 -07:00