chaos Posted January 6, 2024 Report Posted January 6, 2024 NHL94 Genesis ROM Image Updater version 0.3 (Current version) Version 0.3 adds 32 team ROM functionality This Python app will take image assets supplied, and import them into a Genesis NHL'94 ROM. It can also export the image assets from a Genesis NHL'94 ROM and store them in byte arrays. It is useful for exporting assets from a previous ROM and importing them into a new one. The app is designed to either update or export the following image data: Team Logo and Palette Team Rink Logo and Palette (also the Home Jersey Palette) Team Away Jersey Palette Banner and Palettes NOTE: The image data is in byte format. It can't be opened in any program other than a text editor. There are 2 options to use: Before running, please make sure the team names and rosters are already set in the ROM!! Extract Images Choose a ROM, set the number of active teams, and click the Extract Images button. The app will output a folder with the ROMs name containing image assets for each team (listed by team abbreviation). Import Images The program will use the image asset data located in the import folder (listed by team abbreviation). It will only import the image assets that are present in the folder, and the program will notify you of which teams in the ROM were updated, and which were not. Once done, it will ask you for a location and a name to save the modified ROM. Workflow: 1 - Create a new ROM and set the rosters and team names using NOSE or similar. 2 - Find the ROMs that have the image assets you would like to use in your ROM. You can find many ROMs on the forum from this post, or by looking in the league section of the forums - 3 - Start the app. Load the ROM. Choose the ROM type (30 or 32 Team ROM), choose the number of active teams (ex: if you have only 12 teams in the ROM, choose 12) and click export. A message will pop up once complete. Look in the app's folder to find a folder with the ROMs name. Inside, each team's image assets will be separated in a folder with the respective team abbreviation. Continue exporting other ROMs if needed. 4 - Add the team folders you wish to use to the import folder located in the app's main folder (if there is no import folder, create a new folder with the name "import" (no quotes)). You only need to add the teams that you wish to change. You can also remove the data in the team's folder that you do not wish to update (for instance, if you only want to update the rink logo and palette, leave them in the folder, and delete the other files). 5 - Load your new ROM into the app. Then, click the Import button. The app will notify you which teams were updated, and which teams were not. Then, it will prompt you to save the modified ROM. Afterwards, check in an emulator to make sure the image assets were transferred over. Zip file contains a Windows executable. You can get the source code from my GitHub - https://github.com/Chaos81/nhl94-image-updater Image_Updater_ver_0.3.zip 1 3 3 Quote
Jkline3 Posted January 7, 2024 Report Posted January 7, 2024 REALLY looking forward to trying this out. 1 Quote
kingraph Posted January 27, 2024 Report Posted January 27, 2024 This thing is SWEET, thank you Chaos. 1 Quote
NHL94user Posted March 6, 2024 Report Posted March 6, 2024 How would I extract all 32 teams in a 32-team ROM? Quote
Sean Posted May 4, 2024 Report Posted May 4, 2024 (edited) On 3/5/2024 at 8:35 PM, NHL94user said: How would I extract all 32 teams in a 32-team ROM? I also am wondering this - assuming no support for 32 teams right now?\ Edit: I think I have this working with 32-teams with some edits to your code. I'll share once tested more. Edited May 5, 2024 by Sean Quote
Sean Posted May 5, 2024 Report Posted May 5, 2024 This will only work with 32 team ROMs since I'm not a great programmer and just swapped the offsets and raised the team limit, but it will work. Someone more talented could probably do some if-then stuff. Thanks for making this super helpful tool @chaos! 32teamIU.zip Quote
chaos Posted May 6, 2024 Author Report Posted May 6, 2024 20 hours ago, Sean said: This will only work with 32 team ROMs since I'm not a great programmer and just swapped the offsets and raised the team limit, but it will work. Someone more talented could probably do some if-then stuff. Thanks for making this super helpful tool @chaos! 32teamIU.zip 38.15 MB · 0 downloads Thanks, Ill check it out, and add it to the GUI and stuff Quote
chaos Posted May 6, 2024 Author Report Posted May 6, 2024 21 hours ago, Sean said: This will only work with 32 team ROMs since I'm not a great programmer and just swapped the offsets and raised the team limit, but it will work. Someone more talented could probably do some if-then stuff. Thanks for making this super helpful tool @chaos! 32teamIU.zip 38.15 MB · 0 downloads Do you have the source code? Quote
Sean Posted May 6, 2024 Report Posted May 6, 2024 6 hours ago, chaos said: Do you have the source code? Whoops - here you go: source.zip Let me know if this is what you need. Has the modified scripts and so on. Quote
chaos Posted May 7, 2024 Author Report Posted May 7, 2024 5 hours ago, Sean said: Whoops - here you go: source.zip Let me know if this is what you need. Has the modified scripts and so on. This is perfect. I'll update the tool, thanks! Quote
chaos Posted May 8, 2024 Author Report Posted May 8, 2024 I updated the app to version 0.3. This adds 32 team ROM support (thanks to @Sean for pushing this). Source code is also updated on GitHub 1 1 Quote
AdamCatalyst Posted May 31, 2024 Report Posted May 31, 2024 On 5/7/2024 at 9:26 PM, chaos said: I updated the app to version 0.3. This adds 32 team ROM support (thanks to @Sean for pushing this). Source code is also updated on GitHub On behalf of the Utah Mammoth / Yeti, I thank-you! Worked just as advertised. My only suggestion would be to include a read-me with the EXE distro. Now I see all my player photos are a mess. I've never been able to find a neat way to batch import them. If you were ever inclined to add such functionality, it would be greatly appreciated! 1 Quote
chaos Posted June 1, 2024 Author Report Posted June 1, 2024 7 hours ago, AdamCatalyst said: On behalf of the Utah Mammoth / Yeti, I thank-you! Worked just as advertised. My only suggestion would be to include a read-me with the EXE distro. Now I see all my player photos are a mess. I've never been able to find a neat way to batch import them. If you were ever inclined to add such functionality, it would be greatly appreciated! @kingraphhas a nice spreadsheet I use for that. Works well The help menu give you a workflow. But good idea! I will add that. Quote
AdamCatalyst Posted June 2, 2024 Report Posted June 2, 2024 I've never been able to get that spreadsheet to work for me. Perhaps I am trying to use it in a way that it wasn't intended. I want to be able import hundreds of updated images at once into a ROM, just like your tool handles it, with folder and filenames. Can that be done with the spreadsheet? I'm looking through your source code. I wish I knew Python any programming languages whatsoever. I feel like I could adapt this to do exactly what I want. Maybe I'll start by trying to sort out what I want in pseudo-code. Quote
chaos Posted June 2, 2024 Author Report Posted June 2, 2024 42 minutes ago, AdamCatalyst said: I've never been able to get that spreadsheet to work for me. Perhaps I am trying to use it in a way that it wasn't intended. I want to be able import hundreds of updated images at once into a ROM, just like your tool handles it, with folder and filenames. Can that be done with the spreadsheet? I'm looking through your source code. I wish I knew Python any programming languages whatsoever. I feel like I could adapt this to do exactly what I want. Maybe I'll start by trying to sort out what I want in pseudo-code. I will work on adding this to the tool. I have wanted to do it in the past. Give me a few weeks to figure it out, I'll get it working. I feel like this would be a proper way to import them: - Photos named with first name_lastname, that are the correct size already, all in one folder - The tool will load them into a space in a decompressed ROM - The tool will look through the roster of the ROM, and set up the offsets for each player's photo Let me know if there's anything else you think could be useful! Quote
AdamCatalyst Posted June 2, 2024 Report Posted June 2, 2024 That would be amazing! Whatever you did for the core product worked perfectly for me, once I figured out I needed to create an "import" folder. I'll throw out some thoughts… - most basic system wouldn't need names, and could follow exactly what you have done so far, using team abbreviations named folders and roster player numbers. So 00.png in the TOR folder is the Toronto's first goalie. - I currently use a system with no folders or team names, where each team is assigned a number, so 28-00.png is Toronto's starting goalie image. - A dream system would see that my roster has "Ilya Samsonov" specified as roster player 00 for TOR, and would grab the PNG with the matching player name. In my TileM, I can then go to the bookmark for 28-00, and make a manual tweak to that image if I have to. A system where it just dumped all the images in the ROM, then adjusted the offsets for each players photo would be less desirable, but totally workable. Really anything you can do to enable a batch export and batch import of player photos will be a huge benefit. Quote
chaos Posted June 3, 2024 Author Report Posted June 3, 2024 4 hours ago, AdamCatalyst said: - A dream system would see that my roster has "Ilya Samsonov" specified as roster player 00 for TOR, and would grab the PNG with the matching player name. This would be the idea. Because you can use a ROM that already has the player photos in it, and it can adjust accordingly, knowing the order of the photos it stored in the ROM already. It can store a list of which order to use from a previous ROM and you could select that list Quote
AdamCatalyst Posted June 3, 2024 Report Posted June 3, 2024 Paging @von Ozbourne. Speak now or forever hold your peace. Quote
von Ozbourne Posted June 3, 2024 Report Posted June 3, 2024 3 hours ago, AdamCatalyst said: Paging @von Ozbourne. Speak now or forever hold your peace. Oh? I'll be honest. I haven't tried this out yet, but I tend to concentrate on iterating and testing a bunch of things individually. I will say that I have settled on a naming convention of naming photos using the player's name as it appears in the game. That way I can copy the names out of NOSE and paste them in the import option in TM. And if they get traded, I can just copy/paste in the new spot without having to worry about the file needing to be renamed. That said, for the high turnover tournaments like the Olympics and World Championships, I did raid the IIHF website and name the photo files in the format like "CAN16.png". The reference point being that the image is of the player on Team Canada who wore #16. Rather than the player for Canada occupying the 16th or 23rd roster spot. I am kind of curious if the tool can use that as a reference to pull from in these cases. [I am reminded of how I had Sebastian Aho and Sebastian Aho<invisible underscore character> in the game in order to differentiate them because having just names runs into the odd issue like this] I will say that when I was trying out EARE more for the photos, I learned how each photo corresponds to an offset that can be put in anywhere in the order of rosters in the main menu/player cards. In theory, one could just put all of the photos in one big batch in alphabetical order, and then simply rearrange the order of offset link references [or whatever words be good] I did forget about this option eventually because it seemed like it could get fiddly once bubble players start getting called up and sent down. The colour palettes and logos part is intriguing to me though. [even if I had already made a version of a ROM that shifted the teams around to leave the blank space under the "U"] Quote
AdamCatalyst Posted July 9, 2024 Report Posted July 9, 2024 Friendly reminder to folks that if you use this, you likely also want to update the Organ Music Assignments in your ROM. Here is a tool that might help. Quote
Jlsegafan2001 Posted July 9, 2024 Report Posted July 9, 2024 Yo, I would like to see player photos be supported. Quote
Jlsegafan2001 Posted yesterday at 07:34 PM Report Posted yesterday at 07:34 PM On top of that, the "images" are text files with strings of letters and numbers. Quote
Sean Posted 16 hours ago Report Posted 16 hours ago 7 hours ago, Jlsegafan2001 said: On top of that, the "images" are text files with strings of letters and numbers. It exports and then imports the raw hex code for the image, including palette. If you want a completely new image you’d still have to make it a first time, or just export everything you need from finished ROMs and work backwards from there. On 1/6/2024 at 5:20 PM, chaos said: The app is designed to either update or export the following image data: Team Logo and Palette Team Rink Logo and Palette (also the Home Jersey Palette) Team Away Jersey Palette Banner and Palettes NOTE: The image data is in byte format. It can't be opened in any program other than a text editor. 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.