ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Internal Error

From ModEnc
Revision as of 01:30, 5 August 2006 by Xstax981 (talk | contribs) (List of known reasons for Internal Errors (please expand))
Jump to: navigation, search

A general error returned by the TS engine and it's derivates. The message itself doesn't say much, and can be caused by almost anything you do wrong, so it's impossible to say where exactly it came from when it hits your screen. If you get an internal error, all you can do is try to track down what changes you have made to cause it. Review your latest rules-changes and play again to see when it occurs. Make sure you always know what you have changed, the more things you change simultaneously, the harder it is to see what caused the IE. Also, just because you found a mistake and fixed it, that doesn't mean there can't be a second one that's still causing the error.

Note to advanced modders: If you encounter an Internal Error for no apparent reason, you can try asking PD to look at the except.txt / DEBUG.txt files produced by the game, they can tell him what is a likely cause of it. There are no guarantees that he will do that, though.

List of known reasons for Internal Errors (please expand)

As you will see below, most Internal Errors seem to be caused by WEAPONS and/or WARHEADS.

  1. Weapons:
  1. Typo for a weapon entry on a vehicle/infantry/aircraft/building so that it points to a non-existent weapon.
  2. A weapon that is used in a game mode but not parsed by (attached to) another unit in the main rules file.
  3. Cluster/shrapnel weapon not parsed by (attached to) another unit.
    Warheads:
  4. Missing warhead on a weapon.
  5. A warhead with CellSpread bigger than 11.
  6. Setting off a warhead with a CellSpread that is also Template:TTL.
  7. If a new Warhead is not added to the Warhead list, an IE can occur (although, apparently, not always).
    Other IE causes:
  8. An MCV becomes neutral: Mind-control of an MCV is relinquished to a defeated player (RA2/YR only). The workaround is to make MCVs unable to be mind-controlled (this is done in the YR 1.002 UMP). Neutral Construction Yards do not seem to be a problem.
  9. If a falling paratrooper (who has nearly reached the ground) is killed by an area-effect mutation weapon you will get an IE. Point based mutations seem to be okay and the GM superweapon seems incapable of killing falling paratroopers. If you have an area-effect mutation weapon then you should ensure that all paratroopers are immune to it.
  10. Template:TTL. If the AI uses a Weather Storm or Nuclear Missile superweapon and a building with HoverPad=yes exists, the game will suffer an IE. This IE can, however, be prevented by uncommenting the flag Template:TTL (change the values if you like).
  11. Omitting Template:TTL on InfDeath 9's animation (Template:TTL) can sometimes cause an internal error. See the final note on MakeInfantry for more information.
  12. Using the 'sell unit' super weapon on a Tank-Bunkered unit breaks the Tank Bunker. Attempting to sell or destroy the broken Tank Bunker causes an internal error. The moral of the story? Either don't include the 'sell unit' super weapon, or don't include the Tank Bunker (or find a way to guarantee that no player could ever have access to both 'sell unit' and the Tank Bunker at the same time).
  13. Adding a new harvester for a 4th side/faction and not making an AI Trigger for it.
  14. The modding concept known as 'Infantry Linking' (using the Template:TTL/Template:TTL tag(s)) can result in an IE occuring when a human player views an AI-owned War Factory.
    The Internal Error can be caused by setting DeploysInto/UndeploysInto on an infantry unit, and then modifying that infantry unit's entry in a subsequent override rules-set (EG: setting in rulesmd.ini and then modifying the unit in a game mode/map, or setting in a game mode and then modifying the unit in a map).
    To be 100% safe, do not use Infantry Linking.
    I can confirm that modifying such infantry in maps can also cause this IE, see here. -- DCoder
    Infantry Linking and this bug are covered in more detail in the Extras section of the UMP Developer's Pack version 7 and higher [version 7 is not yet released].
  15. If you have a buildable Construction Yard building and then cancel construction of it, an IE will occur. You cannot have buildable Construction Yards. Seems that someone managed to workaround this - http://forums.cncden.com/showpost.php?p=282732&postcount=23. Sorry if this is old
  16. If an animation is called for and is not listed in the [Animations] list then an IE can occur.
  17. Whenever you put a new voxel/shp in the tibsun.mix (or ra(md).mix) instead of putting it in a expandxx.mix (of course in the correct mix), whenever you build this unit, game will crash. I'm sure this will never occur since you put your files regularly inside expandxx.mix files. -- Sevelys.
  18. Not having any valid InfantryType with Template:TTL (set to yes by default). The game requires at least one type of infantry to start with at map load, otherwise it IEs just before the map has loaded.
  19. Setting Template:TTL (default value is -1, positive values do not cause an IE).

See also

Software used to find Internal Errors

INI Checker is a very useful program that can check your rules, art and sound ini files for typos and missing references.