Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

35 total results found

.tga File Extension (BIMAGE)

8. Reverse Engineering / File Formats File Formats

The ".tga" files used in DOOM Eternal are not targa images. They are actually "BIM" (or .bimage) files. These files are stored in two parts. The first part consists of the HEADER, MIPMAP, and NON_STREAMED_IMAGE sections. This is embedded in DOOM Eternal's .re...

textureType_t

8. Reverse Engineering / File Formats Enumerated Types

The textureType_t enum is part of the idImage class. It designates a texture as 2-dimensional, 3-dimensional, or cubic. It  can be found in .tga file headers extracted from Doom Eternal .resources files.  Definition enum textureType_t { TT_2D = 0x0, ...

textureFormat_t

8. Reverse Engineering / File Formats Enumerated Types

The textureFormat_t enum is part of the idImage class. It describes the image format / block compression type. There are 56 formats defined, but only 13 of these formats are known to be used in Doom Eternal. Definition enum textureFormat_t { FMT_NONE ...

textureMaterialKind_t

8. Reverse Engineering / File Formats Enumerated Types

The textureMaterialKind_t enum is part of the idImage class. Definition enum textureMaterialKind_t { TMK_NONE = 0x0, TMK_ALBEDO = 0x1, TMK_SPECULAR = 0x2, TMK_NORMAL = 0x3, TMK_SMOOTHNESS = 0x4, TMK_COVER = 0x5, TMK_SSSMASK = 0x6, TM...

.streamdb File Extension

8. Reverse Engineering / File Formats File Formats

.streamdb stands for stream database. The .streamdb files contain the majority of game data in DOOM Eternal.  As a general rule, any struct with _t appended to the end is an actual struct used by the game engine. Any other struct names have been created by th...

What is Kiscule?

8. Reverse Engineering / File Formats Logic Graphs (Kiscule)

Kiscule is the replacement for SuperScript from id Tech 6, it was designed originally for The Void Engine (Dishonored 2). It underwent some evolution between the merge of id Tech 6 and Void and was renamed to just "logic entities" or "logic graphs" but we'll c...

Available Operations

8. Reverse Engineering / File Formats Logic Graphs (Kiscule)

This list was dumped by listing all virtual classes with "idLogicNode" in their name, copying it and then using regex: [\s]+ 12 ([\s]+)[\r]+ AbsFloat AbsInt ActivateOnPlayerStat AddAngle AddFloat AddInt AddTime AddVec3 AISetSledMode AIStartGladiatorS...

id Tech 4.5 as a reference

8. Reverse Engineering / File Formats Reverse Engineering Notes

Doom 3 BFG is now fully open-source, and can be helpful as a reference. The source code for Doom 3 BFG is available on the id Software github here: https://github.com/id-Software/DOOM-3-BFG Doom 3 BFG Edition is a mix of id Tech 4 and 5 code. A great deal of ...

Doom 2016 Alpha contains id Studio

8. Reverse Engineering / File Formats Reverse Engineering Notes

It was discovered by an anonymous user that the Doom 2016 multiplayer alpha contained a launchable version of id Studio. Using a DLL that hooks into the binary they were able to launch it. However, many required files for it to function properly were not bundl...

Event List (Doom Eternal)

8. Reverse Engineering / File Formats Reverse Engineering Notes

This is a list of every "event" in Doom Eternal. It can be downloaded as a text file here. The list is too long to display in a wiki page: Download Event List (Doom Eternal) Note: This page was originally written by Chrispy. It was recovered from the now-del...

idMover

5. Level Modding Entities

An entity that can move around on pre-programmed paths, and also scripted to move around from timelines. Note: This page was originally written by Chrispy. It was recovered from the now-deleted idTech 7 wiki, and copied here for preservation. This information...

Format Overview

ModInjector JSON Guide assetsinfo JSON

The assetsinfo JSON format allows for advanced control over mod injector behavior. The most common uses of assetsinfo JSON include: Adding brand new textures or .decl files to the game (instead of just replacing another file) Controlling which of the game...

Reference: "resources" Array

ModInjector JSON Guide assetsinfo JSON

In DOOM Eternal, each map has a list of .resources and .streamdb files that will be loaded in the map itself. With this feature, you can tell the game to load other .resources and/or .streamdb files in maps. You can also tell the game to stop loading .resource...

Importing Custom Models

2. How to Create Mods Model Modding

Required Tools: Doom Eternal Model Importer by SamPT - DownloadConverts .OBJ format models into the .LWO format used by DOOM Eternal.Blender - DownloadOpen-source 3D modeling software. Blender is highly recommended, but other 3D-modeling software may also wo...

EternalMod JSON

ModInjector JSON Guide

This .json file allows mod makers to define information about their mods, such as mod name, author(s), description and version number. This feature is only available for zipped mods. You can not place an EternalMod JSON file at the root of your ~/Mods/ direct...