Jump to content
HorsePin

SkeletonGameManager

Recommended Posts

Looking for some people to have a go with this application now. Getting a little worried I won't be able to spend as much time as I have for the time being , and was going to wait until I'd finished everything before giving it out.  I think parts of it are applicable to other things besides making a p-roc game...

If you wanted to make quick and easy text over clips etc for dmd videos or even when people ask for how to make a "dmd forum signature". After creating you could capture the display. Use scene grab for the pup thing, the switch/lamp matrix with an added export could be handy.

Intentionally it wasn't made for those things though, but it was just to save time creating games with skeleton game framework. The configuration and the asset lists were my main issue and wanted a bit quicker way to get these assets into the game.  It's had a ridiculous amount of feature creeping and that's not really going to stop for the moment because there's a lot that could be done to make it even more quicker/easier making one of these games.

Little demos:

Here's a "game" I created with the new game option. Wanted to try the paralex  effect in games etc, so I grabbed open source layers and made it all come alive with the move options that can be attached.

 

This is an example creating a new game. This process of a new setup was really needed without knowing it. It will grab you a latest SkeletonGame and get everything you need to run a new game. Having the EmptyGameVP contains settings for the service like in EvilDead and script examples.

 

 

 

 

Share this post


Link to post
Share on other sites
Inside pyprocgame game is a nice feature to record/playback switch events. I never bothered to use this feature, but it will save even more time for testing or just for getting you to a point in the game that you want to test at.
 
I got around to getting a half decent UI to control these recordings/plabacks. SkeletonGame is a little finicky because you can't just enable the recordings/playbacks but this does all the work for you and puts the game back to normal after you finished playback/record.
 
image.thumb.png.e5649a8ca9c36bb11fca499ae0020fa4.png

Share this post


Link to post
Share on other sites

Hmm I tried this program and was able to launch it after installing dot net update.

I tried to create a new game and get this error:

Error creating game. The request was aborted. Could no create SSl/.TLS secure channel.

So....I tried loading  evildead and other games in my c:\proc\games folder and get deserialization errors. Perhaps there is a new version of the tool? I am using date 2/17/2018

evil dead:

c:\p-roc\games\evildead\config/asset_list.yaml line 1289 col5 exception during deserialization

this section is line 1289

  Music:
  - streaming_load: True
    key: base-music-bgm
    file: MusicLoop1.mp3
 

I tried skeletongameVP......

c:\p-roc\games\skeletongamevp10\config/attract.yaml line 22 col9 exception during deserialization

Here is the line causing the exception

    - Animation:
        Name: explosion

and finally Knightrider.....

c:\p-roc\games\knightrider\config/assetlist.yaml line 271 col5 exception during deserialization.

here is the data:

  Music:
  - volume: 0.5
 

Share this post


Link to post
Share on other sites

Ok I got this working but had to change my machine yaml into your format. Converter didn’t work, got through the errors and fixed it manually. Lots to learn in this tool so a guide would help. Since my games working already I really could just use pointers in adding the fake rgb lighting to my table. I changed all of my pd-led calls to lamp calls so I think my table is ready for the rgb in vpx.

 

I see you add a solenoid (color) to the machine yaml and I guess there is an overlay color in the table? Can you explain one lamp and I’ll probably figure it out for the rest .

 

thanks!!!

Share this post


Link to post
Share on other sites

From what I can remember it should convert your yaml, or least ask you if you want to.  I found it better to use lists there instead of the dictionary.

When I get round to purchase a board myself I will add the addressable lamps but for now it's kinda retheme or VP.

 

These callbacks you could probably do a better job of it by sending in the color and have the one method which loop over the AllLamps collection.

 SolCallback(53)="SolColorOrg"
 SolCallback(54)="SolColorYel"
 SolCallback(55)="SolColorGreen"
 SolCallback(56)="SolColorBlue"

  SUb SolColorOrg(Enabled)
      if enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(255,127,0)
      lamp.colorFull=RGB(255,127,0)
    Next

  Else
  End If
 End Sub

Lampshow trigger:

coil:ledGreen         | [                                                            ]

 

 

Share this post


Link to post
Share on other sites

ok, I am trying the RGB code. thanks.

I added entries to my machine.yaml

PRCoils:
    ledOrange:
        number: C53
    ledYellow:
        number: C54
    ledGreen:
        number: C55
    ledBlue:
        number: C56
    ledRed:
        number: C57
 

I added sections to the VPX table script to define the colors (sols)......

SolCallback(53)="SolColorOrg"
SolCallback(54)="SolColorYel"
SolCallback(55)="SolColorGreen"
SolCallback(56)="SolColorBlue" 
SolCallback(57)="SolColorRed" 
 

I added the lamp color code section......

Sub SolColorOrg(Enabled)
  If Enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(255,127,0)
      lamp.colorFull=RGB(255,127,0)
    Next 
  Else
 End If
 End Sub 
Sub SolColorYel(Enabled)
  If Enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(255,255,0)
      lamp.colorFull=RGB(255,255,0)
    Next 
  Else
 End If
 End Sub 
Sub SolColorGreen(Enabled)
  If Enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(0,255,0)
      lamp.colorFull=RGB(0,255,0)
    Next 
  Else
 End If
 End Sub 
Sub SolColorBlue(Enabled)
  If Enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(0,0,255)
      lamp.colorFull=RGB(0,0,255)
    Next 
  Else
 End If
 End Sub 
Sub SolColorRed(Enabled)
  If Enabled Then
    For each lamp in AllLamps
      lamp.color=RGB(255,0,0)
      lamp.colorFull=RGB(255,0,0)
    Next 
  Else
 End If
 End Sub 
 

In the table init, I added a call for all GREEN lamps to test.

    SolColorGreen 1

It works! All lamps were GREEN when I started the table. Now to get busy!!!

Thank you VERY MUCH

 

Share this post


Link to post
Share on other sites

So, I can control the colors of the lamps from the VPX script but how can I tell the lamps to change color from the python routines?

So for instance with the above setup.  Currently I can turn on a lamp from the python script:

self.game.lamps.ArrowLeftScoop.enable()               

How do I tell the VPX table to turn this lamp on as RED from the python script? Whats the syntax for turning ArrowLeftScoop RED?

Share this post


Link to post
Share on other sites

ok! I added the line >

self.game.coils.ledRed.enabled() to my SG python script and when the VPX table started (after attract mode) all of the lamps were RED. Awesome.

Now how do I just turn a few lamps on RED or just one lamp RED, like this lamp for example - ArrowLeftScoop?

Share this post


Link to post
Share on other sites

Well you can't unless you come up with some other way, more coils, fake switches. I just needed them all change depending on the show/mode. A quick hack like I said in the other thread.

You could use the RGBShow mode, which I think is on by default in new games but then you would need to come up with something to add to the controller for VP to pick up.

At the time and even right now it's something that hasn't bothered me until a real build. To make a game it takes a fair whack of time and lighting lamps different colors doesn't make my games more fun and the time is best concentrated elsewhere in the game.

http://skeletongame.com/using-the-gui-tool-to-make-rgb-lamp-shows/

You also have the LEDs.py which maybe an older version to the above.

Share this post


Link to post
Share on other sites

Bummer. I wanted my arrows to change color depending on the mode and keep the rest of the inserts WHITE (like sterns star trek).

I just watched your evildead youtube video and see what you mean. It looks like all of your lamps are one color and you have some lampshow effects running to turn off and on lamps, etc. I see.

I've used the rgb lamp show tool to make a quick lampshow, though its way too difficult to use in its current state. I'll keep at this, you've been most helpful and at least I can now see color inserts.

Share this post


Link to post
Share on other sites

I have json shows which could be converted to the rgbshow (would need to make some parser to convert it to rgbshow)

I was looking at the show after I posted the link for a little while, I've never tried to make one with images as suggested there though either.

Does Star Trek LE work with rgb in VP? Just wondering if some work is done in scripts for this which may save some time.

Share this post


Link to post
Share on other sites

yes star trek le shows full rgb lighting in vpx, acdc le and twd le also have some rgb lighting

there are original tables with RGB too like JPs Ghostbusters and Diablo to name a few. None of those are p-roc of course so that might not help.

 

I added additional solenoids and boosted the colors to 16 so I think thats plenty of colors for my 16 game modes. I noticed you can't go higher than solenoid 63 for some reason but it doesn't matter for faking it I just used lower numbers.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×