Jump to content

pkNX: Nintendo Switch ROM Editor & Randomizer


Recommended Posts

When I try to open up my folder with both ExeFS and RomFS (All extracted properly) for The Crown Tundra (Using the latest version of pkNX) I am getting an instant error and can not figure out the issue.

Box that pops up is an "Unhandled exception has occurred in your application"

 

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at pkNX.Structures.PersonalTable.SplitBytes(Byte[] data, Int32 size)
   at pkNX.Structures.PersonalTable..ctor(Byte[] data, GameVersion format)
   at pkNX.Game.GameManagerSWSH.Initialize()
   at pkNX.Game.GameManager..ctor(GameLocation rom, Int32 language)
   at pkNX.Game.GameManager.GetManager(GameLocation loc, Int32 language)
   at pkNX.WinForms.Controls.EditorBase.GetEditor(String loc, Int32 language) in D:\a\1\s\pkNX.WinForms\MainEditor\EditorProvider.cs:line 66
   at pkNX.WinForms.Main.OpenFolder(String path) in D:\a\1\s\pkNX.WinForms\Main.cs:line 130
   at pkNX.WinForms.Main.Menu_Open_Click(Object sender, EventArgs e) in D:\a\1\s\pkNX.WinForms\Main.cs:line 62
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4250.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
pkNX
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/antsa/OneDrive/Desktop/pkNX/pkNX.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4250.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4220.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
pkNX.Structures
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/antsa/OneDrive/Desktop/pkNX/pkNX.exe
----------------------------------------
pkNX.Game
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/antsa/OneDrive/Desktop/pkNX/pkNX.exe
----------------------------------------
pkNX.Containers
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/antsa/OneDrive/Desktop/pkNX/pkNX.exe
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

 

Link to comment
Share on other sites

I've edited my Sword file using Pknx and took the folder titled with the title id that it generates and placed that in atmosphere/titles/ but the changes don't appear ingame when I play. For example, the first battle vs Hop, I set his Wooloo to be level 6, but it's still level 3. I'm not sure what I could be missing, but if anyone could give me some guidance, it'd be much appreciated.

Edited by Amusement
Link to comment
Share on other sites

On 10/25/2020 at 1:12 AM, wyc1149102695 said:

I have successfully modified it before, and I did put the folder into the corresponding position of the memory card, whether it is the atmosphere or tx will report an error, so I want to ask if you have encountered the same situation as me.
Finally, the software I used for dump is called NXDumpTool

I'm genuinely not sure what's causing the error you're getting in that case. The game launches fine for me, but does not apply the changes I made, however.

Link to comment
Share on other sites

1 hour ago, Amusement said:

I've edited my Sword file using Pknx and took the folder titled with the title id that it generates and placed that in atmosphere/titles/ but the changes don't appear ingame when I play. For example, the first battle vs Hop, I set his Wooloo to be level 6, but it's still level 3. I'm not sure what I could be missing, but if anyone could give me some guidance, it'd be much appreciated.

With the latest release of atmosphere the file now has to go into atmosphere/contents NOT atmosphere/titles

Link to comment
Share on other sites

In Sword&Shield areas that don't actually have weather-dependent encounters in-game, still have weather encounter tables. Maybe it's not exactly a pkNX question and more of a SWSH one, but do those matter? If I change only the "Normal" table, would I still encounter Pokémon from any of the weather tables?

Link to comment
Share on other sites

On 11/3/2020 at 8:22 AM, eworm said:

In Sword&Shield areas that don't actually have weather-dependent encounters in-game, still have weather encounter tables. Maybe it's not exactly a pkNX question and more of a SWSH one, but do those matter? If I change only the "Normal" table, would I still encounter Pokémon from any of the weather tables?

No for example majority of the routes only use the normal weather so you would only need to change the normal weather and could leave the rest the way they were , you would need to change route 6 , route 8 and route 9 cause they have specific weather like sunlight or snow , hope this helps

Link to comment
Share on other sites

