I have the key to One Eyed Willy

Allegiance discussion not belonging in another forum.
MagisterXF94
Posts: 1935
Joined: Fri Aug 23, 2013 9:46 am
Location: Trieste, Italy

Post by MagisterXF94 »

Keep at it wasp and Kage!
Thanks for your relentless efforts in chasing this bug down! :)
QUOTE ^cashto@Elem (all): yeah, i imagine if you're rusty, you could build op short for no reason, build a naked ref, then go two techpaths even though your mining is by all objective standards $#@!ed[/quote]
Image
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

It appears this goes back as far as the introduction of Dx9 into the main code. I now believe that the conversion to Dx9 is flawed and we are still plagued by it.

Build 197-198 appear to have brought the Dx9 version into play. I was unable to get either of those versions to build. I was able to get contrib 205 to build both the Dx9 version (AllegianceR.exe) and the non dx9 version (Allegiance.exe). Comparing these two builds side by side, I can see that the Dx9 version carries the bug. Later on, this was merged into a single build where it was carried forward.

Download this file and unzip it into your Microsoft Games folder (windows 7 x64) so that the path is C:\Program Files (x86)\Microsoft Games\AllegR5Test when unzipped. Also, merge the registry file so that you will have a useable alleg 1.1 registry setting and can then launch the game files. If you are on other than win7 x64, then, I feel sorry for you, AND...you'll have to tweak the registry and the install folder as necessary. Clearly, you know this stuff better than I.. :iluv:

Anyhoo, I ran these builds (205), side by side, and was able to see the bug. The Dx9 version has a wonky cursor behavior compared to the non Dx9 client. You can see it right off in the training mission.

UPDATE: Build 197 brought Dx9 into the code however, configuration changes were needed to get it to build. The build 205, I have provided above, demonstrate that the problem is in the Dx9 stuff that Doofus committed on 197. The Dx9 version brought in the vsync option which unfortunately, doesn't fix this problem.

Kage, Backtrak, does this help any? Can you offer any suggestions on how to go about fixing this?
Last edited by Wasp on Sun Apr 10, 2016 2:22 pm, edited 1 time in total.
KGJV
Posts: 1474
Joined: Tue Jul 01, 2003 7:00 am
Location: Transilvania

Post by KGJV »

but you said that the 'special R7 version with R4 engine' has also the issue (that one: https://github.com/FreeAllegiance/Alleg ... -R4-Engine )

so it's not the whole dx9 code that introduced the issue.

to sum up, if I read you correctly:

builds 196 and before: no issue
builds 197-204: unknow you can't build them
build 205 (normal): issue
build 205 (non dx9): no issue
https://github.com/FreeAllegiance/Alleg ... -R4-Engine : issue


so if the last 3 are correct, using diff we might be able to find what is causing the issue.

QUOTE I was able to get contrib 205 to build both the Dx9 version (AllegianceR.exe) and the non dx9 version (Allegiance.exe)[/quote]

how did you do that ? do you have a diff of the source of these two 205 versions ?
Image
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

KGJV wrote:QUOTE (KGJV @ Apr 10 2016, 10:52 AM) how did you do that ? do you have a diff of the source of these two 205 versions ?
I built 205 with VS2008 (maybe 2005?). In the options, I was given the choice to build either regular (retail or debug) and Dx9 (retail and debug). When I chose to build Dx9, it build the AllegianceR.exe and when choosing regular retail (FZRetail), it built the Allegiance.exe that I provided. When you launch the AllegianceR.exe you'll get the video options menu pop-up where you select resolution, vsync, textures and then can launch the game.

I could probably get 197 to build with the tweak added later that makes it build, it was just a VS configuration change, so, I think that 205 gives us the same results as 197 would if it were built.

You have correctly summed up my findings in your reply. I was puzzled too as to why the R7 using R4 engine exhibited this behavior however, that may be useful by comparing as you have suggested.

Was the DX9 coding done somewhere else?... I see no trace of it until it was introduced in 197 which brought some 13,000 changes.

I was reading this article and it sure did sound familiar to what's going on here. One thing that really caught my attention was their explanation of the cursor being out of sync with what is being displayed. Sounds very familiar...
Last edited by Wasp on Sun Apr 10, 2016 7:11 pm, edited 1 time in total.
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

I've been reading so much of this DirectX stuff that it is overwhelming to comprehend without the basic programming skills.

In other words, I can lead you to the bug, but I'm at a loss as to fix it. lil help? :iluv:
KGJV
Posts: 1474
Joined: Tue Jul 01, 2003 7:00 am
Location: Transilvania

Post by KGJV »

What puzzles me is the 'special R7 version with R4 engine' version. That thing has the issue but no DX9 code. So the cultrip isn't in DirectX. Or we missed something.

I tried to diff r205 and 'special R7 version with R4 engine' to there is a lot of changes in it. I didn't notice anything relevant yet.
Image
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

I know, it's got me totally baffled. If you launch the AllegianceR.exe vs the Allegiance.exe that I provided, you can see for yourself, there is a difference.


The cursor is notably faster as though it is being accelerated. The JS appears to come out of the deadzone with way too much speed and is up on the quadratic ramp far too soon. Fast controller input feels as though there is acceleration being applied... maybe as if the input is being polled too often?

This isn't just my imagination, it's definitely there and confirmed by others (some of whom have bailed because of this).

Thanks again for all your attention.
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

Since the problem exists in the Dx9 code that was added in and changing engines, as with the "R7 using R4 engine", did not fix things...

Would it be possible to bypass the Dx9 integration and move Dx9 and Dx7 versions forward from build 196 and keep them separate?

Another observation: Have you noticed the difference in input / display lag that the Dx9 brought. Vsync with Allegiance is unplayable now.
Last edited by Wasp on Wed Apr 13, 2016 1:40 pm, edited 1 time in total.
KGJV
Posts: 1474
Joined: Tue Jul 01, 2003 7:00 am
Location: Transilvania

Post by KGJV »

Wasp wrote:QUOTE (Wasp @ Apr 13 2016, 03:29 PM) Since the problem exists in the Dx9 code that was added in and changing engines, as with the "R7 using R4 engine", did not fix things...

Would it be possible to bypass the Dx9 integration and move Dx9 and Dx7 versions forward from build 196 and keep them separate?
Everything is possible but that would require a lot of 'backporting'.
Wasp wrote:QUOTE (Wasp @ Apr 13 2016, 03:29 PM) Another observation: Have you noticed the difference in input / display lag that the Dx9 brought. Vsync with Allegiance is unplayable now.
I haven't done any tests, I'm just looking at code...
Image
Wasp
Posts: 1084
Joined: Sun Aug 17, 2003 7:00 am

Post by Wasp »

KGJV wrote:QUOTE (KGJV @ Apr 13 2016, 01:33 PM) Everything is possible...
I'd hire you in a minute... :thumbsup:

Thanks again
Post Reply