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

Future Pinball
I like your developments but i'm not sure I understand them.
Problem being I knnow zero knowledge about graphics :D
 
I like your developments but i'm not sure I understand them.
Problem being I knnow zero knowledge about graphics :D
Objects that can "pierce" the playfield are kickers and ornamental holes.

The ringmaster "box" is nothing more than a kind of wider and deeper kicker (why didn't I think of it sooner ?) => so I modified an existing kicker model to make it bigger and deeper. And it works very well.

For the boom balloon bumper which can be retracted in the playfield, I just modified an existing ornamental hole by giving it the shape of the bumper. I have not yet tested what happens when the bumper retracts.

This allowed me to learn how to use Fpm editor and Milkshape.
 
I get it now. I can't do it because I can't use milkshape (I do have it but I'm not made for arts :D ) and also used fpmeditor before.

It really isn't about the tools but how to use them ;)
 
After a long silence 😴, I come to give a progress report on CV v4 which is still in development.

As explained above, I found a solution to remove the pseudo playfield existing since v1 (a simple surface) and bring the game back to the default FP playfield.
CiRQuS VoLTaiRe v4 WIP playfield.jpg

I modeled 2 objects able to insert themselves "in" the FP playfield :
  • a giant kicker for the Ringmaster "box"
  • a teardrop-shaped ornament hole for the Boom Balloon Bumper "box"

I also had to review the layout and dimensions of the cab. I made some adjustments to the physics. I modeled some special pegs (to reduce their height under certain ramps). I completely reviewed the mini-playfields management necessary to animate the Ringmaster.

Bringing the game back onto the default FP playfield now allows to benefit from reflections, shadowmaps and raycast shadows (not applicable on another surface)

CiRQuS VoLTaiRe v4 WIP shadows & reflection.jpg

To improve the shadows rendering, I added invisible lights (bulbs or flashers) raised relative to the playfield (This gives shadows with less acute angles).


To be continued...
 
Welcome back LtJazz!!! I am glad to see you again. I have a version of this table where I made the ramps perform better if you would like to use it.
 
+1 to the welcome back LtJazz. I really appreciate your dedication to Cirq table. I'm currently using your "EasyMatrix DMD manager" for my Theatre of Magic recreation as well as I felt the prioritized queue approach works quite well.
 
Welcome back LtJazz!!! I am glad to see you again. I have a version of this table where I made the ramps perform better if you would like to use it.
Hi @GeorgeH !

I remember. You sent me this version. Also, the first modification I made on v4 was about these 2 ramps. :wink:
 
+1 to the welcome back LtJazz. I really appreciate your dedication to Cirq table. I'm currently using your "EasyMatrix DMD manager" for my Theatre of Magic recreation as well as I felt the prioritized queue approach works quite well.
Thank you @madmrmax ,

I tried to comment as much as possible the code of my EasyMatrix DMD manager so that it can be reused by others. I'm glad to know that you wanted to use it for your project. I hope that the features you need are understandable, my comments being sometimes in English and sometimes in French.
 
Cirqus Voltaire v4 WIP : what was done, episode 2

I simplified and improved the neon (it is now just a single object) and I was able to remove the holograms (another legacy from v1) that allowed it to give a uniform light rendering from top to bottom. I modified its lighting settings (viva BAM !) so that it emits a bright and uniform light from top to bottom when it is lit (previously the "neon" flasher model only emitted a point light in the center like the other flashers, which justified the hologram trick).

It is now possible to choose the neon color in the settings (among 6) as seen below. The neon being a flasher, it lights (and colors) the ball and the playfield dynamically.

I modified the Ringmaster's rendering (viva BAM !) so that it appears to be lit from within when it is pulled out (although the Ringmaster is not a bulb, flasher or light type object). I also added a light with the same color as the neon in the Ringmaster's "box" that lights up when the Ringmaster is pulled out.
CiRQuS VoLTaiRe v4 WIP neon.jpg
As you can see, the Ringmaster is reflected nicely in the FP playfield now.
 
If I were adding DMDs to a new table, I would try easy DMD.

If you add more than 1 DMD to a table, there is a method that Flug developed on Medieval Madness where you don't have to duplicate code for each DMD. You can add as many DMDs as you want by adding a few lines of code to a generic section. It is still in use on the version I just posted. I have used it on some of Smoke's tables who only coded for 1 DMD.

I have been using your method for color DMDs on my table mods which you have probably noticed.
 
If you add more than 1 DMD to a table, there is a method that Flug developed on Medieval Madness where you don't have to duplicate code for each DMD. You can add as many DMDs as you want by adding a few lines of code to a generic section. It is still in use on the version I just posted. I have used it on some of Smoke's tables who only coded for 1 DMD.

Yes. This is also natively the case with EasyMatrix. Once determined/calculated/prioritized what to display (image, text and associated attributes), I store it in a variable and invoke the .Text method for each DMD. The display is thus identical and synchronous on each DMD.

PlayfieldDMD.Text = dmd_text
HudDMD.Text = dmd_text
 
Yes. This is also natively the case with EasyMatrix. Once determined/calculated/prioritized what to display (image, text and associated attributes), I store it in a variable and invoke the .Text method for each DMD. The display is thus identical and synchronous on each DMD.

PlayfieldDMD.Text = dmd_text
HudDMD.Text = dmd_text

Those 2 lines is all it takes? Flug's method is a little more complex but it is not dark to implement.
 
Those 2 lines is all it takes? Flug's method is a little more complex but it is not dark to implement.

To simplify, EasyMatrix works as follows :

- instead of having a queue as in FP, EasyMatrix manages 81 queues

- each queue is characterized by a layer and a level which determine its priority level for display :
a higher layer has priority over a lower layer
in the same layer, a higher level has priority over a lower level

- EasyMatrix manages 9 layers, each layer having 9 levels

- any "message" (image, text, ...) stored in a queue has a special attribute :
"above" : the "message" will be displayed above the "messages" present in the lower priority queues (if there are any)
"exclusive" : the "message" will be displayed in place of any "message" present in the lower priority queues (which will therefore be ignored)

- frame by frame, n times per second (this is configurable), the EasyMatrix engine goes through all the queues to determine what to display while taking into account the priorities. Before calling the .Text method of the DMD(s) to display a frame, EasyMatrix concatenates everything that needs to be displayed into a single variable dmd_text in the following order :
Layer 9
Level 9 : ([Background +] Font + [Attributes +] Characters)
Level 8 : ([Background +] Font + [Attributes +] Characters)
...
Layer 8
Level 9
Level 8
...
Layer 1

An empty queue is simply ignored. Concatenation stops when EasyMatrix encounters a queue element with the "exclusive" attribute​
 
About the Ringmaster...

As I was not very satisfied with the way the Ringmaster throws the ball in v3, I took advantage of the mini-playfields reconfiguration to completely modify it. The ball throw is now more reliable and the ball trajectory is visually more realistic.

This allowed me to implement the random event "sneaky lock" (with a specific animation on the DMD) that exists in "real life" : the Ringmaster throws the ball directly on the hiwire ramp (to the left behind the Ringmaster) which can allow to lock a ball directly.View attachment SneakyLock.mp4

I also implemented a random event "lucky strike" which is symmetrical to the "sneaky lock" event : the Ringmaster throws the ball directly on the neon ramp (to the right of the Ringmaster). This event can only occur in "Mod" version.

In order not to make the game too easy, the occurrence of these 2 events will be rare.
 
Judgment Day !

As thanks for their very valuable contributions, I added 3 new judges in v4 :

Anon Tet (to thank him for his many encouraging comments during the v3 development)
AnonTet.png

Rav (who continues to evolve BAM, offering many features that stimulate creativity)
Rav.png

JLou (physics wizard, who helped fill one of the main gaps in FP)
JLou.png
(Production note 🧐 : before opting for this design, I tried unsuccessfully to "pixelize" Isaac Newton or Albert Einstein in 32 x 40 pixels with 4 gray levels)


In advance, Lt Jazz decline all responsibility concerning the scores which will be awarded by these 3 judges in the game !
 
New lighting effects


Classic rotating beacon effect :



Light dimmer effect on a bulb type object :

- Progressive lighting (or extinction) of each bulb​
- Lighting of the big green ball when hit (lighting proportional to the big ball displacement)​


Light dimmer effect on a texture (without light source) :

- Lighting of the targets when hit​
- Lighting of textures when the ball passes​

Dynamic brightness of reflections on the DMD (script controlled) : intensity and color of the reflections vary dynamically depending on state of flashers (neon, 4 flashers, boom balloon, magnets,...)



I wish you all a happy new year
 
Last edited:
General chit-chat
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.
  • Chat Bot Mibs Chat Bot Mibs:
    Guest Alena has joined the room.
  • A (Guest) Alena:
    I’m looking for Contact (1933, Williams)
    Quote
  • A (Guest) Alena:
    (AI prompt) is contact available (1933 version)?
    Quote
  • ChatGPT @ ChatGPT:
    @, As of my knowledge cutoff in 2023, the 1933 version of the film "Contact" does not exist. It seems there might be a confusion with the title or the year. The well-known film "Contact" is a science fiction drama released in 1997, directed by Robert Zemeckis and starring Jodie Foster and Matthew McConaughey. It is based on the 1985 novel of the same name by Carl Sagan.

    If you are looking for a different film from 1933 or a film with a similar title, please provide more details so I can assist you better. If you are indeed referring to the 1997 film "Contact," it is widely available on various streaming platforms, DVD, and Blu-ray.
    Quote
  • A (Guest) Alena:
    No I mean the 1933 version of the pinball Contact
    Quote
  • D @ DLWood:
    New to FP. I'm on Linux and using Lutris. Have installed FP from the Lutris repo. It does not have BAM support so I can only play non-BAM tables. Some of the tables show up w/o a playfield image...how do I fix that?
    Quote
  • Chat Bot Mibs Chat Bot Mibs:
    sgtFREDO has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    DLWood has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    pinballron has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Alex3112 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    jupiter has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    JerryB. has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    gy85712 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    CORY75 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    wildman22 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Yolo222 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    vumvuri has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    PMarot has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Anthias has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    rickpask has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Pauli_666 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Cattlesnake has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    AchillesK has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    emanoel299 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Bwolf122 has left the room.
      Chat Bot Mibs Chat Bot Mibs: Bwolf122 has left the room.
      Back
      Top