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 - Vehek

Pages: 1 [2] 3 4 5 6 7 ... 9
26
The only characters with repeated models should be the NPCs. I don't know why the wiki article on the chara.one says that the contained data is only models. For me, when the referenced model is a main character, the data is just animation data. If that wasn't what you meant, well, the PS1 version of FF7 repeated its non-mains all over the place too. I think I heard it's to save CD-ROM seek time.

27
Um, you can't exactly make a list of animation frame lengths, since model animations are not universal, but tied to the locations they appear in.
Also, no way to tell how many frames? I don't agree. It should be easy to get it from the animation data in each location's chara.one file, and I've written about the field model animation format before.

FF8 Field Models - More information

I feel very, very disappointed. Nobody makes use of my research.  :( It makes for a lot of unnecessary questions and repeated effort.

28
FF8 Tools / Re: [0.7b] Deling - a FF8 field editor
« on: 2014-01-21 04:05:48 »
Can we add sounds to areas that have no sounds?
http://wiki.qhimm.com/view/FF8/FileFormat_SFX
Well, for now, you could extract the archives for those areas from field.fs, add .sfx files (with the appropriate names I assume) to them, and then reinsert them back into field.fs.

29
Scripting and Reverse Engineering / Re: FF8 Script OpCodes
« on: 2014-01-19 20:10:56 »
This is hardly the first time you've asked about the opcode names. In fact, I think it's the third.

30
Graphical / Re: Need some help testing FF8 models
« on: 2014-01-14 04:39:03 »
I've used a hex editor to insert larger textures and adjust the pointers for the surrounding data, and used some scripts to double the UVs. I alter the UVs, because, well, why would the game adjust the UV coordinates for you? Those are some of the tests I mentioned in my opening post.

First is a test where I stretched the single-texture version of Squall's field model to 256x256.
(IMAGE REMOVED)

Here's a test of magochocobo's textures on the battle model. Because the battle engine ignores V-coordinates above 128, the textures are sized at 256x128 rather than 256x256.
(IMAGE REMOVED)
While it looks fine at first, the other character's textures trample over the expanded textures and ruin it.

2020 edit: images removed due to Photobucket terms of use change.

Failures like these are why I reject all this "we just need to know how to put larger textures back into the original files" talk.

31
Is opengl 2.0 support by itself really enough? My laptop says it supports opengl 2.0, but I get a 'failed to load shaders' too.
Code: [Select]
INFO: FF7/FF8 OpenGL driver version 0.8b
INFO: Auto-detected version: FF8 1.2 US English (Nvidia)
INFO: Intel Intel 965/963 Graphics Media Accelerator 2.0.0 - Build 7.15.10.1666
INFO: OpenGL 2.0 support detected
INFO: PBO not supported
INFO: Found swap_control extension
INFO: Max texture size: 2048x2048
INFO: Original resolution 640x480, window size 960x720, output resolution 960x720, internal resolution 1280x960
INFO: Shader limits: varying 41, vert uniform 512, frag uniform 1024
INFO: vertex shader compile log:
ERROR: 0:1: '' :  Version number not supported by GL2

INFO: fragment shader compile log:
ERROR: 0:1: '' :  Version number not supported by GL2

ERROR: failed to load shaders

I don't know if it's related, but running a test in a GPU caps viewer showed that I lacked GL_EXT_gpu_shader4. My system probably only supports a tiny fraction of the opengl 2.0 extensions.


Edit: Replaced log, as it was from the old shaders

32
Graphical / Re: Need some help testing FF8 models
« on: 2013-12-29 05:31:47 »
Does anyone have any reports about my test model? This thread wasn't supposed to be about upscaled model textures; I don't think those work very well if at all without external texture support from Aali's driver (which doesn't do that yet for most textures). This was supposed to be about whether hi-res texture models could be achieved by splitting the UVs across several textures, or if that was impossible due to the way the engine manages textures and graphical data.

