J-R's Source SDK resources page.
Back Home
Troy : Divine Playground -> Link to TDP
Developer
Source SDK resources websites:
http://www.valve-erc.com/srcsdk/
(Official website for the Source SDK)
http://www.valve-erc.com/srcsdk/Hammer/html/Manually_Config_Hammer.html
(Manual config for Hammer)
http://www.chatbear.com/board.plm?b=4986&v=flatold&g=21
(Official forum for Source SDK, Mapping, Art&Sound, Source coding)
Important Paths & Files:
- SDK home directory : sourcesdk = "\Valve\Steam\SteamApps\UserName\sourcesdk"
- Base SDK Base/Point/Solid/Move classes values: "sourcesdk\bin\base.cfg"
- CStrike game FGD file (Base/Point/Solid/Move classes definitions): "sourcesdk\bin\cstrike.fgd"
(@include "base.fgd")
- CStrike game .ini file: "sourcesdk\bin\gamecfg.ini"
Bin Tools:
- hammer.exe : Source's level-editor. Inputs .vmf (ascii) files
- height2normal.exe : create .tga height map from input bumpscale (ex: "bumpscale”
”.02”) ,normal value and compress value.
- hlmv.exe : model viewer (physics tweaks, bones). Inputs .mdl(binary) files
- scenemanager.exe : doesn't work.
- studiomdl.exe : compile .qc model/animation/materials files into .mdl files.
- vbsp.exe : compile map into binary space partitionned format. (used in Hammer)
- vrad.exe : compile map into radiosity references (used in Hammer)
- vtex.exe : create .vmt(ascii), .vtf(binary) materials/shader files from .tga
texture (http://www.game-lab.com/?p=viewtut&id=256&l=1)
- vvis.exe : compile map into visibility index (used in Hammer)
SDK Source :
Client dll path : "src/cl_dll/"
Server dll path : "src/dlls/"
Shared definitions between Client/Server: "src/game_shared/"
SDK Entities

Common to all entities:
- In the class declaration public: DECLARE_CLASS is a class declaration defined
in networkvar.h
- In the class declaration public: DECLARE_DATADESC signify that we'll use a
data
description table in the class implementation.
- Right after the class declaration: LINK_ENTITY_TO_CLASS( hammer_classname,
class); hammer_classname is the entity name that will appear in Hammer, this
instruction link it to the class defined above.
- BEGIN_DATADESC( class ) : Start the data description for the class
- DEFINE_X's : see data
description table
- END_DATADESC() : End the data description for the class
- Client-side entities must follow thie "C_" convention (ex: class
C_MyEntity : public C_BaseEntity)
Logical Entity (CLogicalEntity) :
- This entity type has no position, no visual, its receives input from the game
map and send output according to game state. (ex: timer, run-tim logic operations)
- Must derive from CLogicalEntity wich derivates from CServerOnlyEntity (will
not transmit data to client)
- COutputEvent is a parameterless entity event, it implements void "FireOutput(
CBaseEntity *pActivator, CBaseEntity *pCaller, float fDelay = 0 )".
- Add the class definition in the mod's .FGD file.
Brush Entity :
- This entity is constructed in hammer using Brushes (static architectural
structures). Brush entities can be statics volumes (triggers, portals, wall
health), or moving entities (platform, door, button, gun target).
- Can derive from CBaseToggle wich derivates from CBaseEntity.
- Declare the function type of the entity DEFINE_ENTITYFUNC() : see data
description table
Point Entity :
- Exists only at one point in the map.
Model Entity (CBaseAnimating) :
- This entity has a visual component, can move and can be interracted with.
(ex: NPCs, Gibs, mines, crane, ammo)
- Must derive from CBaseAnimating wich derivates from CBaseEntity.
- The asset associated with this entity must be precached using the Precache()
method. Precaching
asset.
- This entity must be spawned using the Spawn() method.
- The logic sequence of an entity creation is Spawn()->Precache()->Activate()
Physic and Physic entities:

Weapon Classes (Model Entities):
Special Effects :
- Special effects are used in many differents
01/12/2004:
Second map made with Hammer.
- Terrain displacement was made using paint geometry in the displacement tool
from the Face Edit Sheet.
- The 1/16 3D Skybox was made using the entity sky_camera. There is no light_environment
added.

30/11/2004:
First map:
