If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Gabriel Knight 3: Blood of the Sacred, Blood of the Damned

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Gabriel Knight 3: Blood of the Sacred, Blood of the Damned

Developer: Sierra On-Line
Publisher: Sierra On-Line
Platform: Windows
Released in US: November 19, 1999
Released in EU: 1999


DevMessageIcon.png This game has a hidden developer message.
DebugIcon.png This game has debugging material.
BonusIcon.png This game has hidden bonus content.


Gabriel Knight 3: Blood of the Sacred, Blood of the Damned (GK3 for short) continues the supernatural adventures of Gabriel Knight and his partner Grace Nakimura. In this episode, Gabriel and Grace investigate a high profile kidnapping in rural France. But per usual, all is not as it seems, and the duo are cast into a massive religious conspiracy involving buried treasure, vampires, bloodlines (in more than one sense), and mustaches fashioned from cat hair.

Hmmm...
To do:
There are a variety of unused graphics and audio files that can be included here...just need to take the time to upload and explain each one.

Developer Console

A simple developer console can be accessed using Ctrl+Shift+Tilde.

This console enables access to most of the unused or hidden content in the game.

Hidden Developer Messages

A large number of GK3's assets used at runtime are text-based, so there are quite a few developer comments hidden here and there throughout these files. In addition, there are some developer files that were intended to be found by users for modding purposes (though I don't know if that ever came to fruition).

Resources Readme and Docs

Typing Extract("", "") into the developer console and pressing Enter causes a file called !!!README.TXT to be generated in the game's executable directory. The readme file has this message:

------------------------------------------------------------------------------
    GABRIEL KNIGHT 3
    Resources Readme
------------------------------------------------------------------------------

GK3 is a data-driven game, meaning that very little of it is hard coded,
requiring changes to the EXE. The majority of its scenes are completely run
by scripts and configuration files. For the player, this means that much of
GK3 can be customized or even rewritten... Interested?

We never exactly planned to officially release any of this stuff to the
public, given time, money, and sanity constraints. So most the docs you are
about to read are in many cases unfinished, out of date, outright lies, or
perhaps written by somebody's fourth grade son. So experiment at will! GK3 is
not going to reformat your hard drive or give your dog the flu. The worst that
will happen is the game will lock up. No big deal, happens to us in development
all the time. :)

Given that you can read this file, you've already figured out the Extract()
command. Use this command to find these other key GK3 documents:

  ClothesAnm.doc              DataUsage.doc
  Footstep.doc                GAS.doc
  GK3 Fonts.doc               NVC.doc
  Official Eggs.doc           Persistence.doc
  Registry Spec.txt           Sheep Engine.doc
  SIF.doc                     Sound Track Files.doc
  TimeBlockBible.doc

The .brn files that you see on the CD's and installed on your hard drive are
"barn" files - spindled and mutilated resources packed into large volumes for
efficiency. There are over 27000 resources as of this writing, which you'll
find in gk3.log (created during your Extract("","") call). You can extract
those files out and modify them if you like. Or you can add your own. To get
GK3 to use them, you must tell it where they are, and that they are of higher
priority than the barn resources so they will override. To do this, add a
"Custom Paths" entry to your INI file or registry. See the "Registry Spec.txt"
file to find out how to do this.

Enjoy!

------------------------------------------------------------------------------
         
Scott Bilas
GK3 Technical Lead

------------------------------------------------------------------------------

A file gk3.log is also written to the executable directory, and it contains a list of all assets used in the game. These assets can be extracted using the Extract command. Some of these assets are not used in the final game!

The Extract console command can also be used to extract the documents in the above message, which are internal developer documentation created during the game's development. The amount of documentation is pretty massive, so I won't copy/paste it here, but here's a quick summary of each:

  • ClothesAnm.doc: an explanation of how character clothing changes occur depending on the timeblock the game is currently in
  • DataUsage.doc: an explanation, seemingly meant for non-programmers, explaining how to create new scenes in GK3
  • Footstep.doc: an explanation of the footstep audio system in GK3
  • GAS.doc: an explanation of the Gabriel Knight Auto-Scripting (GAS) system, used to drive NPC animations at various times
  • GK3 Fonts.doc: an explanation of the Font system in GK3
  • NVC.doc: an explanation of the Noun/Verb/Case system, which is used to drive the adventure game logic in the game
  • Official Eggs.doc: a summary of easter eggs present in the game
  • Persistence.doc: an explanation of how save games work and are implemented in GK3
  • Registry Spec.txt: an explanation of all registry keys that can be set for GK3
  • Sheep Engine.doc: much of GK3 is implemented in a custom scripting language called Sheep. This doc explains most of the commands that can be used. Many of these can be used in the developer console to change game behavior.
  • SIF.doc: an explanation of the Scene Init File format, which is used to create new scenes in GK3
  • Sound Track Files.doc: an explanation of how ambient music works in GK3
  • TimeBlockBible.doc: essentially a walkthrough; explains what tasks to do to progress through the game

Director Notes

It's unclear who the "director" is, but there is a file called DIRECTOR.NOTES.TXT that is never used by the actual game:

Director Notes:

These are notes needed for special custom, manual manipulation of specific ANM files. Hopefully this list does not get too big...

1. Combined dialogue ANM files E174AY0W5ZK.ANM and E174Y0W5ZL.ANM. In this scenario, Mosely speaks ever Gabe's line 35 frames into Gabe's dialogue. Offset 5ZL 6 frames into 5ZK and don't forget to mix the texture information.

Debugging Material

Several interesting debugging tools/features can be extracted from the game's assets.

Debug Build

An entire debug build of the game is bundled in the game's assets. Use the Extract method to extract "GK3R.EXE".

This version of the game is fully functional, but has some key differences:

  • A full developer console can be accessed simply by pressing the Tilde key. This console has many more features than the one in the release version of the game. The release console is still available through the usual method.
  • The CD checks performed by the release game are disabled.
  • The Tab key opens "Construction Mode," which is a fairly simple built-in level editor. It is capable of visualization several scene elements (pathfinding walker map, light locations, named positions, etc), but not very useful for actually editing the level significantly.
  • Some loading icons and debug numbers are occasionally visible onscreen.

Resource Viewer

A fairly complex resource viewer application is included in the game's bundled assets. Use the Extract method to extract "VIEWER.EXE", "VIEWER.INI", and "VIEWER_RESOURCES.ZIP".

This tool appears to be a mostly functional asset conditioning/building environment. For example, it has the ability to load scenes, display BSP data, display model data, bake lighting, etc. Pretty cool!

Video Player

A video player called "BINKPLAY.EXE" is included in the game's bundled assets. This seems to have been primarily meant for playing Bink video files during development. These days, VLC or similar video players can also play these files.

Bonus Content

A few interesting bits of content that you can only access with the developer console.

Easter Eggs

Activate the developer console (Ctrl+Shift+Tilde), input the command SetFlag("EGG"), and hit Enter. There is no immediate confirmation that this does anything, but it actually enables a variety of easter eggs throughout the game. These easter eggs can be accessed via the verb chooser.

For example, if you perform the above command and click on Jean in the Lobby area, one of the verb chooser icons will be an Easter Egg. Selecting this causes Jean to perform a backflip.

Clown Shoes

Activate the developer console (Ctrl+Shift+Tilde), input the command ClownShoes("ACTOR_NAME"), and hit Enter. "ACTOR_NAME" can be "Gabriel", "Grace", "Jean" - or pretty much any other character in the game. This command causes the character to have clown shoes, which make goofy noises as you walk around.