game-extraction-toolbox icon indicating copy to clipboard operation
game-extraction-toolbox copied to clipboard

Future: NeoGeo Classic Collection

Open Feilakas opened this issue 2 years ago • 30 comments

Aside from the SNK 40th Anniversary Collection, SNK has also released about 23 or so games for the Humble Bundle and GOG in DRM-Free form. A few are also available on Steam.

https://www.humblebundle.com/store/neogeo-classic-complete-collection https://www.gog.com/en/games?developers=snk-corporation https://store.steampowered.com/bundle/375/neogeo_bundle/

These games are based on emulation with the original game ROM files sitting inside an ordinary zip.

Should be a pretty easy and straightforward palette cleanser...

EDIT: I just now noticed that two of the games "Art of Fighting 2" and "Baseball Stars 2" have been modified by SNK. The AOF2 zip will still function just fine under current Mame, however the BBS2's file structure seems to be completely different. Not sure if this one is possible to be made even semi-functional.

Feilakas avatar Oct 17 '22 18:10 Feilakas

So, this one presents some logistical problems:

  • Some of these are also released on Amazon Games (they were free at one point), though I'm not sure if all are.
  • This 'collection' is not a collection, but a series of releases. Namco Arcade Game Series has a similar problem. Originally, I had AGS as a single task but I decided to split them recently since they are separate titles.
  • It doesn't have a single installer and isn't installed by a store app from Humble, but would be from GOG, Amazon, and Steam.
  • They are purchased as a bundle, but some bundles are different. In terms of distinct versions, I know of:
    • Amazon Games / Twitch / Curse: No longer available for sale?
    • Humble: NeoGeo Classic Collection Complete: https://www.humblebundle.com/store/neogeo-classic-complete-collection
    • Humble: NeoGeo Classics Pack 1: https://www.humblebundle.com/store/neogeo-classics-pack-1
    • Humble: NeoGeo Classics Pack 2: https://www.humblebundle.com/store/neogeo-classics-pack-2
    • Humble: NeoGeo Classics Pack 3: https://www.humblebundle.com/store/neogeo-classics-pack-3
    • Humble: NeoGeo Classics Pack 4: https://www.humblebundle.com/store/neogeo-classics-pack-4
    • Humble: NeoGeo 25th Anniversary Bundle: https://www.pcmag.com/news/dont-miss-the-neogeo-25th-anniversary-humble-bundle
    • Humble: Individual Titles - Ex. Pulstar: https://www.humblebundle.com/store/pulstar-neo-geo
    • Steam: NeoGeo Bundle (6 games): https://store.steampowered.com/bundle/375/neogeo_bundle/
    • Steam: Individual Titles - Ex. The Last Blade 2: https://store.steampowered.com/app/702110/THE_LAST_BLADE_2/
    • GoG: Individual Titles - https://www.gog.com/en/games?developers=snk-corporation
  • Some titles are store specific, for example:
    • Steam has The Last Blade 2 but not Pulstar,
    • Humble has Pulstar but not The Last Blade 2.
    • GOG has both.
    • Amazon Games has both.

I think I just set a default folder for GOG Galaxy library root, and then note that you can use the Amazon Games, Humble or Steam root folders as well, similar to how I used to do AGS?

Note: This would not include the Hamster releases which are on Microsoft Store and a completely different format, and has a completely different set of games.

shawngmc avatar Oct 20 '22 23:10 shawngmc

Sorry, I genuinely expected this to be a "softball". Maybe just do a search for the names of the zip files in the root folder and all subfolders?

As for the ROMs themselves, the Humble's "neogeo classic complete collection" includes complete copies of the following 38 active game roms plus the bios:

aof2 / aof2a * bstars2 * blazstar fatfursp / fatfurspa garou / garouh ironclad / ironclado kof2000 / kof2000n kof2002 kotm / kotmh lastblad / lastbladh / lastsold mslug mslug2 mslug3 mslugx pulstar rbff2 / rbff2h / rbff2k samsh5sp / samsh5sph / samsh5spho samsho2 / samsho2k / samsho2ka sengoku3 shocktr2 shocktro / shocktroa turfmast twinspri

Plus the necessary "neogeo" System BIOS

EDIT:

  • "Art of Fighting 2" IS functional but has been modified due to censorship and thus fails the CRC check. The Mac dmg package includes the unaltered rom inside a zip.
  • "Baseball Stars 2" is similarly modified and the game files have a different structure. The Mac dmg package includes the unaltered rom inside a zip.

I haven't tried Last Blade 2 but it seems to have been ported by a completely different developer so I wouldn't be surprised if it were substantially different as well.

Feilakas avatar Oct 21 '22 20:10 Feilakas

Decided to get The Last Blade 2 and, as expected, it is built in a completely different way.

It has a "Data" folder with a "rom" subfolder and inside there are 7 bin files, three of which CRC match with known files, specifically the "japan-j3.bin" file from the neogeo BIOS zip plus two files from the lastbld2 ROM zip, the "243-m1.m1" and "243-s1.s1".

Based on the file name and size, it looks like each of the bin files is a combination of the same-letter game files. For instance there is a "c1.bin" whose size and name suggests to include the 243-c1.c1, 243-c2.c2, 243-c3.c3, 243-c4.c4, 243-c5.c5 and 243-c6.c6 game files.

I am guessing that a split operation possibly with interleaving will need to be used to extract the rest of the files.

Feilakas avatar Oct 23 '22 11:10 Feilakas

