Jump to content



Photo
- - - - -

Adding additional scoring to Gottlieb "Spirit" table

Scoring

  • Please log in to reply
10 replies to this topic

#1 astroheadbanger

astroheadbanger

    Hobbyist

  • Members
  • PipPip
  • 11 posts

  • Flag: United States of America

  • Favorite Pinball: Guns N' Roses

Posted 25 August 2025 - 05:24 AM

Hey everyone!
 

So I'm heavily modifying an old 1982/1983 Gottlieb "Spirit" table into a brand new creation resembling nothing like the original.  I'd like to add some new modes to the game that really spice up the play to make it even more distinct.  As part of that, I'd like to add scoring based on certain events that happen that the original game didn't track.  I've got all that figured out, but I don't know how to manipulate the score (which seems like it should be the simplest thing!).

I've searched the internet for the proper routines or ways to address the scoring, but so far I'm striking out!  Is this even possible with this old of a ROM-based table?  Is there a built-in VPX attribute of the table for the score that I'm unaware of?

I came across a few people talking about adding this subroutine, but it doesn't seems to work:

Sub AddScore(Points)
    Score=Score+Points
    ScoreText.Text=Score
End Sub

'  Add 1000 points...
AddScore 1000


Any ideas?  Anyone have some sample code to help a guy out?

Thanks,

 

Astroheadbanger



#2 bigus1

bigus1

    Pinball Fan

  • Members
  • PipPipPipPip
  • 972 posts
  • Location:Brisbane, Australia

  • Flag: Australia

  • Favorite Pinball: Firepower

Posted 25 August 2025 - 06:11 AM

Not much you can do with a rom table other than re-use an existing switch number in other places - like use a rollover switch number on a new switch that you add.



#3 astroheadbanger

astroheadbanger

    Hobbyist

  • Members
  • PipPip
  • 11 posts

  • Flag: United States of America

  • Favorite Pinball: Guns N' Roses

Posted 25 August 2025 - 06:56 AM

Not much you can do with a rom table other than re-use an existing switch number in other places - like use a rollover switch number on a new switch that you add.


Thanks for the quick reply, @bigus1!  Yeah, I was afraid of that after a few hours of searching turned up nothing useful.  Thanks for the switch suggestion, but I don't think that will work with what I had in mind.  Oh well, perhaps on the next table...

Maybe they can just be "bragging points" that I display on the DMD when a player's turn is over (but don't actually accumulate on the real score).  Anyway, back to the drawing board...
 


Edited by astroheadbanger, 25 August 2025 - 06:57 AM.


#4 Itchigo

Itchigo

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,752 posts
  • Location:Chicago, Illinois

  • Flag: United States of America

  • Favorite Pinball: All




  • Trophies:

Posted 25 August 2025 - 10:59 AM

You can disconnect Pinmame from the script and manually code the switches.


Founder of Rogue Pinball! https://roguepinball.com/index.php                 Making Pinball great again!!

 

partylikeits1776-.jpg


#5 astroheadbanger

astroheadbanger

    Hobbyist

  • Members
  • PipPip
  • 11 posts

  • Flag: United States of America

  • Favorite Pinball: Guns N' Roses

Posted 25 August 2025 - 02:21 PM

You can disconnect Pinmame from the script and manually code the switches.


Thanks for the suggestion.  Looks like there are 64 switches on this table (https://www.pinitech...Gottlieb_Spirit), with 23 that aren't used, so that might be do-able.  I'm sure that would change how the scoring works on the backglass too, so even more work.  I'll have to decide if I want to invest that much extra time on this table...

Do you know of any tables out there where someone did that, @Itchigo?


Edited by astroheadbanger, 25 August 2025 - 02:25 PM.


#6 Itchigo

Itchigo

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,752 posts
  • Location:Chicago, Illinois

  • Flag: United States of America

  • Favorite Pinball: All




  • Trophies:

Posted 26 August 2025 - 01:25 AM

 

You can disconnect Pinmame from the script and manually code the switches.

Thanks for the suggestion.  Looks like there are 64 switches on this table (https://www.pinitech...Gottlieb_Spirit), with 23 that aren't used, so that might be do-able.  I'm sure that would change how the scoring works on the backglass too, so even more work.  I'll have to decide if I want to invest that much extra time on this table...

Do you know of any tables out there where someone did that, @Itchigo?

 

I don't know of anyone who has done this, but I'm kind of surprised that no one has actually. You just remove the script that vpinmame is looking for and modify from there. At that point it's only a vp table, not a vpm. Then you change the rules as you like.

 

You only need the named switches that are on the vp table, not all 64 if they're not all being used. You'll have to modify some script, but if you understand script it won't be very hard. You're basically rewriting the rules while keeping the table, and deleting the vpm stuff so it's not looking for a rom.


Founder of Rogue Pinball! https://roguepinball.com/index.php                 Making Pinball great again!!

 

partylikeits1776-.jpg


#7 anthias

anthias

    Pinball Fan

  • VIP
  • 783 posts

  • Flag: Australia

  • Favorite Pinball: Lizards In The City



Posted 26 August 2025 - 01:39 AM

I started my vpx journey taking data East's 25th anniversary playboy and completely gutting the script. I replaced the entire script withy own, removing all references to the rom. It's the way to go if you want anything major changes in rules.

In my quick! Silver! Table I added scoring using the method bigus mentioned, ten triggers along the ramp each trigger a roller, given a cumulative point score for the ramp.

I see no reason you couldn't manually code your mode with lights etc and at the score points trigger the existing switch multiple times to the score value you want fur your mode. It would be easier than a new script but you have less control over the results.
screnstoaug21small.gif

#8 Itchigo

Itchigo

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,752 posts
  • Location:Chicago, Illinois

  • Flag: United States of America

  • Favorite Pinball: All




  • Trophies:

Posted 26 August 2025 - 01:44 AM

I started my vpx journey taking data East's 25th anniversary playboy and completely gutting the script. I replaced the entire script withy own, removing all references to the rom. It's the way to go if you want anything major changes in rules.

In my quick! Silver! Table I added scoring using the method bigus mentioned, ten triggers along the ramp each trigger a roller, given a cumulative point score for the ramp.

I see no reason you couldn't manually code your mode with lights etc and at the score points trigger the existing switch multiple times to the score value you want fur your mode. It would be easier than a new script but you have less control over the results.

Duh, I completely forgot you did a couple. Been a long day lol.


Founder of Rogue Pinball! https://roguepinball.com/index.php                 Making Pinball great again!!

 

partylikeits1776-.jpg


#9 astroheadbanger

astroheadbanger

    Hobbyist

  • Members
  • PipPip
  • 11 posts

  • Flag: United States of America

  • Favorite Pinball: Guns N' Roses

Posted 26 August 2025 - 02:47 AM

Thanks for the additional responses, everyone.  Triggering existing switches won't work with the scoring modifications I have in mind.  This may be a crazy idea, but I actually want some events to be a negative score (based on certain table conditions).  I would assume that's possible with full control over scoring...

Rewiring everything manually might be a "phase 2" some time down the road.  I'm a decent coder, so I'm fairly confident I could do it, but translating how everything works with the pinball machine, DOF, DMD, PUP Packs, etc is still blowing up my brain a little.   :stunned:  (Only discovered VPX this year, and this is my first table).  My customizations have already suffered from MAJOR scope creep from the original idea, and I don't want to get burned out on it.  My friend might also be sick of "Hey, come check out the modifications I made yesterday to my table".   :lol:  Perhaps after I've done something else for a few months...
 

@anthias - I just downloaded your "Quick! Silver!" table to take a look at how you do the "trick it with existing switches" method.  Played a couple games, cool table!  However, when I opened the script editor, it throws the following warning:   "Duplicate Definition found:  Function Distance(ax,ay,bx,by) (Line: 1261)  Function Distance(ax,ay,bx,by) (Line: 1325)".  I removed one of them and it appears to play just fine.  Perhaps I'm missing something though.  Just thought I'd let you know.


Edited by astroheadbanger, 26 August 2025 - 02:48 AM.


#10 anthias

anthias

    Pinball Fan

  • VIP
  • 783 posts

  • Flag: Australia

  • Favorite Pinball: Lizards In The City



Posted 26 August 2025 - 03:55 AM

Sorry I'm not sure what throws that error, the only code I added to that table is the routines at the end specifically for the new triggers. No definitions in those at all so it's something from the original script which I didn't change. Since the ramp scoring works, I don't think adding those calls for scoring will have caused it. They are literally just calling the existing routine. I can have a look at some point though. Of course this is an example of why redoing the full script is good, because it's all your code and that gives you an easier time fixing things!

Edited by anthias, 26 August 2025 - 03:56 AM.

screnstoaug21small.gif

#11 astroheadbanger

astroheadbanger

    Hobbyist

  • Members
  • PipPip
  • 11 posts

  • Flag: United States of America

  • Favorite Pinball: Guns N' Roses

Posted 26 August 2025 - 04:13 PM

Sorry I'm not sure what throws that error, the only code I added to that table is the routines at the end specifically for the new triggers. No definitions in those at all so it's something from the original script which I didn't change. Since the ramp scoring works, I don't think adding those calls for scoring will have caused it. They are literally just calling the existing routine. I can have a look at some point though. Of course this is an example of why redoing the full script is good, because it's all your code and that gives you an easier time fixing things!


Yep, no worries.  Just thought I'd pass on the information to you.  I verified that the two functions are identical...







Also tagged with one or more of these keywords: Scoring