I’m a newbie I7 programmer (done some I6 programming but never actually completed a game! and I’m a programmer IRL too) working on my first game, and must say that I think that I7 is absolutey genius!
Anyway, I’m having some issues with tracking things down in the documentation (but note from other’s posts that I’m not alone in this regard).
I was wondering if I7 has any debugging verbs and, if so, what are they and how do you turn them on? I’m hoping to be able to get objects no matter where they are in the game and also go directly to a location.
The documentation makes referencing to debugging in several places but doesn’t go into any details, and the only debugging command that is explicitly mentioned is ‘ACTIONS’.
The testing commands I know of are ACTIONS, RULES, SCENES, SHOWME (chapter 2.7), PURLOIN and GONEAR. The last two should be the ones you’re looking for.
In terms of documented debugging verbs, there’s also RELATIONS.
In addition, there are some undocumented ones shown in the “Tests Template” section of Appendix B, which can be found on the I7 website. Of those, I’ve found TRACE to be recently useful to me when I was trying to track down a parser disambiguation issue. It turns on parser tracing to a specified level of detail, ranging from “TRACE 0” (off) to “TRACE 6”. (Although the notes only mention levels from 0 - 5, 6 does give a slightly more detailed breakdown.)
Of the ones Nitku mentions, my all - time, indispensible, wouldn’t - understand - a - thing - without debugging verb is RULES (especially in “RULES ALL” mode) followed closely by ACTIONS.
From what I can see, debugging is active within the IDE without having to do anything special. Is this right?
If you need to compile a debug version for use outside of the IDE – if you want to test your work on another 'terp, for example – include this line:
Include (- Constant DEBUG; -) after "Definitions.i6t".
Thanks Mike, I’ll put that in in a comment just so’s I don’t forget.