Jump to content



Photo
- - - - -

Call for Programmers


  • This topic is locked This topic is locked
105 replies to this topic

#1 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 05 June 2010 - 05:44 AM

The code has been available here for three months now. Even with other pinball editors to choose from, Visual Pinball could use some love. I don't have professional c++ programming skills, so what I can do with it is quite limited. Right now we just have me working on it, and I'm making quite slow progress on my own. This is a 908 beta with a 3% dead zone for pinball wizards and ushock motion boards, and it has a fix for the keyboard buffer with messageboxes.

If you know how to program GUI options, DirectX, or even file interaction, I'd appreciate the help to move this forward.

vpinball.sourceforge.net
Destruk

Attached Files


Build a fire, vipers love the heat.


#2 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 05 June 2010 - 07:50 AM

Tried it out,

3 things.

One is that 3% isnt enough, In order to calibrate it I have to lift the cab up and spin it around, Already pulled my back so i had a friend help me.

Even after calibration the DIY kit is all over the place. Used DXtweaks to give it a wider birth. Basically took its so called center, and made the min 50 less and the max 50 more. Was semi close, but still having to use a 2nd application to configure it. Also with the added dead zone, and the DXtweaks, once the ball doesn't suffer from floating, its really hard to get any type of Nudge out of it. It just bounces just a Tiny bit.

While Nudging, or tilting, the Main Volume keeps going up and down. Is there way to just set the volume at 100% and just let the computers volume handle that?

No clue what the issue is, but Xenon from UW will load, but the Pinmame gets stuck on stupid, Just keeps repeating itself, you can launch the ball, but flippers, bumpers ect wont react till the ball drains. This is not the issue with VP 903.

Please Don't take anything I say personally, I just want to give honest feedback so that we can make it better =)

Just an idea, but is there anyway to have both the vp908 with multi threading? Let the user decide if adding the DLL is too much?

#3 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 05 June 2010 - 08:16 AM

I have no idea what you're using with whatever 'DIY Kit' you're talking about. I had it at 10% and Noah said it was too 'dead' for his Pinball Wizard. Here is the 10% one. As for the volume, the volume keys are hardcoded to either the + and - keys on the keyboard, or two buttons on your interface board. If your configuration is using those, then you're going to have trouble with conflicts. This is just one of the minor few reasons why we need actual programmers to work on this - to configure everything however you prefer it to be. I'm not that 'super' myself.

Attached Files


Build a fire, vipers love the heat.


#4 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 05 June 2010 - 08:32 AM

Xenon works fine for me on my Ultrapin, and it works fine for Noah with his Pinball Wizard. I really don't think vp908 is causing the issue. Like I told UncleWilly - it is probably a conflict with the 904+ compiles and hyperpin or whatever other software you're combining in with it. BTW - vp 903 doesn't have any customized plunger support. So you're losing that too - which was one of the features Xenon uses.

Build a fire, vipers love the heat.


#5 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 05 June 2010 - 08:33 AM

Sorry, DIY kit is the Pinball Wizard Controller. Tring out the 10%

The DXtweak2 is a utility to change the calibrations to the Pinball wizard.

http://www.wingmante.../gadgets.htm#DX Tweak 2

H4CK3R

#6 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 05 June 2010 - 08:36 AM

You've beta tested software before - why not try this without dxtweak or other software interfering?

Build a fire, vipers love the heat.


#7 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 05 June 2010 - 09:00 AM

Doing Both, Tring it without the tweaks, and then opening it with to see where the values are. Posting video without dxtweaks on, to show you how jumpy it is.




This photo shows the min, center, and max that it reaches, basically the range of motion. They all bounce all over the place. Which i will show you in the video.

I have not made any changes in the setting to the PBW, just showing you the stats. So you get an idea of how its behaving.

Would like to see others that have the PBW device to see what results they have, maybe a higher range of motion, lower?

Also fixed the Volume issue, I HAD joy10, 11 and 12 hooked up to mercery switches, and re programed them with xpadder to use for z, space bar, and / . I deleted the xpadder, and un hooked the mercry switches so that the only thing I am testing is straight 908. No clue why a joystick button being reprogramed for keyboard keys would also trigger volume keys, but they no longer pop up =)

H4CK3R

Edited by H4CK3R, 05 June 2010 - 09:39 AM.


#8 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 05 June 2010 - 09:31 AM



Video of it Bouncing. No mods or tweaks made.



Ran TZ with the 10% 9.08. Opened up DXtweaks to show stats.

H4CK3R

Videos are still being processed.



#9 unclewilly

unclewilly

    sofa king.....

  • VIP
  • 5,173 posts
  • Location:Baltimore, Maryland

  • Flag: United States of America

  • Favorite Pinball: tz, tom, big hurt, who dunnit



Posted 05 June 2010 - 12:22 PM

hey destruk,
I'm fairly familiar with object oriented c++. it's been a few years since I really did any work with it. how would I go about taking a look at the source code? do I just need to sign up over at source forge and then I'd get access to the code. I'd love to pitch in if there is anything I could do to help out.

"it will all be ok in the end, if it's not ok, it's not the end"
 
Monster Bash VP10 WIP https://dl.dropboxus... (vpx)WIP15.vpx

uw2.gif


#10 Wizards_Hat

Wizards_Hat

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 1,258 posts
  • Location:Manchester, UK

  • Flag: United Kingdom

  • Favorite Pinball: STTNG




  • Trophies:

Posted 05 June 2010 - 12:25 PM

QUOTE (destruk @ Jun 5 2010, 06:44 AM) <{POST_SNAPBACK}>
The code has been available here for three months now. Even with other pinball editors to choose from, Visual Pinball could use some love. I don't have professional c++ programming skills, so what I can do with it is quite limited. Right now we just have me working on it, and I'm making quite slow progress on my own. This is a 908 beta with a 3% dead zone for pinball wizards and ushock motion boards, and it has a fix for the keyboard buffer with messageboxes.

If you know how to program GUI options, DirectX, or even file interaction, I'd appreciate the help to move this forward.

vpinball.sourceforge.net
Destruk

I am willing to help in anyway I can - unfortunately I don't actually have experience with c++.
I'm sure it's not that difficult for me to pick up given what I do have experience of and I have had a look over the code and it all seems to "make sense" - i.e. I read it and go "oh ok, that's how that works", rather than "huh? wha...?". So I might be of some use, but can't give a confident shout out to help.

You say it could "use some love" - is there a to-do list you have? A list of "needs"? A list of "wants"?
Can we look to delegate some tasks rather than getting anyone offering help all doing the same thing? (not that this thread seems inudated with responses offering help!)
Due to real life, I will have much more freetime from the middle of July to the end of August rather than right now, but I'll do what I can.

Regards,
Dan.
A wizard only needs one ball...but can handle six.

#11 Noah Fentz

Noah Fentz

    'Rasslin' Fan

  • VPF Administrator
  • 12,271 posts
  • Location:South Lyon, MI

  • Flag: United States of America

  • Favorite Pinball: Whitewater

  • PS3 Gamer Tag: noahfentz


Contributor

Posted 05 June 2010 - 03:45 PM

H4CK3R, your problem is definitely in the calibration step. This is my PBW's readings. They both use the same Mot-Ion board...


IdleReel.gif RumbleDMD.jpg HS2-DMD.jpg SBM.jpg ww_logo.jpg EK.jpg

 
T2.jpg Sorcerer.jpg Breakshot.jpg Firepower.jpg GorGar.jpg StarTrek.jpg


My Photobucket Resources
Whether You Believe You Can, Or You Can't, You Are Right." - Henry Ford
The future of pinball lives, it just needs to be nurtured!
If you're here to stab me in the back, you're going to have to get in line.


#12 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 05 June 2010 - 06:28 PM

