Scrolling Game Development Kit UI Help |
This page lists issues that may frequently arise while using GameDev and describes the cause and/or solution to them.
Make sure that there are no layers in front of your layer that are opaque. A layer on top of another layer (in the foreground) will cover up layers below it when:
Also, make sure there's something to see. Draw some tiles on the layer. You can't see anything until it has some content. Make sure to draw tiles other than tile number 0. This tile will be invisible on transparent layers even if it contains an image.
For the opaque (background) layer, tile number 0 fills the map to form the background of the display.
The player sprite needs to have the "Initial Instance" checkbox checked. The game can't start without an instance of the player on the map. Only "Initial Instance" sprites are listed as options for the player sprite.
When creating a sprite template, the solidity definitions are listed for the currently selected path's layer's tileset. However, there is nothing preventing you from creating another sprite based on the same template and putting that sprite on a different layer using a different tileset. It's unlikely that the same solidity definition will work well on tilesets other than that for which it was designed.
Also, even with a proper solidity definition, only the corners of a sprite are checked for interaction with solid map. It's possible for pointy areas of the map to get between the corners of the sprite.
Only TileMatches that apply to the tileset of the layer currently being edited are listed.
The eraser cannot prevent you from making areas of the map that don't match up. That's because, using the eraser, it is possible to delete just one tile from a 2x2 block of well-matched tiles. A TileMatch is designed for a minimum width of 2 tiles and cannot cleanly match any area that is only 1 tile thick.
The "Initial Instance" box needs to be checked for an instance of the sprite to automatically be created with the map. Make sure you have selected the right path and are looking in the right place for this sprite.
You may need to select a different display mode. If you have selected 24-bit color, maybe your video card doesn't have a 24-bit color mode, only a 32-bit color mode.
You can't jump right into an empty project and try to play a game that doesn't have any data. At a minimum you must have the following things defined:
For assistance in creating a very simple project (about the simplest that can be played) see the quick start tutorial in the help menu.
Usually this is caused by GameDev trying to read the data off the dialog to create the object when the data isn't entered. Make sure you have entered all the appropriate parameters to create the object and try again.
XML is a plain text data format that can be relatively easily read and understood by a human reader. You can view an XML file in notepad or IE5 and above. XML is a general purpose format in which pretty much any type of data can be stored and described. The purpose of exporting a game project in XML format might be to edit a parameter that GameDev doesn't allow you to edit the way you'd like (if you know what you're doing). It's also a way to store all your GDP and MAP file data into a single file. It's used to back up the project in memory while playing the game (so the state can be restored after playing).
Other tools could easily be written to read, edit and re-save all or part of GameDev's XML data files. These files could then be re-imported into GameDev, or used in a separate engine or editor. Since GameDev is a development kit and not just its own game engine, it's appropriate to make it expose all its data in an easily understandable format, so you can do anything with the data that you want. There is already much information about XML available on the web, search around. Many things can be done with XML files.
An XML file exported by GameDev stores all the data normally stored in the project's GDP file and all the MAP files. It does not store the content of media clips or tilesets; it expects those files to exist in the same relative path when the XML file is imported. The file GameInfo.htm installed with GameDev can be used to determine an XML file's dependencies. After importing an XML file, the project will not have a filename because the filename is normally acquired from the GDP file. Instead it will receive a temporary default filename of "Imported.gdp" in the path where the XML file was located, until the project is saved. GameDev's XML support is not intended as a permanent storage mechanism so much as an export/import format for using in external programs.
GameDev requires that XML support be installed on the system already. In particular is makes use of the "MSXML.DOMDocument" COM object, which (at least on my system) is implemented in C:\Windows\System\MSXML.DLL. (I believe this is delivered with IE5.)
Yes. Using the Install Packager you can create an NSI script file which can in turn be compiled into an executable install package to install your game on any system. As of version 1.3 the Install Packager can be found in the GameDev tools menu. To compile the NSI file into an executable package you will need the Nullsoft Scriptable Install System (a free download). The Packager is designed for NSIS version 1.96 but will hopefully continue to function with the latest NSIS (unlike the previous version designed for NSIS version 1.44).
Look at the FAQ list on the web site for up-to-date discussion and samples. The online FAQ includes scripting samples.
Alternatively, look at the Scripting Wizard in the GameDev Tools menu, and the sample scripts (*.vbs) in the GameDev install directory for sample code.
Due to implementation details, a platform that is set to "follow exact path" may not always catch a sprite that attempts to land on it. It is recommended that a platform sprite use "follow approximate path" instead.
If you're still seeing this in version 1.3, it's a problem I still don't know how to fix. Usually you can work around the problem by hitting the "Reset" button above the color palette in the full screen tileset editor after it appears.
According to my interpretation of the GPL, this is my position on selling and redistribution of games created with GameDev (I'm open to comments on my interpretation):
This error has only one cause that I have yet seen. It means you have neglected to set the start up map. To resolve this problem, select "Player settings" from the View menu and specify a map in the "Start on Map" field. (it might also occur if you rename the start up map.)
The start up map must have a sprite indicated as the player sprite. Select your start up map in the maps dialog, then go to the "Player Interaction" tab and select a sprite to be the player sprite from the dropdown list.
I'm not currently aware of any serious problems in GameDev version 1.2 or later that would corrupt a project, so this isn't technically a "Frequently Asked Question". But in case the unspeakable should occur, I do have some answers: GameDev may not be perfect. If you run across a serious problem, please report it. See the Technical Support page for more information. Version 1.1 did have a problem with the re-ordering of layers. Since special functions were associated to the map by layer index, and I had forgotten to re-index functions when the layers were moved, special functions would have serious problems when you moved the player's layer to a different position in the sequence. This problem has been fixed in version 1.2, however. Special functions were the only objects connected to the map with a layer index. Furthermore, this problem is one that can be fixed by the "XML" solution described below.
Don't worry yet, there are a few ways to recover data from a project. One way to attempt recovering the data yourself is to export it as an XML file. Load the XML file into Notepad and see if you can locate the problem and fix it. Then re-import the project into GameDev. If you think the error is at a project level (as opposed to the map level) you can try editing the GDP file in Notepad, but keep a backup. Another option, if you own Visual Basic 6.0, is to download the GameDev source code and run GameDev in a debug environment and attempt to fix your project in the debugger. Finally, I'm willing to look into these sort of problems myself seeing as how I haven't had a lot of requests for help (as of this writing). Feel free to contact me and I'll see what I can do.
The best measure to take against a corrupted project, though, is to keep backups. Even if GameDev works perfectly, it's all too easy to bring up a tileset in 16-bit color and then save it (thereby potentially losing valuable color information). Or if you ignore the warnings and options and play around with the player sprite in the map editor, you could make permanent unwanted changes to the map. These kind of things can't be undone except by keeping good backups.