Introduction
Introduction Statistics Contact Development Disclaimer Help
Post AXIcIyi5Cpq9OLbGHw by [email protected]
More posts by [email protected]
Post #AXIaGjCZh6yCo3f516 by [email protected]
0 likes, 0 repeats
I should make a big sign reading "it has been X days since Foone started r…
Post #AXIaUmXc4kKdDXCgEa by [email protected]
0 likes, 0 repeats
today it's 1997's Take No Prisoners by Raven Software
Post #AXIb82xexZPHRA6qky by [email protected]
0 likes, 0 repeats
definitely built on the Quake engine. some error messages match exactly.
Post #AXIbIeE1Ghs3u9ogyG by [email protected]
0 likes, 0 repeats
good to know this engine supports TRANS FLAGS (although it predates the most co…
Post #AXIbaP3oOAtu5KVaPw by [email protected]
0 likes, 0 repeats
why's every game got to have a scripting engine embedded in it these days*?…
Post #AXIcIyi5Cpq9OLbGHw by [email protected]
0 likes, 0 repeats
@foone oh what scripting language is in this game? a 90s version of python? per…
Post #AXIcIymKx1F7bXaev2 by [email protected]
0 likes, 0 repeats
@fries I think it's QuakeC, like regular quake?
Post #AXIdEsiZdtLdbTRLTE by [email protected]
0 likes, 0 repeats
So the scripting components seem to be in SCRIPTS.RPC (Raven PCode?) inside TNP…
Post #AXIdLEr2FiDxzoQfMO by [email protected]
0 likes, 0 repeats
it starts with an "RCC-OBJ" header .Searching that in the EXE gives t…
Post #AXIdWbU2STjBMe5ktU by [email protected]
0 likes, 0 repeats
@foone woo what is the weapon he's using
Post #AXIdWbZ0A1hJc2Pid6 by [email protected]
0 likes, 0 repeats
@chengdulittlea ALL OF THEM
Post #AXIdniHeQdFLNTSLOC by [email protected]
0 likes, 0 repeats
the VPK code apparently lives in "C:\\source\\outrage\\Res_man.c".Out…
Post #AXIdnlgvl6FZwkJ4i0 by [email protected]
0 likes, 0 repeats
ahh, mobygames says it has the working titles of "Outrage" and "…
Post #AXIe5S9X8qM0Yq7OSG by [email protected]
0 likes, 0 repeats
so it seems to solve the memory problem of loading a bunch of datafiles at star…
Post #AXIeMcCV2Mw8e9gmnY by [email protected]
0 likes, 0 repeats
so there appear to be a bunch of console commands that no one documented? fun.
Post #AXIevAqyhm3Rxz6MHA by [email protected]
0 likes, 0 repeats
so the function at 00450e00 registers some pcode debugging commands:pc_statspc_…
Post #AXIf8EB9eVt62plOXg by [email protected]
0 likes, 0 repeats
so pc_stats, loaded into level 1, says there are 345 services loaded, 1242 rout…
Post #AXIg2i5Dejy10Xv6US by [email protected]
0 likes, 0 repeats
it uses a tagged malloc system? interesting. you don't just do malloc(1600)…
Post #AXIgQTi8k9KZNoSU9w by [email protected]
0 likes, 0 repeats
the game supports up to 15 joysticks.16 would be ridiculous
Post #AXIgbr4AFWqZ0HBWro by [email protected]
0 likes, 0 repeats
correction: 15 joystick buttons
Post #AXIhSaXyOk4d7NGzgG by [email protected]
0 likes, 0 repeats
ahh, seems the tagged malloc is also in quake, but under a different name
Post #AXIhtpsbV19OUSuopU by [email protected]
0 likes, 0 repeats
apparently FUN_00454c50 loads pcode data per-level, so there apparently is per-…
Post #AXIiPhifNHJ2RrSmg4 by [email protected]
0 likes, 0 repeats
textures seem to be 8 bits per pixel but I think they've got some per-line …
Post #AXIj3SSbWi7MhruGMy by [email protected]
0 likes, 0 repeats
so it's weirder: images like this one do not have more complex metadata, bu…
Post #AXIjZuVKnLnSwyeqxc by [email protected]
0 likes, 0 repeats
@marcan that sounds like they were just trying to enable a way to root their co…
Post #AXIjg0ULSXbfFN6Otk by [email protected]
0 likes, 0 repeats
and this per-file level stuff I was looking at turns out to be savegame related…
Post #AXIk5AxLg3jOx4fagi by [email protected]
0 likes, 0 repeats
probably something like "we save the state of all scripting engine globals…
Post #AXIkDho5QJe39XPAC8 by [email protected]
0 likes, 0 repeats
@marcan yeah that'd be very funny, but unethical, and it would also make ni…
Post #AXIkXYp2XOqX4yJo5Q by [email protected]
0 likes, 0 repeats
@foone this implies that at some point they needed to support 8, right?
Post #AXIkpbgubsEdBo7cH2 by [email protected]
0 likes, 0 repeats
ugh. I think their bytecode has a "DPMI" instruction. that better not…
Post #AXIlBMw89CxbnecJma by [email protected]
0 likes, 0 repeats
so at 00515328 there's a char*[137] for all the opcodes.
Post #AXIlZ9ZnTKVzJWVoFk by [email protected]
0 likes, 0 repeats
DAT_0051c210 = DAT_0051c210 * 214013 + 2531011;magic numbers! that's the MS…
Post #AXIm1UxzXMqZlMLROi by [email protected]
0 likes, 0 repeats
once again I can't seem to force ghidra to handle switching on an enum prop…
Post #AXIm9kdp8uw6h4qZ2u by [email protected]
0 likes, 0 repeats
anyway FUN_00455a20 seems to be the inner loop of the interpreter. it's a b…
Post #AXIqupHk5uqGWWDl6u by [email protected]
0 likes, 0 repeats
you've been reverse engineering too much when you see these sorts of number…
Post #AXIr8wfPRigPTJ1Vyq by [email protected]
0 likes, 0 repeats
there's a string "VCR Connection not available" which I assume st…
Post #AXIrKAaA382HoZv9Qe by [email protected]
0 likes, 0 repeats
@foone ..... what are they :3
Post #AXIrKAePnJRG1luY3k by [email protected]
0 likes, 0 repeats
@chrisisgr8 floating point numbres.0x3f800000 in particular is 1.0
Post #AXIrP76gOls0U3URbU by [email protected]
0 likes, 0 repeats
@foone What, no HCF? For shame!
Post #AXIrP7AaAGzOg9JYgK by [email protected]
0 likes, 0 repeats
@brouhaha I know, right? what if you need to self-destruct the game to deny it …
Post #AXIrcpVCeGXTwFV1pg by [email protected]
0 likes, 0 repeats
@fooneinteractive analog horror
Post #AXIrcpZoN8E2AXei12 by [email protected]
0 likes, 0 repeats
@ToddVierling I think that's just the board game Nitemare/Atmosfear
Post #AXItJGoZakMglNMQTo by [email protected]
0 likes, 0 repeats
found an apparent exact match for Z_Free from the quake source, except they ren…
Post #AXItb26N25nQLP9gZs by [email protected]
0 likes, 0 repeats
they didn't even change the zoneid, it's still 0x1d4a11
Post #AXItimXEnEUkNjPv60 by [email protected]
0 likes, 0 repeats
which might be a hex pun.id for all?
Post #AXIuNb54Hiq0jIhf4y by [email protected]
0 likes, 0 repeats
apparently the class called Naturals has a linked class called Unnaturals.Perso…
Post #AXIulc2kMEicfI4Kga by [email protected]
0 likes, 0 repeats
I think Visual C++ 5 or 6 has a very annoying optimization: if you have a loop…
Post #AXIutPtbPCzLJ5Vrd2 by [email protected]
0 likes, 0 repeats
this is a sort of thing that happens surprisingly often, thanks to null-termina…
Post #AXIv56YP8zoYnIAfk8 by [email protected]
0 likes, 0 repeats
an example.uVar3 here is counting up how many chars are in PcVar7, except MSVC …
Post #AXIvtlDQEuMFNnVlcO by [email protected]
0 likes, 0 repeats
huh, I didn't realize even WinQuake had some x86 assembly. I thought by the…
Post #AXIwzGwTo83NBRmLNA by [email protected]
0 likes, 0 repeats
found a vaguely undocumented subcommand of a command:the game will tell you tha…
Post #AXIx4eTHkp9pbcgkEq by [email protected]
0 likes, 0 repeats
the results are the same for my sample object, though
Post #AXIxAuC0DRsM6NaQAS by [email protected]
0 likes, 0 repeats
hey there's another."all" is undocumented but will give you all t…
Post #AXJ1E7EgZrPlExczCa by [email protected]
0 likes, 0 repeats
so the game apparently always has networked support enabled at some level, and …
Post #AXJ1q3eYLXch8Hor3o by [email protected]
0 likes, 0 repeats
yeah this is definitely visual C++.I should have recognized its foul stench whe…
Post #AXJ2SSopEHaYBdwB8a by [email protected]
0 likes, 0 repeats
So say you're given this structure, with a compiler set to pack it with no …
Post #AXJ2YZAWX7XvcOzqRE by [email protected]
0 likes, 0 repeats
and there's an array defined:struct foo foos[100];and there's some code…
Post #AXJ2gztx1e2yqSGUiW by [email protected]
0 likes, 0 repeats
now the compiler is gonna want to optimize this. The unoptimal way to do it is …
Post #AXJ2p0vZ5veALNqIjY by [email protected]
0 likes, 0 repeats
so the obvious way to do this is to turn it into a pointer.The pointer can just…
Post #AXJ2p3rQBn7BROvXBw by [email protected]
0 likes, 0 repeats
but this pointer has to, well, point somewhere.Logically it "should" …
Post #AXJ3BTTNdznXFMMxhQ by [email protected]
0 likes, 0 repeats
Like if the loop just needed to check the foo.e member, we could initialize the…
Post #AXJ3BWFfJRbrrgyYEq by [email protected]
0 likes, 0 repeats
so fun fact, MSVC (at least back in the mid-90s days) does do this but not in a…
Post #AXJ3BX3IKvJCLcCBay by [email protected]
0 likes, 0 repeats
given we need to read a at offset 0, e at offset 7, and h at offset 16, you&#39…
Post #AXJ3XpwilmnxJikxrE by [email protected]
0 likes, 0 repeats
SURPRISE it points the pointer at e
Post #AXJ3Xsj0REcHw3MYOe by [email protected]
0 likes, 0 repeats
so each iteration it reads ptr-7, ptr, and ptr+9
Post #AXJ3XtVZWfSsMg5L60 by [email protected]
0 likes, 0 repeats
why? I have no fucking idea.my guess is that it's trying to make smaller co…
Post #AXJ3XuIUamb2oOyPLc by [email protected]
0 likes, 0 repeats
anyway @pjf pointed out I messed up my math in the struct to get the offsets so…
Post #AXJ7RIATqIisdSKKf2 by [email protected]
0 likes, 0 repeats
god I love finding a function that is something like DebugAssert()and half the …
Post #AXJ82llKm3UL8SR47M by [email protected]
0 likes, 0 repeats
this is why all evil game engines include shit like:void SetPlayerPosition(Play…
Post #AXJ8owEf8fB3W77eOO by [email protected]
0 likes, 0 repeats
excited to realize that by combining the res_idlist and res_idstat commands I c…
Post #AXJ91jJ0WUq7BEFolE by [email protected]
0 likes, 0 repeats
I guess the fact that res_idstat dumps all this info means I can use it to figu…
Post #AXJB6dZJTqaak9LgkC by [email protected]
0 likes, 0 repeats
@foone you don't remember QuakeC?
Post #AXJB6ddvCiH8yRVMvY by [email protected]
0 likes, 0 repeats
@Randomfrequency this engine is basically using a variant of quakeC!
Post #AXJHyp0XlVSHaGJ27U by [email protected]
0 likes, 0 repeats
one of the weirder things about this game: fully textured 3D engine, and it has…
Post #AXJI6KHzrMi8d332Nk by [email protected]
0 likes, 0 repeats
anyway that's enough for tonight.
Post #AXN745anD339bYPUGm by [email protected]
0 likes, 0 repeats
@foone But consider: have you dumped what isn't a VPK file? :phttps://pisto…
Post #AXN745fkub1HqwjS0O by [email protected]
0 likes, 0 repeats
@pistonminer very neat, hadn't heard of that!(and yeah, completely unrelate…
You are viewing proxied material from pleroma.anduin.net. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.