Friday, March 23, 2012
Praise for WAY
People have been saying a lot of nice things about WAY lately, so we took some time and compiled a page full of those nice things. That was definitely a feel-good exercise. :-D
Saturday, March 17, 2012
Video Game Predictions
Just for the sake of being wrong in a couple years, here are my predictions for the next generation of consoles and videogames in general:
- The Wii-U will be modestly successful, thanks to the first truly great console MMORPG, which could only exist on Wii-U because of its touch screen's support of sophisticated user interfaces.
- The next XBox will be released by holiday 2013:
- It will be packaged with a new version of Kinect (duh), which will impress even the most jaded gamers. The games for the new Kinect won't totally suck.
- It will not have an optical drive or any other form of high-capacity removable media.
- All games will be directly downloaded.
- The basic model will have at least a 1TB hard drive.
- The next Playstation will be released by holiday 2014:
- It *will* come with a Blu-Ray drive... or maybe that will be optional.
- Like the XBox, the basic model will have at least a 1TB hard drive.
- All retail games will be available as direct download. They will still be available for purchase at retail, at least until #4 happens.
- By the end of 2014, GameStop will be bankrupt.
- Since "shelf-space" is no longer limited, the $60 price-point for all mainstream videogames will end and we will see prices of console games anywhere between $5-$100 depending on quality, reputation, amount of content, development cost, etc... As a consequence, we will see a broader range of games, the cheaper ones being more experimental and daring. The line between indie and mainstream will be blurred.
- Since the middleman retail stores have been removed from the equation, developers and publishers will see a bigger share of revenue, allowing the budgets of AAAA games to grow even larger. AAAA games will be even more polished and epic and derivative than they are today.
- Despite the continued and growing success of social and mobile games, console and AAA games aren't going anywhere and will continue to rake in more and more money.
- The PS Vita will be the last handheld console, because my phone and iPod touch work just as well (if not better) than dedicated gaming handhelds.
- There will absolutely be another console generation, probably 2016-2017. The internet is simply not designed to be low-latency and thus OnLive or similar tech will not be viable for core gaming even by then.
- Big publishers will open their own digital stores for PC, selling their titles exclusively through their own stores. Smaller studios and indies will stick with Steam. It will suck for us consumers, and for Valve, but at least they've finally announced Half Life 3 for 2016 (delayed to 2018, but it will blow you socks off).
- By 2020 EA will finally realize that nobody wants to play Dragon Age on Facebook. Yes, Facebook will still dominate the social internet.
Thursday, March 8, 2012
WAY wins "Best Student Game" at IGF!
Yesterday WAY won the award for "Best Student Game" at the Independent Games Festival! I'm pretty deliriously happy and oh so proud of my whole team.
The IGF is the largest and most competitive videogames festival in the world. We were selected as the top student game from 295 different entries by a distinguished panel of judges, both professional and academic. This is the first win for Carnegie Mellon University, and we're sure it won't be the last. :-)
We are all incredibly humbled and couldn't have made WAY without the support of our many friends, family, and teachers. Thank you so much!!
The IGF is the largest and most competitive videogames festival in the world. We were selected as the top student game from 295 different entries by a distinguished panel of judges, both professional and academic. This is the first win for Carnegie Mellon University, and we're sure it won't be the last. :-)
We are all incredibly humbled and couldn't have made WAY without the support of our many friends, family, and teachers. Thank you so much!!
Saturday, February 4, 2012
StarWright - Ship Combat
Combat is of course a major part of StarWright, and I've just finished the major ship-versus-ship combat systems. The mechanics of combat work essentially the same as in the original prototype. Weapon turrets automatically track and fire upon nearby enemy ships. Damaged is handled on a part-by-part or room-by-room basis, where individual parts or rooms can be individually destroyed. Additionally, if the only parts joining two sections of the ship are destroyed, then the ship will be split in two and become effectively two distinct ships.
As in the original prototype, cannons are able to penetrate deeply inside enemy ships, damaging critical systems deep within the ship. The current defense against cannons is to add parts with a high "penetration resistance" such as armor tiles or cannons themselves. While there currently aren't many systems inside ships worth protecting, I plan in the future to have many such systems, such as ammo supplies, power generators, shield generators, engineering bays, etc...
Here's a screenshot showing two "Enterprise"-like starships attempting to assault a heavily-armed space station:
As in the original prototype, cannons are able to penetrate deeply inside enemy ships, damaging critical systems deep within the ship. The current defense against cannons is to add parts with a high "penetration resistance" such as armor tiles or cannons themselves. While there currently aren't many systems inside ships worth protecting, I plan in the future to have many such systems, such as ammo supplies, power generators, shield generators, engineering bays, etc...
Here's a screenshot showing two "Enterprise"-like starships attempting to assault a heavily-armed space station:
Friday, January 13, 2012
WAY nominated for "Best Student Game" and "Nuovo" at IGF
Hurrah, WAY has been nominated for both "Best Student Game" and the "Nuovo" award at the Independent Games Festival! Wish us luck!
Future Walt says: Thanks for all the luck, guys! It worked! We won!!
Source: http://igf.com/2012/01/2012_independent_games_festiva_3.html
Future Walt says: Thanks for all the luck, guys! It worked! We won!!
Source: http://igf.com/2012/01/2012_independent_games_festiva_3.html
StarWright - In-Game Ship Controls
The original Starship Builder prototype suffered from some terrible user interface choices. It's not that they were stupid, but that they were a product of tacking on lots of features and not being sure about how I wanted the game to play. Now that I have a better sense of what the game will be, I can greatly improve the user interface.
This past week I've been working on the in-game controls for commanding ships. Since I see no need to reinvent the wheel, I've modeled the controls after typical real-time strategy games like StarCraft and, especially, Company of Heroes. Like most RTS games, you can left-click on a ship you own to select it, or drag a box around several ships to select all of them. When you have ships selected, you can right-click somewhere in empty space to order your ships to move there. I've stolen a feature from Company of Heroes, whereby if you right-click and drag you can easily reorient which way your ships are pointing.
The green circle in this screenshot indicates that the starship is selected. The green "ghost" indicates the destination to which the ship has been commanded. The thick green line indicates the path from the ship to its destination.
As in the original prototype, once you have commanded a ship to move to a location, an algorithm will determine the optimal "activation level" for each thruster on your ship. This algorithm I was able to lift virtually unchanged from the original prototype.
This past week I've been working on the in-game controls for commanding ships. Since I see no need to reinvent the wheel, I've modeled the controls after typical real-time strategy games like StarCraft and, especially, Company of Heroes. Like most RTS games, you can left-click on a ship you own to select it, or drag a box around several ships to select all of them. When you have ships selected, you can right-click somewhere in empty space to order your ships to move there. I've stolen a feature from Company of Heroes, whereby if you right-click and drag you can easily reorient which way your ships are pointing.
The green circle in this screenshot indicates that the starship is selected. The green "ghost" indicates the destination to which the ship has been commanded. The thick green line indicates the path from the ship to its destination.
As in the original prototype, once you have commanded a ship to move to a location, an algorithm will determine the optimal "activation level" for each thruster on your ship. This algorithm I was able to lift virtually unchanged from the original prototype.
Friday, January 6, 2012
StarWright - Steganography
Probably only programmers will appreciate this, but I did something I think is pretty neat today...
For StarWright, my super-awesome spaceship building game I'm making, I added more awesome to how spaceship designs are saved to files. Take a look at this PNG image:

If you download the file to your computer -- and of course have the latest version of StarWright -- you can simply load that PNG straight into the game and it will be fully playable and customizable. I'm hoping this will make ships easier and more fun to share, and it has the added bonus that I don't need to generate an in-game preview of the ship.
There's no fancy image-analysis going on. I'm simply embedding the ship data into the least significant bit of each of the red, green, and blue color channels of each pixel in the PNG (which is 32bpp ARGB). That's 3 bits per pixel, which means a 512x512 image can store about 98KB of data, which is more than enough for the largest ship I currently allow. Since only 1 very-insignificant bit is used per color channel, it's very difficult to see any visual difference. This is a kind of "Steganography" (hiding one message inside another), and Spore and the upcoming game Monaco use the same technique for creatures and custom levels.
The basic process in StarWright works like this:
There are some drawbacks to this method, but nothing really major:
Okay, I'm done nerding out now. ;-)
For StarWright, my super-awesome spaceship building game I'm making, I added more awesome to how spaceship designs are saved to files. Take a look at this PNG image:
If you download the file to your computer -- and of course have the latest version of StarWright -- you can simply load that PNG straight into the game and it will be fully playable and customizable. I'm hoping this will make ships easier and more fun to share, and it has the added bonus that I don't need to generate an in-game preview of the ship.
There's no fancy image-analysis going on. I'm simply embedding the ship data into the least significant bit of each of the red, green, and blue color channels of each pixel in the PNG (which is 32bpp ARGB). That's 3 bits per pixel, which means a 512x512 image can store about 98KB of data, which is more than enough for the largest ship I currently allow. Since only 1 very-insignificant bit is used per color channel, it's very difficult to see any visual difference. This is a kind of "Steganography" (hiding one message inside another), and Spore and the upcoming game Monaco use the same technique for creatures and custom levels.
The basic process in StarWright works like this:
- Save the ship layout to a JSON-like proprietary text format. Text is better than binary because it's far more tolerant of changes. This is as far as the old version went.
- Compress the text using GZIP. Since the text is highly repetitive, I get about a 20:1 compression ratio.
- Take a 512x512 screenshot of the ship at 32bpp.
- Embed the compressed data into the least significant red, green, and blue bit of each pixel in the screenshot. I could use the alpha channel as well but that'd probably be more visually noticeable.
- Save as PNG! Done!
There are some drawbacks to this method, but nothing really major:
- Save files are much larger than plain compressed text files. But the largest ship I have is still only 116KB on disk.
- Any alterations to the PNG file will almost certainly corrupt the embedded data.
- Theoretically the ship data may not fit in the image, but I can always increase the image size or use more bits per pixel. At first I was using 1024x1024 at 6bpp which was way more than I needed.
- Supposedly embedding already-compressed data inside a PNG will reduce the PNG compression, but I've seen virtually no file size increase vs screenshots without embedded data.
Okay, I'm done nerding out now. ;-)
Subscribe to:
Posts (Atom)


