and the CRC function matches the one from this CTF challenge.
what the heck. did someone put reverse engineering in my reverse engineering?
and the CRC function matches the one from this CTF challenge.
what the heck. did someone put reverse engineering in my reverse engineering?
wait why is there a method on the App class to parse commandline tokens.
this is a Wii game.
what command line?
AppWii::tickleDVD?
DO NOT TICKLE THE DVD
OH LOOK another case of magical sentinel pointers.
they just checked to see if a pointer was 0xBADBEEF.
LEARN TO USE NULLS
I found where the engine lists all the file types, and they're specified with SUSPICIOUSLY win32 filter strings.
I wonder if they copy-pasted this out of some tool they used to build their files?
I kinda wonder if they generated this code out of some non-C++ language with a poor optimizer.
Everything has a vtable. Even classes where there's no subclasses, and there's only ever one object, because it's a big magical global singleton.
20 ::mbinary_search functions and no ::nonbinary_search. sad.
(hard mode: there's no templates here. they seriously wrote 20 variants on their binary-search algorithm)
okay yeah they DEFINITELY built this game on top of a cross-platform engine (their own, I believe).
I just found a function for getting the state of the mouse-wheel.
On a wii.
NOW LOOK, TECHNICALL YOU CAN PLUG A MOUSE INTO A WII, YES.
BUT WHY WOULD A GAME BOTHER TO SUPPORT IT?
Nope. It's unreal engine.
Also, I accidentally launched it, and it has a broken EULA. You can't decline it, it just tells you to accept before you can continue. I'm not trying to continue, I'm trying to QUIT
grabbed another 2009 game for the wii: "Pipeworks bundle v1.03 (big endian)".
JUST HOW DEEP DOES THIS RABBITHOLE GO? AM I GOING TO HAVE TO BECOME THE OFFICIAL EXPERT ON THE PIPEWORKS ENGINE?
Another 2008 game: Pipeworks bundle v1.03 (big endian).
let's see. They released a gamecube game back in 2002. is that Pipeworks v0.01?
"Pipeworks Bundle File version 1.18"
WHAT?
Why is the 2002 GameCube game showing versions that are newer than the 2009 games?
Monopoly (2010) for the PSP:
"Pipeworks bundle v1.13 (little endian)"
Yep.
they made a free-to-play match-three game with a Godzilla license in 2014. Let's check...
Nope, unity.
Night at the Museum: Battle of the Smithsonian, 2009, Wii:
"Pipeworks bundle v1.03 (big endian)"
Godzilla: Unleashed, 2007, wii:
"Pipeworks Bundle File version 1.4"
I suspect this game doesn't use the whole engine, and may just use the bundle files. It has a non-standard layout.
One similar to Destroy All Monsters Melee, in fact, which makes me think they reused some code.
Godzilla: Save the Earth (2004), for PS2, uses "Pipeworks Bundle File version 1.3".
1.3! This is the earliest game I've seen using Pipeworks, and it's got a surprisingly late version number. Weird!
interesting find: the "Colossal Kaiju Combat" games licensed the Spigot engine from Pipeworks. So if they are showing some of the same files, then it's gotta be Spigot.
Time to find out. 5$ to find out
"Pipeworks bundle v1.30 (little endian)"
It's got the .pvd/.pvm files and everything.
This is 100% the same engine.
@foone Just Dance Wii has 14 entries.
Just sayin'