33
Graphical / Need some help testing FF8 models
« on: 2013-11-29 22:17:35 »
I'm not quite sure if this belongs here... (Is this a general discussion thing, reverse engineering though I've done most of the reverse engineering already?)
In order to investigate modding possibilities, I've run various tests with FF8's field models.
The way I see it, at the moment, the only way to get super hires models without support from Aali's driver would be to up the texture count of the models.
So I ran tests with a simple cube, with each side having a different texture. At least two types of glitches have shown up.
The first, involves the PMP files, the particle data.
(IMAGE REMOVED)

Here's another type of error.
(IMAGE REMOVED)
These errors crop up when the amount of model textures loaded goes beyond a certain amount. But my system's graphics suck, so I'm not sure whether they're universal.

Several-texture model testcase

To install the test:
1. Extract the main_chr.fs archive files from field.fs
2. Replace d000.mch, d001.mch in main_chr.fs with the included model file
3. Put the modded main_chr.fs archive files back into field.fs

2020 edit: images removed due to Photobucket terms of use change.

34
Try an archive version:
http://archive.foolz.us/v/thread/210281648

..Though, wouldn't it have been easier just to link to the news articles originally?

35
Maybe I should have started a new thread after all.

Here's another point I wanted to make. Now that there's a Japanese PC version, there are now at least a few Japanese fans trying to use the mods created by this community. I suspect that they can't do the "convert to 1998 re-release" thing and use Aali's driver, but mods that don't depend on Aali's driver and aren't language-based should work. Compatibility varies, but I don't have much information yet; not enough reports. Just really wanted to point out that they're aware of western-made mods.

36
In case you didn't know, FF7 for the PC was released in Japan recently. (For them it's not a "re-release" since they didn't get on PC originally, but it still clearly has those re-release changes.)

From what I've read, for them, the character booster is just one feature of a "game booster" feature.
  • Play the game at 5x speed
  • No Encounters
  • Some kind of feature boosting HP, MP, ATB, and limit break in battle

37
In that linked thread, pokeytax refers to FFT's music format as SMD. The FFhacktics' article on SMD says they begin with the string "smds". They aren't AKAO frames.

38
In this post, I'm starting off with things that were written a long time ago, but didn't make it into the wiki.


The model-data header lists the last 32 bytes as "unknown". It's really only the last 4 that are unknown. The rest are offsets. (As Qhimm wrote back in 2003!)
Offset    Length    Description 
0x20    4 bytes    Offset of bones
0x24    4 bytes    Offset of vertices
0x28    4 bytes    Offset of texture animations
0x2C    4 bytes    Offset of faces
0x30    4 bytes    Offset of unknown data
0x34    4 bytes    Offset of skin objects
0x38    4 bytes    Offset of animation data



Animation data
Here, I'm not only repeating what's written in previous threads, I'm also repeating what I said earlier in this thread.

It doesn't have to be written this way; it's just my preference to divide it up like this.

Code: [Select]
struct
{
u16 animationCount;
Animation[animationCount];
}animationData;

struct
{
u16 frameCount;
u16 boneCount
AnimationFrame[frameCount]

}Animation

struct
{
s16 coordinatesShift[3];
Rotation[boneCount];
}AnimationFrame;

The format of the rotation data differs between the files in main_chr.fs and standard-format chara.one files. In main_chr.fs, they are 3 s16s (6 bytes) per bone.
The other format is 4 bytes per bone. I'm not sure how to explain how it works in words. Shift each one of the first 3 bytes left 2 bits and use 2 bits from the 4th byte as bits 10 and 11?

Here's a generalized example in code.
Code: [Select]
unsigned char rots[4];
s16 rotations[3];
for (int i = 0; i < 3; i++)
rotations[i] = rots[i] << 2 | (rots[3] >> 2 * i & 3) << 10;


In a Blender script I wrote, I read the rotations in as ZXY, and apply them in YXZ order. I read the coordinates shifting as YXZ. (Not including possibly taking the negative of some parts for either rotations or coordinates)

Newer info:

1.
Let me ask you about the 'textures' are you sure the 4th texture isn't one that's is partially used? IE the texture is used 2 times either with a different palllete or with just specific sections of UV data. If you believe it has 4 textures you probably should do a dump and the visual information to show it.
I said there were 4 because that's how many different texture offsets exist in its model header from the chara.one file.

2.
"verticies1" in the face data doesn't seem to be ever read, so it can probably just be ignored.
The last 4 bytes of the model-data header also seem to be ignored.

3. Unknown data between faces and skin-objects

This is about when there are multiple entries in the unknown-data section. When I try to import d075 (Squall carrying Rinoa) or p019 (Galbadian on motorcycle), they don't look correct. I did a test by modifying d075 in a hex editor and was able to get similar if not exactly the same results in-game.

After an examination of d075.mch, I think I know why this happened.

d075.mch is basically a merger of the lo-def Squall and Rinoa models. It has all the vertices and faces from them. (Exactly the total vertices and faces.) The first 286 vertices are Squall's, the other 306 are Rinoa's. The faces aren't in the exact same order, but a brief examination of a few of them shows the UVs and vertex indices are the same as in the Squall and Rinoa models.
Since the vertex indices in the faces of the Rinoa section are still the same as in her normal model, they're now off by 286. So those vertex indices need to be adjusted, or else the wrong vertices will be assigned.

Don't know if this is how it knows how much to adjust the indices by, but the two entries split the skin-objects between the ones belonging to Squall and the ones belonging to Rinoa. I also don't know how it knows which faces it needs to adjust. Maybe this point is where it uses the triangle/quad indices and counts?

--
This isn't anything new or old, but could you fix the vertex format on the wiki's MCH page? I don't think anyone's work has been affect by this, but it's claiming that vertices are far bigger than the 8 bytes that they are.

39
Troubleshooting / Re: ff8 - G.F. and NPC
« on: 2012-10-30 06:02:42 »
Carbuncle's textures are in mag277.tim (in magic.fs). There are actually two TIM files in that single file, the second of which is Carbuncle's texture set.

The others are tougher, because they don't use TIM files. I have a rough idea of which range of files they must be in, but no quick way of viewing them and assigning their palettes.
  • A few of Eden's textures are in mag205_b.01 (in magic.fs), the rest appear to be in mag205_b.03 (in battle.fs)
  • Alexander's textures seem to be in mag203_b.05 and mag203_b.06 (both in battle.fs).
It'd probably be easier to look online for the textures (if that's allowed) or do some vram ripping (PSX version only?).

40
Gameplay / Re: Final Fantasy IX Info
« on: 2012-10-29 01:43:42 »
I'm going to take a crack at decoding FFVIII's AI. I found FFVII's pretty easily and made a definitive list. I might be able to do the same with 8.
As said above, enemy AI is in the monster files. random_npc gave some information about it here

I could be wrong but i thought someone mentioned the way they coded ff9 is similar to how they coded chrono cross.
Chrono Cross tends to be more like Xenogears in its formats.

Quote
On another note LandonRay from insanedifficulty created a difficulty and rebalance patch for ff9. He had to know something about AI to have done such a hack/mod because he mentions "Enemy Alterations".
From what the descriptions say, it sounds more like enemy stat hacking.

41
Note: These are things like the mobile gardens, cars, those Disc 4 gateways. No towns in here. They are distinct from the models in world.fs's chara.one, which use the field model format.
These exist identically in both wmset.obj and wmsetus.obj. They appear to be solid meshes without skeletons. There are a total of 33 models.
In wmsetus.obj, the models are at 0x3BB4, and the texture section is at 0x64AD0. Both sections start with pointers to their entries. Each model corresponds to a texture in the texture section. That is, the first model loads the first texture in the texture section, the second model loads the second texture, and so on. I think that's only into whatever is used for FF8's VRAM though. Texture page and CLUT IDs are part of the model data, and must match up with the TIM.



Code: [Select]
struct
{
u16 triangle_count;
u16 quad_count;
u16 texture_page;
u16 vertex_count;
triangle triangleData[triangle_count];
quad quadData[quad_count];
vertex verticeData[vertex_count];
}model

