codemonkey85 Posted September 17, 2013 Author Posted September 17, 2013 You're gonna want to start here: NDS: How to Backup/Restore your retail cartridge save file for DS games http://projectpokemon.org/forums/showthread.php?t=16601
codemonkey85 Posted September 20, 2013 Author Posted September 20, 2013 boxes on the right scroller are empty (I'm not sure if you had anything in mind for that....) Oh, I have something in mind for that all right. I love being me. By the way, the colors are just the beginning. There's planned functionality too, of course.
theSLAYER Posted September 20, 2013 Posted September 20, 2013 I've never done this, I just wanted to make a beast team to do my run-through of heart gold. I apologize for my inexperience but what am I to do? I also propose you can run your legit backup of your game on an emulator (to get a save, in case you don't have any hardware for save backing up), and then use the program for your whatever needs. Lastly, to get the pokemon back on your cart, you can use pokecheck or a gts server to send them to your retail cart. I love being me. By the way, the colors are just the beginning. There's planned functionality too, of course. OH YEAH THE COLORS! COOOL!!
codemonkey85 Posted September 20, 2013 Author Posted September 20, 2013 As I said to Lego (via PM), if you think the colors are cool now - just wait until they make it into release. I spent about 20 minutes with my emulator, Snipping Tool, and MS Paint and got the real hex codes for the actual colors used in the game.
codemonkey85 Posted September 22, 2013 Author Posted September 22, 2013 Some minor additions: Hidden Power Pokerus Images for TMs/HMs and other previously missing items Box "grid" colors Also, you can now click one of the box grids to select a box. Plus, when you change a box, the list focuses on the one you switched to, and frames it. Yay? Oh, plus... some degree of Mac OS compatibility:
codemonkey85 Posted September 29, 2013 Author Posted September 29, 2013 I think some of you might take some interest in the forthcoming update: There is obviously still a lot of work to be done, but the underlying mechanics have been pretty much worked out - once I build the interface it should be pretty easy to use. You'll be able to choose which columns to display, filter and sort results, etc. Woo!
Antidote Posted October 18, 2013 Posted October 18, 2013 I've been looking through your frmBoxes.cpp, and I can tell that your used to C# It's looking pretty good but I have several concerns: in frmBoxes.cpp, you're using new but never deleting objects, which makes me believe you're doing it else where as well, while this is fine with C#, it's not fine with C++, you're leaking memory at a rate i've not seen in a long time. Also, you're not taking advantage of Qt's features, Qt has a builtin SQLite implementation that you should be using to take advantage of signals and slots. If you don't mind I'll be making improvements to your code and supplying patches. please check my own Qt project as a reference: https://github.com/Antidote/SakuraSuite
Antidote Posted October 18, 2013 Posted October 18, 2013 Sorry for the double post, but i can't seem to edit my post (it just keeps trying to load) I ran PKMDS through valgrind, and my fears were confirmed:
codemonkey85 Posted October 18, 2013 Author Posted October 18, 2013 Wow, a contributor! I very much appreciate your advice. To be honest I used VB.Net for a long time before working on this project, so it is true that I am not used to having to manage memory. I actually have tried to figure out how to free memory, but everything I tried didn't seem to work very well. With that said, it is very exciting to have somebody with Qt experience looking at my source! I will review these patches and make the merges later. Also, I did know that Qt had its own implementation for SQLite but I've chosen to use the library from SQLite.org so that other people that utilize my library don't necessarily need to use Qt.
Antidote Posted October 18, 2013 Posted October 18, 2013 I can understand the reasoning behind using the external SQLite sources, I myself have my own external library that I use extensively (libzelda) I've created an issue ticket plugging a few of the holes I found, still have quite a ways to go until I'm done though. EDIT: Ah, VB.NET will do that to you even more so than C# which is why I advise against it as a first language, it's great for prototyping stuff out, but it teaches very poor programming paradigms that people mistakenly take into other languages, it also doesn't provide a way to explicitly delete objects like C# does. In C/C++ freeing memory is simple, but you have to keep two things in mind: One is malloc/free, new/delete The other is to use the memory management functions provided by the library, sqlite3 has sqlite3_free, I'm still attempting to figure out it's use case, but once I do i'll be cleaning up the code. Also in C++, global variables are highly frowned upon, it leads to confusing code, I notated this in my first patch.
codemonkey85 Posted October 18, 2013 Author Posted October 18, 2013 Again, I sincerely appreciate the input. I'll look everything over after work tonight, although if you're planning to continue looking further I might wait until you're satisfied before attempting to merge any changes (development has been on a bit of a hiatus lately anyway). Also, I'm not totally opposed to the idea of using Qt's SQLite implementation, now that I think of it, if it helps with performance and / or makes it easier to coordinate the backend data with the UI.
Antidote Posted October 19, 2013 Posted October 19, 2013 I'm nearly done patching all the holes that memory is leaking out of. That screenshot I posted originally had over 200 leaks, it's now down to around 10. After I finish patching these holes I'll clean up the code and give you a much better framework to work with. The code as it sits right now is pretty good, but it's very confusing to work with.
codemonkey85 Posted February 7, 2014 Author Posted February 7, 2014 (edited) 02-12-2014: The last several posts of mine have been merged for cleanup purposes. The code as it sits right now is pretty good, but it's very confusing to work with. I'll take that as a compliment! Thanks again for the help! Just FYI, I removed the SQLite database files from the Git repository to reduce the amount of bandwidth used when initializing a new environment. The databases can be downloaded from https://www.dropbox.com/sh/2etuv926vyey5ou/jeAXk1qDXc. Of course, they haven't changed since I moved them, so you could just copy them to a local directory yourself. Actually, now that I'm thinking about it, I'll add the folder path I was using before to the .gitignore so that current local branches won't break after syncing the change. Just a quick notice - I updated the Qt application to include some memory fixes thanks to Antidote. You can grab the update at the usual link. I updated the veekun-pokedex.sqlite file today. Find it at its new home on Dropbox: https://www.dropbox.com/sh/2etuv926vyey5ou/jeAXk1qDXc I added viewing ribbons last night. I plan to allow setting each ribbon "on" and "off" just like the markings, by clicking each one. I've updated the application to fix some issues with the party checksums, and to add a feature to delete all HM moves from all Pokemon in the save file. Enjoy that, PokeTransporter users! QUICK UPDATE: I just pushed out a fix for move PP after deleting HMs. Today I rolled back the veekun-pokedex.sqlite file to a version from before X and Y came out to fix some compatibility issues with regard to type changes, etc. going from Gen V to Gen VI. A quick update - you can now edit the following in the save file: Trainer name Trainer gender Trainer ID / Secret ID Just click Edit-> OT Info! Edited February 13, 2014 by codemonkey85 All changelog stuff
codemonkey85 Posted February 13, 2014 Author Posted February 13, 2014 (edited) UPDATE: Now when you set the Pokemon's held item, the Pokemon's form will change if appropriate. For instance, if you make Giratina hold the Griseous Orb, it will change to its Origin Forme. If you make it hold a different item, it will change to its Altered Forme. Same deal with Arceus and Genesect. Also, if you change a Pokemon's form either manually or by changing its item, the Pokemon's ability will change to reflect the new form if necessary. Right now this applies to Shaymin, Giratina, Tornadus, Thundurus, Landorus, and Kyurem. Great news for Mac users - Mac OS X is a go! https://www.dropbox.com/sh/rms3mr0j2gisrgj/sYasuN7JED Edited February 14, 2014 by codemonkey85
codemonkey85 Posted February 14, 2014 Author Posted February 14, 2014 I'm now releasing binaries on GitHub. I'll probably ditch the Dropbox links at some point. Bam: https://github.com/codemonkey85/PKMDS/releases/tag/v0.5
codemonkey85 Posted April 9, 2014 Author Posted April 9, 2014 Quick update - I haven't touched the Qt application in a while, but I have begun exploring alternate ways of doing the GUI. Depending on how those go I might be looking to re-write the save editor. Stay tuned!
codemonkey85 Posted May 14, 2014 Author Posted May 14, 2014 (edited) PKMDS Save Editor 1.0: Edit your Generation 5 save files! You can download the latest release from: https://github.com/codemonkey85/PKMDS-Save-Editor/releases/latest Please report issues to the GitHub issue tracker! Alternatively, you can report them here: http://goo.gl/A3kW8W PKMDS Save editor currently supports the following Pokémon games: Black White Black 2 White 2 As of this release, you can: Import and export Pokémon. Edit individual Pokémon Common info such as species, form, held item, ball, markings, level Basic info such as nickname, trainer info, ability, EXP Stats info such as IVs, EVs, Nature, Pokerus Moves, PP Ups, current PP Origins info such as met / egg location / date, met level, game, country, fateful, N's Pokémon [*]Drag and drop your Pokémon between the party and current box, or drag and drop from the party / current box to another box using the list on the right [*]Edit box names And there are more features on the way! Edited April 12, 2023 by codemonkey85 Fix text color
codemonkey85 Posted June 2, 2014 Author Posted June 2, 2014 I've released a sizable update (and a quick bugfix)! The big deal for this update is that I've updated the Pokémon box icons to the images from Pokémon X and Y (consistency be damned). In addition, the images are now embedded resources within the PKMDS_CS.dll file, instead of being in a secondary .SQLITE database. This means less files to deploy and keep track of. Yay! Plus: Started work on item sorting Update shininess / sprite when editing TID / SID Changed selection backcolor (and alpha) Fixed some items were missing icons / flavor text As usual, you can find the latest release on the GitHub releases page!
Keylan Posted June 29, 2014 Posted June 29, 2014 Is there a certain way that I need to convert my save file? I am using an R4i Save Dongle to copy my save to the PC. I tried to load the save with your editor, but it keeps saying "Invalid save file!" The file loads perfectly fine in both pokegen, and the beta of pokesavbw. I wanted to try out yours, as it looks a lot better and easier to use than the other ones. Any ideas? I have uploaded my backed up sav file to my dropbox here: https://www.dropbox.com/s/opjtzal3dey5bdc/Black%20original.sav I tested it out using your white sav that same with the source code, and it works fine with that one.
codemonkey85 Posted June 30, 2014 Author Posted June 30, 2014 @Keylan: I've opened an issue on the project's GitHub page. I'll look into this and report back here. You can use this temp fix while I sort out the real issue (handling actual invalid save files): https://db.tt/UMP6XZau
Keylan Posted June 30, 2014 Posted June 30, 2014 Thanks for the quick update. It seems to load fine now. I will try it out for real a later tonight
crown trainer Posted February 24, 2015 Posted February 24, 2015 I tried the most recent download and it refuses to load any of my saves (I'm using an M3DS Real on the Sakura Firmware if that could make a difference), the test .sav is opened, but after about 30 seconds, it gives errors on most boxes... And I can't edit any of the lvl 0 pokemon, which is everything included in the .sav file... If I'm making a mess of it (downloaded the program and saved it in a seperate folder), then please tell me I'm an idiot and give me a step-by-step guide...
codemonkey85 Posted February 25, 2015 Author Posted February 25, 2015 @ crown trainer I could take a look at your save file to see if there's a problem with the format (my app is pretty stringent on that), but this part in particular interests me: the test .sav is opened, but after about 30 seconds, it gives errors on most boxes... So you can load the test save file, but that file causes the app to give you errors? What kind of errors are you seeing? What are you doing before you see these errors?
crown trainer Posted February 27, 2015 Posted February 27, 2015 (edited) @codemonkey85 All I'm doing is opening the test .sav and browsing the boxes (all level 0 pokemon, as stated before) and at some boxes it gives an error I can't recall by heart and I can't find the test .sav anymore... My own White save seems to be invalid and can be found here: https://drive.google.com/file/d/0B0DAqS0JrlvdczlDei1rdVRvV28/view?usp=sharing for black https://drive.google.com/file/d/0B0DAqS0JrlvdanFOTWpRSkYwSm8/view?usp=sharing for white. The error on the test is something about a missing component of the box or something... Edit: It might be useful to say here that PokeGen still opens the files, even edits without issues. Edited February 27, 2015 by crown trainer Additional info
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now