Retro City Rampage comes to Spain

Both Retro City Rampage and myself will be in Madrid at iDÉAME April 14th and 15th! You’ll get to play it on the Wii (courtesy of Nintendo!) . I’ll also be speaking about the game, its development and the industry, along side Magnus Palsson (DistractionWare, VVVVVV) and Jools Watsham (Renegade Kid, Mutant Mudds). It’s going to be fantastic, can’t wait!

More info: http://www.ideame.es/

Posted in Uncategorized | 1 Comment

Happy Holidays from Vblank Entertainment!

Merry Christmas and Happy Holidays from Vblank Entertainment!

It’s been an incredible year of non-stop development, events, speaking and learning.
Retro City Rampage has come a long way, becoming the massive game I always dreamed it could be. It’s packing over 50 story missions, over 30 arcade challenges, over 25 weapons and power-ups, over 40 vehicles, a massive interactive open-world to explore with over 70 interiors, over 100 character customizations and crazy crossovers including a ‘Splosion Man one. You’ll have hours upon hours of fun with it, guaranteed.

I can’t even begin to tell all you just how much appreciate your patience. RCR’s finally near the finish line but as it’s being developed almost entirely by one man (from programming to design, business, PR, etc.) things have taken quite a while. The game itself is nearly done but many business tasks, much testing and some platform requirements still need to be taken care of. Behind the scenes, I’ve had to battle many major bumps in the road over the past few years, including very recently. However, I pushed though them all and in the end everything’s turned out for the better. Even more great things are happening right now which I can’t yet announce, but what I will say is that when the game finally launches, nearly EVERYONE will be able to play it ;)

I wish I could announce a release date but even when development is complete, games must go through testing and certification, then sit in a waiting list for a release week. Until this is underway, a specific release date can not be announced, but again I really appreciate everyone’s patience.

Have a great holiday,
Brian

PS. Don’t forget to download all of the free stuff from music to wallpaper and an SMS inspired game case, here.

Posted in Uncategorized | 8 Comments

Speaking at DevHour in Mexico + more events

DevHour, Mexico City

DevHour, Mexico’s game development conference began yesterday, garnering a fantastic turnout. There’s so much passion here and potential for success for the talent in this country, everyone’s so hungry to learn which is fantastic. I’m already excited about returning next year.

I’m very happy to have been given the opportunity to speak at DevHour, both in panels and in giving a full lecture in the amazing auditorium. The two panels yesterday went very well and I’m happy to have been able to share new insight and knowledge that will enable developers here in Mexico to achieve greater success both in releasing their game and designing it. This afternoon I will be performing an hour long lecture on the development of Retro City Rampage and how small teams can automate their processes to achieve more, which will be followed by another panel.

GameCity, UK!!

Next month in Nottingham, UK between October 26th and 29th I will be at GameCity developing a game live using art that you, the attendees draw! More details to come.

Watch last year’s Make A Game In A Day, here!

Go Minecraft!!

Following that, in November I and Retro City Rampage will be at Mojang‘s MineCon in Las Vegas November 18th and 19th. I will be speaking and the game will be playable by all attendees.

Huge thanks to Mojang for the opportunity!

Lots of exciting stuff happening! Be sure to come out and say hi!

Posted in Uncategorized | 1 Comment

PAX Party!

Huge thanks to Destructoid for hosting!
There’s a PAX Party Thursday, August 25th in Seattle, WA.

Join Destructoid and several wonderful indie game companies for a pre-PAX celebration!

The Super Indie Friends Mixer will be starring many special guests…

  • us! Vblank Entertainment (Retro City Rampage)
  • Twisted Pixel (Ms. Splosion Man, The Gunstringer)
  • Hello Games (Joe Danger)
  • Halfbrick (Fruit Ninja)
  • Zen Studios (Pinball FX)
  • RedLynx (Trials HD)

Meet us! Say hi! We might even have prizes that you fans would love :)

The mixer takes place at Gameworks from 8PM to 12AM where the various developers on all these game franchises will be hanging out along with various Destructoid personalities. Plus, Gameworks is filled with a ton of arcade machines so there’s going to be something for everyone here.

More Info Here.


Also, Friday August 26th!
Fangamer and is hosting a party!

FREE with your PAX Badge, otherwise $15 for tickets.

More details here.

Be sure to support Retro City Rampage and purchase the awesome Fangamer shirt, poster and pins to help fund the final crunch to finish and release the game.

Grab them here.

Posted in Uncategorized | Leave a comment

PAX Dev Talks, Grand Theft Automation

Hey everyone. I’ll be speaking at PAX Dev Thursday August 25th in Seattle, WA.

