Monday, February 15, 2010

Linux Launcher for Future Pinball

I recall the rare occasions as a kid that I got to go anywhere that had arcade games. As the games grew more complex they sprouted additional buttons, and increased the likelihood that I'd die all the sooner. Which is why I often had to give the Pinball Machines a quarter or two. No matter how many extras bells, whistles, lights, ramps, flippers, etc., they put in them the controls remained dirt simple - buttons on the left controlled left flippers, buttons on the right controlled right flippers, and if the game got stuck you'd nudge it lightly and hope it didn't "tilt" on you.

I've been writing the last couple of months on this blog about setting up my XBMC "media center" PC in the living room, and adding video game emulators to it. Well, now it's time to add PINBALL to my emulation fun!

There is a kick-ass pinball simulator/construction set program called "Future Pinball." If you're running Windows you can just go to http://www.futurepinball.com/ and download and install it. But if you're on a Linux machine, like I am with my "media center" then you need to get a custom installation script here: http://fprelease.free.fr/fpwine/

Just run that script and it will create a custom WINE install just for Future Pinball. Initially I tried following instructions I found in the Ubuntu forums for putting it in my existing WINE install, but every table I tried to run complained of script errors and froze. The install from that handy, dandy script, though worked perfectly out of the box. So I'd highly recommend it.

