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

Pages: 1 [2] 3 4 5 6 7
26
Team Avalanche / Re: [FF7] Recreating scenes in 3D
« on: 2016-05-11 07:04:42 »
There are a few annoying arbitrary limits - this is why I think replacing parts of the field engine to render actual 3D or some other better effects/models would make this even more worth while.
 

27
Looks like this:
https://github.com/MaKiPL/FF8_Reverse

I'm confused what now. xD
I'll copy all my notes of files there.

EDIT: I'm really... really confused...
EDIT2: Ahh... The wiki page: https://github.com/MaKiPL/FF8_Reverse/wiki
EDIT3: No, really. Maybe I'm just stupid, but I don't understand how github is better than this thread and wiki here.

You need to make a branch called gh-pages and set it as the default branch name. For example https://github.com/munificent/wren/tree/gh-pages

Then your URL is something like username.repo.github.io

Edit: The github wiki isn't the same as github pages, its a normal wiki that sucks since you have to manually add people like on qhimm wiki and no one and easily grab a whole backup of the wiki.

gh-pages docs: https://help.github.com/articles/what-are-github-pages/

28
Github pages uses a git repo for displaying a website, and since its a git repo you can fork/edit/push back changes. Instead of source code text its wiki page text :P

29
I wish you guys would use github pages to document stuff, then anyone can download a copy or fork it and edit it.

30
This is all artifacts of lack of whole program optimization by old (<=MSVC 6.0 C/C++) compilers. They would have used a #define to control the debug stuff, but because the compiler couldn't prove if some functions where used or not indirectly it had to leave them in.

The 1F800000 stuff is writing directly to a PSX memory address, probably another function that should have been compiled out.

31
Team Avalanche / Re: [FF7] Recreating scenes in 3D
« on: 2016-04-09 23:24:28 »
I do not very well understand what you want to explain . The translation is bad. want to talk about creating a stage with another file "png" ? because if c is this, this is not possible to me, it belongs to the engine of the gamethis would require changing the structure of the full game and it does not fit in my abilities. inject a 3D model but certainly not the create...

Correct. I mean changing engine to add bump mapping :). There is a custom graphics driver so someone could probably do this.

Edit: If this was added then I think it would be a big improvement over vanilla game engine.


32
Team Avalanche / Re: [FF7] Recreating scenes in 3D
« on: 2016-04-09 10:31:41 »
Is it possible to create a "bump map" effect so it looks more "3D" in the game? For example "The Swapper" game seems to use this effect and looks 3D but the whole game is 2D.

33
Seems it has a huge singleton with tons of data like FF7 has..

34
Team Avalanche / Re: [FF7] Recreating scenes in 3D
« on: 2016-03-10 17:09:37 »
I had a look at sketchup and it does seem FAR more simple in modeling than blender is. I do wonder how you created bedding sheets in it though.


35
MaKiPL what is confusing?

Surely this is easier:

signed int(*PlaySystemSound)(unsigned int Sound_ID) = ((signed int(*)(unsigned int))0x0046B270);

PlaySystemSound(whatever_sound_you_want);

Than:

1. Inject:
Code: [Select]
mov ecx, [SoundID]; change SoundID
push ecx ; make sure ecx is not used by other function when injecting
call 0046B270
pop ecx
ret
2. Change EIP to your injected code
3. Return;

?

36
it probably hates spaces in the path or something like that

37
Team Avalanche / Re: [FF7] Recreating scenes in 3D
« on: 2016-03-07 17:44:32 »
Excuse my ignorance but can sketch up render these scenes in real time?
 

38
MaKiPL - why not fork and continue the work in https://github.com/rcxrdx/FF8Modding/blob/master/src/Hooks.cpp? :)

39
You might be better off using github pages or something instead. Has more downtime resistance and is distributed.

Quite a few useful bits of info here: https://github.com/rcxrdx/FF8Modding/blob/master/src/Hooks.cpp

40
Hey guys, right umm ive been doing tons of research with this and im beginning to grasp tile mapping, which file does what and the basic assembly. What im struggling with or at least i think is .. the dll file you sent me Paul to replace the original, What exactly do i do with it, do i delete all the text and call references or do i need to keep some? From what i cam tell the graphics are in btl_win_h.tex but im unsure, also im looking in the menu overhaul mod to get an idea of how things work and i dont understand how we separate the textures into different bmp's and call them to a specific command in script. How can i just add a bmp/png whichever, name it something and have it called to different modules (menu, equip, limit ect) just a single pic like buster_00. Im fairly sure with a lot of google'ing ive managed to find the right number thingys in the exe for specific text/avatars but not the cursor or cursor shadow when selecting a specific text. Again with the config menu i dont know where or how the window colour operation is performed and it doesn't lead me to anything. I dont  know if any of this makes sense i don't really understand it myself nevermind explain it to anyone else.