Hi I need help when building th solution in visual studio 2019 this error message pops up: Severity    Code    Description    Project    File    Line    Suppression State
Error        Couldn't process file Main.resx due to its being in the Internet or Restricted zone or having the mark of the web on the file. Remove the mark of the web if you want to process these files.    pkNX.WinForms            

Link to comment
Share on other sites

Wondering if someone here can offer me some help/advice. 

I dumped my Pokemon Shield files to randomize and edit a few things for my next playthrough. I made the changes I wanted to make, then saved. I have a few mods (texture, resolution, etc.) that I have used playing this on Yuzu previously. It was my understanding that I could take the folder that is created when making edits in PkNX and then put that in the Mod Data folder for Yuzu. I did this like I have done in the past, selected it as active in Properties...but nothing. 

When I try and launch the game, sometimes it won't launch at all. It just gets stuck Other times, it launches as if I haven't added anything. Am I doing something wrong? 

Link to comment
Share on other sites

When editing in-game trades with pkNX there are multiple lines that I don't know what to do with, can anyone please explain the following?

Hash0

Feeling

TextVar

I've been looking for a guide but there is none...

Edited by Guest
Link to comment
Share on other sites

Hi there I've been using pkNX and pk3ds for a long time now but all of a sudden my switch games won't randomize, I'm completely lost and I'm taking every single step I used to (including downloading the updated versions) but it's still not working if someone could tell me like a log I could post to see what I'm doing wrong that'd be very appreciated thx. 

Link to comment
Share on other sites

I am working at making a lot of changes to Pokemon Shield for my next playthrough. I'm having specific challenges with PKNX not saving my changes and writing them to a patch folder after doing work. 

For example, I will go into Trainers and make some changes to Hop and a few others. I click save when I'm done. When I go back into Trainers it seems like the changes were saved, but when I close PKNX and look in the patched folder the changes for many of the trainers are missing. Usually it only patches over the last few that I did. I don't even know what to do at this point to save my changes so I can transfer them to my game. 

I've also noticed that even the changes that ARE saved in the patched folder with the exefs and romfs don't appear in PKNX when I reopen. It appears as if it is a clean romfs of the game with no edits. 

Am I doing something wrong? Are there certain tricks to saving changes in PKNX?

Edit: OK, I actually figured out my problem. If you save and close the window and then go back in and make changes again (I was saving after every couple of trainers), then the previous edits you made get erased. If you want them to take effect you need to save and close all the way out of PKNX. It will write them in the patched folder and they will come up when you load it up again. 

 

Edited by ussbirdman
Link to comment
Share on other sites

I'm having a separate problem now. 

Once I take the changes for trainers' Pokemon and put them in the Mod Date Folder (I'm using Yuzu), the game won't launch. It just sits at the launch screen. I've deleted the trainer data folder since I read that can make the game crash. I just have edits to the Pokemon trainers have. Is that something that doesn't work at the moment?

All of the other edits/mods I've made have worked fine but editing the trainers seems to be more troublesome. Has anyone been able to edit or randomize trainer Pokemon?

Edit: Well, I feel like a dummy. I figured out that what was causing the issue was another mod that I had already installed previously. Got it all working now. 

Edited by ussbirdman
Link to comment
Share on other sites