Learn how Retro City Rampage was made!

I’m also on a panel later that afternoon with other very talented indies including Jamie Cheng of Klei Entertainment (Shank, eets), Jake Birkett of Gray Alien Games, Shane Neville of Ninja Robot Dinosaur (Ray Ardent: Science Ninja) and Rick Davidson of Inspirado Games. Rick and I worked together at Backbone Vancouver years back, and he’s now on a mission creating a new segment of gaming –meaningful games. I couldn’t ask to be on a better panel. Everyone on here has made a mark in game development and have a hell of a lot knowledge to share. I hope you can make it.

See the full PAX Dev Schedule, here.

Details on the sessions below…

Grand Theft Automation:
How One Programmer Developed Retro City Rampage

Grand Ballroom A
Thursday, 10:15am – 11:15am

This talk covers the key techniques which enabled a lone programmer to build the multi-platform, multi-award winning open-world game, Retro City Rampage. The panel will cover: use of automated debugging, building more efficient tools, implementing simple features which save weeks of work later and leveraging existing functionality for multiple features.

While developing Retro City Rampage, Brian handled all of the business, marketing, design and most of the art along side the programming and tool development. It was a lot to juggle, making the process of automation critical.

Attendees are given an overview of the techniques used to build a large game more efficiently. They will get a peek under the hood and techniques they need to apply these practices to their own games.

Brian Provinciano [CEO, Programmer, Designer, erm ...indie, Vblank Entertainment Inc.]


From the Cubicle to the Basement: Corporate Devs Go Indie

Grand Ballroom A
Thursday, 4:00pm – 5:00pm

A frank and open discussion with a panel of game developers have left successful careers in the traditional studio model to go out on their own as indies. The road to independence is a rocky one and the panel will share their experiences, good and bad, while giving advice to other developers contemplating the leap.

Jamie Cheng [CEO, Klei Entertainment], Rick Davidson [CEO, Inspirado Games], Brian Provinciano [President, VBlank Entertainment], Jake Birkett [Owner, Grey Alien Games], Shane Neville [Director, Ninja Robot Dinosaur Entertainment], Morgan Jaffit [Director, Defiant Development]
Posted in Uncategorized | Leave a comment

Design Patterns: Bitfields for BOOLs

When multiple engine systems set/clear a certain flag, it’s sometimes useful to use a bitfield instead of a bool, with each bit representing each system. If any of the bits are set, it’s TRUE, if all are zero it’s FALSE. This is similar to a reference counter but more explicit.

This is a design pattern I really like because it can produce much more bulletproof code. It makes your life far easier because you don’t need to worry about one system restoring the state properly for another, or another assuming the state incorrectly. It also can make code more efficient by eliminating the need to do multiple tests (ie. IsGamePaused() { return IsThisDoingSomething() && ThatDoingSomething() && etc.; }).

The example here is for the game pause state. RCR’s pause state means that the gameplay doesn’t run but everything else does. This is set when the player brings up the pause menu, when a cutscene is active, when a UI screen/minigame pops up, etc. So, to keep things nice and clean, I set up a bit for each. The game stays paused if any of them are still active, unpauses when all of them are deactivated.

Example code:
// TIP: Use enums instead of defines when possible for better debugging/intellisense
// and instead of consts when possible to avoid a bajillion startup constructors
enum mGamePause
{
    mGamePause_PauseMenu = 0x80,
    mGamePause_Cutscene = 0x40,
    mGamePause_UI = 0x20,
    mGamePause_Freeze = 0x10,
    mGamePause_Reboot = 0x08,
};

/******************************************************************************/
// by feeding in an enum it ensures you'd get a compiler error if you tried to pass
// something invalid, although it prevents you from setting multiple bits at once
// without a cast
void Game::SetPaused(mGamePause pausebit, BOOL bWantPause)
{
    U32 newstate = (bWantPause)? (m_mIsPaused | pausebit) : (m_mIsPaused & (~pausebit));
    SetPauseState(newstate);
}
/******************************************************************************/
void Game::UnpauseAll()
{
    SetPauseState(0);
}
/******************************************************************************/
void Game::SetPauseState(U32 newstate)
{
    if(newstate != m_mIsPaused)
    {
        if(newstate && !m_mIsPaused)
        {
            // do stuff when paused for the first time
        }
        m_mIsPaused = newstate;
    }
}
/******************************************************************************/

I use this whenever I can. It ensures more robust code which is less prone to bugs, being another way a lone coder can build such a massive game. It’s what I do and you can too!

Posted in Uncategorized | 1 Comment