Qhimm.com Forums

Project forums => Q-Gears => Topic started by: Tom on 2015-06-24 13:43:08

Title: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-06-24 13:43:08
The Finishing Touch
Automagically fix Z-Index, LUA errors, savemap and dialogs


(http://i.imgur.com/c90Bamw.png)


This program is aimed at fixing all those little bugs here and there that have plagued Q-Gears. It is meant to be applied OVER the data installer in a binary patch way.  You could say this is Q-Gears' first mod :)  It will fix up the Z-Index, meaning you won't walk above walls and obstacles anymore!  Implements a framework in order to add dialogue in a future revision,  it also adds Q-Gears' own custom main menu background that I designed in Blender.

Currently after you run the Q-Gears data installer you get the data in order to run the game however some basic things like a main menu or a level selection menu are not added, meaning that the game will crash upon starting.  This adds the special sauce is needed to get it all going :)

Heres what your game will look like once you have installed it:
(http://i.imgur.com/u2JjxUy.png)
(Minus a few menu options because those are debug options.)

How to install (Revision 3)
0. Make sure you don't have previous q-gears installs in your program files directory!
1. Download and install *this version* of Q-Gears from: http://qgears.itscovarr.com/dd454d2c2884f2d8b1125dfc15f500ddf0a24e7e/windows/
2. Open your Q-Gears directory in C:\Program Files\q-gears 0.22.0
3. Run q-gears-launcher and switch to the data installer tab
4.1 In the Import Data Source point it to Final Fantasy 7's /data/ folder (Not the actual Final Fantasy folder but the data folder inside it!)
4.2 In the Q-Gears data path point it to your q-gears/data folder Example: C:/Program Files/q-gears 0.22.0/data
5. Click the "Install data" button and let it finish. Don't worry if windows says it is not responding, give it some time to do its job!
6. Download the latest Finishing Touch patch and install it.
7. Run q-gears.exe and enjoy the game  ;)

Now on to the real deal:
Revision 3: We enter the reactor
Fixes bug in nmkin_1 where you would crash when you talked to Barret
Script now correctly executes in nmkin_1
Added extensive documentation and commenting in nmkin_1 to make it easy to read/modify

