Errors
This article or section is incomplete. It doesn't have all of the necessary core information on this topic. Please help the SRB2 Wiki by finishing this article. |
This is a list of known errors which can cause SRB2 to crash, along with instructions on how to fix them.
General errors
There are a few general errors in SRB2, which have many potential causes.
Standard Windows crash dialog
While SRB2 has error responses for most kinds of problems within the game, there are a few types of level malformations which SRB2 cannot process, but also has no programmed response for. When these errors occur, they can freeze the game and produce the standard Windows Crash Dialog. One such example is if a level contains two instances of a PolyObject Anchor which have the same Angle value.
This error occurs with executables that were compiled using the MinGW GCC compiler rather than Microsoft's C compiler (which is used by Microsoft Visual C++). Without the integrated exception-handling code from win32\win_dbg.c
with a working SEH system in the compiler (which currently only Microsoft's compiler supports), the next option for getting information on the crash is exchndl.dll
, a Dr. Mingw library that produces a report file called <EXENAME>.RPT
when the game crashes.
Sudden termination of the game
If SRB2 suddenly quits while loading a level, without any error dialog at all, the most likely cause is a floating platform which has not been set up properly. Check the map which caused the error to make sure that all floating platforms are built correctly.
Special errors
In addition to the standard SRB2 errors, there are also several highly specific error dialogs which can be traced to a single cause, usually an error within a custom level. Often, the solution to the problem is self-explanatory.
Missing frames in skin
This error occurs when the game tries to load a custom skin and cannot find a certain frame needed by the skin. One of these problems has occurred:
- A frame required to load the skin is missing.
- One of the frames is out of place in the WAD or PK3 file containing the skin.
- A frame is in a format unsupported by SRB2. Make sure you inserted the graphics correctly into the file as sprites.
- A HUD patch is missing or has been improperly replaced.
See Custom character tutorial for help with creating characters.
Timed linedef executor missing back sector
This error occurs when a linedef executor which has the Upper Unpegged flag set is not double-sided (i.e., does not have a back sector). SRB2 treats any linedef executor with the Upper Unpegged flag set as a timed linedef executor, and such linedefs must have both a front and a back sector. There are two ways to correct this: give the linedef a back sector, or, if you don't want it to be a timed linedef executor, uncheck the Upper Unpegged flag.
Too many flats in level
This error is caused by trying to use more than 256 different flats in a single map. This error is very unlikely to occur unless you specifically build a map to cause it, as levels rarely need more than 100 flats. This error can also be caused by placing the lumps of a map in the wrong order, or placing an unrelated lump between the map lumps. This will cause the game to read data from the wrong lumps, which can lead to various errors, including this one. An example of such an error occurring is Buzzards Bay Zone by A Cat, which was a submission to the January/February 2010 Official Level Design Contest.