UPBGE 0.3 Pinball Game Engine

Jobs done
Dictionary randomizer. done
Fruit reel feature to be added. done
Totem Pole. done
Magna ball feature to be added with BluePrintRandoms fire trail.blend. done
Pop up Carousel Target. done
Add BluePrintRandoms gamelogic_simple.py script from MouseDrag.Blend demo. done
A spinning bonus wheel to be introduced. done
Launch Ball Tray. done
DMD image video animation screen. done
method import aud. done
load imageTexture. done
Upgrade Text animation code logic rack .done

Jobs to be done
Particle animation in viewport render mode (if mode is switchable).
Text scroll over from left to right & right to left.
Text scroll up and down over.
Hud 123 z rotation.
Add more artwork.
More music to be added with a music lab theme invention.
Add/Improve on object decorations.
Upgrade apron force field attitude
Last score Scoreboard

Transfer to UPBGE 0.36.1
Transfer to Range Engine 1.4
Classical guitar recordings to be added.

UPBGE Pinball 3360b.30 Upgrade

    1. Renamed empty text object QText_Action10/20/30/40 to Action1/2/3/4
    1. In Obj MouseMovement Semsor removed the mouse look actuator. (Begin play mouse bug fix)
    1. In Addpnts_MagnaTrailer.py increased the score inc to 100.
    1. In QueueQtxt.py replaced global inPlay with QTxt[‘inPlay’] so that AddPnts_Dice_Roll.py does not run NotQueuedFullTiltPinball_Props.visible=True when QTxt[‘inPlay’]==0.
    1. In XYZ_Addforce.py replaced Ball_Prop.applyForce with Ball_Prop.playAction. A smoother ball roll through the glass tunnel.
    1. In main flippers increased the friction & parented a thin plane with a 0.05 collision margin. Flipper performance upgrade. (note to UPBGE developers: the collision margin needs a minus input
      capability so that the margin size grows towards the centre of the object, or maybe it could grow from the centre of the object towards the outside. Which would give you a better ball collision experience.)
    1. Removed collision from DropTarget 567. (bug fix)
    1. Repositioned the glass foorcefield & increased the collision margins.
    1. Reinstated Table Glass.001 collision physics which will reposition the ball when attempting to break through.
  • 10.Put module ‘Repo_LostBall.PlayfieldGlass’ in obj Glass Forcefield. (bug fix)
  • 11.Updated all apron force field meshes (note to UPBGE developers: the collision margin needs a minus input capability so that the margin size grows towards the centre of the object, or maybe it could grow from the centre of the object towards the outside. Which would give you a better ball collision experience.)
  • 12.Re organised the Playfield_Mesh library in the Out-liner which will aid the transfer period when appending from UPBGE Pinball skittles to Range Engine Pinball kick the Can table.
  • 13.In AddPnts_Dice_Roll.py introduced a control measure that will only run import Movie as script;script.Dice_True() when 2 balls in skittle room or 1 ball on the play field. (bug fix)
  • 14.Players Dmd scores now visible after game is completed. It will be Zeroed when the ball is launched.
  • 15.Removed module ‘GlassForceField.reposGlassForceFields’ from obj PlungerLaneTrigger Sensor2. (bug fix)
  • 16.In Obj ‘User Key Guide Room View’ introduced a control measure with the use of logic bricks which runs module ‘GlassForceField.CheckForcefieldPos.’ (just in case you click & don’t drag the ball) (critical bug fix).
  • 17.In ‘Gobbler3_BallPos.py’ indented Gobblers5_Props[‘BallOnSkittlePlayfield’]-=1 right in def/sub BOP1. (critical bug fix)
  • 18.In ‘Gobbler3_QManagers.py’ moved import ‘Gobbler3_BallPos as script;script.Zeroglobalinc’ 1/2/3/4/5 from sub Q_Ball1() /2/3/4/5 to a new position. (critical bug fix)
  • 19.Introduced ‘Gobbler5_QManagers.py’ which will delay the ball gobbler.
  • 20.In all Gobbler queue timers updated the ‘from message’ sensors. (memory joggers)
  • 21.In Gobbler1_BallPos & Gobbler2_BallPos.py changed the kickout xyz positions. (bug fix)
  • 22.More Sensor ‘message from’ corrections (memory joggers)
  • 23.Scaled down the Dice. (bug fix)
  • 24.Weeded ‘Gobbler3_BallPos.py’
  • 25.Obj ‘5_Gobbler’ with new sound file.

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link above:

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

