Homebrew [WIP] rehid:- Button remapping for 3ds

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
To show my appreciation for Kartik's excellent work, I thought I'd share a few of the biggest control/gameplay improvements I've found while experimenting.

{
"keys":
[
{"get":"UP", "press":"ZL"},
{"get":"DOWN", "press":"ZR"}
]
}
This lets you manually scroll through the Command Deck while still being able to move freely.

{
"keys":
[
{"get":"LEFT", "press":"CSLEFT"},
{"get":"RIGHT", "press":"CSRIGHT"},
{"get":"UP", "press":"CSUP"},
{"get":"DOWN", "press":"CSDOWN"},
{"get":"CSLEFT", "press":"LEFT"},
{"get":"CSRIGHT", "press":"RIGHT"},
{"get":"CSUP", "press":"UP"},
{"get":"CSDOWN", "press":"DOWN"},
{"get":"ZR", "press":"START"},
{"get":"Y", "press":"ZR"}
]
}
The D-Pad to C-Stick doesn't seem to work for now but it's the C-Stick to D-Pad part that matters most. With a little practice you can mine on the move and fight while running backwards (without touch screen).

{
"keys":
[
{"get":"L", "press":"CSLEFT"},
{"get":"R", "press":"CSRIGHT"}
],
"touch":
[
{"get":[80, 60], "press":"ZL"},
{"get":[240, 60], "press":"ZR"}
]
}
Controlling the overworld camera with C-Stick feels nice and mapping ZL&ZR to the touch screen makes for easier combos.

{
"keys":
[
{"get":"A+B+Y+START", "press":"SELECT"},
{"get":"A+B", "press":"X"}
]
}
A game that really benefits from the button-combo mapping. Gives you painless access to the save menu and allows for easier bomb-arrows or the sword-shield combo.

{
"touch":
[
{"get":[300, 20], "press":"ZL"},
{"get":[300, 220], "press":"ZR"},
{"get":[20, 220], "press":"START"}
]
}
Probably one of the most obvious games to benefit from remapping and it has many options. I went with Start for the Ocarina and ZL/ZR for Item I/II respectively. I left the C-Stick unused though, as hopefully it will be possible to map it to the C-Pad in future for aiming similar to Majora's Mask.

Any other recommended remappings out there to share? :)

@Nutez i was just about to make a thread to share rehid configs :D
But instead of that, i just post it here like you did.

{
"touch":
[
{"get":[231, 193], "press":"ZL"},
{"get":[306, 193], "press":"ZR"},
{"get":[156, 197], "press":"START"}
]
}

This let you search and choose the any item you want when you'r flying with the ODM or even when you are attacking a titan. ZL and ZR works as the arrows on the touchscreen to search trough your bag and you select the item with START

{
"keys":
[
{"get":"LEFT", "press":"CSLEFT"},
{"get":"RIGHT", "press":"CSRIGHT"},
{"get":"UP", "press":"CSUP"},
{"get":"DOWN", "press":"CSDOWN"}
],
"touch":
[
{"get":[68, 112], "press":"ZL"},
{"get":[258, 112], "press":"ZR"},
{"get":[160, 211], "press":"START"}
]
}

With it, you can control the camera with the C-Stick instead on the D-Pad, so now you can freely web swing without having to stop to move the camera. Also, the Retreat and Dodge touch buttons were remapped to ZL and ZR, and the Take Photo touch button its remapped to START button.

{
"keys":
[
{"get":"LEFT", "press":"CSLEFT"},
{"get":"RIGHT", "press":"CSRIGHT"},
{"get":"UP", "press":"CSUP"},
{"get":"DOWN", "press":"CSDOWN"}
],
"touch":
[
{"get":[296, 25], "press":"ZL"},
{"get":[150, 130], "press":"ZR"}
]
}

Same camera config as Amazing Spider-Man, Time Paradox and Spider-sense touch buttons remapped to ZL and ZR.

{
"keys":
[
{"get":"Y", "press":"CSLEFT"},
{"get":"A", "press":"CSRIGHT"},
{"get":"X", "press":"CSUP"},
{"get":"B", "press":"CSDOWN"}
],
"touch":
[
{"get":[32, 215], "press":"ZL"},
{"get":[75, 215], "press":"ZR"}
]
}

If you choose to control the retina/camera with Y,A,B and X (you can change this on options menu), this buttons are remapped to the C-Stick. ZL and ZR now trigger the Aerial Powers , ZR also trigger any power you choose on Land battles.

