developer diary

All posts tagged developer diary

So.. I had a plan to do these developer diaries each week. That didn’t last more than a week. I found I was spending more time trying to record progress than actually making it. There’s also gaps where nothing actually gets done, which would make for some dull updates. So I’ve backed away from the idea of such regular updates and will do them at less regular intervals. I want to try and keep the format however. So anyway, this second entry will be covering progress from 23/11/2020 until 23/12/2020.

Monday 23/11/2020

The long play session from Sunday brought up a number of things to address with the latest build of the code. Two bugs I thought I had seen the back of came up again, although could not be reproduced 100% of the time. The first one was two balls being served up during ball save. This came up twice during the session. I’ve further tightened up the timeout config settings on the outhole and ball trough ball devices. I have also switched the ball serve for the ball save to occur on a slightly later event that occurs during the ball save process. The second bug is related to the animated star field background stopping in some cases after a second player is added to the game. To get this to occur was not easy as it’s very timing specific. The root cause is somewhere under the MPF hood and not specific to my game. I worked around this same issue last week in other areas of PINBOT 2.0 so was able resolve it using the same method. The animated star field background is an animation I rendered to an animated GIF file that MPF then plays. Currently, this animated GIF is used across many slides and shows in PINBOT 2.0. What I think is happening under the hood is the same animated GIF asset is use across multiple slides and when a slide that uses it is destroyed, it “stops” animating the GIF even though other slides that are active are still using it.
Continue Reading

A new week is kicking off, which hopefully means lots of exciting changes to come for PINBOT 2.0 over the next seven days. I’ve decided to start putting together a small “developer diary” of the progress for people to read and follow along with. Sometimes there will be images or videos to share. While at other times it will just be text. I don’t have any planned format for what I share – only that it will be broken down into the days of the week, where I document progress for each day. Ideally I’d love to be able to put up a post each week, but there will be periods where little to no work on the project is done. This means some posts may span several weeks – I’ll just see how it goes.

Monday 16/11/2020

First thing to look at today was adding flashers to the lamp shows in both the high score and bonus modes. I’ve opted to go with a simple top to bottom sequence for the high score mode. This repeats every 5 seconds. The bonus mode sequence will work in reverse, with the flashers activating from the bottom of the playfield to the top and sync with the insert light show that plays.

A somewhat boring task today was creating a script that packages together the “pinbot-recoded” folder for deployment to the production machine. Up until now, it’s been a manual process of deleting the old folder from a USB stick and copying the required folders across. It would be so much easier to just run a single command line (like “packagepb” for example), which did everything and removed all manual steps. I’m often using either LUA or PHP for my scripting since those are what I’m most familiar with. I decided to go with PHP in this case. The script didn’t take long to create and has a reasonable amount of logging and error handling for when things fail. I expect this will evolve as the project goes on.

Pinbot 2.0 Homebrew
Continue Reading