(http://i.imgur.com/WBveuUY.png)

Download Revision 3: http://www.mediafire.com/download/5a39zi23fbx8m0y/Revision3.exe
Revision 3 works with this Q-Gears: http://qgears.itscovarr.com/dd454d2c2884f2d8b1125dfc15f500ddf0a24e7e/windows/

Revision 2: C'mon newcomer
Fixes the 2 guards that get killed, they now have on_interact scripts and drop potions when they are killed
Dialog implementation
Field background animations re-added
Fixed hang bug in nmkin_1
Added doors in nmkin_1
Works with a more updated q-gears

(http://i.imgur.com/YZCJcl4.png)(http://i.imgur.com/3RuJPPx.png)

Download Revision 2A: https://www.mediafire.com/?c9w7h5ex8js3ir7.
Revision 2A works with this Q-Gears: http://qgears.itscovarr.com/dd454d2c2884f2d8b1125dfc15f500ddf0a24e7e/windows/

Download Revision 2B: Replaced by Revision 3, scroll up to download
Revision 2B works with this Q-Gears: http://qgears.itscovarr.com/602e2a895de4bd8f6474cbe9c81a3c891ad9b8e1/windows/
(Revision 2A and 2B are the same except they are compiled against 2 different versions of Q-Gears)


Revision 1: Hide and Seek
Fixes tiles Z-Index allowing you to walk behind stuff and not over it!
(http://i.imgur.com/7nSKRgJ.png)

Download Revision 1: https://www.mediafire.com/?zko6npc5innbcsd
Revision 1 works with this Q-Gears: http://qgears.itscovarr.com/9684ed83f853428a3a17a1b4e20926b8be5d9455/windows/
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: paul on 2015-06-26 01:21:24
I would use this build: http://qgears.itscovarr.com/6ffd6343bc2c1fe66ce9f8e8e5736edcb777a382/windows/
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: Tom on 2015-06-26 14:32:13
Does that one fully install data or freeze like the other one did?
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: paul on 2015-06-26 21:52:21
Of course it doesn't freeze else I wouldn't be suggesting to use it would I? This build has more fixes:

http://qgears.itscovarr.com/dd454d2c2884f2d8b1125dfc15f500ddf0a24e7e/windows/
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: Tom on 2015-06-29 21:58:47
Okay since the files change with the update the new installer will not be compatible with the old qgears build this means when the Revision 2 is released you will have to uninstall qgears and download the new revision and repeat the FT install instructions.
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: KnifeTheSky77 on 2015-06-29 23:39:26
I think it is cool that mods are being made for q-gears, don't get me wrong, but doesn't it seem wiser to fix these issues in source rather than spending time making a band-aid? We don't need to reverse engineer q-gears itself. Q-Gears is the band-aid for the original engine as it is
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: paul on 2015-06-30 16:14:21
I don't think Tom knows C++ so thats why hes done it this way, fixing Z order is probably easy. Adding dialogs just needs that section of the  field parsing for PC data and integrating in to SUDM. The nil vars in the script need fixing by extracting the save map from kernel.bin in the installer and changing SUDM to read/write banks from this rather than its own named vars. For mods they can use their own locals in lua scripts however they want - but to get stuff working a Read/WriteBank API is probably going to be a lot easier.

Someone just needs to take the time to do these things :) I can provide help as needed about the structure/solution - not "what does int mean" etc level of help.
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: Tom on 2015-06-30 23:19:14
Currently, I only do Java programming, visual basic 6 and HTML.  I understand what the c++ does if I look at the files but don't really know how the syntax and all the commands exactly work.  This may change later on if I'm motivated enough to seriously do c++.

Anyways at least I can find all the problems as this is done and point them out in github if I can't fix them.

PS The field converter is better than you think, the amount of code that has to be fixed to have a field working 100% usually does not exceed 20-30 lines of modifications. :) And that's a bit overkill because I changed a lot more than the bare minimum to get them working like convert on/off bits to booleans and renaming labels.
Title: Re: Finishing Touch - Automagically fix issues (With download!)
Post by: Tom on 2015-07-02 15:31:54
Revision 2 has been released, enjoy :)
Also post any improvements you make on the scripts so I can add them into the mod.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: paul on 2015-07-05 22:37:58
Latest built should install texts now too
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Tom on 2015-08-03 22:11:25
Revision 3 - Descend into the Mako Reactor will be released a little after August 10th. Fixes glitches with the elevator field and adds animations for cloud and barret hitting the button (in the elevator).  Also work done in the later mako fields and fixes softlock in nmkin_1.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Salk on 2015-08-05 04:02:57
Thank you for all your work on Q-Gears, guys!
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Tom on 2015-09-09 15:12:30
Sorry for the very very long delay, things have gotten quite busy because Windows 10 came out and broke the original FF7 PC98 installer, so that needed remaking.  Don't worry, the project is totally not abandoned and progress to Finishing Touch HAS been made however not enough to warrant another revision release.
~Stay tuned for the next revision of the Finishing Touch!~
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Fischkopf on 2015-09-10 17:13:05
That's funny, because when I switched to Windows 10 from 8.1 I just copied my old FF VII installation over, set the disk drive manually via regedit, mounted the dummy iso and I could play my previously modded installation without problems. xD
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Kaldarasha on 2015-09-11 17:49:03
That's funny, because when I switched to Windows 10 from 8.1 I just copied my old FF VII installation over, set the disk drive manually via regedit, mounted the dummy iso and I could play my previously modded installation without problems. xD

And now uninstall it and try to install it again...
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game!
Post by: Tom on 2015-09-12 22:48:14
Now you can install it using Tom's Installer Remake, its in the tools section of the forums or here: http://forums.qhimm.com/index.php?topic=16328
Fixed a few bugs in Q-Gears fields today, might get a release later this week
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 2)
Post by: Tom on 2015-10-04 15:33:11
Finishing Touch Revision 3 is up for download: http://www.mediafire.com/download/5a39zi23fbx8m0y/Revision3.exe
Fixes a bunch of stuff in nmkin_1 and adds a ton of dialogue and some smaller bugs on other fields.

Depending on how 7-Gears develops we might not even need Finishing Touch anymore so consider the project somewhat transitional for now.

Scripts now execute in nmkin_1! Hooray! (It was a very tough field to get working)
(http://i.imgur.com/WBveuUY.png)
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: obesebear on 2015-10-04 16:28:07
Forgive my ignorance, but what is 7-Gears?
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Covarr on 2015-10-04 16:30:54
A side project that Paul has been working on (https://github.com/paulsapps/7-Gears).
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-07 15:44:44
For 7-Gears it would be nice if more developers could join the team and help with the project :) . 7-Gears is about making 1:1 replacement of the ff7.exe, so we gotta reproduce already existing behavior instead of adding new things.

You don't have to be an expert C++ developer to help, we also need people that understand the game formats and how to read and execute them.

Until 7-Gears reaches a state in which it surpasses Q-Gears 0.22 useability the Finishing Touch project will continue :)
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: KnifeTheSky77 on 2015-10-08 02:42:55
Q-Gears is a bit of an enigma machine to me as I'm mostly a Java/C# kinda guy. On top of the c++ witch-speak, Ogre is crap in a lot of ways that make learning it and using it very challenging. I mean, c'mon, go look at their docs and their forum. I don't think I could do much with it without some really good directions.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Hellbringer616 on 2015-10-08 05:25:30
OpenMW recently switched to OpenSceneGraph: http://www.openscenegraph.org/

