1. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States
    Kip Select
    [​IMG]
    This is a WIP toolkit for the switch cfw Atmosphere, it started out as a simple KIP manager but has become much more over time. This toolkit is intended for use with Atmosphere Fusee, it will still somewhat work other packs like Kosmos but stuff may be broken.

    Features
    • Enabling And Disabling Of KIPS
      • KIPS, or Kernel Inline Processes, are a commonly used homebrew format. This tool allows them to be enabled and disabled. A reboot is required after a KIP is toggled for it to load/unload. This fetaure requires Atmosphere to be launched via Fusee as it dirrectly manipulates the KIPS within /atmosphere/kips/ which are loaded only by the Fusee launcher. If you are useing Kosmos, use Hekate to manage your KIPS instead.
    • Configureing BCT.ini
      • BCT.ini is a configuration file for Atmosphere. This tool allows modification of all true/false values in this file. It is worth noting however that in order for nogc toggleing to work you must first manually uncomment this line in BCT.ini. As of Atmosphere 0.8.2 nogc patches should enable themselves automatically if the right combiation of fuses is detected. There is also a huge risk of people changing this value accidentally and then breaking there gamecard slot, so for now this is going to remain a bit convoluted.
    • Managing LayeredFS Titles
      • This homebrew can enable or disable layeredFS titles. Due to the way Atmosphere works Enableing or disabling a layeredFS title only requires that title to be restarted to take effect. Unless you are modding a system title, for themes for instance, a reboot should not be needed.
    • Trigger A Console Restart
      • You can also trigger a console restart from within this tool. This is a normal restart, it dose not reboot the console into rcm. If you are useing exfat please avoid this feature, in my testing it caused SD card corruption 100% of the time.
    Planned Features
    There are quite a few things I would still like to add to this tool, below is a short list of the ones that are planned.

    • Get Further KIP Information
      • I would like the tool to display more about a instaled KIP than just its name. The current plan is to use file md5's to help detect what the KIP is.
    • Display Titlenames For LFS Items
      • This can be done useing NSWReleases, some basic code for it is already present in the codebase.
    • Add A Proper Options Menu
    Installing
    I plan on putting this tool on the switch appstore, however if you would like to you can still download it from GitHub or even build it yourself. The nro has no special requirements about where it gets placed, I would still recommend your put it in /switch/ though.

    Building
    This homebrew is a standered libnx project, make sure you have devkitpro installed correctly and simply run make from the project root. There are some dependencies including, libxml2, libcurl, libbzip, libpng, and libfreetype. I personally write this project using VsCode and thus there is a CppProperties.json file already configured for proper syntax highlighting in the project root, this configuration should work with almost any other homebrew project although depending on where your devkitpro install is you may need to change some values around.

    Credits
    • A huge thank you to MatinatorX for all of the graphics assets used by this tool. He had a hand in prety much all of there creation and without his work this tool would probably look like it had been made in ms paint.
    • libnx

    Download


    The original version of this post is in the spoiler below:
    So awhile ago while I was messing around with sys-netcheat I ran into a problem. I prefer use atmosphere fusée for my cfw, as it is much simpler to update, but it has no easy way of enabling or disabling a kip on boot. So every time I wanted to use sys-netcheat or noexs I had to manually move them into /atmosphere/kips/. So like every normal person, instead of simply putting up with with a minor inconvenience I spent way more time than I ever would have lost in the first place making a program to do it for me.
    Thus I present Kip Select for atmosphere fusée!
    [​IMG]
    Usage:
    This homebrew enables and disables kips by moving them between the /atmosphere/kips/ folder and an added folder called /atmosphere/kips_disabled/. Since fusée only checks the kips folder on boot, anything in kips_disabled gets ignored. The homebrew automatically creates the required folders (/atmosphere/kips/ & /atmosphere/kips_disabled/) if they are missing, all you need to do is make sure your kips are in one of the two folders before launching. The interface is pretty self explanatory, use the d-pad to select the kip you want and the A button to toggle the kips status, a reboot is then required for the kip to be loaded/unloaded. This tool also now supports basic BCT.ini editing, both debugmode and debugmode_user can now be toggled from within the tool (Requires atmosphere 0.8.1+).

    Notes:
    • The homebrew supports a maximum of 32 kip files, using more will cause a error and has on a few occasions caused a console hard crash for me. This should not be much of a problem, i don't even think there are even 32 useful kip files available as of now.
    • Try and keep your kip names sensible, the homebrew should pick up on any file name but naming your kip with emoji's certainly isn't going to help.
    • If the homebrew detects a kip with the same name in both /atmosphere/kips/ and /atmosphere/kips_disabled/ it will throw a rather cryptic error. On rare occasions I have had kips copy instead of move from one folder to the other, i'm pretty sure I have fixed this issue but if you run into a error that says "File Move Failed", check the folders first.
    • I'm not sure how safe exFat is with this program, it should be fine as the only write operation called is rename() but my personal experiences with exFat suggest it corrupts simply when you look at it the wrong way so your millage may very.
      • As of a recent update this tool now supports rebooting the console with a button press, doing this with exFat WILL cause corruption, please if you are still using exFat I would highly recommend making a backup of your sd card to your PC and reformatting as fat32, you don't even have to reinstall as horizon splits the encrypted nca's on the sd to 4gb chunks regardless of the file system that is being used.

    Download:
    • (I typically write code with java (Android Apps) and NOT C++. My code probably breaks any and all conventions in existence, sorry about that)
    Oh and one final note: use this software at your own risk, I am not responsible in any way if your switch somehow spontaneously combusts.
     
    Last edited by Sciguy429, Jan 19, 2019
  2. Draxzelex

    Draxzelex GBAtemp Legend
    Member

    Joined:
    Aug 6, 2017
    Messages:
    12,425
    Country:
    United States
    A disabled folder for kips? Now where have I seen that before...

    Anyway, nice that we can now customize kips with Atmosphere :P
     
    SaffronXL likes this.
  3. hippy dave

    hippy dave BBMB
    Member

    Joined:
    Apr 30, 2012
    Messages:
    6,075
    Country:
    United Kingdom
    You probably can't post links until you've got more posts.

    Sounds like a useful tool, thanks for sharing.
     
    Hamdan likes this.
  4. aerios169

    aerios169 GBAtemp Advanced Fan
    Member

    Joined:
    Dec 30, 2012
    Messages:
    633
    Country:
    Mexico
    Sorry for my ignorance but which is the use for kips?
     
  5. Localhorst86

    Localhorst86 Robert'); DROP TABLE members;--
    Member

    Joined:
    Jul 17, 2014
    Messages:
    2,359
    Country:
    Germany
    system modules, like FTP or music playback.
     
    Tinnetju likes this.
  6. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    you need 10 post to be able to post URLs.
    if you want, I can add the url for you until you reach 10 posts on the forum, but you won't be able to edit your message.
    you can post the link without http:// in front of the url, or add spaces, or post in a [ code ] tag, and it shouldn't try to create the link.

    your tool is eligible to the current homebrew bounty category, if you want to enter you can find the thread on the website portal.

    edit:
    Links if needed.
    Download: https://github.com/Sciguy429/KipSelect/releases
    Source Code (GPL v3.0): https://github.com/Sciguy429/KipSelect
     
    Last edited by Cyan, Dec 4, 2018
  7. CatmanFan

    CatmanFan Anxious and regretful
    Member

    Joined:
    Aug 14, 2016
    Messages:
    1,951
    Country:
    Morocco
    Sounds good and helpful! :D
     
  8. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States

    Thanks for the clarification on the links, I suppose it makes sense to block them for newcomers this site probably attracts quite a few spammers.


    replace * with /
    and $ with a .
    GitHub source: github$com*Sciguy429*KipSelect
    GitHub Releases: github$com*Sciguy429*KipSelect*releases

    There are the links if you wouldn't mind replacing them
     
    bipi likes this.
  9. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    I added the links to your message (and mine too, just in case). if you need to edit before you reach 10 posts you can ask me and I'll do it again.
     
    Ann0ying and Sciguy429 like this.
  10. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States
    Just a quick update...

    I just put up a new release on GitHub that supports basic BCT.ini editing. It allows for the configuration of the debugmode and debugmode_user setting introduced in atmosphere 0.8.1. Setting these to 1 is necessary to use tools like sys-netcheat or noexs. The tool will still work with switch on a older atmosphere version but the BCT.ini options will be grayed out.

    (No link update is needed, the release is on the GitHub)
     
    hippy dave likes this.
  11. intellettuanale

    intellettuanale GBAtemp Regular
    Member

    Joined:
    Feb 25, 2017
    Messages:
    116
    Country:
    Italy
    Is there a list of all system module aviable?
     
  12. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    I try to maintain a list, but it's probably missing a few because some of the projects are not always posted on gbatemp.
    for example, Ad hoc disable is private (I don't have a discord account) and I don't know what it really does, nor if it's the same as (or a rename of) Ldn_mitm

    disabling ad hoc is not the same as converting ad hoc to access point nor converting WAN to LAN. either the name is not chosen properly, either I don't understand the purpose of disabling ad hoc.
    does it allow non LAN game to work in LAN ? (it's what Sciguy said on reddit)
    does it disable local play (ad hoc) and force games to play over access point (router)?
    which game are concerned, which ones are working?


    https://wiki.gbatemp.net/wiki/List_of_Switch_homebrew_applications
    help me make a better and more complete list.
    current temporary list at the top, proper list will be at the bottom.
     
    Last edited by Cyan, Dec 5, 2018
    intellettuanale likes this.
  13. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States
    The kip in question is just a rename of the one available on the Lan play discord, it had a rather confusing name so I just renamed it to adhoc-disable.kip as that's pretty much what it dose. It prevents a game from disconnecting from wifi and trying to use adhoc mode, that's all I know about it. As far as I know its not on gbatemp anywhere, though I'm not really sure why as it's incredibly useful for any game without a proper lan mode.
     
    Cyan likes this.
  14. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    thank you, that make more sense :)
    I didn't know it was a problem while playing using the LAN option. I thought games were designed to work and stay properly connected on LAN if the option is officially available in them.

    both this one and ldn are not available on gbatemp. ldn is used to convert diablo3 wan to lan to allow playing on LAN even if the game doesn't have any official LAN option. I think it's developed specifically/only for Diablo3.
    it would be great if all games were compatible :)
     
    Last edited by Cyan, Dec 5, 2018
    Sciguy429 likes this.
  15. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States

    As far as I know this kip was originally made for SSU as it dosent have a lan mode but I've tested it on a few other games and it has worked just fine. Mario Kart 8 for instance works with it as well, though it's not nessairy as it dose have a built in lan mode.
     
  16. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    Then I misunderstood what you said.
    I thought it was useful only for games with the lan option. so the module allow non lan game to work in lan? much like ldn then, but for more games?
    sorry to talk about other kips functionalities in your thread.
     
  17. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States
    I honestly don't know, pulled the kip off of discord awhile ago and I've completely forgotten the context at this point. I know it was from the lan-play discord. I know it had SSU in the tittle and was meant for use with that game but I don't remember what else was said. For all I know it could be a beta build of ldn I'm not sure.
     
  18. Cyan

    Cyan GBATemp's lurking knight
    Former Staff

    Joined:
    Oct 27, 2002
    Messages:
    23,205
    Country:
    France
    alright, thank you. then I'll wait to have more information to add it to my wiki list.
     
  19. TheZander

    TheZander King of the Level 7's
    Member

    Joined:
    Feb 1, 2008
    Messages:
    1,965
    Country:
    United States
    This is for disabling or enabling kips from Homebrew launcher application intended for the next reboot?
     
  20. Sciguy429

    OP Sciguy429 Member
    Newcomer

    Joined:
    Dec 3, 2018
    Messages:
    18
    Country:
    United States
    You still need to reboot your switch, the feature your mentioning would have to be implemented at the system level with atmosphere. All this app dose is control wether or not they are loaded by fusee at boot.
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Atmosphere, Manager, Select