Sounds like you're better building a replacement menu outside of the game, then add it into the game later?


41
Any update on this?

42
Sounds good. I've managed to get into the exe and find all the numbers and stuff. And I have a good list of what all the numbers and sections do. But do I change the actual exe or create a dll?  Plus I know now I think how yo move things but I don't know how to change the appearance of something. Like the general interface and what not

https://github.com/paulsapps/OpenFF7/blob/master/src/OpenFF7.cpp

You can use this as a base. It compiles to a dll called ddraw.dll - when placed in the same dir as ff7.exe it will load the fake ddraw.dll instead of the real one. This can be used as the entry point for hooking the menu module functions and  replacing them with your own.

43
Not exactly because the text input isn't handled by the menu. I probably would outsource it to the UI and would use strings to add a high mod compatibility support. However I'm not a programmer and can't do it (but I'm good in giving inspiration and ideas. ::))

The text input IS handled by the menu module! Trust me, replacing the menu module with your own would allow you to create the one seen in the youtube video. You'd have your own input handling, for rendering just make your own GL context and give the game engine a textured quad as the output. You'd need a few other hooks into the game to read the script vars etc.

44
the best solution I can think of is to create an overlay to replace the menu. At the start I would place the new menu over the existing one and at the end I would try to disable the original UI  and adding additional features. The advantage of this would be an entirely outsourced and global UI of which we have full control of.

If you replaced the menu module of the game this is exactly what you'd have. @Tsunamix you need to write a DLL that injects itself and takes over the menu module -i.e replaces the function pointers in the module struct with your own for rendering, input etc.

rcxrdx started doing some work on FF8 here, it would be something like this:

https://github.com/rcxrdx/FF8Modding/blob/master/src/Hooks.cpp

Apart from you are only interested in the menu module, access to the script vars (someone will already know all of the var addresses for these things), and the rendering API (again must be known since there is a custom opengl renderer dll).

Edit: Don't forget ergonomy_joe has fully reversed most of the game to source already: http://magnetiktank.blogspot.co.uk/

This is probably all the info you need.

45
I don't so much want to copy this. Like the battle I'm leaving. I have ff9 with coloured tabs and I'm happy. I just wanna know how to open up the game so that video could be possible.

You could do something like this, but you'll probably need to rewrite most of the menu system. Given the way the engine works this is possible but will take a lot of time and effort. Each module of the game is a struct with some pointers for like OnKey, OnUpdate, OnRender etc. So you'd have to reverse those, load a DLL that overwrites the menu module functions with your own. And then write your new menu system.

I'm doing something a bit like this for Metal Gear Solid 1: https://github.com/paulsapps/msgi this aims to fully reverse the game though, improvements to come later (apart from things that are required to actually make the game boot/use hardware rendering).

46
That dude already has reversed it to the point of it compiles again and field works etc :)

47
Decompiler still almost needs a rewrite to obtain clean readable code, which is what ergonomy_joe has already done for 80% of the engine.

48
FF8 Tools / Re: FF8 Scripting Language
« on: 2015-12-22 17:47:45 »
I had a project that was going to be used for QGears like this:

https://github.com/paulsapps/SUDM

Getting the decompilation step correct is quite difficult though.

49
The conversation concerning the reversed source code has moved to private for now.
But to answer the questions:
.I would like to post my work somewhere
.I am aware of the legal issues

In the meantime I will try to update my blog with bits of code.
Especially, some of you maybe aware of the fact that the ORIGINAL EXE includes 3 different graphic drivers (Direct3D hardware accelerated, software, [broken]OpenGL) plus the option to load the driver as an external DLL. The sofware part is really interesting: it is a complete STATE OF THE ART (for 1997) sofware rendering library. I find it hard to beleive that EIDOS developped it only for the FF7 port, but I couldn't find traces of it in other games of that era. Anyway, this part of the code is really fun (mostly inlined ASM) and I'd like to make some post about it.

BTY, I might not be able to post anything during weekdays so don't blame me for not answering please

I think what you've managed to achieve is pretty outstanding! Your method of verification is quite interesting too. Btw perhaps SW renderer could have been used in Tomb Raider ports?

50
ergonomy_joe do you actually plan to share your source at all? I'm quite keen to check it out and see how it runs :). Ideally creating a github project?

Pages: 1 [2] 3 4 5 6 7