Jump to content
LaunchBox Community Forums

Multiple input settings for controller, Retroarch


Bedwyr

Recommended Posts

22 hours ago, keltoigael said:

With the changes will I be able to port over all my 1.3.6 cfg to the new build? Reason I ask is that I already went through the whole process of remapping everything to my liking.

Some stuff will cross over, some stuff won't, it kindof depends on how you did it.

I used to split things out into separate emulator entries in LB, like I mention in the below post, duplicating core dlls so that I could basically use the same core but have different settings for common-use things. 1.4.1 didn't seem to like that method too much though.

Thankfully, overrides have completely eliminated the need to do this since you can just override things on a per-core/per-game basis as needed without these kinds of shenanigans. You may want to just test out your stuff and see how it goes. Ultimately I just decided to convert things over as that should help smooth things over going forward. It has seriously been a week+ process though (that's still ongoing) haha.

My current audit chart (games in each platform that start with specific letters - the ones in green are done):

PSX Saturn N64 Arcade CPS-1 CPS-2 NeoGeo
# # # # # # #
A A A A A A A
B B B B B B B
C C C C C C C
D D D D D D D
E E E E E E E
F F F F F F F
G G G G G G G
H H H H H H H
I I I I I I I
J J J J J J J
K K K K K K K
L L L L L L L
M M M M M M M
N N N N N N N
O O O O O O O
P P P P P P P
Q Q Q Q Q Q Q
R R R R R R R
S S S S S S S
T T T T T T T
U U U U U U U
V V V V V V V
W W W W W W W
X X X X X X X
Y Y Y Y Y Y Y
Z Z Z Z Z Z Z

For the arcade systems I'm basically verifying that everything is still working (typically using RA's MAME core, mixed in with some FBA and some MAMEUI) and remapping controls. For N64 I'm converting stuff over to Glupen64 (will be mupen64plus once they get it sorted out - it's kinda buggy at the moment) and remapping controls for some games. For Saturn I'm converting/testing from Mednafen standalone to RA Mednafen Saturn. For PSX I'm customizing the AR settings for every game so that it properly scales - the resolution/overscan varies from one game to another so what scales completely for one game might leave space at the top and bottom of another; and if the reverse settings were used for all games some would scale completely and others would have parts of the top and bottom cut off. What seems to work best is one of two setups - either 1) an AR of "core provided" with integer scaling "off" or 2) an AR of "custom" with integer scaling "on" and the width and height set to 5x; the former is what I use as a base and the latter is what I switch it to/save as a game-override if there's space at the top and bottom.

I also did a few other things via overrides (that I previously had as separate emulator entries in LB) like Super Scope and SNES Mouse games.

22 hours ago, fromlostdays said:

Um... zombeaver... do you use a controller? I know that must have been crazy work. Any chance you can upload those overrides? :D

I do use a controller yes. I use a 360 controller most of the time (and that's what my controls are customized for). I've considered sharing them, I'm just not sure if everyone would like the same controls as me haha. For shmups X is always fire, A is always bomb, B is always "other 1" and Y is always "other 2". For fighters X is always light punch, A is always light kick, Y is always heavy punch, B is always heavy kick - for 6 button fighters it's the same except left bumper is for medium punch and right bumper is for medium kick. For beat em ups, X is always punch, A is always jump, B is always "other 1" and Y is always "other 2". In the case of RA MAME games this is accomplished via the tab menu, in the case of FBA it's done via remaps. I'm not entirely sure where RA MAME's tab menu changes are saved - they're not saved into the normal RA remap folder. I'm guessing they're saved in the same folder as the games since that's how it typically deals with MAME stuff, but I'm not sure what files would need to be shared - the .nv ones I guess? They don't use typical .rmp files.

I also don't have like "every arcade game ever" haha. I hand pick my stuff - so my "arcade" platform is about 350 games, my Neo Geo is about 80, and CPS-1 and CPS-2 are around 30 each.

  • Like 2
Link to comment
Share on other sites

2 hours ago, Zombeaver said:

Shaders are also part of overrides, which are saved at the core/game level. They're loaded by priority, going Game override > Core override > base. You can, for example, set a shader (or whatever) as a base, and then decide that you want to do an override for an entire core that uses a different shader - when you save that as a core override anything you load with that core will now use that override by default - you can then further refine that with per-game overrides where you customize the shader and save it as a game override, at which point those settings will only be loaded for that specific game. If you want all your Gameboy games to have a Gameboy specific shader, load the core, set the Gameboy shader, and save it as a core override. The core dll duplication thing is no longer necessary. I used to do that extensively.

I've spent the last week or so converting my stuff to overrides and custom remaps, doing things like customizing all arcade games to use the same button layout across the board - one button is always fire, one is always bomb, one is always "other" for shmups for example (despite the fact that the games themselves didn't actually use the same buttons to do this) and all fighting games use uniform controls for light punch/heavy punch/light kick/heavy kick etc.

