Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - DeadLajik

Pages: [1] 2 3
1
FF8 Tools / Re: FF8 PSX File Extractor
« on: 2007-07-23 17:14:34 »
Hey G,

First, thanks for writing this program. It'll help me to explore the contents of these discs. I noticed a lot of files with encoded text in them.

Do you have any idea why the number 0x33a was added to the offsets in the ff8discX.img file? I suppose this is a question that only Square can answer.

Thanks.

2
Woah??

Do these PCs have the same exact hardware configuation as the old ones? I'm guessing they don't. Otherwise, why get new ones?

Anyways, you are going to have bigger problems once you put those ghosted images back on entirely different hardware. If you're lucky the systems will boot without problems. You will probably encounter at least some problems though with blue screens and/or illegal exceptions as drivers that are on the image look and try to talk to hardware that is no longer there. To me this sounds like a support nightmare.

Hopefully this is not what you are doing but if it is, I would just consider installing anew..

3
I looked at the document in Open Office and it looks good! Keep up the good work.

I just wanted to make a positive comment to keep you motivated. Good work.

4
General Discussion / Final Fantasy "like" games
« on: 2004-06-18 23:19:04 »
Since no one has listed them

Lufia 1   SNES
Lufia 2   SNES

5
Are they really that different ? I only own the PSX version of FF7 (which I play on my PS2) but since they are the same game and their data structures are probably somewhat related, I think both should be discussed in the document.

6
Halkun,

Do you plan to put together a document describing your findings (data structures, data organization and algorithms) on FF7 like you did with your PSX tech docs for Zophar.

Your PSX doc is definently informative and very helpful, and I know a document describing the details of FF7 would be very interesting to not only me, but also a handful of other people on this forum as well.

Thanks..

7
General Discussion / So you like to hack?
« on: 2004-06-16 00:29:48 »
I didn't try this, but is it free? I don't like running EXEs onto my system when there is no web page or legitament company to stand by the product.

I don't understand what you mean by "Group searches". Most hex editors allow you to do this.

BTW, there is a program that allows you to read, and write to a processes memory space called WinHEX.  Ofcourse you do have to register it to get that functionality but it is worth it.  I used it to find a registration key in an EXE written in VB, that didn't use a "strcmp" call.

I know your product isn't really a hex editor, but since it has some of the same functionities I thought I would compare it to one.

Anyways good work.

8
Archive / DoS attack
« on: 2004-06-13 18:26:45 »
I thought it was the new forums.

For some reason, everytime I come to this site, Mozilla displays stuff like "117 images to be downloaded.. " or some really high number. Can't be good to be downloading that many images each time I visit this site. This makes my browsing experience slower since it has to download these images every single time.

I didn't see this problem with the old forum software.

I thought it might be a caching problem but Mozilla is configured fine and I'm using one of the later builds.. Mozilla 1.7 RC2

9
Quote from: halkun

The really really sad thing is that it seems no one on the PC deveopment staff has ever heard of a an #IFDEF precompiler directive....

I can understand that it's nice to have the engine toss out what it's doing to stdio so you can follow along. However, when you want to make a production biniary, using #IFDEF will allow the compiler to skip whole blocks of unneeded code.

the command "cc -DDEBUG_CODE whatever.c " would automagicly include any debugging code you put into your .c file within a #IFDEF DEBUG_CODE directive. Not using the -D switch will cause the precompiler to *SKIP IT* and not allow it into the final binary. Wow! Even I know that! (Though I may have the sentax wrong)

Not only that, they used printf strings to spill out debugging data. So now not only do I have the names of very important engine varibles and concepts, I also have thier format. Here a quick example...



It's still quite possible that they may have used #IFDEF.. a compiled binary wouldn't give us a yes or no answer to that..  Judging from the binary though, I guess they did ship a debug build instead of one compiled for release mode.

Off topic, but a lot of games are released in a debug mode.. Even games like GTA (on the PS2) have loads of text and information inside the binaries.. The GTA data is even in easy to read text files.

Oh, I couldn't get pcsx to compile under Mingw or Visual C++ 6.  It seems to have errors with plugins.h or plugin.h   at the CALLBACK* lines..

I'll have to see if I can compile it on Linux some time in the future.

