AI Developers Rant! by Dave Mark (Intrinsic Algorithm)

Debugging Complex
Logic Systems
Brian Schwab
Game Logic Debugging
With manageable rulesets
Game Logic Debugging
With manageable rulesets
 In game state info
 Debug logging
Answers the question WHAT
Game Logic Debugging
When systems get huge…
Game Logic Debugging
When systems get huge…
 In game rules debugger
 In Editor debugging
 Tuning value debugging
Answers the question WHY
WHY is the right question
Approach a problem from all angles:
•Rule Evaluations
•Interruptions
•Rule Specifications
•Ruleset Structure
Logging a problem can only represent the full WHY
if you’ve listing each tiny little step.
AKA, the needle in the haystack.
In Game Rules Debugging
In Game Rules Debugging
 Live Data
 Sense data
 Custom info
In Game Rules Debugging
 Live Data
 Sense data
 Custom info
 Information streams
 Tested rules
 Running rules
 Complex perception data
 Animation data
 Custom info
In Game Rules Debugging
 Live Data
 Sense data
 Custom info
 Information streams





Data Stream Browser
• In game or
Tested rules
companion app
Running rules
• XML data utilization
Complex perception data
• Lots of data to throw
Animation data
to a crash reporter
Custom info
Rules Checked
Rules Execution
Rules Testing
Rules Editor
Project Tree
Rule Specification
Visual Representation
In Editor Debugging
 Content creator help; Programmery
 Syntax checking
 General “best practices” rule sets
 Advanced Search functionality
Tuning Values Visualization
 “Meta Debugging”
 Correlated values
 Cyclical tuning trends
 Tweaker usage
Questions?
[email protected]