Author Topic: Control idea  (Read 3495 times)

0 Members and 1 Guest are viewing this topic.

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
Yeah I know it's been mentioned a lot already, but I got this idea that I quite like a while ago and, while taking my shower, I thought about it again and figured "heck, why not submiting it anyway?". So here I go:

One of the most popular ideas is to have a Freelancer-like mouse control. It's very nice and allows you good control with just a mouse. But the thing is, it is perfectly adapted to FL only because the ships have turret-mounted weapons.
I've just tried the demo of SpaceForce 2, which basically is what we'd want here: FL mouse control, w/o the turrets. Now it is nice to play, but there's one problem: you tend to move the mouse to the target thingy that lets you know where you should shoot, and not your actual targeting reticle. So of course you shoot behind your target. Ok you keep going on, and you get the grasp at moving the actual reticle over the projected target thing.
Now things get better, you hit... when your target flies straight. But they, of course don't, most of the time. And now you enter a whole new world of pain. You have to guess where the ship will turn, because it takes longer for your reticle to move to where your mouse points than for your target to actually move away. So you miss a lot, not because you don't have the reflexes or you're a bad shot, but because your ship just won't shoot where you want, when you want, it's always half a second late if your target is doing anything else than an easy to predict curve. So before you used to have to predict where your target would go, and now you have to predict where your ship will point at that moment as well.
This is obviously why they put turreted weapons in Freelancer. But we don't have turrets in Freespace, and I assume that, unless you're flying a transport or something, we don't want them anyway.
So I got this idea that, I think, is quite good:
make the WHOLE ship a "turret".
...
Hold on, don't start thinking "lol, that's totally idiotic", at least wait for my explanation, then feel free to.
...
Come on, calm down, take a deep breathe. Stop the drooling too, please.
Thank you.
So my explanation... it is difficult to explain, so bear with me, it may be awkward and lengthy.
Imagine the current Freespace HUD (imagine one with an actual cockpit mesh, it will be easier, and the whole idea will be more efficient with one anyway). To that HUD, you add one crosshair. That one is where the current crosshair is, so, while moving straing forward, both the old and new ones overlap.
Now that new crosshair NEVER moves, whatever you do, it just indicates the center of your screen, right?
Now you want to turn ( I know you want to), so you move the mouse to the left, because there's that nasty cargo hanging there, and you want to shoot it and blow it up to pieces.
In Freelancer, this is what you get: the mouse cursor moves where you move your mouse (yes!), and the turrets point there too, so you will still shoot where you point. The ship also turns more or less slowly toward that direction. This is good because you retain a great accuracy, but this is bad because it makes things easy as cake, since unless the target actually goes out of the screen, the maneuvrability of your ship has little impact on wheither you will hit or not.
Now what we've got with my idea. You move the mouse to the left, ok? The new reticle doesn't move one bit, it remains right there in the middle of the screen. What you move on the screen is the OLD reticle, and along with it, the WHOLE cockpit (and along with the cockpit, the WHOLE ship). The farther you move the reticle, the faster the ship turns, as always, BUT with its max rotation limit set by the speeds writen down in the ships.tbl file. The distance you can move the reticle should be also limited, say you turn at max ship's rotation speed when the reticle reaches half the distance to the side of the screen ( because you don't want your ship to face somewhere out of the screen where there might be a sathanas 20 meters away ready to ram you to death). And when I say half the distance, it can be less than that, you don't need to move it a lot for the ship to move after all, since you can have expentional speed the farther you go away, and you don't want the HUD to get out of view either. The new reticle has only one purpose: to know where to bring the targeting reticle back if you don't want to turn.
So you will have the nice FL control, still retaining the fixed firepoints systems, but actually shooting where your mouse is pointing at, w/o making it any easier for the player thanks to turrets or whatnot. To sum up, you take the mouse control system and just reverse which reticle the mouse actually moves. One additional bonus is that it actually gives a purpose to 3D cockpits.

Voila, I'm done.

"puts on flame-resistant suit"
SCREW CANON!

 

Offline Fabian

  • AI Code Modulator
    Temporal Mechanic
  • 25
FLAME!

"Burn baby burn!"  :P

Okay, enough of that stuff, on topic:

I did not understand a word of what you said.

You made a very long post, but it made nothing clear for me.

I am all in favor of trying new control ideas, but this one I have not understood ...

cu

Fabian

 

Offline Backslash

  • 29
  • Bring Our Might To Bear
Finally, someone who actually understands why 'just implementing Freelancer-like controls' is not as easy as it sounds!

Very good post. :yes: It's taking me a while to digest, but I think you're on to something.  Either that or your alternative idea, in the long run, unintentionally describes exactly what the current mouse system does :lol:  ...nah I'm probably not understanding it right.  I'll have to think about it some more.

The main thing I don't understand is when you are talking about the new reticle that never moves, vs the whole ship/cockpit moving.  So where is the eyepoint during all this?  Does it follow the ship?  ...Or is it on the new reticle, with the ship/cockpit moving around the screen 'padlock' style?

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
Padlock style, excepted you can't "move the cockpit" very far at all.
Well, maybe both solutions would do, I suppose, I don't know. Without seeing it with my own eyes, I can't really say, my mind is able to show me things that are not physically possible, so go wonder :p

I should probably make fake screens to explain.

EDIT: ok, there you go. I've done it from an outside view (credits go to the BtRL team, I just picked that shot and modified it, etc), because it occured to me that, from a 3rd person view, it's already been done to death. So:

ideally, it should look like that:


but look at that first


