(Topic ID: 164849)

DIY Ice Cold Beer type game

By winteriscoming

7 years ago


Topic Heartbeat

Topic Stats

  • 633 posts
  • 75 Pinsiders participating
  • Latest reply 3 years ago by Royflipper
  • Topic is favorited by 103 Pinsiders

You

Linked Games

No games have been linked to this topic.

    Topic Gallery

    View topic image gallery

    IMG_3467 (resized).jpg
    IMG_6635 (resized).jpg
    IMG_2511 (resized).jpg
    IMG_3020 (resized).jpg
    648baf4cb833a945fe2e20dd6a1c512fc9511a1c (resized).jpg
    vhd (resized).jpg
    cbrpk (resized).jpg
    sketches2 (resized).jpg
    Revolver Concept (resized).png
    sketches (resized).jpg
    Portrait_Matador_Color (resized).jpg
    SECRET-PONCHOS-MW-ensemble-1000 (resized).jpg
    b8b9df8a13f5a418b01810f7fa98a8a9c32f778f (resized).png
    plungers (resized).jpg
    s-l300 (resized).jpg
    Assembled board2 (resized).png

    You're currently viewing posts by Pinsider XXVII.
    Click here to go back to viewing the entire thread.

    #14 7 years ago

    Definitely watching this thread.

    It'd be great to have the CAD designs, components list, and software all open source (maybe a GitHub repository?) so that anyone that wanted to make one could get past those bigger hurdles quickly and then spend the majority of their effort on their custom theming and special game rules.

    From the other thread, my idea was to make an X-Men themed ICB:

    Quoted from XXVII:

    For a while, I was kicking around an idea to make an ICB cabinet with an X-Men theme. I'd want to have a DMD mounted in the top of the cabinet for additional immersion, and reuse the DMD animations from the Stern game and maybe the the Zen Pinball FX2 X-Men titles to fill it. My idea was to have the X-Men face a bunch of villains represented by each of the holes (plenty of DMD animations from the pins, and audio from the X-Men cartoons to make that happen) with Magneto at the top hole, and then maybe have some additional modes, like you spontaneously need to get a ball into a specific hole in a certain time limit for a bonus or Magneto randomly screws with the bar or whatever.

    With modern tech, you could easily bling it out with RGB LEDs, edge lighting, etc. to make it really flashy. I think it would be cool if the game recorded the inputs from the joysticks on successful runs to holes, then have the game "play itself" by replaying those recordings to the motors when the cabinet is running in its attract mode.

    #17 7 years ago

    I was thinking the outlines of the holes could be illuminated as rings rather than a bulb in the back of the hole. On the Taito machine, the holes, especially Hole 1 is kind of hard to see lit up because the bulb is behind the hole and far enough back to allow the ball to pass between it and the playfield. It's a little confusing for new, tall players at first because they have no idea what their goal is supposed to be.

    I'd like to see every hole, not just the targets, lightable as rings with RGB LEDs. That would give you the opportunity to do things like animate a path across the playfield to the next goal, for instance. With my X-Men example, you could easily make Wolverine claw slices across the playfield, or draw an X across the whole thing, etc.

    The way it could be done is to press the LED against a ring (tube, really) made of thick white, slightly translucent plastic. The plastic ring would act as a diffuser to spread the LED light throughout itself.

    #18 7 years ago
    Quoted from winteriscoming:

    Another crazy idea: what if the playfield was a clear acrylic and there was an LCD behind it? The theme could then be dynamically driven...
    Switches and wires would need to be tactfully placed so there's not a spaghetti mess of wires in front of the LCD, but the LCD could be used in place of all game related controlled lights.

    Would certainly look cool, but there are a couple issues. The first is that the parallax between the playfield and the LCD would probably be so great that players wouldn't be able to tell the difference between a random hole and the goal hole. The second issue is related to the way the Taito cabinet senses successful scores and how it routes the ball back to the bottom. I'll post some photos later, but to do a translucent back would require some mechanical redesign of all of this akin to what Le Chuck did for Space Base.

    #19 7 years ago

    You can find the operator's manual on KLOV: http://www.arcade-museum.com/game_detail.php?game_id=10592

    I've attached the important diagrams regarding the mechanics of the ball system below.

    Here's the description of the Theory of Operation. I imagine this will be a helpful guideline when programming, especially for those that have never played the real unit, or don't have ready access to one.

    The game objective is to move the ball up the playfield using the motorized bar and roll it into the illuminated target hole. There are ten numbered target holes amongst many trap holes. The target is advanced as the player successfully reaches the illuminated hole. The star on the score board is illuminated when the player finishes the tenth hole.

    The start button flashes after the game is coined. When the START button is pushed the bar descends, opening the gate, and releasing the ball. The bar then rises to the "Start" position on the playfield. During this time the joysticks are disabled.

    The bonus for the target appears on the scoreboard. The bonus begins decrementing when a joystick is moved or after 10 seconds if no action is taken. A "heart beat" sound is heard during countdown followed by a "straight-line" sound if the bonus reaches the minimum. When the target is reached the remaining bonus points are added to the player's score. The countdown rate is adjustable via the dip switch.

    Should the joysticks be inactive for a while the bar will automatically begin stepping upward. The stepping rate is adjustable via the dip switch.

    After playing through the first frame (all 10 target holes) the scoreboard start is lit and play continues at HOLE 1. Game difficulty is increased by shortening the time from the last joystick command and the onset of automatic bar stepping. The difficulty increases with each frame.

    If the ball is not at the gate (BALL GATE SWITCH open) when the game starts the search program will be initiated. The bar will sweep the playfield and the ERRANT BALL SOLENOID will be pulsed. The search ends when the ball closes the ball gate switch. The search program will terminate and the "OUT OF ORDER" message will be issued if the ball is not found.

    When the ball falls below the bar (usually by bouncing out of a trap hole on its way down) it is funneled to a hole at the bottom of the playfield. Upon entering the hole the ball activates the ERRANT BALL SWITCH and comes to rest over the ERRANT BALL SOLENOID. The solenoid then kicks the ball up to the gate closing the BALL GATE SWITCH.

    Each target hole is monitored by a switch. These switches are part of a scanned switch matrix including the tilt/slam, coin, start, ball gate, errant ball, ticket vend, hopper cycle, hopper empty, and free play switches. Each switch must be closed for at least 20ms to be recognized. When a switch is replaced it must be adjusted to meet this requirement.

    Manual-Playfield-Front_(resized).jpgManual-Playfield-Front_(resized).jpg

    Manual-Playfield-Back_(resized).jpgManual-Playfield-Back_(resized).jpg

    Manual-Playfield-Pulleys_(resized).jpgManual-Playfield-Pulleys_(resized).jpg

    #20 7 years ago

    You can't really make it out in the operators manual diagrams, but behind the playfield is a large, vacuum-formed single piece of plastic that routes the ball from a hole to the bottom, serves at the mount points for the bulbs and switches to detect valid holes, and pathway at the bottom for a vertical upkick from the errant ball hole to the return gate.

    Without changing the existing design, this is what would prevent the ability to use an LCD panel behind the playfield. Le Chuck obviated the need for this complex routing system in Space Base by embedding magnetic sensors into the playfield wood: http://vid479.photobucket.com/albums/rr155/vonjett/Space%20Base/MagSwitchTest_zps0e87d90c.mp4

    s-l1600_(resized).jpgs-l1600_(resized).jpg

    #24 7 years ago
    Quoted from PinballBulbs:

    This is a really cool thread. We actually have a mini version of ice cold beer in the works. Will be table top about 20" tall. Smaller ball but same game play idea. Ability to change game play is in our code. Small lcd at the top to store scores and animations. Has been a really challenging but fun project so far. Hoping to have it ready in a few months for production code and all

    That sounds really promising. Is that intended to be a one-off project or a sellable product? Could you give us some guidance on how you've achieved the telescoping rod?

    #25 7 years ago
    Quoted from winteriscoming:

    ICB is great as is, but I'd love to see other gameplay modes. Thinking along those lines, like HORSE brilliantly mentioned above, what are some ideas?

    This doesn't require a new gameplay mode, rather serves as a supplement to the existing one, but what I think would keep the challenge alive for as long as possible is a timed tracker for each hole. When you own ICB, it doesn't take too long before you "master" the game in that you can put the ball into any hole you want. I usually beat the game whenever I play it, but with its simple programming, the Taito cabinet doesn't recognize skillful playing beyond a bigger bonus when you put the ball into the right hole really quickly. For the first three holes, I can sink the ball before the round beginning music stops playing.

    It would be great for the game to not only acknowledge skillful playing, but to keep track of it, so people can be competitive on multiple dimensions of the game. Maybe "ACE" is the only one at the party that has sunk the ball into Hole 10, but "KEV" has the undefeated lowest time getting the ball into Hole 7. Now, instead of only one person having a recognized accomplishment to beat, at least two people do.

    The pressure to speed run provides an incentive to take risks that's not there in the normal game. Like I said, you can quickly "master" the game in that you can beat it, but there's no good reason to not take your time. The bonus is generous enough that you're still going to reach 4,000 points after Hole 9 to gain an extra ball. Time tracking would compel more advanced players to make dangerous moves like driving the ball vertically through the lower holes on Hole 10 rather than carefully and slowly attacking it from the left or right side. That keeps the game as an adrenaline rush rather than something you can get comfortable with.

    #27 7 years ago

    For some additional reference, I've taken photos of my cabinet. This set is for the control panel.

    1_(resized).jpg1_(resized).jpg
    2_(resized).jpg2_(resized).jpg

    The control panel is held on with clamps on the left and right undersides, like some video arcade cabinets.

    3_(resized).jpg3_(resized).jpg

    The joysticks use two leaf switches each and their restrictor gate only allows vertical movement.

    4_(resized).jpg4_(resized).jpg

    The glass is slotted in place, and lifts out from the bottom.

    5_(resized).jpg5_(resized).jpg

    #28 7 years ago

    6_(resized).jpg6_(resized).jpg

    As you can see on the exposed playfield, there are guide rods on both sides for the bar mechanism to ride.

    7_(resized).jpg7_(resized).jpg

    Below the bar is the release mechanism for the ball. It has an arm sticking out of it (I'm pressing it down in the second photo) that is moved by the bar as it lowers to the bottom, the ball behind the mechanism is compelled to roll forward because of gravity, so when the bar moves to the bottom it automatically loads itself for the next round. There is a hole at the very bottom of the playfield, this is to capture the ball if it happens to fall below the bar. Sometimes a ball will go into a hole and then fall out of the front of a lower hole.

    8_(resized).jpg8_(resized).jpg

    Next is a close-up of the piece connecting the bar to the pulley system. The attachment piece is hinged to allow it to rotate as necessary. The post on the bar prevents the ball from rolling off the side of the bar. It's positioned just so, so that you will always be able to see the ball without it getting blocked by the screened graphic on the playfield glass.

    #29 7 years ago

    Here is the back of the cabinet.

    9_(resized).jpg9_(resized).jpg

    This is the vacuum formed back piece with everything connected.

    10_(resized).jpg10_(resized).jpg

    The hole lightbulbs and the hole sensors (switches) are mounted directly to the plastic.

    11_(resized).jpg11_(resized).jpg

    This is the "errant ball" recovery pathway. When the ball falls below the bar and goes into the hole at the very bottom of the playfield, a vertical upkick solenoid will launch the ball up the loop so that the ball returns to the release mechanism above.

    12_(resized).jpg12_(resized).jpg

    Here is a close-up of the motor, gear assembly, and bottom of one of the pulleys. I don't know anything about mechanical engineering or associated costs, but I think it would be beneficial to us if we could eliminate the use of the gears and attach our motors or servos (or steppers?) directly to the pulleys. The gears would be difficult to accurately fabricate (likely couldn't 3D print) if there isn't an off-the-shelf solution for them, and they are noisy. Not quite as bad as the clock in TZ, but still noticeable if you're not in a loud room.

    13_(resized).jpg13_(resized).jpg

    At the top and bottom of each pulley is a limit switch. When the carriage attached to the bar rides the pulley to the top or bottom, it will hit one of these switches, letting the game know not to attempt traveling any farther in that direction.

    #32 7 years ago

    Definitely. The more off-the-shelf, the better for everyone.

    As a side note, the ICE version of ICB plays a lot smoother than the Taito version. You can tell they went without a gear assembly on the unit.

    I found the manual to the ICE version here: http://forums.arcade-museum.com/showthread.php?t=332822

    You can see that ICE managed to simplify the system significantly:

    ice1_(resized).jpgice1_(resized).jpg
    ice2_(resized).jpgice2_(resized).jpg
    ice3_(resized).jpgice3_(resized).jpg
    ice4_(resized).jpgice4_(resized).jpg

    Edit: Todd Tuckey shows the inside of the ICE version of the cabinet in this video:

    #35 7 years ago
    Quoted from winteriscoming:

    The challenge, as far as I can figure, if I want a detectable switch and RGB light on each hole is going to be accommodating for a very high number of switches and lights. If there were 100 holes, that would be 100 switches and 300 controlled lights. I could use dedicated sub devices that communicate back to a master controller, but there are potentially going to be a lot of things to control.
    So let's say it's the following:
    100 hole switches
    300 hole lights
    4 limit switches for the steppers
    2 stepper motors
    1 errant ball detector switch
    1 VUK for errant ball return
    2 analogue joysticks
    1 start button
    Allowing for the extra gameplay modes is what makes it so complex. If it just kept to ICB type rules, then there would just be like 10 or so holes with switches and lighting while the rest remain dark and only 1 trough switch is needed to tell that a ball fell through a hole that wasn't a target hole.

    Perhaps switches on every hole is overkill. A handful to a dozen additional switches could be added to a number of the other holes, and that could be enough to give the player the impression that literally any hole could be a goal if the game wanted it to be. An I-PAC from Ultimarc would have between 32 and 56 inputs available, depending on which model you chose. 10 of those inputs would be needed for joysticks, start button, limit switches, and errant ball recovery, but the rest are free for holes.
    https://www.ultimarc.com/ipac.html

    I would still want to put an RGB LED at every hole in my game. I don't think this should be too great of a problem for a Raspberry Pi or the like. Rather than wiring each LED back to the Pi, you could use individually addressable string LED lights like this:

    HTB1lvDxJXXXXXXpXFXXq6xXFXXXH_(resized).jpgHTB1lvDxJXXXXXXpXFXXq6xXFXXXH_(resized).jpg

    Each string has 50 RGB LEDs, so you would only need two bundles to light every hole. That's not saying anything about the power requirements though. I don't know anything about that.

    #36 7 years ago
    Quoted from winteriscoming:

    Another mode idea: CHASE MODE
    The light moves from target to target (maybe in a path from one to the other or random, though would ideally be unpredictable so you can't camp out at a hole and wait for it to light) and stays lit for brief period of time. The goal is to get the ball into the lit hole. Maybe a timer needs to be incorporated into it, again, so you can't just camp out at a hole. Maybe it starts off being more valuable and decreases each time it moves to a new hole within the same turn, all the way down to a minimal point value.

    That's a great idea. It's a little disorienting in ICB to try to lower the ball safely after going too high with it. It would be interesting to make that kind of maneuvering a regular part of the game.

    #40 7 years ago
    Quoted from winteriscoming:

    The downside would be that you could potentially memorize which holes go to a single switch and whenever hole X is lit, you'd know you could enter hole Y and get credit. That would also limit game modes like HORSE. The game would have no idea exactly which hole you entered, so it wouldn't know which one to light as the target for the next player.

    I may not have clearly explained what I meant. I meant to say that you use 10 inputs for joysticks, start button, limit switches, and errant ball recovery, then 10 more inputs for sensors for standard holes 1-10, then whatever inputs are left over go only to specific other holes outside of standard holes 1-10. If hole X is lit for the goal, there is no situation where getting the ball in hole Y will ever count as a false positive for hole X. Hole X's sensor only counts for hole X. And hole Y will never be lit as the goal, but the typical player won't know that it won't ever be.

    Quoted from winteriscoming:

    I'd probably prefer that the master be a Raspberry Pi running Python just because I'm pretty comfortable in Python and it would be relatively easy for people to pop the memory card into their computer and alter code. Plus it can easily drive an LCD for scoring and animations, or drive a DMD-like RGB LED matrix over USB by way of a separate device.

    I agree. I've done a little Python scripting in the past, and I'd like to take advantage of Raspberry Pi's power for audio, potentially video, etc. and easy updating.

    #42 7 years ago
    Quoted from winteriscoming:

    I wonder how viable it would be to come up with a means of automatically getting the ball to the top for a top to bottom game mode... That could potentially complicate things because you wouldn't want it to rely on easily riding the rod to the top or that would mean the player could easy get the ball to the top when playing the normal mode. Maybe one of the stopper posts on the end of the rod could be servo controlled. so that it can move out of the way for this operation.

    I think the alternative is to let the player do the work for you. The game could have a general idea of how high the bar is up the playfield by keeping track of the number of milliseconds up commands have been sent to each motor (and subtracting for downward movement, obviously) and averaging between the left and right sides.

    When the player gets the ball up the playfield a certain amount, say 60%, trigger the special mode where they need to go down in the time limit for a bonus, or extra ball, or whatever. It would be more of a surprise that way, which can be good or bad depending on your taste.

    #47 7 years ago
    Quoted from callmesteam:

    I'm very interested in a kit. I sold my Zeke's Peak to buy an ICB and the motors on the ICB are LOUD AS HELL. As far as I can tell, it's pretty difficult to find replacements. I rebuilt one of the ZP motors, but it was a pain.

    Earlier today, Riptor in another thread linked to brand new, redesigned motors for ICB with enclosed gear assemblies that supposedly run quieter:

    #48 7 years ago
    Quoted from PinballBulbs:

    Hey! It'll be a sellable product. Maybe weight around 12-15lbs. I got something else with similar power draw I made and is on a rechargable battery so our goal is to use that same setup in this to make it battery operated even that's rechargable

    That sounds great. Any idea yet on price range for one of these units?

    Did you have to fabricate the two rods yourself for your games or were you able to make use of off-the-shelf components to assemble the telescoping rod? OLDPINGUY mentioned potentially using brass rods sold at hobby stores of slightly different diameters. Is this the method you used or were you able to find a different source?

    #51 7 years ago

    I created an account on BYOAC and posted in the Space Base thread asking for guidance from Le Chuck and his partners. Let's hope they see it and provide their help. http://forum.arcadecontrols.com/index.php/topic,140466.msg1581811.html#msg1581811

    I looked around a little bit for resources for steppers with Raspberry Pi.

    I found this hat (like an Arduino shield): https://www.adafruit.com/products/2348

    2348-02_(resized).jpg2348-02_(resized).jpg

    Luckily, it can control two stepper motors by itself, and it has all the needed protection and stepper management circuitry built-in. There is also a Python library to simplify interacting with the steppers. According to the video, you can basically just tell it which direction to spin and at what speed. Sounds easy enough. It is designed to be stackable, so you can add another hat on top of it. That will be necessary for the errant ball solenoid. I don't know yet how to drive that. The steppers will require some external power, since the Raspberry Pi cannot provide enough on its own.

    Tutorials for everything: how to assemble, wire it up, add external power, and program for it are available here: https://learn.adafruit.com/adafruit-dc-and-stepper-motor-hat-for-raspberry-pi

    It's compatible with these steppers: https://www.adafruit.com/products/324

    324-03_(resized).jpg324-03_(resized).jpg

    I'd have to assume these are strong enough to move our ICB bar, since these exact steppers are used in CNC machines like the X-Carve.

    Adafruit also sells handy mounting brackets for these steppers.
    https://www.adafruit.com/products/1297

    1297-00_(resized).jpg1297-00_(resized).jpg

    One less piece to have to figure out how to fabricate, thanks to off-the-shelf components.

    #54 7 years ago

    Promising update from Le Chuck!

    Hey everyone, I'm glad to see this still has some interest. It certainly isn't dead but it has been moving slowly for the last year or so. A lot of life changes for several team members that had to be sorted out before work could resume, myself included!

    All that said, I will be getting back into this shortly. I'll be fabbing up a second playfield (the first is with IDS) and I'll do a step by step build up on that. I can't put a deadline on anything past that but I'll be starting the playfield in August as soon as I finish the panel I'm building for my boys.

    Once complete everything will go open source, the reason we aren't do releases as we go is because things are still in flux and I personally don't want to put out bad poop, have someone spend money, get ahead of me only to find out it doesn't work as advertised. Plans, parts lists, music, code, the works.

    As it stands now the only truly custom fabricated bits are on the ball the return (which is simple) and the circuit boards (which is supposedly simple for those in the know but might as well be rocket surgery for me). Everything else is off-the-shelf modded or tooled.

    Regular updates to recommence soon. Thanks!

    TL;DR: They were able to build nearly everything out of off-the-shelf components, and he will start a step-by-step build detailing the entire process in August.

    Definitely keep an eye on the BYOAC thread.
    http://forum.arcadecontrols.com/index.php/topic,140466.0

    #57 7 years ago
    Quoted from winteriscoming:

    That's the product I had come across, too, for steppers. They also sell couplers, so a threaded rod of an appropriate size (8mm or 5mm) could be attached to the motor. I see M8 and M5 threaded rods at McMaster Carr.

    Sounds like a good solution. Hopefully we can source a rod that is the proper length and won't require any cutting.

    Quoted from winteriscoming:

    I'm also seeing different options on rigid tubing of different diameters where it seems like it would be feasible to get one that fits inside another.
    Any idea what the rod diameters are on ICB and the type of metal? I'm actually wondering if a plastic like Nylon or Derlin would work.

    I'm not at home at the moment, so I can't check. I also don't have calipers so I'd have to eyeball with a measuring tape. Also, I don't know anything about metals; I don't have a clue what it's made of. Can anyone else that owns ICB chime in?

    I like the idea of making the bar out of another material than metal. Colored (or white) bars open up possibilities for blacklight illumination, or simply just better integration with the builder's theme of choice.

    I think we need to figure out a good solution for sensing the balls passing through the holes. Taito used switches, Le Chuck uses magnetic sensors, and I can't tell what ICE is doing. I would like to avoid magnetic detection, if possible. If you look at my Taito cabinet photos on the first page of this thread, you'll see pock marks in the playfield glass at the holes where the ball has dinged into the glass over the years. I'd like for it to be possible to opt for a ball of different material, maybe just a marble if the builder wanted. Also would provide options for theme customization.

    #61 7 years ago
    Quoted from winteriscoming:

    I'm trying to get an idea for BOM, but I keep coming up with additional parts that may end up being too customized if we go with the ICB size... like the glass. What are the dimensions of the glass? Maybe we should shoot for standard pinball glass and just size the game to accommodate?

    According to Phoenix Arcade, the ICB playfield glass is 33.75"x23.5".
    http://www.phoenixarcade.com/art.htm#ICE_COLD_BEER_

    #62 7 years ago
    Quoted from winteriscoming:

    I'm having a difficult time finding cheap single axis analogue joysticks, let alone any cheap analogue joysticks that are arcade style.
    The cheapest viable option I can come up are the parts used in game controllers. They're 2-axis, so it would just be a matter of wiring into the up/down axis. One like this in a case could potentially be mounted from under the control panel. I don't know how feasible it would be to convert one of these to something more arcade-like.

    I think we could design our own restrictor plate for standard-shaped arcade joysticks in CAD, then either 3D print ourselves or post on a site like Shapeways to let anyone order a print.

    #67 7 years ago
    Quoted from winteriscoming:

    It's not restricting the motion that I'm talking about, but actually using an arcade stick to control a potentiometer instead of leaf switches. Restricting the motion to up/down is something to consider though.
    Edit: I've been looking at a standard cheap HAPP arcade stick and think it might be possible to get it to control a mounted potentiometer. This would by far be the optimal method for looks if it can be made to work easily.

    Yeah, I understood, but I think the movement definitely needs to be restricted to up and down, despite whatever input capability. Looks like there are readily available 2-way restrictor plates for Japanese joysticks. There's probably something similar for HAPP/EL as well: https://www.focusattack.com/sanwa-gt-2f-2-way-restrictor-plate/

    I worry that the programming complexity and especially the added cost of analog joysticks may outweigh their benefits in the end. You already get a surprising amount of refined control and smoothness even on the Taito cabinet with digital joysticks, and even more so on the ICE cab with the motors connected directly to the pulleys.

    Due to the nature of controlling a ball on an inclined plane, there's a bit of "lag" and a gradient of speed as gravity pulls the ball at an increasingly faster speed toward the earth. That alone already gives you subtle speed control over the ball; the nature of needing to make more dramatic movements on the edges of the bar to influence the movement in the middle.

    #69 7 years ago
    Quoted from winteriscoming:

    I suppose speed could be set in the test menu or something if you wanted to fine-tune it. It may also just be a matter of controlling it with software to give smooth motion, so that when you push up, it gradually gets up to whatever the top speed is. You could potentially control, via settings, top speed and how quickly it should get up to top speed. Variable speed could also come into play in various game modes.

    That's a good point. I suppose some sort of acceleration could be programmed into the game, and your game mode idea sounds like it could be an interesting dynamic: to switch it to a more extreme movement speed, or alternating one side stronger than the other, etc.

    #71 7 years ago
    Quoted from winteriscoming:

    Hmm... I think we might do well to design around a more standard size then. I know standard pinball glass can be had relatively cheap (for what it is). At a local annual arcade expo there's a guy who sells them for $25 each or 5 for $100.
    Standard body pinball glass is 21"x43", so a couple inches narrower and about 10 inches taller. The extra height would likely be good if we want more holes. The standard ICB obscures some of the horizontal space with art anyway, so our version could be designed such that the standard playfield glass is what's viewable, with a wood surround obscuring the rest of the horizontal space.

    Yeah, wood surrounding the already obscured parts will be necessary considering the thinner glass. The issue becomes the maximum length the bar is able to extend needs to be greater than the hypotenuse of a triangle made from the bar being at its lowest possible point on one side and the highest possible point on the other. If the bar is less, its two parts will just unsheathe themselves and the bar will fall apart. So the taller the playfield becomes, the wider the wood siding and obscured parts become.

    #73 7 years ago
    Quoted from winteriscoming:

    These might be a good option for 2-way joysticks. They claim to be adjustable 2/4/8 and they have some kind of adjustable restrictor plate on the bottom. I can't tell by looking how it can be set for 2-way, but if it can, these are well priced at about $11 shipped:

    That's a good price, but I'd recommend short shafts so the ball top won't have to travel as far, which will feel more responsive. To change that one to 2-way, unscrew the green restrictor plate from the joystick, move it to the right, then screw it back in.

    #78 7 years ago
    Quoted from jwilson:

    My question is why do you need steppers for this? The only reason you need steppers is for accurate position control, and this game doesn't need that. You put a switch at the top and bottom of the throw so you know TDC and BDC. That's why the current games just have regular motors.
    If you want your ramp up speed, just use PWM to drive the motors.

    I can't speak for winteriscoming, but I know very little about electronics and motor systems. I assumed you could PWM a motor to reduce the speed, but I worried that would kill the torque, and I wanted to avoid a complicated and noisy gear situation, like the Taito cabinet. The stepper solution is relatively inexpensive, videos have shown they move how I want, the brackets we found make them easy to mount, and the Python library with included documentation and example code appear to make it as simple to control as a regular motor. That's been my logic on steppers so far.

    Quoted from jwilson:

    Also, just use the cheaper leaf switch / microswitch joysticks. You are making this project way, way more complicated than it needs to be.

    This thread is meant to be a call to the community for ideas on how to accomplish a DIY ICB; we aren't saying that these ideas we're putting forward are the One True Way, we're just throwing them out there to see what seems reasonable and what doesn't, as demonstrated in how we already killed the analog joystick idea through discussion.

    Quoted from jwilson:

    Also, if you want the absolutely cheapest controller option, check out the Open Pinball Project - I'm converting an EM for less than $100 because the controllers are $4 each and can be daisy-chained for however many switches, lamps and solenoids you need.
    Control everything from a RPi using USB.
    https://www.kickstarter.com/projects/507097900/open-pinball-project-open-source-pinball-hardware
    https://openpinballproject.wordpress.com/

    This looks really promising. Is there any info on when they will be available outside of the Kickstarter, and a timeline for documentation for us newbies? I love the price, but this seems a little too advanced for me to not have any examples or documentation to work from.

    #79 7 years ago
    Quoted from winteriscoming:

    I didn't end up commenting on this idea, though I think it's great. At least those of us with CNC machines could pretty easily cut circles out of some kind of translucent plastic and they could be inlaid around each hole so that they're flush with the surface. They wouldn't have to be as deep as the playfield. A hole could be made beneath each circle where the LED could be inserted to illuminate it from behind. I'm not sure how small of bulbs you can get in the off-the-shelf addressable string lights, though. Ideally they'd be pretty small so that we could accommodate each hole getting its own ring even when they're pretty close together.

    That sounds like a good plan. I was thinking the tubes could be 3D printed, and aside from serving as the lit ring, they could have mount points to hold the RGB LED and opto sensors in place. Just print, cover the sides with glue, and push through a hole until flush with the front, then clip in the LED and sensor.

    #87 7 years ago
    Quoted from winteriscoming:

    I have experience with stepper motors, so that's what I want to use.

    Quoted from jwilson:

    Ahh yes, all you have is a hammer so all you see are nails. Got it.

    Consider that we're not building turnkey kits for people here. These things need to be as straightforward as possible, not just for us design and program, which is also important, but for other people to source the same parts we used and build.

    Like has been said earlier, the steppers are a known entity for winteriscoming, seem reasonable to operate for a newbie like me, and are easily mountable in the threaded rod system that we're planning to build.

    Quoted from jwilson:

    If I'm being really honest, I don't see a reason to involve a computer in this at all

    I need a computer in my project because I want to make it more of a multimedia experience than the original ICB. I want RGB LED light shows, sound effects, custom game modes, and a display of some sort. It makes sense for us to build this with a computer base so that people that just want the vanilla ICB experience can put it together with minimal soldering and circuit design, and then for the rest of us, to have a good base to build forward from.

    Quoted from jwilson:

    I'm looking at this from my perspective as someone who knows how this stuff works.

    Right, which isn't our audience. We want an easy to purchase and assemble system from off-the-shelf electronics, not necessarily the best system, just the one normal people will be able to put together with some amount of confidence.

    #89 7 years ago
    Quoted from jwilson:

    I just meant you don't need a computer for controlling the drop bar.

    Actually, you still do need a computer. The game auto increments the bar upwards when either joystick hasn't been touched after a certain amount of time. It also more aggressively increments the bar up even while you're actively playing it in the second round after beating it the first time to add to the difficulty. When the ball is lost, the bar has a routine it performs to try to help dislodge it from wherever the game can't find it (lowers all the way down, raises one side all the way up, then raises the other side until the ball hits a switch). It may do other things I can't remember at the moment.

    Quoted from jwilson:

    The less parts you use, the more reliable it'll be, that's all I'm saying.

    That's true, but again, the more limiting. winteriscoming and I have been discussing other possibilities in this thread that would benefit from the computer beyond the vanilla stuff, like spontaneously alternating joystick controls or varying the movement intensity for a game mode.

    The steppers are wired directly into the HAT on the Raspberry Pi anyway. This is the simplest way for everything to be connected for us and any other inexperienced person trying to assemble their own. We don't need to worry about blowing circuits with reverse current or H-bridges or anything else. It's just plugin and go.

    #99 7 years ago
    Quoted from winteriscoming:

    I'm kind of thinking due to the light load, (and assuming we stick to screw rod driven linear motion) we might be able to get away with cheap t-slot and t-slot bearing pads:
    ebay.com link » 80 20 Inc T Slot 10 Series Top Mount Uhmw Bearing Pad W Brake Hole Long 6798 N
    These bearing pads are less than $3 and would be cheap to replace when they wear out.
    Here's a compatible t-slot extrusion at 48" for less than $25 shipped.
    These are made by 8020 Inc. I know there are cheaper t-slots out there, I'm just not sure if they're compatible with these cheap bearings. I'll dig up some specs on the cheaper ones and try to figure that out.
    There are alternatives, but I'm trying to avoid having to fabricate too many custom parts if we can easily use something already available.

    I have to admit, this is a lot more sturdy of a solution than I was expecting. I assumed for the left and right sides of the cabinet, there would just be a stationary guide rod on the front side of the playfield running parallel to the threaded rod on the back side, and the carriage would have the threaded rod running through the ball screw actuator on the back of it and the guide rod running through a hole toward the front of it. Sort of like the existing system in the Taito cabinet, as in it would keep the guide rod as is, just replacing the pulley system with the threaded rod.

    #103 7 years ago

    I've been trying to figure out how to accomplish the hole sensors in a reasonably inexpensive way that may be compact enough to allow builders to throw sensors on as many holes as possible. So far, I'm thinking the answer is the IR emitter and detector route. IR is necessary because RGB LEDs at each hole will likely put out a lot of light that would interfere with a standard photodetector.

    The most compact pair I've found on a hobby site meant for through-hole mounting is this one:
    https://www.sparkfun.com/products/241

    00241-02_(resized).jpg00241-02_(resized).jpg

    The next problem: what to mount them to. You could have custom PCBs made, but that's pretty expensive, and since I'm not an EE, I wouldn't feel confident designing a circuit to send out to a board house to fabricate. You could etch boards yourself or CNC engrave them, but that's also a huge process. My next thought was to solder everything to perfboard and then cut it to the desired shape. A quick Google search shows that because it's made of fiberglass, that's a messy and difficult process as well. Luckily, Adafruit sells perfboard made out of Bakelite that you can cut with scissors, and they are super cheap:
    https://www.adafruit.com/product/2670

    bakeliteperf_(resized).jpgbakeliteperf_(resized).jpg

    I haven't done any measuring of the holes in ICB yet, but it seems like each of these boards could turn into 2-4 hole boards. I am imagining using an X-acto knife to cut a hole through the center to allow the ball to pass through, like this:

    perfhole_(resized).pngperfhole_(resized).png

    #113 7 years ago
    Quoted from winteriscoming:

    I checked my t-slot that I have that's identical to the 48" one I linked to from Amazon, and there's no room for a washer inside the track. There's only room for the head of the bolt. There are nylon bolts, that could work, though. I'm thinking nylon would be ideal for friction and wear because then we wouldn't have a metal bolt sliding on a metal rail. For now I can kind of do a proof of concept with the metal bolts I have on hand.

    I'm looking forward to hearing about the results of the proof of concept. The thing that I'm wondering about is cutting these t-slots, should that be necessary. Are they cuttable without too much warping?

    #115 7 years ago
    Quoted from winteriscoming:

    Those are good ideas. Yeah, I was thinking for DIY you'll have to do perf board unless someone wants to develop some custom boards. Something to keep in mind is that we likely want something that won't sit too high so that a ball falling through a hole right above another won't hit the components. There are some that look more like rounded LEDs rather than the rectangular package, and they might sit lower (I haven't looked at specs to tell the scale of the ones you linked to).

    Yeah, I was thinking perhaps if the LED light rings are 3D printed, they could have a hood on the back to protect the components from above and help prevent balls falling back out the front of a different hole than they entered (happens sometimes).

    Quoted from winteriscoming:

    Also, you should be able to get bulk components from Digikey for cheaper than the Sparkfun pair. You just have to find each half as a separate item to add to your cart.

    Yeah, when ready to order, I'd buy in bulk from Mouser, Digikey, etc. if the price difference is significant. I'm focused on trying to find things available on Adafruit and Sparkfun for that clear documentation and example code.

    Quoted from winteriscoming:

    Is Bakelite the same as phenolic? I searched for "bakelite" on Digikey and these came back in the prototype board section:
    http://www.digikey.com/product-search/en/prototyping-products/prototype-boards-perforated/2359508?k=bakelite
    I didn't compare sizes to tell if any of these are a better deal than the Adafruit ones.

    I have no idea. If hole boards are the way we go, I'm going to buy Adafruit's because they explicitly advertise being scissor cuttable, whereas most perfboards are pretty difficult to cut. The Adafruit ones are $5 for ten 2.8" x 3.6" boards. If you can get 4 hole boards out of a sheet, a $5 pack would net you 40 hole boards.

    #116 7 years ago
    Quoted from lpeters82:

    PS: Am I just an idiot for thinking that a rollover microswitch could be used for the hole sensors? They can be had for around $.25 each. I'm assuming there might already be a mounting bracket that would work, but at worse we could create a custom mounting bracket to 3D print. All balls eventually feed to a single switch, which register as a failure, unless the successful hole sensor is triggered immediately before hand. I think that programming would be best as builders only need switches on the success holes that are part of the route. Even with an iPac 2 you could have switches for up right, down right, up left, down left, enter, failure, high limit right, low limit right, high limit left, low limit left, plus 22 success holes. That's over double the options of the original. Go with the iPac 4 and you've got 46 success holes.

    Micro switches are the natural answer. Taito used them on the original machine. Our problem is that we're over-complicating our goal by trying to make it possible to have a switch on as many (every?) holes as we can fit, haha. I had the same line of thought before I grew too ambitious: I-PAC and microswitches would be trivial to interface with the Raspberry Pi. Hole switches would just be keyboard presses. You could even test the game outside of the cabinet using a real keyboard. And like you say, there's plenty of leftover inputs on an I-PAC to add way more holes than the original game offered.

    Perhaps we should just scale back...

    #119 7 years ago
    Quoted from winteriscoming:

    Just throwing this out there, as it's off the wall and something to be explored after the main goals are met: If we have swappable playfields, what are some alternative types of playfields/games that could work?
    I'm wondering if some kind of labyrinth type playfield with slightly bumped out walls could work. It would need to work like if you tried to roll the ball over a wall, it would end up falling down the front of the telescoping rod, and penalize you.

    I don't know that we would be able to make an ICB style game with swappable playfields if it has multiple target holes, if you consider the ultimate weight of the "playfield cartridge" with a backbox behind the playfield to protect the electronics inside.

    However, it would be possible for us to design a new game that is literally just a board that can be swapped in and out. If we only need to worry about one hole for the finish, then we only need one other switch, for the failure at the bottom. Segregate the middle from the goal hole at the top and the ball loader and errant ball recovery at the bottom, and the middle doesn't need to have any electronics in it. You can make a new obstacle course just by drilling some holes in the right size sheet of wood, or lightweight plastic, or whatever.

    Forgive my uninspired designs, but here's a quick example. First, the cabinet loaded with an extreme ICB style field of holes.

    1_(resized).png1_(resized).png

    Then unload the ICB board (ignore that the ball bar is missing, I should have had it lowered to the bottom of the playfield).

    2_(resized).png2_(resized).png

    Then grab your new labyrinth style board.

    3_(resized).png3_(resized).png

    Slide it in and start playing.

    4_(resized).png4_(resized).png

    If you'd rather just have a labyrinth style game, forgo the swappable fields and then you can do really dynamic things like have rotating "platforms" (edit: rotating walls, I suppose) that you have to carefully guide the ball on top of from one to the next.

    #131 7 years ago

    The pulley system is fine by me. It seems to work reliably well, seems like it'd be cheap to replicate, and hasn't failed on my machine for as long as I've had it.

    #135 7 years ago

    For reference, here's the Real Bob Roberts' fix for belt replacement in Ice Cold Beer:
    http://arcadecontrols.com/BBBB/coldbeer.html

    And here's Todd Tuckey replacing the belt in a cabinet (about 2min in):

    #136 7 years ago
    Quoted from winteriscoming:

    There's something to be said for going with continuous servos. Servos have 3 wires: Signal, +, -. So only 1 output pin is needed to drive one and no special adapter boards would be needed. In our setup that would just be 2 outputs directly from the Raspberry Pi.
    You give them commands by issuing pulses on the signal line. It wouldn't even require any special libraries or anything. It's just a matter of pulsing the output at a certain interval.
    Servos are readily available, and those that aren't continuous can be modified to be.
    There are even metal gear servos available, which would potentially wear better than the plastic ones.
    amazon.com link »
    The other advantage is that they come with horns and, per Le Chuck's example, are easily mounted to pulleys... hmm...
    This has got me thinking that from an ease of use and cost perspective, servos could be the way to go.

    Any concern about back-EMF or anything like that? That was one of the benefits of the stepper HAT from Adafruit, that it had built-in protection.

    #142 7 years ago
    Quoted from winteriscoming:

    Here's a page talking about servo vs stepper in CNC applications. I'm assuming they're referring to much pricier servos, but indicate that a stepper has greater longevity. However, at the price of about $12 for one of the plastic geared servos, I don't know that longevity vs price is much of concern. It wouldn't cost much at all to replace the entire unit should it be needed.
    http://www.cncroutersource.com/stepper-vs-servo.html

    Something I wasn't aware of concerning stepper motors is their efficiency. I found this page on Adafruit discussing steppers https://learn.adafruit.com/all-about-stepper-motors and they say:

    "Low Efficiency – Unlike DC motors, stepper motor current consumption is independent of load. They draw the most current when they are doing no work at all. Because of this, they tend to run hot."

    If we get these things built, there are situations where I'd want to be able to have it running all day long, maybe without people playing it for hours at a time as they play other games. But if the steppers get hotter in inactivity, that's a concern for me. Servos might be better for us just to limit our risk of building a fire hazard.

    #143 7 years ago
    Quoted from winteriscoming:

    Any idea of the pulley size on the stock ICB?
    Also, a diameter measurement on both parts of the telescoping rods would be helpful. Is there an obvious bump from one rod to the other when playing or was the larger taper down slightly at end? If tapered, a DIY scenario is going to require some sanding/filing.

    I'll take a look when I get home. I won't be able to get a precise measurement on the rods because all I have at hand is a ruler.

    #151 7 years ago
    Quoted from winteriscoming:

    Any idea of the pulley size on the stock ICB?
    Also, a diameter measurement on both parts of the telescoping rods would be helpful. Is there an obvious bump from one rod to the other when playing or was the larger taper down slightly at end? If tapered, a DIY scenario is going to require some sanding/filing.

    Quoted from XXVII:

    I'll take a look when I get home. I won't be able to get a precise measurement on the rods because all I have at hand is a ruler.

    Quoted from Fortytwo:

    The rods don't have any taper. Just a fit between them both.

    Verifying Fortytwo's statement. I just checked my machine and there's no taper. The larger of the two rods seems to be 3/8" in diameter.

    The pulley wheel diameter is about 1.75". The thickness is 1cm, with an inner groove of 8mm. The center of the top pulley wheel is separated from the center of the bottom pulley wheel by 28".

    The guide rail is 0.25" in diameter, and it seems to be 28" in height.

    Quoted from Fortytwo:

    Don't over think this. It's not a precision machine expensive linear bearings are not nessassary. A nylon chunk with a hole would be more than enough. It's not fast moving to require a bearing.

    I agree. If the weight, reliability, or quality of the bearings become an issue, I recommend we go with the hole in the block method. I think the piece that connects the pulley to the telecoping rod should be 3D printed, whether in full or with screw points for these cheap bearings winteriscoming has found.

    #153 7 years ago
    Quoted from winteriscoming:

    We've talked about addressable string lights. I kind of like these LED strips. They're made to be cut and have solder pads where you could potentially cut them to mount them pretty flush with the back of the PF at all of your lit holes and then connect them back together with wire at the solder pads.
    These require 4 wires between them, and need 2 pins from the RPi (rather than 1 from some other options I guess), but claim to be fast.
    https://www.adafruit.com/products/2239
    These are pretty well reviewed and only require 3 wires between them and only 1 pin on the RPi. I think there are timing restrictions as a result, but they're cheap and if they can be made to work, that's a lot of lights for the price.

    I did a little searching around for a good light solution a few days ago, and what I've been thinking is using FadeCandy from Adafruit to control the lights:
    https://www.adafruit.com/product/1689

    Plugs in by USB, and it takes the 3 pin WS2812 lights from your Amazon link and any others made to that specification, including those string lights I linked earlier, and the RGB ring someone else linked. You don't need to worry about potential timing problems, because this thing can operate 8 separate strips of 64 RGB LEDs, so 512 RGB pixels. You can add more FadeCandy PCBs for even more lights, but I think 512 would already light up my entire house, haha.

    #154 7 years ago
    Quoted from winteriscoming:

    At this point I'm seeing what Le Chuck has done at BYOAC and thinking that's basically what we're aiming for:
    http://s479.photobucket.com/user/vonjett/media/Space%20Base/BackofPF1_zpsc6063ed9.jpg.html?sort=3&o=8
    A part of me wants to experiment and figure this stuff out, but he's already got a solution for movement and a rod, so it might be worth waiting for him to release the info. Anyone who's a member of BYOAC care to PM and ask if he'd share info on the telescoping rod and pulleys?

    BYOAC has new accounts' permissions locked down hard. I didn't have permission to private message other users, or even view their profiles. Wouldn't matter though, because he said in his response to me:

    Once complete everything will go open source, the reason we aren't do releases as we go is because things are still in flux and I personally don't want to put out bad poop, have someone spend money, get ahead of me only to find out it doesn't work as advertised. Plans, parts lists, music, code, the works.

    So we're not going to get that specific information from him until the new machine is done.

    #157 7 years ago
    Quoted from Pugsley:

    You could detect every hole on the game using no switches. instead make a grid of beams like a IR touchscreen and then you know what hole has been entered by what pair of row/column sensors has been broken first.

    A grid of detectors and emitters has been suggested a few times, but I don't think it's viable. The problem is that your emitters need to have laser-like accuracy because their beams need to travel a relatively long distance, at least 20" in each dimension, and they will probably have to be spaced out 1" or less from each other because of how clustered some of the holes are.

    Quoted from Pugsley:

    Next I would not recommend using lead screws for the bar. this will give no play in the bar unless you design something into it to compensate. The original system used the rubber bands because they would give and slip on the pulley if they needed to prevent the telescopic rod from getting bent or dented by a ball wedging between a hole and the bar.

    That's a good point that I don't know that we considered yet (I didn't), but we've already decided to go back to the pulley method.

    Quoted from Pugsley:

    And I would not use analog sticks as the digital ones are what made the game hard.

    Already decided on digital joysticks.

    Quoted from Pugsley:

    Also didn't read page 2 or 3 so if I repeated some things sorry.

    Yeah, you're going to miss some stuff that way and maybe give outdated advice.

    #160 7 years ago
    Quoted from Fortytwo:

    I would also state the cabinet construction of the original ICB was crap material. A flat pack would be better than the original.

    This is true. I think the original cabinet is built out of particle board.

    #163 7 years ago
    Quoted from ForceFlow:

    A little late to the party, but I had an idea about the holes for the vertical playfield. To make them more visually interesting, you could drill the holes a bit larger then stick a plastic tube in the hole (that would accomidate the ball), sand the end of the tube to make it frosted, then light it with LEDs.
    Do that with multiple holes, and you could indicate variable targets and also put on some light shows.

    Yeah, that's in the plans.

    Quoted from XXVII:

    I was thinking the outlines of the holes could be illuminated as rings rather than a bulb in the back of the hole. On the Taito machine, the holes, especially Hole 1 is kind of hard to see lit up because the bulb is behind the hole and far enough back to allow the ball to pass between it and the playfield. It's a little confusing for new, tall players at first because they have no idea what their goal is supposed to be.
    I'd like to see every hole, not just the targets, lightable as rings with RGB LEDs. That would give you the opportunity to do things like animate a path across the playfield to the next goal, for instance. With my X-Men example, you could easily make Wolverine claw slices across the playfield, or draw an X across the whole thing, etc.
    The way it could be done is to press the LED against a ring (tube, really) made of thick white, slightly translucent plastic. The plastic ring would act as a diffuser to spread the LED light throughout itself.

    #164 7 years ago
    Quoted from winteriscoming:

    Is there a significant advantage to using the FadeCandy over just wiring directly to the RPi? I haven't looked into it but we're going to need to agree on this so that we don't have to come up with alternate code.

    I've only had a cursory look at FadeCandy, so I can't speak with any sort of authority on its merits over anything else. I don't know that it's necessarily the best option available, but I do think we need some sort of interface board like this with a supporting Python library for light management vs. wiring LEDs directly into the RPi. Maybe not necessary for vanilla ICB builds with only 10 holes to light in a single color, but games like ours that would light every hole in RGB are probably going to need it, especially for complex light shows. ICB has 83 holes; FadeCandy could easily support an RGB LED on all of them.

    FadeCandy simplifies the process of interacting with a large number of RGB LEDs. It also has some integrated processing features that automatically enhance the colors (temporal dithering for color correction and depth) and it has a lot of code examples for how to operate it. FadeCandy is also compatible with the Mission Pinball Framework, in case we decide we are going to program our game using that system (if it can support that).

    Quoted from winteriscoming:

    Also, I'm diving in with an RPi 3. It's likely going to be overpowered for this application, but I'm not seeing earlier versions on Amazon for cheaper and from what I can tell the RPi Zero doesn't seem like it will be as convenient (and never available at the advertised price), but we may very well end up with code that's portable to either, especially if lights and switches are done over USB. I'll add one to my order when I get something from Adafruit.
    I've got that, a strip of lights, 2 servos, and 2 2-way joysticks on order, so can start to play around with code to control them, using keystrokes as inputs for holes.
    I haven't landed on a suitable LCD yet, but I know cheap ones like 5" big are out there.
    Here's one with a touch screen and HDMI input for $30:
    amazon.com link »
    Here's a $20 with no touch screen and composite input:
    amazon.com link »
    I don't think we want a touch screen, though.

    I haven't started thinking about displays much yet. I was almost thinking maybe we should start the vanilla code with a segmented LED display, but realized that would probably be more expensive than using one of these touch screens and just emulating the look of segmented LEDs. I wouldn't worry if the screen has touch interface built-in, we simply won't connect it and pretend the functionality is not there. I was thinking for my game that I would use an automobile rearview mirror with an ultra widescreen LCD built-in, which would be closer to the ratio of a pinball DMD.

    #169 7 years ago
    Quoted from winteriscoming:

    What are the holes sizes we're aiming for? I want to check out what options there are for clear pipe/tubes. We'd just have to stick to whatever sizes we can acquire.

    I'm in the process of mapping out the coordinates of the holes on my cabinet, but they are all one of three sizes: target holes have diameters of 3/4", the rest of the holes have diameters of either 1" or 1 1/8". These measurements would be the inner diameters of the tubes we buy so that we don't change the gameplay.

    #170 7 years ago
    Quoted from winteriscoming:

    So the standards we need to nail down are:
    Display - LCD via HDMI or Composite

    I'd recommend connecting by HDMI. It will be a little more expensive for the monitor, but I think to connect composite on RPi requires a separate dongle, so that narrows the price difference a little bit. Aside from that HDMI is going to allow using the maximum clarity and full resolution of the LCD panel.

    Quoted from winteriscoming:

    These would directly impact the way it needs to be coded, so I'm trying to exclude things that wouldn't. For example, the code doesn't care how we sense a ball (IR transmitter, switch, other) as long as it reads as a digital input.

    I think the IR detectors' output is analog. I don't think we'd be able to connect them to an I-PAC.

    #171 7 years ago
    Quoted from XXVII:

    I think the IR detectors' output is analog. I don't think we'd be able to connect them to an I-PAC.

    This IR detector is digital, unlike the Sparkfun model. https://www.adafruit.com/products/2167

    #173 7 years ago
    Quoted from flecom:

    why a RPi? this game is simple enough that an arduino should be able to do it unless you want to do fancy animations or something on a big display?

    Yeah, fancy animations and stuff is why. I already own an Ice Cold Beer, so just a replication of the existing game is of little interest to me. I want light shows and sound effects and video screens, and Arduino won't cut it for all that. RPi might be overkill for just an ICB replica, but the base code being written for that rather than Arduino means that winteriscoming and I won't have to rewrite everything again for RPi when we go to build our custom features. Might as well start with what we already know we're going to use.

    #194 7 years ago
    Quoted from winteriscoming:

    I haven't done enough research to know if we want NPN or PNP. I'm sure those more knowledgeable are laughing at me right now. What needs to happen is while the sensor is sensing the light, it needs to give the input pin a low state. When the light beam is broken, it needs to give the input pin a high state. That way we're only getting input when a ball passes through the beam. Though I think some of that will depend on your input device... is it supposed to be sinking a pin or sourcing it? The microcontroller I want to use could be configured for either case. Any idea what an IPAC needs?
    Edit: quick google search says PNP for sourcing and NPN for sinking.

    For the I-PAC, will transistors be necessary? Forgive my electronics naivety, but I figured you could plug the IR sensor's data pin into one of the I-PAC's inputs and then connect the sensor's power pin to an external 5V power source, then share the ground with the I-PAC, and it would just work without any other components (maybe a resistor).

    Edit: Based on this example, it looks like my thought process wouldn't work. Bummer. https://learn.adafruit.com/ir-breakbeam-sensors

    Second edit: Haha, okay I understand now. The IR sensor IS a transistor itself. I suppose for I-PAC, we would need it to operate the opposite of a microswitch. When IR is detected, the circuit should be open. When the IR is not detected, the the circuit should be closed.

    #197 7 years ago
    Quoted from winteriscoming:

    I think we need to figure out what's happening in the I-PAC, too. Either a switch is grounding (sinking) a pin that's normally high on the controller or it's putting voltage to one (sourcing) that's normally low. My guess is that it's sinking the pins since they're made for arcade cabinets and if I recall correctly switches in arcade cabinets tend to have a shared ground between them, so when you hit the switch you're grounding the pin on the arcade PCB. This is based on my limited experience wiring an arcade control panel, but I could be wrong and it should probably be verified what the I-PAC is doing with a switch. That will determine the IR sensor we need to have as our standard.

    I can't make an assumption on the I-PAC, but there is a shared ground for all the pushbuttons. I assume the answer could be found with a multimeter? One probe on ground, the other on an input pin. If there is current, then it is normally LOW and when the button is pressed it becomes HIGH; if there is no current, then it is normally HIGH and when the button is pressed it becomes LOW. Is this correct? I have an I-PAC, and I believe I have a multimeter somewhere that I can dig up.

    #205 7 years ago
    Quoted from lpeters82:

    We're building a better version of a $1,500 game. No worries here.
    PS: Not saying I want to go crazy, but so far I think we're keeping things very reasonable. Keeping things as stock as possible is a good call.

    That's a great point.

    Quoted from winteriscoming:

    My hope is to come up with a cheaper alternative to the I-PAC for our purposes, allowing for the I-PAC to still be used for those who want it.
    The I-PAC is a little too feature rich for what we need. It removes what appears to be a common USB HID keyboard limitation of 6 simultaneous switches hits at the same time, but we're never going to have even 6 at a time in our game, so something cheaper with that limitation is going to be fine.
    The most simultaneous switch hits I can think of in a potentially legitimate situation would be 5.
    -up or down on left joystick
    -up or down on right joystick
    -up or down left limit switch
    -up or down right limit switch
    -hole switch or trough switch
    For the most part while you're controlling the joysticks none of the limit switches are going to be triggered, so generally you'd only have 3 simultaneous switches, one on each joystick and one in a hole sensor or trough.
    The standard we want is a HID keyboard. So one option is to hack a USB keyboard apart and replace keys with the IR transmitters. This would likely be among the cheapest options if you can source a cheap used USB keyboard.
    Another alternative would be go to with a microcontroller that has a high input count and can interface with USB as a keyboard.
    Teensy is an option:
    https://www.pjrc.com/teensy/td_digital.html
    The standard Teensy has 21 potential inputs.
    The Teensy++ has 38 potential inputs.
    Here's a keyboard example using a Teensy:
    https://www.pjrc.com/teensy/usb_keyboard.html
    Teensy can be programmed over USB, so if we come up with code that does what we want, it would likely be a cheap option for this project where you wouldn't need specialized hardware to program it (like you would have needed for the PIC microcontroller I was originally planning to use).
    Here's a Teensy++ for about $30:
    https://www.adafruit.com/products/731
    Here's a Teensy 3.2 for about $20:
    https://www.adafruit.com/products/2756
    Now, if we go with 1 Teensy++ at 38 inputs, we have the following that take up 12 inputs and the rest can go to holes:
    2 2-way Joysticks - 4 switches total
    4 Limit Switches - 4 switches total
    Start Button - 1 switch
    Trough Switch/Detector - 1 switch
    Errant Ball Switch/Detector - 1 switch
    Test/Service Switch - 1 switch
    So assuming we don't want a coin switch or 2, that's up to 26 sensed holes with one Teensy++. Add another and we're up to 64 sensed holes at a cost of about $60.
    For the same price ($60), 3 standard Teensy 3.2's give a total of 63 inputs and 51 sensed holes.
    Comparatively, the I-PAC 2 with 32 inputs is $39 and the I-PAC 4 with 56 inputs is $65 (plus shipping from the UK?):
    http://www.ultimarc.com/store/section.php?xSec=2
    I-PAC 4 gives 44 sensed holes for $65 (not sure how much shipping is).
    I'm looking to see if there are cheaper options.
    A more complicated setup could potentially use one $20 Teensy 3.0 with a switch matrix, such as a 10x10 matrix for 100 switches total, but that would complicate the wiring.
    At the end of the day, any of these solutions should work as long as the switches are read over USB as keystrokes as if it were a keyboard.

    That's a clever solution. I was trying to figure out this transistor nonsense to make an inverted circuit so the IR detectors could interface with I-PAC so that we could maintain a simple keyboard link to RPi, when the real solution is using a Teensy to emulate the keyboard directly, bypassing the need for the I-PAC and more complicated wiring at each hole. I'm going to get a Teensy++, which like you said, is cheaper than the I-PAC.

    #215 7 years ago

    Here are some additional ideas for custom game themes:

    Pinball games: My original idea before X-Men was to make an ICB that is Bally Addams Family themed. Addams Family has lots of great Gomez callouts and pinball related DMD animations that could easily be repurposed for ICB. This is true for a lot of pinball machines, and along with DMD animations and sound effects, the artwork from the cabinet and playfield could be traced, rearranged, and reprinted for for your cabinet.

    Pokemon: I'm thinking instead of X-Men, I might make a Pokemon themed game. Random holes would light up on the playfield representing a Pokemon to capture ("a wild Pikachu appears!") and the difficulty of the hole and the amount of time available to sink it would scale with the level and rarity of the Pokemon. The Raspberry Pi has built-in Wi-Fi, so I would save the game data to a web server and make it persistent. So players will be able to create an account (probably just a simple number password or something of the like) and they could keep their progress and continue the next time they come to play. I was hoping there would be Pokeball marbles so I could use a Pokeball for the ball inside the game, and there's actually a huge line of Pokemon marbles, but somehow it never occurred to the creators to ever make a Pokeball marble. Oh well, I can just pick a random monster to stick in there, and settle with making some Pokeball balltops for the game's joysticks.

    #218 7 years ago
    Quoted from winteriscoming:

    Man, I really like this idea! I was 11 and had the original fat Gameboy and Pokemon Blue (brother had Red) when it first came out. I watched the cartoon for a while, too. My wife who is younger than me is too cool for Pokemon, so she'd totally make fun of me if I made one with that theme...

    Haha, practically all of my friends are obsessed with PokemonGo at the moment. I somehow missed out on Pokemon over the years, and I've never actually played one of the games aside from catching Pokemon in Go for my friend while he's driving, but I understand its appeal.

    Quoted from winteriscoming:

    I think the main thing to watch out for there is that Rick of Planetary Pinball holds the license for B/W titles, and is an active member of Pinside. I can't speak for him, but I'm pretty sure he'd be obligated to shut down any unlicensed sharing of B/W assets.

    Yeah, I was talking for peoples' personal game customizations, not so much the thing we're putting together. For the main project, the more generic the better, but I think for what we each do for ourselves, go wild.

    #220 7 years ago
    Quoted from lpeters82:

    Someone previously mentioned haunted house. That's what gave me the idea for the maze mode. I was thinking about escaping from a haunted house. If we decide on a few game modes I think that will help us find a theme that will work. Obviously if we use samples you could also customize your theme. My preference is something fairly timeless. Some campy humor would be great too. I'd go so far to say campy humor is almost a must.

    Yeah, I assume as we get closer to realizing this project that we should come up with some kind of retheme for general use. A haunted house theme could be great.

    This could be a great boon for us: Ben Heck has all the source code, artwork, sounds, and animations from America's Most Haunted freely available for download on his website: http://www.benheck.com/amh/

    I don't know know what the license is for these assets, but if it is open source or permissible, that could save us a lot of effort. Already filled with funny campy humor!

    #223 7 years ago
    Quoted from winteriscoming:

    I started playing around with code on my laptop. Pygame is a Python library made for game design that has some features we want, including the ability to make a graphical front end and read keystrokes.

    Indeed. This is the same Python library I've been looking at. This is a good overview tutorial series I went through to understand the gist of it:
    http://www.nerdparadise.com/tech/python/pygame/basics/

    #225 7 years ago

    I created a GitHub group to host our code and other media as we create them. It is simply called 'welovepinball'. Lemme know your GitHub account names and I'll add them to the group. This is only necessary if you're intending on contributing code; you can browse and download the code without an account.

    I've committed an initial bit of code to the group as well:
    https://github.com/welovepinball/ball-balance

    Please forgive me if it sucks. I'm relatively new to Python, and I'm not a programmer anyway.

    This is just some very basic, foundational level code at this point. My intent is on building a modular system with a game mode focus and configurability.

    There are three modes in this first commit: Attract mode, Game mode, and Game Over mode. Attract and Game Over are just proofs of concept of switching modes; they only show a blank screen with a different background color. Press Enter to switch modes.

    The Game mode has a little bit of interactivity. You can simulate the use of the joysticks and limit switches. Pressing "W" and "S" will control the left side bar carriage, and the Up and Down arrows will control the right side bar carriage.

    arm1_(resized).pngarm1_(resized).png

    The left side limit switches can be activated with the "[" (left bracket) and ";" (semicolon) keys, and the right side switches can be activated with the "]" (right bracket) and "'" (apostrophe) keys. Activating a limit switch will prevent the carriage from moving in that direction on that side, and it will also change the color of the carriage to orange to indicate that something happened.

    arm2_(resized).pngarm2_(resized).png

    The keys I chose for switches and joysticks are configurable in the config.py file. I've also included some other keys that haven't been implemented yet, including the start button, tilt switch, and hole switches.

    #226 7 years ago

    I haven't integrated any of the FadeCandy light stuff in the code yet, but I've been playing with OPC, which is an LED simulator for your computer that interacts the same way the FadeCandy will, and I've been running the Python demos through it. It has me excited for the possibilities.

    I made a grid of the ICB target hole pattern and dropped it into OPC. It looks good! Especially with the raver_plaid.py demo. Obviously the screenshot doesn't show it, but the LEDs transition through different colors and sometimes fade to black in a cascading pattern.

    opc_(resized).pngopc_(resized).png

    To get this hole pattern in your OPC, copy the text below into a new file in OPC's layouts folder, I named mine icb.json, and then load it into OPC following the directions in its install steps:


    [
    {"point": [0.0, 0.0, -2.0]},
    {"point": [-1.57, 0.0, -1.8]},
    {"point": [1.56, 0.0, -1.35]},
    {"point": [-0.78, 0.0, -0.86]},
    {"point": [0.63, 0.0, -0.03]},
    {"point": [-1.46, 0.0, 0.80]},
    {"point": [-0.13, 0.0, 1.21]},
    {"point": [1.34, 0.0, 1.68]},
    {"point": [-0.88, 0.0, 2.28]},
    {"point": [0.44, 0.0, 2.66]}
    ]

    After I get the holes mapped out in my cabinet, I plan on making a new version of this so we can see some really nice light shows.

    #228 7 years ago

    Just pushed another code commit. No functionality change, I just added a bunch of comments for how the whole thing works so that it's easier for an inexperienced programmer to jump in.

    #230 7 years ago

    In case you'd still like analog joysticks for your custom game, I see that Adafruit just added one that looks like it would be decent with our new Teensy keyboard setup: https://www.adafruit.com/products/3102

    3102-01_(resized).jpg3102-01_(resized).jpg

    Restricting to vertical moment seems like it'd be easy with this joystick. Either cut a slit in your control panel to restrict movement from the top, or from the bottom you can pull off the bottom plate, then insert some barriers (maybe 3D print this piece if you want it fancy) to prevent side-to-side movement. Another option is to 3D print a new ring for the top to act as the restrictor plate.

    They are already out of stock, but if you Google the model number "JH-D202X-R4" you'll find them available on Amazon and other places, and cheaper.

    It's just a couple of potentiometers, so you could do something like map one joystick the X movements of a mouse and the other joystick to the Y and send that to the RPi, or you could send different keyboard buttons mapped to different servo speeds as the joystick moves past increasing resistance thresholds. Not sure if you can emulate a mouse and a keyboard at the same time on the same Teensy, so I'd probably do the keyboard method if I were to use these.

    #231 7 years ago

    Whoops. Accidentally submitted instead of edited.

    #233 7 years ago
    Quoted from winteriscoming:

    I uploaded changes to include a service menu. I also started a rudimentary service menu setup with selectable items and sub-menues.
    The first sub-menu I'm attempting to work on is the control configuration where the menu will let you define new keys. I think I'm running into a bug (at least on my Windows 10 setup) where the routine pygame.key.name(int) isn't behaving the way I'm expecting. What it's supposed to do is return the name of the key, but it only ever returns "unknown key", so the controller config menu just shows "unknown key" for everything.

    Nice work! I'll see if I can try to help debug it. I'm going to do a small update in a second. I'm moving the logic for the service mode button to game.py, that way we won't have to add the service menu button logic to each mode we add. My update will also have the very start of trying to add sound support. There are sound effects when you move the bar up and down. Because we don't have any open source sounds yet, I'm keeping them in a directory outside of folder captured by Git. I just wrote the logic to handle a situation where PyGame is asking for a sound file but it doesn't exist. That way the new code won't crash when you try to move the bar.

    Edit: Took me a little longer than expected. When I tried to submit my changes, I accidentally blew them away locally and had to rewrite them! Still new to this Git stuff...

    #234 7 years ago

    Looks like there might be a bug with PyGame: http://stackoverflow.com/questions/27470730/how-to-get-the-descriptive-name-of-the-key-constants-using-the-key-constant

    What might be the solution instead of a menu showing the current settings is to ask the user to move the left joystick up, then set it, ask to move the left joystick down, then set it, right joystick up, set it, etc.

    #237 7 years ago
    Quoted from winteriscoming:

    Man, allowing for dynamic control configuration in the menu is going to get a little complicated.
    First, the code is going to have to back the carriages off of the limit switches, and the ball is going to need to be out of the trough. I suppose ideally we'd have the rod do whatever it does at the beginning of a game where it loads up a ball. That way no switches are hit when configuring the controls.
    Then, without any check for redundant key entries, it would be entirely possible for someone to hit the wrong switch and two functions get assigned to the same switch, such as up/down being tied to up. I suppose a check will need to verify that the pressed key hasn't already been assigned.

    Well, now that I think of it, there's no pressing need to have the switch configuration embedded in the menus. It only needs to be set once and then forgotten. Anyone putting one of these cabinets together is going to have to do woodwork, RPi configuration, circuit assembly, soldering, and more, so I think they can manage to type in the switches into a config file.

    Maybe that menu item should instead just show the key number of any switch that is currently active. So when the user presses up on one of the joysticks, the key number appears on the screen. Then they can copy that in their config file themselves.

    #243 7 years ago
    Quoted from Fortytwo:

    Hello, just caught up after a long weekend. Wow a lot of good progress. One question abut the cost so far. I see you had $200 plus in electronics. Is the stillness a flatpack of wood planned? Any idea of cost? Who would be making these and would pickup or delivery to a show happen? Lastly may I ask they have the groove for t mounding be pre cut.
    I like the direction, I think cost in all components should be kept in mind. Can't wait to see progress.
    FortyTwo

    We don't want to go crazy on component costs, but we want to maximize our ease of development and that comes at a price. We wouldn't have made the progress we already have if we were trying to squeeze every penny out of the build because there would have been more of a learning curve for us. I don't think we've gone too crazy yet even with pushing past $200. Like lpeters82 said, we're building a better version of a $1,500 game, and I feel pretty confident we're going to keep the final cost below that. A decent amount below that hopefully.

    At this point, I think what winteriscoming's inventory is missing is: the IR detector and emitter pairs, a bunch of wire, clear tubing, a tilt plumb bob, solenoid, something to control the solenoid, 3D printed, CNC'ed, or otherwise developed carriages and ball gate plate, the telescoping rod, the playfield glass, two microswitches, a spring, a small LCD panel, speaker system, an arcade pushbutton, a service button, and the cabinet and playfield that he will CNC himself. After that is all the normal stuff that would go into the costs for a MAME cab, like graphics, T-molding, etc.

    #244 7 years ago
    Quoted from winteriscoming:

    I totally got the Arduino Mega2560 clone doing exactly what I wanted and the code for it ended up being pretty simple.
    I uploaded the sketch to GitHub.
    The 6-key limit comes from the limited buffer you can send, which I guess is a specification of the HID standard. It's an 8 byte buffer, where the first is a modifier (like shift), the 2nd is reserved (didn't research), and the last 6 are able to carry key scan codes.
    I was pleasantly surprised to find that the buffer is very easy to manage. I just clear it out at the beginning of each loop, and if an input is held to ground a specific scan code gets put into the buffer. Once all inputs are checked, the buffer gets sent to the computer and read as key-strokes. If the same scan code stays in the buffer, it's read as a held down key. If a previously held down key is no longer in the buffer, it is read as released.
    I set all the inputs as pull-up inputs and all they need is to be bridged to ground to trigger them. I verified that multiple inputs being activated works the way we want it to in Pygame. As a test I grounded the inputs assigned to a limit switch on both sides and verified I could simultaneously activate a joystick up/down to move a carriage in the direction that wasn't limited.
    I don't have any way to test the speed of this at the moment, but I imagine it will be plenty fast enough not to miss any input for our game.
    If we end up needing more inputs, a 2nd Arduino Mega could be programmed and assigned to different scan codes.

    That's great! I'm surprised how small the code is for this. Pretty cool. Not that it matters much, but is there any way to set which keys each pin emulates? I'd love for the Arduino and my actual keyboard to be easily interchangeable, but for that I'd need to know which key does what. I picked the keys that I did in the Python config because they made some sort of intuitive sense to me, I'd love to be able to retain that.

    #249 7 years ago
    Quoted from winteriscoming:

    The VUK is something I've been thinking about. So far everything is 5v for this game. We were originally looking at 12v stepper motors, but with the switch to servos, not even 12v is needed.
    I don't know if a 5v solenoid is going to do what we need. What does this mechanism look like in ICB and is it just using a low voltage solenoid?
    An alternative could be to have an errant ball fall into some chute with a sensor that ends at a little door where you can manually grab it and put it in a hole placed somewhere higher up.
    Is there no way to design it such that an errant ball would always fall into the trough? I guess that gets more difficult in the front where there has to be space for the rod to open the door to get the ball from the trough. Maybe that doesn't leave room for a funnel down into the trough?

    I just checked the ICB manual and the solenoid part number is listed. It is Taito 23-00004-001.
    http://www.marcospecialties.com/pinball-parts/N-26-1200

    I can't cleanly take a single photo of the errant ball return assembly. It's actually just a path molded into the plastic backboard behind the playfield. Here are some photos.

    I don't think it'd be possible to design it in a way to eliminate the errant ball return, because there's always a risk of the ball from falling below the bar.

    IMG_0461_(resized).JPGIMG_0461_(resized).JPG

    IMG_0463_(resized).JPGIMG_0463_(resized).JPG

    #250 7 years ago
    Quoted from winteriscoming:

    Edit:
    hmm... could we get away with some kind of servo driven scissor lift?
    » YouTube video

    I like this out of the box thinking. The ball falling to the errant ball area is rare, so if a 5V solenoid isn't strong enough to pump the ball back up, I don't want to waste electricity having an extra 12V-24V supply in the cabinet just for those emergencies. This lift seems like the right kind of alternative. Maybe we can do a little scooped conveyor belt that is attached to a motor that carries the ball up?

    Edit: Here is the obvious, easiest solution to the problem.

    Okay, maybe not, but it is hypnotizing to watch.

    #252 7 years ago
    Quoted from winteriscoming:

    If it's that rare of an occurrence, is manual retrieval completely unacceptable? Either by way of a chute to a door on the outside, like a coin return slot, or by opening up the game? These are going to be HUO, so someone nearby would have a key (if it even needs a lock). It's just potentially a lot of effort put into making automatic with very little payoff.
    Heck, you could even load up some kind of ball dispenser up top with 5 or so balls in it. It could be a service menu item, wire up some kind of emergency hidden switch, or have some way for the game to know to eject a new one. When you run out of balls, you open it up and reload the dispenser.

    It'd be cool to figure out a dispenser mechanism, and if it could be done simply and inexpensively I'd love to do it. But you're right. These are just going to be HUO machines with the owners probably not far away in case something goes wrong. Not really much different than pinball machines in the house in that way. Can't completely avoid having to take the glass off once in a while.

    #254 7 years ago

    Found a good ball dispensing mech:

    We can make the errant ball hole just dump the balls into a tray or bucket inside the bottom of the cabinet. For the dispenser, after the game attempts a ball search and fails (telescoping rod travels from the bottom limit switches all the way to the top limit switches), the motor for the dispenser is activated. The game will know to stop spinning it when the new ball passes over a switch right at the dispenser's exit point.

    The game can keep track of how many times it's had to do that, then give a warning to the operator in the service menu and on boot that the ball dispenser needs to be reloaded.

    #255 7 years ago
    Quoted from KloggMonkey:

    For the ball to need the popper doesn't it have to fall below the bar? How does that even happen?

    There are multiple ways. Sometimes, when the ball goes into a hole, it will bounce against the backboard and then pop back out to the front through a hole lower than the one it entered. Another way is if a ball gets lodged between the bar and the edge of a hole, sometimes it will pop below the bar. I've witnessed both of these things, and there are probably more ways.

    #257 7 years ago
    Quoted from Fortytwo:

    I'm up for a spring loaded plunger behind the coin door. Open it up pull plunger down and release.

    Clever!

    #259 7 years ago
    Quoted from winteriscoming:

    I've been programming in Python 3. I used it in my last project, but syntax for some things is a little different than 2. Is that what we should be using? I'm in the process of getting my RPi set up for testing.

    Oh good. I've been using Python 3 for future proofing, but I haven't set up my RPi yet and didn't know how good its compatibility is with 3. The OPC demos are written in Python 2, but they will work with a little bit of changes. Just alter the syntax or delete any line that uses print() and they will work. I believe FadeCandy has been made Python 3 compatible. Can you think of any other libraries that we are going to need for our code aside from PyGame and FadeCandy?

    #260 7 years ago
    Quoted from winteriscoming:

    I confirmed it boots with Python3 just fine on the RPi. The only issue is that it shows the mouse cursor in the upper left corner. Maybe there's some code to hide cursor?

    pygame.mouse.set_visible()
    http://www.pygame.org/docs/ref/mouse.html#pygame.mouse.set_visible

    The thing that stops me from using this and fullscreen yet is that fullscreen initially reacts poorly on my monitor and makes my audio cut out for a moment. Really annoying. We haven't made the real LCD output yet anyway, so I don't think it matters much.

    #264 7 years ago
    Quoted from winteriscoming:

    After getting the Arduino Mega working, I started thinking about the phototransistor relationship, and I can see the issue you were trying to resolve.
    The way I've currently got the Mega working is that a pin held to ground gets counted as active. However, with our phototransistor in place of the wire to ground, the path to ground is going to be open when the phototransistor receives light, and closed when it is blocked from light by the ball passing through. So that wouldn't be ideal in an I-PAC setup, unless you're able to configure pins for the opposite case. Fortunately we can change up code for the Mega such that it only transmits a keystroke when the path to ground is closed.
    Currently the code is checking for a low state:
    if( digitalRead(pin) == 0)
    Instead, it would just need to be changed to check for a high state:
    if( digitalRead(pin) == 1)
    My limited understanding of setting up the inputs on the Mega as INPUT_PULLUP is that it utilizes built-in limit resistors and cuts down on the hardware you need to wire up for each switch, making it so that all you need is a simple connection to ground to bring a pin into a low state without anything else. What I'm not sure of is if there's a potential risk to the board if 50 input pins are simultaneously held to ground, and only ever momentarily released when a phototransistor is triggered. Maybe at worst it would be a higher power draw, but we'd be in the same power draw situation wiring it such that a phototransistor brings a pin high when lit and low when not. Plus we're not using a battery setup, so we're not as concerned about power drain, and I can't imagine this thing drawing a significant amount of power compared to our pinball machines. We'd just need to make sure we've got an ample 5v power supply, and maybe it needs to be powered externally rather than through the USB port.
    I would think the worst that would happen is you break the $10 Mega... but probably the RPi would just shut down the USB port if the current draw was too high.
    Edit:
    By the way, my hope is that for the Mega the only thing we'll need to do to wire up the phototransistor is to just wire one leg to the pin and the other leg to ground, making sure it's oriented correctly. When it gets lit, it should open the path to ground and put the input into a low state.

    Yeah, exactly. I think the I-PAC expects normally open switches, so we'd have to invert the signal from the IR detector in order to make it work correctly. Would have complicated the wiring. The Arduino/Teensy way is going to be much cleaner and simpler.

    #266 7 years ago
    Quoted from rosh:

    should not matter, you would just have to handle the reverse logic of it in code, just like you do with a pinball machine.

    Sure, in game it shouldn't matter too much, but this is acting like a keyboard device. That means even when the game isn't running, all the keys paired to each input are going to be held down. That wouldn't be very helpful at all. The Arduino solution lets us control the input in a way the I-PAC will not, and it's cheaper.

    #270 7 years ago
    Quoted from winteriscoming:

    My idea for holding the telescoping rods is to have small block with a sleeve bearing on it to allow for smooth motion and keep us from having to drill into the rod too many times, though drilling may be needed for the little arms that keep the ball from going too far at the edges.

    The carriage would have a threaded hole in it for the the bolt to screw into. A small block would have the sleeve bearing going through it, the bolt would go through that and likely there would be some kind of spacer between the block and the carriage to keep the rod far enough off of the playfield. In this setup the rod/block would pivot off of the bolt, hopefully with low friction due to the sleeve bearing.

    I made a little drawing of the existing holder for the rod along with the carriage that attaches to the pulley and slides along the guide rail. This was from memory, so it's not to scale.

    carriage_(resized).pngcarriage_(resized).png

    Edit: quick explanation of the mechanism.

    The back of the carriage has a clamp to attach to the pulley cable. It is tightened into place with a screw (that I didn't draw). In the middle of the carriage are the holes for the guide pole. In the front of the carriage is an arm. Connecting to the arm with some sort of unthreaded screw is a plastic piece. The plastic piece acts as a hinge to the carriage arm. The plastic piece connects to the telescoping rod with a rivet in the back of it. The telescoping rod is stationary in relation to the plastic piece; it's not able to move or rotate at all. The plastic piece handles all of the rod's movement with the carriage.

    #274 7 years ago

    One thing to think about still is tubing for the hole LEDs. The plan as discussed so far is to carve out the holes on the playfield a little larger than the original game so that tubing can be inserted. It will be pushed all the way in so that the front is flush with the playfield. An LED will be pressed against the tube, which should illuminate the tube, and more importantly, the front edge of the tube, creating an outline around the hole for the player. With the FadeCandy PCB and the tubing, we will be able to create all kinds of neat lightshows, similar to a pinball machine.

    For reference, the diameters of the holes in ICB are:

    Target holes: 3/4”
    Medium holes: 1”
    Large holes: 1 1/8”

    In order to not change the gameplay, these dimensions will need to be the inner diameters of the tubing we select. Whatever outer diameter we choose is the size of the hole that will be drilled into the playfield.

    I’m still in the process of mapping out the holes on the playfield, but I can tell you that space is going to be tight. If we were to choose tubing with 1/8” thick walls, there are holes that wouldn’t work. Everything is fine with 1/16” tubing though.

    I’m thinking that because the target holes are small, the most difficult shots, and there’s space for it, we should choose tubes for those holes that are 1/8” thick, and then 1/16” thick tubes for every other hole.

    If we can decide on specific extra holes that we would like to add sensors to, we could bump those ones up to 1/8” as well, assuming space accommodates it.

    From my experience, tubes that are milky white in color rather than clear are significantly better for diffusing light through the tube. Clear tubing allows the light to stay too directional, so you don’t get optimal light transmission.

    One product I can recommend with first hand experience is this:

    SiliconeTubing34ID-2_(resized).jpgSiliconeTubing34ID-2_(resized).jpg

    https://www.brewhardware.com/product_p/siliconetubing34id.htm

    This tubing would perfectly fit the target holes with its dimensions of 3/4" ID x 1" OD.

    My friend takes his artwork to conventions and he was on a mission to find the best possible inexpensive tubing for LEDs to line his booth, and this is what he chose. This tubing is made of silicone rather than PVC.

    I’ve seen the same LED strip he puts in this tubing in other clearer tubes, and if the LEDs weren’t facing forward, you couldn’t see the light at all. With this tubing, it doesn’t matter which direction the LEDs face, the entire tube is evenly illuminated. You can see this tube lit up from hundreds of feet away. Here’s a photo:
    booth_(resized).jpgbooth_(resized).jpg

    For the larger sized holes, I haven’t found a good product yet. Optimally, we could find slightly white silicone tubing of these sizes:

    1” ID x 1 1/8” OD
    1 1/8” ID x 1 1/4” OD

    #276 7 years ago
    Quoted from winteriscoming:

    I think the issue with silicone is going to be rigidity. I also don't think you'd be able to easily get an exact flat cut at the surface of the pf, and I'd be surprised if sanding it was effective.

    Ah, good point.

    Quoted from winteriscoming:

    I'm getting some clear polycarbonate tubes in my McMaster Carr order. I think after cutting/sanding it will become hazy and hopefully disperse the light.

    Hopefully they will be sufficiently bright. If not, perhaps sanding the entire outer surface of the tube in addition to the edge will help bounce the light around it.

    #282 7 years ago

    I'd like to not have to cut any metal at all for this project if I can help it. Do you have suggestions for 8mm guide rods that are ~28" (~700mm) long and inexpensive? I found this part made for RepRap 3D printers that looks like it might be suitable, at 800mm (~31.5"):

    ebay.com link: 8mm x 800mm Precision Chromed Rod for RepRap Rostock Prusa 3D printers CNC O1
    $12.99 each + shipping

    I haven't measured inside the original cabinet to see if it could accommodate a bar with that extra length, this is just the first thing I've found.

    I also found this:

    ebay.com link: CNC Linear Rail 2 pcs 8mm 700mm Cylinder Shaft Optical Axis Smooth Rod Bar

    A much better fit, and $35.50 for the pair with free shipping (from Slovenia).

    #285 7 years ago

    Great idea with the AMH assets! I sent Ben Heck a message through Pinside days ago asking about the license on the AMH media, but I haven't heard a response yet. I'll let you know when that comes.

    For the main distributable package of our game, we definitely shouldn't do something with IP that we don't have rights to, just so we don't get a C&D on our project. Simpsons Ice Cold Duff Beer sounds like a great personal retheme for anyone that wants to customize their game build though. If we were to still go with the beer theme, it would be prudent for us to create new unlicensed media and give it a new name, like Frosty Mugs.

    #294 7 years ago
    Quoted from winteriscoming:

    I got my McMaster-Carr order in!
    I think the polycarbonate is going to do exactly what we want, even without being scuffed up. They came wrapped in paper, so I left the paper on while shining one LED through them. I had pretty good success with the smaller diameter hole by shining the LED onto the side of the tube, but the larger ones seemed to need to be lit at the end of the tube.
    Here are pics that don't do it justice:

    Yes! Looks amazing! This project is really starting to feel real for me now.

    Quoted from winteriscoming:

    I ordered the 2 largest diameters of aluminum telescoping rod they had available (1/4" and 9/32" with .014" thick walls). They only come in 1ft and 6ft lengths, so 6ft is the one we have to use and will definitely require some cutting once necessary length is determined. I'd recommend an abrasive cutter, like a cutting disc. These things are super light weight, so I have no concerns about added weight. Also the bump between them is very minimal, so hopefully won't impact gameplay any differently than the rod in the original.

    Without looking at my machine, that bump seems more significant than the original game, but it will probably be fine. If not, eventually Le Chuck will unveil his solution in his new build and we can transition to that.

    #301 7 years ago
    Quoted from winteriscoming:

    For those lacking in power tools, I was thinking more along the lines of a Dremel cutting disc or an abrasive hack saw blade.
    Either should be able to handle both the telescoping rods and the round rod tracks.
    amazon.com link »
    amazon.com link »

    Thanks, that will be helpful for me. I'm going to buy a CNC machine to produce my wood parts, but I don't have any tools aside from a Dremel otherwise. Nice thing about the rods is that we'll only need to produce two pieces, so even if we mangle the side we have to cut, the original edge should still be nice and clean.

    #305 7 years ago
    Quoted from winteriscoming:

    Here's a quick test with mounting the tube in a hole. This is the smallest sized hole. This was a quick and dirty test in a scrap piece of plywood. The hole was cut with a forstner bit, not my CNC machine. I glued it in place with CA glue and sanded it flush with the pf with a random orbital sander.
    The RGB LED is right on the back edge, pointing up through the tube, for the pictures.

    Beautiful!

    Quoted from winteriscoming:

    However, I think ideally if you're using these strip LEDs, you'll leave the tube a little long in the back and wrap the PCB around it. These LEDs have too big of a footprint to mount flat on the back and I think could potentially obstruct hole placement.
    Maybe there's something available with a smaller footprint? It would be possible to cut the pcb down or even desolder the LED and 2 other components (capacitor and resistor) and get them into a smaller footprint. I would imagine the through-hole version of these LEDs would need the capacitor and resitor as well, so just because there's a through-hole version doesn't mean it's necessarily going to be less work.

    This is going to be a struggle, especially with how holes are clustered at the top. You're right on your hunch with the through-hole LEDs. Someone linked to some earlier in the thread, but they do not include the capacitor and resistor. The strip cut with scissors may still be good for us though. Maybe we leave more tube on the back side, then flex the LED strip around the tube similar to how you've done in the photo, then tape around it with electrical tape after soldering its connections in. It may be that the best solution is some sort of 3D printed or CNC'ed mount that gets glued or screwed to the back of the playfield behind the hole and it can hold the strip piece, IR emitter, and IR sensor securely in place, and maybe even help make wiring each hole more convenient.

    After that is figuring out how to deal with all the wiring with so many components. Should we route tunnels into the back of the wood to help manage them? Should we daisy chain our grounds? Is there any way to share wiring between the RGB LEDs and IR pairs? Etc.

    At least we don't need to worry about orientation of our LEDs. Top, bottom, left, right, it looks like the tube is so well lit it wouldn't matter. I worried too much about light transmission it seems.

    #310 7 years ago
    Quoted from winteriscoming:

    What I'm not sure of is if ground and 5v actually have to go in one side and come out the other on each one. I measured from one end of my strip to the other and both 5v and ground are unbroken, so all the RGB LEDs are wired in parallel. The part that is confusing to me is the capacitor which looks to be going from 5v to ground on each pixel. I'm not sure what it does or how it relates to the nature of these addressable LEDs.

    I intend on wiring following the data cable arrow on each pixel. You could probably swap incoming and outgoing power and ground and it'd be fine, but you might as well go in the same direction as the data line, just for consistency.

    Quoted from winteriscoming:

    the data line. That's the wire that I assume is restricted to up to 6". However, I'm not entirely sure where the 6" limit comes into play. Can the strip be properly driven on an initial length of greater than 6" and only after that it needs to stay under 6"? If it's a 6" limit from the driver (FadeCandy), then that's a little limiting for us and we'd have to plan accordingly, possibly just having wasted carrier pixels behind the playfield that don't actually illuminate a hole.

    I assume the limit starts at the data source (FadeCandy), so I think we will need to mount the FadeCandy either right above or right below playfield to minimize that distance, and yeah, there will probably have to be some wasted pixels that are just acting as signal repeaters inside the machine. Perhaps the FadeCandy should be mounted TO the back of the playfield, so that you could just disconnect its USB cable when you want to pull the playfield out, and at least the RGB LEDs will be disconnected quickly.

    Quoted from winteriscoming:

    The other consideration is current. It would be great if we could put one PSU in the machine to drive everything.

    Yeah, it'd be great to consolidate everything for the final build, but if necessary or safer, I'm not opposed to having a power strip inside the cabinet with various wall warts for each device connected to that. That's frequently done for MAME cabinets. For testing, I bought a 10A 5V supply for my LEDs, and my Arduino and RPi have separate power plugs. Hopefully someone with circuit designing experience will help us with the load calculations as we get closer to fleshing out the final circuit requirements.

    Quoted from winteriscoming:

    Servos: I'm using the FeeTech fs5106r and here's a datasheet for it: http://cdn.sparkfun.com/datasheets/Robotics/FS5106B%20specs.pdf

    About these servos, I just received mine yesterday and they are pretty small. Do you think they will be sufficient to move the pulley with the rod and carriages attached, or do you think we may have to upgrade to beefier metal gear servos?

    Quoted from winteriscoming:

    ATX might be a good route since we could allow for it to be mounted to the back of the cabinet with a built in power switch and power cord port.

    That would be nice. With ATX PSUs, I'd recommend not going cheap on them. At least with my understanding on PCs, you get a reduction in life of your components with a lower quality PSU, and better models are 80 PLUS certified, which are more energy efficient and generate less heat.

    Quoted from winteriscoming:

    It might be worthwhile to consider incorporating fuses into the wiring for some of these components.

    Definitely.

    #313 7 years ago
    Quoted from winteriscoming:

    Which ones did you order? They come in a few standard sizes, but I think the largest are the ones where they've got 2 mounting holes on each side.
    I got this one:

    Ah, it looks like I ordered the wrong ones. I bought the same model sold on Adafruit: FeeTech FS5103R. I'm not terribly worried if these ones don't work out, they will at least be good test servos until something is nailed down for sure.

    Quoted from winteriscoming:

    How should we determine playfield size and rod length? I'd love to cut something for testing, but I don't want to end up cutting my telescoping rods too short and find out later they should have been bigger and have to order more.

    I guess we need to decide whether to add more holes or stick with the original layout. It looks like adding the three extra to the I.C.E. ICB didn't add more than a handful of vertical inches.

    Quoted from winteriscoming:

    Also, I was thinking about the pinball playfield glass, and if we had to we could have it slid down into the cabinet as far as we need so that we're not locked into the full length of it. Basically any amount of it could be hidden down inside the cabinet.

    That's an option, but I don't know if it's ideal. The glass would be a little unwieldy to get in and out of the machine due to length and the amount that would be down in the machine, but a standard piece of glass definitely beats a custom cut. If we were to go pinball glass, I think designing for wide body would be better since that would give the potential to take advantage of the extra vertical height to add more holes. How about finding a source for a 24"x36"x3/16" tempered glass sheet meant for a table top? That's closer to the original dimensions of the glass, and a relatively standard size. Might even be able to find that on Amazon or in IKEA.

    #316 7 years ago
    Quoted from lpeters82:

    I do think that a just adding additional high scores for each target will add a lot more replay-ability to the game.

    I agree. I think saved high scores (lowest times) per hole will add the most entertainment value over extra holes or any extra game modes we come up with. It will be like ghost cars in racing games. The difficulty is always there because you have to do better than your previous best.

    #317 7 years ago
    Quoted from lpeters82:

    For theme interaction what are other things we could do to make the game feel a bit different? I suggested a "drunk mode" where the flippers are reversed and/or inverted. Obviously if we're not sticking with the I.C.B. theme we can call it something different, I'm more just talking about ways of changing the gameplay. Are there other gameplay elements we could incorporate into a theme?

    There's always some way to rationalize a feature like that into your theme. Reversed/inverted flippers could be voodoo from a witch doctor on a treasure hunter theme, for instance. If we come up with gameplay ideas, someone will have an idea for how to integrate it in a good way.

    One game mode I was thinking of is a sort of flood mode. Basically, the bar smoothly moves up at a steady rate and you have little ability to drastically change the right and left carriage movements from that, so you will need to have expert control of the ball. Basically, the goal could either be to get the highest lit hole you can reach or to keep the ball on the bar as long as possible (so just a timed event). Tying that into a theme, you could light up the holes below the bar in blue to signify the water filling up the room, or green for toxic waste, or tan for a rocky floor that's raising to the ceiling to crush you, etc.

    #326 7 years ago
    Quoted from Jvspin:

    Was thinking of a novel way to do the hole detection that might be easier to wire and doesn't use any switches.
    Downside is you have to use a metal ball. Ideally you could use resistive rails that can be shorted by metal for the ball to land on when it exits a hole (if such a thing exists). Otherwise you could use some form of metal tabs for the ball to land on when it exits the hole as shown in the drawing below. The metal tabs could be wrapped around the nonconductive rails. The value of the resistors connecting the tabs should be large enough so the affect of the contact resistance between the ball and the tabs is negligible.
    Each hole would have a unique "current" associated with it when the ball shorts across the two tabs. This current would be sensed by the current sense amplifier and converted to a voltage. The voltage is read by the analog to digital converter and the corresponding output code is sent to the CPU.

    Genius! I'm hoping to use a marble for the ball in my game, otherwise I'd love to explore this method. If the IR emitter/detector system doesn't pan out, this looks like the next best option, marble or no marble.

    #327 7 years ago

    I just made a big merge to the Github repository:
    https://github.com/welovepinball/ball-balance

    Screen_Shot_2016-08-04_at_11.25.45_PM_(resized).pngScreen_Shot_2016-08-04_at_11.25.45_PM_(resized).png

    The game mode is mostly fleshed out, aside from lights. You can switch from attract mode to game mode, then play all ten holes, win an extra ball if your score gets to 4000, beat the game, or lose it.

    I've only done procedural code writing in the past, so coding for a game is a new experience. Rather than let the program run from top to bottom, you have to code based on event triggers. It's not something I'm used to. I eventually figured out that I can't have any loops in my code in order to make it work. It's weird to program looping behavior without the actual loops. I first started trying to build the game using custom user events in PyGame, but that was too restrictive. PyGame only allows 7 total custom user events. I finally figured out that I needed to do state management. Now that the code is all written out, it looks like the obvious solution, but it took me a while to arrive to it on my own. At least the code is easy to follow. I think it should be simple at this point to build on, now that there's a base.

    I intend on going through and commenting the code eventually, but I think I'm going to be busy this weekend and won't be able to work much or at all on this project.

    There are some bugs in the code, some that I'm already aware of: when you earn an extra ball, the logic tells the game not to play the starting song for the next round, but it also doesn't play for any future round either. Sometimes, after the ball is loaded onto the rod (you have to simulate by pressing the X key), it doesn't go up a little bit. When you win, the game doesn't go on to the second round; I haven't programmed it yet, so it just hangs there.

    I also did some code refactoring. winteriscoming, I'm sorry, but I partially broke your service menu config writer. The file it generates is not correct anymore. It adds "\nKey Code: " or something to that effect in the config txt. I didn't want to muck in your file too much before you get to check out all the changes to everything, so I just left it. I think the config reader might have an unrelated bug as well. If there isn't a blank line at the end of the txt file, it won't capture the last item in the txt (it's the failure switch).

    I also merged the servo functionality into a new rod handler file, rod.py. I don't have my servos or RPi hooked up yet so I couldn't test it, but I suspect the stop command doesn't work in my code. The joystick logic in rod.py will probably need to be tweaked.

    #330 7 years ago
    Quoted from winteriscoming:

    So last night while I had about a half hour, I attempted to use my CNC machine to cut a hole that allowed for the RGB LED to fit around the tube... boy was that a fun experience. I drew a 1 1/4" circle with an extra extension one side for the LED, generated a toolpath and went to cut it. It came out too small. I haven't done much with it yet, so I was worried my CNC machine or software weren't set up properly, even though I know I had spent a long time verifying all of that months ago.
    I went back and checked my file. I thought I had the endmill configured incorrectly, so set that to 1/16" width. Cut again, and still too small!
    I had set the circle to 1.24" instead of 1.25". Ok, simple fix. Fixed that, went to cut again. Still too small!
    I looked at my endmill and realized it was 1/8". Ugh! I finally got everything configured correctly and a hole cut that could fit the freakin' tube!
    All the while, the machine and software were doing exactly what I told them.
    After all that, I didn't end up leaving enough space for the LED. I'll have to play around with it more when I get a chance.

    Sounds like I have a lot to look forward to when I get a CNC machine, haha. What are you using? I plan on getting an X-Carve with 31x31" workspace: https://www.inventables.com/technologies/x-carve Obviously not big enough to cut a full cabinet on its bed, but I think I could probably drill some registration holes to accomplish cutting a piece of wood larger than the work surface, just in multiple passes. I'll have to investigate some strategies for that. For software, I have Autodesk Fusion 360.

    #334 7 years ago
    Quoted from winteriscoming:

    I have a 4'x5' (5'x6' footprint) cutting area machine from CNCRouterParts.com. It's the standard model, not the pro that they offer. I haven't done it, but I can load up a sheet of 4x8 and could cut an 8ft piece in 2 passes. I mainly went with this size since my intention was custom pinball machines and 4x5 should fit every piece of a pin without having to do multiple passes. Also, it fits in the corner of my garage and allows cars to be parked. I don't think I could have gone larger.

    Nice. I'll have to investigate this company's 2'x4' machine as well. My original purpose for wanting a CNC machine was to make smaller scale arcade machines, so 31"x31" was a fine option for me. My house doesn't have a garage, so I need something kind of compact and storable when not in use. I was planning on hauling the X-Carve onto my patio or driveway whenever I'm going to make some cuts.

    Do you know if there are any guides or tutorials for doing two or more passes on a cut that's larger than your workspace?

    Quoted from winteriscoming:

    I'd actually like to alter the design of the original cabinet in favor of a top and bottom piece that can be separated. So the top would be everything from the control panel up, and it would sit on the base. That would make the pieces smaller for shipping purposes, but it also allows for the game to break down easily for transport to a show or something. My games are in my basement that's not a walk-out, so the smaller I can break a game down the better.

    I agree, if for no other reason than making the game easier to CNC on a smaller machine.

    Quoted from winteriscoming:

    Even if we get one with a touch screen, the plan is not to use it.

    Yeah, it's getting harder to find little LCD panels that don't include the touchscreen.

    Quoted from winteriscoming:

    I personally think the best location for the screen is in the playfield towards the bottom, where ICB has its scoring windows and such. It's just going to need to be in a place where the rod and ball can't go over it.

    I realized a concern with having the LCD in the original location is viewing angle. Those little screens probably aren't optimized for viewing at such an extreme angle.

    #346 7 years ago

    I just uploaded SVG files with the playfield measurements. The holes are already resized to include 1/16" thick tubing (so each hole diameter is 1/8" larger than originally). I chose SVG so that you can use the CAD program of your choice to prepare for CNC. There is a flattened and unflattened version to make it easy to alter holes or change LCD size and placement, since that probably won't be the same as the original game. The flattened SVG imports fine into Fusion 360.

    https://github.com/welovepinball/ball-balance/tree/master/measurements

    Thumbnail_(resized).pngThumbnail_(resized).png
    Test_Playfield_(resized).pngTest_Playfield_(resized).png

    #349 7 years ago
    Quoted from catboxer:

    I programmed and operated a 3 axis 4x4' CNC for a number of years and this is really tricky due to registration. It CAN be done, but It's not fun. Basically you will have to limit your part to slide perfectly straight in either the X or Y axis and drill a registration mark somewhere on the workpiece. This allows you to set your new 0-point based on the registration hole and relative to the rest of your existing cuts. Hope that makes sense.

    Thanks. Yeah, I did some investigating and apparently this is called 'tiling'. I found an informative video that demonstrates the process basically the same way you described it:

    Quoted from ecurtz:

    I like steppers more than servos, mostly because they're standardized and really not more expensive. Plus you don't have to worry about modifying them for full rotation or anything. You can get cheap, easy to use drivers from https://www.pololu.com (they also have brushed motor drivers and other neat stuff)

    We were initially going with steppers, but decided at some point to switch to continuous servos. We found inexpensive servos that are already full rotation, we didn't have to modify them ourselves.

    Quoted from ecurtz:

    I imagined stand alone housings (maybe 3d printed or cast?) that would hold a RGB LED and a IR switch pair in one monolithic part and just screw or attach in some simple way to the back of the board. That way you'd only need enough for the active holes in each configuration and they could be moved from board to board when they were swapped out.

    This is the method I'm planning on using. I have a friend that will let me use his 3D printer, so I'd make housings for each of the target holes and then mount all my pieces into them. I don't intend on doing any board swapping in my cabinet, but I guess that would make that process simpler.

    #353 7 years ago
    Quoted from winteriscoming:

    Arg, Vetric Aspire doesn't import svg. I was able to open it in CorelDraw, but it messed up the scale. I think I have it scaled back up correctly based on hole size, but can you confirm that total length and width are 30.5 "x23.25"? Thanks!
    Edit: Actually I'm having an issue scaling it appropriately. The smallest holes should be 7/8" (.875"), middle 1 1/8" (1.125"), and largest 1 1/4" (1.25"), right? When I scale it up so that the smallest hole is .875", the largest hole ends up being 1.094"...
    Am I wrong on hole sizes?

    Bummer on no SVG import. Are you sure it can't? I just looked on their website and found this: http://www.vectric.com/products/aspire/features.htm#idata

    Data can be imported from a huge range of other design programs using a variety of industry standard file formats. These include DXF, EPS, AI, SVG and SKP (SketchUp) as well as PDF files.

    Yes, the overall size of the playfield is 23.25" wide by 30.5" tall. And yes, the holes should be 0.875" for the target holes, 1.125" for the medium holes, and 1.25" for the big holes.

    #355 7 years ago
    Quoted from winteriscoming:

    I have an old version that I guess doesn't import them...
    I should be able to convert the file, but in Corel I scaled the the playfield up so that it's 23.25"x30.5" and the 2 larger holes ended up sized correctly, but the small holes end up at 1". Is the size of the small hole possibly off in your file? Do you have it planned as having 1/8" tube?
    I should be able to scale those down as needed. I think the size just wasn't what I expected in relation to the others.

    Oh crap, you're right. Sorry about that! I just committed corrected files.

    Side note: I believe the playfield is 0.75" thick, but I haven't captured the measurement to verify. I'll let you know the next time I open the cabinet.

    #370 7 years ago

    Just a little update. I committed an OPC layout file to the repository with coordinates to all the hole lights:
    https://github.com/welovepinball/ball-balance/blob/master/opc/playfield.json

    In your OPC folder, this file, playfield.json, goes into the layouts folder. You can open OPC with it using:


    bin/gl_server -l layouts/playfield.json

    Then in a separate terminal window, you can run an LED light show and it will appear in the OPC preview window using the playfield layout as seen in my screenshot.

    opc_(resized).pngopc_(resized).png

    #376 7 years ago

    Looks great!

    #377 7 years ago
    Quoted from winteriscoming:

    I need to make some adjustments to it, but here's the first attempt. I totally love that with a CNC machine you can go from drawing to reality pretty quickly. Once I generated the toolpaths, this was only a couple minutes of cutting.

    I don't have the correct length of bolts, but here's an example of one of the mounts holding a 1/4" OD aluminum spacer, which is the same diameter as the small rod that I have. The red material is from a plastic cutting board that machines pretty well that I had on hand.

    These rod clamps look like a good solution. One way to make them even better is to integrate the ball stop into the plastic, that way the metal tubes won't need to be drilled at all, just clamped in after being cut to proper length. The next time I open my cabinet up, I can measure from the edge of the playfield to the ball stop when the rod is level, that way you will be able to calculate how long to make the stop.

    8e96225e8a05b830dd8460e4c8bcf5f0390044e8_(resized).jpg8e96225e8a05b830dd8460e4c8bcf5f0390044e8_(resized).jpg

    #384 7 years ago

    The game I plan on building will be using the same kind of LEDs used for the holes for general illumination. I don't want to limit my light options for game modes (like green mode in Space Station or something more elaborate), or including the GI in light shows. My intention is to run WS2812 LEDs up the sides of the inside of the cabinet and across the top of the playfield to cast light onto the playfield.

    #387 7 years ago
    Quoted from XXVII:

    Oh crap, you're right. Sorry about that! I just committed corrected files.
    Side note: I believe the playfield is 0.75" thick, but I haven't captured the measurement to verify. I'll let you know the next time I open the cabinet.

    I tried checking but I can't get a clear measurement without taking things apart, but it seems that the playfield is 0.75" thick.

    Quoted from XXVII:

    The next time I open my cabinet up, I can measure from the edge of the playfield to the ball stop when the rod is level, that way you will be able to calculate how long to make the stop.

    It's 2 1/2" from the edge of the playfield to the end of the ballstop.
    It's 3/8" from the center of the guide rail to the edge of the playfield.
    As a separate measurement, I found it's 2 7/8" from the center of the guide rail to the end of the ball stop, which validates the two measurements above.

    There's a 3/4" gap between the playfield and the glass.

    Quoted from winteriscoming:

    While you're at it with the measurements, I'd love to know the following:
    - distance between rod and pf
    - distance between pivot point and ball stop
    -distance from pivot point to rail

    The gap between the rod and the playfield (not from the center of the rod, but from the edge of the rod facing the playfield) is 1/4".
    The distance between the center of the pivot point and the end of the ballstop is 1 7/8".
    The distance between the center of the pivot point and the center of the guide rail is 1".

    So, I also have an unfortunate measurement to share. When I looked at your photo of the CNC'ed playfield, I noticed the failure hole might be a little too close to the pivot point for the ball gate. I double-checked and it looks like what happened is at some point when I made the vector file, I accidentally moved the failure hole to the left a small amount. From the center of the pivot to the center of the failure hole should be 2", but the SVG file I committed to GitHub was less than that. The horizontal gap between the centers of the failure hole and the errant ball hole should be 0.5" as well. Moving the failure hole to its proper location corrects both gaps. Sorry about that. I think we could design a gate plate that would be able to work with that distance, so that you won't need to drill a new playfield, but it may mean the gate won't completely conceal the hole when it is fully up.

    #390 7 years ago
    Quoted from winteriscoming:

    I was kind of wondering after mirroring the vector file to cut backside up, since you already have ICB, would you maybe be more interested in a mirrored hole layout? You'd be sure the paths work, but maybe it would be different enough from the original to be more of a challenge? Really nothing would have to change about the vector file unless you didn't want to mirror the position of the screen and ball gate. Otherwise it's the same file and just depends on how you install the parts.

    Thanks for the offer! Unfortunately I wouldn't be able to use it though, because I would also need a mirrored vacuum formed back piece to route the ball.

    Quoted from winteriscoming:

    So in thinking about these measurements in relation to our linear bearing block carriage, the most important constants need to be:
    -pivot point to edge of pf (5/8" if my math is correct)
    -pivot point to ball stop (1 7/8")
    -gap between (outer) rod and pf (3/4")
    If we can ensure these 3 measurements, I think we'd have rod/ball movement identical to the original.
    Everything else will likely be different in our setup compared to stock ICB simply because our carriage is likely going to necessitate a different gap between guide rail and edge of pf.

    I think the only important measurement that needs to stay the same is the placement of the ball stop on either side of the rod in relation to the playfield. That we are using servos mounted directly to the pulley wheels vs. brushed motors with gear assemblies is going to probably dramatically change the rod movement compared to the original game.

    Quoted from winteriscoming:

    The gap between pf and glass will likely come down to cabinet design, making sure the pf and glass are mounted correctly, though I suspect that gap isn't something we need to be too strict about. The glass isn't integral to play, right? Unless it's supposed to be close enough to the ball to act as kind of a barrier from falling forward?

    Actually, the glass placement is integral. The playfield is angled slightly back so that it's not straight up and down, but the ball definitely attempts to fall forward frequently and is only impeded by the glass. Take a look at my cabinet photos on the first page of the thread and you'll see that there are pock marks on the playfield glass at each of the target holes from when the ball went forward and chipped it (I'm probably going to put mylar circles on the glass at the target holes when we build my game for this reason).

    #397 7 years ago
    Quoted from winteriscoming:

    We shouldn't need a vacuum formed back piece.
    I was envisioning the the playfield as being a simple enclosed box. As long as we're mounting sensors directly at the holes, we don't have to guide the ball down any path once it falls behind the pf. It just needs to end up in the trough. The void behind the pf would just need to funnel the ball down to the trough. The backing piece could be a thin tack board or something.

    Using this method you're not locked into hole placement at all, so mirroring the pf shouldn't be an issue.
    The only concern is keeping the ball off of the electronics, but there are solutions to that like embedding them or something like this:

    Yeah, I misread your previous post and thought you were offering the cut board to me to install in my ICB in flipped orientation. I meant in my existing ICB, that board wouldn't work without an accompanying vacuum-formed backer. I know our current plans as well as Le Chuck's obviate that piece completely.

    As for flipped orientation just for the sake of added difficulty, I don't know that it would matter for me personally. The default orientation has a bias toward navigating the ball through the right side which may make it slightly easier to play for an inexperienced player, but I don't think it would really change the difficulty at all for someone that has already mastered the game in the default orientation.

    #400 7 years ago
    Quoted from winteriscoming:

    Things are looking pretty good! I just need to get motors and pulleys mounted for testing.

    Awesome! Could you do a test? I believe the ball should not be able to sneak up the right side against the ballstop. With the left side all the way up, could you move the right side up and see if the ball is able to get past any of the rightmost holes? Same deal in reverse for the left side.

    #406 7 years ago
    Quoted from winteriscoming:

    It occurs to me that CNC machining custom parts isn't exactly in the spirit of what we set out to accomplish. It's kind of addicting, though, having the tool on hand and knowing I can come up with something to solve a problem quicker than making it by hand.
    I would offer this as an alternative approach to the rods, if trying to make everything by hand:
    -Use a #6 bolt as a pivot point directly on one of the holes of the carriages.
    -Drill a hole for the pivot point into the rod.
    -Use lock nuts and washer to hold the rod onto the bolt, making them loose enough for it to pivot.
    -Use about an inch long #6 spacer as the ball stop on either side, drill through the rod at those points and hold the ball stop onto the rod with a #6 bolt and screw.
    In this scenario your pivot point would be spaced out a little more, so I'm not sure how that would impact things, if at all, but it's the easiest approach I can think of if you're doing it by hand. Otherwise you could potentially hand make some kind of holder in the vein of what I've come up with on the CNC machine, but I don't know how difficult it would be.

    What I set out to accomplish was building a machine that required as minimal handwork as possible, which the CNC enables. Another option, since these pieces are small, is to upload the designs to a 3D printing store like Shapeways or Thingiverse, and those that don't have a CNC or 3D printer can have them made to order, delivered to their door.

    #421 7 years ago

    Just made a big commit to the repository. This time, I've added LED support, converted config files to a single INI, and revamped the service mode. I broke some things and some of it is a bit sloppy, but I've strayed too far out without a recent commit and just had to get it out in its current state. I'm going to have to get into the habit of smaller, more frequent commits.

    The attract mode now has a garish light show to prove it can do something. I've also added the LED positions from the OPC JSON file I made. I didn't have to painstakingly recreate this light arrangement again; I just parsed the hole locations in the JSON and spat them onto the screen in a for loop. This is just for development purposes since the actual game won't need this on the screen during attract mode. You can see OPC has mirrored what's on the ball balance screen.

    Screen_Shot_2016-08-14_at_1.44.08_AM_(resized).pngScreen_Shot_2016-08-14_at_1.44.08_AM_(resized).png

    I also added a pulsing light for the current hole being played. This is to prove light animations can be performed pseudo-asynchronously from the rest of the game logic, which was a concern that it couldn't be done without a great amount of difficulty.

    Screen_Shot_2016-08-14_at_1.46.36_AM_(resized).pngScreen_Shot_2016-08-14_at_1.46.36_AM_(resized).png

    The Service Mode menu has been rewritten into a less monolithic fashion. Each item on the service main menu is now a separate class. This is probably the route that GameMode.py will eventually go in order to make it simpler to dissect, modify, and integrate new game modes.

    Switch configuration now has a switch detection sheet. Any switch that is active appears in a different color.

    Screen_Shot_2016-08-14_at_1.50.35_AM_(resized).pngScreen_Shot_2016-08-14_at_1.50.35_AM_(resized).png

    Rod testing has been integrated into the servo configuration menu item. Double tap the Start button to switch from the menu adjustment mode to movement mode, where the joysticks control the rod instead of the user interface on the LCD.

    Screen_Shot_2016-08-14_at_1.51.14_AM_(resized).pngScreen_Shot_2016-08-14_at_1.51.14_AM_(resized).png

    I've added an LED address menu item. This will eventually be fleshed out, but for now, it will tell you the index of whichever light you have selected with the joysticks. Since we are probably each going to potentially wire our games' holes in different ways, this feature will eventually do something like light up a hole on the LCD, then tell you to use the joysticks to go through and light up the actual hole on the playfield, which is going to be a different address than the game currently assumes (right now, arranged by height, then left to right) then use that information to correctly map the holes again.

    Screen_Shot_2016-08-14_at_1.51.35_AM_(resized).pngScreen_Shot_2016-08-14_at_1.51.35_AM_(resized).png

    My plan is to make it possible to create light shows using the PyGame's graphics utilities. I want to make a PyGame Surface object that you can animate on top of, then the code will sample the pixels from that Surface and light up the holes corresponding to those locations. That will allow you to easily do things like animate bars panning back and forth across the playfield, or a bubbles effect for the attract mode light show, or ripples spreading out from the current target hole, or scrolling text across the entire playfield, or play animated GIFs or movie files, you get the idea.

    In other news, I ordered my CNC machine this morning, so I'll soon be able to join in figuring out the physical puzzles to this project.

    #424 7 years ago
    Quoted from winteriscoming:

    What did you go with for a CNC machine?

    I ended up ordering the Inventables X-Carve 1000mm kit. https://www.inventables.com/technologies/x-carve

    It has a max work area of ~31.5"x31.5". I will definitely have to figure out how to do the CNC tiling if I want to make a full sized ICB cabinet, but it's at least big enough carve the playfield itself without needing to move the piece on the work area. I decided on the X-Carve because the price was more in my comfort zone, its free Easel CNC software seems like it's good for absolute newbies like me, and it looks like the Inventables crew offer really amazing tech support.

    xcarve-large-dewalt-a65627cceb9e3ea23f2e21b248c6f3a1_(resized).jpgxcarve-large-dewalt-a65627cceb9e3ea23f2e21b248c6f3a1_(resized).jpg

    #431 7 years ago
    Quoted from Chitownpinball:

    Have yall come up with a n ame for this yet? With all the color..."fruity" something comes to mind.

    Haha. No idea on names yet; we haven't nailed down a theme either. So far, I like the pirate theme idea the best, or a treasure hunter theme in the same vein as Indiana Jones or Tomb Raider. There's also a haunted house idea, which I'd love to explore if the America's Most Haunted audio assets have an open source license. lpeters82 already thought up a lot of good ways to reuse some of that content. I also remember people mentioning golfing and zombies, but I'm not personally keen on those themes. We could always just do a beer theme again, so we could call it something like Frosty Mugs (or "Eyes Coaled Bier" ).

    All the color is temporary though. I'm sure we'll have a little more discretion when we're designing the actual light shows and not do something overboard like we are right now. I don't expect we'll see any rainbow color shifting in our final design, aside from maybe service menu stuff for diagnostic purposes.

    #437 7 years ago
    Quoted from winteriscoming:

    It turns out that we probably don't need any kind of advanced console functionality in our game. For the moment I added a debug console menu to the service menu. It displays a debug print buffer that currently allows for 10 lines.
    Printing to the debug buffer is managed in tools.py and can be used as follows:
    tools.Debug_Print("text")
    So basically anywhere that we have a standard Print command, should also be paired with this if we want to see the message in game.
    At the moment it's a matter of going to the debug menu from service menu, but it would probably be pretty easy to print this text out on any screen as needed. We would just need to figure out how we want that to be managed. Do we have a dedicated key-stroke to toggle debug mode or do we toggle it in the service menu?

    I'm in favor of a toggle in the service menu (we can default to enabled while we develop vs. having to toggle it on every time we run the program), and displaying the output on every screen. It would only take a quarter of a second of rod movement without GPIO enabled to blow out 10 lines of logs, so might as well display to every screen live instead of having a dedicated service mode feature. Just make sure the call to display is the very last thing in game.py before the screen flip and our console log will be rendered on top of everything else. It would be helpful to use a dedicated timer (pygame.USEREVENTS + 7) to remove messages that are older than a certain amount of seconds.

    #440 7 years ago
    Quoted from winteriscoming:

    I had these directions on setting up the RPi in an earlier post, but have saved them to a text file, with some updates, in the Github repository so they don't get buried:
    https://github.com/welovepinball/ball-balance/blob/master/RPi%20Setup%20from%20Scratch.md
    I highly recommend once you get the Wifi setup that you remotely access the RPi through SSH for additional setup. On Windows I use PuTTy. You just put in the IP address of the RPi and then it asks for the RPi's login credentials, and you're essentially remotely using a terminal on the RPi. It's nice because you can copy and paste commands into the terminal. You can also run Python scripts to verify that they work without generating an error message, but unfortunately you can't run PyGame through it so you'll get to a point where it says it can't run.

    I just created a documentation folder and moved this helpful file into it:
    https://github.com/welovepinball/ball-balance/blob/master/documentation/RPi%20Setup%20from%20Scratch.md

    I also reformatted it into Markdown so that it differentiates Terminal commands from normal text.

    I just followed the instructions to get my RPi set up and apparently it matters on the wpa_supplicant.conf step that the SSID and PSK are on separate lines. I see what you mean about the FadeCandy setup not being straightforward. We are going to need to write a script of some sort to collect the user's FadeCandy serial code and inject it into their FadeCandy configuration. Perhaps we can make it in Python and add it as a service menu item? I don't know enough about Python yet to know if it's possible to collect the serial from fcserver, or if it can be done in an OS-independent way.

    #447 7 years ago
    Quoted from winteriscoming:

    I was just looking at my test pf and experimenting with limit switch placement and noticed the rod doesn't get higher than the highest holes to the point where I don't think the ball would be able to be carried over the top holes. Is the bar supposed to stop before being able to go that high?

    I double-checked the placement of the holes relative to the top of the playfield and the side cutouts and they are correct. The problem is likely that you are using the side cutouts as a channel for the linear motion bearings, but they weren't designed for something that bulky. They will have to be cut longer to compensate for the additional vertical space they occupy. Similarly, part of that channel is blocked by a thin, 0.75" thick piece of wood on each side of the cabinet that acts as the support for the length of the playfield glass, and as the spacer between the playfield and the glass. It's likely that we are going to have to change the playfield design by making the side cutouts wider to allow space for the spacer wood and the linear bearings.

    Quoted from winteriscoming:

    The ball loader plate thing isn't too difficult of a contraption.

    Yup, that's all there is to it! The original game is designed the same exact way. I'm glad the closer pivot point is still operable. You could probably move the rod arm bolt over an inch or so to the left and that might allow the rod to load the ball.

    I'm going to measure out and model the whole original cabinet and placement of its parts to help alleviate a lot of these issues.

    My CNC machine parts came in yesterday and I spent all night trying to get it assembled. It's probably going to take me at least another week before I get it ready to start cutting due to other obligations, but I'm on my way!

    #454 7 years ago
    Quoted from winteriscoming:

    I'm wondering for that crowded top target hole, if there might be a way to offset its LED far enough above it so that the LED is actually mounted above to 2 top holes. I've already proven that the LEDs can be offset a little, it's just going to require further experimentation to see if it can be done further away. I have some clear acrylic on hand and can experiment with it as a carrier for the light to the edge of the hole tube. I think if I can avoid severely hacking up that hole's LED PCB, it would be ideal.

    I think you could just have that hole tube be longer than the rest (as in, not flush on the back side like the others) and then wrap the LED's flexible PCB around it and then tape it down. You're already going to need to squeeze the IR sensor and emitter in there as well, they could just be further away so you have more space to work with. In order to protect it a little, just mount the RGB LED on the bottom of the tube so a falling ball won't smash into it.

    #455 7 years ago

    I randomly came across this thread in my Google searches: http://www.gamoover.net/Forums/index.php?topic=35454.0

    It looks like we're not the only ones attempting to build an ICB style game at the moment. Competition!

    #458 7 years ago
    Quoted from winteriscoming:

    Meh, looks like like they're aiming for vanilla. Did they do full cabinet and pf before figuring out the guts and moving parts?

    I don't think they've cut anything yet. I skimmed the thread quickly, and through a translator, but it didn't seem to me that any of them owned a machine already and are basing all their measurements and assumptions on photos of the game and the Visual Pinball recreation. I believe the photos you see of cabs and playfields are all Le Chuck's progress shots.

    Yeah, they are recreating the vanilla game. Something to note is that they are building their game with a single Arduino and segmented displays, which I'm sure is of interest to some of the watchers here vs. our RPi + lots of boards, high-level approach.

    #460 7 years ago

    Came across a Chinese ICB clone called "Tom's Adventures": http://forum.vecchiflipper.it/flipper-forum/discussione4942-ice-cold-beer-taito-cda.html

    It has pirates!

    CIMG1083_(resized).JPGCIMG1083_(resized).JPG

    #465 7 years ago
    Quoted from winteriscoming:

    That looks awesome. It's a little bit different layout, too.

    Yeah, I believe this is just the I.C.E. ICB layout, based on the top three target holes.

    Wow, those are nice. I'd want one for my ICB if I wasn't planning on building a new game.

    It's too bad those cut vectors aren't online somewhere, that would save me a lot of time. My progress on mapping out the cabinet has been pretty slow. I was busy for most of the weekend with other obligations and assembling my CNC. Hopefully I'll make some meaningful updates this week.

    I found this ICB clone called Rock 'N Roll Verti-go. It's an LCD screen vs. a mechanical game, but it shows off some theming possibilities and ways to modernize the cabinet design:

    #467 7 years ago
    Quoted from winteriscoming:

    Does the ICE one have the same playfield dimensions or did they go a little taller?

    Back on the first page of the thread, ralphwiggum mentioned that he has the I.C.E. version of the game. Perhaps he can open his up and measure the playfield size for us. I don't know how much of a hassle it'd be, but I'd also love to see a close-up photo of a target hole's proximity sensor on the back side of its playfield.

    Quoted from winteriscoming:

    The rods we're using would accommodate a little taller pf. However if we were to eventually deviate from the stock Taito hole placement, like for an alternative layout, it looks like we'd have more vertical space towards the bottom if we wanted to stay in the stock dimensions, and I think we should.

    I had the same thought of adding holes to the big "wasted" space at the bottom of the playfield, but I after some more thinking about it, that space isn't very optimal for holes. People already tend to lean down to better see the lowest holes on the existing playfield, if they were any lower it might be pain in the rear for them. The wide open space also serves as a safe practice zone for newbies to get their bearings in trying to balance the ball. We could probably reduce the newbie zone by an inch or two to add more hole space at the top, but I think the cabinet would have to be designed to shift the playfield up by the same amount of inches to prevent people from having to lean over more. Depending on how much space you have to eat up, you have to move the LCD screen elsewhere.

    About the LCD screen, I was thinking of two potential options:

    The first is that the LCD can stay in the spot that it's at. In order to remedy the viewing angle problem, we could design a mount for it that would have the screen tilted back so that it's angled toward the viewer's eyes (say 45 degrees), then fill the hole in the playfield with a piece of acrylic so that a ball doesn't roll into it. That option may require a larger hole cut vertically to see the top of the LCD screen.

    The other option is to move the LCD screen to the top of the playfield. Le Chuck's Space Base has the score displays relocated to the top right section of the playfield. No reason we couldn't fit a 5" screen up there too if we wanted. It doesn't necessarily need to be cut into the playfield, it can be above it (like Space Base), maybe even above the playfield glass if the cabinet we design allows for it.

    FEB 8 (8) (resized).JPGFEB 8 (8) (resized).JPG

    1 week later
    #470 7 years ago
    Quoted from winteriscoming:

    Is your CNC machine coming together, XXVII?

    CNC machine's still not running yet. I've been really busy lately and hadn't had much time to put toward ICB or CNC unfortunately. I was able to sit down last night for the first time in a week or so and continue assembling the CNC, but I wasn't able to complete it. I'm probably about 80% through the build now, and after that is going to be calibration, which I'm expecting to be another huge hassle.

    Quoted from winteriscoming:

    I'm still toying around with different lighting and mounting solutions, but I don't have anything worth sharing beyond what I've posted so far. I don't think I've got anything additional to contribute until we start locking down measurements and cabinet design. I don't want to venture down the wrong path and forget to accommodate some integral measurement like playfield incline angle or gap between pf and glass, etc. I'm also not too interested in fully wiring up a test pf, knowing I'd have to redo it if we change something.

    I understand that. Sorry it's been taking so long. I think I should be less busy with work/personal life and at home more after next week, but something always seems to come up. I've also been having issues learning Fusion 360. For all of the things that are really great about it over 3D modeling packages I've used in the past (constraints!), it's not quite as intuitive as I'd like in some ways. Aside from that, I've learned it's more difficult to measure out a cabinet if you can't take it apart.

    If you'd like to build a makeshift stand for your playfield at the proper incline for testing, it is tilted back 5 degrees from vertical, and the gap from the playfield to the glass is 0.75".

    Quoted from winteriscoming:

    I know there's still work to do on the software side, but for me I think the motivation to continue fleshing it out will come from having a game ready to run it.

    I agree. The software is already at the 80% solution, at least for vanilla ICB; it'd be playable if connected to the hardware. There's little reason to keep tinkering with the software until we get test cabinets built so we can refine it properly with the hardware.

    What still could be done in the mean time is figuring out the complete circuit for the Arduino and the IR emitter/detector break beam pairs. Wiring up one sensor/emitter pair is straightforward since there are tutorials specifically for that, but I'd like to see a breadboard wired up with all ten pairs functioning as expected. I don't know how to calculate the resistance for all the diodes in the same circuit or if a capacitor is needed, etc.

    1 week later
    #473 7 years ago
    Quoted from XXVII:

    CNC machine's still not running yet. I've been really busy lately and hadn't had much time to put toward ICB or CNC unfortunately. I was able to sit down last night for the first time in a week or so and continue assembling the CNC, but I wasn't able to complete it. I'm probably about 80% through the build now, and after that is going to be calibration, which I'm expecting to be another huge hassle.

    As is my typical luck with big electronics purchases, I found out earlier this week that Inventables released a new version of the X-Carve less than two weeks after I received mine, and discounted the model I bought by hundreds of dollars. I emailed them to find out what I could do about it since my machine was ordered so close to the update; I hadn't even finished assembling mine yet and it was already out of date. The options were either partial credit toward the upgrade or returning my unit for a refund. Unfortunately the partial credit wasn't high enough for me to accept (it's about half the amount that my model's been discounted by), so I decided I would be returning my machine and then ordering the new one. Instead of spending my nights in CAD recreating the Ice Cold Beer cabinet, I've been spending them taking my mostly assembled CNC machine apart and repackaging the pieces into their original bags and boxes to ship back out.

    #475 7 years ago
    Quoted from lpeters82:

    At least they offered you the ability to return.

    Yeah, definitely. I don't have any animosity toward Inventables; they didn't have to offer me anything but they did. It's just my bad luck on timing.

    1 week later
    #477 7 years ago

    I don't have anything to offer yet, but I just happened across this website. Someone else has already started building an Ice Cold Beer clone months before us! I haven't had a chance to go through their site yet, so I don't know how far along they are. This could be a great resource for us:

    http://www.everythingmaker.co/project-goal-zekes-peak-arcade-knockoff/

    Edit: Just took a good read of the site. I was a little too excited and should have read before I posted. He's still in the preliminary stages, but he's done some cool things already. He's doing a mine shaft theme and is going to use physical gauges and maybe nixie tubes for score display. Sounds awesome!

    #480 7 years ago

    You're really good at fleshing out the themes and conjuring up game modes!

    I have to admit that aside from general busy-ness and the disappointment of having to disassemble and return my CNC machine, I've been pretty demotivated on the slow, grueling process to CAD the ICB cabinet. It's been a pretty frustrating experience, to be honest, because I still don't quite understand how to use Fusion 360 very well and spend too much time fighting the program or Googling around to figure out how to overcome strange obstacles that I face. I end up spending multiple evenings to produce simple pieces that I know I'd be able to recreate in my normal 3D modeling tool in an hour or so. It's annoying to have a skill in a sort of similar kind of tool and not have it translate to that other tool.

    At the back of my mind as I sit at my computer or stand at the ICB cabinet with a ruler is that there's very little ROI for the amount of work I'm spending collecting measurements. Sure, if the CAD was complete then people would be able to reproduce Ice Cold Beer cabinets for their original games, but that's not my end goal for this effort, and a lot of the measurements are unnecessary or would need to be heavily altered for our new game since we're changing the internals, like not using the vacuum-molded backer and having a different PCB mounting configuration.

    I suppose my problem is now I'm seeing this huge CAD recreation effort as an obstacle to progress on other things that could be done instead, like designing a new cabinet for our game. I think it would be easier for us to create a new one from scratch than for me to accurately measure out the existing one.

    cabcad (resized).jpgcabcad (resized).jpg

    cabback (resized).pngcabback (resized).png

    cpmount (resized).pngcpmount (resized).png

    #484 7 years ago
    Quoted from lpeters82:

    Unfortunately that's going to be my best way of contributing because when it comes to the programming, I'm going to be pretty useless.

    That's plenty, I assure you. Programming help is nice, but it's important to also have people that can think up fun new ways to play the game.

    Quoted from lpeters82:

    I'm decent at building, but to be perfectly honest you guys are more perfectionists. I'm more of a measure once, cut twice type of guy. For this I'll probably just take a monkey see, monkey do approach.

    Yeah, I'm getting this way after burning myself out on these measurements, haha.

    Quoted from lpeters82:

    I also do understand that some of my ideas; like the video poker mode might be too hard to program, but I figured I'd toss it out there.

    Yeah, might as well. If an idea seems really fun, maybe we'll be inclined to put in the extra effort to try to make it happen. Or maybe something that seems like it would be hard to program actually isn't.

    #485 7 years ago
    Quoted from winteriscoming:

    Did we agree earlier to try and make it so that the head is separate from the base? We'll be pretty different from stock at that point.

    Yeah, I don't think either of us have a choice but to separate the top and bottom due to the sizes of our CNC machines. I looked back and saw that Le Chuck also cut his cabinet in two pieces because his CNC bed wasn't big enough either. In the end he covered the seam with laminate so you don't even know it was there.

    Quoted from winteriscoming:

    Really the important things are going to be getting a good incline angle, ensuring glass is parallel to the playfield at a specific distance, and ensuring the head fits the playfield and glass.

    This will be easy: the incline is 5 degrees. The glass is made parallel to the playfield by two 0.75"x0.75"x38ish" pieces of wood resting against the playfield, one on the left and one on the right.

    Quoted from winteriscoming:

    For example, it's not entirely clear to me what's holding the glass in. Is it the control panel and something at the top, but nothing holds the sides?

    This is another example of the cleverness of the original game makers. There is nothing holding the sides of the glass. It's secured in place by the top and bottom. It's not apparent, but in the second image on my CAD post (#480) you can see the glass in place (it's the darker gray part). The glass is only supported on the bottom from the left and right edges. The third image shows the key components to holding the glass in place.

    The bottom image shows a piece that I call the control panel mount. This piece has the clips screwed into it that are used the hold the control panel into place from the underside. There is a notch in the top left of the image that is 0.25" wide and rotated 5 degrees. The bottom of the glass (which is 3/16" thick) rests in there. The rest of the glass is supported along its sides by the two 0.75"x0.75"x38ish" pieces of wood, which are also inclined to 5 degrees. This way they provide the necessary support to the glass and keep it parallel to the playfield spaced by exactly 0.75". These two pieces of wood are also lined with some sort of thin padding to protect the glass from the wood. The back edge of the control panel is cut at a 5 degree angle to act as a continuation of that 0.25" gap from the control panel mount notch.

    I didn't render the top of the cabinet so you're not seeing how it secures at the top. The cabinet's "ceiling" panel has a 24.5"x0.75"x0.75" piece of wood screwed into it. It is positioned just so that the playfield glass cannot tip forward. This is sufficient to keep the glass in place without moving.

    Another important feature to point out on the control panel mount is the grove to the right of the 0.25" notch in the top left of the bottom image. I'll explain why shortly.

    To remove the glass from the cabinet, remove the control panel, then push up from the bottom of the glass and then pull the bottom of it toward you. The space at the very top behind the glass is empty to allow the glass to pivot for this action. Next, set the glass into the groove I pointed out in the previous paragraph. This will lower the glass enough to reveal its top edge. Now you can grab the glass by the top and bottom to move it somewhere away from the cabinet.

    To place the glass into the cabinet, set the glass into the groove on the control panel mounts, then lean it against the playfield (really, against the two 0.75"x0.75"x38ish" pieces of wood). Now push the glass up from the bottom edge and make it flush against the playfield, then lower it into the 0.25" notch in the control panel mounts.

    The explanation might have been overly elaborate, but if you can visualize it, it's pretty simple. I'll take some photos when I go home to show the notch and groove in action.

    Quoted from winteriscoming:

    Sorry to hear about that. Was something wrong with it? If it's for personal reasons, no need to share.

    There was nothing wrong with the machine, just my timing ordering it. A newer model was released before I even finished assembling mine, so I emailed the company, asked them what I could do to upgrade my system since it was such a recent order, and the option I chose was to send it back to order the new one. That's the gist of it, but I talk about it a little more in post #473.

    #486 7 years ago

    Here are the photos, as promised.

    This is the ceiling panel on top of the cabinet, showing where it and the block in front meet the glass:
    a (resized).jpga (resized).jpg

    This is the control panel mount, with the glass resting in the notch at its top.
    b (resized).jpgb (resized).jpg

    Reaching under the glass to push it up and toward me.
    c (resized).jpgc (resized).jpg

    Glass out of the notch and moved into the groove.
    d (resized).jpgd (resized).jpg

    Top of the glass when lowered into groove, showing empty space behind its normal position to allow it to pivot when removing.
    e (resized).jpge (resized).jpg

    Glass removed, showing empty control panel mount, and how it, the long spacer piece of wood, and the playfield are all touching each other.
    f (resized).jpgf (resized).jpg

    One more shot showing the playfield, spacer wood, guide rail.
    g (resized).jpgg (resized).jpg

    1 week later
    #488 7 years ago
    Quoted from winteriscoming:

    No updates from my end. I've been working on an unrelated side project, that involves PCB design and milling on my CNC machine. In fact, what I'm working on is a custom shield for the Mega. It's been a very educational experience that I hope can apply to this project. It might be nice if we had a tidy PCB to plug our components into.

    Very cool!

    No updates on my end either. I still haven't heard a peep about my refund since my X-Carve kit was delivered back to the company. I'm sure they've had their hands full, getting their flood of orders for the new product out to their other customers and my return has been on their back burner. Their refund page said they try to process refunds within one week of receiving their returns, but it's been three weeks now since UPS delivered it back to them. I don't intend to order the new X-Carve until I get my refund back. I can't say it hasn't bothered me trying to be patient with this, because every time I think about ICB, I think about being out $1500 and a CNC machine. I'm going to email them tomorrow to check my status.

    In the mean time, I've decided for sure that I want my personal ICB project to be based on the '90s X-Men cartoon. I bought all the DVDs and watched the entire series to reacquaint myself with the material. (I also then watched the entire 2009 "Wolverine and the X-Men" series, which I thought was actually better, but I'm making the '90s theme for nostalgic reasons.) I also roughed out a custom design for the cabinet, started figuring out some lighting features, and trying to map out some gameplay elements. I'm pretty excited for it.

    #489 7 years ago

    We are probably at a point where we should make some decisions for the open source project.

    Do we want to design it as a bartop, wall mount, or free-standing cabinet? Like Whysnow said, it could have a shallower depth if you don't need to worry about tipping it over, so a wall mount would be thinnest. If it's free-standing, we're definitely going to need to design it to with a separate top and bottom, since neither winteriscoming or I will have a CNC machine big enough to allow us to cut the entire height in one pass, and assuming we design for it, it gains the benefit of being able to break down to move and transport easier. If we go bartop, should we consider scaling it smaller?

    Aside from the depth, the upper half of ICB's cabinet is already surprisingly about as small as it can be without either removing holes from the outside edges of the playfield (unacceptable) or reducing the ball size. If you switch the 5/8" ball for a pachinko ball (11mm), then you can scale the machine's size down by 30%. So if a full-size ICB bartop would be, say, 25" wide by 40" tall, then a bartop using a pachinko ball might be 18"x30". Potential problem then is that the game will feel completely different, and probably be harder with a lighter ball.

    I think we're ready to nail down a theme. Likely the theme will have some influence on the cabinet design to some extent, and having a decided theme could help everyone brainstorm game modes and get the artists thinking. There have been a lot of good theme ideas offered so far. I skimmed through the whole thread and collected the ideas presented below:

    Quoted from lpeters82:

    My top three themes right now would be Ice Cold Beer: The Next Round, Firefighter, or Golf. The golf theme could work well. Have 18 different holes. Plus that survival whack a gopher bonus mode.

    Quoted from trunchbull:

    I'd love to see a space theme done with awesome retro art like Stars or Meteor - you could be on a rescue mission to save stranded astronauts floating helplessly in the debris of a space mining accident or something. Mission control callouts, intensifying music, etc. Or a Time Bandits-esque theme, where you have to go around to different times, as represented by different areas on the board, to collect shards of a temporal crystal and save the universe. Or a haunted house game where you have to get to certain holes to find your way out, and if you go down the wrong hole there's a jump-scare on the LCD screen, accompanied by a THWACK from a knocker.

    Quoted from lpeters82:

    My preference is something fairly timeless. Some campy humor would be great too. I'd go so far to say campy humor is almost a must.

    Quoted from XXVII:

    A haunted house theme could be great.
    This could be a great boon for us: Ben Heck has all the source code, artwork, sounds, and animations from America's Most Haunted freely available for download on his website: http://www.benheck.com/amh/
    I don't know know what the license is for these assets, but if it is open source or permissible, that could save us a lot of effort. Already filled with funny campy humor!

    (I messaged Ben back when I made this post and never got a reply back. I'm going to assume that means the assets do not have a license that will allow us to use them in our project.)

    Quoted from winteriscoming:

    Pirates - I kind of like this theme. The playfield could be a map with holes being either other ships, hazards, or islands.
    Zombies - Meh, it's an over-used theme at this point, but could work.
    Ants - A number of ideas comes from this such as an ant carrying food to the right hole, or ants on some kind of military mission where the target hole is either a place to invade or simply an area of the colony that is being attacked. The playfield could either be a side view of the interior of the ant colony, an overhead view of ant hills, or a grassy field with holes and other things like picknic blankets, etc. You could have a competitive mode that's red vs. black. Half of the PF is red and half is black (well black doesn't work... blue?). Red's goal is to capture Black's holes and vice-versa. First to have all or X number of holes captured wins.
    War - Not my cup of tea, but could work as a theme. Playfield is a battlefield... maybe a minefield? Could potentially work similarly to ants. If we went with a war theme, I'd probably prefer something more interesting than boring human war... maybe anthropomorphic dinosaurs or animals? Robot war?
    Mail Delivery - You're a postal worker and have to deliver packages to the correct house. While not an exciting theme at face value, each house could have a character who responds to your actions.
    Emergency Room - You're an EMT and have to deliver patients to the correct area of the ER. You start off just directing patients to the front desk or waiting room, but then progressively get worse cases that need to go straight to specific areas of the ER like the X-Ray room, etc. The pf would be laid out as an overhead view of the ER with rooms (holes) labeled. You could even have modes that don't outright tell you where to take the patient, but you have to figure it out based on symptoms.

    Quoted from jamieflowers:

    Treasure Hunter, or some variation to that. You could incorporate pirates, The Uncharted game etc.

    Quoted from lpeters82:

    perhaps we could do some type of general disaster theme where there are a number of different disasters that occur: flood, fire, earthquake, tornado, etc. We could also adapt this to more of a general Godzilla or King Kong theme where it's large monsters that are causing the disasters. Hmm...after typing that I'm thinking that keeping it simpler might be easier to really drive home the theme. I'm going to stick with my suggestion for an original theme of "Fire Rescue".

    Quoted from lpeters82:

    I really like the gold mine theme too; you're bringing gold out of the mine on a mine cart. That seems to mimic the ball on the rod. The ball could probably be gold, which would add to the theme. The longer it takes the more gold falls out of the cart. A bit of a stretch, but it could work. Your goal is to collect as much gold as possible. During normal gameplay your target hole is flashing yellow. There could be random callouts of "Fire in the hole!" then have a red/orange flash in one of the non-target holes along with an explosion. I really like the whole wild west theme that goes along with this, think: crazy prospectors, outlaws, shootouts, saloons, poker, rattlesnakes, runaway mine cars, cave-ins, gold strike, dynamite, "Fire in the hole!", "There's gold in them-there hills.", "Eheheheh!", "Rootin'-Tootin'", etc.

    #495 7 years ago

    The ideas I've liked most so far have been the gold mine and the treasure hunter.

    But if we were to go with the gold mine theme, I think it would only be right to expand to general Western/cowboy theme rather than just completely biting the other builder's idea. That way, gold mining can just be one component of the game rather than the whole thing. There's plenty that can also be done with a Western theme: street shootouts, quick draw, bank robberies, cattle herding, railroad building/train hijacking, bounty hunting, dying of dysentery, rodeos, saloon fights, etc. It'd be the perfect theme to integrate the HORSE and poker modes people discussed early on.

    The treasure hunter theme would allow for a lot of color variety and interesting opportunities with artwork, with hidden temples, jungles, witch doctors, etc. You could easily integrate pirates into a theme like that.

    Either way, I like the idea of going campy/funny with it rather than serious.

    #498 7 years ago
    Quoted from mjenison:

    From an open source perspective, at a minimum, someone should be able to take the instructions/parts list/wiring diagram and implement an existing marble game like Zeke's Peak or ICB. But ultimately someone should be able to take the framework and expand it for any themes/modes they want, and then implement it in a standup/tabletop/wall mount cabinet if they so choose.

    We've already done that. The basic Ice Cold Beer game has already been programmed in Python and works on a Raspberry Pi with servos and switches. We're at a point now where we want a new, polished game vs. a complete clone of the existing title.

    #502 7 years ago
    Quoted from lpeters82:

    Why don't we reach out to the other builder?

    Seems like a good idea. Who wants to do it? (I don't want to pass out my email address ) I'd recommend linking this whole thread, our GitHub repo, winteriscoming's YouTube video of the physical parts in action, and telling him our plans on expanding the game with new modes, LCD animations, and light shows, and also letting him know we're interested in his gold mine theme.

    Pinside thread: https://pinside.com/pinball/forum/topic/diy-ice-cold-beer-type-game
    GitHub repo: https://github.com/welovepinball/ball-balance
    YouTube video:

    Quoted from lpeters82:

    My fear is that without a very specific main theme we will end up over-complicating it. For the base game my preference is to keep it simple. We create different routes of target holes. Each route is a different mine, with it's own unique theme and corresponding bonus game. Some ideas: cave-ins, robbery, drinking, gambling, flooding, haunted mine, runaway train, cowboy's and aliens, etc. Basically you can incorporate any of the western tropes, but do so within the theme of that particular mine and bonus mode.

    How about for the main theme, the player is a cowboy bounty hunter? Each hole is a different bounty to collect, maybe going from the town drunk to bandits up to notorious bank robbers? I think that more naturally leads to the rest of the cowboy tropes (most of them outside or in a town) vs. starting and going back and forth from mines.

    Quoted from lpeters82:

    PS: I might have already said this, but if there is any way to have multigame achievements like in modern home console games that would be awesome. So after you collect 100,000 gold nuggets it unlocks that achievement. I think small things like that would greatly add to the replayability.

    If we're not talking about online achievements, this would be easy to implement. Just update values in an INI or text file and check them against an achievements list (like when nuggets == 100000, award Nugget achievement). Of course, it would be easy for someone to fake those. They could just alter the text file.

    Quoted from lpeters82:

    How about a Midnight Madness mode?... Perhaps during this mode there is no penalty for dropping the ball in a non-target hole. It's all about collecting as many of the green target holes as quickly as possible.

    Sounds like a cool idea! Kind of like a timed multi ball with unlimited balls until the timer runs out.

    Quoted from lpeters82:

    For some reason, as soon as we started this project, I wanted to include a "that's what she said" joke. The first one that came to me was, "put it in the hole". If we go with the mining theme there might be something with "go deeper" or "nuggets". Anyway, just trying to think of ways to add some humor to the game.

    Similar to this, with a bounty hunter theme, saying "Fill him fulla lead!" would line up nicely with trying to put a metal ball into a hole representing the bounty.

    #506 7 years ago

    Lots of good sheriff ideas.

    Quoted from lpeters82:

    PS: I can reach out to the other builder if we want to do the gold mine option.

    We should still probably reach out to the other builder, just so he knows he's not the only one out there attempting this. We can probably help each other solve problems. At the very least, we've already completed the playfield layout in CAD, so that might save him some time if he's planning on using the original arrangement.

    Quoted from lpeters82:

    PSS: Either of you guys going to the expo? I'll be there.

    I won't be there.

    I had a thought while I was in the shower just a few minutes ago. One of the features of some modern pachinko machines is a distraction button. Sometimes while you're "playing" (holding the plunger knob), the screen will tell you to hit the distraction button one or several times depending on whatever's going on in the game for some bonus points. It's supposed to compel the player to remove their hand from the knob or at least distract them from concentrating on their plunger strength so they get less balls into the right hole. We could have something like that.

    But how to dress it up so that it's on theme...
    plungers (resized).jpgplungers (resized).jpg

    One of the things I like most about Indiana Jones is the pistol assembly for the plunger button. It looks like the actual assembly is pretty expensive, but we could design and CNC (or manually route) one in the same fashion that winteriscoming did for the telescoping rod pivot assemblies.

    Having an IJ-like gun trigger would allow all kinds of cool game mode possibilities. Quick draw could be more intense. You have to fire the gun to knock out the bounty. We could even put a sensor in it so that the game could tell if you're holding the gun when you're not supposed to during quick draw. You could use it to ramp up the difficulty of the main game on the second play through by adding henchmen that you have to shoot while you're guiding the ball up the playfield, etc.

    #509 7 years ago
    Quoted from lpeters82:

    We must have posted similar things at similar times. I like the idea of the gun. At worse those without access to the machine could replace it with a button. As mentioned above the joysticks can be used to help make sure the players hands are not on the gun. Basically they have to be triggering one of the switches. If we don't have access to the animators we could always just use a cadence: "We draw on the count of three. One. Two. Three."

    Holding the joysticks down is a clever idea. Another idea is that when the player lets go of the joysticks to reach for the button (assuming the player didn't wait too long and the bandit drew first), the game is triggered to have the bandit draw. We can probably figure out some timing to make the drawing progressively harder at each level.

    #511 7 years ago
    Quoted from lpeters82:

    I understand what you are saying, but as the "good person" our player should wait until the count, or when the bandit draws. That action should start the timer, not the player releasing the trigger IMHO. Essentially there is a "false start" if the player let's go too early. It would be fun to track quickest draw.

    I have to admit, I haven't seen very many Western movies. I can only think of three at the moment, and one of them is Back to the Future 3. Was there typically a count to three before firing? I thought there was a dramatic stare-down before one of the opponents reached for their weapon first.

    #515 7 years ago
    Quoted from lpeters82:

    When I picture a western duel it's typically one of two things. First, it's basically what your describing. The two stare at each other, waiting for someone to make the first move. It's almost always the bad guy to draw first. The hero is just so fast that he beats the bad guy. That would be ideal, but would take some video animation. I picture that being like Punch-Out!!!, where the bad guy has some type of tell before they draw. The easy levels would be a long delay between the tell and draw. The harder levels would be instantly.

    We could do it this way, and give additional points and a call-out to successful "honest" duelers that wait for their opponent to pull first (maybe negative points for dishonest drawers also). Since we're going to be tracking and logging these for best reaction times, I think we should make it only track honest draws and not when the player draws first.

    Quoted from lpeters82:

    The second type of duel I think of is standing back to back and taking X steps before turning around and shooting. That's essentially a 1, 2, 3. In explaining that to a player standing at a cabinet that really needs to be simplified, since they won't actually be taking steps. That's why I suggested the:"We shoot on three."

    To me, this way comes off like a gentlemen's duel. I imagine this is how people like Alexander Hamilton dueled. I'm sure cowboys probably did it sometimes too, but imagining it isn't as coherent for me.

    #516 7 years ago
    Quoted from lpeters82:

    What are you guys thinking for the background? Obviously this it totally just taken from CC, but I'm just trying to show that there is some good space at the bottom. I think that's where we'll need to sell the story. With all the holes above it's probably going to need to be fairly neutral.

    I think we basically have the same idea on backgrounds. A town scene of some sort, maybe some bad guys standing around. Don't forget that we can decal the playfield glass, and that will allow some 3D features to our graphics. For example, the "good guys" we'd put in the foreground, like in that Cactus Canyon graphic, could be printed on the glass decal instead, and the town scene and background characters will be on the playfield graphic.

    Then something inconsequential and not too busy for the upper area where the holes are. The playfield in Tom's Adventure from post #460 looks pretty neat, but it also looks like it would distract from being able to follow the ball when you're playing the game. I think in the holes area, we should just do something simple like a continuation of the sky from the town scene in the lower part of the playfield, or maybe just a yellowed, worn paper texture. Then we won't have to worry as much about alignment or how precise our routing was when applying the graphic to the playfield.

    #521 7 years ago
    Quoted from Chitownpinball:

    Figure out how to do an infinity mirror space or science theme. Trip this shit out! The multi color holes will be really cool if done with the right theme.

    Quoted from lpeters82:

    I'm just not as interested in space themes. They just seem to be overdone. Still I'll work with whatever the majority want to do.

    I like futuristic themes, but I'm pretty set on this cowboy theme at this point. There are still plenty of opportunities to take advantage of the RGB LEDs in really appealing ways.

    #522 7 years ago

    I did a bunch of Googling today and started collecting some funny on-theme phrases/sentences to record for our game, or adapt into other voice clips. Most I just copied or adapted, a few I wrote based on looking through cowboy slang dictionaries. I've roughly broken them into different categories below:

    HURRY UP
    “Git a move on!”
    “Shoot, or give up the gun!”
    “Git goin’, buckaroo!”
    “You gonna pull those pistols or whistle Dixie?”
    “Giddy up, pardner, unless a’course yer yella!”
    “Pony up already!”

    INTIMIDATION/INSULTS
    “This town ain’t big enough for the both of us!”
    “Yer horse smells better’n you!”
    “I’ll turn ya into buzzard food!”
    “Don’t git yer bloomers in a-tangle.”
    “Yer in a heap of trouble now!”
    “Don’t interfere with somethin’ that ain’t botherin’ you none!”
    “You look like you was put away wet.”
    “Yer breath’s near strong enough to crack a mirror!”
    “Reach for the sky!”
    “Keep shootin’ yer mouth off and see what you git!”
    “I don’t like yer looks.”
    “You ain’t worth the salt it’d take to tan yer hide!”
    “Yer so ugly you have to sneak up on a dipper to get a drink of water.”
    “Yer so ugly, you could back a buzzard off a gut-wagon.”
    “Yer so ugly, you could make a freight train take a dirt road!”
    “Yer uglier’n homemade sin.”
    “If yer brains was dynamite, there wouldn't be enough to blow yer nose.”
    “You don’t got nuthin' under yer hat but hair!”
    “Yer built like a snake on stilts!”
    “Yer uglier than a burnt boot!”
    “You look like you been drinkin’ down stream from the herd.”
    “You don’t amount to a hill of beans!”

    EXCLAMATIONS
    “Leapin’ lizards!”
    “What in tarnation?!”
    “Curses!”
    “Son of a gun!”
    “Gadzooks!”
    “Jumpin’ Jehosaphat!”
    “Curse y’all to blazes!”
    “Well, I’ll be!”
    “Confound it!”
    “Well, butter my butt and call me a biscuit!”

    FAST VICTORY
    “He drew quicker-n you could spit an’ holler howdy!”
    “Looks like this ain’t yer first rodeo!”
    “Yer shootin’s fine as cream gravy!”
    “Yer shootin’s finer than frog hair.”
    “Easy. Like lickin’ butter off a knife.”

    LOST
    “Now git! Skedaddle! Vamoose!”
    “Yer all hat and no cattle.”
    “You gotta be plumb kiddin’ me.”
    “Sometimes you git, sometimes you git got.”
    “I got saddle-sores tougher’n you!”
    “You couldn’t rope a turtle!”
    “You call that shootin’?”
    “You shoot like a pig’s tail!”
    “Your nerves left town like a one-legged two timer.”
    “You couldn't hit the ground with your hat in three throws.”
    “Yer slower’n molasses in January.”
    “You couldn’t hit a bull’s butt with a hand full-a banjos!”
    “You lasted as long as a pint of whiskey in a five-handed poker game.”

    ABOUT VILLAIN
    “He’s a-mad as a peeled rattler!”
    “He’s the biggest toad in the puddle.”
    “He’s in a sod-pawin’, horn-tossing mood.”
    “He’s a gun-totin’, whiskey-swillin’, no-good, wiley...”
    “He’s mad enough to swallow a horn-toad backwards.”
    “He's so mean he'd steal a fly from a blind spider.”
    “He’s so mean, he'd fight a rattler and give him the first bite.”
    “He’s so mean he could bite himself.”
    “He’s crazy enough to eat the devil with horns on.”
    “He’s as crazy as popcorn on a hot stove.”
    “He’s mean enough to eat off the same plate with a snake.”
    “He’s so crooked, he could swallow nails and spit out corkscrews.”
    “He’s as crooked as a dog’s hind legs.”
    “He'd been in the desert so long, he knows all the lizards by their first names.”

    MISC
    “This town's got a monstrous bad name for meanery and shecoonery of all sorts.”
    “Pump ‘im fulla lead!”
    “Trust everyone, but always cut the cards yerself!”
    “Don’t squat with your spurs on!”
    “Never kick a cow patty on a hot day.”
    “Never miss a good chance to shut up.”
    “Them’s mighty big words”
    “I’m just coppering my bets.”
    “Don’t go walkin’ on snakes.”
    “Hold yer horses!”
    “When in doubt, let yer horse do the thinkin’!”
    “Keep a leg on both sides and yer eyes down the middle.”
    “That a fact?”
    “Yer grinnin’ like a possum eatin’ a yellow jacket!”
    “Yer grinnin’ like a weasel in a hen house.”
    “Yer as pleased as a pup with two tails.”
    “It’s so dry the bushes are followin’ the dogs around.”
    “Y’all come back now, ya hear?”
    “Hold onto your hats, folks.”
    “It’s hotter than the devil’s armpits.”
    “You lie like a cheap rug.”
    “Course, the fastest way to double yer money is to fold it in half and put it back in yer pocket!”
    “There’s a sight for sore eyes.”
    “Thank yer lucky stars.”
    “You look nervouser than a long-tailed cat in a room full-a rocking chairs!”
    “Yer sweating’ like a sinner in church!”

    And here is a list of extra words, aside from the ones used above, that can be utilized for additional clips:

    afeared
    bellyachin’
    conniption
    critter
    dog-gone
    dreadful/awful/powerful (used as replacement for “very”)
    feller
    fixin’ to
    folks
    fuss
    git
    hanker
    highfalutin
    hootin’ an a-hollerin
    howdy
    idjit
    in cahoots
    kin
    mossy on over
    ornery
    purdy
    reckon
    them thar
    uppity
    varmint
    vittles
    waterin’ hole
    whoa
    y’all
    yeehaw!
    yonder

    #528 7 years ago

    I was doing a little doodling a few hours ago and came up with these two potential characters. I snapped a photo of the sketch with my phone, so the color came out skewed yellow. I figured instead of color correcting it to white, I'd turn up the sepia since it's on theme.

    sketches (resized).jpgsketches (resized).jpg

    #530 7 years ago
    Quoted from lpeters82:

    What are you thoughts for them?

    No thoughts really. They could be anybody, including just background characters. Maybe Mustache is a bartender in a saloon scene, or a random bandit.

    Quoted from lpeters82:

    My thoughts were that we'd have an older mentor for our main character, but I was thinking that the main character could just be "Stranger" or "Newcomer".

    I agree that there shouldn't be an avatar representing the player. We won't know the player's gender, race, etc. and we could easily make it irrelevant if we never show them on screen and write our dialog addressing the player ambiguously enough.

    Quoted from lpeters82:

    A completely different direction would be to go the whole outlaw route, where you are trying to increase the bounty on your head. That way showdowns could be between both the law and rival outlaws. I really don't have a preference. I was actually just thinking how that would be a great theme for a pinball machine, with the score being a direct correlation to your bounty. I think that might be my new dream theme.

    That's a great idea. If we make other game modes, it'd be easier to frame them for a bandit verses a do-gooder, like bank robberies (preforming instead of preventing or stopping), etc. Definitely something to consider, since you don't get enough chances in games to play the bad guy.

    #531 7 years ago

    I started putting together a concept for the revolver that could be mounted to the cabinet between the joysticks (ignore the microswitch below the trigger). My intention is to design a functional gun shape that can be CNC'ed in just a few layers. I made the center layer a white plastic so you can more easily differentiate the layers, but it could stay that way in the final design. Mount an LED inside of there and have it light up when you fire the gun for some more interactivity. If we have the solenoid electronics figured out, maybe we can add a kicker inside the cabinet that will knock when the gun is fired at an appropriate time.

    After I complete the design, I'll show a render in exploded view so you can see how it will work. Basically, the white plastic layer will be more hollowed out than the outer layers. The barrel facade will unscrew off revealing the microswitch inside, in case you need to adjust its position or wiring. The trigger (made green for easy viewing) will have a hinge point where a screw will secure it in place. When it is pulled, it will rotate about the screw a short distance, and the rest of it, an arm oriented 90 degrees from the trigger will rotate down and close the microswitch, activating it. A spring will push the trigger back into place when the player releases it.

    Revolver Concept (resized).pngRevolver Concept (resized).png

    #532 7 years ago

    I put together a short list of male and female first names and a set of last names that all sounded Western-like to me. I figure this can help us brainstorm character names for opponents and other random townsfolk that may be in the game. Just grab a first name and a last name, and maybe add a nickname or descriptor, and there you go. For example: "One-Eyed Clyde Calhoun". Taking advantage of literary devices like rhyming and repeated vowel/consonant sounds will help make really appealing sounding names.

    MALE

    • Amos
    • Billy
    • Boone
    • Butch
    • Casey
    • Clint
    • Clyde
    • Emmitt
    • Garth
    • Hal
    • Hank
    • Jed
    • Jethro
    • Leroy
    • Nash
    • Seamus
    • Silas
    • Seth
    • Ty
    • Wyatt
    • Zeke

    FEMALE

    • Annie
    • Bess
    • Betsy
    • Bonnie
    • Clara
    • Darlene
    • Dolly
    • Elly May
    • Jolene
    • Madison
    • Maribel
    • Molly
    • Patty
    • Savannah
    • Scarlett
    • Susanna
    • Thelma

    LAST

    • Barnes
    • Buchanan
    • Calhoun
    • Carver
    • Clayton
    • Cochran
    • Farrington
    • Grimes
    • Hicks
    • Hodges
    • Jameson
    • McCoy
    • McDowell
    • Pickett
    • Prescott
    • Schmitt
    • Stetson
    • Stiles
    • Stubbs
    • Sutherland
    • Taggart
    • Tanner
    • Wheeler
    • Whitley
    #533 7 years ago

    I made a couple more potential character doodles earlier today. I don't think these ones are quite as strong as the last two characters, but they're a start.

    sketches2 (resized).jpgsketches2 (resized).jpg

    #534 7 years ago

    How about brainstorming names for the game? Here are the ideas I had so far:

    • Bandits in the Badlands
    • Guns Drawn at High Noon
    • Silverado Showdown

    As with character names, using literary devices like rhyming and repeated vowel/consonant sounds will help make appealing names.

    (Edit: Just Googled all of these. There was a 1945 movie titled "Bandits of the Badlands" and "Silverado Showdown" is the name of a women's golf tournament. So one name is close to an existing piece of Western media and the other is the exact same name but for something completely different.)

    #540 7 years ago
    Quoted from winteriscoming:

    Any interest in adding an additional element to the western theme, like steampunk or something supernatural? The western theme on its own doesn't resonate much with me. I guess I don't have much exposure to the classic western films to be drawn to it.

    Should we just drop the Western theme? So far it seems like only lpeters82 and I are enthusiastic on the theme, and we're still so early in the conceptual stage that we wouldn't be losing much work.

    Maybe steampunk by itself would be a better theme. We could do a Jules Verne 20,000 Leagues Under the Sea, where you're in a submarine and facing various monsters and underwater creatures.

    Another cool option is cyberpunk. Think Blade Runner, The Matrix, and Johnny Mnemonic. High tech low lifes. Dystopias with corporations that are more powerful than governments, computer hacking vigilantes, humans enhanced with machine augments, self-aware robots. It tends to have this cool, '80s retro-futuristic neon vibe that really appeals to me.

    The colorful aesthetics of steampunk and cyberpunk would both mesh well with our RGB LED lightshow ambitions.

    cbrpk (resized).jpgcbrpk (resized).jpg

    #545 7 years ago
    Quoted from lpeters82:

    Thoughts on this? Is that not taking it far enough into the realm of fantasy?

    This is definitely the plan with villains. Unique and easy to make some basic assumptions on their backgrounds are best. Certainly jives with our want of camp in the game.

    Quoted from lpeters82:

    As per changing the theme, I really like the idea of collecting bounties. It adds a fun twist to for the score keeping. I could keeping the underlying wild west them, but adding in more supernatural / horror / monster hunter elements.

    I like the idea of mixing horror into the theme. It turns it more like Vampire Hunter D than generic cowboys. That movie's even about a bounty hunter!

    vhd (resized).jpgvhd (resized).jpg

    Quoted from lpeters82:

    My main fear is that we are going to over-complicate things. I don't want long breaks between gameplay or over-complicated rules that are difficult for to explain to guests.

    There will be a handful of seconds between each ball sink that could be utilized for cutscenes, since the rod will have to reset to the bottom and load the ball again. That will be 0 time added preventing gameplay compared to the real ICB. If we need a few seconds more than that for a cutscene, we can make it so if you press the Start button or pull the trigger during this time, it will skip straight to gameplay.

    #546 7 years ago
    Quoted from winteriscoming:

    Well I don't want to throw out everything that has already been proposed. It seems like we could go cyberpunk or steampunk and keep with the general theme of being either a bounty hunter or law-keeper trying to take down outlaws/bounties. I like the gun/duel aspect you've been fleshing out. It seems like that could still apply.

    Yeah, no need to throw everything out. There are elements that would transcend genres. Steam/cyberpunk could still essentially be collecting bounties. My X-Men game idea is mostly the same basic idea: each hole represents a villain to defeat, from the Sentinels to Magneto and Apocalypse. Just no shootout video mode between holes.

    About the gun, I'm worried about not being able to design it reinforced enough to keep it from getting broken off the cabinet if someone puts a little weight on it. Think a kid trying to hang off of it or someone getting a little rough with the machine. IJ's gun is cast from two pieces of metal, so it's pretty sturdy, but our gun is going to have to be made of wood so that it can be routed by hand for those that don't have a CNC machine. I'm probably going to have to redesign it from three major pieces to two halves for integrity's sake, but that will make it much more difficult to cut by hand, and it also doesn't solve how to confidently secure it to the cabinet.

    #553 7 years ago
    Quoted from Yellowdog:

    The first rule of these types of projects is build something that works. Once you have a working prototype, then start getting creative.

    Quoted from Yellowdog:

    Once you have the basic machine flipping (dropping?) then it is time to mod it out. If you spend too much time trying to design cool add-ons you won't have anything to add them on to. Build the basic machine. Bulletproof the software. Then pick a theme and get the art.

    The proof-of-concept winteriscoming made for the YouTube video is using the playfield I laid out in CAD, cut with his CNC machine, and running software that he and I wrote, on the hardware (Raspberry Pi) and electronics and mechanics (servos, pulley system) we already determined would be used in the final machine. I have already implemented the entire original Ice Cold Beer game in the code. You can play it from start to end, win extra balls, it has an attract mode and a setup menu. There's only so much more of the physical designing of the machine that I can do at a specific level before I get my CNC kit back in the mail. Right now I can't cut anything.

    Quoted from Yellowdog:

    I like the way the Minions guys are building their pin. They started from a working pin and started to adjust and rework it. They didn't try to create the art and the theme and then go looking for some hardware to slide under it.

    I love what those guys are doing and eagerly await their updates every Friday, but trust me that they are shooting from the hip a lot more than we are. First of all, they started with the theme (as in "we're going to build a Minions pin"), then bought a WCS cabinet to gut and transform (it's not just an adjust and rework job), and started drilling out a new playfield before they wrote a single line of code.

    We just made it to the stage they started at, where we are trying to figure out a fun theme. Although Ice Cold Beer is obviously simpler than a custom pinball machine, we didn't have the advantage of an existing line of specific hardware (P-ROC, etc.) and software frameworks (Mission Pinball Framework, etc.) already available to build a game like ours. So we figured that stuff out first.

    What we're doing right now is not a matter of building cool toys and then just assuming that one day we'll find hardware to slide it under. We've already done a lot of work laying the foundation to determine if this project was even viable for us and now we're ready to start thinking about some of the creative aspects of the project while I wait on my CNC.

    Quoted from Yellowdog:

    I am afraid you are starting to go off into the weeds.

    Here's the thing to consider: the only two programmers and parts designers on this project at the moment are me and winteriscoming. There have been lots of people that have shown interest in the project, but due to lacking the skill-sets or time, there hasn't been a way for a lot of people interested to help out. Thinking up themes, characters, game modes, the name of the game, neat features, and the like are easy ways to engage the rest of the people that want to see this project happen, help hype it up in people's minds, and let them valuably and meaningfully participate in the development process. There's been more post activity and thread favorites in the past week than there was in the whole month before it. Seeing people excited for the project has the added value of motivating me and winteriscoming to continue the build by proving to us it's not all for nothing and hopefully inspire some more programmers and artists to join the project.

    #554 7 years ago
    Quoted from jwilson:

    Whitewood, then art.

    Already done.
    648baf4cb833a945fe2e20dd6a1c512fc9511a1c (resized).jpg648baf4cb833a945fe2e20dd6a1c512fc9511a1c (resized).jpg

    Quoted from jwilson:

    Don't pull a JPOP.

    How would we? We're not collecting preorders. There's nothing to buy; we're giving the designs away for free.

    #555 7 years ago
    Quoted from winteriscoming:

    hoping XXVII gets his CNC machine up and running

    I just ordered the replacement CNC. It took a while for the company to process my return and then issue the refund. I didn't get a notification when I received the refund; a week or two ago, I just happened to see it in my credit card transaction log, but the amount was lower than I expected it to be. I reached out to the company and they realized they didn't refund one of the expensive pieces of the order, so I had to wait for another refund to come through. I just saw this evening in my transaction log that the last of the refund came in yesterday. Hopefully the new CNC gets here soon and I can get it assembled quickly.

    #557 7 years ago
    Quoted from princea56001:

    I may have missed it in the thread, but when the day comes for this to be a functioning machine, what would be the odds for those of us who aren't as skillfully inclined or have the tools to create from a design be able to purchase a build kit to assemble at home? I think this is fantastic and would love to have one.

    winteriscoming had mentioned interest at one point in selling flat packs of the cut wood, and then it would be up to the buyer to source all the rest of the parts that would be used in the machine. We'd of course provide a detailed list of every component and a store link where that component can be purchased directly, but you'd be free to buy it anywhere.

    This is partially the reason we've been trying to design everything with generic and off-the-shelf components as much as possible, so people would easily be able to hop on Amazon, Adafruit, McMaster-Carr, or wherever and get all the other components they need without having to wait for custom PCBs to be reprinted or anything elaborate like that.

    I haven't decided whether I'd partake in selling flatpacks; I don't know yet if it'd be worth the hassle for me.

    #560 7 years ago
    Quoted from winteriscoming:

    You could design it around some L brackets that are sandwiched into the layers and still do a 3 layer gun.

    Yeah, this has been the only thing I've been certain should be done, no matter how many layers. The problem though is if the three layers are meant to be cut 2-dimensionally, then the channel that needs to be cut for the microswitch wire will bisect the inner layer, which will compromise the integrity of the bracket.

    #561 7 years ago

    Found another ICB project in the works: http://forum.arcadecontrols.com/index.php/topic,151861.0.html

    4 weeks later
    #566 7 years ago

    Today I came home to find that the final piece of my CNC kit was delivered. I received most of it last week, but they weren't able to send everything because they sold out of the new controller modules and I was put on the back of the order list. I have it about 70% assembled at this point, and I'm going to spend the rest of the night putting it together. I will still need to calibrate it, install a dust shoe (already ordered and delivered), purchase and attach a shopvac, and seal off a part of my basement before I can start cutting, but at least now I'm a step closer.

    3 weeks later
    #568 7 years ago
    Quoted from winteriscoming:

    If you have any way to vent the dust to the outside, I would highly recommend it. The fine dust is nothing to ignore in an enclosed space, and I would imagine the shop vac will just be blowing it around. If you could put the shop vac outside and have the hose coming in, that might be better.

    The more I read about this stuff, the more paranoid I become about this.

    It's taken me a lot longer than it should have, but between waiting on missing parts getting shipped to me and work, life, and other distractions, I finally completed the CNC machine assembly and successfully controlled it from my computer. I'm at the stage where I can run test prints and calibrate, which is what I thought I would be doing tomorrow after work and rolling by Home Depot, but I don't think I'm prepared now.

    I figured my dust boot and a shop vac would be all I'd need to mostly mitigate the dust in my work area in my basement, but it's looking like that will be laughably insufficient. I had heard that MDF had carcinogenic issues due to formaldehyde, but I wasn't aware that saw dust itself is a carcinogen. That's not going to stop me, but I obviously need to take safety into greater consideration, especially if I'm going to be in an enclosed space.

    I don't think I'll be able to vent from the basement to the outside. Rather than a shop vac, I'm looking at a dust collector, specifically this one: http://www.harborfreight.com/2-hp-industrial-5-micron-dust-collector-97869.html There are ways to upgrade this unit from 5 micron filtration to 0.5 micron, and from single-stage filtration to two-stage, but I figure I can start with it stock and then upgrade as my use of the machine grows. Supposedly, dust collectors are quieter than shop vacs, but I can't find the decibel ratings for this unit.

    I also plan on getting an appropriately rated personal respirator, eye protection, gloves, and sealing off the section of the basement where woodworking will be performed. I'm lucky in that the space I'm going to use is already a walled-in room from the rest of the basement, just with an opening in place of its fourth wall. I could probably just hang a tarp over the entryway and then tape the sides to the wall to seal it in for a temporary jury-rigged solution, but I'm definitely going to want a permanent solution of some sort, maybe eventually having a carpenter put a real wall and door there.

    It looks like I should get an air filter like this to get rid of any dust floating in the air: https://www.amazon.com/Shop-Fox-W1830-3-Speed-Hanging/dp/B008DPYSS4

    #571 7 years ago
    Quoted from winteriscoming:

    I am by no means an expert in safety and probably am not set up the best way possible, either. I am set up in my garage, though. What I settled on was that HF kit and then migrated to just using the fan from it to suck dust through a sealed collector with a baffle to collect the larger bits and all the fines go right outside.
    It is pretty loud, but with the garage door closed and cutting underway, I can't really hear anything from out in my driveway.
    You can get decent suction over long distances with this. Is there any nearby dryer vent or window you can use? If you have gas appliances, then you'd need to concern yourself with having a makeup air source that doesn't accidentally pull from the gas system.

    Dryer vent and window are pretty far from the room I'll be using. I was set to buy that 2HP Harbor Freight dust collector until I noticed it is 20A. I know the previous owners put a 20A line in the basement somewhere before I bought the house, but I never found out which outlet(s) it went to. I think I'm going to start with a shop vac, and if the noise is too much, I'll upgrade to either a lower amp dust collector of a different brand, or get a quieter but more expensive shop vac.

    For air circulation, I ordered this: https://www.amazon.com/gp/product/B00LPD9BDI/
    since it was cheap and seems to do a decent enough job from the reviews. My CNC space is only 7'x10', so that should be more than powerful enough to handle the air volume.

    You're currently viewing posts by Pinsider XXVII.
    Click here to go back to viewing the entire thread.

    Reply

    Wanna join the discussion? Please sign in to reply to this topic.

    Hey there! Welcome to Pinside!

    Donate to Pinside

    Great to see you're enjoying Pinside! Did you know Pinside is able to run without any 3rd-party banners or ads, thanks to the support from our visitors? Please consider a donation to Pinside and get anext to your username to show for it! Or better yet, subscribe to Pinside+!


    This page was printed from https://pinside.com/pinball/forum/topic/diy-ice-cold-beer-type-game?tu=XXVII and we tried optimising it for printing. Some page elements may have been deliberately hidden.

    Scan the QR code on the left to jump to the URL this document was printed from.