Questions regarding the OOTF editor

Anything to do with Drakan level editing and modifications, post it here! Also this is the place to tell us about your new levels and get player feedback.
Post Reply
User avatar
Mechanist
Dragon
Posts: 303
Joined: Wed Mar 07, 2018 7:27 pm
Location: Poland

Questions regarding the OOTF editor

Post by Mechanist »

Recently I've been messing around with the OOTF editing tools.
It was certainly enlightening, in many ways - but at the same time, also raised a few questions of its own:

1. How long is the engine's "length unit", anyway?
A quick 1st order estimate puts it at around 3 meters. Or, in pagan units, roughly 10 feet - which I guess would be the more likely case?

2. What the heck is the "death crystal" supposed to be?
Going by the name, it sounds like the big daddy of the other elemental crystal items. But the editor also says it's a "ghoul weapon", whatever that means.
And it doesn't seem that the actual crystal even exists, only its effects. Weird. :shock:

3. Arokh has a whole bunch of canned lines defined in the editor - some of which I can't remember ever hearing him say. (although it's been almost a decade; could be just my bad memory)
In particular, I can't recall hearing the "can't land here" lines.
Also the "enemy killed" taunts, at least not when riding - do they only activate if Arokh scores a kill while Rynn isn't riding?

4. Arokh's ludicrous OP instakill flame breath does exactly... 1 measly point of damage. "Least damaging", all right... :shock: :shock: :shock:
What in hell... :?:
Sure enough, changing it to "0" effectively removes the direct damage's instagib property (by removing all of the direct damage...); the enemies simply catch fire (the "medium fire" effect) and take the usual fire damage-over-time (5 per second, IIRC).
Unfortunately, only integer values of attack damage are permitted, so there's no easy solution there :(

And last, but certainly not least:

5. Related to (4) above - the only way I can think of for nerfing the flame breath's power to a more sane value is to edit ALL of the other damage sources (weapons, effects, etc.) to deal 10x (or maybe rather 100x) the damage, and then raise the HP of ALL the actors by the same amount.
Would doing that cause any significant issues with the game's engine? Well, other than making the multiplayer inaccessible due to the changed resource files, obviously.

HeckFluff
Whelp
Posts: 24
Joined: Sat Oct 14, 2017 12:47 am
Location: England

Re: Questions regarding the OOTF editor

Post by HeckFluff »

edit ALL
Because the file formats have been determined at https://github.com/Zalasus/opendrakan/tree/master/doc, you could make a program to do this automatically.

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

Re: Questions regarding the OOTF editor

Post by Mechanist »

Well, that would certainly be one way to do it.

But given that there are only a couple tens of entries to change, I think I'd long be done changing them by hand before I could even get off the ground (pardon the pun) attempting to write a program for that.
Likewise, at work I don't waste time creating special fixtures to hold unique/one-off parts for machining, if the part in question can be simply bolted down to the machine table and clocked into alignment instead.

But I digress, so back to the subject at hand:
Just now, I've performed a quick experiment to check if it's even viable to do that damage tweak in the first place.
I even have some numbers to show for my effort - and they are outright insane!

I've raised the health of the weakest Wartoks (the ones you first encounter when entering Wartok Canyons) from the normal value of 20, to 2000 :!:.
Nothing else was modified for the purpose of this test - including Arokh's fire breath damage (still a "measly" 1 unit), as well as the "medium fire" DoT effect (now pretty much inconsequential in its magnitude).

And the results are in...
...insane, that is!
Arokh's fire breath whittles down these 2000HP in under five seconds :!:

That's over 400HP/second (@ ~100FPS), or over 4 units of damage per frame! :shock: :shock: :shock:
To call Arokh a "titan slayer" would be a masterpiece of understatement... that's easily the most powerful weapon a mortal can wield!
No wonder he only uses fireballs when helping Rynn on the ground; the fire breath would fry her in an instant...

In the end, that seems to confirm my initial theory: the fire breath indeed does only a puny 1 unit of damage... for each "puff of fire" in contact with the enemy's hitbox, per frame.

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

Re: Questions regarding the OOTF editor

Post by UCyborg »

In particular, I can't recall hearing the "can't land here" lines.
He says that when you're contolling Rynn and Arokh is unable to land due to bad terrain. I don't recall where it can happen though, but this line is definitely used.
"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: Questions regarding the OOTF editor

Post by Mechanist »

I presume that you mean when Rynn calls Arokh over?

Hmm, I've been messing around in Wartok Canyons a whole bunch; and several times I've accidentally slid down into the stream and got carried away by the current, calling Arokh over immediately after climbing out onto dry land (why yes, I was feeling a bit lazy... :)).
A couple of these times it looked like Arokh had difficulty picking a suitable landing spot due to all the steeply sloping terrain nearby, and what with Rynn also standing in the way - but he didn't use any of these lines.

Maybe it only happens when there is no possible landing spot within a particular radius? For example, calling from the middle of a large body of water?
I'll try testing that.

Speaking of Arokh's lines: Rynn sometimes says "Let's fly!" when mounting Arokh - I can't remember if that can also happen while in a no-flying area (low ceiling); but if it can, it'd be funny if Arokh immediately responded to that with his famous "I can't fly here!" :D

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

Re: Questions regarding the OOTF editor

Post by UCyborg »

I presume that you mean when Rynn calls Arokh over?
Yes, though it may not actually be mandatory. Arokh eventually gets tired of being in the air above Rynn by himself. If she stands still, that is.
Speaking of Arokh's lines: Rynn sometimes says "Let's fly!" when mounting Arokh - I can't remember if that can also happen while in a no-flying area (low ceiling); but if it can, it'd be funny if Arokh immediately responded to that with his famous "I can't fly here!" :D
Yup, can confirm it happens. It seems to depend only on some probability value whether Rynn will say it or not. "I can't fly here!" line would indeed fit there afterwards.
"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: Questions regarding the OOTF editor

Post by Mechanist »

Mechanist wrote: Maybe it only happens when there is no possible landing spot within a particular radius? For example, calling from the middle of a large body of water?
I'll try testing that.
Yep, some quick testing confirms that this is indeed one of the possible cases.
Arokh will still fly over to Rynn's location - but since there's literally nowhere to land nearby, he'll say one of these "can't land here" lines, and stay in the air more or less above her.

Mechanist wrote: 1. How long is the engine's "length unit", anyway?
A quick 1st order estimate puts it at around 3 meters. Or, in pagan units, roughly 10 feet - which I guess would be the more likely case?
I think that I finally got it figured out! (warning: may contain science :!:)

1 lu = a little over 2000 wu (but closer to 2048, rather than to 2000) :arrow: 1 lu = 2048 wu.
Gravity = 6000 wu / s^2 (from the level properties, as seen in the editor) :arrow: gravity = 2.930 lu / s^2.
Assuming an Earth-like gravity of ~9.81 m / s^2, then 1 lu = 9.81 / 2.930 = 3.348 m; a little too high for 1 lu to be equal to 3 m or 10 feet. (10 feet = 3.048 m, which is a difference of roughly 1.5% from exactly 3 m; insignificant in this case)

However, 11 feet = 3.353 m, which is very close to the above result; pretty much to within the rounding-off errors.

Conclusion: either Drakan's gravity is identical to that of Earth, in which case 1 lu = 11 feet (exactly); or we accept that Drakan has a slightly lower gravity, roughly 90% of Earth's, and then we can arbitrarily set 1 lu to be equal to 3 m - or alternatively 10 feet, for people who insist on using the pagan units.

Unfortunately, I think that's about the most firm conclusion possible - which isn't particularly firm to begin with.
It's theoretically possible to derive the value of the length unit in other ways, but that would require something of a known length (or alternatively, moving with a known velocity) to compare against - and to the best of my knowledge, no such thing exists in OOTF.

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

Re: Questions regarding the OOTF editor

Post by mage150 »

Mechanist wrote: Thu Apr 26, 2018 4:45 pm
Mechanist wrote: Maybe it only happens when there is no possible landing spot within a particular radius? For example, calling from the middle of a large body of water?
I'll try testing that.
Yep, some quick testing confirms that this is indeed one of the possible cases.
Arokh will still fly over to Rynn's location - but since there's literally nowhere to land nearby, he'll say one of these "can't land here" lines, and stay in the air more or less above her.

Mechanist wrote: 1. How long is the engine's "length unit", anyway?
A quick 1st order estimate puts it at around 3 meters. Or, in pagan units, roughly 10 feet - which I guess would be the more likely case?
I think that I finally got it figured out! (warning: may contain science :!:)

1 lu = a little over 2000 wu (but closer to 2048, rather than to 2000) :arrow: 1 lu = 2048 wu.
Gravity = 6000 wu / s^2 (from the level properties, as seen in the editor) :arrow: gravity = 2.930 lu / s^2.
Assuming an Earth-like gravity of ~9.81 m / s^2, then 1 lu = 9.81 / 2.930 = 3.348 m; a little too high for 1 lu to be equal to 3 m or 10 feet. (10 feet = 3.048 m, which is a difference of roughly 1.5% from exactly 3 m; insignificant in this case)

However, 11 feet = 3.353 m, which is very close to the above result; pretty much to within the rounding-off errors.

Conclusion: either Drakan's gravity is identical to that of Earth, in which case 1 lu = 11 feet (exactly); or we accept that Drakan has a slightly lower gravity, roughly 90% of Earth's, and then we can arbitrarily set 1 lu to be equal to 3 m - or alternatively 10 feet, for people who insist on using the pagan units.

Unfortunately, I think that's about the most firm conclusion possible - which isn't particularly firm to begin with.
It's theoretically possible to derive the value of the length unit in other ways, but that would require something of a known length (or alternatively, moving with a known velocity) to compare against - and to the best of my knowledge, no such thing exists in OOTF.
I believe we determined back in the day that the gravity is the same, however it is the lack of wind resistance that causes calculation issues between real world and Drakan.
Moderator Of Arokh's Lair.

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

Re: Questions regarding the OOTF editor

Post by Mechanist »

mage150 wrote: Tue May 22, 2018 10:39 pmI believe we determined back in the day that the gravity is the same, however it is the lack of wind resistance that causes calculation issues between real world and Drakan.
Hmm, true, but what does the wind resistance have to do with the distance scale?
The constant of gravitational acceleration links units of distance directly to units of time. The properties of the atmosphere are immaterial in that regard, since the acceleration due to gravity is specified explicitly in the level data.

Of course you could just call using the editor cheating, and instead measure and derive the values in-game from first principles - but the end result would be essentially the same, except that it would also introduce additional measurement errors and uncertainties.

Also, come on. This is a game about an ancient dragon who can shoot an unending stream of fireballs. And is apparently made of rubber - since he bounces like a pogo stick on impact with the geometry, taking no crash damage. It'd be silly to expect exacting realism in this context.

Then there's the inevitable compromise between realism and playability, which is another story entirely.

Post Reply