Homebrew Discussion Post homebrew ideas, suggestions, requests here

  • Thread starter Thread starter Quantumcat
  • Start date Start date
  • Views Views 217,347
  • Replies Replies 924
  • Likes Likes 9
Some Ideas:

  • App that can allow you to record more than the default [about 30 seconds] of game play by holding the screenshot button.

  • App that add macro abilities to any controller.

  • App that can add TAS abilities to the switch.
 
Last edited by JayBae,
  • Like
Reactions: LawnMeower
Can turn a switch lite into a recognizable pro controller that can be used for other switches and PCs?
 
Idea: Client-Server Cheating/Hacking application with Lua cheat support

I've been thinking of a tool inspired by Bully's Wii U TCPGecko and My cheating tool for emulators (MungPlex), so cheat codes can be written in Lua!
I tried coding something myself but failed at creating a TCP communication. So I thought I rather share my idea here and help with the project.


First of all, there's a server application running in the switch's background. It can be used in 3 different modes: TCP, USB, and handheld mode.

USB/TCP Mode is pretty much identical to TCP Gecko
Handheld Mode is pretty much identical to Edizon SE

Search features:
  • Allow user-defined memory ranges so there's no need to dump the entire memory.
    1644160320077.png
  • Supported datatypes:
    • int8, int16, int32, int64
    • add signeness checkbox so the UI won't be too bloated
    • float single, float double (and precision slider since comparing floats on equality might result in no results)
    • array of bytes (so we could search for size modifiers with values like 0x0000803f0000803f0000803f, text, etc)
    • allow defining endianness since emulated games might use BE instead (byte arrays and bytes ignore this feature)
    • Select datatypes from drop box
      1644160580661.png
  • Allow search alignment to speed up searches
    • On: Aligned by 4 (addresses only end with 0, 4, 8 or C) for all datatypes except int16 (alignment 2)
    • Off: Bytewise search
  • Allow switching between dec and hex representation on-the-fly as well as for known- and unknown-value search types
    1644161032295.png
Value testing (client)
  • Allow poking values once or freezing them
  • Allow poking all selected values. Let the user decide whether to poke a user-defined value for all selected addresses or the previous value of each address
  • User-defined amount of addresses per result page (this is useful when testing many values that stay the same all the time)
  • change pages of results
  • 1644165235652.png

Lua cheat support
  • Cheats can be saved server-sided (Switch) and client-sided (PC) and synchronized
    • Each game has a cheats.json file. An entry consists of the code's title, description, the Lua code itself, hacker/creator name, category for sorting
    • For testing, it should be possible to jot down a Lua script on the client application.
    • Cheats can be downloaded from an online database
      1644162046484.png
  • Functions to be implemented:
    • WriteToRAM(Type, Address, Value, Endianness)
    • ReadFromRAM(Type, Address, Endianness)
    • LogToGUI(Data) //Logs Data to the client tool
    • Value Registers where values can be shared across cheats and are being remembered for the next frame
    • Execute cheats up to 60 times a second
  • You can check out my repo how I implemented these for MungPlex
  • Here's a Lua implementation tutorial by javidx9 that helped me a lot
  • Here's the Lua repro. I think implementing it as a submodule makes the best sense



Pointer search
  • Why not create a pointer search in C/C++ in a separate repo which can be implemented as a submodule by different projects as well
  • 1 - 5 layers
  • Allow ignoring pointers NOT ending with 0, 4, 8 or 0xC
  • Allow search-alignment by 4 bytes (also assumes ignoring odd pointers by default)
  • Allow negative offsets
  • Allow whether to search for 32-bit addresses or 64-bit addresses
  • Allow defining endianness

I hope that covers all my ideas :)
 
Last edited by LawnMeower,
here's a very very niche idea, and the tesla menu is almost there

a button input OSD that can be toggled that works in handheld and docked modes, for figuring out what you're hitting incorrectly for inputs in a game
 
  • Like
Reactions: VeniaSilente
I'm just wondering....

I've updated my atmosphere and Hekate, using the latest fusee.bin. when I restart my switch it launches Hekate.

It does this regardless of whether I used the fusee.bin payload or the Hekate.bin payload and chainload (or launch fusee.bin from there).

Can I bypass this?? Ideally without messing about with Hekate autobot settings. Is there a config file I can edit to make fusee rather than Hekate the default?

If I rename fuse.bin to rebootpayload.bin and overwrite the one in the atmosphere folder will that work?? Is it a good idea to mess with that folder?

For me booting Hekate isn't too bad every so often... But I've hombrewed my kids switch and I don't want them messing with Hekate.
 
