Commit graph

43 commits

Author SHA1 Message Date
ThePlayerRolo
ca6a3d1148 Allocate Sequence 2025-07-10 12:36:21 -04:00
Cooliokid956
3bfa75e32b
Miscellaneous Additions: Addendum (#723)
Some checks are pending
Build coop / build-ubuntu (push) Waiting to run
Build coop / build-windows (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
* More autogen work

- made the `Pointer_` classes into aliases instead so that they're actually associated with their true type
- "Total constants" metric is now accurate

* High Quality Master Volume

* Audio work

it's 12:55am and there are some bright flashes outside (lightning)

- cracked the code (interpreted the "Acc" in `tempoAcc`)
- added several functions that will help greatly in the Streamed Music department (you can now match sequenced music fading (transitions, eepy, etc.))
- introducing `gMasterVolume`! a variable that is only updated when it needs to be, theoretically improving performance (by some amount). this variable is used in many places in place of recalculations of the same number
- made it so that muting the game skips some audio processing (not the main process since that would linger after unmuting (not good))
- fixed an oversight where lua volumes were not taken into account when `audio_stream_set_volume`
- it's its 😁
- removed additional `#include "audio/external.h"`

it is 1:06am
gn

* Add mouse status functions

you can now check if mouse buttons were held, clicked, or released

* Sorting was a bad idea

disabled sorting for constants so that they are represented more closely to their original defines

* Expose playerlist page index

also noticed that sorting still sucks

* Minor (very important) detail

lalette

* Addressing the PeachyPeachSM64 reviews

* Return of the Forced 4:3 Mode

shoutouts to DISPLAY.FORCE_4BY3 for sticking through the toughest of times, waiting for this day to come

* Added scroll support

- Scrolling added to chat box (hold ctrl to scroll fewer lines, shift to scroll faster)
- Scrolling functions added to smlua

* Addressing the Isaac0-dev review + fixes

- mouse scroll is now accumulated
- djui_gfx_get_dimensions
- forced 4:3 won't kick in if the window isn't wide enough
- game now recognizes horizontal resizing when in 4:3 mode

* Run autogen

* gfx_get_dimensions

works just as well
2025-04-05 13:52:14 -04:00
Cooliokid956
efcfff210d
Miscellaneous additions (#711)
- Fixed script file path shortening for Windows in console errors (what I could at least, the one left unfixed is preprocessed and I can't mess with that)
- Adjusted audio sanity check messages to sound more natural
- 9 new functions added:

## `audio_stream_set_loop_points(audio, start, end)`
Sets an audio stream's loop points in samples, no longer requiring a hacky method to loop streams in mods

## `get_active_mod()`
Returns the mod currently being processed, can be used by mods with APIs to determine what they're being used by and react accordingly

## `get_area_update_counter()`
Returns `gAreaUpdateCounter`, can be used to determine various in-game statistics, as well as if the game is being updated

## Exposed several object pointers
`get_current_object()` to retrieve `gCurrentObject`
`get_dialog_object()` to retrieve `gContinueDialogFunctionObject`
`(get|set)_cutscene_focus()` to retrieve/assign `gCutsceneFocus`
`(get|set)_secondary_camera_focus()` to retrieve/assign `gSecondCameraFocus`
2025-03-24 07:31:06 +10:00
Radek Krzyśków
12c7540daf
Updated "smlua_audio_utils" to acknowledge the "configMuteFocusLoss" option (#391) 2024-12-27 17:57:11 -05:00
Isaac0-dev
34b78700c4 fix a crash while changing the volume 2024-10-08 16:04:41 +10:00
Isaac0-dev
4aa2a20f72
fixes, clean up and some new features (#259)
- Only inited `smlua_audio_utils` if needed, since there will probably be plenty of people who play without ever using mods with custom audio.
- Fixed the pause anywhere setting - this ended up not being fully accurate to ex-coop, which it was originally intended to be.
- Stopped regenerating dynos collision bin on start up every time therefore giving a slight start up speed boost for some people.
- Added a config file setting that lets people choose to compress dynos bins on startup (disabled by default).
- Fixed a warning that shows on non macs during compiling.
- Properly fixed the chat box focus.
- Made the public lobby rules panel "temporary".
- Added a cleaner loading screen design.
- Added an ex-coop theme easter egg, can only be activated from the config file.
- Cleaned up the Lua traceback logging, now shows the folder and file the error occurred in, rather than the full path.
- Added a way to set `gCheckingSurfaceCollisionsForCamera`, so mods can specify to surface finding functions to ignore `SURFACE_FLAG_NO_CAM_COLLISION` internally.
- Rewrote the way smlua pushes CObjects/CPointers to Lua. Now using the C Lua API entirely to connect to Lua.
	- Fixed a use-after-free bug that could easily crash the game through Lua (explained further in one of my comments below).
- Fixed a common crash in `audio_sanity_check`.
2024-09-12 19:09:01 +10:00
Agent X
594ff262bc a bunch of fixes (#216)
Nice job targeting the main branch Isaac

Co-Authored-By: Isaac0-dev <62234577+Isaac0-dev@users.noreply.github.com>
2024-07-17 08:37:42 -04:00
Prince Frizzy
1223c1b09c
Stop sounds before freeing them (miniaudio) 2024-07-15 14:51:56 -04:00
Agent X
3b6bc54c91 Small mod audio refactor 2024-06-25 10:10:19 -04:00
PeachyPeach
c4214ed2da
Prevent the game from caching downloaded WIP mods (#69)
* don't tmp or cache wip mods

* update
2024-06-23 11:54:07 -04:00
Agent X
fa2ffcdcb9 Readd 'loaded' field to mod audio for CS compatibility 2024-06-19 17:50:24 -04:00
Agent X
82cd4176a3 Fix the new Miniaudio audio_stream_set_position 2024-06-12 17:05:41 -04:00
Agent X
eb2033f9b0 Fix and improve custom audio stream volume code 2024-06-12 14:43:29 -04:00
Agent X
8bae9e2ec7 Change Lua volume control to 0-127 instead of 0.0-1.0 2024-06-11 19:10:54 -04:00
Agent X
cb729dc40a Make audio streams update volume 2024-06-09 10:26:51 -04:00
Isaac0-dev
bab8be49af
fixed a crash & memory leak from smlua_text_utils (#40)
* fixed a crash & memory leak from smlua_text_utils

* prevent autogen from exposing smlua_text_utils_shutdown

* forgot to push this
2024-05-13 19:38:53 -04:00
Isaac0-dev
4473bfffe9
removed bass, replaced with miniaudio (#8) 2024-03-23 16:14:53 -04:00
Agent X
58a3ed49f7 Revert "Add ability to set global note frequency scale"
This reverts commit de9c3c35b2.
2024-03-13 17:24:46 -04:00
Agent X
16a45a11d2 Raise max bass files from 128 to 256 2024-02-23 13:26:50 -05:00
Agent X
de9c3c35b2 Add ability to set global note frequency scale 2024-02-21 20:46:27 -05:00
Agent X
d7bad7dcdd HOOK_ON_PLAY_SOUND 2024-02-18 14:54:01 -05: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
4b8c40c734 Fix some audio corruption 2023-04-20 00:20:31 -07:00
SMS Alfredo
bb00d47cab
Sample Stop Functions (#224)
Adds in bassh_stop_sample for source and audio_sample_stop for Lua. These functions immediately stop whatever audio the specified sample is playing.

If used in tandem with #223, this allows you to create custom character voice clips without them ever overlapping with each other.
2022-11-02 19:51:34 -07:00
MysterD
618f468e06 Add HOOK_USE_ACT_SELECT ; increase MAX_AUDIO_OVERRIDE to 128 2022-08-04 01:12:16 -07:00
MysterD
26a465fd80 Close file pointers immediately after reading/writing 2022-06-04 17:33:45 -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
5e86a3e9ac Fix crash when loading custom audio on client 2022-05-13 23:27:49 -07:00
MysterD
f64cd4b8e2 Do a file type check on custom audio 2022-05-09 04:12:54 -07:00
MysterD
f2c032c6d8 Specify filetypes in audio folder, add audio_custom_shutdown() 2022-05-08 15:44:04 -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
174e3d97ed Made Lua errors show a backtrace for almost all cases 2022-04-22 23:31:25 -07:00
MysterD
2bcf5ea851 Audio fixes 2022-04-16 22:04:18 -07:00
MysterD
d08507edbb Yet another mod cache fix 2022-04-16 21:21:31 -07:00
MysterD
202315f260 Rewrite of hash/cache system 2022-04-16 13:05:10 -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
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