QUOTE (unclewilly @ Jun 5 2010, 06:22 AM) <{POST_SNAPBACK}>
hey destruk,
I'm fairly familiar with object oriented c++. it's been a few years since I really did any work with it. how would I go about taking a look at the source code? do I just need to sign up over at source forge and then I'd get access to the code. I'd love to pitch in if there is anything I could do to help out.



Dan/Wizard's Hat - It should be possible to set the deadzone for VP with a slider bar - that's one of the few things regarding GUI that could be done. I have some code to do that but it's for DX8 and VP still uses DX7, so I'm not sure if it's compatible. I'd like to be able to set default options for all the possible objects - so if you find yourself always using a trigger with a radius of 50, instead of 25, you would be able to set 50 to be the default for any new trigger. It'd be good to be able to copy objects while retaining their names - another interface/usability feature. Simply updating vp to use dx9 would be an improvement and fix some graphics compatibility problems. The 'shopping list' of wants far outstrips the shopping list of 'needs' at this point, and before 'delegating' - if that should even be done, we'd need a few more people actually working on it than just me. I wouldn't be 'in charge' and I wouldn't be telling anyone what to do - I'd prefer to simply have a list of ideas that anyone could pick up and complete if they desired.

As far as getting source code, I don't think it could be much easier. Download TortoiseSVN from
http://tortoisesvn.net/downloads

32bit or 64bit - install it.
The checkout path for vp is:
https://vpinball.svn...vnroot/vpinball

That will download all branches/tags/revisions for the project. The source code will be placed in the 'trunk' folder. Then open either vbatest2003 or vbatest2005

of course, by 'simply updating to vp9' - there is nothing quite simple about that.

Build a fire, vipers love the heat.


#13 shagendo

shagendo

    Hobbyist

  • VP Dev Team
  • PipPip
  • 19 posts
  • Location:Netherlands

  • Flag: ---------

  • Favorite Pinball: Twilight Zone

Posted 05 June 2010 - 06:44 PM

Hi Pinball Fans,

I am reasonably experienced in C++ development (although I spend most of my coding time with C#) and I would really like to help develop visual pinball further.
Ideally, there would be a list of needs and wants so anyone can take up a task and submit their code for addition in a new release.
Someone would then have to take up the role of project admin, responsible for merging and releases of the code.
It'll be interesting to see how we can go forward with this.

Best,
Sander



#14 destruk

destruk

    VPF Veteran

  • VPF Staff
  • 6,338 posts
  • Location:Colorado Springs, CO

  • Flag: United States of America

  • Favorite Pinball: Ultrapin!



Posted 06 June 2010 - 05:12 AM

Does this mean if I post a wish list of improvements to be made - that you'll start working on them? Because it really wouldn't be hard to make a list.

Build a fire, vipers love the heat.


#15 Gravy

Gravy

    Pinball Fan

  • VIP
  • 1,147 posts

  • Flag: Australia

  • Favorite Pinball: Simpsons pinball party



Posted 06 June 2010 - 08:45 AM

Has anyone considered putting out the call at a forum for coders? Might get plenty wanting to jump onboard to gain some experience with real world game design?

Hacker.... ouch thats some nasty problem you have there. I seem to remember heat causing some issues with the PBW hardware where the drift got worse the longer the system had been on. Is that the case for you too?

Whilst it shouldnt effect the PBW too much, have you got anything in your cab that might be causing excessive vibration such as an unbalanced fan or something? Subwoofer?

Pinball Addict


#16 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 06 June 2010 - 09:23 AM

QUOTE (Gravy @ Jun 6 2010, 01:45 AM) <{POST_SNAPBACK}>
Has anyone considered putting out the call at a forum for coders? Might get plenty wanting to jump onboard to gain some experience with real world game design?

Hacker.... ouch thats some nasty problem you have there. I seem to remember heat causing some issues with the PBW hardware where the drift got worse the longer the system had been on. Is that the case for you too?

Whilst it shouldnt effect the PBW too much, have you got anything in your cab that might be causing excessive vibration such as an unbalanced fan or something? Subwoofer?



I mounted the the PBW controller under the cab, away from any heat source.

I reconfigured the PBW so that I have a range of 400 now. From Min to max with center being center.

I went back to the Future Pinball tables and checked out there set up for it.

I like the fact that you can set deadzones, and adjust nudging globally from there. I hope we can import this into VP, so that each table I wont have to go in and adjust each table. I know a little bit lazy on my part.

Future pinball nailed the PBW settings perfect. I don't have any issue with it in that program.

I am also having issue with just one table with Xenon, yes I went ahead and reset my PC, no OC, running i7 with 8 cores all at 2.93. Win xp. I have no issue with the 9.03 running this table, but it gets stuck on stupid. with 907, and 908. Will post a video. I have tried with out UVP, and without HP. Its a hit or miss. Not really concerned with it, as it is only one table.

I can get it running if I assigned vp and uvp and pmame to separate cores, but I cant get the settings to stick.. IE each time i load it up, I have to set it.

How hard is it to code the 908 in multi thread?

Taking Videos. If there is anything anyone wants me to try, I am all for it =)