Anyways, I know my comments bring no further help for you.. so I'll just end my post with a..

Good work halkun.

10
Scripting and Reverse Engineering / FF IX Stuff
« on: 2004-06-08 20:35:04 »
Yeah that makes much more sense now. Interesting.

11
Scripting and Reverse Engineering / FF IX Stuff
« on: 2004-06-08 19:28:32 »
Quote

Some images got the CLUT stored as a TIM images though, dunno yet how the mapping works… FF1&2 also stores CLUTs this way (IIRC!), anyone knows anything 'bout this type of CLUT?


So the TIM image format is inside the color lookup table ? I'm not sure what you mean here.. But then again I'm not to familiar with the TIM file format. Is this data encrypted on the FF9 CD's ?

12
halkun,

which R3000 disassembler are you using? Maybe you have a better one then me.. I'm currently using the one from MESS.

Thanks..

13
Wow halkin,

That is an interesting post/discovery you have made. I welcome you back and look forward to learning more about the techniques you use..

How did you get those filenames? Even running strip on the executable and such wouldn't give you that much information.. unless they shipped the an executable with debugging symbols included.

14
Scripting and Reverse Engineering / CRC detection
« on: 2004-06-06 19:11:28 »
I hate to tell you this but you really need to know how assembly language works. I actually converted Qhimm's assembly listing in Griever to C, so I could port it to Unix. It just performs CRC calculation based on table lookup.

Anyways, the answer to your question of finding the block that is checksummed is through trial and error. Change one byte, then load the game.

Another approach is to look through the assembly listings of whatever executable you are trying to figure out. But as I stated above, you need to know how assembly works, and how variables are passed. On machines with multiple registers like MIPS, there addresses can be passed in the registers, but on the x86, they are passed by pushing these addresses on the stack. Another problems is that this will generate megabytes of assembly code that is hard to figure out. It is also extremely time consuming. On the computer this is easier because executables have a defined structure and also because there exists debuggers that let you trace each instruction.. For the PSX, you'd have to rely on emulators to provide this debugging feature but I havn't found any that really allow you to do this. The executables on the PSX are in some proprietary Sony format that isn't documented very well. As far as I know, these executables don't have different sections for symbol tables and such which makes it even more difficult to figure out whether you want to trace into a call or step over it.

15
Scripting and Reverse Engineering / Triple Triad AI
« on: 2004-06-06 18:47:47 »
What I did, when I had to program AI for some simple game, is have the AI player build a game tree. Depending on how simple the game is.. there are different techniques. I represented my game tree with a 3 dimensional array of around 30 elements. The game was simple enough where I could implement the entire tree in memory, but for advanced games, like Chess this is impossible.

For a game like tripple triad you'd have to calculate different states and put these states into a game tree like structure. The computer would calculate these states and mark them based on who is likely to win. E.g. "If I play this card here.. can I possibly win?? No? Then what if I put it in the next sqaure?".  It would then continue to expand the nodes and build the tree further in areas where it had a better chance of winning since the AI player wants to go down that branch of the tree.

I know this probably doesn't make any sense, but if you can get an AI book you'll want to look into some of the MIN-MAX algorithms and ALPHA-BETA tree pruning. The books I have use the classical tic-tac-toe example to explain how they work but you should be able to adapt it to tripple triad.

At the beginning of the game there will be a lot of stuff to calculate so you could make it a little faster by forcing the computer to play a cards that should be played in certain spots..

e.g.  if you represent a cards numbers by {Left,Top,Right,Bottom} and the AI has a card like {0,0,A,A}, you would force him to play that card in the top left corner.

Hope that helps.

16
Don't give up Nom,

