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

Pages: 1 [2] 3 4 5
26
Q-Gears / Re: Q-Gears 0.12
« on: 2007-03-29 20:56:41 »
This is an opensource project. You don't need permission to change the code or improve it (as long as you don't break the license terms), if you want to port it to osx, and I suppose the authors will like it, if you do it right.

27
Q-Gears / Re: New Logo....
« on: 2007-02-27 16:56:28 »
Some other thingy for you...



still based on my gears, but now with a rusty look, and without the sky.

28
Q-Gears / Re: New Logo....
« on: 2007-02-27 06:34:23 »
I don't like the font, but the bg beats mine. :P

29
Q-Gears / Re: New Logo....
« on: 2007-02-26 07:44:51 »
Ok I have been playing a bit more with that logo.



Made the gears background a less "light" (someone told me it was too "heavenly"), and changed to some other font that doesn't make you think of the FF logo.

Also added some extra text to fill the logo a bit... it would be read like "Open RPG Engine Q-Gears" (kinda like zelda's boss names :P), but that can be removed or changed in 2 secs.

The font is called Fragile Bombers and it's in here: http://www.1001freefonts.com/fonts/ffonts6.htm

EDIT: Ok I just messed up. I saved the psd file AFTER merging the layers while closing photoshop, meaning except the "Open RPG Engine" text (I added it later in a new layer), I can't change the fonts or colors anymore, unless I redo everything... :/

30
Q-Gears / Re: New Logo....
« on: 2007-02-26 00:06:46 »
That font is called "final fantasy" and includes chars that look like the ones in the "FINAL FANTASY" text in the title screen in the uppercase letters, and chars like the ones in the "squaresoft" logo in the lowercase letters, the rest of the font is "empty". I used Verdana to do the "-"...

I used this one: http://www.dafont.com/final-fantasy.font

31
Q-Gears / Re: New Logo....
« on: 2007-02-25 22:47:59 »
(You can't copyright a font, only the data used to make a font. i.e. the display is ok, but distributing a .ttf file without permission is not)

Well then what if you do your own font? even if it looks exactly the same, you aren't redistributing their font. :P
Like, the second image I posted uses a font I found in a public fonts site, not something copyrighted by squaresoft.

32
Q-Gears / Re: New Logo....
« on: 2007-02-25 18:39:52 »
Some quick splash, I don't like it too much myself, but works as a concept.



I made the gears and rendered them with the sky, then "cut" the borders to make it fade to white and added the Q-Gwars text.
I dont' have the font right now, but it can be changed later.

It might look nicer with the game name below the line (so it would need either a specific splash image for each engine, or the engine can "print" it over the splash at boot).

EDIT:


I changed the font to a FF-looking one. I made the "ears" chars smaller becasue, IMO, it looks nicer.

33
Q-Gears / Re: New ISO image access routines + Other
« on: 2007-02-22 19:40:41 »
there is 2 forms in mode2, from1 where there is 2048 bytes of data + some bytes of error correction, and form2 where the error correction isn't there, and it's just data.

nicer explanation

obviously, if you want to be able to read that data, you must be able to read the sectors in raw format, and then check the sector mode to know if it's using form1 or form2.

I don't get why do you say the file is never 2k. The file canbe anything from 1 byte to the whole CD... you only need to read the sector header to be able to tell if that sector contains 2048 or 2324 bytes, after that you can just return those bytes without ever telling the "caller" how were they stored in the disk...

to read any number of bytes from any position
you just need a "sector buffer"
2352 bytes in size
then
have some "current pointer" and "bytes left in sector" values, then just fill the buffer till you read all the data, or reached the end of the file. like:

Code: [Select]
//fast, lame and poorly named code
int read_data(char* buffer_pointer, int bytes_to_read)
{
  int bytes_read=0;
  while((bytes_to_read>0)&&(bytes_left_in_file>0))
  {
    if(bytes_in_sector==0) read_next_sector(&sector_pointer,&bytes_in_sector);
    int bytes_to_copy=min(bytes_in_sector,bytes_to_read);
    memcpy(buffer_pointer,sector_pointer,bytes_to_copy);
    buffer_pointer+=bytes_to_copy;
    sector_pointer+=bytes_to_copy;
    bytes_left_in_file-=bytes_to_copy;
    bytes_to_read-=bytes_to_copy;
    bytes_read+=bytes_to_copy;
    bytes_in_sector-=bytes_to_copy;
  }
  return bytes_read;
}
This code assumes it's contained in some class and all the vars not explicitly declared are assumed to be instance variables initialized before calling.
(someone might remember I said I hate _ in code, and I feel it's really stupid that I preferred them in this case... O_o).

34
RIFF is a little-endian version of the FORMs file format in some other OS... it's basically a standard way to define files, no matter what you have inside them. Windows AVI, WAV, and other file formats use it.

RIFF<size>CDXA
fmt <size>....8.XA........
data<size>...

It's basically telling you it's a CDXA-formatted file, with the "fmt "(format) set to those values. after the main fourCC code, there is a 32bit size, and then <size> bytes of data. It's a simple format.

00 00 00 00 ....
38 01 58 41 8.XA --the "." in here is a byte(1)
01 00 00 00 ....
00 00 00 00 ....

I suppose "XA" means it uses XA audio in the stream, but no clue about the other bytes. All the files use the same header so who knows.

Anyway I have a theory: the STR player probably couldn't handle mode2form2 sectors, so when they were reaching the space limit, they decided to use mode2form2 sectors, and had to make a new file format for it. I might be totally wrong on this, but it makes sense. ;)

35
Haven't tried it with ff7, but AFAIK windows supports mode2form2 sectors fine, else it wouldn't be able to play videoCD movies!
vcd uses mode2form2 sectors to save space on video data, where it doesn't require error correction, and I assume ff7 does the same for movies.

36
Q-Gears / Re: Emulator or Engine?
« on: 2007-02-18 18:11:41 »
Technically, qgears is an "engine emulator", meaning, it emulates what the original engine did with the data files, without using any code from it.

Remember "emulating" means "doing the same something/someone else would do."

37
Q-Gears / Re: The Q-Gears Linux thread
« on: 2007-02-17 11:35:46 »
"Do you think Linux could use an installer?" << The way linux is, you might need 4 installers or more... just only the diff rpm-based distributions might need diff installers!

You could obviously do a generic one, without using the packaging system, like just the "make install" part, in a tar.bz2
What would be nice would be a configuration script...

something like qgears-config.sh...

Welcome to the Q-Gears configuration wizard.

Please sepecify where the FF7 files are: /mnt/cdrom
Ok, good, this path seems to have FF7 data.

Do you want to configure other engines? No
No? Oh well then I'm done here...

Writing configuration file... done.

Do you want to run Q-Gears now? Yes
Ok!

Starting Q-Gears FF7 engine...


EDIT: Forgot to say, I can code that, if you want me to (I'm not a linux user right now, but cygwin's bash works just as well).

38
Q-Gears / Re: Field models.
« on: 2007-02-17 00:41:03 »
Comparing cyb's image with akari's one, cloud is actually a bit bigger in akari's image, but cyb's cloud seems more "stylized", like if the x/y/z proportions were off in qgears compared to the real ff7...

btw the ff7 window is 320x224, not 320x240, and yours is 319x239 also ;)

39
Q-Gears / Re: STR, XA, FF7STR??
« on: 2007-02-16 00:49:24 »
Yes field.bin is gzip. if you look with a hex editor, you will see "1F8B08000000..." at offset 8. That's the gzip "magic" numbers :P

I checked it: removed the first 8 bytes of the file and saved it as scene.gz, thne used winrar (gzip/gunzip should work too:P) to extract it to scene.dec

Looking at it shows what seem traces to what the original scripting language looked like (bits like if, lif, the opcode names, and others), and moch more! :P

EDIT: actually "and much more" I meant lots of data that while it seems to follow some structured pattern (so it could be one or more arrays of things) dont' have any apparent meaning (not even after adding 32 to each byte to check for ff7 strings).

40
Q-Gears / Re: Sound output method
« on: 2007-02-14 20:33:18 »
Giga, of you have an issue with variable_naming, you could always write a wrapper class or something. I personally hate CamelHump variable names, but abided because Akari likes them.
Oh don't worry I will help if I think I can... even if I don't like the naming conventions.

But I think you'll agree, that using SDL_xxx is a LOT easier than writing another output class for each platform.
Sure, but I still don't really like it's naming convention. :P

Actually, we are going to need MOD-type player. I'll need to hunt down the SEQ data format. I only know the container format, but not what's in it. I know in the "raw" form of SEQ music sequences, they use VAG files for the music samples (Kind of like a soundfont) We have the original uncompiled MIDI files from the PC version so if we liberate the data out of the SEQ container, or whater it's in, we can most likely reverse the music pretty easily.
Well SEQs are probably more MIDI-style than MOD, that if they didn't just use MIDI data directly, like lots of ps2 games do... in that case it wouldn't be too hard to do one. I wrote a midi disassembler once (converts a midi stream to instruction mnemonics), and from what I know from the psx sound hardware, I think it wouldn't be too hard to make a sequencer. So if there is the need, tell me. :P

An intresting way to do music is to take some code from an open source PSX emulator, or one of it's audio plugins to make it sound correct. The "Heart" of our sound system might just be an emulated PSX sound chip. How does that sound to everyone?
Well as I said I worked on a spu2 plugin (ps2 sound processor), and it's just like the ps1 spu, but doubled, so I know the insides kinda well (and could provide some code if needed, and I have it). From that I would just say emulating the whole spu would be pointless, but if you jsut take the decoder, mixer and effects processing, then it's a nice idea.

41
Q-Gears / Re: Sound output method
« on: 2007-02-13 20:58:55 »
Oh, well dunno I never bothered to read the license :Pç

We don't need to rewrite ALL, just the output system. so you could have, using an object-oriented interface, an AudioOutput object for each api (like DSoundOutput, OSSOutput, etc...) that just outputs the audio received from a common AudioMixer object.

About SDL_mixer... SDL has this naming convention... I don't like it, I hate reading function names with _ in them, and SDL does it a lot. :P
Other than that it's fine, so if you want to use SDL_mixer then just don't expect me to help too much... :P

42
Q-Gears / Re: Sound output method
« on: 2007-02-13 19:46:36 »
There is fmod. I personally like it and even tho it's a propetary library, it's free for non commercial uses and supports windows, linux, and macos.

Also it wouldn't be hard to make our own mixer, with different output "modules" for different platforms.

One of the other projects I work in sometimes is a sound plugin for pcsx2 (a ps2 emulator), and it does all the mixing internally, and can output the sound using waveOut, fmod and asio, so I could help you with that.

43
Q-Gears / Re: Q-Gears.0.11
« on: 2007-02-03 14:33:57 »
that's just the "standard" naming :p

./branches
./tags
./trunk

if you never branched or tagged the source, then the other two will be empty... anyway Akari you can get the svn client from http://subversion.tigris.org/ get the win32 exe isntaller. The .svn data is compatible so you can just to "svn commit" from a cmd prompt. (svn update to update, etc)...

44
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-02-02 20:01:50 »
LZS? scene.bin uses gzip :/ if you tried to decode a gzip stream using the LZS decoder, thne no wonder the results came out fucked... :P

45
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-02-01 12:59:20 »
Here is my code: http://www.sendspace.com/file/uxmsct
There is a .bat in /debug/, use it to run the app. I made a .dtd for it so I could validate the xml info.
If you prefer to help Akari instead, I could convert my code into your class myself...

46
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-01-31 22:27:57 »
I'm working on the whole file, but for now specially on the "known" info... right now the program outputs most the data that was in the wiki in xml format (the scripts are just a block of text in a <SECTION> tag inside the <AI> tag).
My idea was to be able to export all the data as a big xml file, with "decompiled scripts"... I really like to get files with unknown data and find out what's inside, even tho my skills aren't too good. :P

47
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-01-31 14:10:26 »
Hm I coded a disassembler following the instructions in Terence's Enemy AI thread... it's not really useful right now, but I will later try to add some "parsing" to get it to a higher level.

48
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-01-31 11:41:20 »
Mainly because no one told me it existed... and I spent arround 30 mins trying to find info before starting to get into it.

OMG for some reason I totally ignored the second post in this thread O_O. Anyway, the link is dead and I can't seem to find it arround. :/

49
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-01-31 03:08:14 »
yes that's the z "header"... I give the extractor from there to the end...

Interesting stuff I found at block 0, file 2:
Code: [Select]
Script at block 0, file 2, enemy 0, section 2:
0000h: 81 60 08 34
0004h: 60 00 <-- there is another 60 xx pair below so maybe this one is a single instruction too... (if 71 is "jump if flag", this could be comparing?)
0006h: 71 27 00 <-- 71 0x0027 == probably 71 is some "jump if (flag set?) to address 27h"
0009h: 93 "monster" b2 "Not a probrem" b3 ff <-- 93 looks like a "show dialog" opcode
0021h: 72 62 00 <-- another jump, with diff condition code?
0024h: 72 2c 00
0027h: 60 01 <-- I wonder...
0029h: 71 46 00
002ch: 93 "monster" b2 "I'm sorry" b3 ff
0040h: 72 62 00
0043h: 72 46 00 <-- given the next instruction is already at 46h, this looks like a "nop"...
0046h: 93 "monster" b2 "That's too bad" b3 ff
005fh: 72 62 00
0062h: 91 <-- I wonder too
0063h: 73 20 00 <-- this 0x0020 points "nicely" to the 11 10 ... at the 0084h line, so it could mean 73 is a "jump offset"
0066h: ff ff ff ff
006ah: 2b 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0084h: 11 10 20 01 10 20 60 01 30 90 73
008fh: 11 18 20 01 18 20 60 01 30 90 02 60 20 60 08 87 40 70 29 00 01 18 20 60 01 40 70 29 00 12 70 20 02 80 20 90 60 20 60 23 92 73

I will continue to look at it tomorrow, right now it's already 5am and I should be in bed. Cya.

50
Q-Gears / Re: Battle script (SCENE.BIN) + more
« on: 2007-01-30 17:10:27 »
I copied the code from qgears, and changed it to "fit" in my program, so basically I changed the parameters and return value, so I pass it a pointer and get the pointer to the uncompressed data as return value, and the size in a int pointer.

Pages: 1 [2] 3 4 5