Commit graph

2061 commits

Author SHA1 Message Date
MysterD
503a6fcfe1 Made romhack camera's collision response less fancy, just zoom in when we have to 2022-05-25 19:30:38 -07:00
MysterD
60365295ba Made romhack cam snappier, and fixed weird diagonal offset 2022-05-25 19:17:13 -07:00
MysterD
cd7d067aaa Fix crash when issuing /players chat command 2022-05-25 18:20:13 -07:00
MysterD
df30e5065d Added null checks to functions in obj_behaviors.c 2022-05-25 18:15:03 -07:00
MysterD
8bbd16573c Clear custom models on disconnect 2022-05-25 18:07:58 -07:00
MysterD
e3d5f7da22 Bump version 2022-05-25 18:01:48 -07:00
MysterD
ef8a6da152 Remove debug position stuff for bettercam 2022-05-25 18:01:33 -07:00
MysterD
3052f9c78c Merge branch 'coop' of github.com:sm64ex-coop-dev/sm64ex-coop into coop 2022-05-25 17:49:42 -07:00
MysterD
c15f8bfef0 Bettercam improvements: no longer sways when close to geo, no longer zooms if player partially visible 2022-05-25 17:47:34 -07:00
PeachyPeach
d1bb79f4a0
Camera config values for lua (#116)
* Added camera config getters and setters
2022-05-22 18:47:36 -07:00
Amy54Desu
a1c73d13ef
Fix Player Limit Settings and Hide Server Only Chat Commands (#114) 2022-05-21 23:07:29 -07:00
MysterD
c660244f31 Allow users to select between accurate or fast interpolations 2022-05-21 21:47:53 -07:00
Altiami
c8a70f2d50
New render frame interpolation via transformation matrix de-/construction (#98)
This method of interpolation aims to correctly interpolate the render
transformation matrices as best as possible without doing an entirely
new render pass. This is accomplished by deconstructing the matrices
into its composition of transformations, interpolating those simpler
transformations individually, and then reconstructing the
transformation matrix with the interpolated transformations.
2022-05-21 21:46:41 -07:00
MysterD
f5258f2d41 audio_stream_load_url() cleanup 2022-05-21 21:20:02 -07:00
Lord-Giganticus
499518adde
Add function to load music via https URLs (#100) 2022-05-21 21:17:35 -07:00
MysterD
489597b574 Initialize gGetHostName 2022-05-21 21:13:01 -07:00
Isaac
6d995214cb
Improvements to domain resolution (#106) 2022-05-21 21:12:32 -07:00
Amy54Desu
d553d9b551
Add Act Num to Playerlist (#95) 2022-05-20 11:36:44 -07:00
Marioiscool246
6d6c8fc5e3
Particle sync fixes (#112)
* Fix lingering particles when a player exits an area or disconnects
2022-05-20 11:32:47 -07:00
MysterD
de2300f837 Fix clang/mac compile 2022-05-19 19:42:07 -07:00
Isaac
59e26fbc86
Restore local Mario to mirror room (#109) 2022-05-19 17:14:23 -07:00
Isaac
672af8e2a0
Restore Mario to selected palette when returning to main menu (#105) 2022-05-19 17:07:58 -07:00
Agent X
68d46cdefe
Mouse lock & freeze cam fixes and warp constants (#103) 2022-05-19 17:06:51 -07:00
Marioiscool246
0c7ada8d2b
C-Up Player Head Rotation Fix & Particle Flags Sync Fix (#99)
Local head rotation is now no longer copied to all other players
C-Up mode head rotation now sends to the other players through
the player packet so others can see the head move around

m->particleFlags are now synced to the other players now
2022-05-19 16:52:47 -07:00
PeachyPeach
4fbafc2708
Fixed various audio bugs; DynOS can now detect texture duplicates to decrease generated bin files size (#110)
Fixed the following audio bugs:
    Bug: Rom-hacks sequences don't seem to be affected by volume scaling and
         muting
    Fix: Force the BGM sequences to follow the vanilla behavior:
        Volume can't go higher than default volume
        Volume is reduced to 31% when the game is paused
        Audio is stopped when the game is paused outside the Castle levels
    Bug: (Pointed out by Draco) Mario's voice clips are not replaced by the
         player's character's in the following instances: fall to death
         barrier, "here we go" in the ending cutscene, "let's a go"
         after selecting a star, "okey dokey" after starting the game.
    Fix: The first two ones now call
         play_character_sound(m, CHAR_SOUND_...) instead of
         play_sound(SOUND_MARIO_..., pos). The last two ones couldn't be
         fixed the same way for two reasons: First, the corresponding sounds
         were not referenced in the sound table, second, the sound played is
         always cut-off after a few frames (due to how sm64 resets the sound
         banks after loading a level).

Added SOUND_*_LETS_A_GO and SOUND_*_OKEY_DOKEY sounds for each playable
    character as Bass samples.
    Character Bass sounds work the same way as vanilla sounds (i.e. can be
    played with play_character_sound), but they cannot be prematurely stopped
    by sm64 sound banks shenanigans.
    This fixes the cut-off for both the star select and the castle grounds
    entry, plays the sound corresponding to the player's character, and doesn't
    need to extend or edit the sound table.

DynOS can detect texture duplicates when generating a bin or lvl file.
    When a duplicate is detected, the name of the original texture node is
    written instead of the whole PNG data, decreasing significantly the
    resulting file size.
2022-05-19 16:40:45 -07:00
Isaac
a1ac136258
change text depending on if you are client or server (#92) 2022-05-17 16:24:56 -07:00
MysterD
897f6712a3 Reset hardcoded values on disconnect 2022-05-17 01:22:45 -07:00
PeachyPeach
27db236b5d
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
MysterD
8200b17560 Prevent rendering mirror players - fix crash in mirror room 2022-05-14 02:46:39 -07:00
MysterD
5e86a3e9ac Fix crash when loading custom audio on client 2022-05-13 23:27:49 -07:00
Agent X
4bc13ef275
djui_hud_get_raw_mouse_x/y, djui_hud_set_mouse_locked (#91) 2022-05-13 19:55:47 -07:00
EmeraldLoc
d8e669d9d3
Made network_description/player_description hold 1 extra character (#90) 2022-05-13 19:55:38 -07:00
MysterD
933914d984 Add djui_hud_world_pos_to_screen_pos, and render interpolated rect/texture 2022-05-13 19:54:49 -07:00
MysterD
2fd452059b Make red coin star spawn on late join 2022-05-11 18:22:40 -07:00
MysterD
d2f2fa83cf Prevent packet processing when disconnected 2022-05-11 18:15:46 -07:00
MysterD
ceaf41ae14 Set discord network system on shutdown 2022-05-11 18:11:53 -07:00
MysterD
ad09ecd8ef Prevent joining a Discord lobby when you're already hosting 2022-05-11 18:10:27 -07:00
MysterD
37fb101e05 Do more Discord API cleanup on network shutdown 2022-05-11 01:33:56 -07:00
MysterD
a8b94fd225 Merge branch 'coop' of github.com:sm64ex-coop-dev/sm64ex-coop into coop 2022-05-11 01:28:36 -07:00
MysterD
85ad7ed201 Clear network players on disconnect 2022-05-11 01:27:14 -07:00
Isaac
02b99d0443
Crash fix (#87) 2022-05-10 21:20:40 -07:00
Isaac
f552e98cd4
Prevent spoofing moderator packets (#86) 2022-05-10 02:27:29 -07:00
MysterD
780249ab21 Moderator cleanup 2022-05-09 23:20:07 -07:00
Isaac
701fddf4dd
Moderator (#80) 2022-05-09 23:11:39 -07:00
MysterD
c7cfa1be54 Merge branch 'audio' into unstable 2022-05-08 16:41:05 -07:00
MysterD
befd012d7b Cleaned up mod_load_files() 2022-05-08 16:34:10 -07:00
MysterD
f2c032c6d8 Specify filetypes in audio folder, add audio_custom_shutdown() 2022-05-08 15:44:04 -07:00
PeachyPeach
94c531272f
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
a722afe122 Various audio fixes, updated audio example 2022-05-08 04:32:18 -07:00
MysterD
725e26fe83 Make bass sound interface easier to handle 2022-05-08 04:04:14 -07:00
MysterD
034ada738c Re-ran autogen 2022-05-08 00:29:17 -07:00
Beyley Thomas
b8553162c2
Add basic Bass audio engine (#58) 2022-05-08 00:25:09 -07:00
MysterD
6da950dc52 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-05-07 21:16:04 -07:00
MysterD
8eb0a7d838 Fix custom textures with EXTERNAL_DATA 2022-05-07 21:15:38 -07:00
PeachyPeach
68e1b72b99
3-digits orange numbers; Fixed red coins and secrets bugs; Correct red coins display during pause (#82)
Modified number_geo to allow it to display orange numbers from 0 to 999.
    Edited red coins/secrets code:
        Added two fields in the Area struct: numRedCoins and numSecrets
        The number of red coins/secrets in every area is computed during level script processing
        Removed the useless global gRedCoinsCollected
    These changes fix the following bugs:
        Wrong sound effect played and incorrect number displayed when there is more than 8 red coins/5 secrets
        Desynced red coins/secrets counter when going from an area to another
        Remotely spawning red coins/secrets stars in other areas without collecting all red coins/secrets
    Pausing the game now shows the correct number of collected red coins / the total number of red coins in the current area.
2022-05-07 19:09:37 -07:00
MysterD
83c3e03231 Bump max mod size to 35MB 2022-05-07 17:41:20 -07:00
MysterD
dec1fb9665 Prevent mod cache from MD5'ing every file on every boot 2022-05-07 17:03:35 -07:00
MysterD
52c863fb36 Bump version 2022-05-06 22:09:30 -07:00
MysterD
6a4f64027c Make the DynOS button more generic 2022-05-06 22:09:14 -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
327d97ad06 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-05-04 00:14:42 -07:00
MysterD
2e57e001d4 Another snow crash fix 2022-05-04 06:26:40 -07:00
MysterD
0b33a26960 Possible fix for crash handler 2022-05-04 06:00:46 -07:00
MysterD
4b15338536 Another possible fix for snow crash 2022-05-04 05:50:30 -07:00
MysterD
7576dfbc7c Possible fix for crash in gfx_texture_cache_lookup() 2022-05-03 22:11:44 -07:00
MysterD
7868a61d6a Add null checks to initiate_delayed_warp() 2022-05-03 22:08:30 -07:00
MysterD
ee032fe123 Possible fix for snow crash 2022-05-03 22:01:06 -07:00
Isaac
7d82923aa4
Fix headless server compile (3) (#78) 2022-05-02 19:45:32 -07:00
Agent X
b972bb1be4
Add surface_terrains.h to constants (#77) 2022-05-02 17:31:55 -07:00
Agent X
6466fbe457
camera_freeze, camera_unfreeze, djui_hud_get_mouse_x, djui_hud_get_mouse_y, set_override_fov, set_override_near, set_override_far (#74) 2022-04-30 17:36:38 -07:00
PeachyPeach
8812fbac8b
HOOK_ALLOW_INTERACT; new HUD functions (#73)
Added new hook: HOOK_ALLOW_INTERACT:
        Called before Mario interacts with an object. Return true to allow the interaction.
        The hook signature is bool function(MarioState, Object, InteractionType)

    Added new HUD constants:
        enum HudDisplayValue:
            HUD_DISPLAY_LIVES
            HUD_DISPLAY_COINS
            HUD_DISPLAY_STARS
            HUD_DISPLAY_WEDGES
            HUD_DISPLAY_KEYS
            HUD_DISPLAY_FLAGS
            HUD_DISPLAY_TIMER
        enum HudDisplayFlags:
            HUD_DISPLAY_FLAGS_NONE
            HUD_DISPLAY_FLAGS_LIVES
            HUD_DISPLAY_FLAGS_COIN_COUNT
            HUD_DISPLAY_FLAGS_STAR_COUNT
            HUD_DISPLAY_FLAGS_CAMERA_AND_POWER
            HUD_DISPLAY_FLAGS_KEYS
            HUD_DISPLAY_FLAGS_UNKNOWN_0020
            HUD_DISPLAY_FLAGS_TIMER
            HUD_DISPLAY_FLAGS_EMPHASIZE_POWER

    Added new HUD functions:
        s32 hud_get_value(enum HudDisplayValue type)
        void hud_set_value(enum HudDisplayValue type, s32 value)
        void hud_render_power_meter(s32 health, f32 x, f32 y, f32 width, f32 height)
2022-04-30 17:33:38 -07:00
MysterD
a0e15a63db Check for ACT_FLAG_INTANGIBLE in passes_pvp_interaction_checks() 2022-04-30 17:28:02 -07:00
MysterD
121ae62d4c WIP: uncapped framerate 11 2022-04-30 17:25:47 -07:00
MysterD
26718d60d6 Fix remote player pole position 2022-04-30 17:11:18 -07:00
MysterD
7c3006025c WIP: uncapped framerate 10 2022-04-30 17:11:09 -07:00
MysterD
8f35305d33 Bump version 2022-04-29 22:13:16 -07:00
MysterD
180bf952b1 Make djui run at 60fps in the pause menu again 2022-04-29 21:59:09 -07:00
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
5983285e4b Created a minor version number 2022-04-23 15:55:26 -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
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
d73216a899 Fixed rare crash in geo_process_node_and_siblings 2022-04-23 01:12:12 -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
df294c0f64 Fix up DynOS actor override 2022-04-22 18:57:26 -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
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
MysterD
d0c8b2f100 Bump version 2022-04-20 22:11:05 -07:00
MysterD
bdca8006ca Only have interactions happen for the local player 2022-04-20 22:10:52 -07:00
MysterD
4b63a16056 Added passes_pvp_interaction_checks() 2022-04-20 18:27:34 -07:00
MysterD
186149b2dd Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-04-20 11:22:18 -07:00
MysterD
18d7140954 Add headPos to marioBodyState 2022-04-20 18:21:36 -07:00
137329506980462592
8e75268c04
Ice color palettes (#66)
Ice color palettes

Co-authored-by: MysteryMeatwad <61129329+MysteryMeatwad@users.noreply.github.com>
2022-04-20 11:21:11 -07:00
PeachyPeach
9e5a45ecdd
Added lua profiler; Added useful object functions; Bug fixes (#65)
Added a basic lua profiler
        If the game is compiled with LUA_PROFILER=1, displays on screen the average execution time per frame of each active lua mod, in microseconds.

    Added object functions
        For some reasons, accessing the object fields obj.o* via lua is rather slow, and can drastically increase execution time of custom behaviors. For basic stuff like setting an object's velocity or moving it, some functions, missing from the original code, have been added:
        s32 obj_is_valid_for_interaction(struct Object *o): returns 1 if an object is valid for interaction, i.e. active, tangible and not interacted.
        s32 obj_check_hitbox_overlap(struct Object *o1, struct Object *o2): returns 1 if two objects hitboxes overlap. Doesn't check tangibility, only hitbox values.
        void obj_set_vel(struct Object *o, f32 vx, f32 vy, f32 vz): sets an object's velocity.
        void obj_move_xyz(struct Object *o, f32 dx, f32 dy, f32 dz): moves an object position by (dx, dy, dz).

    Bug fixes:
        Disable collisions with walls and ceilings after Mario exits a warp pipe to prevent softlocks in narrow places.
        Make the koopa shell exclamation box respawn after some time.
        Quicksand no longer downwarps and instant-kills Mario if he's shocked while being above it.
2022-04-20 11:20:45 -07:00
Isaac
950aeb0e28
update console help message (#68) 2022-04-20 11:19:00 -07:00
Prince Frizzy
8b9b33f0af
Some bug fixes. (#67)
* Some bug fixes.

Fix Bully Star Spawning Cutscene to be player dependent.
Add missing line to Makefile.
Fix compile error with Clang in save_file.c

* Fix DDD Chests Star spawining in the wrong location.
2022-04-20 11:18:17 -07:00
MysterD
2347ab61c1 Added HOOK_ON_OBJECT_RENDER 2022-04-19 22:36:47 -07:00
MysterD
78bda75e45 Massive DynOS refactor for performance/organization 2022-04-19 21:06:18 -07:00
MysterD
dd6f6c430e Refactor how objects set their models 2022-04-19 18:47:50 -07:00
MysterD
8f773ea887 Make DynOS texture lookup use a set for performance 2022-04-19 18:24:26 -07:00
MysterD
97f1182498 Allow custom levels to use any active mod's variables 2022-04-18 23:02:40 -07:00
MysterD
456ec2a2cc Duplicate path in cache 2022-04-18 22:16:14 -07:00
MysterD
cc79201adf Whoops 2022-04-18 22:03:37 -07:00
MysterD
46402d585c Even more mod cache fixes 2022-04-18 21:59:42 -07:00
MysterD
21dc525a75 Slight adjustment to script error message 2022-04-16 22:50:23 -07:00
MysterD
12ea360360 Display a message on screen when script errors are found 2022-04-16 22:47:16 -07:00
MysterD
ef5d1b222b More mod cache fixes 2022-04-16 22:46:29 -07:00
MysterD
a5da5dcb6d Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-04-16 20:39:17 -07:00
MysterD
33d200de07 Sanity check mod_cache_save 2022-04-16 20:38:19 -07:00
MysterD
c25bf4c8d3 Check hook return types before using them 2022-04-16 20:27:51 -07:00
Prince Frizzy
bba1b39424
Matrix Code Cleanup. (#64) 2022-04-16 19:48:40 -07:00
Prince Frizzy
f51f1d6c4a
Merge in small changes. (#63) 2022-04-16 19:12:12 -07:00
MysterD
42f2a8d289 Maybe fix mac idk 2022-04-16 15:46:05 -07:00
MysterD
cea41c95e0 Maybe fix mac 2022-04-16 15:30:25 -07:00
MysterD
2bcf5ea851 Audio fixes 2022-04-16 22:04:18 -07:00
MysterD
0c2f9e86f6 Fix ext bounds warnings 2022-04-16 21:38:37 -07:00
MysterD
d63d6a1ca5 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-04-16 21:35:13 -07:00
MysterD
a68cf17080 Adjust extended bounds values 2022-04-16 21:34:49 -07:00
MysterD
d08507edbb Yet another mod cache fix 2022-04-16 21:21:31 -07:00
MysterD
bd63218e9a more 2022-04-16 14:28:15 -07:00
MysterD
ad9e8995d7 Frantic fixing 2022-04-16 13:45:45 -07:00
MysterD
202315f260 Rewrite of hash/cache system 2022-04-16 13:05:10 -07:00
MysterD
55850aa828 Force loading order on hash/normalize path 2022-04-16 00:36:30 -07:00
MysterD
6b67c983ec exposed sequence ids to lua 2022-04-15 21:51:18 -07:00
MysterD
afbc268b61 Fix memory corruption 2022-04-15 21:47:47 -07:00
MysterD
2e1bb3830d Fix broken clock 2022-04-15 19:34:47 -07:00
MysterD
ace1bb671b Fix warnings 2022-04-16 02:24:15 -07:00
MysterD
c996f7b481 Prevent crashes when executing an unimplemented action 2022-04-15 18:36:45 -07:00
MysterD
fbce5f23c6 Added ability to set a level to skip credits, fixed SM74 bugs 2022-04-15 18:33:10 -07:00
MysterD
5a260a2840 Fix sequence buffer overrun 2022-04-15 18:32:36 -07:00
MysterD
8d2e732243 Revert "Prevent bettercam from zooming in until player is fully obscured"
This reverts commit 250e97aed2.
2022-04-15 12:09:41 -07:00
MysterD
d4d24ab114 Fix crash in cutscene_enter_painting 2022-04-15 18:26:55 -07:00
MysterD
c9ff077ece Prevent chat messages on load from crashing 2022-04-15 18:23:46 -07:00
MysterD
250e97aed2 Prevent bettercam from zooming in until player is fully obscured 2022-04-14 21:27:31 -07:00
MysterD
6b46a04030 Fixed wiggler dialog crash 2022-04-14 19:40:37 -07:00
MysterD
105907cd71 Made PVP stunlocks harder 2022-04-14 18:28:08 -07:00
MysterD
bf435d5aa9 Fixed knockback direction 2022-04-14 18:25:42 -07:00
MysterD
1d7dfe4d3c Reset squish settings on spawn 2022-04-14 18:14:10 -07:00
MysterD
f5e19541e8 Fix crash in bhv_rotating_clock_arm_loop 2022-04-14 00:57:02 -07:00
MysterD
7fc7acbc2e Mouse controlled camera no longer affects main menu camera 2022-04-14 00:54:32 -07:00
MysterD
1559f4db0b Bowsers BITDW ground tremor now affects all players 2022-04-14 00:49:55 -07:00
MysterD
b18a0d416d Fixed tumbling bridge desyncs 2022-04-14 00:45:16 -07:00
MysterD
bf315f266f Fix memory corruption in sound init 2022-04-13 20:36:52 -07:00
MysterD
757cad4fbc Fix warnings with EXTERNAL_DATA 2022-04-13 19:50:19 -07:00
MysterD
1508f07fef Added actor textures to dynos builtin list; added shadow_spike_ext 2022-04-13 19:13:25 -07:00
MysterD
9793b56f84 Fixed crash in act_caught_in_whirlpool 2022-04-13 01:37:07 -07:00
MysterD
ce52fe4c1d Fixed crash in network_receive_area 2022-04-13 01:34:19 -07:00
MysterD
254486a39f Fixed crash in haunted bookshelf manager 2022-04-13 01:30:53 -07:00
MysterD
ab933f250e Fixed crash when pausing in unexpected courses/acts 2022-04-13 01:29:41 -07:00
MysterD
9310370d61 Fixed crash in bhv_animates_on_floor_switch_press_loop 2022-04-13 01:14:25 -07:00
MysterD
f66530dd17 Have levels automatically clean up their loaded graph nodes 2022-04-13 01:09:53 -07:00
MysterD
81870df88b Remove certain default Lua functions 2022-04-13 00:38:01 -07:00
MysterD
9653a19c7d Improve rom hack camera's collisions in tight spaces and focus underwater. Add HOOK_ON_SET_CAMERA_MODE 2022-04-13 00:10:50 -07:00
MysterD
e12c7a9640 Merge branch 'level-scripts' into unstable 2022-04-12 21:58:41 -07:00
MysterD
7c54f006d1 Remove discord asserts 2022-04-12 21:57:03 -07:00
MysterD
bf3c3bdccc More fixes 2022-04-12 19:39:48 -07:00
MysterD
c5c11a5a40 More work on mod hashing/caching 2022-04-12 19:25:06 -07:00
MysterD
97a9360529 Added mod hashing/caching to prevent re-downloading the same mods 2022-04-12 18:38:53 -07:00
MysterD
8a0cd66849 change how downloaded directory mods are saved 2022-04-11 23:33:21 -07:00
MysterD
f2e8683331 Fix downloads 2022-04-11 23:22:43 -07:00
MysterD
cdb1bbe92a Fix DynOS vertex offset writing 2022-04-11 22:54:36 -07:00
MysterD
f2f911e5b0 Clang/mac fixes 2022-04-11 21:43:55 -07:00
Isaac
f75cffb158
Small changes (#60)
Prevented camera mode from being reset when someone else bubbles
+ more
2022-04-11 21:25:58 -07:00
MysterD
b4f87e7a50 fix camera change 2022-04-11 21:09:58 -07:00
MysterD
431af75d88 Add a vanilla-like camera for romhacks 2022-04-11 21:04:15 -07:00
MysterD
77bace907c Fixed incorrect progress for downloading 2022-04-11 19:34:28 -07:00
MysterD
499681ff8d Fix custom sounds in SM74 2022-04-10 22:48:31 -07:00
MysterD
f8ffc23422 Made downloads significantly faster 2022-04-10 21:53:58 -07:00
MysterD
b60b5e3c07 Possible fix for init_mario_after_warp() crash 2022-04-10 18:19:15 -07:00
MysterD
2b7f12efbe Fix fanfare spam in sm74 2022-04-10 18:15:22 -07:00
MysterD
9cf97f3406 Quick fix for model loading 2022-04-10 16:35:53 -07:00
MysterD
d92c9dcfd4 Rewrote extended model loading code. Should (hopefully) fix floating player models replacing stars 2022-04-10 16:19:07 -07:00
MysterD
ef4a83dc88 Quick fixes for test 2022-04-10 10:11:13 -07:00
MysterD
d7e57003f1 Bump version 2022-04-10 09:56:56 -07:00
MysterD
2c187bba45 Added default volume support for custom sequences 2022-04-10 09:47:17 -07:00
MysterD
9dc78a0971 Added support for custom music 2022-04-10 09:11:45 -07:00
MysterD
7de32ee5bb Add SM74's geo_choose_area 2022-04-10 03:07:55 -07:00
MysterD
957e03cd81 Added HOOK_GET_STAR_COLLECTION_DIALOG 2022-04-10 02:44:11 -07:00
MysterD
958b04378c Add exit castle warp params to Lua 2022-04-10 02:29:44 -07:00
MysterD
15d6dc3a9c Allow ability to disable vanilla course-specific settings for camera 2022-04-10 01:55:11 -07:00
MysterD
3db42f1700 Allow coop mods to use the backup save slot independently of the normal one 2022-04-10 00:30:47 -07:00
MysterD
653ab58a5d Allow course names/acts to be changed from Lua 2022-04-09 23:28:36 -07:00
MysterD
c75e71f24e Unhardcoded all behavior dialogs, allowed replacement of dialogs 2022-04-09 19:50:50 -07:00
Prince Frizzy
b230d63b25
Add Preload Option to the Settings. (#59)
* Add preloading texture option to the Display GUI.
2022-04-09 02:02:42 -07:00
MysterD
98f02458e3 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
defb7dc830 Made trajectories overridable from Lua 2022-04-08 23:01:41 -07:00
MysterD
ef63435bc1 Un-hardcoded vanilla trajectories 2022-04-08 21:01:17 -07:00
MysterD
72584d5552 Refactored StarPositions 2022-04-08 19:46:01 -07:00
MysterD
41e8b80f97 Fix download of levels 2022-04-08 19:42:51 -07:00
MysterD
37367a9756 Made the entry level configurable by Lua 2022-04-08 19:39:22 -07:00
MysterD
403bf30be9 Added custom level script overrides, warps work now 2022-04-08 19:29:16 -07:00
MysterD
1a3bd3c685 Fixed up collision bug, added collision file validation, allowed lua to get builtin collisions 2022-04-08 19:17:57 -07:00
MysterD
18835a588a Split dynos_misc stuff into mgr files 2022-04-08 08:18:06 -07:00
MysterD
5baf650dd2 Function pointer cleanup 2022-04-08 01:46:29 -07:00
MysterD
11e07d832e Merge branch 'level-scripts' of github.com:sm64ex-coop-dev/sm64ex-coop into level-scripts 2022-04-08 00:54:44 -07:00
MysterD
6a7712b1c8 Allow Lua to adjust default star spawn positions 2022-04-08 00:37:20 -07:00
MysterD
5eb6122af2 Allow Lua to adjust default star spawn positions 2022-04-08 00:07:06 -07:00
MysterD
2fda92a8de Added vanilla lvl cols to level gen, changed how pointer offsets are saved 2022-04-07 23:06:10 -07:00
MysterD
8085f53e5a Added support for SM76's JUMP_AREA, added missing lvl geos, reordered parsing 2022-04-07 18:34:44 -07:00
MysterD
4956f0dd95 Fixed token corruption in DynOS, added support for runtime LOAD_MODEL_FROM_GEO 2022-04-07 08:21:19 -07:00
MysterD
3731ab31af Add more bhv functions and a func to ge tthe current save 2022-04-07 01:17:48 -07:00
MysterD
4aff26cf27 Added support for known models and unknown behaviors for level gen 2022-04-06 23:10:39 -07:00
MysterD
2187e7b4b3 Added behavior actions for rom hacks 2022-04-06 18:36:15 -07:00
MysterD
6751829f91 Adjustments for Lua/Mods 2022-04-06 18:24:50 -07:00
MysterD
b5b9d509e8 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
a58130b9f6 Added extended bounds 2022-04-06 08:40:22 -07:00
MysterD
5653a4f20d Merge branch 'unstable' into level-scripts 2022-04-06 01:39:15 -07:00
MysterD
8e7f0e2ea9 Fix warning 2022-04-06 01:39:02 -07:00
MysterD
52e705c9d8 Merge branch 'unstable' into level-scripts 2022-04-06 01:36:33 -07:00
Altiami
b71c0b4b83
Return TRUE for interactions with Power Stars when Non-stop mode is enabled (#57) 2022-04-06 01:14:47 -07:00
MysterD
cba22bc73d Merge branch 'level-scripts' of github.com:sm64ex-coop-dev/sm64ex-coop into level-scripts 2022-04-05 23:00:20 -07:00
MysterD
78a2e17d7c Added support for custom skyboxes in DynOS level gen 2022-04-05 22:56:03 -07:00
Agent-11 / Agent X
746dd50c5c
Add get/set_environment_region (#56)
Set the water height with a function. Also added an example for it in the documentation.
2022-04-05 15:53:16 -07:00
Prince Frizzy
73df85276e
Add support for dynamic water regions. (#55)
* Add support for dynamic water regions.
2022-04-05 13:44:05 -07:00
MysterD
abce3b3afd Added ability for DynOS levels to call into lua for custom objects 2022-04-04 18:16:36 -07:00
PeachyPeach
95f60fd113
Set loading order of mods files to alphabetical; Fixed a bug with downloaded mod folders (#54)
Mods as a directory of files depend on loading order for them to work
properly. Currently, the loading order is basically undefined behavior
and unpredictable. The function mod_set_loading_order is here to
specify this order. By default (and for now), the order will be
alphabetical and will follow the ascii table values, meaning digits
come before capital letters and lowercase letters.

Fixed a bug with mods as directories of files when they are downloaded.
The bug was the following: If two selected mods have files with the
same relative filename, they overwrite each other when downloaded,
causing file corruption and making the client game crash when loaded.
To fix it, the mod's directory name is appended to every .lua filename,
so each file has a unique filename when downloaded.
2022-04-04 13:43:29 -07:00
MysterD
32388bf6ff All vanilla levels can be compiled through DynOS now 2022-04-04 01:11:02 -07:00
MysterD
046c595f92 More progress toward custom DynOS levels 2022-04-02 15:14:04 -07:00
Isaac
87aa18ef65
Credits skip (you can merge this now) (#52) 2022-03-31 01:52:28 -07:00
MysterD
36c1d52e1f Fixed DynOS saving/loading with spaces in pack name 2022-03-31 00:21:48 -07:00
MysterD
7aab487adb Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-31 00:13:10 -07:00
MysterD
8a7097b802 Refactor coop-specific DynOS code 2022-03-30 23:05:53 -07:00
Isaac
a9c1c9b4e4
Credits skip (#50)
Press the start button to skip the credits.
Works during ACT_END_PEACH_CUTSCENE and ACT_CREDITS_CUTSCENE.
2022-03-30 21:45:37 -07:00
MysterD
34d28ffb3c Ran autogen 2022-03-30 20:03:59 -07:00
MysterD
d049c647dd Allow Lua mods to prevent exit to castle/exit course 2022-03-30 20:03:22 -07:00
MysterD
0e50998a39 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-30 19:26:06 -07:00
Prince Frizzy
e52173f109
Bomb-Omb Buddy sanity improvement (#51) 2022-03-30 19:25:21 -07:00
Prince Frizzy
a1af1c2ffb
Grand star fix and etc (#47)
A ton of Bowser fixes, Grand star included.

Fixed Grand Star cutscene syncing.
Partially fix grand star syncing after joining late.
Fix Bowser's intro cutscene always playing even if you joined after the first person.
Hopefully fixed Bowser's state getting interrupted mid-fight just a bit.
Add nothing state sanity check, and send object reliability when cutscene is finished.
Fix ownership override.
2022-03-30 19:03:53 -07:00
MysterD
71dd7b8d97 Resynchronized WDW water level and water diamonds 2022-03-30 18:10:36 -07:00
MysterD
9d16605c3b Force drop objects on instant warp 2022-03-29 22:34:48 -07:00
MysterD
51c1af7c68 Allow lua's network_init_object() to use 16 and 8 bit fields 2022-03-29 21:42:41 -07:00
MysterD
ddcb9ad6d3 Fixed 'skip intro' setting. Intro lakitu spawns when he's supposed to now 2022-03-29 21:22:08 -07:00
MysterD
2115e4358d Fix compile errors / run autogen 2022-03-29 21:12:42 -07:00
MysterD
dec4d0c51c Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-29 21:07:28 -07:00
MysterD
8f50ee17c9 Fixed critical flaw with txEventId/rxEventId, fixed up controllable platform 2022-03-29 20:57:47 -07:00
Prince Frizzy
54a6135cb9
Cleanup Deluxe (#45) 2022-03-29 20:45:56 -07:00
Isaac
6fa9a0f3f5
Fix camera for bubble in water (#49)
When a player dies in water, the camera continues to use the camera for under water even when you exit the water with the bubble. This commit fixes the issue.
2022-03-29 20:04:01 -07:00
MysterD
d76f060af0 Display the correct hidden number count on late join 2022-03-29 19:49:36 -07:00
MysterD
ee8257475d Properly forget sync objects even if their syncDeathEvent is false 2022-03-29 19:47:11 -07:00
MysterD
bf7066e9e3 Synchronized tumbling bridge for late joins 2022-03-29 19:34:48 -07:00
MysterD
45286eb46e Specify sync object field size 2022-03-29 19:29:57 -07:00
MysterD
ed53a5422c Desynchronize bouncing fireball spawner - just too noisy 2022-03-29 19:04:50 -07:00
MysterD
5455f59ad5 Prevent LLL puzzle from dropping more coins on late join 2022-03-29 18:59:05 -07:00
MysterD
84ab07bde6 Only send respawn info for macro objects when they are altered 2022-03-29 18:57:48 -07:00
MysterD
d17aa69052 Synchronized behParams for macroObjects on late join 2022-03-29 18:52:53 -07:00
MysterD
217a969208 Sync'd bobomb coin status on late join 2022-03-29 18:46:23 -07:00
MysterD
c855dd9855 Sync'd wooden posts coin status on late join 2022-03-29 18:45:17 -07:00
MysterD
167334973e Fix Discord's activity max players 2022-03-29 18:31:25 -07:00
MysterD
be30578bf3 Allow dpad to navigate DJUI menus 2022-03-29 18:27:42 -07:00
MysterD
a34293a58a Bump version 2022-03-29 18:20:45 -07:00
MysterD
8df2f4efae Only have local player face camera during stardance 2022-03-29 18:20:13 -07:00
MysterD
bc11f06136 Remove player's bubble when they leave the area 2022-03-29 18:17:37 -07:00
MysterD
0a5d4cd215 Fix softlock when player is grabbed by enemy 2022-03-28 18:57:52 -07:00
MysterD
26bd3d67c5 Prevent keys from typing when bound to chat 2022-03-28 18:42:46 -07:00
MysterD
33579b1a65 Prevent alt+enter from opening chat 2022-03-28 18:36:31 -07:00
MysterD
3e9ceb53b4 Reduce round-trip time during downloads by 8x 2022-03-28 01:09:06 -07:00
MysterD
d74f5cfe61 Add custom collisions to DynOS/Lua 2022-03-28 01:02:33 -07:00
MysterD
0bb48cb6e7 Rewrote structure of packet_level_area_inform - should fix 'Peach's Castle' bug 2022-03-27 18:25:04 -07:00
MysterD
61a1d1fc9c Fix errors pointed out by clang 2022-03-27 17:25:39 -07:00
MysterD
d78c87c06e Fix compile error 2022-03-27 00:16:23 -07:00
MysterD
7afc5d7d18 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-26 23:58:24 -07:00
MysterD
47d2fe30a7 Made Lua object custom fields allocate deterministically 2022-03-26 23:58:04 -07:00
Isaac
a217eea63b
Improvements to debug move (#44) 2022-03-26 22:46:32 -07:00
Prince Frizzy
0fdd721241
Cleanup (#43)
* Rewrite a bit of get_level_name() and a bunch of cleanup.
2022-03-26 22:13:57 -07:00
MysterD
3f3936e874 Make Discord update the activity if player count changes 2022-03-26 01:21:36 -07:00
MysterD
de048928ce Added ability for Lua mods to adjust gServerSettings 2022-03-26 01:08:15 -07:00
MysterD
4a9e618efe Add set_mario_y_vel_based_on_fspeed() to lua 2022-03-26 00:01:13 -07:00
MysterD
b7be386200 Add gLakituState to Lua 2022-03-25 23:58:10 -07:00
MysterD
4d9ff3a3b1 Added a bunch of camera functions to Lua 2022-03-25 23:46:37 -07:00
MysterD
322e4983ae Add HOOK_ON_PAUSE_EXIT 2022-03-25 23:06:14 -07:00
MysterD
c0b6590fcd Separate ptrData from rawData on all platforms 2022-03-25 23:05:58 -07:00
MysterD
6ab992446d Fixed respawners 2022-03-25 22:45:40 -07:00
MysterD
506d7dad55 Fixed crash in geo_remove_child() 2022-03-25 22:19:29 -07:00
MysterD
033b11ac22 Make new timers immutable 2022-03-25 21:39:03 -07:00
MysterD
5b45e44b81 Improve sanity check for torsoPos (fixes PVP when using non-player-models) 2022-03-25 21:36:46 -07:00
MysterD
9ab1021f33 Fixed area desync 2022-03-25 21:19:36 -07:00
MysterD
d6aa5531cc Add additional info to level area inform packets 2022-03-24 20:52:19 -07:00
MysterD
3218f771e6 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-24 19:30:53 -07:00
MysterD
67bffe8125 Bump version 2022-03-24 19:30:50 -07:00
Isaac
65df754b09
Add save file flag functions to lua api (#41) 2022-03-24 19:30:15 -07:00
MysterD
bac952c370 Make players invincible to pvp attacks on area load 2022-03-24 18:16:26 -07:00
MysterD
8bc0abb6a2 Remove spawn object field remembering system. Broken and unnecessary 2022-03-24 18:08:05 -07:00
Isaac
acd14c2718
Fixed desync for late joiners when using Non-stop mode and made bubble when no lives remaining kick you out of the level (#40) 2022-03-23 20:48:06 -07:00
MysterD
cb8bd36698 Revert "Revert "Fix smlua_field_valid for Lua""
This reverts commit e371ff272b.
2022-03-22 20:31:07 -07:00
MysterD
473c318f71 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-22 20:26:58 -07:00
MysterD
aa5ce47f18 Prevent debug mode from corrupting Lua's stack when sending sync table 2022-03-22 20:26:54 -07:00
Isaac
989e304552
Made slide-kick minimum speed a bit more reasonable (#38)
* Made slide-kick minimum speed a bit more reasonable

* Changed the speed minimum to 15

* Minor adjustment

* Fix spelling and punctuation.
2022-03-22 19:51:25 -07:00
Prince Frizzy
a89aa6ced8
A load of fixes and cleanup.. (#39)
Red Coins will now properly play the cutscene for who collected the last red coin.
Secrets will now properly play the cutscene for who collected the last secret.
Treasure Chests will now only play the star cutscene for the person who opened the last chest.
Properly named some unknown Treasure Chest fields.
The Chain Chomp Chain should now properly be despawned for late joiners.
Improved the Big Boo's Haunt Merry-Go-Round checks for Mario.
2022-03-22 19:50:13 -07:00
MysterD
2cf7a87ab4 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-21 19:47:23 -07:00
MysterD
bd2aac290e Give generate remote base path a return value. wtf 2022-03-21 19:47:10 -07:00
MysterD
e371ff272b Revert "Fix smlua_field_valid for Lua"
This reverts commit 5b69173d0a.
2022-03-21 22:43:58 -07:00
MysterD
5b69173d0a Fix smlua_field_valid for Lua 2022-03-21 15:20:54 -07:00
MysterD
823f28acd3 Fix compile error 2022-03-21 13:02:16 -07:00
MysterD
03dcb25273 Check types for spawn object transmission 2022-03-21 12:49:37 -07:00
MysterD
a35165bd9f Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-21 12:38:25 -07:00
MysterD
0fc592a430 Made bowser bomb use extended model loading 2022-03-21 12:36:01 -07:00
MysterD
0d2f9d1e8f Fixed crash in dist_between_objects() 2022-03-21 12:31:37 -07:00
MysterD
c088d6f7a4 Fixed crash in find_floor_from_list() 2022-03-21 12:29:30 -07:00
MysterD
a767df7e73 Fix crash in init_mario_after_warp() 2022-03-21 12:27:16 -07:00
MysterD
9ae1a7c525 Fix crash in spawn_default_star() 2022-03-21 12:25:06 -07:00
Prince Frizzy
74be5ad3d6
Swimming interference fix (#37) 2022-03-21 11:55:36 -07:00
MysterD
41275835e7 Lua : remember up to 16 extra fields to send on spawn lua object 2022-03-21 11:45:19 -07:00
MysterD
9538c551e4 Lua Bugfix: send tables inside of sync tables on join 2022-03-21 00:15:19 -07:00
MysterD
db1c2dd758 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-19 00:59:06 -07:00
MysterD
c58702df93 Misc Lua fixes/enhancements
approach_s32 now stays within 32 bits
Fixed SOUND_ARG_LOAD
Added OBJ_COL_FLAGS_*
Added reset_rumble_timers
Added get_hand_foot_pos_*
Added get_water_surface_pseudo_floor
Adjusted new hooks to be called at the appropriate times
2022-03-19 00:56:59 -07:00
Prince Frizzy
579fa40524
Some small cleanup, And re-add generating the coop.map to the Makefile. (#36) 2022-03-18 21:31:04 -07:00
MysterD
2758b92f41 Added sanity checking to overlapping object fields 2022-03-17 21:42:04 -07:00
MysterD
622c9b79b1 Added discord IDs to /players chat command 2022-03-17 02:15:25 -07:00
MysterD
11649ce1d8 Added HOOK_ON_OBJECT_UNLOAD, HOOK_ON_SYNC_OBJECT_UNLOAD 2022-03-17 01:43:08 -07:00
Isaac
799e1e9f81
Prevented debug binds from working with Discord (#34) 2022-03-17 01:20:56 -07:00
MysterD
0cd2a91e9c Added allocate_mario_action() 2022-03-17 01:17:34 -07:00
MysterD
9c502da395 Update local networkplayer before calling level hooks 2022-03-17 00:03:57 -07:00
MysterD
7252d836a9 Added hooks: HOOK_ON_LEVEL_INIT, HOOK_ON_WARP, HOOK_ON_SYNC_VALID 2022-03-16 23:53:01 -07:00
MysterD
68f3203587 Allow people to disabled downloaded models (from mods) 2022-03-16 22:43:43 -07:00
MysterD
2804a48e4e Allow lua mods to override models, have DynOS generate bins 2022-03-16 21:26:29 -07:00
MysterD
7acfede111 Fix crash with mod folders that don't have actors 2022-03-16 09:36:14 -07:00
MysterD
fee9bfebfa Fix segfault when using defaultModsPath on Windows 2022-03-16 01:55:25 -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
MysterD
bac344b9f0 Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-16 01:12:03 -07:00
MysterD
41eef5fd2c Hook DynOS into mods when they're activated (custom models) 2022-03-16 01:11:48 -07:00
Prince Frizzy
bb8ead8681
Fix star cutscene playing for everybody with Klepto plus some cleanup. (#32)
* Fix star cutscene playing for everybody with Klepto plus some cleanup.

* Fix compile error.

* Fix pyramid elevator syncing, Hopefully fix pyramid top syncing, Grand Star partial working sync.

* Fix up the Grand Star code.
2022-03-16 00:05:28 -07:00
binarylol
a50b154bdb
change "B&R" to "Raspberry" (#33)
placeholder name i forgot to change lol
2022-03-15 23:30:21 -07:00
MysterD
05232615a6 Add portability check to mod filenames 2022-03-15 23:28:46 -07:00
MysterD
7d0cc7b693 Finish up new mod table system 2022-03-15 23:15:46 -07:00
MysterD
f880784f8e Transitioned Lua to new mod table system 2022-03-15 00:20:31 -07:00
MysterD
0983474429 More progress on mod table rewrite 2022-03-14 19:30:02 -07:00
MysterD
0a3d0b2033 Started rewriting the mod table 2022-03-14 18:18:14 -07:00
MysterD
edf06bede0 Added ability for mods to load custom geos 2022-03-14 00:11:36 -07:00
MysterD
0f5494d8a3 Fix indentation 2022-03-13 19:20:48 -07:00
binarylol
4123cf50f9
Add 5 New Palettes (#31) 2022-03-13 19:19:39 -07:00
MysterD
11f532b9e0 Fix warnings/compile errors on Linux 2022-03-13 18:45:42 -07:00
MysterD
60316c7bc9 Bump version to 21 2022-03-13 00:27:14 -08:00
MysterD
b695cbd55a Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-13 00:25:22 -08:00
Prince Frizzy
84aa5ad890
Fixes for multiple players getting a star cutscene, Even if they didn't spawn it. (#22)
* Fix up star cutscene issues.
2022-03-13 00:22:48 -08: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
9cdb95b10b Made kick-slide have a minimum speed to attack players 2022-03-12 23:47:17 -08:00
MysterD
3ce66ac312 Added hook: HOOK_ALLOW_PVP_ATTACK, disabled friendly fire in football 2022-03-12 23:43:47 -08:00
MysterD
4b41c3fd39 Fix Mac compile 2022-03-12 22:38:13 -08:00
MysterD
08d4818ba7 Added Lua definitions for autocomplete in visual studio code 2022-03-12 21:28:57 -08:00
MysterD
065ba58388 Shorten mod names when discord activity overruns 2022-03-12 20:52:12 -08:00
MysterD
14ba6ba5ce Fix Discord error when using a lot of mods 2022-03-12 20:41:02 -08:00
MysterD
da97153336 Fixed saving/loading of DynOS model pack settings 2022-03-12 17:00:06 -08:00
MysterD
4b0c0241e0 Fixed mod list incompatibility issue 2022-03-12 16:10:03 -08:00
Isaac
ee967c3096
Added an option to disable Popups for deaths and level exit/entry (#20) 2022-03-12 16:06:18 -08:00
MysterD
bf74076df8 changed default bind for 'X' to 'I' 2022-03-12 02:46:05 -08:00
MysterD
2e2f9ea7ac Added 'non-stop' mode option for speedrunners 2022-03-12 02:41:07 -08:00
MysterD
76522ed305 Made death animations/warps a lot less janky 2022-03-12 02:12:11 -08:00
MysterD
1cfd10ea03 Synchronized Bowser's scale, fixing join-after-bowser-death 2022-03-12 00:17:59 -08:00
MysterD
a5196e9dad Made Bowser 2 ride the platform again 2022-03-11 23:21:21 -08:00
MysterD
b0710da16a Made mod list panel work properly again 2022-03-11 21:53:46 -08:00
MysterD
929bf2322e Removed spawn offset when you're the only player there (speedrunners) 2022-03-11 21:43:54 -08:00
MysterD
8b377289a5 Remove unstable popup warning 2022-03-11 21:22:32 -08:00
MysterD
312c328865 Moved X/Y binds to extra controls menu, allowing C+Left/Right to reappear 2022-03-11 20:56:41 -08:00
MysterD
5544be21a3 Added get_temp_object_hitbox() to Lua API 2022-03-11 18:18:41 -08:00
MysterD
24df92fa48 Added DynOS warp functions to Lua API 2022-03-11 18:11:32 -08:00
MysterD
1c7451fcfc Prevent spawning objects from lua before the area is synchronized 2022-03-11 01:31:12 -08:00
MysterD
99c4498236 Added pages to mods and dynos menus 2022-03-11 00:17:20 -08:00
MysterD
b2de0ca35d Bumped version to 20 2022-03-10 20:19:13 -08:00
MysterD
9aa7a7588d Fixed lua event hooks sometimes attaching to the wrong mod entry 2022-03-10 20:18:54 -08:00
MysterD
e747f50f8b Compilation fixes 2022-03-10 20:07:50 -08:00
MysterD
64173ecf2a Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-03-10 19:25:33 -08:00
MysterD
bc0868e80e Implemented dynos model packs into configfile 2022-03-10 19:23:38 -08:00
MysterD
859feb530d Added ability for Lua to show/hide SM64 HUD 2022-03-10 18:33:52 -08:00
MysterD
497a250476 Allowed Lua mods to override player models and palettes 2022-03-10 18:23:25 -08:00
MysterD
e81808c314 Merge branch 'dynos' into unstable 2022-03-10 18:17:59 -08:00
MysterD
403a90e82b Added dynos model packs to djui interface 2022-03-10 18:16:12 -08:00
Prince Frizzy
85c54baa96
Fix compile error! You forgot this. (#18) 2022-03-10 14:06:26 -08:00
MysterD
f92857704d Ported the rest of DynOS, but left the options menu disabled 2022-03-10 01:18:53 -08:00