ZeroK-RTS / Zero-K

Open source RTS game running on the Spring/Recoil engine
https://zero-k.info
GNU General Public License v2.0
675 stars 204 forks source link

COFC is unsably broken #2184

Open GoogleFrog opened 7 years ago

GoogleFrog commented 7 years ago

Here are some issues with COFC:

It's looking better than last time I tried it. The tilt zoom is significantly less jerky and sickening (not-at-all is a level of significantly less).

Licho1 commented 7 years ago

Its mostly config stuff...

CrazyEddieTK commented 7 years ago

In particular, the following are all settable by configurations. The defaults could be changed if they are undesirable for new users, although I'd argue that someone switching from the default camera to COFC should expect it to work differently.

I would say that screen rotation is an expected and desired feature of COFC and should be enabled by default.

The lag when rotating is bad, although it too is settable via a configuration ("smoothness"). The problem is that smoothness also affects zooming. If smoothness is low, then zooming is stuttery. But if smoothness is high, then rotation has a weird lagginess to it. For my own use I've had to find a happy medium. It think it would be not too hard to decouple the two types of smoothness, so that zooming can be smooth but rotation can be snappy.

I consider zooming (and rotating, and scrolling) underwater a feature, and the fact sometimes camera motion takes you out of the water a bug. I would prefer to see underwater camera navigation fixed and made usable. It could certainly be an option, but I'm not sure why we'd want it disabled by default.

"If you disable zoom out to center and zoom out further when at maximum zoom the camera is scrolled such that the map moves down on my screen" - I see this as well, and it's definitely a bug.

Anarchid commented 7 years ago

although I'd argue that someone switching from the default camera to COFC should expect it to work differently.

Reinterpret this issue as a list of things that are blocking COFC from being default. If some parts are settings with bad defaults, then the issue is with the values of those defaults.

It is possible to rotate the screen by holding the middle mouse button as well as Ctrl or Alt.

This is a feature and it makes COFC much better than TA cam if i understand this correctly. Generally i want to rotate camera about a point to get a better view of some situation. I don't want to tilt it up and down with buttons. That's horrible, slow, and impractical. I am not aware of any other ZK function bound to ctrl+mmb, so i don't see any conflicts, either.

GoogleFrog commented 7 years ago

The benefit of a rotatable camera is outweighed by the costs. Ctrl, Alt and MMB-click are all individually inputs used elsewhere in ZK. Accidentally rotating the camera is disorienting and playing with a off-angle camera can be frustrating. Players do not necessarily know how to rotate the camera after they have done it. The camera cannot be reset to orthogonal (as far as I know) and even if it could be the hotkey for doing so would be obscure. As far as I can tell the benefits of rotation are:

For these groups I think a setting is sufficient.

TLDR: New players don't need rotation, it is just a trap for them.

Anarchid commented 7 years ago

For these groups I think a setting is sufficient.

Conceded.

CrazyEddieTK commented 7 years ago

There is a reset-to-orthogonal hotkey, but it is definitely obscure (although it is shown in the COFC menu): ctrl-alt-MMB.

If COFC is intended to be the new default camera, then I would agree with leaving rotation off by default. I'm not certain that COFC in any configuration makes a better default camera than the current default camera, though.

Unless we're flat-out disabling / hiding the engine cameras, COFC should probably be renamed to "Advanced Camera" with the implication that if you select it you should be prepared to know what you're doing. The default rotation could still be off, though, since "you know what you're doing" also means "you know to go enable it if you want it, which you probably do if you're using this camera in the first place".

GoogleFrog commented 7 years ago

Some configuration of tiltzoom is probably better than the engine camera straight zoom. However, I don't know if COFC is currently capable of a sufficiently polished implementation of tilt zoom. COFC would allow the fixing of these issues:

That said, I mostly made this ticket because people occasionally tout COFC as a solution to some related issues. Some say "make COFC default". I think the current engine camera is basically fine and very stable so I personally don't want to work on COFC. However, if enough developers want a default COFC then here is a minimum list of things that need to be done. I know that much of it is config stuff, it is still work that needs doing.

CrazyEddieTK commented 7 years ago

"Tilting with Ctrl has some sort of axis of rotation lag which makes it sickening."

Fixed in #2211

GoogleFrog commented 7 years ago

I don't think it is fixed. For example I'm able to move the camera across the map purely by holding Ctrl and scrolling the mouse wheel. If you scroll at different speeds you are able to slowly inch across the map.

GoogleFrog commented 7 years ago

Anarchid is correct in saying that this ticket is about the requirements on COFC if it is to become the default.

CrazyEddieTK commented 7 years ago

That seems like a different issue, or at least different from what I understood you were reporting at first. I'll dig into that one as well (when I'm able).