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

Pages: 1 ... 13 14 [15]
Scripting and Reverse Engineering / FF8 Script OpCodes
« on: 2014-01-15 20:46:13 »
This thread will be my notes on opcode usage in FF8's script files and what I'm currently trying to figure out. I'll list everything the wiki doesn't have a page for. I'll remove things from this thread as I add them to the wiki.

UPDATED 3-13-2014

Some battle flags are still unknown
2^0 (+1): unknown, used with the +128 flag in some boss fights, also used in every deep sea research ruins battle
2^3 (+8): unknown, used in bahamut's room, probably for the bahamut battle. When used on +0 battles, prevents XP and items from being earned
2^5 (+32): unknown, used in the scripted fights at Dollet
2^6 (+64): unknown? Used in Laguna Pandora flashback and in Bahamut's room. Also used in some X-ATM battles
2^7 (+128): unknown, used in oilboyle, abaddon, minotaur/sacred and bahamut's "ruby dragon" fights. Also used in the missile base if you choose to fight everybody
2^8 (+256): unknown, used exclusively while trying to board lunatic pandora from Esthar

These functions seem to do the same thing given the same inputs. They both pause script execution while running. L and R don't appear to mean Left or Right (I've tried near rotations, far rotations, and 120 degree rotations (half circle). They always rotate the shortest angle)

The first 2 parameters are almost definitely volume controls, but I haven't played much with them. Many sounds have 127 as the first parameter and either 127 or 128 as the second parameter.

It's also unknown why the channel number is a power of 2 rather than just an integer, but this isn't really important.

My suspicion is that this will "reset" the game's memory (temporary variables). It's used in a bunch of debug rooms and in start0 right before it sets up a new game. The problem with testing this is that I don't know very many of the game's variables, so I wouldn't know how to tell what data is being cleared. (Maybe myst6re knows some of them?).

MESMODE and message channels
There seem to be five usable message channels (from 0-4) in FF8's scripts. MESMODE has three options (0-2). Some channels have different behaviors than other channels even when MESMODE sets them to be the same (for example, channel 1 mode 1 stays on the screen while channel 0 mode 1 does not).

This function's only parameter is a field map ID. It is always used in a script before one of the MAPJUMP functions. Maybe it's a preloader?

General discussion / Re: Wiki editing
« on: 2014-01-15 19:55:06 »
I see. I guess I'll just make my own thread and update it when I find new stuff.

General discussion / Wiki editing
« on: 2014-01-15 18:40:14 »
I've noticed that I can't register an account on the wiki. I assume I have to request an account or something? I'm working with FF8's script files and would like to contribute to the (mostly undocumented) opcode list.

Scripting and Reverse Engineering / Re: FF8 wav format
« on: 2013-12-28 04:05:46 »
That's interesting, but luckily that's not what I'm doing. I'm only trying to add new sounds.

Scripting and Reverse Engineering / Re: FF8 wav format
« on: 2013-12-18 00:57:44 »
Thanks guys. It turns out FF8's sound effects are ADPCM just like FF7. It looks like I'll have to find a library for java that plays them. At least I can freely edit the audio dat now.

Scripting and Reverse Engineering / FF8 wav format
« on: 2013-12-15 12:49:40 »
Long time viewer, first time poster.

Using Qhimm's FF8SND I've been able to write a program that reads and writes FF8's sound effect data (audio.fmt and audio.dat) and has the capability to add or replace sounds. However, the waveform format that FF8 uses seems to be archaic (or uses some compression I don't know about). I'm not talking about the wav file format, just the waveform data.

I was foolish enough to write my program in java, and java has trouble playing the sound files (reading and writing them works fine, and WMP opens extracted sound files perfectly fine). I've been messing with each wav's format data, trying to trick java into playing them correctly, but haven't had much luck yet. The files sound distorted and scratchy, but I can hear remnants of the original sound in each file, which suggests that the correct data is playing, just in the wrong format. Being able to play sounds isn't really necessary of the program, but it led me to another problem. . .

I'm not sure if adding/replacing sounds will be possible, if the imported sounds aren't of the exact same format that FF8 uses for wavs. I really wouldn't know where to start, and was hoping someone else knows more about waveform data than me. At the very least, it would be nice to have a program that can convert any sound to FF8's wave format (opening and saving one of FF8's wavs in audacity about quadruples the size of the data segment).

Pages: 1 ... 13 14 [15]