UPGBE Pinball 3363b.30 Upgrade

  1. Straightened out the wonky plunger gate
  2. Removed the right & left flippers that run the action actuator & applied a .02 collision margin to FlipperLeft & Flipperright. Performance upgrade. (new configuration written in FlipperAction.py script & property physics)
  3. Manufactured a ball without collision that follows the ball with collision & no visibility, it has also been scaled down. The larger ball which has no collision will hug the apron & wall with its new .02 collision margin. (The ball without collision cuts through the extended collision margin & it looks more realistic when the ball is next to the mesh.) The larger collision margin will hopefully prevent the ball from breaking through the mesh, if it does the hidden force field should reposition the ball.)
    Note for UPBGE developers:- (The ball prefers a larger collision margin. If the collision margin moved from the centre outwards or from the outside inwards it would give you a better ball collision experience.)
  4. Renamed & reconfigured all hidden mesh force fields and applied .01 collision margin to the reposition ball mesh Force fields (FFs). The Repo_LostBall.py code has been reformatted.
  5. Removed Playfield_Mesh collision physics & introduced an Obj ‘1_Playfield_Mesh with Triangular collision for ball roll’. (Range Engine API 1.4 Quote, “triangle physic, most expensive, but most precise will apply collision to all triangulated polygons”, balls can move through mesh holes with this one.)
  6. Ball Launch Tray jam bug fix.
  7. Lengthened the Table perimeter. (Bug fix)
  8. Increased the dice drop on table distance & in obj Dice introduced module AddPnts_Dice_Roll.restoreDynamics_D1 which restores dynamics after the dice is dropped. As a result there is a different look to the animation. (Bug fix)
  9. All text animations with +str(ScoreNum) shortened. (which gives the text line more space for high scores. (Bug fix) - Txt lines to be extended
    10.Put the following memory jogger in Addpoints_Queue.py : # ‘if no Starburst() sub/def run def inplaystate()’.
    11.Turned the dice gobbler into a ball ramp/gobbler. (bug fix)
    12.Introduced the ball saver Obj SpinDiskRib.002 ‘SpinDiskRib_Action’ in AddPnts_BallColor.py under def StarGateAddJackpot():

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link above:

UPGBE Pinball 3365b.30 Upgrade

  1. More work done on the plunger lane ball stop.
  2. In Obj Ball per Game Quantity Selection unchecked property actuator that runs python module LaunchBall123.ParentBalls_To_Tray. Obj ParentBalls_To_Tray runs the latter module.
  3. Added more reminder notes to the scripts.
  4. LaunchBall123.py under def In remParentApronBallsKeySel() added B2/3.removeParent();B2/3.suspendDynamics() which will relocate the ball to its correct position during key selections. (minor bug fix)

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link above:

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

Game Features
1 - 4 Player selection,1 -3 Ball selection, High score Board, Slingshots, Bumpers, VariTarget, CarouselTarget, DropTasrgets, Targets, Totem Pole, Fruit Reel , Bonus Wheel & Score rankers, Loop circuit, Ball saver, Auto plunger, Bonus scores, Movie player, Audio music player
Dmd animations, Queue Text code, Bonus multiplier, Table Light Animations, Ball colour actions, Multi-Ball, Extra ball, Ball Trailer, Plunger Lane, Spindisk, Spinner hinge actuators, Match the Last 2 Digits, rollover lights, Magna ball, mouseover features & Design your own Table View feature.

UPGBE .30 Pinball 3367b Upgrade

  1. In all Obj Star bursts changed the message actuator ‘From’ memory jogger to ‘From Addpoints_Queue.py’
  2. In Q_Text_Animations.py & Q_Txt_Actions.py under def TestQ_Text_Animations() put the script.Append() at the end. bug fix (did not get a way with it during the Range Engine test)
  3. Replaced the left justification with centre justification on all Playfield Field & above Playfield Field mesh ranker score texts.
  4. In Q_Txt_Actions.py put the following memory jogger ‘(Objects rotation position)’ next to def actions() mass position comment
  5. In 2_TxtProps removed the unused property actuators.
  6. Deleted 1_Hud1Boarder Action which is no longer being used.
  7. In Q_Txt_Actions.py put speed variable next to the global declaration method.
  8. In Q_Txt_Actions.py under def Text_Action2() changed comment ‘xyz to left of object mass’ to ‘xyz to right of object mass’.
  9. In Q_Txt_Actions.py under if Txt2Props[‘Ani_Action’]==1 and Txt2Props[‘FrameCounter’]==1: removed " QText4Obj=scene.objects[‘QText4’];QText4=bpy.data.objects[‘QText4’];QText4.data.align_x=‘LEFT’ "
  10. In Q_Txt_Actions.py applied center justification to text Actions that works with the xyz centre of mass pivot location, applied left justification to text Actions that works with the xyz left of mass pivot location & Applied right justification to text Actions that works with the xyz right of mass pivot location.
    Removed all logic bricks & code that handled the latter amendments.

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link below:

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

Game Features
1 - 4 Player selection,1 -3 Ball selection, High score Board, Slingshots, Bumpers, VariTarget, CarouselTargets, DropTargets, Targets, Totem Pole, Fruit Reel , Bonus Wheel & Score rankers, Loop circuit, Ball saver, Auto plunger, Bonus scores, Movie player, Audio music player
Dmd animations, Queue Text code, Bonus multiplier, Table Light Animations, Ball colour actions, Multi-Ball, Extra ball, Ball Trailer, Plunger Lane, Spindisk, Spinner hinge actuators, Match the Last 2 Digits, rollover lights, Magna ball, mouseover features & Design your own Table View feature.
UPGBE Pinball 3400b.30 Upgrade

    1. In Obj PlungerLaneTrigger Sensor2 deleted unused ball sensor.
    1. Extensive pinball table theme change.
    1. Vertical Carousel introduced.
    1. Changes to table mesh which brings things in to line with the new theme.
    1. Plunger gate bug fix.
    1. All Obj near sensor now with a resetDistance value. (bug fix)
    1. More work done on the lights
    1. All carousel targets now rotate the carousel (bug fix).
    1. New Magna ball design introduced.
  • 10.New music Lab themes introduced
  • 11.Removed BOP=0 & State1 message sensor from Obj Players MultiBall Award Cntr.
    Game_Engine_Conditions.py Def EOB() now runs the state1 & zeroes the dims. (bug fix)

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link above:

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

Pinball features above

UPGBE Pinball 3412b.30 Upgrade

    1. In QueueQtxt.py introduced QMusic_message.append(QTxt[‘QMusic_message’]) & QMiniTheme_Vol_message.append(QTxt[‘Qmini_Theme_volume’]) which will synchronise the music & volume with the text action - all scripts that run text actions updated.
    1. QTxt[‘QMusic_message’]=" " & QTxt[‘Qmini_Theme_volume’]=.3 added to def Append(): in script QueueQtxt.py. (which will keep the music synchronised & at the right volume when the Q Text code runs without the QTxt[‘QMusic_message’]=“SSuite_Bass.Ogg” & QTxt[‘Qmini_Theme_volume’]=.1 code line.
    1. More music lab wav/ogg files added with big fixes
    1. Reversed the canvas deco image that sits on the outside right hand side of the Table perimeter. (bug fix) Tigger & Poo sign now facing in the right direction. The art deco was scanned from my own canvas images with some digital alterations applied.
    1. The following code line has been added to the vertical & the horizontal carousel script modules : if Car_WheelProps[‘CarDrpTgt1B8_Inc’]==0 or Car_WheelProps[‘CarDrpTgt1B8_Inc’]==4: QTxt[‘QTextBox’]="Carousel Rnkd "+str(ScoreNum)
    1. More work done on the venue. (must start work on the bungalow renovation next week)
    1. Skittle room exit rail ball jam bug fix.
    1. Reduced the music.py code with bug fixes. Note sometimes the music struggles to run when Tap is applied to a sensor
  • 10.In obj 5_Gobbler introduced a near sensor without tap applied that runs module Music.Mus_miniTheme1.
  • 11.In Drag_Ball1.py put B1.suspendDynamics() & restoreDynamics() in the right places. (bug fix).
  • 12.In AddPnts_Dice_Roll.py introduced import TableView1 as script;script.Load_View1() so that the dice rolls when the table is at the right angle. Else it continues to roll (bug fix).
  • 13.In QueueQtxt.py (bug fix) missing .clear arrays added.
  • 14.In QueueQtxt.py introduced QSprite_message.append(QTxt[‘QSprite_message’]) which will Queue the newly added Sprite Sheet animations. Recommend using Sprite generator LibreSprite-Windows-x86_32. (The Queue Text now has more space for the Bonus/Ranked addpoints display).
  • 15.Duplicated the Starburst1.py & FireAni1.py so that each screen runner has its own script. (bug fix)
  • 16.Have removed def Players_BonusPnt_Multiplier(): in AddPnts_SKR.py + renamed def Inc_JackPotAward(): to def Inc_SkittlesBonus_Award().
  • 17.In AddPnts_TgtCombiHit.py & Extra_Ball.py changed scene.objects[‘Plunger’] to scene.objects[‘Plunger.001’] (bug fix)

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link below:

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

Pinball features above

UPGBE Pinball 3414b.30 Upgrade

  1. Added the following note to TableView1/2/3/4/5.py under def Load_View1a(): # You will also get a console ‘key error’ during build which is harmless. Once you have saved to globalDict the ‘key error’ will no longer occur.
  2. Obj.worldOrientation code line reductions In TableView1.py under def Load_View1a(): (Used the code lines below to extract the numbers from the matrix/vector, allowing the globalDict() which runs the pickle to do its save/load method)
    Hud5Orient=TxtP_Hud5_Props.worldOrientation;Hud5OrientNum=[value for row in Hud5Orient for value in row]
    Hud5OrientM1=Hud5OrientNum[0:3];Hud5OrientM2=Hud5OrientNum[3:6];Hud5OrientM3=Hud5OrientNum[6:9]
    bge.logic.globalDict[‘Hud5OrientM1’]=Hud5OrientM1;bge.logic.globalDict[‘Hud5OrientM2’]=Hud5OrientM2;bge.logic.globalDict[‘Hud5OrientM3’]=Hud5OrientM3
  3. Removal of unused logic bricks from the Obj Hud properties.
  4. Removed Rigid body from the flippers that are run by the action method. (performance upgrade)
  5. More decoration work done on Venue walls, SpinDisk.001, 002, HUD5 Bonus Text & the Bonus Wheel.

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link below:

2 Likes

Jobs done
Dictionary randomizer. done
Fruit reel feature to be added. done
Totem Pole. done
Magna ball feature to be added with BluePrintRandoms fire trail.blend. done
Pop up Carousel Target. done
Add BluePrintRandoms gamelogic_simple.py script from MouseDrag.Blend demo. done
A spinning bonus wheel to be introduced. done
Launch Ball Tray. done
DMD image video animation screen. done
method import aud. done
load imageTexture. done
Upgrade Text animation code logic rack .done
Add more artwork. done
More music to be added with a music lab theme invention. done
Hud 123 z rotation. done
Transfer the ball colour script to the visible ball. done
Text scroll over from left to right & right to left. done
Text scroll up and down over. done

UPGBE Pinball 3425b.30 Upgrade

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)

Game Features
1 - 4 Player selection,1 -3 Ball selection, High score Board, Slingshots, Bumpers, VariTarget, CarouselTarget, DropTasrgets, Targets, Totem Pole, Fruit Reel , Bonus Wheel & Score rankers, Loop circuit, Ball saver, Auto plunger, Bonus scores, Movie player, Audio music player
Dmd animations, Queue Text code, Bonus multiplier, Table Light Animations, Ball colour actions, Multi-Ball, Extra ball, Ball Trailer, Plunger Lane, Spindisk, Spinner hinge actuators, Match the Last 2 Digits, rollover lights, Magna ball, mouseover features & Design your own Table View feature.

  1. In Object Ball1/2/3/4/5 unchecked message sensor ‘From LaunchBall123.py’ & transferred message sensor to Object Ball1/2/3/4/5_Image

  2. Plus added Silver1Ball/2/3/4/5 Boolean & Ball1Color/2/3/4/5 float to the add game Ball1/2/3/4/5_Image properties. (minor ball colour bug fix)

  3. Introduced the the following Dmd animation text scrolls :
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Scroll_rightOver”
    QTxt[‘QTextBox’]=“123456”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Scroll_rightOver_Cntr”
    QTxt[‘QTextBox’]=“123456”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Scroll_leftOver”
    QTxt[‘QTextBox’]=“123456”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Scroll_leftOver_Cntr”
    QTxt[‘QTextBox’]=“123456”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Jumpinto_Centre_Scroll_Dwn_Over”
    QTxt[‘QTextBox’]=“1234567890”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Jumpinto_Centre_Scroll_Up_Over”
    QTxt[‘QTextBox’]=“12345”#+str(1000)
    script.Append()# to Queue_Text_Actions
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Centre_Scroll_Down_Over”
    QTxt[‘QTextBox’]=“123456789012345”#+str(1000)
    script.Append()
    import QueueQtxt as script;QTxt[‘QText_Ani_message’]=“Centre_Scroll_Up_Over”
    QTxt[‘QTextBox’]=“1234567890123450”#+str(1000)
    script.Append()

  4. In some of the add points scripts reformatted the random code with Qtext variations. (repeat code reductions)

    randnum1=random.randrange(0,7) #(start,stop,step) stop digit is not returned
    import QueueQtxt as script
    if randnum1==0:QTxt[‘QText_Ani_message’]=“Q_Txt_Actions41”
    if randnum1==1:QTxt[‘QText_Ani_message’]=“Q_Txt_Actions42”
    if randnum1==2:QTxt[‘QText_Ani_message’]=“Cntr_scroll_rightOver”
    if randnum1==3:QTxt[‘QText_Ani_message’]=“Scroll_leftOver_Cntr”
    if randnum1==4:QTxt[‘QText_Ani_message’]=“Scroll_leftOver”
    if randnum1==5:QTxt[‘QText_Ani_message’]=“Scroll_rightOver”
    if randnum1==6:QTxt[‘QText_Ani_message’]=“Centre_Scroll_Up_Over”
    if randnum1==0 or randnum1==1 or randnum1==2 or randnum1==3 or randnum1==4 or randnum1==5 or randnum1==6:
    QTxt[‘QSprite_message’]=“Spinner”
    QTxt[‘QTextBox’]="Ranked "+str(ScoreNum)
    QTxt[‘QMusic_message’]=“SkillShot_Vintage_Rack 1.Ogg”
    QTxt[‘Qmini_Theme_volume’]=.1
    script.Append()

Please enjoy & rob what you can from it if you wish.

Upgrades with bug fixes to UPBGE Pinball V3 can be downloaded from the Dropbox link above:

Jobs to be done

  1. Interactive mission objective bonus features to be added

  2. Add a cola can Invader feature to the skittle room.

  3. Introduce musikai ‘UPBGE_0.3_Kran’ feature
    plus: build on the ‘Space Ship racing through the Warp Tunnel’ feature with mouse/keyboard commands which will control the space ship as it travels through the tunnel

  4. Return table to the last Table view after dice roll (add a match the dice roll feature)
    plus: add a tunnel to the skittle room.

  5. Add a selection option that will allow you to match the dice roll number or run the Space Ship racing through the Warp Tunnel’ feature after dropping the skittles.

  6. Transfer Table1 view short hand code to all other table views.

  7. Transfer to UPBGE 0.36.1

  8. Next Table Jobs to be done
    Manufacture Classical Guitar shaped table +
    Classical guitar recordings to be added.

1 Like

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Minimum Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)
Recommended Graphic Card Nvidia Gforce 4060 & an intel i9. (to achieve approx 60 fps))

Game Features
1 - 4 Player selection,1 -3 Ball selection, High score Board, Slingshots, Bumpers, VariTarget, CarouselTarget, DropTasrgets, Targets, Totem Pole, Fruit Reel , Bonus Wheel & Score rankers, Loop circuit, Ball saver, Auto plunger, Bonus scores, Movie player, Audio music player
Dmd animations, Queue Text code, Bonus multiplier, Table Light Animations, Ball colour actions, Multi-Ball, Extra ball, Ball Trailer, Plunger Lane, Spindisk, Spinner hinge actuators, Match the Last 2 Digits, rollover lights, Magna ball, mouseover features & Design your own Table View feature.

UPBGE 30 Pinball 3481 Upgrade Notes:

  1. When all skittles in skittle room are dropped a crystal diamond shape will appear which can be controlled by the left & right arrows or mouse click button so that you can select one of the following two added features.

a. Match the dice roll number which will give you 100000 if matched or
b. Run the Wormhole tunnel & shoot as many objects as you can before you lose three lives. Attempt to destroy all stars & score 1000000 points.

  1. Unchecked the multiball test key

  2. In AddPnts_Dice_Roll.py introduced a Inc3 to control the addpoints/animation & reconfigured the score array so that it looks at the right number.

  3. Drop_Target_SKR_Scr_Amt = scene.objects[‘Drop_Target_SKR_Scr Amt’] added to AddPnts_Dice_Roll.py so that points can be added to the skittle room score amount.

