Skip to content

Terminology

There are many terms, phrases, and names that are mentioned throughout these guides. Having a general idea of what most of these are is important to be able to understand many of these guides.

Assembly#

Assembly is a community-developed modification tool, with the ability to edit built cache files for most Xbox 360 and PC Halo titles.

Bitmaps#

Bitmaps commonly refer to any in-game texture or image.

BlamScript (HaloScript)#

BlamScript, sometimes referred to as HaloScript (or HSC for short), is the scripting engine used by the Halo engine. A modified implementation is planned to be available within Blamite, however with a number of significant key changes and improvements.

Cache Files#

Cache files (or .map files) are files which contain a multitude of tags within a single file. These are almost always compiled from a single scenario tag.

Developer Hub#

The Elaztek Developer Hub is a website that hosts a variety of development resources for the Blamite Game Engine, including these guides, Doxygen docs, and more.

Doxygen#

Doxygen is an open-source tool that is used to generate online documentation for the Blamite Game Engine. It pulls documentation directly from annotations within the source code of both the game engine itself, as well as its tools and other applications.

Editing Kit/HEK#

The Editing Kit for the Blamite Game Engine is analagous to the Halo Editing Kit (HEK) used within the Halo games. It refers to the collection of applications designed for developing, modifying, testing, and packaging games developed with Blamite. Currently, this includes Foundry, Guerilla, Sapien, and Tool.

Editor Themes#

Editor Themes refer to either built-in or user-created themes that are usable across the entirety of the Blamite Editing Kit.

Extensions#

Extensions refer to either official or 3rd-party C++ code (often in the form of a .dll) which are used to provide supplementary C++ code to the Blamite Game Engine. These can be used to introduce new tag classes, extend game engine functionality, or serve as a complete replacement of the scripting engine in highly performance-sensitive situations.

FontTool#

FontTool (formerly referred to as FontExtractor and FontPackager) is a tool that is used to create and modify Blamite font packages.

Foundry#

Foundry is the unified editing environment for the Blamite Game Engine. It is intended to serve as a more modern equivalent to the Legacy Editing Kit, and contains much of the same functionality as the other tools - all from a single application.

Git#

Git is a source control system used by Elaztek Studios for the Blamite Game Engine, as well as its supplementary tools. Most of this code is hosted within our self-hosted Gitlab instance, which is also open to the public.

Globals#

Globals (or engine globals) refer to global variables available within Blamite's scripting engine.

Guerilla#

Guerilla is the application used to create and modify tags and tag classes for the Blamite Game Engine. It is also capable of previewing most assets.

Guides (Engine Guides)#

The Engine Guides (sometimes referred to as simply the Guides) are a collection of hand-written guides, examples, tutorials, and reference information for using the Blamite Game Engine. If you're reading this, you're here right now!

Halo Engine#

The Halo Engine (sometimes referred to as the blam! engine) is the proprietary game engine used by nearly every game in the Halo series. It was originally created by Bungie and has its roots dating back to the Myth series. It continued to be expanded and refined, and continued to be upgraded and used by both Bungie and 343 Industries.

The fork of the engine used by Bungie was referred to as the Tiger engine, and was used for both Destiny and Destiny 2, and featured a number of significant changes making it somewhat less recognizable. The fork used by 343 Industries was not given a formal name until Halo Infinite was announced, when it was given the name of the Slipspace Engine, which more closely resembles the engine used by previous Halo games.

The Halo engine and its various forks are the primary inspiration for many design decisions within the Blamite Game Engine, however Blamite shares no code or technical lineage with these other game engines.

Jenkins#

Jenkins is the build system used by Elaztek Studios to handle automatic building and testing of the Blamite Game Engine and Engine Guides.

Legacy Editing Kit#

The Legacy Editing Kit refers to the tools within the Editing Kit which are more directly inspired by their counterparts found within the Halo engine. These tools currently include Guerilla, Sapien, and Tool.

Despite the usage of the term "Legacy", these tools are still actively maintained and developed, and provide the backbone of Foundry's codebase.

Plugins#

Plugins refer to XML files which store information for Tag Classes/Tag Definitions. These are used by some of the tools within the Editing Kit to provide a robust editing experience.

Sapien#

Sapien is the application used for real-time level editing. It is intended to provide a more interactive way to place objects within a scenario.

Scenarios#

Scenarios typically refer to in-game levels within the Blamite Game Engine, and can be thought of as the "entry point" for a level or cache file. Scenarios can be modified and tested within either Sapien or Foundry.

Stratagem#

Stratagem is a 3rd-party application for our website/forums software that provides a Trello/Kanban style board system. It is used for several of our projects, including the Blamite Game Engine.

Tags#

Tags refer to any content or asset used by the game engine. All tags can be modified using Guerilla or Foundry.

Tag Classes#

Tag Classes refer to the structure of a tag class. All tags of a given tag class will have an identical basic layout that they must follow. Some tag classes are built into the engine directly, however individual projects can also implement their own tag classes as well.

Tool#

Tool is a command-line utility used to perform a variety of functions, including asset conversion, level compilation, and more. Many Tool functions can also be performed using some of the other applications, as well as the optional Tool GUI.