← Feed
@alice@mk.nyaa.place
Post #3434600
2026-02-06 02:47 UTC
Some progress with controls remapping.
I posted about it in the quoted post, but the progress there has been slow because I seem to be getting a creative block? the programming equivalent of that every time I set to work on it.
So I thought about why it may be, and a part of it is honestly that the system I have is too complicated and I need to simplify it, so it goes:
- Keyboard key enum has a none value now, so I can have a built-in unset state
- I got rid of global controllers and merged Atari switches, SMS/SG-1000 pause button and Nintendo DS and WonderSwan shortcuts into the main controllers - and restricted them to player 1 only
- I got rid of separate config names for controllers, config name and controller id are the same thing now. Granted, it was only there to avoid duplicating one specific config, but hey
- I refactored a few things
After that, I tried to implement just enough of it that I actually have a tangible, working prototype. So - I do now. The backend can save controls (already could load them), reset them, and it notifies about the changes.
So - well, it works. I have configurable keyboard controls. Very incomplete, but I can technically remap things, and from now on it should be easier, since it's working and I can test it and, importantly, can motivate myself because there's a glimpse of a working feature rather than endless scaffolding.
For example, I took PlayStation controller and remapped it to make Doom use PC-like controls and it just worked. I posted about it here, but let's have it in the main thread instead. Same with N64 for Doom 64 - it also works.
RE: https://mk.nyaa.place/notes/aiccxocrk2xk01qd
Replies (1)
-
I switched back to nightly SDK (will switch back to stable once 50 is out, we're just fairly close to it at this point), so:
- New sidebar in the library and preferences (should look and behave same as before, just less code in the app
- The new reduced motion pref is fully supported now, e.g. DS layout switch animations are disabled, popup notifications appear with a fade instead of slide, while overlay menu also just crossfades instead of doing fade+slide
- Notification popups make use of the new backdrop-filter and have a frosted glass effect now (and fully opaque when using high contrast mode, until we have a reduce transparency preference)
Still need to tweak the style, it can blend in with background in some situations, which I should be able to avoid since backdrop-filter also allows to brighten/darken the backdrop.
Also I fixed an annoying crash when taking screenshots.
Next I want to redraw some of the icons to take advantage of the new icon weight feature. Not all of them, but e.g. the PlayStation :ps_triangle::ps_square::ps_circle::ps_cross: which get embedded in text and look really out of place atm.
Open ##3434599