scapino
Pinball Wizard
- Joined
- Jun 23, 2003
- Messages
- 321
- Solutions
- 2
- Reaction score
- 65
- Points
- 35
Get it at...
http://www.nwlink.com/~scapino/Index.htm
and eventually at AJ's.
Release History
*****
Second Release v2.1
PacDude was kind enough to fix some things to gain a pretty good chunk of speed.
There are changes, both to the table, and to the script, so unfortunatly, you need the whole download again.
*****
First Release v2.0
What a monster this is! Sorry about its size, but since the effects on this table, like GI
flashing, the neon, and the ringmaster are so important, it required a LOT of graphics! With
this in mind, I put the script in a separate file, which needs to be in the same folder as
the table. Now if I can fix something in the script, you only need to download a small file,
instead of all the graphics again.
Speaking of monsters, you probably need a good speed machine to run this table. It runs great
on my 2.4 ghz P4, with 1 gig of ram, and a NVidia 5200 video card. It does skip a bit during
NEON multiball, because of the many large reels that make up the neon, switching all at once.
You should definatly turn of hardware acceleration. Also, if you expect smooth ball movement, all the time, dont bother downloading this table... :) Depending on the number of lights flashing at any time, and the number of balls on the table, at any given moment, the speed changes quite a bit. Suffice it to say, I was able to play well enough to join the circus, defeat Voltaire and score 150 million points, so it cant be TOO bad.
I have put menu choices for turning of the GI effects, the neon, and also switching between
fading playfield lights and simple on/off lights. When the Boom balloon is hit EVERY light on
the table (Playfield, GI and neon) flashes at the same time, it would REALLY skip badly. So I
was able to put in a menu choice that disables all the flashing, when the boom balloon is hit
(for 2 seconds). If you have a slow machine I would recommend turning off the GI, neon, boom
balloon, and fading lights. You'll miss the great light show, but that’s life.
While this version is far from perfect, its still great fun to play. I could
have done better, but it probably would have taken another 6 months. The big problem is it
did take 6 months, and I learned so much doing it, that to make it perfect would have
required scrapping everything and starting over again. :)
So I trudged along, determined to minimize the problems in my existing table, so I could
release it....FINALLY!
As I said, it came out pretty good. There are some visual anomalies (certain reels don’t quite match the background they are drawn on, due to my using an newer version render, later in the process). They are all real close and I don’t find the differences too annoying...:)
This table has the animated and incremental plunger. You can press and/or hold the down arrow
key to pull the plunger back, or the up arrow key to push the plunger in. Then just press enter to launch the ball.
I have been following Pac Dudes hunt for getting VP and VPM to play nice with each other, and
after this table I can really appreciate his work.
I have spent countless hours writing and re-writing code to get VPM to acknowledge ALL of the
VP switch state changes, but it really is a lost cause. Every once in a while a VP switch event WILL happen when VPM(the emulation) isn’t ready for it and it will go un-noticed. That’s just life in VPM land....
It happens a LOT with the magnets. VP allows you to hit the ball so fast, that the magnet doesn’t always have a chance to collect it. Its annoying but I suppose we have to live with it for now.
Luckily, the software for the real game is so well written that the game does compensate for
balls that don’t get kicked when they are supposed to, and switches that are not hit, when they are supposed to, and balls that are not caught when they are supposed to.
To make things simpler, I tried taking the load off VPM, by really separating the different functions of VP and VPM.
I tried to limit VPM do doing the bare minimum of what it supposed to do. Read switch states, activate solenoids and lights, and run the DMD.
I wrote my own Ringmaster mech, based on the real mech. I said to myself, what’s a motor, with a wheel on it and 3 switches that get hit by cams? In VP, its a timer, simply. So I made a timer, and I had it increment a count, which stood for the position of the wheel, and when
the count hit a certain number (in this case 0, 120, and 180), the switches that were supposed to be hit, were activated in VP by doing the controller.switch = true thing. The ringmaster down switch was at zero, the mid switch at 120, and the top position switch at 180, just the same positions of the switch hitting pegs, on the ringmaster wheel.
The 2 reasons I wrote my own ringmaster, instead of useing the pre-made mech in vbs, are...
1: I needed to know the possition of the ringamster at all times, for the animation...and...
2: I wanted to see if I could code an emulation of a mechanical device in VP.
In the spirit of just trying to emulate the real table, and to get a better understanding of
the way things work, I also eschewed the use of VP ball stacks. I built a 4 ball trough on
this table, similar to the real one, and also I made a 4 ball trough for the balls that go
into the subway. The regular VP stack was ALWAYS eating a ball at random, and never spitting
it back out. It was probably worse on my table, because the reels take so much processor
power, that it would get missed more often then on a traditional VP table.
My version misses occasionally too, I'm sad to say, but not as often. So don’t be supprised if once in a while, a ball will disappear into the ether, or worse, you find yourself batting
around eight balls. My apologies. I might have been able to trace down and re-write code to
make such an occurrence impossible, but it would have cost millions of dollars and thousands
of lives...:)
Oh, yes....On highwire multiball, all of the captured balls will not be released all at once.
Since I have an animated lock spike, I needed more control. I had to write a stackless highwire capture. This means each ball is kick out one at a time. Its a small thing, but necessary at the moment.
Here it is..have fun, and dont take it too seriouslly, its just a game. I probably wont get around to fixing any MAJOR issues for quite a while. I want to move on to other things. If anyone out there thinks they can fix something, feel free. Just let me know so I can also fix the version on my site (and give proper credit.) Just make sure the thing you fix is really fixed. The problems that crop up seem so random, that you will think you have it fixed, and then on the hundreth game, it shows up again. This has happened to me A LOT! And you wonder why I'm sick of working on it.....
*****
Thanks go out to Mr. Hide, for his great plastics scans.
VERY big thanks to my play testers,
Kabuki Joe
Mitchell
Pinball Ken
MatAllum
Mr. Hide
Ice Warm
Pincode
Special thanks to PacDude / Fuseball / wpcmame and everyone else
who recreated this table in the past. This version would ABSOLUTLY NOT have been
possible without your hard work, and attention to detail!
Enjoy Cirqus Voltaire!
Kurt Herman
scapino@nwlink.com
http://www.nwlink.com/~scapino/Index.htm
and eventually at AJ's.
Release History
*****
Second Release v2.1
PacDude was kind enough to fix some things to gain a pretty good chunk of speed.
There are changes, both to the table, and to the script, so unfortunatly, you need the whole download again.
*****
First Release v2.0
What a monster this is! Sorry about its size, but since the effects on this table, like GI
flashing, the neon, and the ringmaster are so important, it required a LOT of graphics! With
this in mind, I put the script in a separate file, which needs to be in the same folder as
the table. Now if I can fix something in the script, you only need to download a small file,
instead of all the graphics again.
Speaking of monsters, you probably need a good speed machine to run this table. It runs great
on my 2.4 ghz P4, with 1 gig of ram, and a NVidia 5200 video card. It does skip a bit during
NEON multiball, because of the many large reels that make up the neon, switching all at once.
You should definatly turn of hardware acceleration. Also, if you expect smooth ball movement, all the time, dont bother downloading this table... :) Depending on the number of lights flashing at any time, and the number of balls on the table, at any given moment, the speed changes quite a bit. Suffice it to say, I was able to play well enough to join the circus, defeat Voltaire and score 150 million points, so it cant be TOO bad.
I have put menu choices for turning of the GI effects, the neon, and also switching between
fading playfield lights and simple on/off lights. When the Boom balloon is hit EVERY light on
the table (Playfield, GI and neon) flashes at the same time, it would REALLY skip badly. So I
was able to put in a menu choice that disables all the flashing, when the boom balloon is hit
(for 2 seconds). If you have a slow machine I would recommend turning off the GI, neon, boom
balloon, and fading lights. You'll miss the great light show, but that’s life.
While this version is far from perfect, its still great fun to play. I could
have done better, but it probably would have taken another 6 months. The big problem is it
did take 6 months, and I learned so much doing it, that to make it perfect would have
required scrapping everything and starting over again. :)
So I trudged along, determined to minimize the problems in my existing table, so I could
release it....FINALLY!
As I said, it came out pretty good. There are some visual anomalies (certain reels don’t quite match the background they are drawn on, due to my using an newer version render, later in the process). They are all real close and I don’t find the differences too annoying...:)
This table has the animated and incremental plunger. You can press and/or hold the down arrow
key to pull the plunger back, or the up arrow key to push the plunger in. Then just press enter to launch the ball.
I have been following Pac Dudes hunt for getting VP and VPM to play nice with each other, and
after this table I can really appreciate his work.
I have spent countless hours writing and re-writing code to get VPM to acknowledge ALL of the
VP switch state changes, but it really is a lost cause. Every once in a while a VP switch event WILL happen when VPM(the emulation) isn’t ready for it and it will go un-noticed. That’s just life in VPM land....
It happens a LOT with the magnets. VP allows you to hit the ball so fast, that the magnet doesn’t always have a chance to collect it. Its annoying but I suppose we have to live with it for now.
Luckily, the software for the real game is so well written that the game does compensate for
balls that don’t get kicked when they are supposed to, and switches that are not hit, when they are supposed to, and balls that are not caught when they are supposed to.
To make things simpler, I tried taking the load off VPM, by really separating the different functions of VP and VPM.
I tried to limit VPM do doing the bare minimum of what it supposed to do. Read switch states, activate solenoids and lights, and run the DMD.
I wrote my own Ringmaster mech, based on the real mech. I said to myself, what’s a motor, with a wheel on it and 3 switches that get hit by cams? In VP, its a timer, simply. So I made a timer, and I had it increment a count, which stood for the position of the wheel, and when
the count hit a certain number (in this case 0, 120, and 180), the switches that were supposed to be hit, were activated in VP by doing the controller.switch = true thing. The ringmaster down switch was at zero, the mid switch at 120, and the top position switch at 180, just the same positions of the switch hitting pegs, on the ringmaster wheel.
The 2 reasons I wrote my own ringmaster, instead of useing the pre-made mech in vbs, are...
1: I needed to know the possition of the ringamster at all times, for the animation...and...
2: I wanted to see if I could code an emulation of a mechanical device in VP.
In the spirit of just trying to emulate the real table, and to get a better understanding of
the way things work, I also eschewed the use of VP ball stacks. I built a 4 ball trough on
this table, similar to the real one, and also I made a 4 ball trough for the balls that go
into the subway. The regular VP stack was ALWAYS eating a ball at random, and never spitting
it back out. It was probably worse on my table, because the reels take so much processor
power, that it would get missed more often then on a traditional VP table.
My version misses occasionally too, I'm sad to say, but not as often. So don’t be supprised if once in a while, a ball will disappear into the ether, or worse, you find yourself batting
around eight balls. My apologies. I might have been able to trace down and re-write code to
make such an occurrence impossible, but it would have cost millions of dollars and thousands
of lives...:)
Oh, yes....On highwire multiball, all of the captured balls will not be released all at once.
Since I have an animated lock spike, I needed more control. I had to write a stackless highwire capture. This means each ball is kick out one at a time. Its a small thing, but necessary at the moment.
Here it is..have fun, and dont take it too seriouslly, its just a game. I probably wont get around to fixing any MAJOR issues for quite a while. I want to move on to other things. If anyone out there thinks they can fix something, feel free. Just let me know so I can also fix the version on my site (and give proper credit.) Just make sure the thing you fix is really fixed. The problems that crop up seem so random, that you will think you have it fixed, and then on the hundreth game, it shows up again. This has happened to me A LOT! And you wonder why I'm sick of working on it.....
*****
Thanks go out to Mr. Hide, for his great plastics scans.
VERY big thanks to my play testers,
Kabuki Joe
Mitchell
Pinball Ken
MatAllum
Mr. Hide
Ice Warm
Pincode
Special thanks to PacDude / Fuseball / wpcmame and everyone else
who recreated this table in the past. This version would ABSOLUTLY NOT have been
possible without your hard work, and attention to detail!
Enjoy Cirqus Voltaire!
Kurt Herman
scapino@nwlink.com