6547 Commits

Author SHA1 Message Date
Luke Street a85f8c203d Better config saving handling (#1846) v1.3.1 2026-05-26 20:42:26 -06:00
Luke Street dc0c868bc1 Crash handler: Properly map stack frames from modules; fix build IDs (#1848) 2026-05-26 20:42:11 -06:00
Irastris 2afc52772c Suppress Textinput line break events on BaseStringButton (#1833)
* Suppress Textinput line break events on BaseStringButton

* Oops, removed a comment
2026-05-26 20:39:07 -06:00
doop 0dc475108b Ensure dMdl_c packet is in drawlist for interp (#1818)
Fixes #1010.
2026-05-26 11:39:40 -04:00
Pieter-Jan Briers a7790d7323 Change "verify your dump" instructions in readme (#1809)
* Change "verify your dump" instructions in readme

No need to do this manually as the game already does it. Instead let's link to a guide for dumping the game legitimately.

* Gotta shill
2026-05-25 08:25:21 -06:00
Luke Street 8b6f989315 Update aurora v1.3.0 2026-05-24 22:56:06 -06:00
Olivia!! f03bd71612 store config to disk when destroying ui (#1791) 2026-05-24 22:20:32 -06:00
Luke Street 2e1cc7cb26 Save config when hiding controller config window 2026-05-24 22:17:24 -06:00
SuperDude88 498868c17d Invert Air/Swim Axes (#1155)
* Invert Air/Swim Axes

Apparently this is a setting in TPHD, so for parity's sake I'll throw it in here

* Invert Air Controls

Thanks @Abzol for knowing exactly where this is
2026-05-24 22:12:36 -06:00
Loïs 2a3bc722d9 Add in-process crash handler with symbolizable backtrace (#1536) 2026-05-24 22:11:45 -06:00
Ash 326ef70afa feat: more info in player info window (#1641)
* wip: more info in player info window

* wip: 3d speed + vel vec + ui change

* wip: add epona velocity vec

* wip: remove dead code + add format indexing
2026-05-24 22:08:37 -06:00
Luke Street 1f970eb2dc More ZoneScoped 2026-05-24 17:45:04 -06:00
Luke Street 8aaf451708 Update Android SDLActivity 2026-05-24 17:44:54 -06:00
Luke Street a8a2f5c84c Disable OSReport in release builds 2026-05-24 17:44:43 -06:00
Luke Street fa074a2311 Disable STUB_LOG in release 2026-05-24 17:44:05 -06:00
Luke Street 1f1f7e324b Use absl::flat_hash_map in frame_interpolation 2026-05-24 17:43:51 -06:00
Luke Street 8905fbc1eb Downgrade SDL3 for Android 2026-05-24 17:43:39 -06:00
Luke Street c207150ae9 Fix achievement logic startup crash 2026-05-24 13:00:41 -06:00
Luke Street d73b0be801 Update aurora 2026-05-24 12:57:06 -06:00
Irastris 78e1a05aef Various mirror mode fixes (#1725)
* Fix mirror mode stage map scrolling

* Fix Link's arrow rotation on fullscreen map

* Fix fishing in mirror mode

* Fix cucco controls in mirror mode

* Only stick_x is necessary

---------

Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-24 12:31:04 -06:00
qwertyquerty 8668474a33 Achievements improvements v2 (#1553)
* make LJA achievement more attainable glitchlessly

* update loach achievement description

* 3 kill rollstab achievement

* update gone fishin description

* gorge skip achievement

* early city achievement

* make goats and snowboarding safety check stage

* fix indomitable requirement, add hero mode achievement

* properly check skybook completion when returned

* prototype ganondorf achievement

* Autospin Annihilation
2026-05-24 12:18:07 -06:00
Pieter-Jan Briers a6376368ee String safety (#1548)
* Array size UB fixes

* Fix ShieldD

* Remove (almost) all unsafe strcpy calls

Bunch of macros. C arrays are easy enough and just need a different call. For various cases where a char* is passed around bare, I've made a TEXT_SPAN macro that can store a length too for bounds checking.

* Move crash handling in safe string operations to separate TU

* strcat safe version

* sprintf made safe too

* Fix compile
2026-05-24 10:43:00 -06:00
Jasper St. Pierre af162bbd0a New Depth of Field implementation (#1773) 2026-05-24 10:41:59 -06:00
Luke Street 0504f1dda7 Uodate aurora 2026-05-24 05:31:15 -06:00
Olivia!! edc4aa0be4 Fixes linux credits crash (#1780)
alpha comparison mID is u16, but indexes into a 256-item table.
this causes MAT3 materials with an alpha comparison index of 0xFF crashes on linux

closes #1073
closes #1531
2026-05-23 21:31:19 -06:00
Olivia!! ac316f6288 fixes empty howl tab near certain actors (#1771)
When howling suns song near actors that arent howl stones, an empty howl tab was shown.
This fixes the issue by duplicating a check for sun's song howling into the relevant code branch.
2026-05-23 20:16:02 -06:00
Irastris 114e6e60bb build.yml revisions (#1744)
* build.yml revisions

* Undo push and PR changes
2026-05-23 20:15:32 -06:00
Reilly Brogan e9a7628218 linux: Fix Wayland window associations (#1718)
* linux: Fix Wayland window associations

`src/m_Do/m_Do_main.cpp` uses `SDL_SetAppMetadata("Dusklight", DUSK_VERSION_STRING, "dev.twilitrealm.dusk")` which results in the Wayland appId getting set to `dev.twilitrealm.dusk`. Wayland compositors associate Wayland windows to desktop files by comparing the window appId against installed desktop files by the name of the desktop files. For a given window with appId `dev.twilitrealm.dusk` it would look for `dev.twilitrealm.dusk.desktop`, and because the desktop file is not named that the compositor is unable to correctly associate the window which results in the default Wayland icon being shown for the window. It also results in windows not being associated with the given launcher if the desktop file is pinned to a task management widget of some kind.

Fix this by renaming the desktop file to `dev.twilitrealm.dusk.desktop`. Also while we're at it we can rename the icons as well to match the desktop file name, which isn't required but is a bit cleaner and will fit various packaging standards better.

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

* Use dev.twilitrealm.dusk instead

---------

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
2026-05-23 19:56:24 -06:00
Carlos Manuel 533c76f4d6 Add support for changing save location on Android (#1520)
- Enabled the Android UI path for changing the data folder
- Added Android MANAGE_EXTERNAL_STORAGE permission
- Added an Android flow to request “All files access” before opening the folder picker
- Added code path to resume the folder selection flow after returning from Android settings
- Improved the Android write-probe error message to point users at the required permission
2026-05-23 19:43:02 -06:00
SuperDude88 beb4146f33 Rework No Heart Drops (#1448)
- Check the setting once in daItem_c::_daItem_create
2026-05-23 19:41:18 -06:00
Luke Street ce0185adc4 CI: Add ARM64 Windows and Linux builds (#1778)
* ci: Try arm64 Linux/Windows builds

* Update aurora

* Explicitly set CMAKE_SYSTEM_PROCESSOR on Windows

* Update build-appimage.sh for aarch64

* Set Rust_RUSTUP_INSTALL_MISSING_TARGET=ON

* Use CMAKE_SYSTEM_PROCESSOR normalization for jpeg-turbo build too

* MSVC ARM64 support for freeverb
2026-05-23 19:32:50 -06:00
Luke Street db7e2a1e7b Update aurora 2026-05-23 17:00:08 -06:00
Luke Street 7a3e8977f1 Disabled vendored Dawn for macOS 2026-05-23 16:31:24 -06:00
Luke Street e4caf20a7a Update aurora 2026-05-23 16:27:28 -06:00
Luke Street a68f4ae1e6 Update aurora 2026-05-23 16:20:11 -06:00
Luke Street 05393fe7aa Update aurora 2026-05-23 15:52:21 -06:00
Carl 1711251cf5 Android: derive versionName and versionCode from git tag (#1593) 2026-05-23 07:22:24 -06:00
Loïs c804b1f663 Rework nix flake for offline multi-platform builds (#1601)
* Rework flake.nix for offline multi-platform builds (Linux & macOS)

* fix typo + fmt
2026-05-23 07:20:45 -06:00
Irastris c49f0e5c6e Use std::chrono for THP playback pacing (#1757)
* Use std::chrono for THP playback pacing

* Redundant include
2026-05-23 07:18:29 -06:00
Irastris 9655b827f3 Add KI_NUMPADENTER as input for NavCommand::Confirm (#1752) 2026-05-23 00:23:46 -04:00
doop 6a52cdf80e UI/copy tweaks (#1756)
* "Mortal Edge" description nit

"Darkhammer" seems to be the more common rendering of the name.

* Add missing option descriptions

* Tighten spacing for version/disc info on mobile

* Graphics API init failure message nit
2026-05-23 00:23:22 -04:00
TakaRikka ba6ef0d250 Merge pull request #1689 from itssecretnate/map_offset_fix
Fixed mirror mode dungeon map's offset
2026-05-21 00:13:19 -07:00
TakaRikka f7a5d88dfd Merge pull request #1674 from TwilitRealm/poecount
map poe counter option
2026-05-21 00:06:04 -07:00
Nathan Mena 8ac2658f54 fixed dungeon map offset in mirror mode 2026-05-20 15:15:28 -06:00
TakaRikka 0cb93a2a9f Merge branches 'poecount' and 'main' of ssh://github.com/TwilitRealm/dusklight into poecount 2026-05-20 13:24:57 -07:00
JaxonKEKW 716a2b4020 Improve Collection/File Select screens at Widescreen/Ultrawide (#1614)
* Improve Widescreen/Ultrawide Collection/File Select Menus

Re-scale (unstretch) and center elements of the Collection Screen/File Select details screen for Widescreen/Ultrawide

* Fix oversight

Fix default behavior

* Support ultrawide on Collection menu, target PC

support ultrawide instead of reverting to default behavior

wrap logic in target PC ifdefs (both changed functions themselves are still behind them as a whole as well) and use old function behavior otherwise

* Fix icon overshift at ultrawide

Icon shifted too much at ultrawide

Move redundant duplicate line

* Finished Collection/File Select screen changes

Added settings for the scaling mode (GameCube, Wii, Dusklight)

Depending on the setting in the Interface menu (Dusklight preset automatically sets scaling to Dusklight option, Classic preset sets to Gamecube, Wii/all old behavior available as well) Collection and File Select screens get scaled differently

Fixed backdrop behind slots on File Select with Dusklight setting (the Magic Armor background slot seeming too low on all aspects is vanilla behavior)

Fixed Fused Shadow/Mirror size and position with Dusklight setting

All logic is behind TARGET_PC gates (not the logic specifically, but the functions themselves have always been)

Changes  dSelect_cursor_c::refreshAspectScale to take a parameter so the scale of the selection cursor can be reset to default (only ever called in TARGET_PC functions or wrapped in gates)

* Ultrawide oversight

* Update d_file_select.cpp

copy paste oopsie

* Update d_file_select.cpp

im tired, never tested msvc

* Menu Scaling Mode

changed definitions to be more open ended

header additions now in TARGET_PC ifdefs

fixed/added scaling for Save/Option buttons in Collection menu with Dusklight setting, stopped scaling just the text

* Update settings.cpp
2026-05-20 15:55:38 -04:00
TakaRikka 069650295c dmap count fix 2026-05-20 04:06:33 -07:00
TakaRikka 5119135068 dmap poe counter 2026-05-20 04:03:32 -07:00
TakaRikka fa660ebd0f fmap poe counter 2026-05-20 03:19:25 -07:00
TakaRikka 5d6e58eeac Merge pull request #1129 from Krutonium/improvement/toggle_owl_statue_markers
Add ability to toggle off Owl Statue Markers on Map
2026-05-19 16:46:56 -07:00