TTLG|Thief|Bioshock|System Shock|Deus Ex|Mobile
Results 1 to 9 of 9

Thread: Debrief String Reference

  1. #1
    Member
    Registered: Aug 2001
    Location: Virginia, USA

    Debrief String Reference

    The string file DEBRIEF.STR in Intrface contains the information that is displayed on the "Stats" screen after a mission ends. It contains a few boilerplate strings: true, false, some, none, hour(s), minute(s), second(s). But the real work is done in a series of stat string groups. Each string group is consecutively numbered beginning from 0.

    Code:
    stat_0: "qvar"
    text_0: "Print this"
    format_0: "..."
    "Stat" is the name of the quest variable, obviously, and "text" is a string that will be displayed before the qvar value. The tricky part is "format" which determines how the value is displayed.

    Terminal format codes determine what is displayed. Only one should be used at a time and it should be the last code in the string.
    @b - boolean. Displays either "False" or "True".
    @q - quantity. Displays either "None" or "Some".
    @t - time. Displays "hh Hours mm Minutes nn Seconds"
    %d - regular number. Really just a c-style format string. I haven't tested whether all of the options of printf will work. (Probably will.)

    Codes that affect formatting are:
    @n - forced newline.
    @x - ??? I haven't figured out what this does, though it shows up in the standard debrief.str.
    @c - continue line. Don't move to the next line after printing this stat, so the next stat will be on the same line.
    @: - Displays ": "
    @/ - Displays "/"

    Value conditionals:
    @+ - positive. Only show this stat if it's not zero. It will still move to the next line unless you use "@c".
    @s - secret. If the value is zero, then hide this stat and all the rest of the stats on this line. You should only use this on a stat that starts a line.

    Mission conditionals:
    These codes are followed by exactly 2 digits. The stat will be ignored if the condition is true.
    @< - less than.
    @> - greater than.
    @= - equal to. (or, don't show on this mission)
    @! - not equal to. (or, only show on this mission)


    I checked this all out with Thief 2, but I believe the codes were unchanged since TDP. I also believe that, because of the way the format is read, that the number of characters in the string should always be even.

  2. #2
    Member
    Registered: Mar 2001
    Location: Ireland
    That's useful.
    Never really knew what I was doing while poking around in there before...

  3. #3
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Bohn Museum
    Thanks for the info, Tom.

    Quote Originally Posted by telliamed
    %d - regular number. Really just a c-style format string. I haven't tested whether all of the options of printf will work. (Probably will.)
    In the limited tinkering I did with it when working on this file for A Thief's Holiday 2004, the ones I tried did work to the best of my recollection.

  4. #4
    Member
    Registered: Jan 2000
    Location: Taylors, SC
    Thanks for the hard work! I've already saved this in my "Need to know" files for Thief. Now, what to do with it?...hmmm....
    Shadowspawn's Thief Pages
    Darkness is always faster than light. No matter how fast light travels, it always finds the dark waiting for it.

  5. #5
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Bohn Museum
    I for one plan to use it to hide irrelevant stats during camvator missions.

  6. #6
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    One thing I forgot to mention is if a qvar doesn't exist, then the entire stat is skipped it moves on to the next one.

    Which you'll see me using in my upcoming mission, where I'll have completely different stats depending on the... err, "difficulty".

  7. #7
    Member
    Registered: Apr 2011
    %x makes the next condition skip all remaining stats instead of just this line.

    i have reposted this description in the dromesday book, together with a few clarifications and some examples.

  8. #8
    Member
    Registered: Jan 2001
    Location: Constantly losing tug o'war
    Thanks for your effort!

    I've tended to use this info to remove the 'Iron beasts' stats which were not relevant to my FMs. Never took it much further but sometimes just knowing about some other thing can lead to some idea that makes great use of it.

  9. #9
    Member
    Registered: Apr 2011
    so, Hammerite Deathmatch did a conplete overhaul of the debrief screen to show the players and bots individual kills/deaths stats, which was very cool.

    in Making a Profit (which is for thief gold), i edited the debrief to show two custom qvars as a thief 2-style “Found X secrets out of Y”.

    but more creative uses are possible! a simple example: create two qvars for each food type in the mission, initially zero: “AteCarrot”, “FavCarrot”, and “AteBread”, “FavBread” and so on. increment each “AteX” qvar when the corresponding food object is consumed. at the end of the mission, compare all the “AteX” qvars, and whichever has the most, set the corresponding “FavX” to 1. Then add to the debrief a bunch of “@+@c” stats, one for each food type, that check the corresponding FavX qvar. And then your mission stats page will report Garretts favourite food!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •