I've been working for a while on a video game, fashioned after the older-style side scrollers, which is powered entirely by Bitcoin. The game itself is playable at
http://hacknoid.ca/bitcoinrunner/ however, note that it currently is at alpha stage. I was inspired last summer by some innovative visualizations of the Bitcoin network, such as BitListen, and it occurred to me that there is lots of (effectively) random data created constantly in Bitcoin, and this could actually be used to created the playfield for an arcade-style game. So, after picking away at it for the last few months, I am happy to say the game is now available and playable! Feedback is welcome (
twitter.com/hacknoid or this thread).
Note the graphics and sounds are really just cobbled together at this point from various free sources around the web, so if anybody with skills in these areas wants to contribute, please let me know.
Alpha Stage ReleaseCurrently the game is playable and all features are there. There are still some more parts planned, but they may be slow coming. There may also be some serious bugs in it at this point, but hopefully nothing too major. Again, please advise of anything you come across. Gameplay is subject to revision based on feedback. Biggest problem right now is probably that the game is too hard to lose at!
Bitcoin PoweredSo, what does it mean to be powered by the bitcoin network? Well, just that - all game elements are generated on the fly - there are no predefined levels, enemies are not created by a script, and all the game elements (except some random ones) are created in response to activity on the network.
Specifically:
- Walls : walls are created from the current bid/ask walls of the bitcoin exchanges dealing in the currency of the current level.
The top-most wall level is the ask price, and the bottom-most wall is at the bid price. So as the bid/ask goes up and down, so do
the walls. - Coins/Banks : The coins that appear along the top wall are created when a trade is executed at the current asking price; the banks
on the bottom wall are created by trades executed at the current bid price. The actual value of the coin is determined by the value of
the trade. - Energy Coins : The flying bitcoins that give you energy are created by transactions broadcast on the P2P network; their value is
determined by the amount of the transaction (taken from the first output), and the value in turn determines the coins size and appearance. - Motherships : The "motherships" that appear on the bonus levels represent new blocks mined. The value of protecting the ship is
determined by the amount of bitcoins in the block. The time that the ship has to be proteced for is random, based on the historical average
time for blocks to propogate the network (on average, 90% of blocks will fully propogate the network within 2 minutes, so this is the max
time the game makes you defend for).
ScreenshotPlanned FeaturesHere is what I have planned so far:
- Local server - Currently each instance of the game will connect to the exchanges to retrieve data; this will be combined into a local server that the games will connect to in order for more streamlined supply of data (including from multiple sources)
- Shields for the ship
- High score list
CreditsI would be remiss if I didn't give credit to all the supporting packages I used to create this:
- iioengine - This is the game engine the code is written on; it would have been a ton of work to create all the basic code if I had to do it myself. The engine allows creation of games in only a few lines of javascript if you want.
- blockchain.info - This is where I am currently getting my transaction information from. I was using it for blocks as well, but that seemed a little flaky.
- toshi.io/ - Current source to get notification of new blocks.
- Soundmanager2 - Used to play the sounds in javascript.
- Highslide - Create the popup windows for information and help in game
- Textillate - Used to create the text animation in the opening backstory
Trade/pricing information:
- bitstamp (USD)
- bitfinex (USD) (in works)
- BTCChina (CNY)
Known Issues- The first bonus item doesn't usually appear (subsequent ones do)
Sometimes the block "ship" doesn't appear... in this case the game will have to be restarted. Looking into this one...Fixed!
- Unpausing the game with the help or information window open does not dismiss the window (need to close it with the 'x' button)
Muting the sound after the game has started does not always mute the background music; to get around this, either mute the game before starting to play, or add &sound=off to the URL Fixed!
[/list]
So, that's the announcement for now... as I say - feedback welcome, and enjoy!
EDIT: I added the list of credits... sources I shouldn't forget about! Also added known issues...
EDIT2 (10 Jan 15): fixed the block appearance and sound issues.