Code: [Select]
struct
{
u8 vertexIndices[3];
u8 semitransp; //Sets semitransparency if bit 0x01 is set
u8 texcoords1[2];
u8 texcoords2[2];
u8 texcoords3[2];
u16 CLUT_ID;
} triangle

Code: [Select]
struct
{
u8 vertexIndices[4];
u8 texcoords1[2];
u8 texcoords2[2];
u8 texcoords3[2];
u8 texcoords4[2];
u16 CLUT_ID;
u8 semitransp;//Sets semitransparency if bit 0x01 is set
u8 unknown
} quad

Code: [Select]
struct
{
s16 coordinates[3];
u16 unknown;
}vertex

I'm not sure what order I should list for the coordinate axes. When importing into Blender, using XYZ produces models lying on their sides.

42
FF8 Tools / Re: [0.7b] Deling - a FF8 field editor
« on: 2012-10-13 01:47:24 »
I'm not yet sure of the exact conditions, but I can't seem to get Deling to replace some files. The Replace progress window pops up, but nothing changes when it's done. I'm noticing this problem when trying to replace files in main_chr.fs, and when trying to insert my modified main_chr.fs back into field.fs. I'm currently working over this by deleting the files from the archive and adding my files in their place.

43
Completely Unrelated / Re: All the Cloud avatars
« on: 2012-09-09 19:55:34 »
Do I need to change my name to Cloudvarr again? I thought we played this one out.
Ah yes.
http://forums.qhimm.com/index.php?topic=9580.0

That was a day of (at least)
  • Cloudy McClouderson
  • Cloudistos Strifistos
  • Cloudu Strifusu
  • Cloudobo_Gurl
  • Cloudvarr Sephyfan
  • Cloudlvr the Emo
Check the thread for other people's pictures of that time.

44
General Discussion / Re: FF7PC(1998): Who ported it?
« on: 2012-08-26 23:06:00 »
Considering that, they must have had a large part in the porting process considering even the earliest PC versions had "Eidos" printed in large text on all the game materials and disks. http://viper.shadowflareindustries.com/images/2sell/ff7pc.jpg

I can't think of any other possible reason why a company completely independent from the game's original publisher would have their brand plastered all over a product in such a way, other than they were the guys who did the port.
Over in Europe, Eidos published Final Fantasy VIII, and their logo appeared on the game materials. Now, I've lost most of my old games and don't buy games these days, but isn't possible that it's fairly typical for a publisher's logo to appear on any game they've released, regardless of whether they were involved with the actual game?

45
General Discussion / FF7PC(1998): Who ported it?
« on: 2012-08-25 22:13:40 »
I've often heard that Eidos did the FFVII PC (1998) port, especially since the news of the re-release, but is there any proof for that? I know vaguely that Eidos hosted the 1.02 patch and generally handled technical support for FF7PC. I don't know, but don't a lot of publishers do that for the games they release?
What information I've gathered so far suggests SquareSoft was responsible.

Press release
http://www.ff7citadel.com/press/pr_pc.shtml
(Emphasis below mine)
Quote
One of the summer's premiere blockbuster titles, Final Fantasy VII for the PC is published by Eidos Interactive, known for its mega-hit cross-platform Tomb Raider games, and developed by Square Co., Ltd., known in the gaming industry for creating the legendary Final Fantasy franchise. SquareSoft, Inc., a subsidiary of Square Co., Ltd. has recreated the game for the PC.

FF7PC Game Credits
I can't find any software programmers listed under either 'Eidos' section in the credits.

"Square Soft Inc.", however, has 'Senior Software Engineers' and 'Software Engineers' listed.
Quote
Senior Software Engineers
   Anthony Ignacio
   Son Ton

Software Engineers
   "William" Feng chen
   Scott Conventon
   Jay Fong
   Kazumasa Fusya
   Akintunde Omitowoju
   Rajiv Patel
   Yoshinori "Goro" Uenishi


FF8 PC Interview
http://pc.ign.com/articles/070/070923p1.html
This is an interview about FF8PC, but the software engineer interviewed, Jay Fong, is also listed as a software engineer in FF7PC's credits.
Quote from: Jay Fong
However because of the experience we gained while working on the Final Fantasy VII port, work on the PC version of Final Fantasy VIII has gone very smoothly.
Quote
YM: Squaresoft game programmers did all the necessary work. They learned a lot from FF7 project though they have to do even more to port FF8 to the PC because FF8 added more new features on FF7.
These quotes mention the team learning from the work done for FF7, which to me implies firsthand experience rather than secondhand experience.



FF8PC Credits
Quote
Senior Software Engineers
   Jay Fong
   Anthony Ignacio
Software Engineers
   Kevin Christensen
   Scott Coventon
   Kazumasa Fuseya
   Davide Pasca
   Yoshinori "Goro" Uenishi

Now, compare it to the list of software engineers for FF7PC. Out of the 7 software engineers who worked on FF8PC, 6 of them were also listed as software engineers for FF7PC.

46
Gameplay / Re: Controlling Sephiroth?
« on: 2012-08-24 20:07:14 »
Can you specify which methods you tried?

47
If what you said about meshes
Being handled
Differently in blender 2.63 then I might as well rewrite the code
Anyways. I have a pretty good start and like you
Just said I will have a repo up.
How were you creating the mesh? I'm not sure how to explain this, but how hard the upgrade is depends on what method was used to generate the mesh. By default, Blender uses ngons, referred to as "polygons". Before, it was only triangle/quad faces, now called "tessfaces". It's still possible to use faces, but the names for face-based types are different, and I think they can't be modified if ngons have already been generated for the mesh. Well, at least, I was never able to get changes to the UVs to persist when ngons existed.

from_pydata now generates a mesh using the ngon system. UVs in meshes with ngons work differently than tessfaces. I'm not sure if I can explain this correctly. Polygons are made up of "loops". UVs are assigned to entries corresponding to each loop. With tessfaces, UVs are assigned to entries corresponding to each face, all 3 or 4 UV coords for the face.

48
I had issues with touphscript and hack7, but this is probably my own fault. Loveless opened flevel.lgp just fine. Can anyone point me to a field that is known to have a typo or other obvious translation goof in it so I can see if they fixed it?
I remember a minor typo (well, a commonly confused word error) in one of the PC version lines: "It's you're fault for running around like that!" in Junon.

49
I'm looking at the FIELD\*.DAT files, which are less than 100KB each. Within an editor like Makou Reactor or Hack7, you can observe blocks of data labeled 'AKAO', but these are only a few bytes in size.
Are you talking about the script opcodes? If you are, then we're talking about different things. I'm talking about the text 'AKAO' actually appearing in field files as viewed by a hex editor. If you look at the "tutorials/sounds" section in Makou Reactor, the entries marked "Sound" are the AKAO blocks.

50
I've read that elsewhere as well, and I don't doubt it...but I'd imagine someone has done more digging than that. AKAO itself seems to only precede 'Play music #x', but from what I can see, AKAO sections simply aren't large enough to contain the entire songs themselves - where is the actual music data stored? If I knew that, I could figure out how it's being referenced, and modify that...or at the very least, replace entire songs with other songs where desired.
AKAO blocks aren't large enough? How large are the AKAO blocks you're looking at? What makes you think they aren't large enough?

Quote
I don't suppose you mean that the field model files themselves are contained within the .DAT files (.DAT files are quite small), so I assume you mean that the file names are explicitly mentioned...or do you mean that their LBAs are mentioned, in hex? If so, I assume these .DAT files are little-endian, like the various .BIN files FF7 uses? I'll do some digging with a hex editor later today.
luksy's mistaken. That's only true in the PC version. In the PSX version, NPC models are stored in the BSX files. I don't understand the documents about their structure well enough to explain how they work.

Pages: 1 [2] 3 4 5 6 7 ... 9