Widescreen hack and some other fixes aka AiO Patch

Discuss Drakan: Order of the Flame with fellow players and post any technical problems here where an 'unofficial' support team will try and help you. Gameplay help questions can go here too.
User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

Ok, thanks for including that Drakan.cfg change.
I'll update my Gold Pack installer within a week or 2 to take advantage of this new functionality, and send you the updated resources for it, as before.

Our update pack name: we've more or less already agreed on calling it the "Community Patch", for brevity's sake. Makes sense as far as I'm concerned, and conveys its function well enough.

As for version control, I wasn't even thinking of anything so involved. Which is why I suggested that simple method.
This should help keep things in order for a good while, at least.
We'll worry about some more "proper" version control if (when?) that method ever becomes inadequate.

And regarding the MP maps - I've decided that to maintain some semblance of backwards compatibility, I will be including improved versions of old maps under a new name, eg. {old name} Mk2.
That doesn't apply for currently totally broken maps (crash/hang on load); there's no point in keeping those around at all, unless they can be fixed. (we found at least 2 or 3 of those already, Auropolis being one of them)

BTW: in another significant milestone, yesterday marked the (beta) release of the first truly new Drakan MP map in what, 10+ years? :D
("Revival" doesn't count towards this, it's an old map that has simply never been released in its time, since Drakan MP was already more-or-less dead by then)

Ah, and we've also discovered a previously-unknown(?) bug (while testing the unusual idea of dragon melee duels): :!:
Freelooking while using the bite attack causes the camera to behave in unexpected ways - and also breaks the movement lock on the attacking dragon at the same time, allowing strafing movement.
Of course this has the effect of making the bite attack almost always miss, so it isn't really useful, just kinda glitchy.

Which brings me to another question - is there any way that the bite attack behavior can be changed, on the AiO patch level? :?:
Sadly, it seems that the editor only exposes the bite damage and animation; with no other parameters that can be modified.

In addition to fixing the bug I've mentioned above, it would be really neat if it were possible to allow in-air biting as well (ideally on a per-level basis) - although I have a hunch that would probably cause new glitches if trying to use the existing animation for it.

BTW: You've forgotten to change the "release date" in the AiO patch readme for like the 3rd time in a row :roll:

UCyborg
Dragon
Posts: 433
Joined: Sun Jul 07, 2013 7:24 pm
Location: Slovenia

Re: Widescreen hack and some other fixes aka AiO Patch

Post by UCyborg »

That doesn't apply for currently totally broken maps (crash/hang on load); there's no point in keeping those around at all, unless they can be fixed. (we found at least 2 or 3 of those already, Auropolis being one of them)

Weird. Does Auropolis crash/hang only when there are more players on the server? Seems to load fine on my end.

BTW: You've forgotten to change the "release date" in the AiO patch readme for like the 3rd time in a row :roll:

I noticed that about the previous release. This one is correct. The style of the ReadMe is a little mix between Surreal's and my own, eg. there are American-style dates, but - instead of + for bullet points.

But hey, it's a fun project of mine released without any explicit warranty and I'm just a human prone to making mistakes, forgetting things etc. Something about this in particular is that I want to write the change log right away and I may automatically think that I've already updated the date at the beginning of the ReadMe when I'm done.
"When a human being takes his life in depression, this is a natural death of spiritual causes. The modern barbarity of 'saving' the suicidal is based on a hair-raising misapprehension of the nature of existence." - Peter Wessel Zapffe

User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

UCyborg wrote: Weird. Does Auropolis crash/hang only when there are more players on the server? Seems to load fine on my end.
How are you testing it? Via "Host game"?

It outright fails to load on the clients (or at least it did in AiO build 133) when it's running on a dedicated server.
What happens is, the "Loading" progress bar shows and goes up to about 90% - and then never progresses any further, effectively hanging the client.

Using "Host game" behaves very differently from actually using a dedicated server.

For example, certain dragon powerups are misdeclared as "Rynn powerups" in some Air maps; this causes them to fail to work as intended on a dedicated server (can't pick them up at all), yet they work for the dragon(s) perfectly fine when you use "Host game".
Case in point, the "Dragon Haste" powerups in Dragon Sea and Wartok Canyons (air).

Some QoD maps are also broken in another way - when running on a dedicated server, the soul crystal never shows up in the game, despite being clearly present and visible when opened in the Level Editor.
Eg. in Flying Battleships and Ice Queen.

UCyborg
Dragon
Posts: 433
Joined: Sun Jul 07, 2013 7:24 pm
Location: Slovenia

Re: Widescreen hack and some other fixes aka AiO Patch

Post by UCyborg »

Yeah, I did load Auropolis on the dedicated server and it worked. I launched 6 new instances of Drakan.exe and joined the game from them. But, it's possible that it crashes when certain levels were loaded before it. I had couple of those crashes back when I tested the levels, Auropolis might have been among them. Though it was the server that crashed if I remember correctly. Buggy engine. We're seeing different issue here.

For example, certain dragon powerups are misdeclared as "Rynn powerups" in some Air maps; this causes them to fail to work as intended on a dedicated server (can't pick them up at all), yet they work for the dragon(s) perfectly fine when you use "Host game".
Case in point, the "Dragon Haste" powerups in Dragon Sea and Wartok Canyons (air).

Interesting find. This game really doesn't make any sense under the hood, the only technical difference between hosting dedicated server and the listen server (Host game) should be that the former doesn't run any client-side code, hence you have to join from a separate instance of Drakan.exe. Drakon Rider also mentioned in the past that the multiplayer may crash on certain maps when clients sends certain messages to the server in certain order.
"When a human being takes his life in depression, this is a natural death of spiritual causes. The modern barbarity of 'saving' the suicidal is based on a hair-raising misapprehension of the nature of existence." - Peter Wessel Zapffe

User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

Regarding the "MP maps loading stuck for clients" bug, here are some further observations:
  • Happened consistently with Auropolis for us (AiO build 133),
  • Also happened with at least 2 other ground maps, but sadly I haven't written the names down at the time,
  • Once it occurs, then restarting the client and trying to reconnect will consistently result in the bug happening again,
  • It seems to reliably occur for all of the clients: when it happens for any single person, then it's guaranteed to happen for everyone else as well,
  • Doesn't matter if connecting via LAN, or via the Internet,
  • Dedicated server doesn't crash; it keeps working normally instead, and there are no relevant errors/warnings shown in the output window.
EDIT: we've just re-tested Auropolis on my dedicated server with 4 people and the current AiO patch version, and it still fails to load on ALL the clients, same as before.

EDIT 2: Can you disable the "Mplayer.com" button on the skin select screen? Not only it doesn't work (obviously!), but clicking it crashes the game.

User avatar
mage150
Dragon
Posts: 173
Joined: Sun Aug 12, 2001 3:05 pm
Location: USA
Contact:

Re: Widescreen hack and some other fixes aka AiO Patch

Post by mage150 »

Getting lots of crashing on map load in multiplayer. It will get consistent until you restart the client.

I also cannot alt tab even with the ini changes when in borderless windowed. I need to hit f4
Moderator Of Arokh's Lair.

User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

UCyborg wrote: Tue Jun 12, 2018 9:21 am Guys, replace DQTest level you have on your machines with this one. The version in Gold Pack was older...
Which brings me to some more feature requests for future releases:
  1. If (when) you replace a level with a fixed version having the same name, please also include it in the standalone AiO patch. This is to prevent such situations where different methods of updating Drakan (AiO patch / Gold Pack / Community Patch) would result in an inconsistent set of level versions (and thus MP server connection errors).
  2. Could you modify the dedicated server launcher (DrakanServer.exe) to make the Drakan.exe process it (re)launches inherit whatever priority the launcher process is set to?
  3. Even better - please also make DrakanServer.exe launch itself with a priority of at least "Above Normal".
Re. 1, that should be self-explanatory.

Re. 2 & 3, this is to prevent lag spikes from occuring when running the dedicated server on very-low-end hardware, especially if there are other processes running in the background.
On my server, I manually set the priority to "High", and it helps a lot - it keeps running smoothly, even when the other processes cause the CPU usage to peg 100%.
Unfortunately, if the server crashes, when it gets restarted it reverts to "Normal" priority again.

Also, a bug report: in some circumstances, when the dedicated server crashes and subsequently gets auto-restarted, "inert" duplicates of some of the players from the time of the crash may appear on every level that the server loads.
These duplicates have their own entry in the player list, and exhibit various strange behaviors.
The only way to get rid of these imposters is to close DrakanServer.exe completely, and restart the server manually.

UCyborg
Dragon
Posts: 433
Joined: Sun Jul 07, 2013 7:24 pm
Location: Slovenia

Re: Widescreen hack and some other fixes aka AiO Patch

Post by UCyborg »

Can you disable the "Mplayer.com" button on the skin select screen? Not only it doesn't work (obviously!), but clicking it crashes the game.

Looks like I can.

Getting lots of crashing on map load in multiplayer. It will get consistent until you restart the client.

Sorry, that's a WONTFIX. Past experience shows that trying to fix these crashes and other multiplayer issues just wastes my time with nothing to show for it.

I also cannot alt tab even with the ini changes when in borderless windowed. I need to hit f4

Those settings don't have any relation to alt-tabbing. Did you import Disable_Drakan_Compat_Shims.reg registry file and went into Drakan.exe's properties->Compatibility tab and clicked OK there? Don't check anything permanently, maybe just so that Apply button becomes active.

_________________________________________

1. I'd rather put them in a separate ZIP since patches and maps are two different categories. I got other things on my mind ATM, but the only map I'd still look into is Dragon Sea since it's based on one of the stock singleplayer maps The islands. Hopefully updating visibility data in is just few clicks away like with SP version. Then ZIP them up.

Other than that, there's DQtest, which is basically just repacked since it spans two ZIPs originally and the version in Gold Packs was incomplete (actually more than that if you count older "service packs) and Wartok Canyons (Air) with normal drawing distance.

2. Done.

3. I added two new command line parameters you can pass to DrakanServer.exe to set priority for Drakan.exe

I don't know what to say about DrakanServer.exe and player left-overs problem. DrakanServer.exe is independent process from Drakan.exe and when the latter crashes, the system should clean up after it.

You can try the BAT/VBS file method instead, they're included with the new update:
  • Disabled mplayer.com button in Multiplayer menu since the service is long gone.
  • Dedicated server launcher now recognizes /abovenormal and /high parameters to set process priority of Drakan.exe (put them before anything else).
  • Drakan dedicated server now inherits priority of its launcher process (DrakanServer.exe) also if it's higher than normal (if applicable).
  • Moved SetErrorMode call to dinput.dll to allow dedicated server to be invoked by other means while keeping crash dialog disabled.
  • Added VBScript script for dedicated server invocation.
"When a human being takes his life in depression, this is a natural death of spiritual causes. The modern barbarity of 'saving' the suicidal is based on a hair-raising misapprehension of the nature of existence." - Peter Wessel Zapffe

User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

Cool, thanks for the fixes :)

Regarding the maps: OK, sure. I'll include them in the Community Patch (build 135.01rc at this time), and now that will be the prerequisite for connecting to multiplayer.

BTW, some more bug reports:

1. Jage's new map (Lava Land) started to show the symptoms of the dreaded "stuck on 99% loading" bug.
This was different from the previously encountered form of this bug, however: reloading the map on the dedicated server, while the client was stuck on the loading bar, caused it to load up after all!
Strangely, after making some unrelated changes to the map, the problem went away on its own.

Out of curiosity, I then tried the same trick with Auropolis, to see if it can be forced to load in that way - nope, no cigar. Always gets stuck on 99%, no matter what.

2. In the same map, there are lots of layer visibility problems - despite everything being perfectly fine in the editor, no errors in making the layers, and with the visibility having been recalculated.
These visibility errors are extremely position- and angle-specific; moving Rynn and/or the camera by as little as 1 pixel makes them appear and disappear.
When running around the level, they manifest as brief flashes/blips across the level geometry.

Examples:
Layer visibility 1.jpg
(156.96 KiB) Not downloaded yet
Layer visibility 2.jpg
(157.8 KiB) Not downloaded yet

UCyborg
Dragon
Posts: 433
Joined: Sun Jul 07, 2013 7:24 pm
Location: Slovenia

Re: Widescreen hack and some other fixes aka AiO Patch

Post by UCyborg »

1. I doubt anyone will actually bother trying to debug that mess. It probably won't help, but since some tasks are oflloaded to a second thread when you play multiplayer, maybe try and see if setting both client and server's affinity to a single CPU does anything. It will slow things down a bit though since the subsystems that the operating system provides for the game also utilize extra threads and it's mostly noticeable when you run the game via dgVodoo2.

Drakan: OOTF version of the Riot Engine is the worst, I've found postmortem for Drakan: TAG and it says Drakan: TAG development started before Drakan: OOTF was finished. It was a mess because of the bugged engine, which they managed to fix by the time Drakan: TAG was out and that version of the engine worked much better than Drakan: OOTF's. Initial port of Riot Engine to PS2 ran at 15 FPS. Among other things, collision detection was also improved.

Anyway, what I'm trying to say, a new engine is needed as a bunch of hacks slapped on top of the old one won't save it completely (except maybe if someone developed more sophisticated hacks, which is unlikely).

I'd put my bets in OpenDrakan, though it may take quite a while, especially if more people won't contribute to its development on a regular basis, which is a problem with Drakan being that old forgotten game.

2. Editor always ignores visibility data so you can leave the layer visibility calculation for the end and normally view map in the meantime. The only way to get rid of those bugs is selecting problematic layer in the editor (the one on which where Rynn stands on results in missing geometry) and marking the layer representing invisible geometry as visible. This should probably be done only when you're absolutely happy with current layer setup. This can be more difficult if layers are slapped together in certain way, the bugs always show when the game thinks Rynn is standing on the layer which doesn't have all neighboring layer marked as visible.

Since you asked me about hosting Community Patch, I think it'd be better if you or Arokh's Twin hosted it with a link on this website's Downloads page. I won't hang around much here anymore (if at all). i'm really burned out and just the word Drakan gives me a headache, so I'm good for a couple of months/years. BTW, I put those 3 maps in a ZIP, the link is in OP.
"When a human being takes his life in depression, this is a natural death of spiritual causes. The modern barbarity of 'saving' the suicidal is based on a hair-raising misapprehension of the nature of existence." - Peter Wessel Zapffe

User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Re: Widescreen hack and some other fixes aka AiO Patch

Post by Mechanist »

UCyborg wrote: Sun Jun 17, 2018 12:35 pm 1. I doubt anyone will actually bother trying to debug that mess. It probably won't help, but since some tasks are oflloaded to a second thread when you play multiplayer, maybe try and see if setting both client and server's affinity to a single CPU does anything.
Thanks, I'll try that when I have some time.

UCyborg wrote: Sun Jun 17, 2018 12:35 pmI won't hang around much here anymore (if at all). i'm really burned out and just the word Drakan gives me a headache, so I'm good for a couple of months/years.
So no playing MP with us, either?

User avatar
mage150
Dragon
Posts: 173
Joined: Sun Aug 12, 2001 3:05 pm
Location: USA
Contact:

Re: Widescreen hack and some other fixes aka AiO Patch

Post by mage150 »

Getting lots of crashing on map load in multiplayer. It will get consistent until you restart the client.
Sorry, that's a WONTFIX. Past experience shows that trying to fix these crashes and other multiplayer issues just wastes my time with nothing to show for it.
That's too bad. Multiplayer is what needs the most TLC and understandably no one really wants to work on it.

I also cannot alt tab even with the ini changes when in borderless windowed. I need to hit f4
Those settings don't have any relation to alt-tabbing. Did you import Disable_Drakan_Compat_Shims.reg registry file and went into Drakan.exe's properties->Compatibility tab and clicked OK there? Don't check anything permanently, maybe just so that Apply button becomes active.

I loaded the registry file but I did not recall going into the Drakan exe for compatibility. Did I overlook something in the readme about this part?






I am running into a huge issue where I cannot preview models in 3d in the level editor. I can have no problem entering the 3d view for the maps when editing, but 3D view has died. Reloading the level editor and restarting the computer does not produce a fix. This all happened after the editor crashed while previewing a 3d model that had an alpha map that I guess the engine did not like. It duplicated 3d view windows and crashed hard.

Reinstalling the editor files/engine.exe has not fixed the issue either. It is super strange.

Working in the larger 3d preview in the editor is so much nicer though. It makes an already hard life easier.

One other issue, the editor will get stuck when trying to adjust objects via instance properties, or it will subtract 1 unit from what you enter. Any idea on this being something that might be fixable? I have all of these bugs documented on my streams if you need to see the specific instances of this happening.
Moderator Of Arokh's Lair.

UCyborg
Dragon
Posts: 433
Joined: Sun Jul 07, 2013 7:24 pm
Location: Slovenia

Re: Widescreen hack and some other fixes aka AiO Patch

Post by UCyborg »

I loaded the registry file but I did not recall going into the Drakan exe for compatibility. Did I overlook something in the readme about this part?

Yes.

Reloading the level editor and restarting the computer does not produce a fix. This all happened after the editor crashed while previewing a 3d model that had an alpha map that I guess the engine did not like. It duplicated 3d view windows and crashed hard.

I'd try deleting registry key HKEY_CURRENT_USER\Software\Surreal with regedit.


Regarding other issues, as I've said earlier (and hinted at some points in the past), I've had it with this game. No more updates from me, at least not at this time. I might try something again in the future, but chances of anything coming off it are slim.

Does it even make sense to bother with the original engine since OpenDrakan is in development? It doesn't IMO. So if anyone has an issue with the game or the editor, the only thing I can suggest is either learn to love it or fix it yourself.
"When a human being takes his life in depression, this is a natural death of spiritual causes. The modern barbarity of 'saving' the suicidal is based on a hair-raising misapprehension of the nature of existence." - Peter Wessel Zapffe

User avatar
mage150
Dragon
Posts: 173
Joined: Sun Aug 12, 2001 3:05 pm
Location: USA
Contact:

Re: Widescreen hack and some other fixes aka AiO Patch

Post by mage150 »

UCyborg wrote: Tue Jun 19, 2018 4:13 pm
I loaded the registry file but I did not recall going into the Drakan exe for compatibility. Did I overlook something in the readme about this part?

Yes.

Reloading the level editor and restarting the computer does not produce a fix. This all happened after the editor crashed while previewing a 3d model that had an alpha map that I guess the engine did not like. It duplicated 3d view windows and crashed hard.

I'd try deleting registry key HKEY_CURRENT_USER\Software\Surreal with regedit.


Regarding other issues, as I've said earlier (and hinted at some points in the past), I've had it with this game. No more updates from me, at least not at this time. I might try something again in the future, but chances of anything coming off it are slim.

Does it even make sense to bother with the original engine since OpenDrakan is in development? It doesn't IMO. So if anyone has an issue with the game or the editor, the only thing I can suggest is either learn to love it or fix it yourself.
Sorry if I am reading you wrong but I appreciate everything you have done. I feel like the last line comes off a bit harsh, unless I am reading you wrong. Sorry if I or someone upset you. I know you have done this on your spare time and trust me if I could fix these things I would. It just never fell into my talent house. I appreciate your response and I am going to try those things to see if they help fix the problems.
Moderator Of Arokh's Lair.

User avatar
mage150
Dragon
Posts: 173
Joined: Sun Aug 12, 2001 3:05 pm
Location: USA
Contact:

Re: Widescreen hack and some other fixes aka AiO Patch

Post by mage150 »

UCyborg wrote: Tue Jun 19, 2018 4:13 pm
Does it even make sense to bother with the original engine since OpenDrakan is in development? It doesn't IMO. So if anyone has an issue with the game or the editor, the only thing I can suggest is either learn to love it or fix it yourself.
Oh and in regards to this part, I actually do not see the point to remake something that can get shut down. I understand the nature of the remakes, but I do not offer my resources to those because there are potential legal implications with those. If someone is working on a brand new game themed like drakan but under a different name I would probably move on. unfortunately within my skill set I can work on drakan maps in the riot level editor and I have a talent for map design.
Moderator Of Arokh's Lair.

Post Reply