Bally WIP Recreation BAM FP CiRQuS VoLTaiRe v4 (Bally 1997)

Future Pinball
Hello @Gimli

These are the first results of my trials.

I used Gin's Acrobats 3 DMDF (thanks @Gin ! šŸ‘) and extracted JPG images first from your Acrobats 3 GIF and then from videos I captured on WPC with OBS. At first, as you explained, the result was very much in favor of the DMDF solution (compare the DMDF image with the raw JPG image below). The JPG lacks details especially the dark colors.

_dmdf.png_jpg-raw.png

However, with the DMDF solution, I cannot display an animation and a message at the same time on the same DMD, which is necessary for Cirqus Voltaire. So I tried to understand why the display of a JPG image gave a bad result, although it had the right aspect ratio (768x192 or 4:1 like the DMD which is in 128x32). After many trials, I discovered that it was necessary to shift the JPG 2 pixels to the left and 2 pixels down for the JPG to be correctly displayed on the DMD (compare the shifted JPG image with the image DMDF below). Don't ask me why... It remains mysterious and mystical ! šŸ˜‰

_jpg recadrƩ-2+2.png_dmdf.png

For Cirqus Voltaire, I therefore think that I could use the JPG solution. I just have to set the video capture window with an offset of -2 in X and +2 in Y to directly produce a well-framed video that I can then process in VLC to extract all the JPGs I need. I will nevertheless do other trials on other animations to be sure that it works well.

If it's OK, maybe I'll do a tutorial as it might be useful for others.

Thank you for your help and advice.
I whish you a happy Canadian Thanksgiving !
Cheers ! šŸ¾

To be continued...
 
You definitely can superimpose text on dmdfs
 
Any Idea how many minutes worth of video the rom dump is.
Geez, if its more than 5 min this could translate into 4200 + images if calculated @ 14fps.

It's a good question @RwL !

I just took a video capture of the intro animation. At 15fps a few frames are missing. However, this already represents 400 images, of which around 300 are duplicates. It would be easy to eliminate the duplicates when there are several dozen in a row (this is the case when "Bally" then "presents" are displayed) but in the other cases (a few identical images following), that would be very long work. I will see what it gives in 8 fps and by eliminating the duplicates on "Bally" and "presents".
 
Last edited:
You definitely can superimpose text on dmdfs

I didn't think it was possible since both use fonts. But I tried and it actually works well.

MyDmd.QueueText "[f7]#[f3][y10]HELLO OUT THERE !", deNone, 1000, False
=> It displays the # image stored in font nĀ°7 and the text "HELLO OUT THERE !" above.

But I will have to synchronize the display of differents animations and texts that can be independent and it seems difficult that way. RwL used 2 different hologram DMD to display animations and messages separately so he didn't need to synchronize them.

And obviously this script won't help :
MyDmd.QueueText "[f7]#", deNone, 1000, False
MyDmd.QueueText "[f3][y10]HELLO OUT THERE !", deNone, 1000, False

=>It displays the # image stored in font #7 and then erase the image and display the text without image above.

Would you know a tip in scripting that could help me with this ?
 
I am not sure why but the JPG DMD looks sharper than the DMD font.

You might want to try the attached ZIP file. It makes the unlit pixels on the DMD black. Don't extract the ZIP but just rename the ZIP with the same name as the table. Then save it to the same folder as the table.

This script also helps:

xBAM.SetDefaultMatrixBaseColor 10, 0, 0

This script changes the background color of the DMD. The default is an RGB of 51, 0, 0 but that is too red for me. You can change it to any color but I find an RGB of 10, 0, 0 looks nice.
 

Attachments

  • UnlitPixelsSameColorAsBackground.zip
    2.8 KB · Views: 52
I didn't think it was possible since both use fonts. But I tried and it actually works well.

MyDmd.QueueText "[f7]#[f3][y10]HELLO OUT THERE !", deNone, 1000, False
=> It displays the # image stored in font nĀ°7 and the text "HELLO OUT THERE !" above.

But I will have to synchronize the display of differents animations and texts that can be independent and it seems difficult that way. RwL used 2 different hologram DMD to display animations and messages separately so he didn't need to synchronize them.

