Pushbutton Engine 101 - Ben Garney

Published March 10, 2010
Advertisement
(From the Flash Gaming Summit)

Pushbutton Engine 101 - Ben Garney

There are lots of fun clever Flash games

Why a game engine? You'll save time. You'll gain reliability. You'll gain features. And you'll ease collaboration.

Version 1.0 of Pushbutton engine has shipped as of today.

www.pushbuttonengine.com/forums is an active development forum

RockYou released "Zoo World" using PBE

Youtopia's game is also built on PBE

Social City is a brand new social game

The engine is open source, and there's no need to clear licenses with the company.

"Video Game Optimization" - at the Cengage booth at GDC this week.

What are components? Basically for games, inheritance is broken. When projects get large, the design gets hairy.

PBE is based off "entities" which contain spacial components and/or rendering components and/or mover components. Classes are basically all mixins.

basest class in PBE is "iEntity", which defines an object in the world.

How Components Communicate - direct, propertyreferences, and events

Direct communication - simple but inflexible. Basically just get the component and call its functions. Direct communication is simple but leads to dependency hell.

Propertyreference - basically sending a string to an object which it can handle or ignore at will.

Events - the "message bus" paradigm. You can dispatch events on the entity level.


Component Kits - A big part of the PBE "vision" is being able to share and/or sell pieces that you can pull in other games. PBE is a framework to release components and their own code.

An example of a component kit is "Pushbutton Tasks" - A set of rules that will be updated as game conditions change.

"Platformer Starter Kit" - contains all the bits you need to build a platform game

"Networking kit" - similar to Torque networking. Allows fast peer-to-peet game communication.

"Card Kit" - components to support card games

PBE can support sprite sheets and movieclips. You can draw movieclips directly to the frame, so you can support existing Flash content.
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement