Commit graph

625 commits

Author SHA1 Message Date
dakrk
8baa6d2a20
Implement music attenuation on Linux
This is implemented by listening for event changes from MPRIS2 clients
over D-Bus. Unfortunately there is no good API for this nor a good way
to identify current player as there is on Windows, and as such we have
to track and queue them manually just to get a seemingly good enough
result. This also gives us the issue of needing to guess and manually
prioritise which player to use when we first start, as we cannot
determine when something before us started.

playerctld is preferred to be read on systems that have it available,
however that has the behaviour of setting its status to the most recent
change. Those who use this and have media key scripts use it would
likely be expecting such behaviour though.

(All my editors were eager to fix inconsistent CRLF's in the CMakeLists,
sorry)
2025-04-25 21:06:21 +01:00
Hyper
e4c43ae3b1
Make Bug Report issue template use separate required fields for specs (#1539)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-04-12 14:38:04 +01:00
Pollot
abd71bb3e2
Add a guide for dumping the game using a USB storage device (#1471)
* Update README dumping requirements and instructions
Include the option of using a USB storage device for dumping game files in the README.

* Add note to hard drive dumping instructions
Clarify that the instructions for dumping game files directly from the Xbox 360 hard drive differ from those for using a USB storage device by adding a note to the hard drive dumping guide.

* Add dumping guide for USB storage devices
Add a comprehensive guide for dumping the game using a USB storage device instead of a Hard Drive Transfer Cable.

* Apply suggestions from the review

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>

* Implement additional suggestions from the review
- Rename the file to ```DUMPING-USB-en.md```.
- Add Xbox 360 E to the note about incompatible consoles.
- Move the note under the Pre-requisites section.

---------

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>
2025-04-12 14:27:17 +01:00
Skyth (Asilkan)
325e4d34a0
Fix profiler crashing in the installer. (#1507)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-04-04 00:17:00 +03:00
Skyth (Asilkan)
1555b97b8a
Fix half pixel getting applied twice to reverse Z vertex shaders. (#1506) 2025-04-03 23:12:24 +03:00
Skyth (Asilkan)
5fca044662
Update version to v1.0.3. (#1492) 2025-04-03 21:55:21 +03:00
ĐeäTh
30aa528f84
Fix line splitting issues from localization changes (#1503)
* fix wrongly split lines from localization changes

* skip 0x200B line split guidance like new line if line starts with it
2025-04-03 20:49:40 +03:00
Skyth (Asilkan)
ff5aae2595
Fix persistent save data getting loaded before mods. (#1505)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-04-03 18:14:29 +03:00
Skyth (Asilkan)
21be4e17fb
Try creating the D3D12 device again if redirection to Vulkan fails. (#1504) 2025-04-03 16:02:30 +03:00
Skyth (Asilkan)
8370312454
Redirect Intel GPUs to Vulkan on auto graphics API mode. (#1491)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-03-30 19:06:03 +03:00
Skyth (Asilkan)
f7c823eeaf
Fix staffroll text getting cropped at narrow aspect ratios. (#1489) 2025-03-30 18:42:37 +03:00
squidbus
f5f92d0761
Prevent rendering ownership change between command lists. (#1486)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-30 15:53:11 +03:00
Skyth (Asilkan)
49d3b675ed
Implement a mechanism to survive from GPU driver crashes on Windows. (#1480)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-30 04:36:55 +03:00
Al. Lopez
b282cbc4a2
Steam Virtual Gamepad support / Steam Input sharing Device Info with SDL (#1086)
Some checks are pending
validate-internal / build (push) Waiting to run
* Experimenting Button Label

Experimenting a way to add a hint for Button Labels. It should attempt to fix the Nintendo Layout issue when using a Nintendo Switch controller

* Create c-cpp.yml

* Create cmake-multi-platform.yml

* Create apply-patch.yml

* removing the workflows

* added experimental Steam Virtual Gamepad support

* restoring notes for Button Labels.

* Initial Gamepad Hotplug Logic improvements

This changes the way how a Controller will be prioritized. By default: it'll always prioritize based on Player 1. It should play nicely with Steam Deck's internal inputs when Steam Input is active

* Lightbar detection when using multiple PlayStation controllers at the same time.

An attempt to remedy the Lightbar activation. While Player 2/3/4 will override the in-game lightbar event upon connection: it'll later revert back to the in-game event.

* Attempt to reduce Input leaking

To avoid "the Controller is leaking" situation, there's now a Gamepad stat management that should reset Controller state based on connected controller.

* Lightbar active fix when gamepad plugged first prior to game launch

Another attempt to fix the lightbar by redoing the controller state mangement. For some reason: the Lightbar gets disabled when a controller is already plugged prior to game launch. It reverts back to normal until the next game event.

* Revert "restoring notes for Button Labels."

This reverts commit ef4e37cb41.

* Reapply "restoring notes for Button Labels."

This reverts commit f3ddd80024.

* Moving all Gamepad Hotplug changes to separate branch

To ensure all Hotplug-related changes don't accidentally get leftover: this commit will revert all the back back to the accidental removal of Button Label's note.

* added SDL's GameController naming convention as Fallback

If EInputDeviceExplicit doesn't recognize a specific Controller Type or Device: it'll fallback to SDL's naming conventions. This helps troubleshooting Controller-related issues when using the debug console.

* Official device naming scheme for EInputDeviceExplicit

Changes some of EInputDeviceExplicit's names to match the device's official name (such as Nintendo Switch Pro Controller, Xbox Wireless Controller, Amazon Luna Controller, etc.)

* spacing formatting fix

* remove "SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS" hint

since #1045 will include it: we're gonna get rid of it on this code section to avoid conflicts.

* moved EInputDevice Unknown class to the top priority

* Replacing EInputDeviceExplicit with SDL_GameControllerName

Based on @hyperbx's suggestions: It'll look for SDL's Controller Name as opposed to EInputDevice's naming scheme.

* remove hid::GetInputDeviceName() from hid.ccp

Now that SDL_GameControllerName handles Controller naming conventions, the hid.ccp portion of GetInputDeviceName is no longer needed.

* Fix indentation

---------

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>
2025-03-29 21:38:44 +03:00
Hyper
6a50f9fc1f
Moved API to SWA submodule (#1326)
* Remove API sources

* Add SWA submodule
2025-03-29 21:25:24 +03:00
Skyth (Asilkan)
3d38fc1799
Update XenonRecomp submodule for the setjmp/longjmp fix. (#1458)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-28 22:38:23 +03:00
Skyth (Asilkan)
33b557e68b
Check if the 4 GB memory allocation failed. (#1459)
* Check if the 4 GB memory allocation failed.

* Update UnleashedRecomp/locale/locale.cpp

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>

* Update locale.cpp

* Add localizations.

* Fix installer not booting with the changes.

* Fix stale reference crash.

---------

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>
2025-03-28 22:38:07 +03:00
Al. Lopez
acf260af79
Face Button follows Positional Button layout instead of Labels (#1045)
* Experimenting Button Label

Experimenting a way to add a hint for Button Labels. It should attempt to fix the Nintendo Layout issue when using a Nintendo Switch controller

* added description for Button Labels

* slightly reworded the description

* spaced out the initiation hints
2025-03-28 19:13:32 +03:00
Darío
53596b8e5c
Add CLI installation check option. (#1387)
* Add CLI installation check option.

* Show the console for Windows Release builds.

---------

Co-authored-by: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com>
2025-03-28 19:08:45 +03:00
Hyper
1dd5ba7fcd
Fix DLC info message always being displayed (#1393)
* Fix DLC info message always being displayed

* Use uint32_t for version numbers

* Make AchievementManager follow the same naming convention as PersistentStorageManager

* persistent_data: remove header size field

* Make status success by default or on file not existing
2025-03-28 19:08:13 +03:00
Skyth (Asilkan)
4b4c439709
Update font atlas. (#1473)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-03-25 19:42:12 +03:00
Lorsoen
1562907f18
Minor French translation nitpicks (#1205)
* First iteration

* Typo

* locale.cpp nitpicks

* Forgor

* Corrections + More nitpicking

* au dela -> au delà
2025-03-25 19:32:02 +03:00
Kuid0us
e1f773d65e
Japanese localization: Fix some typos and grammatical errors (#940)
* Japanese localization: Fix some typos and grammatical errors

* Fixed errors described in PR #940 review

* Revert camera movement description in Japanese

* put \u200B
2025-03-25 19:31:52 +03:00
Kuid0us
e0d3a36db9
Changed the game name "Sonic World Adventure" to "Sonic Unleashed" in Japanese installer introduction text (#557)
* Update locale.cpp

Changed Japanese installer introduction text.

* Moved line break location and changed "北米" to US

* Reverting US to 北米 and capitalizing the game name
2025-03-25 19:31:43 +03:00
Skyth (Asilkan)
44b864e527
Fix DX10 cubemap DDS files failing to load correctly. (#1470) 2025-03-25 15:25:03 +03:00
Skyth (Asilkan)
2344a6f10d
Implement hacky fix for some update files not loading. (#1327)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-24 22:23:09 +03:00
ĐeäTh
bd589ed641
Reset session persistent shoe upgrade bools when achievements are reset (#1429) 2025-03-24 22:18:24 +03:00
ĐeäTh
d0cc13c2fd
Fix "Disable Boost Filter" code not affecting certain parts of the game. (#1468)
* hook different part of the code to affect Eggmanland too

* Update UnleashedRecomp/patches/misc_patches.cpp

Co-authored-by: Skyth (Asilkan) <19259897+blueskythlikesclouds@users.noreply.github.com>

---------

Co-authored-by: Skyth (Asilkan) <19259897+blueskythlikesclouds@users.noreply.github.com>
2025-03-24 22:15:46 +03:00
Hyper
8ca5f1bf53
Added code to force the alternate game title (#1249) 2025-03-24 21:57:35 +03:00
ĐeäTh
7f9ce5037e
Explicitly set working directory to executable directory on boot (#1430)
* Explicitly set working directory to executable directory on boot

* change to GetModuleFileNameW instead

* switch to pre-existing implementations of getting the executable path

* add argument to use current working directory

* use error code variant of current_path
2025-03-24 21:34:37 +03:00
Hyper
b76a44923d
Prohibit Channel Configuration changes during gameplay (#1432) 2025-03-24 21:26:21 +03:00
Onat Erdem
2322b75e54
Fix Options Menu sliders being frame-dependent at lower framerates (#677)
* Fix slider fastIncrement conditions

* Change options menu sliders' fastIncrement logic to use a persistent holdTime variable, rather than the current frame's deltaTime

* Clamp deltaTime to a max value of 1/15f

* Compile fix

* Spacing fix
2025-03-24 21:19:42 +03:00
Isaac Marovitz
2f43b9a304
Improve .gitignore (#576)
* Improve .gitignore

Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>

* Correct whoopsie

Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>

---------

Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>
2025-03-24 21:06:55 +03:00
Skyth (Asilkan)
5b53a49114
Preload the executable on Windows. (#1457) 2025-03-24 21:04:47 +03:00
Hyper
8e0d1f2873
Added MSAA level availability checks (#1446) 2025-03-24 20:57:50 +03:00
Skyth (Asilkan)
d15bb7a501
GPU Upload Heap & UMA. (#1421)
Some checks are pending
validate-internal / build (push) Waiting to run
* Initial work for GPU upload heap & UMA.

* Finish D3D12 Support.

* Rework the logic for the GPU Upload Heap fallback.

* Only enable UMA on Vulkan on integrated GPUs.

* Fix D3D12 fallback condition.

---------

Co-authored-by: Dario <dariosamo@gmail.com>
2025-03-24 03:07:12 +03:00
ĐeäTh
1c1dc09006
change alignment on shop title/ring count (#1425) 2025-03-23 22:50:19 +03:00
Skyth (Asilkan)
a02f34b028
Fix Cool Edge whale not having reflections. (#1441)
Some checks are pending
validate-internal / build (push) Waiting to run
* Fix Cool Edge whale not having reflections.

* Fix Vulkan validation error.
2025-03-23 18:59:10 +03:00
Skyth (Asilkan)
41fd1761b1
Apply half pixel offset in the vertex shader. (#1391) 2025-03-23 17:25:40 +03:00
Skyth (Asilkan)
7866765ab0
Fix mod include directories with backward slashes not working on Linux. (#1444) 2025-03-23 17:16:54 +03:00
MegAmi
824405b236
Replace Markdown issue template with YAML schema (#1426)
Some checks failed
validate-internal / build (push) Has been cancelled
* Replace Markdown issue template with YML schema

* YAML doesn't like that apparently

* Address requested changes
2025-03-19 01:55:02 +00:00
Hyper
d0368665dd
Update README FAQ (#1319)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-03-11 15:26:14 +00:00
João Moura
cc1018a8fc
Pass release path to upload-artifact step on Windows builds (#1151)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-03-10 15:18:37 +03:00
Skyth (Asilkan)
131427e017
Update version to v1.0.2. (#1149)
Some checks failed
validate-internal / build (push) Has been cancelled
2025-03-07 18:52:49 +03:00
Hyper
45c0880145
Rename DisableDPadAsAnalogInput to DisableDPadMovement (#1146)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-07 13:52:42 +03:00
Skyth (Asilkan)
024c35c1fe
Force WASAPI on Windows. (#1134) 2025-03-07 13:52:01 +03:00
Hyper
a9e280e116
Fix Homing Attack on Jump not affecting Cool Edge Act 3 (Day) (#904)
Some checks are pending
validate-internal / build (push) Waiting to run
2025-03-07 04:54:17 +03:00
Hyper
c64ef1fe15
Added error message if included DirectX DLLs are missing (#998)
* Added error message if included DirectX DLLs are missing

* locale: added System_Win32_MissingDLLs localisation

Co-Authored-By: LJSTAR <31629427+LJSTARbird@users.noreply.github.com>
Co-Authored-By: Kitzuku <25226941+Kitzuku@users.noreply.github.com>
Co-Authored-By: NextinHKRY <38560522+NextinMono@users.noreply.github.com>
Co-Authored-By: brianuuu <38166666+brianuuu@users.noreply.github.com>
Co-Authored-By: Darío <538504+DarioSamo@users.noreply.github.com>

* Fix ifdefs

---------

Co-authored-by: LJSTAR <31629427+LJSTARbird@users.noreply.github.com>
Co-authored-by: Kitzuku <25226941+Kitzuku@users.noreply.github.com>
Co-authored-by: NextinHKRY <38560522+NextinMono@users.noreply.github.com>
Co-authored-by: brianuuu <38166666+brianuuu@users.noreply.github.com>
Co-authored-by: Darío <538504+DarioSamo@users.noreply.github.com>
2025-03-07 04:47:15 +03:00
Hyper
c19a7b1e11
Added check for AVX on boot (#1067)
Co-authored-by: Wiseguy <68165316+mr-wiseguy@users.noreply.github.com>
2025-03-07 04:45:58 +03:00
Hyper
3c050887d8
Fix shoe upgrade hints patch breaking sequence flags (#1130) 2025-03-07 04:43:49 +03:00