And obviously this script won't help :
MyDmd.QueueText "[f7]#", deNone, 1000, False
MyDmd.QueueText "[f3][y10]HELLO OUT THERE !", deNone, 1000, False

=>It displays the # image stored in font #7 and then erase the image and display the text without image above.

Would you know a tip in scripting that could help me with this ?
Of course Slam , Francisco and Polygame each have there own templates for this that I have used

i will try to synthesize for public consumption but I always have to relearn it
 
Thanks @Gimli

I just installed and tried it. It's rather intuitive and quite easy to use. And I see that dmdf fonts need much less memory than hundreds of JPGs.

So, I started to think about how to handle the synchronization between font based animations and text messages on the same DMD. I will study the vbscript guide to see how I can handle this synchronization. I'm thinking of using two sets of arrays to manage two queues : one for animations and one for messages.

Otherwise, I finished the (re)design of the "new" playfield dmd, included in a miniplayfield and rotated by 90 degrees. The result is excellent.

To be continued...
 
Thanks @Gimli

I just installed and tried it. It's rather intuitive and quite easy to use. And I see that dmdf fonts need much less memory than hundreds of JPGs.

So, I started to think about how to handle the synchronization between font based animations and text messages on the same DMD. I will study the vbscript guide to see how I can handle this synchronization. I'm thinking of using two sets of arrays to manage two queues : one for animations and one for messages.

Otherwise, I finished the (re)design of the "new" playfield dmd, included in a miniplayfield and rotated by 90 degrees. The result is excellent.

To be continued...
i have a tutorial on this ā€¦

 
Nice job on the DMD , Hope your Thanksgiving was enjoyable!
I found some time over the weekend to create a working bumper for the "Boom Balloon" using a miniplayfield.
It works fine, but only if Bam is setup correctly ( otherwise ball interacts with bumper while flush in playfield) under DEV options > miniplayfield> physics> collidable =Yes, move =Yes. When I launch table with BAM , the MOVE setting always defaults to >NO
I might have setup the script incorrectly (Z moves)? Not sure. I know Gimli has more experience than I do w/ miniplayfields.
I am hoping someone can fix this problem or tell me what I did wrong. I have a screen shot and zip file for table.
 

Attachments

  • CirqusVoltaire_V3.0WIP.zip
    35.4 MB · Views: 47
  • CirqusVoltaire_V3.0.png
    CirqusVoltaire_V3.0.png
    770.1 KB · Views: 45
The "new" playfield DMD displaying the dmdf intro animation :
_CirqusVoltaire_V3.0 WIP2.png
 
Nice job on the DMD , Hope your Thanksgiving was enjoyable!
I found some time over the weekend to create a working bumper for the "Boom Balloon" using a miniplayfield.
It works fine, but only if Bam is setup correctly ( otherwise ball interacts with bumper while flush in playfield) under DEV options > miniplayfield> physics> collidable =Yes, move =Yes. When I launch table with BAM , the MOVE setting always defaults to >NO
I might have setup the script incorrectly (Z moves)? Not sure. I know Gimli has more experience than I do w/ miniplayfields.
I am hoping someone can fix this problem or tell me what I did wrong. I have a screen shot and zip file for table.
You can code mp physics move and mp collidable

Your photo is mp_0 which is likely the one I used for RL

I will try to check tomorrow . Going away on Sunday for 2 weeks
 
Last edited:
Nice job on the DMD , Hope your Thanksgiving was enjoyable!
I found some time over the weekend to create a working bumper for the "Boom Balloon" using a miniplayfield.
It works fine, but only if Bam is setup correctly ( otherwise ball interacts with bumper while flush in playfield) under DEV options > miniplayfield> physics> collidable =Yes, move =Yes. When I launch table with BAM , the MOVE setting always defaults to >NO
I might have setup the script incorrectly (Z moves)? Not sure. I know Gimli has more experience than I do w/ miniplayfields.
I am hoping someone can fix this problem or tell me what I did wrong. I have a screen shot and zip file for table.

You need to add those options in script yourself. Some BAM functions require this.

Here is an example:

Dim Opponent_MP ' Xmin Xmax Ymin Ymax Zmin Zmax CenX CenY CenZ
Set Opponent_MP = xBAM.CreateMiniPlayfield( 680, 820, 799, 940, -50, 140, 750, 869.5, 45)

