Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Animation speed (original game issue, really) #190

Open
Digital-Monk opened this issue Oct 12, 2020 · 10 comments
Open

Animation speed (original game issue, really) #190

Digital-Monk opened this issue Oct 12, 2020 · 10 comments

Comments

@Digital-Monk
Copy link

This is a VERY low priority request.

I've always found Arena's animations (NPC idling, flames, water fountains, etc) to have a Keystone Cop feel to them -- just too fast, like everybody is coked out of their mind.

I was fiddling about today with Misc / Time Scale (thank you for that feature) and noticed that 0.75 feels much more natural to me for NPC idling animations, flames, fountains, and that sort of thing. 0.50 felt more natural when watching people walk around town, but I was in a city in Black Marsh, so I expected more New Orleans strolling than New York hubbub. 0.50 also started to feel a little annoying because it was impacting my movement -- I didn't really notice at 0.75.

I guess I was wondering how hard it would be to allow tuning of these non-critical things separate from the game's overall timescale (or in addition to it). So, Time Scale would affect combat speed and everything that "mattered", but there could be a separate (or additional) scale factor for animations and NPC movement (things that don't really matter, but do affect immersion).

If it's a headache, I'm perfectly happy to run somewhere in the 0.50 - 0.75 range on global Time Scale. I'm not really a twitch player anyway.

And if you haven't tried slowing things down, it's worth it just for a leisurely stroll around town and some shopping ;)

@afritz1
Copy link
Owner

afritz1 commented Oct 13, 2020

I was thinking of maybe removing the TimeScale feature at some point because it felt like OpenTESArena shouldn't have any kind of dependency/relation to DOSBox; it should be its own thing. Tweaking enemy speed, citizen speed, and whatnot could probably be in a text file someday.

@hfc2x
Copy link

hfc2x commented May 6, 2021

Hey, I just wanted to chime-in, mostly because the gameplay speed was an intentional "feature" in the original game.

Arena was so unoptimized demanding to run for CPUs at the time, that Bethesda intentionally made attack animations and also movement to go at very high speeds, so the game would play at a sane pace due to the permanent slowdown.

If you play the game in a more modern computer with a better CPU than intended, or through DOSBox with the max cycles setting, the game will play at absurdly silly speeds as a consequence. For this reason, people nowadays tend to believe that Arena was, in fact, intended to be stupidly fast and demand really high reflexes from the player, when it was never the intention.

So really, if there is to be a user-adjustable setting that controls certain instances of game speed, the speed comparable to that which you get on DOSBox with max cycles should instead be called "turbo speed" or something of the sort, rather than being "1.00 speed", since it's an unintended consequence of the original's design. The speed that's considered the "target", is the one you get by forcing DOSBox to run the game at a locked maximum of between 20.000 and 30.000 cycles inclusive.

I apologize for using DOSBox as a metric here, since you explicitly stated you don't want OpenTESArena to have any relation to it, but I thought it was the more "universal" metric to use for a comparison.

@Thunderforge
Copy link
Collaborator

For completeness: I'll mention that Daggerfall did have a speed slider, but it also affected gameplay; the player gained experience more slowly at lower speeds (requiring slower reflexes) than at higher speeds (requiring faster reflexes).

I agree that a speed slider would be helpful to include in OpenTESArena, and I'm ambivalent to whether or not it behaves as Daggerfall did or if it has no mechanical impact on gameplay.

@afritz1
Copy link
Owner

afritz1 commented May 6, 2021

Both good points.

Entity animations would probably have an extra multiplier paired with the delta time to tweak these kinds of things on a case by case basis.

@Allofich
Copy link
Collaborator

Allofich commented Apr 24, 2022

I've been curious about how Arena would run on a real system of the time for a while now, as I noticed while playing it through DOSBox-X that in addition to the animation speed of NPCs, the walking speed of NPCs was also fast if you played with a high cycles count. Also the speed of the flashing red outline on locations selected on the world map seemed too fast in DOSBox-X.

The strategy guide book "Codex Scientia" says the system requirements are a 386/25 Mhz minimum with 386/33 Mhz recommended, and it also has a note saying Intel 486/33+ "really cooks!".

Although I don't have real hardware to test with, I just tested through 86Box to hopefully more accurate results than DOSBox-X (which itself aims to be more accurate than regular DOSBox). Running the game with an emulated 386/33 Mhz, the framerate runs at a crawl by modern standards, but I'm sure it would have been more acceptable at the time. At this lower framerate, though, the movement speed of NPCs is more realistic. Animations of non-moving NPCs are also of course more normal looking. As for the flashing red outline, it's also slower than in DOSBox-X (even if you approximating a 386/33 Mhz with cycles there).

Upping the speed to 486/33 Mhz makes the framerate nicer, but the NPC animations and movement are already starting to look a bit fast.

The slowest time scale (0.50) in OpenTESArena looks similar to the 486/33 speed in 86Box.

@afritz1
Copy link
Owner

afritz1 commented Apr 24, 2022

Good to know. I did some informal testing of camera rotation speed in OpenTESArena. At 1.0 time scale, it's about 7 1/2 full spins in 10 seconds, and at 0.5 time scale about 3 1/2 full spins. When implementing it, I tried to match it to Arena in DOSBox, so hopefully it's not too far off from what the original game was like.

@Allofich
Copy link
Collaborator

Allofich commented Apr 25, 2022

I don't know how turn speed relates to animation speed, etc. but in 86Box with an emulated 486/33 I get about 2 1/2 full spins in 10 seconds. With an emulated 386/33 I get about 1 1/4 full spins.

Something to consider is ease/comfort of use vs. game difficulty. I would think faster camera rotation speed, like OpenTESArena has now, feels more modern and comfortable to use, but it would also make the game easier than the original, such as when you're attacked from the side or back.

Of course, when it comes to gameplay, difficulty, etc. there are also other considerations, like whether or not you want better AI pathfinding. The enemies in the original game seem to pretty much just walk in a straight line toward you and easily get caught on things like doorways so if they didn't do that anymore because of smarter pathfinding the game would probably be harder.

I just wanted to mention that giving the player faster turning will probably make the game easier than the original, so that's something to keep in mind.

@afritz1
Copy link
Owner

afritz1 commented Apr 25, 2022

Yup, I just mentioned camera rotation since it's also affected by overall game speed in DOSBox. Only 2 1/2 spins seems very, very slow, maybe enough for the RPG people of the time though. If I remember correctly, Terminator: Rampage runs around a fixed 12 fps or so and therefore appears very choppy but doesn't feel like slow motion. Actually I could be wrong since I've only played it in DOSBox briefly and it was probably at max cycles.

@Kirtai
Copy link

Kirtai commented Oct 1, 2022

Shouldn't the camera speed be adjustable as an improvement?

@afritz1
Copy link
Owner

afritz1 commented Oct 5, 2022

Horizontal and vertical camera sensitivity are in the options. Don't remember if they affect classic mode though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants