[Home] | [Articles Index]

Worlds of Your Own

Three Approaches to Creating Your Own Computer Games or Scenarios

by Ted Kuik

a computer gameDo you ever dream of making your own computer game? Do you long to create virtual worlds that you and others can explore? Well this might just be your time. The tools available for creating your own games or scenarios are more numerous and better than ever. Here are three approaches you might want to consider:

Method 1: Use a programming language

Basic, C/C++, Java, PHP, Python, Ruby, and a myriad of other languages are available to do your bidding. Many varieties are open source programs available at no cost, and sites providing tutorials and support forums abound. Given the wide assortment of languages to choose from, you might want to do a bit of exploring before committing to a particular language. Look at some of the sample code and programs online. Browse some support forums. Ask some questions. Find out if others are using a particular language to create the type of games you are interested in. In choosing a programming language/enviroment, there are multiple factors to consider. Some languages like C or C++ may take more effort to learn initially but allow you to do things which "easier" languages might not do. Some languages are better at creating compact executable files or offer more flexibility in terms of what type of audio files are supported. Many times a languages may have special modules or libraries specifically geared towards game programming available, such as the Pygame modules for the Python language. In some cases a particular version of a language may be designed with game creation in mind, such as BlitzBasic or DarkBasic in the Basic family of languages. (For more on the basic family of languages, see my previous article, "Basic Lives on ... and Keeps Getting Better!")

Using a programming language give you lots of flexibility to create the type of game you want. It also helps you do develop or hone programming skills which might come in handy in other contexts. There might be times, however, when you are willing to give up some of the advantages of using a programming language in exchange for greater ease of learning or speed in developing your game. In such cases, you might want to consider ...

Method 2: Use a "Game Construction Set"

In game constructions sets, as in programming languages, you have a lot of alternatives, many of which are available at no cost. In choosing which game construction set to use, the type of game you want to create is often even more of a factor than in choosing a programming language. Some game construction sets allow you to create only 2D games, while others will only make 3D games. Some are specifically designed to create strategy games, while others will only produce RPG's or adventures. Some are are geared towards multi-player games, while others are only for a single player. And so on.

As with programming languages, the ease of learning can vary widely from one product to another. In general, there is probably not as much support available as there is for programming languages. Given that game constructions sets are usually easier to learn and use, however, this is not much of a drawback. You might not not need to spend quite as much time evaluating a game construction set as a programming language. If the construction set is free (or has a free trial version), you can probably get a reasonably accurate idea of how it is to work with by trying it out for a few hours (which might not be possible with a lot of programming languages). Two interesting programs for developing 2D RPGs are Enterbrain's RPG Maker XP ($60 as of this writing with a free 30 day trial download available) and the RPG Toolkit (a free open source product). Both allow for the creation of standard games with relative ease. Both also allow advanced users to achieve a greater degree of customization using a scripting language.

Method 3: Use a "Scenario Editor"

A third method which trades a little more flexibility for still greater ease of learning/game development is to use a "scenario editor" (sometimes also referred to as "map editor", "level editor", etc.). There is a lot of overlap between the categories of scenario editor and game construction set. Perhaps the key distinction is that in order to use a scenario that you have created, the player must have or obtain the game for which you designed it. For this reason, one would generally want to pick a game for which at least some interest already exists (or can be expected to exist in the foreseeable future). Otherwise your scenario may not get much use. Of course, if a good following does exist, a positive benefit of this approach is that there are probably plenty of players out there who will be eager to try your scenario.

"Battle for Wesnoth" is a good example of a game worthy of consideration. BFW is a cross-platform (Windows/Linux/MacOS/BeOS), open source, "turn-based strategy game with a fantasy theme". In addition to providing executables and source code of the game itself, the website gives you tools and instructions for creating your own scenarios or even combining multiple scenarios into a "campaign". An active set of forums is available on the Wesnoth website.

* * * * * * *

So there you have it, three viable routes to creating your own games or scenarios. Below are some additional links for further exploration of the alternatives available for game creation:

Ambrosine's List of Game Creation Resources - An excellent list of game construction sets, game engines, game programming languages, and other resources for the aspiring game developer.

Wikipedia's List of Open Source Games - A great list of games released under open source licenses.

The Open Directory Project's List of Computer Languages - Ada, Basic, C, Pascal, Python, and a whole slew of languages you may never have even heard of.

Gamasutra.com - Free online version of Game Developer Magazine.

 
 

Last Revised July 29, 2006

© Copyright 2006, Ted Kuik/Kuik Computer Services. All rights reserved.