Widescreen Gaming Forum

[-noun] Web community dedicated to ensuring PC games run properly on your tablet, netbook, personal computer, HDTV and multi-monitor gaming rig.
It is currently 22 Nov 2024, 12:35

All times are UTC [ DST ]




Post new topic Reply to topic  [ 12 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: AquaNox
PostPosted: 02 Jun 2013, 17:23 
Offline
Insiders
Insiders
User avatar

Joined: 11 Dec 2008, 23:51
Posts: 685
Location: Germany


Widescreen Grade: C
Ultra-Widescreen Grade: C
Multi-monitor Grade: C
4k Grade: C

Read Full Detailed Report - AquaNox

The water is no longer calm. The undersea world has undergone a transformation from tranquil environment to a place of unspeakable violence, graphic murder and horrific danger. It is now the 27th century and mercenaries such as 'Emerald' Dead Eye Flint ply their deadly trade among the warring forces of man and nature.


4:3


16:10


16:9


21:9


3x1


_________________
CZARMAN aka 彼得爸爸


Last edited by czarman on 27 Jan 2017, 08:18, edited 3 times in total.
Edit


Top
 Profile  
 


 Post subject: Re: AquaNox
PostPosted: 07 Sep 2015, 23:43 
Offline
User avatar

Joined: 19 Jan 2014, 17:11
Posts: 14
Location: Poland
So... I've been looking into making this game run in widescreen mode without stretching. Oddly enough, GOG version seems to be really easy to get running just fine (although with Vert- FOV), by finding 1.33333 in float in EXE file and changing it to other aspect ratio.

Steam version however doesn't seem to stand any changes in its EXE file, even if it's like a latter in a string and outright results in Steam error if you try to hex edit it.

So I went and played a bit with CheatEngine. I have some limited knowledge of assembly and some theoretical knowledge about video games, but still lacking in many areas. Anyway...
I played a bit, I found 1.33333, turned out it affects aspect ratio (but sadly instructions can not be broken in a way that would prevent them to writing into that address at all, cause this way you'd break the zoom function.

So I went and analysed the instruction and wrote a code injection script. Didn't help, cause it turned out, it was crashing during cutscenes. Fortunately it turned out, there is other value which is responsible for displaying aspect ratio. So I analysed the instruction that writes to it. And wrote a script around it. Turned out, this time it wasn't crashing the game (although it had a downside of FOV scaling being Vert-).

However I also stumbled upon a way to scale the FOV, so I wrote other script which would increase it. And it worked.

So here's my monster of a creation:
Code:
[ENABLE]
//scalesFOV, cause aspect ratio scaling is vert-
alloc(fovscaling,2048)
label(returnfromfov)
label(exitfovscaling)

fovscaling:
push eax
movd xmm0,eax
mov eax,3FAAAAAB
movd xmm1,eax
pop eax
mulss xmm0,xmm1
movd [ecx+0C],xmm0
mov [ecx+10],edx

exitfovscaling:
jmp returnfromfov

"Aqua.exe"+149CB1:
jmp fovscaling
nop
returnfromfov:

//Fixes aspect ratio
alloc(aspectratio,2048)
label(returnfromaspect)
label(exitaspect)

aspectratio:
repe movsd
push edi
sub edi,C
push edi
movd xmm0,[edi]
mov edi,3FAAAAAB
movd xmm1,edi
mulss xmm0,xmm1
pop edi
movd [edi],xmm0
pop edi
mov ecx,[Aqua.exe+26D100]

exitaspect:
jmp returnfromaspect

"Aqua.exe"+44874:
jmp aspectratio
nop
nop
nop
returnfromaspect:

[DISABLE]
dealloc(fovscaling)
"Aqua.exe"+149CB1:
mov [ecx+0C],eax
mov [ecx+10],edx

dealloc(aspectratio)
"Aqua.exe"+44874:
repe movsd
mov ecx,[Aqua.exe+26D100]


Notice lines:
mov edi,3FAAAAAB
movd xmm1,edi

Basically, I move 1.3333334 to xmm1 and multiply original aspect ratio by it (I do a similar thing for FOV).
This is however something only for 16:9 aspect ratio. For other aspects you'll probably need to calculate another one. I'm not completely certain if this is the way of doing it, but, here's how I calculated 1.3333333.
The original value is 1.0, so:
1.0 divided by 1.3333333 (4:3) = 0.75
0.75 * 1.7777778 (16:9) = 1.3333333

I hope I made it clear enough.

If anyone has any way how to convert this into an easier fix, please go ahead. I would write a fix for Flawless widescreen, but I get completely lost in its code. Plus this is still a really half-assed way of making it run in widescreen mode.

Image
Image

Since why I don't have an Eyefinity set-up (or a good PC, while we're at it), here's my attempt at a screenshot in eyefinity aspect ratio (using my 2 screens) just to see if it works. It kinda does, although there are some glitches:
Image


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 10 Sep 2015, 21:15 
Offline
Insiders
Insiders
User avatar

Joined: 11 Dec 2008, 23:51
Posts: 685
Location: Germany
WOW looks AWESOME - i only found via HEX the right Aspect Ratio but it was VERT- :think:

But with your FOV Solution (i changed some Values) its now Perfect - GREAT JOB :twothumb:

I hope Aquanox 2 is on your List :D

Attachment:
Aqua 21.jpg
Aqua 21.jpg [ 329.55 KiB | Viewed 7074 times ]


I put the 21:9 Solution here -> http://www.wsgf.org/forums/viewtopic.php?f=95&t=30251

_________________
CZARMAN aka 彼得爸爸


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 10 Sep 2015, 22:06 
Offline
User avatar

Joined: 19 Jan 2014, 17:11
Posts: 14
Location: Poland
Well currently I wrote to HaYDeN if he can help me convert the script to Flawless Widescreen. So it's a bit more automated and easier to use. But yeah, I'll look into increasing FOV in Aquanox 2 (cause the aspect ratio can be just hex edited by exe (fine, it's a dat file) file, unlike the one in AquaNox on Steam).


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 11 Sep 2015, 07:32 
Offline
Insiders
Insiders
User avatar

Joined: 11 Dec 2008, 23:51
Posts: 685
Location: Germany
Yup thats right, the Aspect Ratio for Aquanox 2 (AN2.dat) is here:
Attachment:
Aquanox2 Aspect Ratio.jpg
Aquanox2 Aspect Ratio.jpg [ 81.37 KiB | Viewed 7063 times ]


But ist VERT- :thumbdown:

_________________
CZARMAN aka 彼得爸爸


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 13 Sep 2015, 00:17 
Offline
User avatar

Joined: 19 Jan 2014, 17:11
Posts: 14
Location: Poland
http://www.wsgf.org/forums/viewtopic.ph ... 08#p161008

Hopefully it works.


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 13 Sep 2015, 23:43 
Offline
User avatar

Joined: 07 Feb 2006, 03:46
Posts: 59
Anything special to get this to work with Steam, or is it incompatible? When I run it, the screen goes black and causes an error.


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 17 Sep 2015, 05:01 
Offline
User avatar

Joined: 19 Jan 2014, 17:11
Posts: 14
Location: Poland
I've rewritten the script using some of the tricks I've learnt while figuring out Aquanox 2 - it should be more flexible and easier to modify. Here's a new CheatEngine table:
https://raw.githubusercontent.com/SuiMachine/CheatEngine-Scripts/master/Aquanox_widescreen/Aqua.ct (right click and save as).

Not sure about the crashes - works fine for me (yes, Steam version), although I'm using windowed mode (with AHK script, to force a higher resolution).

EDIT: Seems to work fine in fullscreen mode as well. Check the new table. I'll try to look into it further on Friday.


Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 17 Sep 2015, 22:12 
Offline
Insiders
Insiders
User avatar

Joined: 11 Dec 2008, 23:51
Posts: 685
Location: Germany
I can confirm 21:9 on Steam Aspect Ratio and FOV - great JOB :twothumb: - the Hud is slightly streched thou.
Attachment:
Aqua 2015-09-17 23-00-51-79.jpg
Aqua 2015-09-17 23-00-51-79.jpg [ 398.09 KiB | Viewed 6921 times ]


Edit:
Now its Perfect:
newmem:
VALUE_FOV_Multiplier:
dd (float)2.1 //Keep the same as AspectRatio multiplier for Hor+ FOV

VALUE_ASPECTRATIO_Multiplier: //To get the value calculate: (width/heigh)/2.0
dd (float)2.0

Attachment:
2015-09-19_00001.jpg
2015-09-19_00001.jpg [ 623.35 KiB | Viewed 5848 times ]

_________________
CZARMAN aka 彼得爸爸


Last edited by czarman on 19 Sep 2015, 09:18, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: AquaNox
PostPosted: 19 Sep 2015, 01:27 
Offline
User avatar

Joined: 07 Feb 2006, 03:46
Posts: 59
I placed your Aqua.exe and Aqua.ct in the game directory, and ran the game, but it produces the following error. Is there something else I'm supposed to do?


Attachments:
aquaerror.jpg
aquaerror.jpg [ 10.41 KiB | Viewed 5930 times ]
Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 12 posts ]  Go to page 1, 2  Next

All times are UTC [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  




Powered by phpBB® Forum Software © phpBB Group