On Humble Bundle you can extract the proper versions of Art of Fighting 2 and Baseball Stars 2 by extracting the the MacOS dmg with 7zip. Might also work with the Linux version too but when I tried to download that it just spit me on to a webpage with a shell script and some garbled up text (that I'm assuming is binary data). I'm thinking they only updated the Windows versions and forgot about the other platforms.

tydog98 avatar Oct 24 '22 02:10 tydog98

The Steam versions for all the SNK games do differ quite a bit from the GOG/Humble Bundle releases. Last Blade 2, Garou, and King of Fighters 2002UM have that data folder. The Metal Slug games all use a seemingly similar, but also different format.

tydog98 avatar Oct 24 '22 03:10 tydog98

The dotemu2mame.js script works with Metal Slug on Steam and also a bunch of other games stated in the header.

tydog98 avatar Oct 24 '22 17:10 tydog98

These are a mess... Shock Troopers, for example:

  • On Amazon Games, the base folder is 'Shock Troopers', and the files are in 'resources\game'
  • On Humble, the base folder is 'ShockTroopers', and there is a zip.
  • On GOG, the base folder is 'Shock Troopers', and the files are in 'resources\game'
  • On Steam, the base folder is 'SHOCK TROOPERS', and the files are in 'resources\game'.

I have 3 unique folder names and 2 extractions methods for the same title... ugh. And, of course, I can't find these out and test them unless I buy the games.

I'm considering 2 approaches:

  1. Have a 'neogeo_classics_STORE' for each store. There will be a lot of overlap, but the metadata will be pretty clean, and the extraction will be pretty reliable, since each store only has one 'version' of the games.
  2. Have a single 'neogeo_classics' and implement some sort of heuristics. For each Neo Geo title, have a list of potential folder names. Find all folders that match, then look for a ZIP, then look for the individual files. This would be easier to use, but would be a mess to debug and have more complex metadata.

I was originally hoping to do option 2, but the sheer number of options and the complexity is starting to concern me. On the other hand, option 1 yields a less ergonomic user experience, and leaves a bunch of duplicate metadata.

I might just try option 2 for one title and see how it goes.

shawngmc avatar Oct 24 '22 21:10 shawngmc

Concerning the "Art of Fighting 2" and "Baseball Stars 2" games, I can confirm that the Humble dmg packages contain the original unaltered game roms in zip form. Would be great if someone tested the GOG ones as well (right now both games are on sale, AOF2 for a ridiculously low price).

This also presents the interesting alternative of using the Mac packages rather than the windows installers for extracting the other games as well. Humble and GOG both have Mac packages for many of the games and I have a feeling that the ones that do not, like the KOF '98 UM or 2002 UM, are recreations rather than emulations of the original games anyway.

Feilakas avatar Oct 24 '22 21:10 Feilakas

I'm 99% sure the 'Ultimate Match' versions are remakes: https://snk.fandom.com/wiki/The_King_of_Fighters_2002_Unlimited_Match

I'm willing to consider the installers, but... that's another variant to cover. Also, I'm not sure there's a python-native way to read the DMG files. I'm trying to not make 7zip a direct requirement, and a cursory search only shows dmglib, which is Mac only.

shawngmc avatar Oct 24 '22 21:10 shawngmc

You could have the user extract all the DMG files manually if you really wanted to. All the games extract to a "NeoGeo 25th Anniversery Installer" folder with the game files located at "[gameName].app/Contents/Resources/". You could read which games are in the base installer folder and then pick the proper zip files.

I'm sure this is the same for Humble Bundle and GOG (my copies of KOF 2002 are the same and all the porting was done by the same company). That would just leave Steam and Amazon.

tydog98 avatar Oct 24 '22 22:10 tydog98

To summarize right now there are 3 variations of these games. There are the new remakes done in order to give the games rollback netcode done by CodeMystics (this is Last Blade 2, Steam version of Garou, the KOF UM versions, etc). These appear to be incomplete ROMs from what I can tell.

Then there are the original ports done by DotEmu. These have 2 variations.

The first is the ones kept as plain zip files (majority of the Windows installs on Humble Bundle/GOG, all of the MacOS and Linux installs on those platforms).

The next is the variation with the resource folders (Steam, apparently Amazon and some of the Windows GOG/Humble versions?). These can be extracted with cxx's dotemu2mame.js script.

tydog98 avatar Oct 24 '22 23:10 tydog98

Easiest way to consolidate this in my mind is to ignore all the CodeMystics games, standardize on extracting either the Mac or Linux installers from Humble/GOG, then use the dotemu2mame for Steam/Amazon (or perhaps even just ignore Amazon completely cause realistically who's using that?).

tydog98 avatar Oct 24 '22 23:10 tydog98

Easiest way to consolidate this in my mind is to ignore all the CodeMystics games, standardize on extracting either the Mac or Linux installers from Humble/GOG, then use the dotemu2mame for Steam/Amazon (or perhaps even just ignore Amazon completely cause realistically who's using that?).

  • CodeMystics: If you mean the Ultimate Match versions, I completely agree - they just aren't ROM-based. If you mean one of the ones with files to rebuild, that's a bit more bitter for me to swallow.
  • Installers: Ooof. So then we have (using Shock Troopers as an example):
    • Mac on GOG: It's a ZIP file.
    • Mac on Humble: It's a Mac Disk Image (.DMG)
    • Linux on GOG/Humble: It's a data-embedded bash script, UGH. (I can't even get Humble to download, but the URL implies it's the same .sh file.) This would flat out hurt to parse.
    • Android on Humble: APKs are ZIPs, but the internal format might be ugly and only about 8 games are covered by these (Shock Troopers not included).
  • Dotemu2Mame: I'm not against adapting what dotemu2mame.js has done - I already adapted the tile ROM rebuilding from it for Double Dragon Trilogy, etc.
  • Amazon: I somewhat agree, except... they were free for a month back when Amazon owned Twitch. As a result, a lot of people have access to them and wouldn't need to re-buy.

shawngmc avatar Oct 24 '22 23:10 shawngmc

I didn't realize the Mac versions on GOG were different than the Humble ones. Maybe this is all actually a crazy anti-piracy mechanism lol

tydog98 avatar Oct 24 '22 23:10 tydog98

They aren't completely different but enough to present some challenges: The GOG releases for Mac are a zip file with the rom files inside another zip. As an example, for Metal Slug it was: MetalSlug.zip\MetalSlug.app\Contents\Resources\mslug.zip MetalSlug.zip\MetalSlug.app\Contents\Resources\neogeo.zip

For Humble, the same game has a dmg with the following path: MetalSlug_jan2016.dmg\NeoGeo 25th Anniversery Installer\MetalSlug.app\Contents\Resources\mslug.zip MetalSlug_jan2016.dmg\NeoGeo 25th Anniversery Installer\MetalSlug.app\Contents\Resources\neogeo.zip

Feilakas avatar Oct 25 '22 09:10 Feilakas

So, looking at it, I think the only sane path forward is:

  • Make one task for each store - neogeo_classics_humble, etc.
  • Write as much of the code into common libraries as possible
  • Order:
    • Start with Humble, as I own it and it's the most accessible
    • Do Amazon, as it should be largely similar and I already own it
    • Start piecing in GoG and Steam, which are a bit more complex as I don't own all of these.
  • Focus on titles that are unique to the non-Humble stores, which is only The Last Blade 2

GoG has 21 titles I don't own on there, totaling ~$73. Of these, 7 are only $1.79, and 8 are only $2.99, so I might be able to pick a few up - but these are all dupes for me. Steam has 5 titles I don't own on there, totaling ~$50. Even with IsThereAnyDeal, the lowest price for these is $5 each, so it's not practical to buy these dupes. As such, anyone who owns these and would be able to test at some point would be helpful.

The good news is that I at least have a few games representing all of the extraction types:

  • ZIP files right in the folder
  • Subfolder resources/game
  • Subfolder data/roms

shawngmc avatar Oct 25 '22 18:10 shawngmc

Please check your messages, let's see if I can be of some help

Feilakas avatar Oct 25 '22 18:10 Feilakas

So, I've added this wiki page as a first effort to start recording information about the SNK soft releases.

@Feilakas, @tydog98: If either of you own the GOG or Steam titles and can help fill the gaps, that would be great. Don't go out of your way to buying anything you don't want!

For an easier view of what games have been re-released and how, I've also made this page.

One more thing...

One thing that's interesting is that across all ZIP-based versions I've seen, there are TWO versions of the neogeo.zip.

Most of the Humble Bundle games (except Twinkle Star Sprites) have a smaller neogeo.zip:

Archive:  ShockTroopers/neogeo.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
   131072  12-24-1996 23:32   sm1.sm1
   131072  12-24-1996 23:32   sp-e.sp1
   131072  12-24-1996 23:32   sp-s2.sp1
   131072  12-24-1996 23:32   usa_2slt.bin
   131072  12-24-1996 23:32   000-lo.lo
   131072  12-24-1996 23:32   sfix.sfix
---------                     -------
   786432                     6 files

Humble: Twinkle Star Sprites and all of the Amazon releases have a bigger neogeo.zip with a lot more coverage:

Archive:  TwinkleStarSprites/neogeo.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
   131072  12-24-1996 23:32   000-lo.lo
   131072  12-24-1996 23:32   asia-s3.rom
   131072  12-24-1996 23:32   japan-j3.bin
   131072  12-24-1996 23:32   sfix.sfix
   131072  12-24-1996 23:32   sm1.sm1
   131072  12-24-1996 23:32   sp-1v1_3db8c.bin
   524288  12-24-1996 23:32   sp-45.sp1
   131072  12-24-1996 23:32   sp-e.sp1
   131072  12-24-1996 23:32   sp-j2.sp1
   131072  12-24-1996 23:32   sp-s.sp1
   131072  12-24-1996 23:32   sp-s2.sp1
   131072  12-24-1996 23:32   sp1.jipan.1024
   131072  12-24-1996 23:32   uni-bios_1_0.rom
   131072  12-24-1996 23:32   uni-bios_1_1.rom
   131072  12-24-1996 23:32   uni-bios_1_2.rom
   131072  12-24-1996 23:32   uni-bios_1_2o.rom
   131072  12-24-1996 23:32   uni-bios_1_3.rom
   131072  12-24-1996 23:32   uni-bios_2_0.rom
   131072  12-24-1996 23:32   uni-bios_2_1.rom
   131072  12-24-1996 23:32   uni-bios_2_2.rom
   131072  12-24-1996 23:32   uni-bios_2_3.rom
   131072  12-24-1996 23:32   uni-bios_2_3o.rom
   131072  12-24-1996 23:32   usa_2slt.bin
   131072  12-24-1996 23:32   vs-bios.rom
---------                     -------
  3538944                     24 files

Of these, 10 appear to be versions of Uni-Bios, which is a modded Neo Geo Bios to add certain convenience tools?

The other 8 files, however, appear to be more region variants. Having a 'licensed' source is useful.

As the Amazon releases can't be purchased, if you don't own any of them already, Humble's version of Twinkle Star Sprites is an excellent strategic purchase.

shawngmc avatar Oct 25 '22 22:10 shawngmc

Checked my GOG games. Right now I own the four Metal Slug titles (1,2,3, X) and all KOF titles, only two of which are ROM-based, namely 2000 and 2002. All 6 games have the larger neogeo.zip file you describe above with the same 24 files inside.

  • All four Metal Slug titles are as you described. The Folders are "Metal Slug", "Metal Slug 2", "Metal Slug 3" and "Metal Slug X". The rom files are inside the folder Metal Slug ?\resources\game but they are in non-standard form. Taking Metal Slug 1 as an example we have: mslug_zoom_table > 000-lo.lo mslug_bios_m68k > sp-u2.sp1 mslug_game_z80 > 201-m1.m1 mslug_tiles mslug_adpcm mslug_game_m68k mslug_intro1 mslug_intro2 mslug_bios_sfix mslug_game_sfix mslug_spr_usage mslug_howtoplay mslug_gfix_usage scale2x.fsh scale2x.vsh scanline.fsh scanline.vsh default.vsh hud.vsh hud.fsh default.fsh

The Mac installers are zip files with the rom and neogeo zips sitting inside:

  • MetalSlug.zip\MetalSlug.app\Contents\Resources\mslug.zip MetalSlug.zip\MetalSlug.app\Contents\Resources\neogeo.zip
  • MetalSlug2.zip\MetalSlug2.app\Contents\Resources\mslug2.zip MetalSlug2.zip\MetalSlug2.app\Contents\Resources\neogeo.zip
  • MetalSlug3.zip\MetalSlug3.app\Contents\Resources\mslug3.zip MetalSlug3.zip\MetalSlug3.app\Contents\Resources\neogeo.zip
  • MetalSlugX.zip\MetalSlugX.app\Contents\Resources\mslugx.zip MetalSlugX.zip\MetalSlugX.app\Contents\Resources\neogeo.zip

ON THE OTHER HAND, the KOF games are completely different! The ROMs are, in fact, sitting in the game's main folder in zip form!

  • For KOF2000 the folder name is "The King of Fighters 2000" and inside includes: kof2000.zip kof2000n.zip neogeo.zip

  • For KOF2002 the folder name is "The King of Fighters 2002" and inside includes: kof2k2nd.zip (seems to be non-standard decrypted game files) kof2002.zip neogeo.zip

The Mac installers are in pkg form. When opened with 7Zip we find the same zip files inside the following path: the_king_of_fighters_2000_en_gog_3_12082.pkg\package.pkg\Scripts\Scripts~.\payload\Contents\Resources
the_king_of_fighters_2002_en_gog_3_12082.pkg\package.pkg\Scripts\Scripts~.\payload\Contents\Resources\


EDIT: Concerning the Humble games, it would be useful to know that, apart from Twinkle Star Sprites , the censored SNKTwitchArtOfFighting2_2020Jun18__1_updated version of AOF2 also has the extended neogeo.zip

Feilakas avatar Oct 26 '22 18:10 Feilakas

If either of you own the GOG or Steam titles and can help fill the gaps, that would be great. Don't go out of your way to buying anything you don't want!

On GOG I own KOF2002 and on Steam I own the Metal Slugs, Garou, Last Blade 2, and KOF2002UM.

tydog98 avatar Oct 27 '22 03:10 tydog98

Convert Lastblade2 (AmazonPrime)

V needs to be split, C needs to be ODD/EVEN and tile conversion More details are in the following blog BLOG

Download the Android version ROM conversion tool "convpack.zip" and extract it to a folder Copy the Lastblade2 ROM file to the folder where you extracted "convpack.zip".

Comment Here is how to convert Lastblade2 from the comments section

romcutter.exe v1.bin 243-v1.v1 0 400000 romcutter.exe v1.bin 243-v2.v2 400000 400000 romcutter.exe v1.bin 243-v3.v3 800000 400000 romcutter.exe v1.bin 243-v4.v4 C00000 400000 copy m1.bin 243-m1.m1 copy s1.bin 243-s1.s1 romcutter.exe p1.bin 243-pg1.p1 0 100000 romcutter.exe p1.bin 243-pg2.sp2 100000 400000 echo 243-c1.bin StartAddr:0 Odd_or_Even:0 SplitSize:800000 echo 243-c2.bin StartAddr:0 Odd_or_Even:1 SplitSize:800000 echo 243-c3.bin StartAddr:800000 Odd_or_Even:0 SplitSize:800000 echo 243-c4.bin StartAddr:800000 Odd_or_Even:1 SplitSize:800000 echo 243-c5.bin StartAddr:1000000 Odd_or_Even:0 SplitSize:800000 echo 243-c6.bin StartAddr:1000000 Odd_or_Even:1 SplitSize:800000 tiles2crom.exe c1.bin

Save the above code as a bat file and run it. In the 2nd stage, enter the echo value. Once completed, compress the file as Lastblade2.zip and you are done!

shobobon avatar Dec 02 '22 15:12 shobobon

Can confirm that the above batch file does work with the Steam version of the game as well, although copy/pasting the echo values for the tiles2crom split is a bit tedious, hope that this could be automated a bit more.

One correction however, after running ClrMamePro with the 0249 mame dat file, the above batch produces the "lastbld2.zip" not, Lastblade2.zip which doesn't appear to be recognized.

Feilakas avatar Dec 03 '22 00:12 Feilakas

I found Python script https://www.gog.com/forum/general/rom_based_gog_games_compatible_with_third_party_emulators_thread/post46

Download the_last_blade_2.zip https://www.gog.com/forum/general/rom_based_gog_games_compatible_with_third_party_emulators_thread/post49

shobobon avatar Dec 09 '22 03:12 shobobon

Decided to get the Amazon releases since they're free with my Prime subscription. Here's some info that might be useful:

The King of Fighters 2003 was added to Amazon Prime Gaming. Its ROMs are stored in a Data/rom folder like The Last Blade 2.

Real Bout Fatal Fury 2 is stored as a zip file called rbff2.zip, while Metal Slug 1 and X use resources/game for their ROMs.

EDIT: ~RBFF2 Can't be emulated using MAME. I've never played this game before, so I don't know what alterations were made to it or if it can be reversed. Using mame -verifyroms on it comes back with no results.~ See below.

olddesklamp avatar Feb 06 '23 02:02 olddesklamp

What is the version of MAME? The "neogeo.zip" included in AmazonPrime is up to MAME 0.139.

MAME is strictly in the NEOGEO BIOS. ROMs may not be displayed.

NEOGEO BIOS with 0.251 of Arcade64. With a dummy file with some CRC rewritten. It was possible to make it recognised. Screen shot

I think FinalBurnNEO is easier to play.

shobobon avatar Feb 09 '23 12:02 shobobon

Sorry, I'm a noob when it comes to arcade emulation.

I tried running it on my Raspberry Pi 3 running an older version of Batocera, I'll follow your advice and try again later.

Update: I'm so stupid. I renamed the files for easier management not realizing I wasn't supposed to. Everything works fine although the BIOS appears glitchy likely due to not 100% matching what it expects.

olddesklamp avatar Feb 09 '23 18:02 olddesklamp

Batocera contains several emulators. RetroArch/libRetro's MAME, FBNEO and standalone MAME.

If you can play it, there is no problem. The NEOGEO BIOS is required for a number of country and model variants But one BIOS file works when you are actually playing.

FYI. Arcade documentation for Batocera

shobobon avatar Feb 10 '23 07:02 shobobon

Tested the new 1.16 build with the neogeo_classics_humble task.

Everything works correctly. Only weird thing I found is that the script gives the following warning, however everything works correctly: WARNING:root:Could not identify version of %SourcePath%\neogeo_classics_humble\SNKTwitchArtOfFighting2_2020Jun18__1_\aof2.zip!

As a test, I replaced the zip file with the original/unaltered aof2.zip from the mac dmg package and re-ran the script, which completely broke apart, returning several likes of error messages: File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code exec(code, run_globals) File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\Scripts\gextoolbox.exe\__main__.py", line 7, in <module> File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 1130, in __call__ return self.main(*args, **kwargs) File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 1055, in main rv = self.invoke(ctx) File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 1404, in invoke return ctx.invoke(self.callback, **ctx.params) File "%USERFOLDER%\AppData\Roaming\Python\Python310\site-packages\click\core.py", line 760, in invoke return __callback(*args, **kwargs) File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\site-packages\gex\commands\tasks\extract.py", line 43, in extract task_class.execute(src_dir, dest_dir) File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\site-packages\gex\lib\tasks\impl\neogeo_classics_humble\__init__.py", line 107, in execute _ = self.verify_out_file(filename, contents) File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\site-packages\gex\lib\tasks\basetask.py", line 130, in verify_out_file errors, version = verify_via_metadata(contents, verify_obj) File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\site-packages\gex\lib\utils\verify.py", line 20, in verify_via_metadata return verify_zip(contents, verify_metadata['entries']), None File "%USERFOLDER%\AppData\Local\Programs\Python\Python310\lib\site-packages\gex\lib\utils\verify.py", line 61, in verify_zip errors.append({VerifyErrors.CHECKSUM_MISMATCH, {zip_meta['crc'], verify_entry['crc'], "CRC", inner_filename}}) TypeError: unhashable type: 'set'

Feilakas avatar Apr 08 '23 15:04 Feilakas

There's some more SNK Neo Geo games added to Amazon Prime Gaming. Art of Fighting 3 - data/rom Crossed Swords - data/rom Ghost Pilots - data/rom Metal Slug 4 - data/rom Ninja Commando - data/rom Ninja Masters - data/rom

Looks to be the same format as The Last Blade 2 mentioned earlier.

ValadAmoleo avatar Apr 26 '23 12:04 ValadAmoleo

Only weird thing I found is that the script gives the following warning, however everything works correctly: WARNING:root:Could not identify version of %SourcePath%\neogeo_classics_humble\SNKTwitchArtOfFighting2_2020Jun18__1_\aof2.zip!

Yup, I had the wrong file size in the metadata for that one, it will be fixed in 0.1.8.

The other error should be fixed in 0.1.7 - there was a bug on CRC mismatches.

shawngmc avatar May 17 '23 22:05 shawngmc