That's the crude version of what I'm explaining, the HUD is moved around the screen by the mouse, the ship point to it, the camera points to... well, this depends on the ship's rotation speed really, but something between where the mouse/ship is pointing now and where it was pointing half a second ago I assume.
It may look bad with the whole HUD moving (well, at laest in chasing view), but it makes the whole idea clearer I think. From the cockpit view, it works exactly the same, just imagine the POV is slided to the inside of the cockpit, w/o turning it or anything, so there you'd see the right hand part of the cockpit.
The only thing is that it would suck if you could move the HUD that far away to the side, as I was pointing out in my first post. It's pretty obvious you wouldn't be able to see where you're flying (because remember, the screenshot above shows the ship turning -at maximum rotation speed too if you consider the angle it takes from the screen). Ideally, you should be able to "move the cockpit" only up to the tip of the arrow I've put on the shots (it's just there for that, I don't see any point to adding an actual arrow to the system), but that's the only screenshot I could find that would help me explain my idea better.


Edit2:
In fact, ideally, it should look like that actually, I think (keep in mind the range restriction I've indicated with the arrow, please, of course I don't want half of the HUD to go picknick):

Thoughts?
« Last Edit: June 03, 2007, 04:26:08 am by Nico »
SCREW CANON!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
meh, ive already done this with script, freelancer flight, linked turret aiming, moving reticle all working together in flawless unison. observe:
http://www.youtube.com/watch?v=sGdIfbUSlQM
« Last Edit: June 03, 2007, 07:20:42 am by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
Well, cool then, that's about spot on :)
but I got a couple questions:
1) you say you got freelancer turrets implemented, do you mean you've added that to all the ships or is it just something that you can have for ships that do have turrets (like if you fly the hunter)?
2) how does it work from the HUD/cockpit view? ( I assume from the basic HUD view you only see the target moving around since there's nothing else going on visualy anyway, but what happens if you got a 3D cockpit? I see a problem there: your ship is going left and right on the screen, if it does the same in cockpit view, you'll be thrown of the cockpit at every turn )
3) any way for people like me to get our nasty little hands on that? ;)
4) is it me or you're a bad shot? :p
« Last Edit: June 03, 2007, 03:56:26 pm by Nico »
SCREW CANON!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
1. when i recorded that example the turrets were hardcoded, but lately ive introduced code to allow any turret to be used. all you had to do was have turret in the sobj properties name field with a # at the end and a bunch of letter codes for various options. theese would get parsed on a ship by ship basis. fixed point guns can also be used, which will gimbal as commanded by the mouse.

2. it works just as well as the outside view. in the old example there was some clipping when in fps view because the turret range was bigger than the fov. to get full turn rate you would essentially loose your crosshairs. the hairs are essenitally a projection of your shoot vecrtor out to the target times the target distance. ther new system converts screen coords directly to a vector by which the turret code aims and apears to work no mater what view youre using.

3. i havent finished the new version yet, there are still some bugs when handeling the turrets. and some speed issues while handeling alot of turrets. my current lua base has everything in it that ive implemented from the mouse script onward and is a rather large mess. i havent bothered to make any release versions because ive been busy learning c++ and writing my own game engine. but i recently posted an example of my turret control script in the scripting board, and with only minor tweaks it should be able to handle fl mode. i probibly dont remember how it all works :D

4. that has something to do with the way my old example worked. the crosshairs were esssentially a projection of the fire vectors, which were locked to the turret gimbals. so it want point and fire like in freelancer. also the fact that there were 2 hairs plays havok on the eyes. this is of course all fixed now.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
fixed point guns can also be used, which will gimbal as commanded by the mouse.

Gimbal?
SCREW CANON!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
that means it will act as a turret.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
So you mean the fixed firepoints aren't actually fixed anymore? :shaking:
SCREW CANON!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
well i got to give wanderer credit for that he gave me the idea. but rather than being automatic blindfire, i decided to make it manually aimed. anyway in the example you can see that the main gun still fires straight. the biggest problem is making it all integrate seamlessly, such as making the script sit there until it sees a ship that has been modded in such a way as to have the script process it. this is doable albeit hackishly. weapon options can be put in the name after the # which is hidden from player view ingame, and for turrets in the subobject name field, also after the # char. for ships you can just use the short name field which is only seen in fred. its just a matter of using the built in character manipulation functions in lua to parse them.

the biggest problem with my control interface is that it pretty much locks you into using the mouse. you cant use the stick to turn the guns and have the ship turn as well. and using direct stick flight with a mouse is a little akward and hard to control. using the mouse stick on the x52, i was able to aim the guns independently of the ship, but that was rather difficult.
« Last Edit: June 04, 2007, 05:55:00 pm by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Agent_Koopa

  • 28
  • These words make the page load that much slower.
fixed point guns can also be used, which will gimbal as commanded by the mouse.

Gimbal?

Doesn't that mean to make holes like a gimlet?
Interestingly enough, this signature is none of the following:
A witty remark on whatever sad state of affairs the world may or may not be in
A series of localized forum in-jokes
A clever and self-referential comment on the nature of signatures themselves.

Hobo Queens are Crowned, but Hobo Kings are Found.

 

Offline Polpolion

  • The sizzle, it thinks!
  • 211
Isn't this the kind of thing they did in WC:P?

 

Offline Davros

  • 29
i think Space Interceptor: Project Freedom did mouse control well
Demo:
http://www.gamershell.com/download_7207.shtml

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
Isn't this the kind of thing they did in WC:P?

nah, it's just the good old "move the mouse there and the ship will try to follow".
SCREW CANON!

  

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
well it used parts of my mouse script which was loosely inspired by the way privateer 2 mouse flying worked
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN