Get the latest Education e-news
 
  • Look, Ma, No Code

    [08.19.14]
    - Nate Ralph
  • So you want to be a game developer. It's not an easy road to travel: You'll generally spend years mastering programming languages, assembling teams of like-minded souls to help create art and sounds for your opus, and work with expensive tools under dwindling budgets to see your dream come to fruition. Or so I've readCoI'm a writer by trade, my developer chops limited to cranking out the occasional Geocities-worthy web atrocity. In short, I'm a perfect guinea pig for testing out game development tools aimed at doing away with programming altogether.

    GameSalad and Scirra's Construct 2 are two rather different tools with the same aim: drag-and-drop game development. They've been kicking around for years, promising amateurs the ability to create games for the web and mobile devices without needing to pore over dense programming tomes. Both apps boast an active community of users and have seen many of their wares creep into Apple's App Store and Google's Play Store. And they're also free to try. Developers don't get much more amateur than me, so armed with a copy of Photoshop (though Microsoft Paint would've probably sufficed) and plenty of ideas, I got to work.

    I knew I wanted to start with something simple. After wading through tutorials, cranking out countless prototypes, and ultimately coming to terms with my woefully inadequate art skills, I settled on a shoot-'em-up I've dubbed Survival Rocket (working title). The premise is simple. Your rocket is exploring space, ferrying scientists who need food and water to survive. The ship's power core generates energy which can be converted into food (through science, I guess), but you'll need to acquire water by shooting ice asteroids. But danger abounds! Rocky asteroids are hurtling through space and threaten your vessel, though you can spend some of your ship's energy to repair the damage (also through science). The goal is to juggle keeping your colonists fed and watered, keeping your ship repaired, and surviving for as long as possible.

    So it's not exactly Mass Effect, and it's likely not fun in the traditional sense to anyone else. I dreamed up most of the rules to see how complicated I could make things in free drag-and-drop game design tools without being overwhelmed, and I'll admit I'm pleasantly surprised with (and I dare say, a bit proud of) the results.

    These tools are designed to make the arcane art of game development accessible to the masses, so they've got to be user-friendly and approachable. They both do a decent job, embracing a drag-and-drop approach to the craft that is invitingly simple, but which offers enough depth for plenty of complex ideas to take shape.

    Getting Around: Construct 2

    Construct 2's interface is split into tabs: The layout tabs host preview windows of your game, and the event sheets host all the commands. Layers sit on the right side of the screen and function much like they do in your image editor of choice, breaking up your game's layout into separate chunks. All of the objects you've imported into your game sit right below it; they're imported by tapping on the main window, or dragging and dropping images from anywhere on your PC into the app. The left side of the screen hosts a Properties window that lists details on all of the objects and layers you're working with. You can also drag the elements into whatever positions you find best, but I found the default layout worked just fineCoit's satisfyingly reminiscent of Photoshop, and if you've spent some time tinkering in the popular image editor you'll be right at home.

    Creating a Construct 2 game consists of assigning behaviors to the assets you've created and imported into the tool. The app is equipped with a number of predefined behaviors modeled after traditional gaming scenarios to help you get started. My inexperience is showing, but these behaviors feel like a stroke of genius: I was experimenting with control schemes within seconds of firing up the app. Assigning the "bullet" behavior, for example, caused the rocket to fire off at a set speed, or accelerate and decelerate when I held and released the spacebar. That proved a little unwieldy. Selecting the "8-direction" behavior will give an object freedom to move in all of the cardinal directions and on diagonals. It feels traditional, but the high maneuverability felt a bit unrealisticCothis is supposed to be a spaceship, after all. I settled on the car behavior, which implements steering, acceleration, and deceleration, and added a modicum of challenge to dodging flying boulders and scooping up resources.

    If you'd like to fine tune things further, the custom movement behavior will let you dream up your own control schemesCofrom assigning different levels of acceleration based on key presses or events to creating faux joysticks right in your game and controlling objects with them. You can also add any input methods you'd like, including touchscreens and gamepads. Testing your work is also simpleCojust hit the Play button on the menu bar, or hit F5. If you'd like to preview over Wi-Fi to test your app on a mobile device, you can dive into Construct 2's settings and input your PC's IP address, then point your device's browser in the right direction.

    The Event sheets are the heart of the Construct 2 development process. It's essentially an image-driven logic table: If condition X is met, do Y. Double-click on the sheet (or click "add event") and a dialog window will pop up with images of all the objects you've added to the game. Just pick one, select a condition, and then add a result. These can be simple: When laser collides with asteroid, destroy asteroid. Or they can be complex: When asteroid is created, set angle toward the player's coordinates with a speed of 100 pixels per second. That complexity is key, as you can seemingly create whatever your mind desiresComore so if you're equipped with some rudimentary programming knowledge and are handy with calculus.

    Most importantly, to my untrained eye it all makes sense. My event sheets always flowed logically (in part because I designed them that way), which makes understanding why things work (and why they don't) decidedly less painful. That freedom is refreshing, and arguably the reason apps like this exist in the first place: In my time dabbling with programming languages and HTML, I've never been able to understand a chunk of code quite as easily as I can the list of commands Construct 2 serves up.

Comments

comments powered by Disqus