Opponent_MP.collidable = true
Opponent_MP.PhysicsMove = true
 
Last edited:
Thanks TerryRed, that fixed my problem.
Here is the exact code I added ( in Red) if someone needs it.
Call MiniPlayField_0.MoveTo( 355.83, 574.92, 30, 0, 0, 0, 1, .5)
MiniPlayfield_0.Collidable = true
MiniPlayfield_0.PhysicsMove = true
 
Hello @RwL

How can I spot the changes (script, objects ?) that you have made to take them into v3_WIP ? Did you add any comments in the script ?

I suggest marking script changes with tags to make it easier to copy from one version to another if needed. In my version, I marked the changes or additions with the tags '<LtJazz> (start) and' </LtJ> (end). It also helps me find the changes made in the event of a bug that I did not see immediately.

Example : changes made to fix the "#BUG03"

In the GLOBAL VARS section :
'<LtJazz> #BUG03
dim Start
dim Delai_apres_highscore
'</LtJ> #BUG03


In the script :
'<LtJazz> #BUG03
Start = True
Delai_apres_highscore = 100
'</LtJ> #BUG03
 
Hello @RwL

How can I spot the changes (script, objects ?) that you have made to take them into v3_WIP ? Did you add any comments in the script ?

I suggest marking script changes with tags to make it easier to copy from one version to another if needed. In my version, I marked the changes or additions with the tags '<LtJazz> (start) and' </LtJ> (end). It also helps me find the changes made in the event of a bug that I did not see immediately.

Example : changes made to fix the "#BUG03"

In the GLOBAL VARS section :
'<LtJazz> #BUG03
dim Start
dim Delai_apres_highscore
'</LtJ> #BUG03


In the script :
'<LtJazz> #BUG03
Start = True
Delai_apres_highscore = 100
'</LtJ> #BUG03

If no comments are made, you can compare the entire script of old and new versions using this tool:

 
img1.png

And the winner is...

img2.png

šŸ˜²šŸ˜ŸšŸ˜žšŸ„ŗšŸ˜«šŸ˜¢šŸ˜­

Understood : I give up !


To be continued...
 
That DMD work is hilarious :D

I do hope you are not giving up on the table development though!
 
Does this mean the 3 of us will be for ever immortalized as judges during a circus performance?
Nice job on the DMD, I know it is a lot of work.
 
Hi gentlemen !
@RwL @Gimli @GeorgeH @Gin @AnonTet and others...

I haven't finished yet but I made a demo of the table with the dmd in operation, many additional sounds, a resynchronization of game sequences with animations and sounds, a custom camera (and different views), many game rule fixes (to match animations), and bug fixes.

 
Awesome. Thanks for continuing the updates on this table.
Seen the video. Jawdrop
 
Hi gentlemen !
@RwL @Gimli @GeorgeH @Gin @AnonTet and others...

I haven't finished yet but I made a demo of the table with the dmd in operation, many additional sounds, a resynchronization of game sequences with animations and sounds, a custom camera (and different views), many game rule fixes (to match animations), and bug fixes.

I forgot all about this. It looks really nice! The DMD is cool. I never noticed it is placed on the backwall before which is just like the real table. It looks like you don't need a HUD. The ringmaster appears to move around more when it is raised than the real table but it looks good.

The physics looks like it may need some work. I could work on it if you wish or you might want to wait until JLou finishes his version of dynamic flippers to see if you like his flippers.

I am willing to add my version of lighting to it. I make the lighting switchable with several grades of light/dark.

I could also add JP's menu system where we just figured out how to be able to change the menu during a game. The menu fills the whole screen so we pause the ball movement when the menu is open.

My mod of "Space Shuttle" has the switchable lighting and the latest menu system if you want to check it out.
 
Forum activity
Help Users
You can interact with the ChatGPT Bot in any Chat Room and there is a dedicated room. The command is /ai followed by a space and then your ? or inquiry.
ie: /ai What is a EM Pinball Machine?
  • No one is chatting at the moment.
      Mibs Mibs: Popotte has posted a new reply in the thread "How Do I Move a DMD on the Backbox Using Script...
      Back
      Top