M
mirex
Guest
Uhhh I would gladly try to work on creating P files that FF7 engine accepts, only if i had some free time. Too many projects are on my hands.
Uhhh I would gladly try to work on creating P files that FF7 engine accepts, only if i had some free time. Too many projects are on my hands.
Teaching this kind of hobby would take even more time imho.Mirex, If you could teach me how to do stuff like that...
But if you really want to, then i could give you few hints. Are you skilled in programming ? If not then that is the best way to go. C++, Pascal or Visual Basic (which is not much recommended, but works ) ... choose any and go for it. Try to program something that messes with files, anything.
LGP file == PSX data that is not stored in the normal CD filesystem
LGP files aren't themselves compressed in any way. The FF7 engine can read data straight out of them if necessary ... for that matter, so can the Remake engine (not that I've touched that in ages). LGP files just provide a way of packaging up lots of files into one big chunk, so the OS (Windows) doesn't need to bother about creating 20,000 files itself.
The offsets we're talking about are generally relative to the beginning of the individual file in question (such as a P file), yes. I don't think you should give too much thought to the LGP file, since it's essentially just a container, nothing relies on being present in a particular location within the LGP (proof: you can add new data to an LGP file using LGP Tools and FF7 doesn't care *where* it is - even if it's now at the end of the archive when it was originally at the beginning - so long it's there and listed in the contents of the LGP).
Anyway. Yes, most tools copy (not decompress) the data from the LGP into memory and then use it from there, rather than reading direct from disk, but we don't *have* to do that. There's little reason not to, though, the end effect should always be the same.
PC Data != PSX data.
More importantly:
Raw Psy-Q data != FF7-PSX data != FF7-PC data.
The PSX deals with raw Psy-Q data. (TIM, RSD, SEQ, STR, TOD, HRC, etc etc etc) These are munged and stored in special formats for FF7-PSX. (BIN, LZS). The PC version has conversions of the PSY-Q data into PC native data. (SEQ=>MID, STR=>AVI, Binary HRC=>Plain Text HRC)
The only thing that should be platform independant is the core of the kernel. It takes a lot of bit twiddeling to get the data into something that the platfrom can easily handle and that the user can understand.
My thinking is this -- most likely FF7 sent the animation data to VRAM instead of the system RAM along with everything else -- and probably as a series of struct arrays as well. Furthermore, even IF it is sent to system RAM first, it is inevitable that it will be transferred to VRAM at some point, and thus we can be sure it's hiding in there.
First off -- Long time no see, Fice.
But therein lies a potential problem, though: The offsets needed to find the table of contents may be hardcoded into the .exe file anyway. In all probability, if there are hardcoded offsets that determine the table of contents' beginning byte and ending byte in the LGP file, it would put a limit on how many files each LGP file can hold and still be recognized by FF7, due to the tunnel vision on the size of the contents listing that the hard-coded offset values are causing....right?
Unfortunately still isn't going to happen. Modern graphics cards can upload animations and geometry to VRAM, but for that to be *any* use whatsoever the card needs to support hardware T&L at an absolute minimum (and realistically, it needs to have other features too). When FF7 came out, they didn't, so it's not written to upload animations to video cards.
It's a fairly recent development, allowing you to do that, anyway. PC users haven't been able to explicitly upload vertex data to the card for that long, nevermind the actual animations ... all possible now, mind you. If you have a recent Radeon/Geforce, of course, and a game written to support it...!
Thank youI've been busy with my job ... not a new job anymore, but still, first full time job. Warning: jobs eat your time.
Nope. The only thing 'hard coded' is the point at which the table of contents *begins* (essentially the first piece of data in the file), not its length.
That said, the file format uses 16-bit integers for some of the data, so while the file size of an individual LGP could go up to at least 2GB, you'd be limited in practice to ~65,500 files inside it. Perhaps double that if you played some nasty tricks on the indexes.
Of course, that's fairly academic; even battle.lgp doesn't come anywhere near that number of files, so you've got plenty of room to add your own files.
IIRC the most files in an lgp is close to 11,000
Its is either the feil or battle LGP file....im going for the latter
That's quite unrealistic11,000?! Ok, the programmers need to be taken into the backyard and shot one by one on behalf of the KISS principle.....