If I rename fuse.bin to rebootpayload.bin and overwrite the one in the atmosphere folder will that work?? Is it a good idea to mess with that folder?
This is exactly what you want to do, copy the name (reboot_payload.bin or whatever its called, can't remember off the top of my head) make a copy of fusee.bin and rename the copy. Then replace the old one in atmosphere folder with the new renamed fusee.bin.
 
is the OpenXray Stalker port possible for switch? it's open source if your wondering.
Runs successfully on linux, would be great to see homebrew

Sort of. Unfortunately I'm not sure the performance could be improved by much.
 
Is there any way to find an address/ID for something in a game, like how Cheat Engine can do when you highlight something, but on homebrew?
 
This is just an idea thread, so I'm going to post a wish, not something I really think is feasible at all, because I don't know.

But it would be really great to have the possibility of using apps to translate text in-game with the Switch. One could be play games in languages he doesn't speak, or that he's learning.
 
This is just an idea thread, so I'm going to post a wish, not something I really think is feasible at all, because I don't know.

But it would be really great to have the possibility of using apps to translate text in-game with the Switch. One could be play games in languages he doesn't speak, or that he's learning.
The tech exists to do this for retro games played using Retroarch, tho I don't know if it works on Switch. I wouldn't expect it for native Switch games any time soon tho.
 
The tech exists to do this for retro games played using Retroarch, tho I don't know if it works on Switch. I wouldn't expect it for native Switch games any time soon tho.
I honestly wouldn't expect it at all.
It hasn't ever been done if not on PC, with scarse results.
It either is not that feasible or too much of a strain to actually pull it off. It would be great though!
 
Request - Help wanted

Hello, I would love propose a homebrew related with joycons:
Could test the HD rumble from some mini games of 1 2 Switch without need of load the game nor graphics.


I am reverse engineering kazuate (balls counting) but I need help as it is my first re proyect.

The goal is recreate it:
(user will need a copy of the game for extracting the HD rumble files from it).

it will ask how many balls you want (or let it choose randomly from 1 to 9 letting us try to discover how many, as the original ) and the joycon we choose will simulate it (of course without any code from Nintendo, as Mario 64, making it legal ).

It is a little proyect : I still need to find what is the limits of the gyro data to choose one of the bnviw files (fast, slow, opposite fast, opposite slow).
It use a mixer for playing several files to create the ilusión.

Of course it will work on pc, for this reason it will have the minimum : plain text, conect the joycon BT, send the data according the gyro movement.

Later we could do the same with the rest.
Any help is welcomed.
thanks
 
I'm just wondering....

I've updated my atmosphere and Hekate, using the latest fusee.bin. when I restart my switch it launches Hekate.

It does this regardless of whether I used the fusee.bin payload or the Hekate.bin payload and chainload (or launch fusee.bin from there).

Can I bypass this?? Ideally without messing about with Hekate autobot settings. Is there a config file I can edit to make fusee rather than Hekate the default?

If I rename fuse.bin to rebootpayload.bin and overwrite the one in the atmosphere folder will that work?? Is it a good idea to mess with that folder?

For me booting Hekate isn't too bad every so often... But I've hombrewed my kids switch and I don't want them messing with Hekate.
This isn't a support thread, but I'll give you my two cents. It seems like you're injecting the hekate payload after booting into RCM, and not fusee.bin. That would cause you to boot into Hekate regardless of what payload you placed where with what name in the SD card. If you instead inject fusee.bin, you should boot straight into Atmosphère. And yes, replacing the reboot payload with a copy of fusee.bin would keep you from rebooting into Hekate as you said.
 
I think it would be kinda neat to have a mod installer similar to hbstore (I guess you would use NX-shell to move the folders)
 
I have an idea. Not the skills to do it but some of the basic principals to how it could work.

Does anyone (or is anyone) working to get Banned and hacked switches online via non Nintendo servers. I've seen this done using Lan and connecting to a PC. But I'm talking about something completely independent.

It would use something similar to 90DNS or the "emmc.txt" in the atmosphere folder. Basically it'd redirect a request to play online to another server (not Nintendo's). The server would be setup very similar to Nintendo's. You'd need a Nintendo account as some games need it (but it could be fake). It'd need to ignore serial info etc.

I know there's hurdles. The game version would need to match (potentially one switch could extract and download the update file to the other if needed) , what would happen if you achieved something? As it couldn't really affect the Nintendo account. Incognito could cause issues but I think a temporary fake key could be used. Plus hosting this would cost money. So I'm thinking this would probably need to be a chargeable service.... that said if enough people joined and the developer did it non profit donations could cover it... potentially though someone could make some money out of it.

Ban's, cheats etc would also need to be looked at.

The Tunnelled Lan is ok.... but I think there is a potential better way.

It might be too difficult or a reason it can't be done (maybe its the cost). Someone's also probably already thought about it.... but just thought I'd share.
 

Site & Scene News

Popular threads in this forum