H4CK3R

#17 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 06 June 2010 - 11:01 AM

Did some testing with dead zones FP 3% dead zone


Keeping the same settings with VP908 10% dead zone I get






Now with UW table Xenon, runs fine out of Hyperpin, but gets stuck on stupid while running in Hyperspin.




If I run it with 903 It works perfect, no getting stuck.. Also notice alot less flipper lag with the 903. I get a few comments from people playing that the there is flipper lag, But I never noticed, as I am used to it by now.

Videos still processing

This is how I have the PBW installed, under the cab



H4CK3R

Edited by H4CK3R, 06 June 2010 - 11:55 AM.


#18 H4CK3R

H4CK3R

    Enthusiast

  • Silver Supporter
  • 185 posts

  • Flag: United States of America

  • Favorite Pinball: Tales from the Crypt

Posted 06 June 2010 - 01:18 PM

Fix the Xenon table, and speed up VP9 and UVP.

I went ahead and used a 3rd party application called TaskAssign.exe Once you load it up, and have it running, you can assign programs to differnt cores. I assigned HP to core 1, UVP to core2, VP to core 3. Now everything runs great, and Flippers are more responsive.

It will auto load up and assign each program to different cores when they are started up.

Works like a charm now.



#19 shagendo

shagendo

    Hobbyist

  • VP Dev Team
  • PipPip
  • 19 posts
  • Location:Netherlands

  • Flag: ---------

  • Favorite Pinball: Twilight Zone

Posted 06 June 2010 - 01:20 PM

@Destruk:

Yeah, that might just be the way to kick off.

I do not have any hardware other than my PC (none of Ultrapin's stuff sad.gif ) but if you could compile a list of things that are being asked for I would start with some simple task(s) to get acquainted with the code.

Looking forward to your list...

Sander


#20 Gravy

Gravy

    Pinball Fan

  • VIP
  • 1,147 posts

  • Flag: Australia

  • Favorite Pinball: Simpsons pinball party



Posted 06 June 2010 - 02:27 PM

Hacker,

I cant really find anything on Google with a quick search but Im wondering if an accelerometer can be affected by magnetic interference. You seem to have a couple of fans fairly close to the board which will have magnets in them, maybe try removing them temporarily or at least unplugging them for a test, they might be sending some vibration through the plyboard as well?

Its a long shot but you never know, the chip sure is going haywire over something.

Edit: I put a message on a tech forum I belong to in the electronics section and asked if magnetic fields affect accelerometers, I got this message from someone. "It depends on the design of the accelerometer.
I used to work on instrumentation grade accelerometers that used a force feedback loop detection method.
A fixed magnet would give them an offset and a fluctuating magnetic field would certainly produce a noisy output.

I assume your using a solid state device, in which case the datasheet will tell you if it is magneticly sensitive.

Other things to look at are noise on the DC supply and earth loops."

Edited by Gravy, 07 June 2010 - 11:35 AM.

Pinball Addict