{
"keys":
[
{"get":"RIGHT", "press":"CRIGHT"},
{"get":"LEFT", "press":"CLEFT"},
{"get":"UP", "press":"CUP"},
{"get":"DOWN", "press":"CDOWN"}
]
}

The game try to emulate old games like PSOne horror games, and you can only move the character using the D-Pad. With this config, you can use the C- Pad for movement.

{
"keys":
[
{"get":"LEFT", "press":"CSLEFT"},
{"get":"RIGHT", "press":"CSRIGHT"}
],
"touch":
[
{"get":[261, 151], "press":"START"}
]
}

C-Stick now controls the camera instead of D-Pad, Start triggers the Upgrade Power touch button.

{
"keys":
[
{"get":"L", "press":"CSLEFT"},
{"get":"R", "press":"CSRIGHT"},
{"get":"X", "press":"CSUP"},
{"get":"B", "press":"CSDOWN"}
]
}

Another remap to control the camera with the C-Stick.

{
"touch":
[
{"get":[40, 5], "press":"ZL"},
{"get":[286, 8], "press":"ZR"},
{"get":[35, 215], "press":"START"}
]
}

Notepad, Map and Items touch buttons remapped to ZL, ZR and START.

{
"keys":
[
{"get":"LEFT", "press":"CSLEFT"},
{"get":"RIGHT", "press":"CSRIGHT"},
{"get":"UP", "press":"CSUP"},
{"get":"DOWN", "press":"CSDOWN"}
]
}

Yet another remap to control the camera with the C-Stick.

{
"touch":
[
{"get":[236, 209], "press":"ZL"},
{"get":[289, 163], "press":"ZR"},
{"get":[160, 126], "press":"START"}
]
}

Control the Arrow touch buttons with ZL and ZR, use your stored power with START.

{
"keys":
[
{"get":"L", "press":"CSRIGHT"},
{"get":"R", "press":"CSLEFT"}
],
"touch":
[
{"get":[31, 222], "press":"START"},
{"get":[100, 226], "press":"ZL"},
{"get":[164, 226], "press":"ZR"}
]
}

Camera control with C-Stick, Bicycle, Radar and Map touch buttons remapped to ZL, ZR and Start.


PD: Also have a bunch of simple camera remaps to C-Stick (LIke L and R to C-Stick on games that use them as left and right camera)

ADDED:

{
"keys":
[
{"get":"Y", "press":"CSLEFT"},
{"get":"A", "press":"CSRIGHT"},
{"get":"X", "press":"CSUP"},
{"get":"B", "press":"CSDOWN"}
],
"touch":
[
{"get":[12, 22], "press":"ZL"},
{"get":[310, 16], "press":"ZR"},
{"get":[10, 99], "press":"Y"},
{"get":[177, 88], "press":"B"},
{"get":[290, 85], "press":"A"},
{"get":[104, 43], "press":"X"},
{"get":[158, 44], "press":"START"}
]
}

The camera buttons (Y,X,A,B) were remapped to the C-Stick, the EEV Hacking touch button its remapped to ZL, Thermal Vision touch button to ZR, Map touch button to X, Whistle touch button to START, and the 3 main weapon to Y, B and A (Y is the regular pistol, B is the Assault Rifle, you can press B twice to use the 1.5 reflex sight, and A is the granades).

Here's an alternative remap that, on this remap the weapons are remapped to X,Y and B, the Map touch button is remapped to START button, there's no Whistle remap and the A button its free (to access Rosalina menu and that kind of stuff)
{
"keys":
[
{"get":"Y", "press":"CSLEFT"},
{"get":"A", "press":"CSRIGHT"},
{"get":"X", "press":"CSUP"},
{"get":"B", "press":"CSDOWN"}
],
"touch":
[
{"get":[12, 22], "press":"ZL"},
{"get":[310, 16], "press":"ZR"},
{"get":[10, 99], "press":"X"},
{"get":[177, 88], "press":"Y"},
{"get":[290, 85], "press":"B"},
{"get":[104, 43], "press":"START"}
]
}
This is awesome! Thanks for sharing this! I'll make sure to link this to the front post as soon as I release v2.0(to prevent confusion). This gives me the idea of whether we should have a github repo where users can submit their configurations, which can then be downloaded and used by others.
 
Last edited by Kartik,

NanashiFinal13