4.Removed the += from Starburst1006 in Addpoints_Queue.py.

5.Wrapped the following code around some of the queue text animation codes to prevent them from being repeated

if not 'init1' in own:
        own['init1'] = True

if 'init1' in own: del own['init1'] must be strategically placed some where which will allow the code to be reused again.

if the above is unsuitable an increment style code can be utilized to prevent the Queue text from being repeated. 

6.In Bonus Wheel Arrow changed the greater than to equal. (Bug fix)

7.Decoration upgrade in Skittle room.

8.In Q_Text_Animations.py & Q_Txt_Actions.py reduced the code & the property objects in property Queue_Text_Actions.

9.QueueQtxt.py updated to reflect the above work done in Q_Text_Animations.py & Q_Txt_Actions.py.

10.In In Q_Text_Animations.py & Q_Txt_Actions.py spliced the QText4Obj[‘TextBox’]. This will allow you to write a longer text line. However, (Note presently Text lines greater than 20 have not been synchronised yet except for the jump into centre which is synchronised with ;QText4.data.align_x=‘CENTER’ #) Performance upgrade (other text features to be upgraded for maximum amount of texts that will fit on the display.

11.Maximun text length for Q_Txt_Actions1 is still 20.

12.Q_Txt_Actions animations can only be synchronised with UPBGE’s action animation tools.

13.In Q_Text_Animations.py & Q_Txt_Actions.py added an extra inc to the start time which gives the TextBox_Len time to update (Major Bug Fix)

14.Set 100% Hysteresis.

15.In game Physics, Time Scale reduced to .9, Physics deactivation reduced to .2, Gravity increased to 30. (FPS increase during game play) Performance upgrade

16.Reduced the lens end distance in the scene cameras. (FPS increase) Performance upgrade

17.Major HUD Key selection bug fixes.

18.In Addpoints_Queue.py repositioned the inPlaystate() (Bug fix)

19.In QueueQtxt.py introduced a QTxt[‘message_Int’]=40000 for the QTxt[‘QText_Ani_message’]=“Jumpinto_Centre” feature which will keep the text animation on for a chosen time period. To reset the animation place QText4Obj[‘Jumpinto_Centre_Time_On’]=40 in a strategical position somewhere in the script which will end the animation.

20.If the following format is written you will get a fast animation display.

import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=8;QTxt['QTextBox']="XxxX";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=7;QTxt['QTextBox']="xXXx";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=6;QTxt['QTextBox']="XxxX";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=5;QTxt['QTextBox']="xXXx";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=4;QTxt['QTextBox']="XxxX";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=3;QTxt['QTextBox']="xXXx";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=2;QTxt['QTextBox']="XxxX";script.Append()    
    import QueueQtxt as script;QTxt['QText_Ani_message']="Jumpinto_Centre";QTxt['message_Int']=1;QTxt['QTextBox']="xXXx";script.Append()

21.In 1_Pinball Comments added the following comments: Script state 16 = Game Logic brick state 5 & Script state 32 = Game Logic brick state 6.

22.In Object flippers added tilted state 3 just in case it tilts when it is in state 3 + flippers will return back to the flip Down position. (bug fix)

23.All action flippers replaced with the movement code configuration. (Flipper performance ugrade & bug fixes)

24.Put the following import QueueQtxt as script configuraion in all Addpoint?.py which will reduce the time on period for ranked message that has a regular event.

    import QueueQtxt as script
        QTxt['QText_Ani_message']="Jumpinto_Centre"
        QTxt['message_Int']=30
        QTxt['QSprite_message']="VCarTgt"
        QTxt['QTextBox']="Ranked "+str(ScoreNum)
        QTxt['QMusic_message']="Mus9a.Ogg"
        QTxt['Qmini_Theme_volume']=.1
        script.Append()      

25.Added the above sequence to the Rollover Addpoints.py

26.Hit the skittle room entry round target gate 3 times to drop the gate. Other target combinations will also drop the skittle room entry target gate. After 1000 mls the gate will raise & close the entry to the skittle room.

27.Changed sound in flippers to flipper end. (Bug fix)

28.Changed position of middle flippers ball reposition forcefield. (Bug fix)

Down Load Link
Ublender Pinball WC – Dropbox

2 Likes

Latest Video

1 Like

Please find enclosed UPBGE 0.3 Pinball V3 Game Upgrade.
Minimum Recommended Graphic Card Nvidia Gforce 2070 & an intel i7. (else it will struggle)
Recommended Graphic Card Nvidia Gforce 4060 & an intel i9. (to achieve approx 60 fps))

