Drakan patch - if your game crashes on GeForce

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
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Drakan patch - if your game crashes on GeForce

Post by Shelim »

Hello

My friend Kronikarz and I worked with disassembler and hex editor with intention to find out why Drakan keeps crash on GeForce 6, GeForce 7, GeForce 8 and propably GeForce 9 (?)

Our attemption proved successful. We manage to update Drakan core file so it crashes no longer. We are currently testing solution on both problematic cards as well as some older hardware.

First version of our patch will be released probably tomorrow evening, standard GMT time. It will include update program, however it will require to have all official and _none_ unofficial patched applied.

If you don't trust me, you can scan the patch with any antivirus software available on internet, hovewer I have no reason in making fake patch to so unpopular game (by the way, I regreat that it is so unpopular).

Hope to find our work useful and see you tomorrow.

~Shelim

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

I cannot edit my message, so I'm going to make it clear:

<b>This patch solve the problem with initial cut scene crashing!</b>

AXE
Dragon
Posts: 303
Joined: Wed Sep 19, 2001 9:31 am
Location: Canada
Contact:

Post by AXE »

Most interesting: and am glad to hear that someone is still working on this type of thing.

Fortunately for me I dont have a Gforce card, or I would help test this!

I hope to hear more feedback on this, and then may incorporate it into the gold pack for download.

Outlaw Wyvern
Dragon
Posts: 402
Joined: Fri Oct 10, 2003 4:20 pm
Location: USA
Contact:

Post by Outlaw Wyvern »

That's excellent, Shelim.
Thanks to you and Kronikarz for hard work.

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

A bit earlier than we anticipate, but - unfortunately - we had no chance to test multilayer capability of new patch. If you could provide feedback - especially how it work between version 445 and 445+, we'll be very glad.

If we could get access to the machine on which occurs famous "Alwarren bug", we'll try to fix it too (on ours computers it does not happen)

Okay, here is download link:
http://dl.getdropbox.com/u/82366/drakan ... 445%2B.exe

Please provide any feedback in this topic (I've subscribed it and I'll receive notification on any reply)

~Shelim

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

* multi player, not multilayer of course. Stupid dictionary doesn't know that word and made auto correction ;-)

User avatar
Arokhs Twin
Site Admin
Posts: 1295
Joined: Wed Jul 18, 2001 9:36 pm
Location: United Kingdom
Contact:

Post by Arokhs Twin »

Excellent work, glad somebody has finally fixed this problem. If the patch causes multiplayer issues then it's not really a problem as the patch only really applies to single player. The regular 445 patch could be used for multiplayer and the new patch for single player. This should be OK for most people.

Drakon Rider
Dragon
Posts: 87
Joined: Sun Jul 29, 2001 2:35 am
Location: Russia
Contact:

Post by Drakon Rider »

there are also some bugs in multiplayer part of engine that causes dedicated server to crash when running big enough levels with a number of active players... the crash occurs in random time after level running and possibly depends on a combination of messages from network players...

the level with this bug frequently occur is Dragons Quest (current version DQtest 8.0sp4a)... unfortunately it is now too few players online to test it with about 4..6 players running around.

i found it tries to modify Dragon.rfl file - can you provide a list of patch bytes (better with a description what it change) so i can combine it with a SP1 for Dragon.rfl ?

Eris
Dragon
Posts: 161
Joined: Mon Jun 25, 2007 3:22 pm
Location: Armenia
Contact:

Post by Eris »

Woow! Cool! That really works. Thanks a lot.
BTW, I just played Alwarren from developer mode and game didn't crash at the end of the level. I picked up Bellhammer and lightning weapon and was using iamgoddess cheat but don't think that should make many difference.

!BUT! When I tried to connect to Ati's server, I've got the expected invalid map error, which says that my level doesn't match the one on the server. Then I successfully cracked dragon.rfl with DR's patch and again wasn't able to connect to SPB2, got the same error.
So, if you're planning to play multi someday, I would suggest you to make a backup copy of dragon.rfl before cracking the game.
Or, Shelim, maybe you could include the restoring feature in your crack, so we could use crack, start a new game, make a save and then restore it again back to play some multi.
Actually I don't even know what to do now. I'll probably install Drakan again somewhere in another directory and get dragon.rfl from there... Though on the other hand, in any case I can't play multi due to my inet, it's got a great down speed, but too slow up for Drakan, otherwise I would spend all my evenings in the game waiting for players... So it's very cool I cracked my game and the alwarren bug is now fixed. I'll finally be able to finish the game again after this couple of years.

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

Okay, here is downgrade from 445+ to 445 for playing in multi player:
http://dl.getdropbox.com/u/82366/drakan ... 445%2B.exe

I was unsure if Drakan checks CRC of Dragon.rfl. Unfortunately it does.

-=List of raw assembly changes=-

We found out that Frame capture feature of 2D GUI used by Drakan is no longer support on nVidia GeForce 6 and newer. You can see it by comparing the menu on both types of cards: on working cards you'll see previous menu a bit shaded when you enter next one. On trouble cards background is completely black.

Creators of game should foresee that function preparing (propably) virtual frame may fall and return null pointer (0x00000000). On working cards it succeed always, however. Creators checked returned pointer every time EXCEPT one place: selection of difficulty level.

This pointer points probably on object of class which has at least one abstract parent. This class were used on two function calls during leaving of that troubling menu. We were unable to find out what this two function eventually do through, but they seems to be non-essential for game process.

Our patch adds two assembler commands that skips problematic calls. As adding new command to disassembly is but impossible, we had to change existing ones. We simply "jump over" that two function calls with no checking if they will work or not. This is why we doesn't recommend installing patch on working machines.

Because there are two problematic places in code (one during entering new game and one during escaping to main menu), we had to add two jumps in different places.

List of changed bytes:
0x0013FC0D: 6A to EB
0x0013FC0E: 01 to 1D

0x0013FCDC: 6A to EB
0x0013FCDD: 01 to 24

~Shelim

Eris
Dragon
Posts: 161
Joined: Mon Jun 25, 2007 3:22 pm
Location: Armenia
Contact:

Post by Eris »

Thx, that helped :)

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

Post by mage150 »

Wow if you guys could work on like making it so we can have more functionality with the engine we could make a whole new game. Forget fixing problems could we work on customizing the engine?

We could revive this community and start a new.

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

To tell the truth there are two main problems with that:

First, there are problems with law. If we start making addon to Drakan, we can end with some legal action taken by Surreal against us. I saw already few such project (related to other games) which ended like this.

Second, both Kronikarz and I are currently busy with other projects. Kronikarz is writing his own 3D engine in C++, while I am going to write small 3D multiplayer demo-game in my recent purchase - commercial C4 engine - to test it's features.

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

Post by mage150 »

I wish the net code for Drakan could get fixed and the few problems we have with level editing, I miss being able to map mod

User avatar
Shelim
Dragon
Posts: 188
Joined: Sun Aug 03, 2008 10:55 pm
Location: Poland
Contact:

Post by Shelim »

Net code, huh?
This is most difficult thing to patch, because we had to not only understand how Drakan works but also how it's net protocols works. And this is challenge for at least few weeks, which we don't have to spare.

But there is chance that we will be able to help with editor. If it won't be too time consuming, of course. What exactly do you want?

Post Reply