Hi, I'm new to modding games for the switch and when I try to open pokemon sword with PkNX I keep getting this error and don't know how to fix it or what I've done wrong.;

 

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at pkNX.Structures.PersonalTable.SplitBytes(Byte[] data, Int32 size)
   at pkNX.Structures.PersonalTable..ctor(Byte[] data, GameVersion format)
   at pkNX.Game.GameManagerSWSH.Initialize()
   at pkNX.Game.GameManager..ctor(GameLocation rom, Int32 language)
   at pkNX.Game.GameManager.GetManager(GameLocation loc, Int32 language)
   at pkNX.WinForms.Controls.EditorBase.GetEditor(String loc, Int32 language) in D:\a\1\s\pkNX.WinForms\MainEditor\EditorProvider.cs:line 66
   at pkNX.WinForms.Main.OpenFolder(String path) in D:\a\1\s\pkNX.WinForms\Main.cs:line 130
   at pkNX.WinForms.Main.Menu_Open_Click(Object sender, EventArgs e) in D:\a\1\s\pkNX.WinForms\Main.cs:line 62
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4250.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
pkNX
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/chaz_/Desktop/Emulators/Switch%20Randomiser/pkNX/pkNX.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4270.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4270.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
pkNX.Structures
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/chaz_/Desktop/Emulators/Switch%20Randomiser/pkNX/pkNX.exe
----------------------------------------
pkNX.Game
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/chaz_/Desktop/Emulators/Switch%20Randomiser/pkNX/pkNX.exe
----------------------------------------
pkNX.Containers
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/chaz_/Desktop/Emulators/Switch%20Randomiser/pkNX/pkNX.exe
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

 

If any one can try and help me with this that would be amazing.

Link to comment
Share on other sites

Hey I just joined after lurking for the last few days and just want to say firstly thanks for all the hard work and input for this tool. For the most part it allows me to create Pokemon games in the way I always personally thought it should be more like in terms of stats, evolutions, moves, etc.

I'm already about halfway through my play through of Sword and it works with all the edits I've made from pkNX however it only applies changes I've made (stats, learnsets, abilities, evolutions, etc.) to Pokemon AFTER the changes have been made i.e. the changes don't affect Pokemon I've already caught. I don't want to start again this late into the game and don't foresee another play through any time soon so can anyone tell me how I could apply the changes I've made in pkNX to my existing Pokemon in my save to make the most of this play through?

Once we can edit moves and possibly abilities then I think I could create my ideal Pokemon hack which I have wanted for ages. I'm chuffed to see how close to that I can get so far :D

Thanks in advance for any input guys!

EDIT: I got it to apply type changes to already caught Pokemon (finally have a water/dragon Gyarados) but not abilities and stats. Some progress at least.

Edited by TommyTwoToes
Additional info
Link to comment
Share on other sites

I have been having trouble with using the randomization for my Pokemon Shield. I tested to make sure it worked fine, and it did for a few days. Now out of nowhere it suddenly has started crashing whenever I enter the Pokedex (Crash Reports here). I'm not sure why this is, because when this started I changed 0 files from when I created my randomizer and it worked for a solid week before these crashes. I narrowed the file down to the data table file, I'm just unsure how to go about fixing this. I have even tried rerandomizing the data table and still no success, if anyone could please help I'd greatly appreciate any/all help with this!

Link to comment
Share on other sites

  • 4 weeks later...

Hi, i have been trying to use the move info option from the masterdump option which is available in pokemon sword's main menu. The files are being dumped into the folder called DUMP with text files in it. I dont know how to go about it after that. Hope someone can help

Link to comment
Share on other sites

Still wondering what's the eta for the move editor on the swsh side. Other than that, good editor. Cheers

 

I've figured out on my own how to edit the moves in swsh using a text editor but it's incredibly tedious. if you'd like the information i've gathered on the subject to help with adding this feature, i'm prepared to help.

Link to comment
Share on other sites

Hey guys, I need some help with my Switch, pkNX and the DLC´s and the newest version of pokemon. 

1. I can´t turn on my switch without a payload anymore, so I can´t go online without using Hekate 5.5.1 as a payload and accessing OFW through the menu. To get this problem i used Lockpick-rcm.bin first as a payload and after this i used an older version of hekate because i didn´t know i had an older version, after that i tried accessing a old version of atmosphere (all of my modding stuff was from march this year) 
after this my switch won´t turn on normally. 

2. I used the new version of pkNX, I dumped the Base RomFS, ExeFS. The update romfs, both dlc romfs. pkNX invalid folder/unable to recognize game data. So if take out the DLC roms out of the big RomFS folder it says that there are parts of part missing. What can I do? 

What am I doing wrong, what could I do better? It´s so hard to mod Pokemon sword, because all of the tutorials are outdated. 
Thank you already for your help! 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...