Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: Turambar on February 23, 2006, 07:34:07 am
-
ok, im sure im not the only one that would like to see this, but i am the only one that i know
ive got a nice mouse, its an mx518, and it has these buttons on the side
these buttons that freespace 2 won't recoginze.
optimally, i have uses planned out for them already (holding one lets my mouse slide the ship up and sideways, holding the other rolls). but for those to work properly, FS2 would need to be able to recognize the buttons, and map the button+the mouse axis to controls that arent bound to axes at all.
this is probably a lot of work, makign the extra mouse buttons work, but it'd be really great
THanks for reading,
-
Well, I have Logitech MX700. What I'd like to see is support for the mouse wheel. It also has total of five other buttons, That Freespace does not currently support...
Support for more mouse buttons would be very good...
:nod:
-
Just map them to unused keys using Logitech's control panel or LogiGamer. I have done that with my MX510 and although I don't use the mouse in FS2, the extra buttons are extremely handy in FPS games.
-
You play Freespace with a MOUSE?!?!??! :eek:
HOW?!??! :confused:
-
well, at least the ablility to map the up down left right thrusters to a button+axis would be nice
-
Any extra mouse button binding would be nice. I play with the right side of a gamepad, and use the mouse for fine aiming, and being able to use those extra buttons on the mx500 wouldn't hurt at all.
-
As I said, you can bind them to normal keys that you aren't using. I have the extra buttons on mine mapped to f, g, h, j and k, so if I want to use a mouse button for some command, I just bind its associated key in a game's control settings.
-
any news on being able to bind the vertical and horizontal thrusters to a control axis plus a button?
thats what i really need
-
i wouldnt mind being able to bind the mouse to the lateral/vertical truster axes, then i can make use of the analog ministick mouse on my saitek x52.
-
You play Freespace with a MOUSE?!?!??! :eek:
HOW?!??! :confused:
One click at a time.
Actually, you turn your mouse sensitivity all the way up, and then more if you can. And you hope you don't reach the end of the mouse pad (or your reach) just as you finally get a Dragon in your lead indicator.
PS I thought the vertical / horizontal thrusters only worked w/ a few Shivan ships? (I tried the keys that they're mapped to, and they didn't work.)
-
and my mod which has lateral thrusters on everything. :D
its actually rather silly to have a space ship without lateral/vertical thusters.
im also rather supprised they havent implemented a flightsim mouse flight mode yet, sorta like in freelancer.
-
Well... kudos to you dude...
I remember trying to play TIE Fighter with a mouse... that's what made me go out and buy my first PC Joystick :)
(It was this little QuickShot jobbie, not even a proper joystick! It was literally just a stick attached to some resistance strips FFS! Never had a joystick I was more accurate with 'tho; I would steer it with my fingertips :D)
-
makes me miss the old analog sticks and games supported more than one. i remember my old mw2 setup, had a microsoft stick as my turret control, one of those really old fashoned box controllers with the little stick for view control, and a seporate throttle and rudder pedals which i used to control the mech. it was the best control layout ever. you dont see that much anymore theese days. i could probibly make an analog stick that has more range of motion than even my saitek x52 which has a rather annoying half degree hardware deadzone. i cant stand deadzones, leads to an unsmooth transition from dead to moving, airplains, helicopters, and cars dont have deadzones in their controls, why should a gaming stick? i d like to build a stick that has its base all the way down on the floor and gives me a good square foot and a half motion range, plus i could attach rudder pedals to the base. could probibly use bike parts (i am a bicycle mechanic so i have a ready supply of free parts) for the structure, with bearings on the base pivot for the smoothest possible control. with several wide range rheostats and some fairly simple wiring, all of which i could get at radio shack, i could construct a rather formidable controller..
-
A guy in canada built a motion simulator out of some aluminum pipes the webpage is www.flightcontrolsimulator.com this thing is very cool I saw it in Maximum PC as the rig of the month. I want to build one myself I have no room in which to put the damn thing.
-
oh how i wish i had a machine shop. i could make some cool stuff. the mechanical engineering aspects of a full motion sim are easy, the electronics and computer interface are the hard part. i could do it if i had some extra money to spend. if i were to do one id get like 4 large lcd screens (most likely used ones that i can get cheaper, i wouldnt want to gut a brand new lcd screen), which i would arrange as a canopy to cover the pilots head to give the player as much immersion as possible. i think most of the microsoft sims support multiple displays for just this purpose.
i would of course do a 3 axis system. they yaw axis would consist of a circular rail elevated 4 feet off the floor, on top of which would rest a octagonal steel frame with rollers that would ride on the track. this frame would probibly need to be about 6 feet in diameter and would be articulated directly by an electric motor and its orientation would be monitored by a sensor. for pitch a second octagonal frame, between 5 and 5.5 feet across, would mount inside the larger frame with berings on either side. also this frame would mount both electric motors for pitch and roll, as well as positional sensors would be monuted on this frame. being 4 feet off the ground it would be capable of a complete roll. the 3rd frame, which would contain the pilot seat, controls, monitors, and probibly computers as well (as it would be hard to run stuff like monitor cables through a 360 articulatabel frame, maybe the monitors and controls connected wirelessly so the computer may remain on a non moving serface) would be mounted on a 3 foot square frame. everything in this box would need to be placed as close to the center of gravity as possible in order to give the 3 motors the least resistance. the pilot, consisting of most of the weight, would need to sit at dead center. for a seat a steel racing seat (as often seen on monster garage) with 5 point harness should work well. the monitor hood would also be made with steel tubing, and would slide open on rails to allow the pilot access. when closed it should cover the pilots whole head. all 3 frames need to be able to rotate into any position freely without collision. for cool factor id completely enclose the interior and put in fully working aircraft controls. id probibly use a 5th monitor for gauges, or use real ones if possible. youd probibly need 2 computers for this, one being an industrial robotics controller, which would handel motors, sensors, controlls, and any gauges for the interior. the other being the game computer with an sli array in it for the various screens. you could probibly forgo the robotics controller if you knew enough about electronics. it would be a massive undertaking and id need a machine shop, some major cashflow and alot of time to build it. oh how i wish i was rich.
-
Nuke
i could construct a rather formidable controller..
..and then make more and sell them on Ebay for a decent price so we could all have one, too, right? :D That was what you were going to say, right? ;7
-
i suppose you want a full motion simulator as well?
-
Nuke
i suppose you want a full motion simulator as well?
Of course! :lol:
-
Nuke, you claim cars don't have dead zones in their controls. Have you ever steered a car that has rack and pinion steering, not power steering?
-
rack and pinion steering cant have a dead zone because you cant have a rack with a gap in it. if you did then you had some broken teeth on the rack and/or pinion and you really should see a mechanic. all of the vehicles ive been in control of (various cars and a plane or two), didnt have dead zones. none the less it is irrelevant and i still hate deadzones.
-
Have you even seen the way it steers. There's always a LOT of play in the steering wheel before it actually starts turning the direction of the wheels. There is very much a dead zone.
-
the way rack and pinion works it is impossible to have a deadzone. your wheel's rotation travels down the shaft to a reduction gear box to increase torque (used to make driving the mechanics of the system easyer, as well as to increase the amount of control accuracy) and then onto the rack and pinion where rotational motion is directly converted to lateral motion (through a normal (pinion) gear to a laterally mounted rack gear, anyone whos put together a lego technic car should know) which i used to actuate the angle of the tires. it might not be noticable at slow speeds but on the hiway turning the wheel a degree or two has more of a difference. after all those episodes of monster garage i watched, i know what the **** im talking about. it doesnt mater because deadzones suck.
-
Methinks you're confusing rack and pinion with power steering.
-
You play Freespace with a MOUSE?!?!??! :eek:
HOW?!??! :confused:
One click at a time.
Actually, you turn your mouse sensitivity all the way up, and then more if you can. And you hope you don't reach the end of the mouse pad (or your reach) just as you finally get a Dragon in your lead indicator.
I have a rather different system, though I also set the mouse sensitivity to maximum.
I usually use joystick and mouse in conjunction. In normal flight or when firing at long range I use the mouse extensively; when it comes to dogfighting I use my left hand on joystick to give the overall direction to the pitch/yaw momentum of the ship and use mouse for aiming and fire control. It works surprisingly good.
It's much more accurate and fast to aim with mouse, but in dogfight the "move-yank-move-yank"-system sucks. So why not combine the accuracy of the mouse and the seamless capacity of the stick?
-
Methinks you're confusing rack and pinion with power steering.
god damn it dont make me refer you to wikipedia:
http://en.wikipedia.org/wiki/Power_steering
http://en.wikipedia.org/wiki/Rack_and_pinion
i know my way around machines.
-
And I've actually been in a car with rack and pinion steering. The steering wheel itself has a dead zone. Lots of play in it.
-
the play you experience is do to the reduction gears that the motion goes through before reaching the rack and pinion. its not dead, just geared down so much that the action is negligable. the tires are still turning but only a fraction of a degree. its not a dead zone, its very much active. this is ment to allow very presise control at higher speeds. a dead zone would just be unsafe.
-
Ok, you need to learn that a difference which makes no difference is no difference. Effectively. there is no response until you turne the wheel past a certain point. This effectively makes a dead zone.
-
but it makes a difference. this is like those people who like to round off statistics because they are too stupid to think in floating point terms. another analogy is computer tech verses average mundane computer user who calls his computer a hard drive/modem. the computer tech knows the reality, but you cant tell that to average joe blow user. in engineering terms it makes a difference, but to the average joe blow user, they wouldnt notice. this microscopic amount of fine control is more usefull than you give it credit for. the ability to appreciate fine control of your machinery is the difference between your average driver, and professionals. now that ive cut off your virtual penis, what are you gonna do. :D
-
So you're saying that all the gear wheels sit tightly together in both the steering reduction gearbox AND on the rack&pinion system itself, and that this happy state lasts for ever? No way it's gonna last. The gears wear out, and after some use there is certainly some amount of deadzone in the wheel, or "claff", as it's more often called I think. When the claff is too big for the car to pass the inspection, some parts must be changed.
I think the gear wheels are actually not made to be ultimately tight in the first place but they leave a micrometer or two in between the gears in the factory in order to reduce the wearout.
-
this thread has become very interesting, so i hate to bring it halfway back to the topic, but has anyone else been having intermittent (sometimes working sometimes not) force feedback problems? force feedback is a bit erratic with my Logitech Wingman Force 3D.
just wondering if its me or if its a documented issue.
-
Well, not so much as that. But I have a Logitech Force 3D Pro as a second stick... and it behaves starngely in Live for Speed, for example. If the car is on the move, the stick startsyanking from left to right quite fast. I don't know if this is stick's fault or the game's, but it's irritating altogether. Not that I play that game a lot, but anyway.
-
I used to use a Wingman Force 3D, until its motion became so erratic that the the force feedback would constantly jerk around, even outside of a game. To add to that, the twist was very glitchy and would often spike to the wrong side when used. From what I've heard, I'm not alone with this; many people have experienced problems with the Force 3D's wiring acting up on them.
-
Sorry to dig this up, but I succeeded... somewhat :)
The original topic, that is. I got the game to recognize button 4 and button 5 of the mouse. Only minor problem is once you push it, it never stops -- keeps firing. :confused: So I'm stuck. Not sure what I did wrong. But I'll post the information if anyone else wants to take a crack at it.
In fs2_open\code\OsApi\OsApi.cpp , right after the "case WM_MBUTTONUP:" section, I added this:
case 0x020B: //WM_XBUTTONDOWN:
{
if (wParam & 0x0020) //MK_XBUTTON1)
mouse_mark_button( MOUSE_X1_BUTTON, 1 );
if (wParam & 0x0040) //MK_XBUTTON2)
mouse_mark_button( MOUSE_X2_BUTTON, 1 );
}
return true;
break;
case 0x020C: //WM_XBUTTONUP:
{
if (wParam & 0x0020) //MK_XBUTTON1)
mouse_mark_button( MOUSE_X1_BUTTON, 0 );
if (wParam & 0x0040) //MK_XBUTTON2)
mouse_mark_button( MOUSE_X2_BUTTON, 0 );
}
return true;
break;
Obviously you'll have to also modify fs2open\code\io\mouse.cpp and mouse.h to support more than 3 buttons (the MOUSE_X1_BUTTON and MOUSE_X2_BUTTON are names I made), but that's easy; mostly just cut and paste and modify.
I got the information from http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/mouseinput/aboutmouseinput.asp, and also the hex codes from WinUser.h in the PlatformSDK.
There's also mousewheel possibilities:
case 0x020A: //WM_MOUSEWHEEL:
{
if (wParam > 0) // Scrolling up
{ // put something here
}
else if (wParam < 0) // Scrolling down
{ // put something here
}
}
break;
-
the "move-yank-move-yank"-system sucks
:lol: :rolleyes:
Anyways, I always used the keyboard, steering with the NumPad. Now I have a laptop keyboard, I use a bog-standard Microsoft Optical mouse, and find it works better due to the analogueness of it.
Grammar patrol, have mercy on me!
-
You meant to say "the Grammer Inquisition!"
-
You meant to say "the Grammer Inquisition!"
That's the Grammar Inquisition to you, planet-boy! :p
-
I meant to do that :nervous:
-
great that its kinda working!!
just a little more and it will actually work
then i will give you a hug / buy you a drink
depends on how much money i have
-
I say go all the way up to 8. What else am I going to use the 2nd alt-tab button on my ubermouse-of-doom for, anyway?
-
:eek2:
Um, well if you can find some information on the API for such buttons, sure. So far I haven't seen built-in support for anything above 5 buttons, any program.
I'm guessing that huge mouse already has a key mapping utility anyway... What brand is it?
-
Logitech, and it does. There was at least a hint of exaggeration in that post ;)
-
It is kind of funny that you want these features, because I have completed most of the requests in this thread (mouse button 4 and 5 support), in game binding of mouse axis binding, and freelancer style mouse control. My patch was never accepted because it required a change to the pilot file (one-way, be warned). If you want a copy of the build, I'll put it up once I recompile to the latest CVS. Keep in mind any bugs that occur with CVS builds and all that.
4/22/06 CVS build with Mouse patches (http://129.65.180.54/fs2_open_r.exe)
-
They might be accepted now cause Taylor is updating the pilot file code.
-
I would like to see the code, even if just for learning how it was done! :yes:
-
freelancer-style mouse control would be awesome... open the game up for lots of people by dropping the learning curve, particularly for the many many people that don't have a joystick ;7
-
Send in the patch and I should be able to roll it into the pilot file upgrade (if it doesn't duplicate what I aready have in the new code). The freelancer-style mouse control is something that's been asked for many times, but since I've never played freelancer it's a bit more difficult for me to code support for it. That code at least would be nice.
-
It needs a toggle (eventually in the options screen, preferably) for "continuous" (freelancer-style) and "default" because, like it or not, the scroll-drag-scroll-drag style of mouse flying is a part of the original Freespace.
-
Good zark those changes are awesome. I look forward to seeing the code -- I have some great ideas for further things to add, and have almost everything right, but am obviously missing something because the ship tab of the controls screen crashes (in my build, not yours). Would anyone like Slide-when-pressed, and slide axes? ;7
Edit: Though ouch, now that I try it in combat I realize how nice the visible mouse reticle during such control would be. (After all, we don't have the auto-tracking that Freelancer does.) But I know that may be tricky to implement.
Is it the new axes that necessitates the pilot file change? If so, could we reserve two more for the slide axes?
-
Is it the new axes that necessitates the pilot file change? If so, could we reserve two more for the slide axes?
Adding new controls or new actions will break pilot files. When you have the changes done just get me a patch and I'll roll it into the new pilot code before it hits CVS.
-
Mouse buttons 4 and 5 and mouse wheel support (http://www.calpoly.edu/~krothman/f90stuff/mouse.d.patch)
Freelancer Control style (http://www.calpoly.edu/~krothman/f90stuff/freelancer.u.patch)
There is some lint in my patchs, but nothing too bad.
-
Sorry for so long with no feedback. Thank you. This is cool. :yes: I learned a few things :)
Based on this, here's my take on it, merged with my slide (lateral thrust) axes and slide-when-pressed ;7
http://www.qeyleb.net/files/mousebuttonsandslidingaxis.patch (http://mousebuttonsandslidingaxis.patch)
It may be the lint, or me making a mistake, but I can't get the mousewheel to work. I wonder if it has to do with the osapi bug and which platform SDK I use? Either way, taylor's going to hate the windows hacks but I don't know how to do it any better yet... :ick: course, that's just the mousebuttons... maybe there's already a better way being implemented. At least the axis code 'should' work fine :nervous:
-
Wait...did someone say slide axes? :eek2:
That's it; now someone absolutely has to do that Descent mod. :)
-
and my mod which has lateral thrusters on everything. :D
its actually rather silly to have a space ship without lateral/vertical thusters.
im also rather supprised they havent implemented a flightsim mouse flight mode yet, sorta like in freelancer.
because mouse flight doesnt simulate flight controls.