Announcing the Mission Pinball Framework: hw independent, python-based game sw

(Topic ID: 96996)

Announcing the Mission Pinball Framework: hw independent, python-based game sw


By BrianMadden

4 years ago



Topic Stats

  • 134 posts
  • 41 Pinsiders participating
  • Latest reply 1 year ago by desertT1
  • Topic is favorited by 40 Pinsiders

You

Linked Games

No games have been linked to this topic.

    Topic Gallery

    There have been 10 images uploaded to this topic. (View topic image gallery).

    Capture2.png
    Capture.png
    3bvqn-bh.png
    IMG_8104.JPG
    IMG_8007.JPG
    IMG_6708.JPG
    IMG_6704.jpg
    IMG_6821.JPG
    IMG_6817.JPG
    IMG_6682.jpg

    There are 134 posts in this topic. You are on page 2 of 3.
    #51 4 years ago
    Quoted from Purpledrilmonkey:

    The P-ROC (and the FAST system) are not barriers to entry. They are in fact removing a barrier to entry - hardware development.

    Your barrier to entry (from your statements) is software (or something akin to assembly code on really old machines) and that barrier exists with or without P-ROC

    That's what I meant, that barrier to entry is learning to code in python, not so much P-ROC as a product. Most of us don't know how, and I think most of us don't want to learn (maybe some of us aren't capable of learning). I also realize if I want advanced modes, someone is eventually going to have to program it (can only make it so simple), but if you manage to create what is a pretty fun layout, there could be a programmer that would jump on board to help.

    What I'm talking about is I think probably 90% of pinball hobbyists who want to build a custom pin; don't even attempt to build one because there are too many skills needed to create one. There could be a lot of people with good ideas who are capable of fabricating a playfield, maybe even have artistic skills to do the art for a playfield, but then look at the programming portion of it and give up. Having a basic program (and I haven't looked into PROC enough, or at least haven't looked at it in a while to realize there is a basic script) that ran a basic game with assignable point values from switches would probably encourage a lot more people to create their dream themed pin.

    I also think $900 is a heck of gamble for a P-ROC system, and it sounds like much more cost effective systems are coming.

    #52 4 years ago
    Quoted from reltham:

    Right now, in order to get anything going at all, even the most basic things, requires a fairly significant amount of coding work.

    With pyprocgame? That's not correct. With pyprocgame you can just run starter.py with your machine config file. In some cases you might need to change a line or two.

    The result is a fully playable game with working flippers, bumpers, slings (as defined in your config file) that tracks up to 4 players with 3 balls per player.

    Quoted from toyotaboy:

    I also think $900 is a heck of gamble for a P-ROC system, and it sounds like much more cost effective systems are coming.

    Please back up this statement with facts. The large majority of our customers build feature-rich games for WELL below $900. In fact, I can't think of a single customer who's spent even close to that much money on P-ROC and PDBs for a single machine.

    To build a custom game with equivalent features to a WPC or Stern machine you would need:
    P-ROC: $325
    2 x PD-16: $95*2 = $190
    1 x PD-8x8: $95 = $95

    Total: $610

    For that $610, you're getting a complete hardware control system that is mature, feature-rich, well supported both by the community and the manufacturer, and just works. How is that a gamble?

    - Gerry
    http://www.pinballcontrollers.com
    http://www.multimorphic.com

    #53 4 years ago
    Quoted from toyotaboy:

    $900 is a heck of gamble

    $900 does seem a bit high. Are you adding in power supplies too maybe?

    I did a quick run through of what our "new game" setup would look like.

    (1) FAST Core Controller (Support DMD, 256 RGB LEDs, audio line out for Beaglebone Black if used)
    (2) FAST I/O 3208 (64 direct input switches, 16 drivers, 2 expansion modules)
    (1) FAST Smart Fuse Block (we keep high voltage off the boards, has an "enable" that can tie to coindoor/software to kill high voltage)
    (32) FAST RGB LEDs
    ------------------
    $599

    Then obviously the required power supplies.

    When getting started and just looking to get the "lower third" setup so you can start working on your shots, we will suggest getting:

    (1) FAST Core Controller
    (1) FAST I/O 3208 (32 direct input switches, 8 drivers, 1 expansion module)
    (1) FAST Smart Fuse Block
    (8) FAST RGB LEDs
    ------------------
    $399

    Then you can add hardware as needed. We will be selling the RGB LEDs as well. Waiting on final pricing on those. Hoping to be well under $2 each.

    Aaron
    FAST Pinball

    Note: in the pics you see the FAST Fuse Block, FAST I/O 1616 a RGB LED (white pcb) and a couple FAST WPC Controllers in the background. And the FAST Core Controller is basically the same as the FAST WPC Controller with all the WPC stuff not needed in new games, removed.

    IMG_8104.JPG
    IMG_8007.JPG

    Post edited by fastpinball: Updated information to match final hardware configurations.

    #54 4 years ago

    Dang Brian, sorry again! I thought this was the thread on custom games!

    Aaron
    FAST Pinball

    #55 4 years ago
    Quoted from gstellenberg:

    Please back up this statement with facts. The large majority of our customers build feature-rich games for WELL below $900

    I'm just basing it on an earlier comment from horsey of $942.82.
    Bear in mind, I don't think your prices are outrageous, I just think it's possible to build a slightly less featured system for less. I DO think the open source you've opened up (being the first) is commendable.

    #56 4 years ago

    Gerry,
    Things have probably changed, but when I got my PROC stuff, it took half a day just to get everything installed and built, and I could not get starter.py to work (that's probably because I don't know or like python).

    I believe you now have a single install "package" setup that makes it all smoother to get everything installed, and I guess you also have starter.py working better now? (or like I said I just fail at python because I hate it) Also, perhaps the state of the documentation was my issue?

    In any case, doing anything more than what's in starter.py will take some coding, and probably a fair bit of it based on what I have read from projects on the forums. I'd like to minimize that as much as possible.

    That was the main message of my post. Sorry I got some things wrong with regard to the current state of code.

    #57 4 years ago

    Python does suck.. Any language that uses white space to mean something, let alone scope.. Bleh all around.

    #58 4 years ago
    Quoted from sd_tom:

    Python does suck.. Any language that uses white space to mean something, let alone scope.. Bleh all around.

    That's exactly why I like it. [cue different strokes theme song]

    #59 4 years ago
    Quoted from sd_tom:

    Python does suck.. Any language that uses white space to mean something, let alone scope.. Bleh all around.

    Python runs circles around Visual Basic. Trust me, I have to work in VB every day, where I would much rather be in Python.

    #60 4 years ago
    Quoted from toyotaboy:

    I'm just basing it on an earlier comment from horsey of $942.82.
    Bear in mind, I don't think your prices are outrageous, I just think it's possible to build a slightly less featured system for less. I DO think the open source you've opened up (being the first) is commendable.

    If you went P3-Roc, 4 switch boards, 2x power driver, 8x8 lamp. = $815, an added power supply bumps up a bit maybe. You may not even need all that , you may not need 2 power drivers and you don't need to have the extra switch boards.

    Probably what also has happened there was converting from my currency back again, so apologies for the confusion, but is close enough. You can see that's where the ghost $2.82 has come from.

    #61 4 years ago
    Quoted from reltham:

    Gerry,
    Things have probably changed, but when I got my PROC stuff, it took half a day just to get everything installed and built, and I could not get starter.py to work (that's probably because I don't know or like python).
    I believe you now have a single install "package" setup that makes it all smoother to get everything installed, and I guess you also have starter.py working better now? (or like I said I just fail at python because I hate it) Also, perhaps the state of the documentation was my issue?

    Looks like starter.py hasn't changed in 4 years. If you search it for "Game specific item", you'll find 4 things you might need to rename with your game configuration naming. Aside from those, it should just work.

    https://github.com/preble/pyprocgame/blob/master/games/starter/starter.py

    Yeah, the pain of installing the low level libraries for development is an interesting topic of discussion. There are (and always have been) two types of users of the P-ROC.

    1) Developers who want to program in low level languages or build their own frameworks
    2) Developers who want to program their games on pyprocgame

    Well, now there's a 3rd type:

    3) Users who want to install and play games developed by others.

    Back in the early days of software development on the P-ROC (the board is over 5 years old now - wow time flies), we made it easy for people to just install and run pyprocgame. By that I mean we made a Window's installer that installed the libpinproc and pypinproc binaries so group #2 could get up and running quickly, and it worked great for them.

    We didn't spend much time streamlining the installation of the low level source and dependencies because we figured low level developers (group #1) would be able to wade through the dependencies fairly well on their own.

    In those early days, Adam and I built out the entire development chain in our spare time in nights & weekends. It was a labor of love, and we did what we could. Neither of us were well versed in Windows development and installation packages, and we did what we thought was best for the majority of users (group #2). It wasn't until much later that Compy helped out by building the automated installer for Windows so that all of the source code and dependencies got installed and compiled automatically.

    That people like you, Brian, and Gabe are offering your time and skills to help develop frameworks and tools for various hardware platforms is fantastic. The custom pinball development landscape would look much different (and mostly non-existent) if Adam hadn't volunteered to create to foundation of pyprocgame for the P-ROC. Much of what's transpired in the pinball community in the last few year is due to the existence of the P-ROC and the efforts of people like Adam.

    It's fun (and very emotionally rewarding) for us to see that the custom pinball market has become what it is today. That other people are entering the market now suggests we were successful in many of our original goals. Mind you, it's still a labor of love. The custom pinball market is way too small to make any money supporting individual hobby projects, but that's ok. It started as a hobby project for me too, and I continue to develop products and support custom game designers because of the passion everybody has for creating new pinball machines.

    I have a lot of respect for people like Adam and Compy and folks like you, Brian, and Gabe for volunteering to help make tools and frameworks for the budding pinball designer/programmer to use. My bread and butter is still hardware design. My software development and architecture skills have significantly improved over the past couple of years, but I still defer to people like Adam when I need help or advice.

    Hopefully you guys can deliver on most of your stated goals. I think the goal of making custom pinball development something that's simple to do for non-programmers is a bit of a pipe-dream, but each step takes us closer to making that dream a reality, and it'll be fun to watch your progress.

    As always, I'm happy to support you in any way I can.

    - Gerry
    http://www.pinballcontrollers.com
    http://www.multimorphic.com

    #62 4 years ago

    To jump back in to address the various questions about how realistic it is to make MPF usable by non-programmers (or, perhaps more appropriately, how fun of a game can be built by non-programmers), I'll answer like this.

    I don't know.

    It's our goal though, so we'll keep chugging away and see what happens.

    I know for sure we can get all the hardware devices defined—not just hardware like coils, lights, and switches, but pinball-related things like ball devices, drop targets, bumpers, lane changes, kickbacks, flippers, switch sequences for shots, etc. I know we can have advanced options for built-in modules like keyboard interfaces, ball search, ball save, etc. I know we can have text-based files to control light shows (even for RGB LEDs) and that we can hook in with video editing platforms to make cool shows. I know we can handle all the player rotation, cycling through balls, games, etc. I know we can award points (by tying them to game events). I know we can show text on the DMD, play audio, and play DMD animations. I know we can allow the game designer to specify which of all these options are exposed in the service menu. I know we can create advanced usage, audit, and maintenance reports. I know we can replace the service menu with an iPhone app... really there's a lot that I know we can do no prob.

    Then when it comes to actual programming, I know we can make snippets of code that run that are triggered by events (basically when anything in the above list happens), and I know we can provide a clean and simply interface for all these pinball things when the game designer actually has to write code.

    So at the end of the day, I agree that we will never get to the point where the game is totally "no programming," especially once we get into game modes that do who-knows-what. (Though a lot of those are pretty similar too. Shoot x target y times in z secs. Play animation a with sound file b while doing it.) I also recognize that we can't make our config files *too* complex, since at that point we've essentially written our own pinball language.

    But I do honestly believe that with a few hours or days of effort stepping through our configuration file reference that we can get people to a game that passes as functional.

    Obviously time will tell. But those are our goals.

    I love the enthusiasm from everyone though! Thanks for that. It's very encouraging for us.

    #63 4 years ago
    Quoted from gstellenberg:

    The custom pinball development landscape would look much different (and mostly non-existent) if Adam hadn't volunteered to create to foundation of pyprocgame for the P-ROC.

    With respect, I think you are ignoring the years of hardwork Brian Dominy put into FreeWPC, which predated P-ROC by a good couple of years.

    #64 4 years ago
    Quoted from BrianMadden:

    I also recognize that we can't make our config files *too* complex, since at that point we've essentially written our own pinball language.

    This is what I wanted to hear

    #65 4 years ago
    Quoted from Sonny_Jim:

    With respect, I think you are ignoring the years of hard work Brian Dominy put into FreeWPC, which predated P-ROC by a good couple of years.

    Brian Dominy's FreeWPC work is very impressive. All the things he had to do/create to accomplish what he did was why we sought his input and advice. He was the first person to get his hands on our FAST WPC Controller.

    After we met Brian Madden we were able to align all interests and we no longer needed to lead the charge on a Python framework. Combined with the work Dave Beecher and I have done and all the work and enthusiasm from Roy Elthem, we are loving how efficiently we are working towards our collective goals.

    I have said it before, but its worth saying again, since I have been involved in this pinball hardware scene I have met and become friends with more super cool and super smart people than I have in ages.

    Aaron
    FAST Pinball

    #66 4 years ago
    Quoted from Sonny_Jim:

    With respect, I think you are ignoring the years of hardwork Brian Dominy put into FreeWPC, which predated P-ROC by a good couple of years.

    Not at all. FreeWPC is a great (and free) option for low level programmers who want to retheme a WPC machine, and it was absolutely available before the P-ROC and pyprocgame. Brian and I exchanged a number of emails when the P-ROC first came out, and I respect him immensely for what he was able to accomplish.

    That said, there just aren't a lot of hobbyists in the pinball world that have a strong desire to program in low level C and with the constraints imposed by the original WPC hardware. IMO, being able to develop in a high level language like python and with the resources and existing libraries and support communities afforded by having a PC in the system has led to the growth of the custom pinball dev community.

    - Gerry
    http://www.pinballcontrollers.com
    http://www.multimorphic.com

    #67 4 years ago

    I stumbled across this no-code example for a mobile game. Something like this for a pinball development platform might really open up the hobbyist arena for folks who aren't programmers:

    http://learn.code.org/flappy/1

    #68 4 years ago

    Features like ball save, ball lock & such are the building blocks for features of a pin. I could envision a language or GUI where a pin rule set could be created with little to no programming knowledge. You have a standup target? Tell me what you want the point value to be.

    #69 4 years ago

    So much unjustified pyprocgame bashing. Brian, I'm surprised you aren't standing up for it more. I think that Adam and pyprocgame are owed some defense.

    I tried to look through your MPF docs but it's too late to pick up all this nuanced terminology you're defining in the docs. I jumped into github and Poked around a bit there, which was easier to follow.

    Quoted from BrianMadden:

    So let them price war and let us win.

    Man, that's an awful sentiment. I can say with certainty that in my last two years of reprogramming pinball machines with the p-roc that I never once felt the p-roc wasn't easily worth 3x the price. How will a price war really help this tiny niche market, by causing someone to stop making a profit selling boards?

    I'm all for the free market and the good of competition and challenging monopolies and such but, good grief, this sure doesn't feel like that. Gerry sure isn't Intel.

    #70 4 years ago

    Wouldn't take it to heart, you wanted a discount at one point. The only real "bashing" has come from people that haven't used it & have wanted/tried to.

    #71 4 years ago
    Quoted from ForceFlow:

    I stumbled across this no-code example for a mobile game. Something like this for a pinball development platform might really open up the hobbyist arena for folks who aren't programmers:
    http://learn.code.org/flappy/1

    Yep! There can be so much done in interfaces such as that. Check out: https://code.google.com/p/blockly/

    One of the reasons we were so stoked to align with the MPF was the common vision for creating new development interfaces. Granted, not everything can be drag/drop or "just a config" simple, a whole lot of it can be.

    Aaron
    FAST Pinball

    #72 4 years ago
    Quoted from sd_tom:

    Is python responsive enough for these things? Interpretive language thru a USB widget against a real time system (pinball system) seems a bit awkward to me; or at least driving a computer requirement well beyond what would really be needed if it were c/c++ / embedded.
    Sorry, been holding on to that question for a long time, nothing specific to your efforts.

    With the FAST Controllers, you are communicating directly with 3 separate processors. 1 for DMD content, 1 for RGB LEDs and 1 reading switches and controlling drivers, etc. (all the FAST I/O board, and where applicable, the switch matrices).

    3 separate UART connection ensure no bottlenecks. When you seat the Beaglebone Black on a FAST Controller you are good to go. When using any other PC and connecting to the single USB connection, you are provided the same 3 separate connections.

    Our FAST Controllers take the commands and ensure they are done, returning success or failure for your request. This makes your high level code much leaner and lets the FAST hardware do more of the work for you and hopefully make interfacing with frameworks like the MPF even more efficient.

    Aaron
    FAST Pinball

    #73 4 years ago
    Quoted from Mocean:

    So much unjustified pyprocgame bashing. Brian, I'm surprised you aren't standing up for it more. I think that Adam and pyprocgame are owed some defense.
    I tried to look through your MPF docs but it's too late to pick up all this nuanced terminology you're defining in the docs. I jumped into github and Poked around a bit there, which was easier to follow.

    Man, that's an awful sentiment. I can say with certainty that in my last two years of reprogramming pinball machines with the p-roc that I never once felt the p-roc wasn't easily worth 3x the price. How will a price war really help this tiny niche market, by causing someone to stop making a profit selling boards?
    I'm all for the free market and the good of competition and challenging monopolies and such but, good grief, this sure doesn't feel like that. Gerry sure isn't Intel.

    Let's keep it positive. We certainly aren't here to "dethrone" PROC or anything petty like that. Let's not make this about price, but rather what is best tool for the project at hand. The best tool could be determined by price, by value, by feature set, by many things. Our hardware will be priced fairly and cover our costs and provide some upside to continue to justify the effort. The worst thing to happen would be a race to the bottom on price and then no R&D happens and no new product comes out and eventually companies making hardware throw in the towel.

    And really, this thread is about a new Python pinball software framework. MPF isn't here to kill pyprocgame. It is here as an option for game designers/programmers. Nobody has to use it. If you love pyprocgame, you should keep using it. If you are new to programming pinball, I would encourage you to use the MPF as it matures so you have the most hardware options available to you. If you are planning to make a video game pinball game, I would assume you would use pyprocgame because you should be using what Gerry is most focused on.

    No matter what, the bottom line is that FAST and PROC are both here to enable the creation of more pinball. Write your code anyway you want. Both FAST and PROC allow for that. The MPF is here as an option you can choose to use or not.

    Aaron
    FAST Pinball

    #74 4 years ago
    Quoted from s1500:

    Features like ball save, ball lock & such are the building blocks for features of a pin. I could envision a language or GUI where a pin rule set could be created with little to no programming knowledge. You have a standup target? Tell me what you want the point value to be.

    To a very limited degree perhaps. Hitting a target and scoring points for it is so basic that pyprocgame and MPF (I expect) will handle it more or less out of the box. For pyprocgame, take starter.py, configure your YAML file which contains the information about the switches, lamps and solenoids in your machine and add the line

    # If the switch on the standup is activated, give the current player 100 points
             def sw_standupTarget_active(self, sw):
     		         self.game.current_player().score += 100

    But you already know that of course with WOOLY. But suppose that it's a spinner, and you want it to score 1000 if you hit a different target less than 5 seconds ago, except when you have a multiball running when the spinner should put something on the DMD display and play a different sound, and then it should score something from a rapidly counting hurryup score? You very quickly get beyond anything a GUI can do and need to do "proper" programming at some level or other. Why then invent something new when python, or c++, or VB are already out there.

    Choice of programming language, operating system and so on will always be argued about and has been since computers were invented. I programmed mainframes for a while (I'm not as old as that makes me sound!) and then it was PL/1 versus Cobol versus Fortran. With pinball now it's Python (in MPF or pyprocgame variants) and a few others out there too (C++ for FreeWPC, P-ROC has VB and C++ too I think, plus whatever else). Why write another, it'll end up looking pretty much like something existing and will have it's lovers/haters too.

    Pinball programming is always going to be a niche to some degree, regardless of how much work goes into the software and hardware. But if the MPF framework hides some more of the back-end and therefore gets into the comfort zone of some more people and gets them to have a go, cool! If MPF hides the choice of hardware so you can choose P-ROC, FAST and whatever else might come down the line then that will help grow the community.

    Let's go program some pinball. My F-14 rewrite now needs it's first multiball

    #75 4 years ago

    Save yourself a bit of typing just doing, self.game.score(100)

    Aaron, have you made or is there a thread for all FAST questions? Not trying to say , "get your own thread". I'm interested to know whether you will support Data East , Sys 11 out of box?

    Presuming a yes on the sys 11, because of FH.

    #76 4 years ago
    Quoted from horseypin:

    Presuming a yes on the sys 11, because of FH.

    Ah, FH is a WPC machine, just with an alphanumeric display instead of DMD, like BoP. FAST have said that they will be doing a Sys11 board though, so I guess MPF will support that too (along with all the fun of the A/C relay) eventually.

    #77 4 years ago

    Snux,
    I am fairly certain your Sys11 board will work with the FAST WPC controller board. I'll be doing some testing along that front soon.

    #78 4 years ago

    Thanks, I see, some just used sys 11 sound. Had to deal with the A/C before. Blatantly trying to get away with not giving you $

    #79 4 years ago
    Quoted from horseypin:

    Blatantly trying to get away with not giving you $

    Works for me

    (In case others don't know - I make $0 selling the board and $0 selling the kit as I just sell at whatever it costs me, to get more folks doing the Sys11 'thing'. The built Sys11 board I make a profit of around £40 ($60) on which isn't much more than minimum wage by the time I'm done soldering around 150 components and then testing It's not part of my retirement planning, for sure. )

    Just joking though. My understanding for FAST Sys11 was that it was a complete replacement MPU board. Unlike WPC, you can't separate the processing and the driver boards, which is why for Sys11 we have P-ROC and my board together. Anyway, we're derailing this thread somewhat (again!), maybe Aaron can start a new FAST thread for more technical stuff sometime soon.

    #80 4 years ago
    Quoted from Sonny_Jim:

    With respect, I think you are ignoring the years of hardwork Brian Dominy put into FreeWPC, which predated P-ROC by a good couple of years.

    I've talked with the MPF team numerous times and fully support what they're doing. There's no animosity or disrespect between us, in fact it's quite the opposite.

    If I had started FreeWPC recently, I probably would have used a hybrid of C++ (for the low level stuff) and Python. I completely agree that C++ is a barrier for non-programmers.

    #81 4 years ago
    Quoted from horseypin:

    Wouldn't take it to heart, you wanted a discount at one point. The only real "bashing" has come from people that haven't used it & have wanted/tried to.

    Then why thumbs down the post..?

    Quoted from fastpinball:

    Let's keep it positive.

    I'm sorry if I'm being seen as negative --I don't want to be negative; I think I've been quite supportive of many different pinball programming initiatives and shared quite a lot of code, documentation, and time. I'm glad we agree a price war is not a winning scenario.

    Brian: best of luck with MPF; I hope you can provide all you intend to and find that delicate balance between flexibility and simplicity. It's no easy feat!

    Quoted from Snux:

    Let's go program some pinball.

    Amen to that!

    - Michael

    #82 4 years ago

    In terms of documentation, I tried to bolster P-ROC's wiki, but didn't get further than many stub pages. I wanted to document everything possible, from coding best practices to cab construction & variances. Then I ran out of steam. Was hoping others would join me in the missing gaps to reverse engineer pinball and show you how to program P-ROC boards for your dream machine.

    #83 4 years ago

    I haven't really done any investigation into this yet, but how is the C support for things like P-Roc? I program in C every day and have done some python, but for low level embedded stuff I would 1000x rather program in C than python. People don't know pain until they use python for something timing critical, ugh, can make your life miserable, lol. I've thought about picking up a board here at some point to try and code some stuff up, but only if I can program in C and not python. I'm glad their doing the python support framework for everyone else involved, just not something I'm interested in. Universal C framework I'd be in.

    #84 4 years ago
    Quoted from horseypin:

    Save yourself a bit of typing just doing, self.game.score(100)
    Aaron, have you made or is there a thread for all FAST questions? Not trying to say , "get your own thread". I'm interested to know whether you will support Data East , Sys 11 out of box?
    Presuming a yes on the sys 11, because of FH.

    I think that is a good idea. I will get one going soon. We are working on content for our website and we can use a thread to fill in the gaps from there.

    Aaron
    FAST Pinball

    #85 4 years ago
    Quoted from taylor34:

    I haven't really done any investigation into this yet, but how is the C support for things like P-Roc?

    All the low level libraries are in C/C++ and there's a simple parser library for the YAML config files it uses (although those aren't a requirement it's a nice way to keep things compatible with other users.)

    #86 4 years ago
    Quoted from s1500:

    In terms of documentation, I tried to bolster P-ROC's wiki, but didn't get further than many stub pages. I wanted to document everything possible, from coding best practices to cab construction & variances. Then I ran out of steam. Was hoping others would join me in the missing gaps to reverse engineer pinball and show you how to program P-ROC boards for your dream machine.

    Felt the same way with pyprocgame where I should've done some noobie guides as I was learning. Just couldn't be bothered in the end, I feel that most people must've felt the same way. But anyway, saying that, it may be a decent idea to work on a table and video document it as I go.

    #87 4 years ago
    Quoted from horseypin:

    Felt the same way with pyprocgame where I should've done some noobie guides as I was learning. Just couldn't be bothered in the end, I feel that most people must've felt the same way. But anyway, saying that, it may be a decent idea to work on a table and video document it as I go.

    If you are starting from scratch, here's an idea: take pictures from beginning to where you are at right now. Start with a picture of the "main" board, then the next pic show the power connection to the next board, another pic with the data connections and so forth. Nice bird's eye view. Pictures are worth a thousand words here, just like you can't explain brain surgery over the phone.

    For P-ROC, getting a single light to flash is the equivalent of "hello world" in programming. Then one are off to a good start.

    #88 4 years ago

    Well, what you've just mentioned there would be good for me at some point.

    I've been learning all pyprocgame/python through VP & desktop cmd running the main() on each mode.

    Finished a game and about 20% through the next one. That first game would need going over again if it was to go on the real table though. Only because of the relay stuff on DEast, I wouldn't trust it to work 100%, even though it "should" work, timings etc.

    I was trying to say I'd create guides for pyprocgame for others so they don't have to go through hassle of searching for answers, deciphering. Drifting away from MPF again now though, I would use both.

    2 months later
    #89 4 years ago

    Just bumping this thread and giving a shoutout to the devs on this project. It is really simplifying things and such a great offering.

    1 week later
    #90 4 years ago

    Very interesting, love the two modes.

    #91 4 years ago

    This is great. I would love to see a graphical "Front End" for python etc. I used to program commercial flight simulator cockpits using a program called Easygauge. You would design the gauge graphically and then there was an area to add "if/then" statements to tell the gauge how to work. Then you would hit the compile button and the program would actually write the C+ code.

    I would love to see something like this for pinball development. I think this is a great step in that direction but writing complex rules I seems like you would have to go back to hard code writing.

    Keep up the great work.

    #92 4 years ago

    New release bump - small fixes and additions.

    #93 4 years ago

    We got to hangout with Brian and Gabe out at Expo. What a blast! Saturday night while most folks were out partying, we were all up in our room working in some refinements to FAST Protocol and programming some pinball!

    Brian and Gabe are doing an excellent job with the Mission Pinball Framework!!!

    Aaron
    FAST Pinball

    11 months later
    #94 3 years ago

    I'd just like to provide an update on MPF since it's been a year since we've posted here. We've been busily working on MPF with about 2500 man hours on it in the past 12 months. We're now on version 0.20 (versus 0.9 at Expo 2014).

    We're making good progress towards the original goal of creating a pinball framework that's both easy to use for non-programmers as well as easy to extend for people who want to write "real" code. Most people so far use the config files to get about 90% of the way there and then they finish it up with 10% "glue" written in Python to do the custom stuff for their machine. (Though that's still not strictly necessary. The guys who created the Pitchfork Music Festival machine haven't written a single line of Python. Really it's just a personal preference of the people creating the machine.)

    Listing out all the features would take up too much space here. But at this point, MPF has modes, shots, scoring, game logic, lots of different device support, FAST and P-ROC support, many sample modes & devices (ball save, tilt, high score, multiball, bonus, credits & coin support) which are all highly extendable and customizable. We support LCD, color DMD, and physical DMDs. We support games with multiple playfields (even head-to-head). We have separated the pinball controller and the "backbox controller" (display, audio, etc.) into two processes (which is great for small, multi-core systems), and we've developed a communications protocol that lets you replace the built-in backbox controller with whatever you want. (One group has already created a Unity3D-based option.)

    Here's the full list of what's been added in the past year: https://missionpinball.com/docs/version-history/

    Anyway, I just wanted to give a quick update. I'll post here each time we do a new release (every 6-8 weeks). In the meantime, we have hundreds of pages of documentation, and, most importantly a step-by-step tutorial for getting started (even if you don't have real pinball hardware yet). https://missionpinball.com/docs/tutorial/

    We will be at Expo next weekend along with I think 4 or 5 games in progress using MPF. You can also follow the progress via the many other awesome projects on Pinside using MPF: (The Pitchfork Music Festival Machine, Nightmare Before Christmas, Minions...)

    #95 3 years ago
    Quoted from BrianMadden:

    Most people so far use the config files to get about 90% of the way there and then they finish it up with 10% "glue" written in Python to do the custom stuff for their machine. (Though that's still not strictly necessary. The guys who created the Pitchfork Music Festival machine haven't written a single line of Python. Really it's just a personal preference of the people creating the machine.)

    If this is really true, you guys have done some amazing work.

    #96 3 years ago

    Once I'm finished with Alien and have free time for my own pinball projects again I'm going to start picking up Python and diving into MPF.

    #97 3 years ago

    well done, hope to use one day

    #98 3 years ago

    New MPF feature: Support for "real" color DMDs (RGB LED matrix instead of LCDs).

    #99 3 years ago
    Quoted from BrianMadden:

    I'd just like to provide an update on MPF since it's been a year since we've posted here. We've been busily working on MPF with about 2500 man hours on it in the past 12 months. We're now on version 0.20 (versus 0.9 at Expo 2014).
    We're making good progress towards the original goal of creating a pinball framework that's both easy to use for non-programmers as well as easy to extend for people who want to write "real" code. Most people so far use the config files to get about 90% of the way there and then they finish it up with 10% "glue" written in Python to do the custom stuff for their machine. (Though that's still not strictly necessary. The guys who created the Pitchfork Music Festival machine haven't written a single line of Python. Really it's just a personal preference of the people creating the machine.)
    Listing out all the features would take up too much space here. But at this point, MPF has modes, shots, scoring, game logic, lots of different device support, FAST and P-ROC support, many sample modes & devices (ball save, tilt, high score, multiball, bonus, credits & coin support) which are all highly extendable and customizable. We support LCD, color DMD, and physical DMDs. We support games with multiple playfields (even head-to-head). We have separated the pinball controller and the "backbox controller" (display, audio, etc.) into two processes (which is great for small, multi-core systems), and we've developed a communications protocol that lets you replace the built-in backbox controller with whatever you want. (One group has already created a Unity3D-based option.)
    Here's the full list of what's been added in the past year: https://missionpinball.com/docs/version-history/
    Anyway, I just wanted to give a quick update. I'll post here each time we do a new release (every 6-8 weeks). In the meantime, we have hundreds of pages of documentation, and, most importantly a step-by-step tutorial for getting started (even if you don't have real pinball hardware yet). https://missionpinball.com/docs/tutorial/
    We will be at Expo next weekend along with I think 4 or 5 games in progress using MPF. You can also follow the progress via the many other awesome projects on Pinside using MPF: (The Pitchfork Music Festival Machine, Nightmare Before Christmas, Minions...)

    One thing you've forgotten to mention is the monumental amount of documentation and support work that you guys have done to meet the needs of your users, get them up and running, and to address their needs. This is no easy feat. Hats off to you and to Gabe!

    #100 3 years ago
    Quoted from Mocean:

    One thing you've forgotten to mention is the monumental amount of documentation and support work that you guys have done to meet the needs of your users, get them up and running, and to address their needs. This is no easy feat. Hats off to you and to Gabe!

    totally agree, well done guys

    Promoted items from the Pinside Marketplace
    $ 90.00
    Lighting - Under Cabinet
    Rock Custom Pinball
    From: $ 5,799.00
    Pinball Machine
    Flip N Out Pinball
    $ 25.00
    From: $ 23.00
    $ 20.00
    Playfield - Decals
    Bright Lights Pinball
    $ 99.99
    Lighting - Other
    Lighted Pinball Mods
    From: $ 42.00
    Cabinet - Shooter Rods
    ModFather Pinball Mods
    $ 24.95
    Playfield - Toys/Add-ons
    ULEKstore
    $ 15.00
    $ 7,199.00
    Pinball Machine
    Classic Game Rooms
    $ 199.99
    Lighting - Led
    Lighted Pinball Mods
    $ 38.00
    Cabinet - Sound/Speakers
    ModFather Pinball Mods
    $ 90.00
    Lighting - Under Cabinet
    Rock Custom Pinball
    $ 20.00
    Electronics
    Yorktown Parts and Equip
    $ 22.00
    Electronics
    Yorktown Parts and Equip
    $ 43.00
    Playfield - Toys/Add-ons
    Lermods
    $ 99.99
    Lighting - Other
    Lighted Pinball Mods
    $ 6.00
    Electronics
    German-Pinball-Modular
    From: $ 99.99
    Cabinet - Other
    Lighted Pinball Mods
    From: $ 99.99
    Cabinet - Other
    Lighted Pinball Mods
    $ 9.99
    Eproms
    Matt's Basement Arcade
    $ 69.99
    Playfield - Toys/Add-ons
    Lighted Pinball Mods
    $ 6.95
    Playfield - Toys/Add-ons
    ULEKstore
    From: $ 10.00
    Electronics
    Third Coast Pinball
    There are 134 posts in this topic. You are on page 2 of 3.

    Hey there! Got a moment?

    Great to see you're enjoying Pinside! Did you know Pinside is able to run thanks to donations from our visitors? Please donate to Pinside, support the site and get anext to your username to show for it! Donate to Pinside