Make sure to go to the Future Pinball web site (http://www.futurepinball.com/) to get the "Sci-Fi Classic" demo game. It's actually pretty good, and some other tables people have created require it be installed so their table works. You'll be putting the files into a subfolder located at:

~/.fpwine/drive_c/Games/Future Pinball/Tables

You need to extract them to there (can't be ZIP files), and while many will work just fine in the sub-folders extracting creates, some will only run if the files are no lower than the /Tables folder. Especially the ones that require the demo table be there alongside them, however when you open them in the editor it will TELL you it needs files from another table. Then either copy that table's files in with the new one, or pull those tables out to live with the one on which they are dependent. If you have tables that didn't complain about dependency that freeze or crash on you, they tend to only do it when you want to PLAY them. Some can be fixed simply by opening them in the editor and saving them. Others will need to be moved out of their sub-folders to run. It can be a bit picky, but you only need to set this up once.

Since "demo" tables aren't that much fun, so you'll probably want a REAL table - by which I mean a faithful recreation of a classic one. Go to IRP Pinball site (http://irpinball.org/fp.htm) and look for your favorite olde tyme table. Don't stray off the page of that link I gave you, that's the Future Pinball stuff. Everything else on that site is for Visual Pinball (a different program). For some other recreations and original tables pay visits to the following sites and make off like you just knocked over an arcade:

http://www.blindmankind.tecnopinball.org/

http://www.roneypinball.com.ar/TablesRP.html
http://www.pinballaddicts.com/index.php?option=com_remository&Itemid=26
http://www.scapinosvpins.com/FuturePinballHome.htm

I'd highly recommend test-running each game (hit F5 within the FP editor) and doing that while still in "windowed" mode, just in case a table freezes you don't want to be stuck with it fullscreen and no way to get out of it aside from a hard restart. You'll probably want to play these full-screen, in which case (from within the FP editor) go to "Preferences->Video Options/Rendering" and look for the "Fullscreen" checkbox. You can also tell it whether you've got an older 4:3 "square" screen or a "widescreen" TV/monitor.

Ok, so if you're still with me you've got Future Pinball running smoothly in WINE, you've got an arcade's worth of machines to play - but it's a real drag having to open each in the EDITOR and then play it from there - especially when all you want to do is play them!!

Ideally, what you want to do is double click on a game name and have it run the game, ready to play, right? If you're setting it up to launch from XBMC like I am, you'll absolutely HAVE to do this.

Download the "Future Pinball Wrapper" program:
http://www.spacefractal.com/files/App/FuturePinballWrapper.zip

Extract the contents to your Future Pinball install:
~/.fpwine/c_drive/Games/Future Pinball/

Now, here's the tricky part. You need to SCRIPT this puppy to grab a Table file and run it with this Wrapper program. It will still launch the editor, but it will send it the command to "Play" it too.

When you used the install script for Future Pinball it created a file named "runFP" that will do nicely for our purposes. It is located at just inside your (hidden) ~/.fpwine folder. Copy that file and open it in your favorite text editor. I do this by hitting ALT+F2 and typing:

gedit ~/.fpwine/runFP

Now, you're going to see about 4 lines of code in that file, which is a simple little bash script. We're only going to modify the last line! So, find where it says:

WINEPREFIX=/home/user/.fpwine WINEDEBUG=-all wine /home/user/.fpwine/drive_c/"Games"/"Future Pinball"/"Future Pinball.exe"

(note: "user" is whatever your user name is)
Change it to something like this:

WINEPREFIX=/home/user/.fpwine WINEDEBUG=-all wine /home/user/.fpwine/drive_c/"Games"/"Future Pinball"/"Future Pinball Wrapper.exe" "C://Games//Future Pinball//Tables//Sci-Fi Classic.fpt"

Now, save as or save and rename that file to something like "Sci-Fi Classic" and check the permissions that it is executable. Put the file somewhere convenient, and now all you need to do is double click that file and it will automatically load and launch the Sci-Fi Classic Pinball Table. Oh, and you may need to click your mouse before you can play. It appears (on my system anyway) that the "focus" is still on whatever is underneath the game. Even though, when it is popped fullscreen, I don't see the mouse pointer a quick click or two seems to register as being "on" that window and then my keyboard input works to actually play the game.

For each machine you install just change the end of the path to point to a different file, save the script with a new name, and in the end you'll have a collection of custom launcher scripts for each pinball table you want to play. If you want to go a step further, most tables also include a screen shot of them and you could put that on as the icon for the file to make it pretty if you like.

Lastly, to launch them from within XBMC just use the "Launcher" plug-in I've been talking about now for a while, and tell it to run your custom script like a "stand alone" program.

Now, if you'll excuse me, I have some Pinball to play!

7 comments:

Off World Girl said...

Ok, after going through all of that now I'm not sure I'd exactly recommend Future Pinball to anyone. Why? It's future development is kind of iffy. The guy that apparently "owns" the rights to the program pulled the plug on the support forums, has discussed a commercial ($$$) product with some table developers, and seems to have thrown some kind of hissy fit and alienated some of Future Pinball's most ardent supporters. I don't know all the particulars, but it appears this software is being held hostage by the ego of one man. Also, I just learned the program has an EXPIRATION DATE coded into it! By 2011 it won't work anymore. The developer has apparently assured people the program isn't "dead" and development will continue - but no more details than that, and certainly not whether it will be a commercial software program or not. Also unclear is if some of the other people involved who contributed parts of the program won't start developing an alternative project NOT under that one guy's control, or if those advancement won't find their way into a future release of "Visual Pinball." As it stands right now, yes it works, play the tables and enjoy, MAYBE you can reset the clock and keep playing after next year, MAYBE there will be another release, but as it stands right here and now, I'm not going to put my endorsement behind "Future Pinball"

ed said...

Oh well, doesn't work for me. I guess I'll have to keep xp around on a separate drive a little longer just for pinball. I don't mind though, as it works perfectly in windows. Why fight it?

Fontgod said...

Black (Chris Leathley) doesnt just own the rights to the software, it is actually his creation (with the help of a couple of other guys contributions). He put a huge amount of work into it and has the right to sell it commercially if he wants to, I dont agree with how he pulled the forums down seemingly as a kneejerk reaction to a few negative comments but at least he is still giving away the software. What happens later in the year with the possible release of a newer version is anyone's guess but I know he has seemingly lost a lot of interest in the project now for various reasons.

Cheers,

Gravy - www.pinballaddicts.com

Off World Girl said...

@ Fontgod

Yes, it is Black's creation and he has a right to sell it if he wishes. It's also not uncommon for software to be released as freeware first and later switch to a commercial product. I think the expiration date in the freeware is a little underhanded and I'd have serious concerns about what kind of software support he'd provide for a commercial product after how he pulled the forums. All this is likely going to be moot now the Visual Pinball has been open sourced. Someone, at some point, will figure out how to get it to play FP tables.

Wade said...

An expiration-free compilation of Future Pinball has been done.

See: https://www.tiptonware.com/downloads.shtml

Look for "Future Pinball (no expiration)"

Future_Pinball.zip 24Mb

Have fun!!

Wade said...

By the way I've blogged about the inclusion of Future Pinball in my "Super Arcade" home emulation station. I believe it's the best pinball simulator out there. For more details and info on Future Pinball see my blog article here:

http://www.cheapskategamer.com/pc_game_stories_and_news/building-an-arcade-emulation-cabinetpart-one-software/

Wade said...

More info on Future Pinball can be found in the link below. Includes info not only on "expiration-free" versions of Future Pinball but the newest iterations of the engine with Physics 2.4 and 2.5. Future Pinball has never been better!!

http://www.cheapskategamer.com/pc_simulation_games/future-pinball/