Entity Cache

Posted Sep 9, 2014
Last Updated Sep 26, 2018

Entities are the neurons and brain of your level. Wall Worm allows you to place and modify entities inside 3ds Max as you would with Hammer. This page details how the Wall Worm Entities are generated and used.

The Entity Cache

In order to add entities to the level, you must create an entity cache. The entity cache are all of the custom attributes for the entities. These files are stored at this location (your path will be dependent on your Windows username and the version of Max you are using, which are parts highlighted in bold):

C:\Users\WindowsUser\AppData\Local\Autodesk\3dsMax\2016 - 64bit\ENU\scripts\WallWorm.com\entities

Each mod will have an entity cache in that folder:

  1. modname_entities.ms

These files store an array of available entities for point and brush entities, as well as custom attribute definitions that control the UI for each entity. If these cache files do not exist, you cannot create the relevant entities.

The entity cache system in Wall Worm is designed so that the FGD file must not be re-read every time Max is opened. Instead, the rules are saved into the cache files for later use.

Creating an Entity Cache

An entity cache is created when you add an FGD to your global settings or click the Reparse FGD button. FGD files are definitions of entities for a mod (and are the same files Hammer uses for defining entities). The easiest way to know what FGD file belongs to your mod is to use the Import function in the Global WW Settings which will set up all of your paths and get the correct FGD.

If your mod's FGD consists of more than one FGD, you need to make sure that the referenced FGDs exist in the same folder as your target FGD. For example, the TF2 mod uses the tf.fgd file which internally has a command to include another FGD:

@include "base.fgd"

This means that the TF mod requires the entity rules from base.fgd. For Wall Worm to correctly generate an entity cache for TF2, both tf.fgd and base.fgd must reside in the same folder. This is the way most mods come by default, but if setting up custom FGD directories it is important to know.

It can take the Entity Parser function several minutes to finish in the free version of WW. While reparsing, Max appears to be frozen. This is normal. WW Pro, however, will always parse in a few seconds.

  • The Entity Parser does not work in 3ds Max 2017 in the Free Version of WW due to an internal change in 3ds Max and MAXScript. If you need to use the entity functions in 3ds Max 2017, you need to upgrade to Wall Worm Pro or download and manually install the entity definitions for your mod if available (see below).

Because some Mods have malformed FGD files, and becasue WW has problems reading some files, here are a few entity definitions that you can manually extract (unzip) to your entities folder in the case of problems.

WW Entity Caches (7-17-2018)

thumbnail GoldSource Entities GoldSource Entities Entities for several Goldsource games: Half-Life, Day of Defeat, Counter-Strike and Team Fortress Classic.
thumbnail Source Entities Source Entities Entity Caches for several Source Engine games, including: Black Mesa; Counter-Strike Global Offensive; Counter-Strike Source; Left 4 Dead; Left 4 Dead 2; Portal 2; Dear Esther; Day of Defeat Source; Half-Life 2; HL2 MP; Hidden-Source; Insurgency; Day of Infamy.

Updating Entity Cache Definitions

Every now and then there are updates to Wall Worm that add features or fix bugs in the entity system. Generally this will include new buttons in the entity UIs or addressing bugs in generating entity rules.  When this is done, you need to update your entity cache manually.

You might also need up update your entity cache if the game's FGD was updated to include new entities or properties. In this case, the process done automatically if your global setting labeled Auto Parse FGD is on. If not, you need to reparse your entities manually when FGD changes occur.

To update your entity cache, you must go to your global Wall Worm Settings and click the Reparse button above the list of FGDs. The currently selected FGD will be re-read and new entity definitions will be generated and saved into the entity cache files. As mentioned above, this function can sometime take several minutes; while the Entity Parser is running, Max will appear frozen and un-responsive.

Working with Entities

Articles on working with Source Engine entities in 3ds Max.

  1. Creating Entities
  2. Entity Cache