Game Features
1 - 4 Player selection,1 -3 Ball selection, High score Board, Slingshots, Bumpers, Targets & Loop rankers, Loop circuit, Ball saver, Auto plunger, Bonus scores,
Dmd animations, Queue Text code, Bonus multiplier, Table Animations, Ball colour actions, Multi-Ball, Extra ball, Ball Trailer, Plunger Lane,
Spinner hinge actuators, Match the Last 2 Digits, rollover lights & a mouseover feature.

UPBGE.30 Pinball 3483_008 upgrade notes

  1. Corrected the actions that was duplicated from the round targets for the Skittle room entry round target (bug fix)

  2. Put import AddPnts_RndTgtSKREntry as script;script.ZeroDims() in the ZeroDims.py script (bug fix)

  3. Deleted animation bools which have been replaced by the QTxt[‘Ani_Action’] dim

  4. Must run save first before introducing a new load bge.logic.globalDict written in Table view scripts

  5. Table view code reductions. All views written the same way as Table view 1 reduction methods.

  6. blf scroll over, one off/on at a time and jump into centre text routines introduced which uses less frames per second & could replace the animation text that uses more frames per second during game play if needed. (The Dmd will accommodate 25 blf style texts.) More blf text routines to be introduced.

  7. Q text data object Animation now can manage text lengths up 29. (Maths code introduced to replace the long arrays)

  8. Replaced message_Int with Jumpinto_Centre_Time_On dim/array making it easier to understand.

  9. Changed the Hud scale amount to .001

  10. Replaced data.body jumpinto centre Qtext with QTxt[‘QText_Ani_message’]=“blfJumpinto_Centre” which uses less frames per second during game play (performance upgrade)

  11. For blf: When adjusting Hud1 you can press NumberpadKey 8 for the blf text adjustment. The blf does not use the parent method for Dmd attachment. However, it has been set up with a (x,y) movement code which will enable users to position the blf text during Hud1 position setups. Before using the movement keys make sure the blf text is drawn on the screen. The blf text can be moved with the Hud at the same time using the same Hud1 movement keys. The blf text can also be moved separately without the Hud moving, which is good for the final adjustment. (use the up/dwm arrows,left/right mouse button keys to move the txt) Do not forget to save the view so that the blf draws the text in the right place.

Upgrades with bug fixes to Pinball V3 can be downloaded from the Dropbox link above: