Difference between revisions of "DebuggingCampaigns"

From The Battle for Wesnoth Wiki
(Things to check when your scenario doesn't load)
(Always backup your work)
Line 23: Line 23:
 
A recommended approach by zookeeper is to remove half your code, and try to load your add-on. If the error is gone, you know it's in the half you removed. Take whichever half has the error, and keep removing half of what remains until you isolate the error.
 
A recommended approach by zookeeper is to remove half your code, and try to load your add-on. If the error is gone, you know it's in the half you removed. Take whichever half has the error, and keep removing half of what remains until you isolate the error.
  
 
+
Always backup your work. Use DVCS so be able to revert any deleted piece and check difference. You can comment out part of WML code by "#" prefix and later back it.
  
 
== See Also: ==
 
== See Also: ==

Revision as of 00:10, 5 January 2015

"Debugging" means to fix by removing errors. Here are some ideas to help you when you are building a campaign and need to fix it.

Things to check when your scenario doesn't load

  • Do the id tags match exactly? Does the id in the caller script have the same case (lowercase/uppercase) as the scenario's id?
  • Is the ".cfg" extension appended to the script filename?
  • Is the script in the right location (usually ~add-ons/YOUR_ADDON/scenarios)
  • Is it really a scenario load problem? Maybe the main.cfg file isn't being loaded correctly.
  • Are all the linking tags spelled correctly? (first_scenario=???, next_scenario=???, id=???)
  • If you're using the template, did you remember to change all include and file paths to match your setup?
  • Is another downloaded add-on breaking your version of the game or conflicting with your content?
  • Do you have read permissions on your scripts?

Other tips

A recommended approach by zookeeper is to remove half your code, and try to load your add-on. If the error is gone, you know it's in the half you removed. Take whichever half has the error, and keep removing half of what remains until you isolate the error.

Always backup your work. Use DVCS so be able to revert any deleted piece and check difference. You can comment out part of WML code by "#" prefix and later back it.

See Also: