Works on the Pre-11/7/2016 update. DOOMExtract is a tool that lets you extract the gameresources.resources file from DOOM 2016 (alpha, beta and pre-patched retail). It can also repack the resources file, allowing you to modify existing files, add new ones and also delete files.
Instructions:
First download DOOMExtract 1.7 and enable DevMode if you haven't yet:
8/30/17 EDIT: After being unable to figure out why the "C:\Program Files (x86)\Steam" etc path wasn't working with DOOMExtract to compile mods, I changed DOOM's install location to fix it, so edit the paths here according to your own:
Extract to:
D:\SteamLibrary\steamapps\common\DOOM\base (or wherever your game is)
Create a batch file: New text document called ANYNAME.bat to run the command to compile the mod folder and create pindex files out of it (yes, name it whatever you want). Within it, paste this:
.\DOOMExtract.exe D:\SteamLibrary\steamapps\common\DOOM\base\gameresources.index --createPatch D:\SteamLibrary\steamapps\common\DOOM\MODS
Run it. The base folder should now have 2 new files: .patch and .pindex. Those are your mods. You can also create a .bat file within that folder to automate the process (much easier).
----
See Also: Basic guide on getting started.
DOOMExtract 1.4 by infogram
DOOMExtract is a tool that lets you extract the gameresources.resources file from DOOM 2016 (alpha, beta and retail).
It can also repack the resources file, allowing you to modify existing files, add new ones and also delete files.
1.4 fixes a big issue with adding new files to resource packages - if the file you're adding doesn't already exist, and isn't in the root folder, it'll be added to the package as a new entry.. but the path separator character will use Windows' "\" instead of "/" as the game expects, meaning the game would never actually be able to access the file you've added. This has been fixed in 1.4.
Usage:
Extraction: DOOMExtract.exe [pathToIndexFile]
If destFolder isn't specified a folder will be created next to the index file.
Files with fileType != "file" will have the fileType appended to the filename.
eg. allowoverlays.decl;renderParm for fileType "renderParm"
Example: DOOMExtract.exe C:\DOOM\base\gameresources.index
will extract the resources into C:\DOOM\base\gameresources\
You should also be able to drag+drop the resources.index file into the DOOMExtract exe.
Repacking: DOOMExtract.exe [pathToIndexFile] --repack
Will repack the resources with the files in the repack folder.
Note that files that don't already exist in the resources will be added.
Files that are replaced/added won't be compressed in the resources file neither, so the filesize of it might increase a bit.
To set a new files fileType append the fileType to its filename.
eg. allowoverlays.decl;renderParm for fileType "renderParm"
Example: DOOMExtract.exe C:\DOOM\base\gameresources.index --repack C:\DOOM\mods\
will repack the resources with the files from C:\DOOM\mods\
Deleting files: DOOMExtract.exe [pathToIndexFile] --delete [file1] ...
Will delete files from the resources package. Full filepaths should be specified.
If a file isn't found in the package a warning will be given.
Example: DOOMExtract.exe C:\DOOM\base\gameresources.index --delete generated/buildgame/init.mapresources generated/buildgame/dev/mp_bigbox.mapresources
will delete generated/buildgame/init.mapresources & generated/buildgame/dev/mp_bigbox.mapresources from the resources package.
Included mods:
As an example some small mods for the closed alpha are included, these unlock extra gamemodes on MP_Bigbox and Heatwave.
Copy all the files from this zip into your DOOM/base/ folder, and run install_mods.bat to install them.
Heatwave: TDM, Bloodthirst, Clan Arena, Conveyor, Deathmatch, Freeze Tag
Note that Conveyor doesn't work properly on here as it's missing some entity. (mp/modes/conveyor/conveyor_controlpoint ?)
Domination could also be enabled on this map, but it's missing some entity so it wasn't included (idProp_Domination_ControlPoint, see mods/maps/dev/mp_bigbox.entities includes some control points as examples, someone can probably copy these to heatwave)
MP_Bigbox: TDM, Bloodthirst, Clan Arena, Conveyor, Deathmatch, Domination, Freeze Tag
Like with Heatwave, Conveyor doesn't work properly as it's missing an entity.
Domination works on this map, but might be missing some models/textures as the control points only show as black boxes.
I also tried enabling extra demons by editing the .entities files (search for availableDemonUnlocks), but when you try to use the extra demons nothing happens.
Probably missing files for them, or needs extra mods.
You're welcome to try to get them working of course :P Also if anyone can get the conveyor/domination modes to work properly too that'd be awesome.
Nice! Does it mean new non-skeletal models / textures / sounds can be added to the game?
Is it possible to create a standalone downloadable mod for DOOM using ver. 1.4 ?
You can edit the extracted files and pack them again: Reddit.com
I'll upload one.
Instructions:
Throw the "MODS" folder into the "Base" folder and use the install_mods.bat to inject it into the gameresources file. This could take anywhere from 5 to 10 minutes and will be the main source of tedium involved in modding the game as you'll have to do it every time to test changes / install a mod. It'll also slow down your computer quite a bit, and the process itself may take a little longer if you're trying to do too many other things while its working. If you can, stick to web browsing during the process. SDD may speed things up significantly.
After that's finished, the mod should be in effect as soon as you start the game and the developer message will always pop up at the main menu. As the section here hints, this is just a mod example, but I'll go over the file structure in just a bit. You'll need to create a mods folder anyway so might as well leave it there.
Do you think it would be possible to modify Snapmap? Things like no limitations, more props from the campaigns and more advanced stuff like creating 3D models and applying pre-made textures to them.
That's unlikely.
This comment is currently awaiting admin approval, join now to view.