Well-Known Member
Member
Joined
May 1, 2017
Messages
409
Trophies
0
Age
30
XP
2,662
Country
Argentina
This is awesome! Thanks for sharing this! I'll make sure to link this to the front post. This gives me the idea of whether we should have a github repo where users can submit their configurations, which can then be downloaded and used by others.
That would be awesome! it will be like CTRPF-AR-CHEAT-CODES but with remaps! I wonder if it would be possible to have an app to download remaps on the 3DS like Sharkive/Checkpoint. That would be fantastic.
 
  • Like
Reactions: Nutez

BETA215

Member not found
Member
Joined
Dec 30, 2014
Messages
333
Trophies
0
Location
they/them | 0xDEAD brain
XP
1,674
Country
Argentina
That would be awesome! it will be like CTRPF-AR-CHEAT-CODES but with remaps! I wonder if it would be possible to have an app to download remaps on the 3DS like Sharkive/Checkpoint. That would be fantastic.
If rehid gets a bit more mainstream and its usage increases, I'm sure people will be delighted to have such an app with remaps uploaded by users, that automates the process.
 
Last edited by BETA215,
  • Like
Reactions: NanashiFinal13

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
If rehid's gets a bit more mainstream and its usage increases, I'm sure people will be delighted to have such an app with remaps uploaded by users, that automates the process.
I think the main problem with rehid rn is that most users deem editing/creating the JSON file as "too technical". I wonder if we could create a website/ or a 3ds app that asks users what buttons they want to remap and then generates the json for them.
 
  • Like
Reactions: NanashiFinal13

NanashiFinal13

Well-Known Member
Member
Joined
May 1, 2017
Messages
409
Trophies
0
Age
30
XP
2,662
Country
Argentina
I think the main problem with rehid rn is that most users deem editing/creating the JSON file as "too technical". I wonder if we could create a website/ or a 3ds app that asks users what buttons they want to remap and then generates the json for them.
To be honest,i think its pretty simple to create/edit the .json file, still, im agree with you. I saw comments of rehid on 3dshacks reddit and multiple user consider the .json file too technical/advance or complicated. But in fact its more simple that buttonswamp3DS, because you don't need to compile it every time that you want to change the remapping, this support more buttons and even a configuration per game.
 
  • Like
Reactions: Nutez

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
I have further got DPAD>CPAD mapping to work, this can be used in games like Mario kart 7, for controlling the cart using only the dpad.
{ "keys":
[
{"get":"CRIGHT", "press":"RIGHT"},
{"get":"CLEFT", "press":"LEFT"},
{"get":"CUP", "press":"UP"},
{"get":"CDOWN", "press":"DOWN"}
],
"dpadtocpad":true
}
 

Attachments

  • 0004013000001D02.zip
    46.2 KB · Views: 153
Last edited by Kartik,

Fierfek

Member
Newcomer
Joined
May 26, 2020
Messages
22
Trophies
0
Age
29
XP
150
Country
United States
I tried using the latest release here with OoT but the motion controls don't work - is this just a limitation I've gotta deal with?
 

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
I tried using the latest release here with OoT but the motion controls don't work - is this just a limitation I've gotta deal with?
Yup, afaik motion controls use gyroscope which is not implemented rn, so it won't work.

--------------------- MERGED ---------------------------

Sadly, it just crashes with no Luma screen. It just freezes and system won't respond until you restart the 3DS. Happens me with games mainly.
Hmmm could you try the github release and see if that freezes the 3ds too?
 

BETA215

Member not found
Member
Joined
Dec 30, 2014
Messages
333
Trophies
0
Location
they/them | 0xDEAD brain
XP
1,674
Country
Argentina
Yup, afaik motion controls use gyroscope which is not implemented rn, so it won't work.

--------------------- MERGED ---------------------------


Hmmm could you try the github release and see if that freezes the 3ds too?
Trying V1.0, no freezes happened. But freezes in latest version are random, so, will keep testing.
 

Stefano_Lassandro

Well-Known Member
Newcomer
Joined
Dec 26, 2020
Messages
47
Trophies
0
XP
192
Country
Italy
I know what you are trying to do. You have the order flipped. You are mapping the c-stick to ABXY instead of ABXY to the c-stick. You need to flip your .json file

{
"keys":
[
{"get":"Y", "press":"CSLEFT"},
{"get":"A", "press":"CSRIGHT"},
{"get":"X", "press":"CSUP"},
{"get":"B", "press":"CSDOWN"}
]
}

Thanks, shouldn't have doubted that you understood what I meant. I'm sorry...
 