Since you're starting sorta from scratch it might be worth your while to look into?
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-08 18:48:24
Currently we are going to go with SDL: https://www.libsdl.org/
This is totally not starting from scratch, this is going to are going to reuse code from many different versions of Q-Gears to make something actually worth playing.
Since theres plenty of code that will work with it for 7-Gears.
We don't want anything anything that's system heavy or filled with bloat (Like unreal/unity) or prevents low level access.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: KnifeTheSky77 on 2015-10-09 02:20:51
This looks interesting, is this just a plan or have steps actually been taken to migrate from ogre?
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Akari on 2015-10-09 10:03:11
Quote
Currently we are going to go with SDL: https://www.libsdl.org/
This is totally not starting from scratch, this is going to are going to reuse code from many different versions of Q-Gears to make something actually worth playing.

Look at the version 0.14 and earlier https://github.com/q-gears/q-gears-reversing-data/tree/master/media/version_old. It uses SDL. It can play movie work with native scripts and so on. It uses PSX version of native data but youcan easily convert to PC version. Some of features support pretty lame but definetly worth looking at.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Akari on 2015-10-09 10:09:35
Look at the version 0.14 and earlier https://github.com/q-gears/q-gears-reversing-data/tree/master/media/version_old. It uses SDL. It can play movie work with native scripts and so on. It uses PSX version of native data but youcan easily convert to PC version. Some of features support pretty lame but definetly worth looking at. Whole first mission with movie was playable.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-09 18:21:25
Akari thats exactly what I showed Paul and it would be nice if you could help too since you wrote most of the SDL engine.  If we focus on ffvii only and not spend time on scripting languages/converters and fluff we should make a lot of real progress :)
One of the problems that has plagued Q-Gears is that we lost focus on the real goal of making a replacement ff7.exe and got carried away in making a uber complex engine that requires a lot of conversion to get anything to work.
Another great advantage of using the already existing formats is that we already have a very large library of programs that work and edit them, like Makou Reactor for fields or Kimera (spelling?) for models or Hojo and Proud Clod.
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: KnifeTheSky77 on 2015-10-09 22:42:57
Kimera is crap, you should convert to a mainstream model format
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-10 07:02:29
We tried doing alot of fancy conversions last time and ended up chasing our tails because stuff was wrong and animations were messed up and we spent more time working on converters than the actual game.  This time were doing native formats untill everything works as specified and once that is done we can add special sauces ;)
However if you can write a 100% working model converter with all animations (and lighting) you are more than welcome :)
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: KnifeTheSky77 on 2015-10-10 15:46:34
I see what you did there ;)

Where in the pantheon of github is this new proj
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Hellbringer616 on 2015-10-10 18:51:24
I see what you did there ;)

Where in the pantheon of github is this new proj

https://github.com/paulsapps/7-Gears

There you go

I can't code to save my life, but i can test!
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-11 16:39:29
If anyone knows how to code LUA or in general can figure out how to do stuff by looking at existing code, download Finishing Touch and you can help by getting the scripts work.  Look in data/maps/ffvii/field/ and look at the folders nmkin_1 and the LUA file inside!
You don't have to be an expert coder to work since its mostly easy commands
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: KnifeTheSky77 on 2015-10-11 22:23:41
Are these scripts a product of SUDM?
Title: Re: Finishing Touch - Automagically get Q-Gears to run the game! (Revision 3)
Post by: Tom on 2015-10-14 15:44:35
Look at the version 0.14 and earlier https://github.com/q-gears/q-gears-reversing-data/tree/master/media/version_old. It uses SDL. It can play movie work with native scripts and so on. It uses PSX version of native data but youcan easily convert to PC version. Some of features support pretty lame but definetly worth looking at. Whole first mission with movie was playable.
Akari could you make a zip that includes all the dependencies in the VS2005 project file the .sln?

KnifeTheSky77: You get these scripts by running the q-gears-data-installer program and then installing Finishing Touch Latest Revision