Overrides and remaps are actually great once you get used to them.

Still, that doesn't work if you want to split shader settings between GB and GBC games unless you provide a shader override for each game.

What's happening right now is that the override does not like having no shaders (shader layers at 0). So it appears that once you set an override, you have to, what, manually delete the override to get the base setting back?

Link to comment
Share on other sites

Just now, Bedwyr said:

Still, that doesn't work if you want to split shader settings between GB and GBC games unless you provide a shader override for each game

Are they using the same core or no? If it's not the same core you wouldn't need to do that. If they are, it would require some additional work, yes.

2 minutes ago, Bedwyr said:

What's happening right now is that the override does not like having no shaders (shader layers at 0). So it appears that once you set an override, you have to, what, manually delete the override to get the base setting back?

You could do that, or you could just edit the override file to remove the line for the shader. The overrides are in RA's config folder, divided out into folders named after the cores (if you've saved a core override for them).

Link to comment
Share on other sites

So I am confused then about these new overrides. I basically set up a core as per normal and when I edit something in a particular game it sticks to that game and not the whole core? I use the .dll trick myself, like with mame and twin stick shooters remapping the fire keys to the actual analog directions.

Link to comment
Share on other sites

10 minutes ago, keltoigael said:

So I am confused then about these new overrides. I basically set up a core as per normal and when I edit something in a particular game it sticks to that game and not the whole core?

If you save it as a game-override yes. You go into the quick menu and then save either a core override (to work as a default for everything you load with that core) or a game override (which will override settings for that game only).

  • Like 1
Link to comment
Share on other sites

It should be noted though that for controls specifically (IE Quick Menu -> Controls -> changing stuff around) you want to do those as "remaps" which are also saved/loaded on a per-core/per-game basis. They're independent of overrides but can work in conjunction (and in the same way, just that it's specifically for controls). Overrides are for things like shaders, video settings, etc. You could do an override for controls but it would be via the Input menu, not the Quick Menu -> Controls section.

Link to comment
Share on other sites

Because the entire purpose of overrides is to make it so you don't have to do that.

The only current shortcoming is when you're dealing with something like say FBA - if you have CPS-1, CPS-2, and Neo Geo all setup in LB to use a single FBA core and you want them to all do something differently, a core override that you save will apply to all three (because RA doesn't care that you've got them divided into separate platforms in LB, only that they're directed to the same core dll). That's one instance where splitting them out like that is still useful. Outside of that though, there's no reason to do it - overrides are the internal solution (and are really quick and easy for anyone to use). They also make really niche per-game things much easier to do.

Link to comment
Share on other sites

Aaaand Arcade is now done.

One other handy use-case for overrides that I forgot to mention  - there are some arcade games that I've found are abnormally quiet; now for some games you can go into the test menu (F2) and adjust/increase the audio level (games like Killer Instinct, Primal Rage, and Mortal Kombat let you do this) but in other cases there's no such option. You can, however, pull up the RA menu, go to Settings -> Audio -> Audio volume level (db) and increase it from the default (3.0 in my case) to a maximum of 12 db and then go to the quick menu and save it as a game override. Problem solved.

  • Like 1
Link to comment
Share on other sites

19 hours ago, Zombeaver said:

If you save it as a game-override yes. You go into the quick menu and then save either a core override (to work as a default for everything you load with that core) or a game override (which will override settings for that game only).

That cleared it up for me, thanks. I can see I will really like the changes. Sure it's a pain to redo everything but this is a much better work around.

Link to comment
Share on other sites

7 minutes ago, keltoigael said:

That cleared it up for me, thanks. I can see I will really like the changes. Sure it's a pain to redo everything but this is a much better work around.

Yeah I actually really like the way it works now, once I got used to it. It makes it really easy to fine tune stuff on a game by game basis which I really like; and once you get used to doing it it just takes a few seconds to do.

3 minutes ago, keltoigael said:

Crap it just dawned on me I have to do all of this twice. One for my 2 player set up and one for my 4 player set up only because how janky the PS4 ds4windows program is.

Eh? You kinda lost me there. I don't use PS4 controllers at all though so I'm not sure if I could help anyway.

Link to comment
Share on other sites

The way ds4 works is that it emulates a x360 pad and also puts in a entry for a bluetooth pad, there is a work around for this but you dont get all the fancy bells and whistles like player specific lighting, player 1 blue, player 2 red etc etc. In RA is chaotic. You have to actually set up 8 pads for the 4 player set up that will only work when 4 players are in game. So I have this whole separate setup for 4 players versus a 2 player set up that would use 4 pads in RA by default. It's really hard to explain unless you experience it.

Link to comment
Share on other sites

Hmm... I assume you've tried using AutoConfig profiles? It's basically saved controls for specific input devices. I use them for switching between my 360 controller/arcade stick (which uses xinput) and a USB SNES pad (which reverses the up and down inputs unless I turn off the setting that makes the left analog stick send d-inputs). After setting up AutoConfig profiles for each of them I can disconnect one and use the other and it knows which settings to use for which. I don't know if the ds4 software's emulation would interfere with this though.

Link to comment
Share on other sites

13 minutes ago, keltoigael said:

I have been playing around with 1.4.1 and ds4. Idk why now but the hide ds4 option is working, eliminating for the moment dual inputs. I might be able to just have one setup now for 1-4 players since the pads are now directly using xinput instead of xinput/dinput over lapping.  

Nice!

One additional thing that I literally just discovered today that's relevant to this discussion is "content specific core options" (which is found in Settings -> Configuration -> "Load content specific core options automatically"). What this really should be called is "Per-Game Core Options" as that would fit with the Per-Core/Per-Game Overrides and Per-Core/Per-Game Remap naming scheme and be a little more obvious as to what it's for.

So, ordinarily core options (quick menu -> options) just apply across the board for that core, whether you use any other overrides or not. If you make a change to the core options, whether you're using any core/game overrides it carries over. Overrides apply to things in the normal settings menu - input, audio, video, etc. but not to core options. When you enable "load content specific core options automatically", however, when you go into the core options you'll notice a new button at the top of the list that says "create game options file" followed by the game name. If you select that, it'll create a .opt file which will now be loaded for that game just like overrides (.cfg) and remaps (.rmp) but is used specifically for adjusting core options.

So...what's the use scenario for this? Well, here's an example:

Codename Tenka for PSX is kindof odd in that it only lets you start the game if you only have one memory card inserted (RA Mednafen uses two by default). There's a core option for Mednafen PSX of "enable memory card 1" (memory card 0 is actually the first card, 1 is the second). I wanted to be able to disable the second card for this game because of this quirk but I didn't want to actually disable it for everything. "Content specific core options" to the rescue! Load up Codename Tenka, go to the core options, disable the second card, "create game options file", problem solved.

Obviously there are a lot of potential uses for this. Anything that's in core options that you want enabled/disabled/changed for one game but not for something else, this is the way to go.

One final note is that, funnily enough, the "Load content specific core options automatically" enable/disable option itself is saved on a per-core or per-game override basis. So if you've got a core override and you normally have this set to off, you'll have to enable it and then save the core override. You can also technically enable it on just a per-game override basis and from that game save a core option file but I can't think of a good reason to do this; if you don't save a core option file they'll just work like normal anyway - carrying over from one game to another.

58ad001663af2_ContentSpecificCoreOptions1.thumb.png.84c87e3269b1d079fa32e489f14a2cd6.png58ad017ee5241_ContentSpecificCoreOptions2.thumb.png.40a849f1dbedf58a1d8f3f2980a68fa0.png

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...