I still think it's a hardware problem, even though I don't have experience with either OSX or XP (but I don't think XP is that different in networking then 2000).

Can you connect the G3 up to the internet directly ?

17
Scripting and Reverse Engineering / Compression
« on: 2004-03-31 16:06:47 »
While there are many places where the "BM" header matches in that file I can not tell whether they are BMPs or not.. especially because the 4 bytes after (DWORD) that describe the file size have bad values.

I havn't really gotten anywhere on this encryption. I can only suggest taking a look at the PNG file that was posted earlier to decypher it.

18
Are you 100% sure that the cable is a cross over cable and not some regular 568A or 568B ethernet cable?

What are the colors on each jack?

For a crossover the following is usually used..

Jack 1
Pin 1:  White-Orange
Pin 2:  Orange
Pin 3:  White-Green
Pin 6:  Green

Jack 2
Pin 1:  White-Green
Pin 2:  Green
Pin 3:  White-Orange
Pin 6:  Orange


The other colors are not used in 10/100 ethernet.

I say "usually" above because you could also mix up the colors anyway you want as long as the Receive-Positive pin wire is the same wire as Transmit-Positive and the Receive-Negative pin wire is the same wire as the Transmit-Negative.

19
Does anyone know or have a link to info about the playstation (PSX) executable files? These are the files on playstation games that are named SLUS_xxx.yy.  I'm looking for basically header information, string table offsets, etc.

Also does anyone know of a good disassembler for these files. I know that they are MIPS but standard MIPS disassemblers don't work because the executable code starts at a different offset.

I noticed that MESS (http://www.mess.org) has code for the PSX files so I'll take a look at those but does anyone know of any other sources of documentation??

I did use Google to search for this but didn't find very much info..

Thanks in advance.

20
Scripting and Reverse Engineering / Compression
« on: 2004-03-24 02:01:37 »
Skylark,

I wont be able to look at anything  for the next 5 days because I am going out of town..

However I don't think the whole image of the CD is necessary, so if you havn't uploaded it yet.. don't..  

If worse comes to worse I might need to take a look at the executable and maybe any DLL's that it links in, to determine what is going on.

21
Scripting and Reverse Engineering / 56K Vs 33.6K
« on: 2004-03-21 23:01:51 »
Just wanted to say that USR, or 3com (one company bought the other, but I don't know which) make very good hardware _PCI_ modems.

I think what your friend meant by a driver upgrade for V90 to V92 is actually a firmware upgrade. Firmware upgrades can upgrade the modem.. But any new modem you buy already has this standard.

22
Scripting and Reverse Engineering / Compression
« on: 2004-03-21 16:03:25 »
Well, I looked over the PNG files some more, and they appear to be compressed also..At least the individual chunks inside each PNG file since they are actually missing bytes.. For example, each chunk has a CRC checksum at the end of it's section. The next 4 bytes represent the size of the next chunk..

Well in the PNG files from 12.DAT the IHDR CRC bytes go into the gAMA length bytes..

23
For me it is interesting to see how commercial companies represent their data structures inside of files.. and it's also interesting to see the encryption/compression they use to build the files. In a way it is kind of fun for me.. just like being able to solve some really hard math problem that only the creators (Square) of the math problem know the answer to..

Ok, that was probably a bad analogy but hopefully you get my point.

24
Scripting and Reverse Engineering / Compression
« on: 2004-03-20 16:44:00 »
I extracted a few of the PNG files but they all appear to be encrypted in some way, or at least the IHDR chunk of the file is.

According to the PNG specifcation byte 0x1A should be 0x00 since there is only one type of compression, not 0x12 which appears to be on most of the PNG files (all of them that I extracted).

Cracking the encryption on the HDR part could lead us to the encryption used on the entire 12.DAT file.

I'll try to decode this header but it will take some time since changing bytes in the header requires me to recompute the CRC of the file.

Edit:
The BMP files are also encrypted somehow.. The header for one BMP said its file size was >3500 MB which is most likely incorrect.

Edit2:

It's also sorta interesting that pretty much all the PNG files seem to have identical headers.

25
Scripting and Reverse Engineering / Compression
« on: 2004-03-20 02:04:07 »
Probably pretty useless info for you now but I got the following from a program I am working on that is analyzing that file:

Code: [Select]

    DEATH appears 90 times
    IHDR appears 32 times
    IEND appears 32 times
    ZONEPOINT_SD appears 60 times
    menumap appears 62 times


Most of those don't mean much right now.. except the IHDR and IEND tags..

These are part of the PNG file format.

So inside 12.dat are 32 PNG files. The don't look to be encrypted either but I havn't written any tool to extract them yet. Maybe i'll do this later tonight.

Pages: [1] 2 3