Jump to content

Nudging options


northvibe

Recommended Posts

I am offering a $25 paypal reward to assist me in getting nudging to work on my virtual pinball cabinet.

I will purchase items such as ms sidewinder or nanotech mot-lon boards whatever.

I just want to get nudging to work on my machine. The key is a working solution

All the info is here just scattered around.

Buy MS sidewinder

Mount it like this.

http://www.hyperspin-fe.com/forum/showthread.php?t=10492&page=18

use XPadder

use gstav config

Originally Posted by gstav

"I would be happy to post my config file for XPadder"

http://www.mediafire.com/?mhf95c0fxvg18lx

Just make sure the PBW Accelerometer checkbox is unchecked (in VP eidtor)

Level MS sidewinder in Xpadder.

Then play around with the deadzone settings (in Xpadder)to make it work the way you want it to.

post-39825-142870574778_thumb.jpg

Link to comment
Share on other sites

  • Replies 261
  • Created
  • Last Reply

A few were interested in skipping the compile process - Here is my compile with the modifications listed below.

Looking at it now, I suppose the entry for the Logitech is redundant but whatever, this should work for you.

http://www.mediafire.com/?9rqc3t3rz6z1g56

if (hr == S_OK)

	{	
	if (!WzSzStrCmp(dstr.wsz, "PinballWizard"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	else if (!WzSzStrCmp(dstr.wsz, "UltraCade Pinball"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_ULTRACADE; //set type 2 = UltraCade Pinball
		}

	else if (!WzSzStrCmp(dstr.wsz, "Microsoft SideWinder Freestyle Pro (USB)"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_SIDEWINDER; //set type 3 = Microsoft SideWinder Freestyle Pro
		}

	// Ultimarc's UHID-A works like sidewinder with no other buttons.
	else if (!WzSzStrnCmp(dstr.wsz, "UHID Gamepad Device", 19))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_UHIDA; // Ultimarc's U-HID-A
		}

	else if (!WzSzStrCmp(dstr.wsz, "Logitech Dual Action"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	else 
		{
		uShockDevice = e_JoyCnt;	// remember uShock
		uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	}

Link to comment
Share on other sites

Now that the joystick is working, a question for anyone using a gamepad joystick for the plunger in either VP or FP:

In both FP and VP - It would seem that I can't shoot the ball very hard. Using the enter key, the ball goes flying. With the joystick...lacks the same punch. Sometimes its so week it can't even get out of the launch lane.

In VP:

I have been using JP's Pirates table for my testing.

Ensuring that "mechanical plunger is enabled" - The image of the plunger with the spring doesnt seem to compress as it does if you use the enter key.

What are your results? What might you suggest?

Link to comment
Share on other sites

Now that the joystick is working, a question for anyone using a gamepad joystick for the plunger in either VP or FP:

In both FP and VP - It would seem that I can't shoot the ball very hard. Using the enter key, the ball goes flying. With the joystick...lacks the same punch. Sometimes its so week it can't even get out of the launch lane.

In VP:

I have been using JP's Pirates table for my testing.

Ensuring that "mechanical plunger is enabled" - The image of the plunger with the spring doesnt seem to compress as it does if you use the enter key.

What are your results? What might you suggest?

Hello BitPirate,

I just tried this out here with a Joystick and could not notice a speed difference in the ball launch a few ideas...

1. Check the calibration data on your USB game controller (Windows setup) and make sure the Z axis has a full range of data.

2. On some controllers the Z axis is split between different analog devices. On an Xbox 360 controller, for example, the two analog triggers control the Z data in a ratiometric way.

In simple terms though, if you don't press both triggers at the same time, pressing one trigger takes you to the minimum Z-axis, and pressing the other takes you to the maximum.

Perhaps you are only using 1/2 the Z axis range?

On a side note, my build appears to completely implement the range of the plunger via the bottom half of the Z axis range. From the mid-point on the range to the highest value, the plunger moves only a vary small amount. It looks almost as if the lower half is the normal plunger movement and the top half is for a "slam shot"

Spektre

Link to comment
Share on other sites

A few were interested in skipping the compile process - Here is my compile with the modifications listed below.

Looking at it now, I suppose the entry for the Logitech is redundant but whatever, this should work for you.

http://www.mediafire.com/?9rqc3t3rz6z1g56

if (hr == S_OK)

	{	
	if (!WzSzStrCmp(dstr.wsz, "PinballWizard"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	else if (!WzSzStrCmp(dstr.wsz, "UltraCade Pinball"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_ULTRACADE; //set type 2 = UltraCade Pinball
		}

	else if (!WzSzStrCmp(dstr.wsz, "Microsoft SideWinder Freestyle Pro (USB)"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_SIDEWINDER; //set type 3 = Microsoft SideWinder Freestyle Pro
		}

	// Ultimarc's UHID-A works like sidewinder with no other buttons.
	else if (!WzSzStrnCmp(dstr.wsz, "UHID Gamepad Device", 19))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_UHIDA; // Ultimarc's U-HID-A
		}

	else if (!WzSzStrCmp(dstr.wsz, "Logitech Dual Action"))
		{
			uShockDevice = e_JoyCnt;	// remember uShock
			uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	else 
		{
		uShockDevice = e_JoyCnt;	// remember uShock
		uShockType = USHOCKTYPE_PBWIZARD; //set type 1 = PinballWizard
		}
	}

Thanks for the compile but it is painfully slow. Am I doing something wrong here?

Link to comment
Share on other sites

Hi Everyone,

First post so Hi to everyone!! and why oh why did I have to find out about Video Pinball Cabs!? Damn this is gonna be too much fun :D

Anyhoo, I haven't yet built my first cab but am currently researching like a madman which led me to post this.

I noticed a few people using Arduino's in their cabs, mostly for lighting control. I was just doing some Arduino googling and came across a tinkerkit joystick addon board that provides analog x/y co-ordinates back to the arduino. Ranged from 0-1023, more than enough resolution. Complete with the code necessary to make it work.

The description suggests that it's just like the analog pots in a game controller, so if you already have an arduino, are using it in a machine, and want analog nudging this seems like a cost effective and space effective way of doing it. May even be possible to add a z axis via arduino for analog plunger as well. Still researching that one.

I've got less that 5 posts so can't post links or images yet but you can see the board at h tt p://store.arduino.cc/ww/index.php?main_page=product_info&cPath=16&products_id=102

Don't know how you'd get the output form the joystick co-ord into vpin as yet as analog inputs but it just seemed like it might be a possibility so I thought I'd throw it out there for comment.

As the code is open source it might be possible to add arduino controlled nudging straight in.

Pretty sure I read the whole thread and didn't see this mentioned anywhere as yet.

What do you think?

Cheers,

Arkay.

Link to comment
Share on other sites

Thanks for the compile but it is painfully slow. Am I doing something wrong here?

Hey Syco, what do you mean exactly?

I haven't done thorough playing with this build yet as I have been more focused on getting my cabinet up the way I want it, but I have played with it and didn't notice any speed difference in gameplay. The code listed in my quote was the only thing I changed so there shouldnt be anything weird going on...I suppose you could try grabbing the tarball mentioned earlier in this thread (I think page 3 or 4) for a straight compile to see if you would have the same issue...

Link to comment
Share on other sites

hmmm, i also did a recompile of latest tarball with my fix and ended up with slow vp

also latest tarball without any change would compile to slow vp

that's because latest tarball code is not optimized and has some new features, bugs, ...

i should have go to exactly optimized 912 code (not latest code) and add fix and recompile, but never did that

Link to comment
Share on other sites

Hey Syco, what do you mean exactly?

I haven't done thorough playing with this build yet as I have been more focused on getting my cabinet up the way I want it, but I have played with it and didn't notice any speed difference in gameplay. The code listed in my quote was the only thing I changed so there shouldnt be anything weird going on...I suppose you could try grabbing the tarball mentioned earlier in this thread (I think page 3 or 4) for a straight compile to see if you would have the same issue...

Granted I am just messing with my laptop (no cabinet build yet) but it handles the normal exe just fine. This one takes a good minute to load a table and even longer to run. I am running this because I am testing a generic xbox controller I got at the dollar store for an analog plunger (which isnt working for some reason, even have the right stick mapped to the z axis).

Also does this code allow for more than one controller (I intend on using sidewinder freestyle for nudge and the xbox controller for analog plunger)?

Link to comment
Share on other sites

hmmm, i also did a recompile of latest tarball with my fix and ended up with slow vp

also latest tarball without any change would compile to slow vp

that's because latest tarball code is not optimized and has some new features, bugs, ...

i should have go to exactly optimized 912 code (not latest code) and add fix and recompile, but never did that

Is this something that could be done simply? I am not familiar with sourceforge's source management. I believe they use CVS or SVN. I personally have taken to Github for all of my projects...

Link to comment
Share on other sites

Granted I am just messing with my laptop (no cabinet build yet) but it handles the normal exe just fine. This one takes a good minute to load a table and even longer to run. I am running this because I am testing a generic xbox controller I got at the dollar store for an analog plunger (which isnt working for some reason, even have the right stick mapped to the z axis).

Also does this code allow for more than one controller (I intend on using sidewinder freestyle for nudge and the xbox controller for analog plunger)?

vp will use only first gamapad x y z for nudge and plunger

buttons are used from both, but they work the same (no way to change buttons)

Link to comment
Share on other sites

Is this something that could be done simply? I am not familiar with sourceforge's source management. I believe they use CVS or SVN. I personally have taken to Github for all of my projects...

it should be simple, i never tried

Link to comment
Share on other sites

Granted I am just messing with my laptop (no cabinet build yet) but it handles the normal exe just fine. This one takes a good minute to load a table and even longer to run. I am running this because I am testing a generic xbox controller I got at the dollar store for an analog plunger (which isnt working for some reason, even have the right stick mapped to the z axis).

Also does this code allow for more than one controller (I intend on using sidewinder freestyle for nudge and the xbox controller for analog plunger)?

The first question I have is, is the xbox controller reognizedin the windows devices and printers list? The reason I ask is that I was using a program called PPJoy that mapped my mouse movement to a virtual joystick. While I could see that joystick in windows gamepads list, I could not see it in my devices and printers list and could not get it to work.

The changes I made essentially let VP recognize any joystick device as a PBW device, so in theory you should be alright there.But according to what blur said, it might be an issue that you can only use 1 gamepad at a time?? Blur can correct me if I didn't understand him correctly.

Back to the slowness.. I tested my build on windows 7...What version are you using?

Link to comment
Share on other sites

vp will use only first gamapad x y z for nudge and plunger

buttons are used from both, but they work the same (no way to change buttons)

crap well there goes that idea... did anyone ever figure out how to use the sidewinder for plunger as well?

Link to comment
Share on other sites

hmmm, i also did a recompile of latest tarball with my fix and ended up with slow vp

also latest tarball without any change would compile to slow vp

that's because latest tarball code is not optimized and has some new features, bugs, ...

i should have go to exactly optimized 912 code (not latest code) and add fix and recompile, but never did that

Hi Blur - I poked around in source forge but wasn't sure... Do you know what revision would be the "clean 9.1.2 optimized code".

Link to comment
Share on other sites

crap well there goes that idea... did anyone ever figure out how to use the sidewinder for plunger as well?

What if you made the xbox controller the "first" controller (given you can get it working) and the one recognized by VP, and then used something like Xpadder to map your MS sidewinder x y to the standard nudge key presses?

Link to comment
Share on other sites

What if you made the xbox controller the "first" controller (given you can get it working) and the one recognized by VP, and then used something like Xpadder to map your MS sidewinder x y to the standard nudge key presses?

I believe that would cause digital nudge rather than analog. At any rate it was the Xbox controller I couldn't get working.

Link to comment
Share on other sites

Well I cannot even get the nudge to be detected at the moment. Have it sitting on my desk, xpadder is configged down to 1%, just walking in the room will cause the thing to trigger in xpadder but in vpin i have to actually pick up the controller and turn it to get nudging. what gives? i have watched rascal's video over and over and i am not seeing what i am missing.

Link to comment
Share on other sites

  • 2 weeks later...

Thanks to the post by Blur about adding support for any gamepad, I was inspired to make some other changes of my own.

I don't know if anyone would be interested, but in my quest to get my Mot-Ion and Plunger kit working the way I wanted in my newly built cab, I ended up compiling a version of VPinball with most of the hard coded keys disabled (mainly to get rid of the exit, pause, and volume keys, but got rid of all but flipper and launch buttons). Currently I am just using xpadder to remap all the buttons I freed up. For those of you altering VPinball to use any gamepad as a PBW, you can comment out all the hard coded buttons and use/remap every button on your controller with no restrictions.

If there is any interest, I can post my modified pininput.cpp and/or list the changes I made if anyone else wants. Or if desired, I can just compile a version with the gamepad changes and all hard coded PBW buttons removed and put up a link.

(EDIT: Decided to just post a link to the compiled exe as I am probably gonna be away from computer for the next day or 3... this includes changes from Blur's post, all PBW hard coded buttons removed, compiled with 'Release MinDependency Fast+SSE' configuration, and is 1.36MB - Download - Any issues, let me know, I am currently using my original modified exe with no issues, and just removed the rest of the hard coded buttons/added Blur's changes, so I wouldn't expect any issues from this, but you never know...)

Anyway, just putting this out there as I had a hell of a time utilizing all 16 inputs on my Mot-Ion adapter (4 flipper buttons, launch, start, extra ball, reliable pause/exit through fplaunch, coin door open/close and the 4 service buttons, 2 coin buttons, and a key for instructions in-game) and couldn't find any other solutions.

Link to comment
Share on other sites

great job!

i downloaded the exe and will test it

so this is optimized compile, and should perform same as official version, right?

it has all buttons disabled and only xy axes are enabled for nudge and z for plunger

that's a great idea, cause actually no body needs that hardcoded mappings and you can do all through xpadder

great!!!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...