I think that’s a viable option for capital ships, but not relevant for corvette and smaller. Or maybe it could be, I just want to make sure the difference between the capital ships and regular ships is consistent.
Let’s rephrase the question then: how do you think the corvette should be operated through the mouse ?
Hmm maybe intensity of the turn depending on cursor position. But the question is, how will the weapons targeting system work?
The potential problem I see with the proposed schema (if I understood it correctly) is the difficulty to aim accurately. If the ship moves when the cursor is even slightly off center, it’s hard to fly straight, so you’d need a “deadzone” around the center where the ship does not turn. However, then you have to make relatively large movement with the mouse (around the deadzone) to make adjustments.
That being said, I don’t thing the current control schema would work so well either (as was stated). Perhaps a hybrid schema, where within the “deadzone” the ship would fly like the current ships (following the cursor) and give more accurate aiming. Then outside of the “deadzone” you’d have the virtual joystick schema. By changing the “deadzone” size you could even switch between the two different schema (set size to 0 or inf).
It’s probably not relevant yet, but would joystick etc. support require a different control schema anyway or would the current one work? Or is it just about adding some interface for different controllers?
My 2 cents similar to MrAsura’s proposal:
Why not have an area in the middle of the screen where the current target aim is show with a crosshair, this crosshair is not fixed to the middle of the screen but moves inside the circle, the ship alway tries to recenter the crosshair by adjusting its direction.
This way a slow ship would be easy to control and aim with (in theory).
Continuing the discussion from Quick Progress Reports - Engineering:
In flight simulators, I always treat the mouse like a joystick, giving me pitch and roll control. The farther the mouse is from a center point, the greater the turn rate requested. So I’m supporting the second scheme that you’re describing. I consider it a no-brainer.
There’s no center dead zone needed. Tune the response curve on each axis as needed. Low sensitivity in the center for fine aiming, and progressively greater sensitivity away from the center until you reach the limit of command authority at some wrist-comfortable point.
For ships that can’t maneuver in real time (i.e. capitals), have a navigation mode that uses the same scheme but that orients a ghost, wireframe or even a simple box to indicate the ship. Orient that ghost, then exit navigation. The ship will try to match the commanded orientation. You already do this sort of thing with the mouse wheel when setting a target speed for the ship. The ship’s speed doesn’t change in real time, so you set a goal and let the ship work on achieving it.
I’m a fan of the v-joy, but a small dead zone is more than acceptable. As an alleg player, I can tell you that the v-joy can definately handle fast ships as well as slow ones.
looks better then SC and ED
Oh, and I would assume that the game would allow players to decide if they want an absolute (orient exactly that way) or relative (orient a bit more in that direction) system. That is, the current system is absolute, while a joystick is traditionally relative. On top of that, leave players the option to control the responsiveness of each as well as the ability to easily select one or the other mode. If I’m flying, I may want relative controls, while if I’m in the process of lining up a shot I may want absolute. Some players may have the ability to switch between the two during an engagement. Holding down or tapping a modal key could easily provide that.
From there, players can configure things as they prefer.
I agree with @JB47394: mouse position determining your ship movement is really the best option. Could even be considered for the interceptors or other “agile” ships to keep the same ergonomy.
I would also suggest vJoy. And let the users set the sensitivity curves. Just like a stick.
Addressing this issue now is EXACTLY the right time to do it.
This is exactly how I’d want all my non-capitals controlled: have a pointer moved with the mouse, and the ship always does its best to point toward that direction.
It would allow for both fast and precise control, and would still work for a slower corvette. For the corvette in particular, a on/off toggle for mouse control could be useful, allowing to do other things like moving the camera, giving orders to the turret or target non-facing enemies…
If you go for two different (or more) different control schemes, please try to have it selectable by ship. Some people will want to control their interceptor like a corvette. Others will want to control their corvette like an interceptor.
Personally, I would certainly hate having to control any ship with the system JB describes (the few experiences I had with it were universally bad), but I’d want it an option for him and other who prefer it.
How do you command a reversal of the ship’s direction?
And I can’t stand the absolute pointing system because I’m repeatedly dragging my mouse for large movements (inspiring my question above). That’s why I’d also want it user-selectable. People have very specific preferences in this area, and no one system will please everyone. Unless we’re talking VR or AR systems, which are a very different animal. There may be a one-size fits all approach in that space.
Edit: Hmmm. What if there was a mode where the ship tried to point where the mouse pointed - until you point at a strip around the edge of the screen. Then you get a constant rate turn for as long as you leave it there.
Playing with that a little more, have a variable rate turn depending on how far into the strip you go. Tune the strip width as needed or preferred. I think the strip would have to be visually indicated in some subtle way. The alternative is to let each player train to get a feel for where that strip is. If not a strip, then there’s a center circle that is the tracking area, and leaving that circular area throws the ship into a constant rate turn.
I mention this because it answers the question of how a ship swaps ends (or does any other hard turns) without having to keep dragging the mouse around. If my field of view is 90 degrees and I want to do a 180, I have to drag my mouse over at least four times because each mouse drag only gets me a 45 degree turn.
More Editing: Base the turn rate in the strip on the speed at which the mouse is moving. So if I’m moving my mouse slowly towards the edge of the screen, I get a slow continuation of that motion when my mouse enters the strip (and runs out of screen real estate). If I slap my mouse over to the edge of the screen, then I want the maximum available turn rate. Once I see what I’m interested in come into view, I just point at it and I’ve snapped around onto a new target. Alternately, once I see whatever I’m trying to thrust relative to.
Gah. More. This is really just the system used in top-down games where the screen can be panned around a large area by bumping the mouse into the edge of the screen. Perhaps tweaked a bit for the more frenetic environment of space combat.
That is left to the system that controls speed. Which he didn’t include. It could be the one we have currently with W/S and set speed and reverse key or something similar.
But yeah. Maybe you want to point out that in that case you have to turn your direction pointer backwards too … hmm.
How can you reach the edge if your camera centre is the absolute heading point?
Also I think this has been done …, somewhere in another game. Can someone help pull up more examples? This isn’t the first time this problem has been solved.
I’m confused. Maybe I don’t play enough games.
There’s going to be a delay between the mouse and the turning radius of each ship. It’s not going to be like an fps, where I can snap my view immediately to my target.
What’s the difference between this, and the standard vjoy with the mouse axis inverted so that up is up and left and right are yaw?
If you keep the mouse cursor on the target, the ship will naturally turn toward the target. If the user has control of the sensitivity curves, they can customize the feel to what they like.
How is this different than the current solution?
I would also envision ALL strafe (fwd, bkwd, left, right, up, dn) to be a separate issue than panning. With forward strafe (thrust) much stronger than the others.
The pointer reaches the edge, not the camera center.
You’d move the pointer to a location on the screen and the ship would react to point at it. If you don’t move the mouse, it stays on that location in the world view, effectively coming to camera center as the ship rotates.
I was actually thinking that this was how the prototype works now, but it doesn’t. I just hopped in and was reminded that if I move X pixels with the mouse, I get f(X) degrees of rotation. My problem with that is that hard maneuvers require me to pick up my mouse and plant it again for another sweep, which I really don’t like.
I prefer what people are calling a virtual joystick because I can keep a hard turn going and I can also fine tune my heading easily. But I’d be interested in trying the strip variation just to see how it works.
Note that it would be critical to have a pointer on the screen. The pointer is used to indicate where I want to point, in an absolute sense. “I want to point at that nebula.” So I move the mouse onto the nebula and then I can take my hand off the mouse. The pointer will stay on the nebula as the ship swings around to face it.
This matches the EyeX eye tracking stuff. If you want to turn to something, you just look at it. I believe that if you look at the edge of the screen, the camera will turn in that direction until you see whatever you were after. You look at the whatever when it comes into view and the EyeX stuff centers the camera on it.
The prototype and a virtual joystick don’t use a mouse cursor. There’s nothing that the player can use to indicate a target direction or object. That’s why the prototype uses the keyboard to target the object under the reticle (and a virtual joystick would do so as well). What I’m talking about would involve a mouse pointer. Or a roving reticle. Whatever you want to call it.
It would also be handy for firing turreted weapons. Hold a key to say that you’re not maneuvering towards the pointer, but are firing towards the pointer. But the pointer is always up and the player is always aware of its location.
the best i think transition from interceptor style is if you move your mouse faster than ship can rotate then you move your camera and ship tries to reach vector you are pointing as fast as he can. like a slow turrets in WOWships. where in case of spaceship whole ship is moving slow while camera is fast.
Oh so you have the camera fixed to the current heading?
I was thinking the mouse is controlling the camera and the future direction is in the centre.
But it’s an interesting idea. Kind of having two system combined.
This is getting quite confusing.
What your system lacks is the usability for capital ships. For capitals you don’t want view locked forward and I guess an extension or another systems would be needed for those. Or capital captains have to toggle between camera control and ship control … maybe that’s not even that bad. From games having that toggle/hold, I got the experience that it was quite cumber sum.
The biggest plus for the Warthunders system is that you can, at the same time, look ahead/at, to where you are turning without using something like mouslook.
But I’m mixing things up now. For me the camera is equally important as input is and in so many games input and camera are very much bonded together, the same, that it doesn’t allow (or isn’t considered rather) for a lot of options for the camera once a certain input model is chosen.
I would use zoom levels: pixel speed is kept constant for moving the reticle, but powerful zoom levels (2 or 3 levels) allow to have a different angular speed for reticle.
Want to precisely aim at that slippery target? Zoom in. AFAICT most people zoom in during combat anyway (and it gives a better view of those lovely ship models).
Want to point the other way? Zoom out.
There could also be a mouse sensitivity high/low toggle, but with zoom levels, I’m not convinced that would be necessary.
Btw, the zoom isn’t strong enough in the prototype as of now IMHO.
Interesting idea, I’d have to try it out to judge it, though.
Maybe acceleration could be at the edge of the screen for agile interceptors, with a large surface of precision aiming. For sluggish corvettes, there could be a smaller circle of direct aiming, with larger borders for acceleration, possibly higher at the edges of the screen than right next to the circle.
Another idea for the sluggish Corvette:
Maybe the corvette should be able to toggle between a (3rd person) Capship-mode and a (cockpit view) Fighter mode.
Here is a possible Capship control scheme:
3rd person, centred on the Capship, move the camera with the mouse. The mouse pointer also serves at pointing at things for giving orders.
Like in Kerbal Space Program, either with the same “move camera when pressing LMB”, “always move camera” or even the inverse “cursor mode when pressing LMB”
Like small crafts as mentioned above, it has a directional pointer, toward which it is trying to point. This reticule may include roll level, and discreet 360° compass lines, so you can always see your planned (and maybe current) direction(s) even when looking down or sideways.
When pressing a key, the mouse moves the reticule along with the camera (it doesn’t automatically centre on it, if what your side or rear is facing is more important than your direction by itself). Maybe you see an angular speed and ETA (useful feedback for beginners).
Speed would be set with the WASDRF like with fighters, but they would be used as throttle: press longer to set a higher speed in this direction. Maybe the longer you press, the higher you accelerate. Maybe there would be a “cancel acceleration in(against?) this direction” key, combined with the direction keys.
Maybe there would be a “direct thrust” key, when you just want to run the engines in a direction, and/or a “flight assist off” equivalent.
This could be useful to give orders to the Corvette turret, against interceptors it has little hope to lead with its main cannons. The Fighter mode would still be useful against slower crafts like capships, maybe other corvettes or even bombers.
Maybe the speed control should be kept in Fighter mode, though, if the Corvette accelerates well enough that this capship speed control wouldn’t work.
This would allow to keep the Corvette big enough, helping bridge the gap between small crafts and capships. A smoother size progression would probably help making gameplay more varied.
Yeah, being a stick user, I would rather avoid the mouse altogether. In fact, HOTAS users make gaming mechanics far easier but of course many continue to use mouse and keyboard so I leave it to those who prefer that style of gameplay.