Stefano_Lassandro

Well-Known Member
Newcomer
Joined
Dec 26, 2020
Messages
47
Trophies
0
XP
192
Country
Italy
I was wondering: I can assign a control reconfiguration to a specific game, but this doesn't "reset" when going back to the Home Menu, so is it possible to assign a rehid.json file to the ID of the Home Menu (EUR in my case, "000400102002D000"), that just reassignes all the buttons to themselves? I tried, and it doesn't work. Maybe because the Home Menu app is stored in NAND, or maybe because it's always held in memory?
I'm asking this because with some buttons reassigned is impossible to navigate the Home Menu.
By the way, I think that @Kartik is doing a very good job, rehid works really well for being released so recently! I'll be happy to help in the feedback process.
 
Last edited by Stefano_Lassandro,

MarioKartFan

Well-Known Member
Member
Joined
Aug 27, 2019
Messages
596
Trophies
0
XP
2,319
Country
Algeria
@Kartik I agree with the prior poster. This is an absolutely incredible (and now essential) piece of software. I honestly cannot believe how well it works. However, it would be good if there were a way to reset the input controls to default once we return to home screen.
 

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
@Kartik I agree with the prior poster. This is an absolutely incredible (and now essential) piece of software. I honestly cannot believe how well it works. However, it would be good if there were a way to reset the input controls to default once we return to home screen.
I was wondering: I can assign a control reconfiguration to a specific game, but this doesn't "reset" when going back to the Home Menu, so is it possible to assign a rehid.json file to the ID of the Home Menu (EUR in my case, "000400102002D000"), that just reassignes all the buttons to themselves? I tried, and it doesn't work. Maybe because the Home Menu app is stored in NAND, or maybe because it's always held in memory?
I'm asking this because with some buttons reassigned is impossible to navigate the Home Menu.
By the way, I think that @Kartik is doing a very good job, rehid works really well for being released so recently! I'll be happy to help in the feedback process.
I believe I have fixed this too, please check. The settings will only persist when the app is running in background/foreground. As soon as it is closed by pressing the close button in home menu, the controls will reset to default.
 

Attachments

  • 0004013000001D02.zip
    46.5 KB · Views: 138

Stefano_Lassandro

Well-Known Member
Newcomer
Joined
Dec 26, 2020
Messages
47
Trophies
0
XP
192
Country
Italy
@Kartik Congrats! I tested this version on several homebrew apps and I can get back to home with no problems! It also resets correctly the buttons when in the Home Menu. I've noticed another problem tho: if I pause the game and go to the Home Menu, and then get back to the game, the C-stick stops working (in-game). That's the case only if the input of the C-stick is remapped. Even if I close the software and relaunch it, the C-stick won't work (in this state, it works in other titles and in the Home Menu). After the console is rebooted, it works on the title again.
I also tried exiting the game and playing one that requires the use of the C-stick: it will work on that one, but it still won't work for the title that "broke" it.
Hope that's enough info. Thanks again for taking the time to develop such a useful and simple to use program!
Edit: fixed typo

--------------------- MERGED ---------------------------

This is awesome! Thanks for sharing this! I'll make sure to link this to the front post as soon as I release v2.0(to prevent confusion). This gives me the idea of whether we should have a github repo where users can submit their configurations, which can then be downloaded and used by others.
That would be cool! I'd love to share some of my configs too
 
Last edited by Stefano_Lassandro,

Kartik

Well-Known Member
OP
Member
Joined
Jun 6, 2015
Messages
653
Trophies
0
Location
github
XP
2,747
Country
India
@Kartik Congrats! I tested this version on several homebrew apps and I can get back to home with no problems! It also resets correctly the buttons when in the Home Menu. I've noticed another problem tho: if I pause the game and go to the Home Menu, and then get back to the game, the C-stick stops working (in-game). That's the case only if the input of the C-stick is remapped. Even if I close the software and relaunch it, the C-stick won't work (in this state, it works in other titles and in the Home Menu). After the console is rebooted, it works on the title again.
I also tried exiting the game and playing one that requires the use of the C-stick: it will work on that one, but it still won't work for the title that "broke" it.
Hope that's enough info. Thanks again for taking the time to develop such a useful and simple to use program!
Edit: fixed typo

--------------------- MERGED ---------------------------


That would be cool! I'd love to share some of my configs too
What game are you tetsing with and could you share the config for that game?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    ButterScott101 @ ButterScott101: +1