Code:
/////////////////////////////
/////Version 1.4 Updates/////
/////////////////////////////
**Updated Files Since Last Version**
- Replaced 'FreezeTag locations all maps' pdf & doc. with an updated versions in my (Shadow) folder.
- Ultimate Mapping Guide updated to newest version, from AccadaccA
- Replaced all documents in the 'GitHub MOHAATools' folder from HTML to DOCX.
- Added a HTML version of 'Client Admin Rights & Binary Flags' in '$or' his folder.
- Added 2 newer versions of LightRay 3D (V1.4.1 & V1.5 Beta) to the Tools folder (and organized it a bit more).
**New Tutorials/Documents**
- Added 2 Lists to the 'Shadow' folder:
- MOHAA Map List
- Custom Sky Textures
- Added 7 Tutorials to the 'Chrissstrahl' folder:
- MOHAA Scripting Advice
- MOHAA Co-Op Mod Scripting
- FPS Information
- BSP-Level based game Engines
- BSP-Level Geometry
- File Types Tutorial
- Bounding Box Tutorial
- Added 3 Tutorials to the '$or' folder:
- Client Admin Rights & Binary Flags
- MOHAA Script Framework (includes pk3)
- Additional Admin Variables (includes pk3)
- Added 2 Tutorial Videos to the 'Elgan' folder:
- Lightray animating a shark for MOHAA part 1 (skeleton)
- Lightray animating a shark for MOHAA part 2 (animation and tik)
- Added 11 Tutorials to the '.MAP Tutorials' folder:
- Patch mesh roads (by Bjarne Grönnevik)
- VIS_Leafgroups Hands-On Tutorial (by Bjarne Grönnevik)
- Objective - Bombing Stuff (by mohaa_rox)
- Objective - Bombing Tanks (by mohaa_rox)
- Creating a Triggerable Multiplayer Flak88 (by Bjarne Grönnevik)
- Basic Compiling (SH) (by Surgeon)
- Multiple Multiplayer Objectives (by Bjarne Grönnevik)
- Making Films with MOHAA (by Bjarne Grönnevik)
- Making an Elevator (by Steelie-NS)
- Barking Dogs (by Wacko)
- A complete mapping tutorial (by Andy)
- Added 1 Document to the 'AccadaccA' folder:
- Map Mate Info
- Added 2 Documents to the 'VonderCrunch' folder:
- Radiant Tips
- Custom Sound Info
- Added 1 Tutorial to the 'Appelpitje' folder:
- MOHAA on MAC
- Added 1 List to the 'Paul Jaquays' folder:
- Resources/Links List (Use WayBackMachine)
- Added 1 Manual to the 'Scorpio Midget' folder:
- MOHAA Tools V1.6b Information (+ Software)
- Added 1 Document to the 'GitHub MOHAATools' folder:
- HUD Scripting Reference
- Added a 'Swagel' folder and included:
- OpenSCR (software & documentation)
- Added a 'Mike Martin' folder and included:
- Quake 3 Smoothness Guide
- Added a 'Reborn' folder and included 8 Tutorials/Informative Lists:
- admini.ini Editor (software) + documentation
- Reborn Patch Documentation
- Reborn Console Messages
- Reborn Files & Limits
- Reborn RCON Commands
- Reborn Installation Guide
- New EventSystem Engine Documentation
- New Scripting Commands Documentation
- Added a 'Zappa' folder and included 4 Tutorials:
- Velocity and Speed
- Sublime Text 3 Installation Guide
- SCR File Association Fix Windows 10
- Try, Catch and Throw Exception Handling
- Added a 'TheShadow' folder and included 2 lists:
- OBJ Map List (Complete)
- DM Map List (Incomplete)
- Added a 'Hubas' folder and included:
- EasyGen Tutorial + Software
- Added a 'Andrew Palmer' folder and included:
- Blender Quake BSP Importer (Tutorial + software)
- Added a 'Joel Anderson' folder and included:
- View Space Linking, Solid Node Compressions and Binary Space
Partitioning for Visibility Determination in 3D walk-throughs
- Added a 'Gary Simmons (Mr.Gamemaker)' folder and included:
- BSP Tutorial (Part 1 & 2)
- Added a 'Kenneth Finney' folder and included:
- 3D Game Programming All In One
- Added a 'J.M.P. van Waveren' folder and included:
- Quake 3 Arena Bot Thesis Paper (2001)
- Added a 'RyBack' folder and included:
- NightFall Documentation
- Added a 'F.A.K.K. 2' folder and included the following documentation:
- AI
- Camera Documentation
- Client Side Commands
- Commands
- Coordinate System
- CVAR DOCUMENTATION
- Description of Menus and Ingame Utils
- Dialog System
- Dumping Demo AVI
- Event Spec Documentation
- FAKK FAQ
- Ghost Particle System
- Gibs
- GUI Documentation
- How to Make Weapons and Ammo
- Inventory System Commands
- Items
- MAX2SKL Reference Guide
- Radiant Commands
- Shader Manual New
- Sound System
- TIKI Model System
- TIKI QuakeEd Specs
- Added a 'Quake' Folder filled with 23 Forum Posts & Tutorials for Quake 3 (same engine as MOHAA) (see Table of Contents for list)
- Added a 'AAAA' Folder and included 15 useful Forum Posts (see Table of Contents for list)
- Added a 'xNULL' Folder and included 107 useful Forum Posts (see Table of Contents for list)
**New Files/Tools Added**
- Added 'LightRay 3D' versions V1.4.1 and V1.5 Beta.
- Added 'mohaa_source_maps.zip' to the Tools folder with all the .map files of the stock MOHAA maps.
- Added 'MOHAA_RECORDER_1.1.zip' to the Tools folder, to be able to record demos in-game.
- Added 'admin.ini Editor' to the 'Reborn' folder, to use with the Reborn Patch.
- Added 'EasyGen' to the 'Hubas' folder.
- Added 'MOHAA Tools V1.6b' to the 'Scorpio Midget' folder (includes BSP Viewer & PK3 Viewer).
- Added 'Blender Quake BSP Importer' to the 'Andrew Palmer' folder.
- Added 'OpenSCR' to the 'Swagel' folder, to be able to easily open SCR files.
- Added 'MOHAA Script Framework' to the '$or' folder.
**New Misc. Tools Added**
//A new 'Misc. Tools' folder has been made with various tools that could prove to be useful//
- Added a 'Bots' folder with several useful files related to Bots (AI).
- Added a 'BSP Compiler - Will Fowler' folder that includes a BSP compiler with several other files & HTML info pages.
- Added a 'BattleZone Creator' folder with several related files included.
- Added several other BSP converters/editors/compilers
- Added MOHpile
- Added New MBuilder
- Added RMAPC
- Added Autocoord
- Added Showbox
- Added Spawn Creator
- Added EzModder/EzSpawner
- Added Player Position Info V2
- Added Showbox
- Added Huddraw 3D Utility
- Added Huddraw Helper Script
- Added Fog Maker Script
- Added FAKK 2 Tools & Map Source Files
- Added Mod Managers
- Added Menu Editor
- Added Script Editor
- Added TIK Editor
- Added URC Editor
- Added MOHAA Player Skeleton.RAY
- Added Mefy Locations Creator (Maps Description Maker)
/////////////////////////////
/////Version 1.3 Updates/////
/////////////////////////////
- Added an 'AccadaccA' folder with 1 guide included ('Ultimate Mapping Guide').
- Added a 'Blazin' folder with 1 tutorial included ('Adding objects to maps').
- Added a 'FoxTrot' folder with 1 tutorial included ('ascii tutorial').
- Added a 'GitHub MOHTools' folder with 4 lists included:
- MOHAA Scripting Reference
- Q3 .map structure
- Shaders
- Textures
- Added a 'Joshua Muheim' folder with 6 Milkshape tutorials included.
- Added a 'Kalahad' folder with a Tank Tutorial included.
- Added a 'Manstein' folder with 2 tutorials included:
- Style Guide Vol.1: Bunkers
- Style Guide Vol.2: Houses
- Added a 'Mefy' folder with 1 tutorial included ('Mefys Gametype Addon Tutorial').
- Added a 'Paul Jaquays' folder with 2 manuals included:
- GtkRadiant Editor Manual
- Q3Radiant Editor Manual
- Added a 'RazoRapid' folder with 1 list included ('CGM Buffer List').
- Added a 'Scorpio Midget' folder with 1 list included ('MOHAA Unwrapped').
- Added a 'Shadow' folder with 13 lists included:
- The Ultimate Compile Errors List
- Abbreviations List
- Cheat Commands List (To defend against)
- Cheat Skins List (To defend against)
- Freeze-Tag Locations for V2 Rocket Facility
- Freeze-Tag Locations for all maps
- MOHAA Voice Taunts
- MOHSH Voice Taunts
- MOHAA Keys
- Player Model List
- Reborn CVARs
- Server CVARs
- Unnamedsoldier CVARs & Bind List
- Added a 'SkulpingNipple[NL]' folder with 1 tutorial & software included ('Put your own fonts ingame' & 'fontgen').
- Added a 'Thomas McGuire' folder with 1 guide included ('MOHAA Tweak Guide').
- Added a 'Trinisica' folder with 4 guides included:
- HDRI Luminance
- Polymodeling
- Shaders
- Virtual Studio Setup
- Added a 'Walthoughs & Game Guides' folder with 12 documents included:
- Allied Assault - Strategy Guide (in German)
- Allied Assault - HUD Guide
- Allied Assault - Walkthrough
- Allied Assault - Walkthrough A
- Allied Assault - Walkthrough B
- Allied Assault - Walkthrough C
- Allied Assault - Weapons Guide
- Allied Assault - Walkthrough Dutch
- Spearhead - Walkthrough
- Spearhead - Rifle Guide
- Spearhead - Weapons Guide
- Breakthrough - Walkthrough
- Added a 'Wizzler[NL]' folder with 1 document included ('mohaa reborn rights').
- Added a 'Plugins.zip' file with Milkshape & Radiant plugins included for MOHAA.
- Added 8 new saved pages from ModTheater to the 'HTM Pages' folder within the 'ModTheater Tuts' folder:
- Latest News on MOHAA Model Plugins
- Modeling Tutorials
- MOH, PK3 Analysis
- MOHAA Model Skeletons (How they work) (2 pages)
- MOHAA Unwrapped! Debugging, Menus, Commands and Variables
- SKL_2_SKX.exe information (2 pages)
- Tut for Mike's Torso
- Tutorial: Putting New Guns In-Game by Godsmack
- Added 6 new saved pages from ModTheater to the 'Coords' folder within the 'ModTheater Tuts' folder:
- Coord Question
- Help placing objects on maps (viewpos)
- How do mohaa coords work
- Maps seem much bigger
- Spawn object (2 pages)
- Whereami
- Added 1 Tutorial to the 'Other' folder ('Get rid of mysterious light leaks').
- Added 1 Tutorial to the 'Chrissstrahl' folder ('Modify a BSP 3DGame Level').
- Added 1 Guide to the 'CrowKing' folder ('Admin Guide').
- Added 2 Tutorials to the 'Nemesis' folder:
- Making an Avatar
- Skinning
Code:
• $or
o $or’s Scripting Tutorial
Introduction
Vital Knowledge
How to use Pakscape/winrar
Opening Script Files
Closer look at the files
Let’s take a look at a script
First Results
• Tips
• Order
o Additional Admin Variables
o Bot Scripting
Introduction
Method 1 – Spawnflags
• Usage
o Set up the trigger
o Setting up the setthread
• Commands
o Cannot
o Can
Method 2 – Botscript Method
• Setup in Botscript
• Setup in Mapscript
o Setup botscript trigger properties
o Setup setthread
o Stopping attraction
o Known working commands
o Examples and Important notes
General Scripting Tips
• Switching Teams
o Switch triggerteam
o Making it work
• Objective Campnodes
• Disabling Spawnpoints
• Setting Botproperties
Defining bots (No Trigger)
Source
References
o Client Admin Rights & Binary Flags
Binary Number System
Binary Flags
AND
o MOHAA Script Framework
Concretely
Usage
• Include System
• Classes & Enums
Future
• .MAP Tutorials
o A Complete Mapping Tutorial
Overview
Installation
• Game Installation
• Editor Installation
Tour of the Interface
• Views
• Zoom
• Pan
• Selecting Objects
• Moving an Object
• Rotating an Object
• Camera View
• Textures View
• Grids
Creating a Simple Level
• Creating Geometry that Bounds the Level
• Moving Edges
• Using CSG Hollow
• Texturing Surfaces
• Sky Texture
• Adding a Player Start Position
• Creating Weapons
• Creating Breakable Crates
• Lighting the Scene
• Compiling the Level
o Compiling from MOHRadiant
o Compiling Manually
• Play Testing a Level
• Debugging
Improving the Level
• Creating a Building
• Creating a Rotating Door
• Window Opening
• Creating the Window
• Roof
• Gable
• Arches
• Distorting Brushes to Create Rounded Geometry
• Clipping an Object
• Creating Patches
Summary
o A Guide to MoH Radiant Interface
Layout
Buttons
The “Camera”
The Menus
o Adding Custom Sounds
o Adding Objectives
o Advanced Compiling
Compiling from the command line
Compiling Options
• BSP Stage
• VIS Stage
• Light Stage
o Advanced Texturing
Texture Manipulation: Normal Brushes / Faces
Texture Manipulation: Patch Meshes
Texture Manipulation: Cylinders
Other tricks and conclusion
o AI Alarms
Getting Started
Scripting
How it works
o AI Cabinet Guys
The Map
The Scripting
o AI MG42 Gunner & Spotter
Setting up enemy machinegunners
Adding Spotters
More MG42s
Some more about the mg42_active.scr
o AI Patrolling
How to place Enemy AI
How to make a patrol route
How to script a patrol route
o AI Spawning Enemy
o AI Tips (Spearhead)
Pathnode Flags
AI Parameters
Leash
Enemy Selection
How AI Initially See An Enemy
Making AI Look Smart
o AI Tutorial (Spearhead)
Rendezvousing with your allied soldiers
Your first enemy encounter and destroying the Flak88
Setting up an MG-42 gunner and making 2 enemies jump out of a truck
o Ambient Sounds & Music
Ambient Sounds
Music
Final Notes
Corrections to global\ambient.scr
Personal Note from Innkeeper
o Animated Shutters
Normal Movement
Slam the Shutters
o Arches and Curves
Foreword
Arches
o Barking Dogs
Mapping
Scripting
Adjusting The Script
o Basic Camera
Fixed Camera
Moving Camera
o Basic Compiling
Configuring MBuilder
Compiling with MBuilder
o Basic Compiling (SH)
Configuring Mbuilder
Compiling with MBuilder
o Basic Lighting
o Basic LOD Terrain
o Basic PK3 Creation
o Basic Scripting for DM Maps
o Basic Texturing
o Blowing up that Multiplayer Objective
Making a bomb
A trigger for that bomb
Something to blow up
Explosion radius
A chain reaction explosion FX
Debris from the explosion
Leftovers after the explosion
Some scripting in your .scr file
o Bombing Sound Fix
o Breakable Windows
o Brush Manipulation
The Clipper Tool
Edge Editing
Vertex Editing
o Creating a triggerable multiplayer Flak88
Create a Flak 88
Give it a trigger
Fire the gun
Blow up the spot where it hits
Think about extending this
• Fire sound
• Aiming the Flak88
• Reloading the Flak88
• Fully automatic Flak88
• Player controlled Flak88
• Hunt players with a Flak88
• Flying Flak88
Can I do this only by scripting?
o Decal Tutorial (Spearhead)
o Doors
Sliding Doors
Rotating Doors
o Driving Tutorial 1 (Spearhead)
Driving a Tank
The Script File
o Editing Guide
o Exploder Script
o Fans
Creating the Fan
Scripting the Fan
o Firing Nebelwerfers
o First Room
o Giving the Player some weapons
o Installing MoH Radiant
o Ladders
o Liberation
Spawnpoint
Jail Cell Door
Jail Door Opening Angles
Alarm
Switches & Triggers
Cinematics
Scripting
Testing
o Light Beams
Creating the Textures
The Room with Light
The Beam Itself
o Lockable Doors
o Making an Elevator
o Making films with MOHAA
Getting MOHAA into a video format
Useful console commands
How to get rid of ‘Press fire to join’ message when in spectator mode
Removing the Avatars
A script
Useful links
o Model Maps
o Mountable Jeep
o Multiple Multiplayer Objectives
o Objective – Assassination
o Objective – Bombing Stuff
o Objective – Bombing Tanks
o Objective - SP Undercover (Part 1)
o Objective - SP Undercover (Part 2)
o Objective - Stealing Documents
o Objective - Stealing Objects
o Patch Mesh Roads
A word on the grid before we start
The 90⁰ turn
Step 1: Creating a patch mesh
Step 2: Texturing the patch mesh
Step 3: Laying the road
Step 4: Bending the road
Step 5: Adjustments
• 5a: Fattening the bend
• 5b: Fixing the stretched texture
A final note
o Rain
Working on the Map
The Map’s Script File
The Map’s .pk3 File
o Scripted Exploders
o Setting up Objectives
Exploder Script
o Single player maps without 'test_' prefix
Animation Files
Working around the new_generic_human.tik
Dialogue Animations
o Snow
Working on the Map
The Map’s Script File
o Spotlights linked to MG42's
o Steal objects in objective multiplayer
An object to steal
A trigger to steal that object
Some scripting in your .scr file
o Sunlight & Skies
o Texture Keywords
Usage of texture
Material types
Level Reference
o Triggerable Farplane
o Ubsersound Work-Around
Ubersound and uberdialog
Multiplayer Maps
Singleplayer Maps
Final Notes
o VIS_Leafgroup Hands-On Tutorial
The basics
The fine print
How to do it
Good ideas
o Vehicles Moving
o Volume Damage
Setting up the trigger
How to define the values you want
Barbed Wire
o Water
The Room and Pool
The Water
o Work Environment
Directory Structure
MoH Radiant
Desktop Folder
The .pk3 File
The Distribution File
The Batch File
Get to Work
o Worldspawn key values
• AAAA (Forum Posts)
o A lot of mapping woes
o Blowing up Doors
o Compile leaves scorch marks
o Compiling Map Problem (Black Marks)
o Corona Edit
o Deformvertexes Explained
o Detail Brushes
o Disappearing Doors
o Excessive VIS Data Size on Source Map
o Freeze-Tag Player Kills & Deaths HUD
o Making Static Objects Solid
o Proper Precache Problems
o The Deal with Rotating Doors
o TOW Objectives
o Trigger Mustard Gas in SH
• AccadaccA
o Map Mate Info
o Ultimate Mapping Guide
Introduction
• What You’ll Need
• Setting Up
o Map Mate
o Radiant
First Steps
• The Skybox
o Brushes
o Size doesn’t matter
o Ambient light
o Entities
o Texturing
• A Quick Compile
• The Next Step
• Post Production
General Knowledge
• General Brush Work
o Bending a brush
o Caulk
o Creating a brush
o Cutting a brush
o Duplicating Brushes
o Duplicating Entities
o Moving a brush
o Resizing a brush
o Rotating a brush
o Texturing a brush
o Using the Clipper tool in general
o Brush joins and mitre cuts
o Adding the top brush
o Adding the bottom brush
o A column of boxes/crates
o A row of boxes/crates
• Map Diet (Reduce Size/Weight)
• Dimensions & Limitations
o Typical object sizes/dimensions
o Ratio
o Barrels
o The Player
o Ladders
o Shelter
o Textures
o Walls
o Windows
o Wooden Crates
o Mapping Limitations
• Radiant Hotkeys
o File Menu
o Edit Menu
o View Menu
o Select Menu
o Grid Menu
o Texture Menu
o Misc Menu
o Brush Menu
o Curve Menu
o Commands not on the Menu
• Terms & Words
• Tips & Tricks
o Custom Textures
o Dummy (Temporary) Brushes
o General Mapping
o Grills, grates, ladders or picket fences
o Map Layout
o Models
o Rotating
o Stairs
o Testing
o Textures
o Windows
o Windows & Doors
Animation
• Animated Textures
o Texture Animation via Shader
o Texture Animation via Script
• Deform Vertexes
o deformVertexes explained
o Specific parameter definitions for deform keywords
o Waveform Functions
• Elevate Objects
o Elevator call button
o A quick and easy method
o Alternative elevator method
o More levels (floors)
o A more complex method
o Single unbound cage type door
o Double unbound cage type doors
o Binding elevator doors
• Moving Objects
• Rotate or Swing
• Ripples & Waves
Entities
• The Entity Window
• Barrels
o Metal Barrels
o Open Metal Barrels
o Closed Metal Barrels
o Wooden Barrels
o Liquid Filled Barrels
• Breakable Crates
• Doors
o Doorways
o Locked
o Revolving
o Rotating
Drawing the door
Basic Rotating Door
Door Entities
Automatic Closing
Disable auto-closing
Double Doors
Opening & Closing (default) Sounds
Opening & Closing (custom) Sounds
Opening Direction (always away)
Opening Direction (angles)
Limit how far the door opens
Problem Doors
Opening door at specified angles & directions
Rotate via Script
o Sliding
o Lock & Unlock
• Ladders
o Basic Ladder
o Less Common Ladder
• Info_*Entities
o Info_camp
o Info_notnull
o Info_null
o Info_player_deathmatch
o Info_player_intermission
o Info_player_start
• Lights
o Directional (spot) Lighting
o Flashing Beacons
o General Lighting
o Shading & Shadows
o Switch On/Off
• Models
o Lightray 3D
Preparing MOH Models
Bones: Create, Assign, Delete
Model Editing (Basics)
Error Alerts
Select From List
Material / Textures
UV Mapping
Add To Model
Remove From Model
o Model Placement
o Model Skinning (Re-Texturing)
• Spawn Points
• Teleportation
• Triggers
• Windows
o Fake (non-transparent) Windows
o Blocked Access of Broken Window
o Breakable, Transparent Windows
o Blocking Windows
o Duplicating Windows
o Turning around Corners
Errors
• Compile Errors
• Game Errors
• Map Errors
• Troubleshooting Shaders
• Other Issues
• Warnings
Misc.
• Bending a Brush
• Bot Navigation Files
o Introduction
o Description
o Installation
o Usage
o Switches
o Updating the Entity Lump
o Leaks
o Useful Map Information
o Map Boundaries
o Game Physics
o Step Heights
o Normal Jumps
o Water Jump Heights
o Rocket Jumps
o Math for Map Makers
o Optimizing a Map for bspc Compiling
o Entities & the Navigation File
o Func_plat and Func_bobbing
o Cluster Portals
o “Do Not Enter” Areas
o Bot Control Entities
o Item_botroam
o “Notbot” Means “Don’t Touch”
o Info_Camp
o Suspended
o Testing .AAS files
o Solid Areas
o Test Solid
o The Culprits: What May Cause Map Bugs
o Hacking Away the Problem
o Testing Jump and Launch Pads
• CSG Subtract
• Terrain
o Create from Brush
o Save to Image
o Load from Image
o Additional Info
• VIS
o What is VIS?
o Do I need VIS?
o The bottom line
o Is it possible to over-do the VIS?
o Myths about VIS
o Applying VIS leaf groups and targets
o Removing a VIS target
• Water
• Change File Association
Patches
• Arches
o Gothic Arch
o Bridge Type Arch
o Roman Arch
o Finalizing the Arch
• Basic Mesh
o Texturing
o Body & Shape
o Bend Mode
o Join patches together
o Joining pipes
o Some notes about the dirt road
• Cylinders
o To make a barrel
o Barrel lid
o Open barrel
o Bending a Cylinder
Roofs
• Basic Gable
• Hip
• L Shaped
• T Shaped
• Final Notes
Scripting
• Script Files
• Shader Files
o Surfaceparm
o Keyword
o Stage Specific Keywords
o Blend Functions
o Editor Specific Shader Instructions
• Ubersound
Sound
• Ambient
• Localized Effects
o Door locked
o Other localized sound effects
o For Allied Assault maps
o For Spearhead or Breakthrough maps
o Alternative localized sound effects
o Soundparms explained
o Audio channel descriptions
o Ubersound
• Music
Textures
• Clip
• Common
• Custom
o Creating New Textures
o Tools Needed
o Setting up Files
o Rules and Guidelines
• General
o Adding textures
o Applying textures
o Basic knowledge for newbies
o Fitting the texture
o Mirror a texture
o Flip a texture
o Rotate a texture
o Being anal with texture alignment
o Using a dummy brush to align textures
• Loading Screen
• Transparency
Weather
• Dust
• Fog
o Calculating how much farplane to apply
o Ambient Fog
o Trigger able Fog
• Lightning
• Rain
o An opened sky map
o A typical map
o Puddles
o More indoor stuff
o Rain related sounds
• Snow
• Sun
o Sun entity keys & values
o Ambientlight
o Farplane
o Suncolor
o Sundirection
o Sunflare
o Sunlight
o Sundiffuse
o Scale
o Adjusting the sun direction and angle
Compiling a Map
• Compile Processes
• Log Files
Making the pk3 file
• Andrew Palmer
o Blender Quake BSP Importer
Intro
Installation
Usage
• Scale
• Create Materials
• Remove Hidden
• Brightness Adjust
• Worldspawn Only
• Create Lights
• Create Cameras
• Create Entities
• Import All
Collections
View Settings
• Appelpitje
o MOHAA on MAC
Portingkit
Get MOHAA on your MAC
Running the game
o Spearhead Linux Server
Intro
Getting Started
Software Needed
Using Putty to connect to the server
Installing Packages
Uploading MOH to the VPS
Installing the binaries and run a MOH Server
• ARMDUDE
o Basic Skinning Tutorial
Intro
Getting Started
Opening Directories
The Example
Getting into the Game
Saving as PK3
• Axion
o Custom Loading Bar
Grabbing Source Material
Editing Magic
Putting it all together in a .pk3
o Custom Textures
Choosing and prepping the texture
Creating a shader for your texture
An explanation of the file system/Putting it all together
o Destroying a wall through a gas barrel explosion
o Opening a door through a switch
• Balr14
o Gensurf Tutorial
Installing Gensurf
Creating a bitmap image
Creating the map
Vertice Manipulation 1
Vertice Manipulation 2
Vertice Manipulation 3
• Ben Munroe
o Getting started with Basic Scripting
Setting up MOHRadiant
Maps
Using .tik model files in your map
Singleplayer Specific
Multiplayer Specific
• Blazing
o Adding objects to maps
• Bobzilla
o Spearhead Mapping Tutorial – Basics
Basics to MOHRadiant
Lights
Spawn Points
The Basic Room
How to test a map
How to make a sky
LoD Terrain
To make odd shapes
To make more than 4 sided brushes
o Spearhead Mapping Tutorial – Beginning Help
Setting up MOHRadiant
Setting up MBuilder
o Spearhead Mapping Tutorial – Do’s and Don’ts
o Spearhead Mapping Tutorial – Keywords
• Capt. Kick Your Ass
o How to make a custom scope
• Cheech (German)
o AI Cardgame (SinglePlayer)
o AI Hammer 1 (SinglePlayer)
o AI Hammer 2 (SinglePlayer)
o AI Lean on Table (SinglePlayer)
o AI Moving a Crate (SinglePlayer)
o AI Patrol & Patrol Path (SinglePlayer)
o AI Spawning System (SinglePlayer)
o AI Wall Scientist 1 (SinglePlayer)
o AI Wall Scientist 2 (SinglePlayer)
o AI Welding (SinglePlayer)
o AI Wrenching (SinglePlayer)
o Air Attack (SinglePlayer & MultiPlayer)
o Allied - Squad (SinglePlayer)
o Driving a Panzer Tank (SinglePlayer)
o Enemy Driving a Panzer Tank (SinglePlayer)
o Gasmask (SinglePlayer)
o Jeep Ride with MG (SinglePlayer)
o Combined Objectives (Multiplayer)
o Objectives - Flak 88 (Multiplayer)
o Objectives - Naxos (Multiplayer)
o Objectives - Stealing the Documents (Multiplayer)
o Objectives - Blow up a Tank (Multiplayer)
o Rocket Launching (Singleplayer & Multiplayer)
o Roof Hatch (Singleplayer & Multiplayer)
o Shooting down an Airplane (Singleplayer & Multiplayer)
o Sliding Door (Singleplayer & Multiplayer)
o Truck Ride with Cargo (Singleplayer)
o Truck Ride with enemies (Singleplayer)
o Variable fog density and fog color (Singleplayer & Multiplayer)
o AI Commands & Navigation (Singleplayer)
o Proportions (Singleplayer & Multiplayer)
o Scripting Introduction
• Chrissstrahl
o Bounding-Box Tutorial
o BSP-Level Based Game Engines
The Perfect Level
Adding Detail to ‘The Perfect Level’
Entities
“Structural-Brushes”
Compiling
Overview
Rendering
• AREA-Portal
On Grid
Document Status
Additional Literature
FAQ
o BSP-Level Geometry
Introduction
Geometry 1
Geometry 2
Possible Valid Geometry
Not Valid and Bad Geometry
o File Types Tutorial
o FPS Information
o Modifying a BSP File
Introduction
Usability
Tools
Name allias for BSP files
Where to find a BSP
Editing Rules
Edit an Entity
Edit a Texture
Transformable Entities
o MOHAA Co-Op Mod Scripting
Variables
Spawnlocations
Functions
Implementation
Replacement
Gametypes
Players
o MOHAA Scripting Advice
Variables
CVARs
Entities
Main
Brackets
Using Header and Quotes
Indenting
Type Casting
NULL and NIL
No local strings
Use the SDK Documentation
Ask and learn from others
Do not use GOTO
Entity Flags
Each Frame
Use variables over event calls
Naming
Wait for player
Wait for warmup time
Loops
Switches
Self
Parm
Threads
External Threads
Return Values
Waitexec and waitthread
• Clan of Honor
o Getting started with mapping
• Cobra {SFX}
o An Open Truck that Drives around a Path
o Animating a Crane made from Brushes
o Converting Single Player Maps to Multiplayer
o MOHAA Map Script Prefab
o Moving Destroyable Tank
o Strafing Stuka
o Weapon Bones and Attaching Extras
• Craig De La Haye (Bodybagger)
o Model Guide
Bush
Corona
Decor
Equipment
Farm
Flags
Food
Furniture
Item
Items
Lamp
Miscobj
Obstacle
Rock
Signpost
Static
Tree
Uboat
o Texture Guide
Algiers
Barracks
Barrel
Bind
Blasted
Brest
Central_Europe
Central_Europe_Winter
Clock
Common
Das_Boot
Ddaydark
Decals
Effects
Flags
French
Gametext
General_industrial
German
Hud
Interior
Interior_northafrica
Jon
Light
Misc_Outside
Mohcommon
MohMenu – Briefing
MohMenu
MohTest
Normandy
Norway
Objectives
Sky
Special
Sprites – Expl.
Sprites
Tempsign
Test
Weather
Wilderness
Window
• CrowKing
o Admin Guide
Getting a Server Up and Running
• Setting Up the Server
• The Server Command Line
• The Server Configuration File
• Adding Mods and Maps to the Server
Running a Server
• Console
• Setting Passwords
• Loading Maps
• Kicking Players
• Speaking to Players Through Console
o How to write a mod for MOHAA
Introduction
Mods and Modding
How MoHAA Works
Working with Pak Files Part I
Your First Mod
Working with Pak Files Part II
The TIKI Modeling System
TIK Files Part I: Structure
TIK Files Part II: Setup
TIK Files Part III: Init
TIK Files: Init Intermission
TIK Files Part IV: Intro to Animations
Animations Part I: Point of View
Animations Part II: First Person
Animations Part III: Third Person
Animations Part IV: Non Player
Animations Part V: Particle Effects
• Sprites
• Emitters
TIK Files Part V: Weapon TIKs
• Weapontype
• Name
• Firedelay
• Value
• Bulletdamage
• Bulletrange
• Bulletspread/ Firespreadmult / Viewkick
• Projectile tiks
• Explosions
• Grenades
• Alternate Attacks
• File Names
• Multiplayer
TIK Files Part VI: Modding Considerations
• TIK Keywords
• Map Considerations
• File Organization
TIK Files Part VII: Explosions and Effects
The State Machine Part I: What is it?
The State Machine Part II: Upper Torso
• Format
• Precedence
o Movetype
o Action
• Manual of Arms: Point of View
o Viewmodelanim <animation><number>
Tools of the Trade
Resources
Particle Effects
Weapon Properties
o Installing Mods
What is a Mod?
How do Mods Work?
Installing a Mod
Troubleshooting Mods
• Cubus
o Modeling for MoH with Lightray 3D
3DMax or Cognate Programs
LR3D
• DarkAngel
o Export Weapon Tutorial (for MS3D)
• DeathPool
o MOHAA In A Bagel
Basic Room (Video)
Curved Road (Video)
Curves (Video)
Simple AI Scripts (Video)
Simple AI (Video)
Terrain (Video)
Textures (Video)
• Dogbreath
o The Basics
o Brushes
o A Room
o Textures
o Doors
o Windows
o Outside
o Making a PK3 File
The .SCR File
The .SHADER File
The .URC File
o Ladders
o Rain and Barrels
o Shutters
o Machine Guns (MG42)
o Custom Textures
o Lighting up your map
o Curved Road
• Dries Vanmeert
o Installing MOHRadiant
o Installing MBuilder
o First Room
o Lights
o Textures
o Doors
o Player Start
o Outside Box (Sky)
o Make script for map
o Make Spawnpoint for ALLIES & AXIS
o Shootable Flak 88 (Advanced)
o Working Lightswitch (Advanced)
o Working Fan
• ElectricSaiyan
o UVMapping in Milkshape 3D
• Elgan
o Lightray animating a shark for MOHAA part 1 (skeleton) (VIDEO)
o Lightray animating a shark for MOHAA part 2 (animation and tik) (VIDEO)
o State Summary
o Syntax Summary
• Erick
o Elevator Tutorial
Elevator
2 Floor Elevator
Beyond the Basics
• Eutectic
o Brush Clipping in SinEd
Introduction
Background
The basic concept behind brush clipping
How to use 2-point brush clipping in SinEd
Clipping Brushed using horizontal planes
Clipping brushes using angled planes
• Eyreronik
o Compile Errors
o FAQ
o Mapping – Compiling
o Mapping – First Room
o Mapping – Getting Started
• F.A.K.K. 2 (Documentation)
o AI
1) General Overview
• Conditionals (code)
• Behaviors (code)
• State machine (text file)
• Scripting (text file)
• Stimuli
2) How to extend AI from code
3) How to extend AI from script
4) Pathnodes & Pathfinding
5) Steering
6) AI console commands
7) Current behaviours
• General behaviours
• Utility behaviours
• Behaviours for specific creatures
8) Future Plans
o Camera Documentation
To spawn a camera from script
Switching between cameras
Other useful scripting commands for cinematics
The in-game camera system utilizes the following commands
Script commands for the camera
o Client Side Commands
Overview
Example
Client Animation Commands
Client Initialization Commands
Paramters for Spawning Stuff
Beam Specific Parameters
o Commands
Client Game
AI/Routing/Actor stuff
Client
Game Module
Server
Sound
Network
Renderer
Input System
User Interface
File System
General / Common
Video System
o Coordinate System
Overview
Translation
Rotation
o CVAR DOCUMENTATION
o Description of Menus and Ingame Utils
Utilities
Menus
o Dialog System
Babble System
Lip Syncing
o Dumping Demo AVI
Before
For each demo
After each demo
o Event Spec Documentation
General
Event Formatting
o FAKK FAQ
Overview
Particle Systems (Ghost)
Renderer
UI
Func_Fulcrum
In-Game Camera System
In-Game Sound System
Portal Skies
Adjusting and setting the far clipping plane from script and the editor
Adding lensflares to objects from script
Making an entity static, ie part of the world geometry a.k.a. misc_model
Fullbright bits and how they work
Lighting preview in the editor
o Ghost Particle System
Overview
Example
Emitters
Controlling Emitters
Sprites
Testemitter
o Gibs
Spawngib
Attachmodel
o GUI Documentation
Layout Commands
o How to Make Weapons and Ammo
Server INIT General Weapon Commands
Server INIT Commands used for Projectile Weapon Models
Server INIT Commands used for Bullet Weapon Model
Server INIT Commands used for Projectile Models
Server Animation Commands for Weapon Models
INIT Commands for Explosion Models
INIT Commands for Ammo Models
Addition of States to the Player Statefile
Player Animation Commands for Weapons
o Inventory System Commands
Overview
Script Commands
o Items
Items in General
Health Items
o MAX2SKL Reference Guide
Overview
File Formats
SKB Files
SKA Files
Tags
Command Line Options
o Radiant Commands
Key Assignments
Camera Button Assignments
XY/XZ/YZ Button Assignments
Texture Button Assignments
o Quake 3 Arena: Shader Manual with FAKK2 Additions
1) Introduction
• Shader File Location
• Shader and Texture Names
• Shader Keywords
• More Advanced Shader Concepts
o Surface Effects, Content Effects, and Deformation Effects
o Power Has a Price
o RGB Colour
o Normalization: a Scale of 0 to 1
o Colour Math
o Measurements
o Waveform Functions
o Waveform Properties
• A Basic Shader
o The Basic Shader Expanded
• A More Advanced Shader
2) General Shader Keywords
• Cull
• DeformVertexes
• endif
• entityMergable
• fogonly
• fogparms
• if
• light
• nomipmaps
• nopicmip
• force32bit
• polygonOffset
• portal
• portalsky
• skyParms
• sort
• spriteGen
• spirteScale
• tessSize
3) Q3MAP Specific Shader Keywords
• Q3map_backshader
• Q3map_flare
• Q3map_globaltexture
• Q3map_lightimage
• Q3map_lightsubdivide
• Q3map_sun
• Q3map_surfaceLight
• Subdivisions
• surfaceAngle
• surfaceColor
• surfaceDensity
• surfaceLight
• surfaceparm
o alphashadow
o areaportal
o cameraclip
o detail
o fog
o ladder
o lava
o monsterclip
o nodamage
o nodraw
o nodrop
o noimpact
o nolightmap
o nomarks
o nosteps
o nonsolid
o origin
o playerclip
o ricochet
o sky
o slick
o slime
o structural
o trans
o water
• Surface Types
4) Editor Instructions
• Qer_editorimage
• Qer_nocarve
• Qer_trans
5) Stage Specific Keywords
• alphaFunc
• alphaGen
• animMap
• BlendFunc
o Source Blend
o Destination Blend
o Doing the Math: The Final Results
o Default Blend Function
o Technical Information/Limitations Regarding Blend Models
o blendFunc Example 1
o blendFunc Example 2
o blendFunc Example 3
• ClampTexCoords
o Proper Allignment
o Avoiding Distortion
• depthFunc
• depthWrite
• detail
• map, clampmap
o $lightmap
o $whiteimage
• Nextbundle
• noDepthTest
• rgbGen
• tcGen, texgen
• tcMod
6) Script Shader Manipulation
• Script Commands
o Sound System
Adding a looping sound
Adding a sound
Sound0.txt
o TIKI Model System
The TAN File
General Guidelines
The TIK File
TGA Files
Utilities
Testing TIKI Models
Older testing commands
o TIKI QuakeEd Specs
• FoxTrot
o Ascii Tutorial
• Gary Simmons (Mr. Gamemaker)
o Binary Space Partitioning (BSP) Tutorial Part I
Introduction
What is a BSP Tree?
How do they Work
Making a Solid Tree
Solid BSP Tree? What’s the Difference?
Other Benefits of a Solid BSP Tree
A Slight Diversion – Setting up the Geometry for our BSP Demo
Setting up the Polygons ready for Compilation
Let’s Build a BSP Compiler Function
How do we Choose the Best Splitter
What is the Balance of a Tree?
The BuildBSPTree Function
Splitting a Polygon with a Plane
We have a BSP Tree but how do we Render it?
Line of Sight and Collision Detection
o Binary Space Partitioning (BSP) Tutorial Part II
Introduction
• What is a LEAF BSP Tree?
• What is a “SOLID LEAF BSP Tree”?
• Rendering the Tree with a PVS and Z-Buffer
• Zero Run Length What?
• Creating a Solid Leaf BSP Compiler
• Memory Allocation
• Memory and Speed Considerations
Coding the Solid Leaf BSP Tree Compiler
• Globals
The ‘BuildBSPTree Function’: The Heart of the Compiler
BuildBSPTree Function
The ‘Select Best Splitter’ Function
IncreaseNumberOf….?
ClassifyPolygon Changes from Part I
Split Polygon
We have Compiled Solid Leaf BSP Tree. What’s Next?
Rendering a Leaf (A detailed look at the ‘DrawTree’ function)
Creating a PVS for the Solid Leaf Tree
• What is a Portal?
Portal Generation
• Building a Portal
• Creating the Initial Portal at Each Node
The ‘Clip Portal’ Function (Pretty Scary)
• Support Function: RemovePortalFromList & CheckDuplicatePortal
We have the Portals. Can we calculate our PVS now please?
What the hell is an Anti-Penumbra. Is it Uncle Penumbra’s Wife?
• Creating an Anti-Penumbra
A Few Last Things Before We Code
The ‘CalculatePVS’ Function
The ‘RecursePVS’ Function
The ‘ClipToAntiPenumbra’ Function
Compressing the PVS using ‘Zero Run Length Encoding’
WOW! We Have Finished Our PVS Calculator
Frustum Culling Axis Aligned Bounding Boxes
• Extracting the Frustum Planes
• Culling the AABB’s From the Frustum
Saving and Loading the Compiled BSP Tree
I do not want to use a Zuffer. I want to use the BSP Tree for Back to Front Sorting
Illegal Geometry
WorldGen LE (World Editor Package)
• General_DisArray
o Liberation Tutorial
Spawnpoint
Jail Cell Door
Jail Door Opening Angles
Alarm
Switches and Triggers
Cinematics
Scripting
Testing
• GitHub MOHTools
o HUD Scripting Reference
Description
Commands Summary
o MOHAA Scripting Reference
Syntax Summary
Automatically Started Scripts
Threads
• Methods of creation of threads
Predefined Object References
Selft_object
Switch (selection) statement
If (conditional) statement
Arithmetic Binary Operators
While statement
For statement
Vectors (Coordinates)
Targetname Operator $
Variables
Arrays
Automatic casting
Accessing characters of a string
o Q3 .map Structure
A Simple Map
• Structure
• Entity definition
• Brush definition
o Shaders
In-Game Surface Types
o Textures
Usage of Texture
Material Types
Level Reference
• Hobbs
o How to create a scope (using PSP)
o Nade Tutorial (using PSP)
• Hubas
o Terrain making with EasyGen
Setup
Creating the mesh
Creating the Alpamap
Exporting
• J.M.P. van Waveren
o The Quake 3 Arena Bot – Thesis
Abstract
Acknowledgements
1. Introduction
• 1.1 Quake 3 Arena
• 1.2 Artificial Player
• 1.3 Cognitive Model
• 1.4 Domain Knowledge
• 1.5 Knowledge Acquisition
• 1.6 Bot Behaviour
• 1.7 Perfect Simulation vs. Enjoyable Opponent
• 1.8 Generic vs. Map Specific Knowledge
• 1.9 Overview
2. Requirements
3. Background
• 3.1 Robots
• 3.2 Path Finding
• 3.3 Finite State Machine
• 3.4 Fuzzy Logic
• 3.5 Neural Networks
• 3.6 Expert Systems
• 3.7 Generic Algorithms
4. Related Work
• 4.1 FPS Games & AI
• 4.2 Previous Work
o 4.2.1 Omicron Bot
o 4.2.2 Gladiator Bot
5. Bot Architecture
• 5.1 Layered Architecture
• 5.2 Information Flow
• 5.3 Structure of Game Engine
6. Area Awareness System
• 6.1 AAS
• 6.2 Creating Areas
• 6.3 Environment Sampling
• 6.4 Reachability
• 6.5 Routing
• 6.6 Entities
7. Basic Actions
• 7.1 Human and Bot Input Interface
• 7.2 Actions
8. Bot Characters
• 8.1 Characters
• 8.2 Characteristics
9. Bot Decisions & Preferences
• 9.1 Fuzzy Logic
• 9.2 Representation
• 9.3 Preferences
• 9.4 Genetic Selection
10. Bot Chats
• 10.1 Communication with Text
• 10.2 Interpreting Text Sentences
• 10.3 Initiating Chats and Eliza Chats
• 10.4 Chat Reasoning
11. Bot Goals
• 11.1 In-Game Goals
• 11.2 Short Term Goals
• 11.3 Long Term Goals
12. Bot Navigation
• 12.1 Moving towards a Goal
• 12.2 Moving in a Direction
13. Bot Fighting
• 13.1 Acquiring an Enemy
• 13.2 Using Weapons
• 13.3 Movement
14. Obstacles and Puzzles
• 14.1 Obstacles
• 14.2 Solving Puzzles
15. AI Network
• 15.1 The Network
• 15.2 The Nodes
16. Bot Commands
• 16.1 Interpreting Chat Messages
• 16.2 Commands
• 16.3 Questions
17. Team AI
• 17.1 Individual Team AI
• 17.2 Team Leader
18. Implementation & Tests
• 18.1 Implementation
• 18.2 Bot Characters
• 18.3 AAS & Maps
• 18.4 AAS Visualisation
19. Conclusion
• 19.1 Bots
• 19.2 AAS
• 19.3 Future Directions
20. References
• 20.1 Books and Articles
• 20.2 Websites
• 20.3 Previous Work
A. Quake 3 Arena
• A.1 Getting About
• A.3 Environmental Hazards
• A.4 Structural Systems
• A.5 Weapons
• A.6 Items & Powerups
• A.7 Deathmatch
• A.8 Teamplay
• A.9 Capture the Flag
B. Bots
C. Terms & Abbreviations
• JCBDigger
o How to play Co-Op
What is Co-Op play?
What do I need?
How do I install files?
What do I do now it’s installed?
I want to run the server, what do I do?
I am going to be one of the clients, what do I do?
FAQ
o How to get Co-Op to work
What is Co-Op play?
What needs to be done?
Which version of MOHAA will I need?
What files do I need to modify?
How do I get characters to fire back?
How do I get sound to work?
What do I need to change in the .scr file?
How do I find individual characters or objects in an existing map?
How do I reference an individual character in my script?
How do I reference the players in my script?
How do I display messages on the players screen?
Why do I get ‘Need Localisation’ errors in the console?
Where do I put my code?
How can I make the levels easier to start?
Can I use DM Maps for Co-Op?
o MOHAA Scripting
Scripts
Entities
Basic Syntax
Predefined object references
Vectors
Examples
List of Useful Items
Model Actions
Random
Detect a Null or Uninitialized Variable
Arrays
Cast Variables
Console String to Integer
Join Integer to a string
Print Text
How to get a lift/elevator to work
Example Script Files
Types of Attack
Weapon Names
Loadout.scr
$player
$world
Setting parameters
Getting parameters
While()
If()
• Jeff Lee
o Face Skinning Tutorial
Materials Needed
Getting the Image
Setting up your Template
The Side of the Head
The Front of the Head
Using the Skin File
Creating the PK3 File
FAQ
• Joel Anderson
o View Space Linking, Solid Node Compressions and Binary Space Partitioning for Visiblity Determination in 3D walk-throughs
1) Introduction
• Background of the Study
• The Significance of the Study
• Purpose of the Study
• Research Questions
• Definition of Terms
2) Literature Review
• Graphics Performance Techniques
• Similar Studies
3) Quake Engines
• Quake 1
• GLQuake and Quake 2
• Quake 3
4) BSP Tree Implementation
• General BSP Tree
• BB BSP Trees
• PVS BSP Trees
5) Materials and Methods
• Target Market
• Design and Procedure
• Software Used
• Data Analysis
• Limitations
6) Implementation Specifics
• Compilation
• Runtime
7) View Space Linking
• Link Generation
• Rendering VSL
• Other
8) Solid Node Compression
• Tree Compression
• Tree Traversal
9) Hardware Occlusion Culling
• The Queues
• Frame-to-Frame Coherency
10) Combining View Space Linking, Solid Node Compressions and Hardware Occlusion Culling
• Traversal
• Collision Detection
• Occlusion
11) Findings
• Polygons Rendered
• Performance
• Other points of interest
12) Conclusion – The Future
13) Reference List
A) List of Abbreviations
B) Quake Clone BSP Engines
C) Algorithms
• Portals
• Quadtrees/Octrees
• KD-trees
• Zero Run Length Encoding
D) Compiler Sample Code (C++)
• Class Properties
• Polygon Classification
• Polygon Intersection
• Computing the Plane
• Determining if a Polygon is Small
• Plane Spanning Polygon
• Split
• Trim
• Portal Generation
• Zero Run Length Encoding
• Link Generation
• Mark Leaf
• PVS Generation
• Solid Node Compression
E) Engine Sample Code (D)
• Class Properties
• View Frustum Culling
• Collision Detection
• Marked BB BSP tree Traversal
• Render Linked BSP tree
• Mark Small Containers
• Solid Node Compression
• Occlusion Culling
F) Examples
• General BSP tree Compilation
• General BSP tree at Runtime
• BB BSP tree Compilation
• Runtime BB BSP tree
• Solid BSP tree Compilation
• Portal Creation
• Anti-penumbra Portal Culling
G) Using the demo
• The Compiler
• The Engine
H) Definition of Terms
Glossary
• Joshua Muheim
o Milkshape Tutorial #5 – Knee to Foot
o Milkshape Tutorial #6 – Upper Body
o Milkshape Tutorial #9 – Animation Basics
o Milkshape Tutorial #10 – Skeleton With Bones
o Milkshape Tutorial #11 – Assign Mesh to Bones
o Milkshape Tutorial #12 – Animating a Walk Cycle
• Judge
o Adding Gas and a Gasmask
• Jv_map
o Thread Viewer
o Multiplayer Bots Manual
1 Introduction
• 1.1 Preface
• 1.2 Bots Compatibility
• 1.3 Under Construction
2 Console Commands
• 2.1 Add Bots
• 2.2 Kick Bots
• 2.3 Shutdown
• 2.4 Restart
• 2.5 Status
• 2.6 Skill Level
• 2.7 Team Avatars
• 2.8 Force Models
• 2.9 Bot Name Prefix
• 2.10 Script Loop Delay
• 2.11 Disallow Bots
• 2.12 Read-Only Variables
3 Bots In Your Maps
• 3.1 Adding Bot Spawn Points
• 3.2 Creating Spawn Templates
4 Pathnodes
• 4.1 Navigation Nodes
• 4.2 Cover Nodes
• 4.3 Debugging Nodes
o 4.3.1 Debug Tools
o 4.3.2 Erroneous Nodes
o 4.3.3 Run-Time Errors
5 Bombs
• 5.1 Introduction
• 5.2 Insert a Bomb
• 5.3 Bots and Bombs
o 5.3.1 Plant Node
o 5.3.2 Defenders
o 5.3.3 Making Bots Look Smart
o 5.3.4 Script File
6 Machineguns
• 6.1 Setting up the Turret
o 6.1.1 The Weapon
o 6.1.2 Navigation Info
o 6.1.3 Gun Trigger
• 6.2 Spotters
• 6.3 Turret Options
o 6.3.1 Gunner Info
o 6.3.2 Fire in Bursts
o 6.3.3 Accuracy
o 6.3.4 Reloading
7 Special Locations
• 7.1 Sniper Nodes
• 7.2 Camper Nodes
8 Routes
• 8.1 Route Nodes
• 8.2 Routelists
• 8.3 Special Actions
o 8.3.1 Ladders
9 Finishing Bots
• 9.1 Script File
• 9.2 Known Bug
• 9.3 Releasing Your Map
o 9.3.1 Future Bot Paks
10 Advanced Bot Setup
• 10.1 Task Priorities
• 10.2 Weapon Priorities
• 10.3 Timelimit
• 10.4 Roundstart
• 10.5 Disabling Console Support
o Bot Changelog
o Bots FAQ
• Kalahad
o Tank Tutorial
Make a Room
Make a Tank
Make a Path for the Tank
Collision Mask
Trigger
Scripting
The Sounds
• Kalti
o Rocking of a Boat
• Kenneth Finney
o 3D Game Programming All In One
1) Introduction to 3D Game Development
• The Computer Game Industry
o 3D Game Genres and Styles
o Game Platforms
o Game Developer Roles
o Publishing Your Game
• Elements of a 3D Game
o Game Engine
o Scripts
o Graphical User Interface
o Models
o Textures
o Sound
o Music
o Support Infrastructure
• The Torque Game Engine
o Descriptions
o Using Torque in This Book
o Moving Right Along
2) Introduction to Programming
• UltraEdit-32
o Program Setup and Configuration
o Setting Up Projects and Files
o Search and Replace
o Find in Files
o Grep
o Bookmarks
o Macros
o UltraEdit Review
• Controlling Computers with Programs
• Programming Concepts
o How to Create and Run the Example Programs
o Hello World
o Expressions
o Variables
o Operators
o Loops
o Functions
o Conditional Expressions
o Branching
o Debugging and Problem Solving
o Best Practices
• Moving Right Along
3) 3D Programming Concepts
• 3D Concepts
o Coordinate Systems
o 3D Models
o 3D Shapes
• Displaying 3D Models
o Transformation
o Rendering
o Scene Graphs
o 3D Audio
• 3D Programming
o Programmed Translation
o Programmed Rotation
o Programmed Scaling
o Programmed Animation
o 3D Audio
• Moving Right Along
4) Game Programming
• Torque Script
o Strings
o Objects
o DataBlocks
• Game Structure
• Server versus Client Design Issues
• Common Functionality
• Preparation
• Root Main
• Control Main
• Initialization
• Client
• Server
• Player
• Running Emaga4
• Moving Right Along
5) Game Play
• The Changes
o Folders
o Modules
• Control Modules
o Control/main.cs
• Client Control Modules
o Control/client/client.cs
o Control/client/interfaces/menuscreen.gui
o Control/client/interfaces/playerinterface.gui
o Control/client/interfaces/splashscreen.gui
o Control/client/misc/screens.cs
o Control/client/misc/presetkeys.cs
• Server Control Modules
o Control/server/server.cs
o Control/server/players/player.cs
o Control/server/weapons/weapon.cs
o Control/server/weapons/crossbow.cs
o Control/server/misc/item.cs
• Running Emaga5
• Moving Right Along
6) Network
• Direct Messaging
o CommandToServer
o CommandToClient
o Direct Messaging Wrap-Up
• Triggers
o Area Triggers
o Animation Triggers
o Weapon State Triggers
o Player Event Control Triggers
• GameConnection Messages
o What GameConnection Messages Do
o Specifics
• Finding Servers
o Code Changes
o New Modules
• Dedicated Server
o Root Main Module
o Control—Main Module
o Control—Initialize Module
• Testing Emaga6
• Moving Right Along
7) Common Scripts
• Game Initialization
• Selected Common Server Modules
o The Server Module
o The Message Module
o The MissionLoad Module
o The MissionDownload Module
o The ClientConnection Module
o The Game Module
• Selected Common Code Client Modules
o The Canvas Module
o The Mission Module
o The MissionDownload Module
o The Message Module
• A Final Word
• Moving Right Along
8) Introduction to Textures
• Using Textures
• Paint Shop Pro
o Installing Paint Shop Pro
o Getting Started
o Working with Files
o Paint Shop Pro Features
• Moving Right Along
9) Skins
• UV Unwrapping
• The Skin Creation Process
• Making a Soup Can Skin
o The Soup Can Skinning Procedure
o Testing the Soup Can Skin
• Making a Vehicle Skin
o The Dune Buggy Diversion
o Testing the Runabout Skin
• Making a Player Skin
o The Head and Neck
o Hair and Hands
o The Clothes
o Trying It on for Size
• Moving Right Along
10) Creating GUI Elements
• Controls
o GuiChunkedBitmapCtrl
o GuiControl
o GuiTextCtrl
o GuiButtonCtrl
o GuiCheckBoxCtrl
o GuiScrollCtrl
o GuiTextListCtrl
o GuiTextEditCtrl
• The Torque GUI Editor
o The Cook’s Tour of the Editor
• Moving Right Along
11) Structural Material Textures
• Sources
o Photography
o Original Work
• Scaling Issues
• Tiling
• Texture Types
o Irregular
o Rough
o Pebbled
o Woodgrain
o Smooth
o Patterned
o Fabric
o Metallic
o Reflective
o Plastic
• Moving Right Along
12) Terrains
• Terrains Explained
o Terrain Characteristics
o Terrain Data
• Terrain Modeling
o Height Maps
o Terrain Cover
o Tiling
• Creating Terrains
o The Height-Map Method
o Applying Terrain Cover
• Moving Right Along
13) Introduction to Modeling with MilkShape
• MilkShape 3D
o Installing MilkShape 3D
o The MilkShape 3D GUI
o Navigating in Views
o View Scale and Orientation
o The Soup Can Revisited
o Menus
o The Toolbox
o The Preferences Dialog Box
• UVMapper
o The File Menu
o The Edit Menu
o The Help Menu
o UV Mapping
• Moving Right Along
14) Making a Character Model
• Modeling Techniques
o Shape Primitives
o Incremental Polygon Construction
o Axial Extrusion
o Arbitrary Extrustion
o Topographical Shape Mapping
o Hybrids
• The Base Hero Model
o The Head
o The Torso
o Matching the Head to the Torso
o The Legs
o Integrating the Legs to the Torso
o The Arms
o Integrating the Arms to the Torso
• The Hero Skin
• Character Animation
o Animating Characters in Torque
o Building the Skeletin
o Rigging: Attaching the Skeleton
o Exporting the Model for Torque
• The Torque DTS Exporter for MilkShape
o The Torque Game Engins (DTS) Exporer Dialogue Box
o Special Materials
o Animation Sequences
• Moving Right Along
15) Making a Vehicle Model
• The Vehicle Model
o The Sketch
o The Model
• The Wheels
• Testing Your Runabout
• Moving Right Along
16) Making Weapons and Items
• The Health Kit
o The Model
o Testing the Health Kit
• A Rock
o Testing the Rock
• Trees
o The Solid Tree
o Testing the Solid Tree
o The Billboard Tree
o Testing the Billboard Tree
• The Tommy Gun
o Making the Model
o Skinning the Tommy Gun
o Testing the Tommy Gun
o The Tommy Gun Script
• Moving Right Along
17) Making Structures
• Installing QuArK
o Using the Installer
o Configuration
• Quick Start
• Building Bridges
• Building a House
• Moving Right Along
18) Making the Game World Environment
• Skyboxes
o Creating the Skybox Images
o Adjusting for Perspective
• The Sky Mission Object
• Cloud Layers
o Cloud Specifications
o Cloud Textures
• Fog
• Storms
o Setting Up Sound
o Storm Materials
o Lightning
o Rain
o A Perfect Storm
• Water Blocks
• Terraforming
• Moving Right Along
19) Creating and Programming Sound
• Audacity
o Installing Audacity
o Using Audacity
o Audacity Reference
• OpenAL
• Audio Profiles and Data Blocks
o Audio Descriptions
o Trying it Out
• Koob
• Moving Right Along
20) Game Sound and Music
• Player Sound
o Footsteps
o Utterances
• Weapon Sounds
• Vehicle Sounds
• Environmental Sounds
• Interface Sounds
• Music
• Moving Right Along
21) Creating the Game Mission
• Game Design
o Requirements
o Constraints
o Koob
• Torque Mission Editor
o World Editor
o Terrain Editor
o Terrain Terraform Editor
o Terrain Texture Editor
o Mission Area Editor
• Building the World
o Particles
o The Terrain
o Items and Structures
• Moving Right Along
22) The Game Server
• The Player-Character
o Player Spawning
o Vehicle Mounting
o The Model
o Server Code
• Vehicle
o Model
o Datablock
• Triggering Events
o Creating Triggers
o Scoring
• Moving Right Along
23) The Game Client
• Client Interfaces
o MenuScreen Interface
o SoloPlay Interface
o Host Interface
o FindServer Interface
o Chatbox Interface
o MessageBox Interface
• Client Code
o MenuScreen Interface Code
o SoloPlay Interface Code
o Host Interface Code
o FindServer Interface Code
o Chatbox Interface Code
o MessageBox Interface Code
• Game Cycling
• Final Change
• Moving Right Along
24) The End Game
• Testing
o Basics
o Regression
o Play Testing
o Test Harnesses
• Hosted Servers
• Dedicated Servers
• FPS Game Ideas
• Other Genres
• Modifying and Extending Torque
• Go For It
A) The Torque Game Engine Reference
• Torque Console Script Command Reference
• Torque Reference Tables
B) Game Development Resources on the Internet
• Torque-Related Web Sites
• Game Development Web Sites
C) Game Development Tool Reference
• Shareware and Freeware Tools
o Modeling
o Image Editing
o Programming Editing
o Audio Editing
• Retail Tools
• GNU General Public License
D) QuArK Reference
• The Map Editor
• Configuration Utility
o General
o Map
• Map2dif Reference
• List of Commands, CVARS & Settings
o Game Module Classes
o CVAR & CMD List
o CVAR Documentation
o CVAR List
o MOHAA SDK
o MOHAA Commands & Variables
Concepts
• File Locations
Command List
• Sorted by Usage
• Unsorted List
RCON
CVARS
• Notes
Entities
PAK File Contents
Map file names
• Magna Carta
o Gear Adding Tutorial
o In-Game Head Guide
o Skinning Guide
Introduction
Skin Composition
Finding the basis for a skin
Making the skin
Editing the skin
Adding Equipment
Problem Shooting
• Manstein
o Style Guide Vol. I: Bunkers
o Style Guide Vol. II: Houses
• Manuals
o CK Autokick
Requirements
Installation
What is Autokick?
What’s New
Server Setup
Server Statistics
Server Commands
Console
Player List
Quick Settings
Status Bar
Announcements
Tolerances
Settings
Assistance/Questions
Known Bugs
o Dedicated Server Setup
Launching a Dedicated MOHAA Server
Server Time Out
FAQ
o Delator
Delator 2.0 & 3.0 Help File
o MOHAA Counter Intelligence
What’s New
System Requirements
Program Installation
Getting Started
Preparing to run the program
Configuring CI
Configuring Remote CI
Disconnecting Remote CI
Assigning CI UDP ports
Enabling MAM Script Interface
Selecting Default Skins of the Day
Outgoing Messages
CI Status
Printing Player Info
Running CI
Sending Messages
Sending Commands
Execute Configuration Files
MAM Script Commands (Server)
Manipulating Players
Multi Player Commands
Other Features
Tools
How the skin scan works
Match Watch
Multi Server Support
Using Remote
Contacting Programmer
Startup Problems
o MOHAAC
MOHAAC Ban List
MOHAAC Playback Config
MOHAAC Documentation
o Scapp
GsProtector Documentation
ProMod Documentation
Scapp-host Documentation
Scapp-rcon builder Documentation
Scapp-watchdog Documentation
• Mefy
o Mefys Gametype Addon Tutorial
• Mike Martin
o Quake 3 Smoothness Guide
• Milkshape 3D Team
o Milkshape 3D Help Guide
Introduction
Using Milkshape 3D
• Fundamentals
• Viewport Controls
• Menus
• Toolbox
• Keyframer
Essential Windows and Panels
• Model Statistics Window
• Texture Coordinate Window
• Message Panel
• Viewport Caption Panel
• Preferences Window
• About Window
Examples
• Extruding Faces
• Extruding Edges
• Turn Edge
• Grouping
• Applying a Texture
• Applying an Alphamap
• Reverse Vertex Order
Tutorials
• Beginners Guide
• Animation Tutorial
• Setting up the Skeleton
• Assigning Vertices to Bones
• Creating a Walk Animation
Appendices
• FAQ
• Supported File Formats
• 3D Theory & Practice
• Help Credits
• Help Me Help You
o Introduction to 3D Files with the help of MilkShape 3D (In German)
o A5 GameStudio MDL Export Tutorial
If you have more than one group
Gun Layout
Changing Skins
o How to use Spherify
Purpose
Box
Cylinder
o How to use Transparency
Purpose
How to make a transparent material
How to use the different transparency modes
o Max Payne KF2, KFS, SKD import & export
Purpose
Extracting the Max Payne Files
Importing Max Payne Files
Exporting Max Payne Files
Creating a Custom Player Model
Final Words
o MilkShape 3D Exporting to Quake III Arena MD3 (Starter Tutorial)
How to create a tag
Creating a MD3 export control file
o Recording AVI with MilkShape 3D
Before you record
Recording Setup
Last Words
o Unreal Tournament 2003 Support for MilkShape 3D
Introduction
Making a Player Model
Tips & Tricks
Getting the Model into the Game
o Unreal Tournament Skeletal System Exporter
Purpose
Project Setup
Starting with the Skeleton
Attaching the Model to the Skeleton
Skinning
Team Skins
Face Skin
Exporting
Creating a Texture Package
Playing UT
o Viewpoint Experience Technology Exporter
Exporting your model to VET Tool
Using the VET Tool for MilkShape 3D
Exporting the MTX/MTS pair
Exporting HTML
Templates
Final Words
• ModTheater Tuts
o Creating a Door
o Globalwidgetcommand for Serverside UI
o Handgun Tutorial – Polygon in 3DSMax
o Mapping Basics – One Room Map
o MOH Script Syntax Summary
o Multiple Custom Textures
o Weapon Modding Tutorial
o HTM (Saved) Pages
Latest News on MOHAA Model Plugins
Modelling Tutorials
MOH, PK3 Analysis
MOHAA Model Skeletons (How they work)
MOHAA Unwrapped – Debugging, menus, commands and variables
SKL_2_SKX.exe information
Tut for Mike’s Torso
Tutorial – Putting New Guns In-game by Godsmack
o Coordinates
Coord Question
Help placing objects on maps (viewpos)
How do mohaa coords work
Maps seem much bigger
Spawn Object
Whereami
• MOH SDK Documents
o Client & Special Effect Reference
Particles and Emitters
Client Commands References
Client Game Classes
o General Reference
Terrain System Reference/Editing Manual
Radiant Feature List
Design FAQ
o Introduction
Getting Started Tutorial (Building a Room)
• Intro to brushes and the camera
• Hollowing a room
• Adding a player start and a light
• Compiling and playing
o Server & Game Reference
Coordinate System Documentation
Misc Script Documentation
• Script Syntax Summary
• Moveanim Commands
• Anim attached commands
• Model Surface Script Control
• PlayerSpawn Stuff
• Camera Tutorial
• Description of the use of Huddraw set of script commands
• Scripting Objectives
• Mission Briefing Tutorial
• Awarding Medals
• Giving and Taking Stuff from the Player
• Gun Turrets
AI Tips
• Pathnode Flags
• AI Parameters
• Leash
• Enemy Selection
• How AI Initially Sees An Enemy
• Making AI Look Smart
Game Commands & Variables
Game Classes
o Tutorials
AI Tutorial
• Rendezvousing with your allied soldiers
• Your first enemy encounter and destroying the Flak88
• Setting up an MG-42 gunner and making 2 enemies jump out of a truck
Decal Tutorial
Driving Tutorial 1
Driving Tutorial 2
Exploder Tutorial
Manvis Tutorial
• What is Manvis?
• Why Should I use Manvis?
• Practical Examples
• How Do I Set Up Manvis?
• Problems With This Setup
• Other Tips and Suggestions
• The Vis Derived Option
Riding Tutorial
TOW (Tug-of-War) Tutorial
o UI Reference
GUI Documentation
Client Classes
o Worldspawn Key Values
• MPowell1944
o Flak 88 Tutorial
o Light Switch Tutorial
o Working Fan Tutorial
• Mr. Jingle
o Blood Modding Tutorial
Introduction
Images
Shader Files
TIKI Files
Packing with PakScape
• Nemesis
o Extra Tutorials
Making an Avatar
Skinning
o Single Player Maps
Sound for your Single Player map
Make a Single Player AI
Flak88 Gun Shooting At You
o Objective Maps
Blow up the Flak Cannon
o Intro
Configuring MBuilder
Installing MOHRadiant
PakScape Tutorial
Setting up EasyGen
Setting up MOHRadiant
Shortcut keys and mouse functions in Q3Radiant
Where to save map
o Novice
Applying Textures
Basic Room
Lights
Player Start
Rotating Door
Sky Boxes
o One Step Up
Ladders
Lighting up a Light Bulb
Water
Adding nice pictures to Walls
Detailed Brush’s and Cut vis Compile Time
Make Destroyed Walls
Making 2 Rooms and a Hall
Miter your corners
Spawn Points
Stop Walking Through Models
o Intermediate
Ambient Light
Bending a Brush
LOD Terrain
Sunflares
Turret Gun
Windows
Destroyed Walls (Advanced)
L Shaped Roof
Photoshop Tutorial for Terrain Picture
Terrain (with EasyGen)
o Advanced – Scripting
Adding a flying plane
Blow up and cause damage
Custom Load Screen
Custom Textures
Multiplayer AI
Music for Map
Plane Sound
Random Explosions
See through windows
Blow stuff up
Destroying Walls & Blocks
Fog
Make a .scr for your map
Sound to explosion
o Allies breached the perimeter script
o Mapping Definitions
o Mapping FAQ
• Nick
o Radiant Tips
The Basics
Lights
Spawn Points
Basic Room
How to test map
Sky
• Other
o Compile Errors
o Get rid of mysterious light leaks
o How to make a Minefield
o Mapping FAQ
o MOH Read-Me Template
o Trying to get a moving U-Boat
• Paul Jaquays
o GtkRadiant Editor Manual
Preface
Introduction
Minimum System Requirements
• Minimum System
• Recommended System
• What doesn’t work (well).. and how to fix it
Installation & Set-Up
• Installing the Editor
• Setting up Paths
• Improving Performance
• Setting up Preferences
o Global
o Interface
o Display
o Settings
• Project Settings
• Build Menu
• Setting up the Windows
o The Camera Window (CAM)
o Orthographic Window(s) – The Grid
o Colors
Entities and Assets
• What are Entities?
• What are Assets?
• Creating new Assests
o Creating Textures
o Creating Sounds
o Creating Models
• Making the .pk3 file
o My .pk3 file is HUGE! No one is downloading it!
Map-Building Basics
• Moving Around
o Moving in All Directions
o Flying through the Map
o Zoom with a View
o Jump to Location
o Moving the Maps Around
• Basic Construction Tutorial
o Quick & Dirty Steps to a SIMPLE room
Tools 1: Selecting and Deselecting
• Selecting Objects and Components
• Copying, pasting, cloning, deleting and prefabs
• Working with regions
Tools 2: Working with Brushes
• Geometry Brush Handling Tools
o Create New Brush
o Resize Brush
o Move Objects
o Mirror Objects
o Rotate Objects
o Arbitrary Rotation
o Arbitrary Scale
o Move Tool
o Rotate Tool
o CSG Operations
o Clipper
o Make Detail
o Make Structural
o Func_Group
o Find Brush
• Brush Menu Commands
o Poly-Sided Brushes
o Primitives
• Moving Selected Brushes
o Moving the Brush
o Nudging the Brush
o Snap Selection To Grid
• Efficient Brush Building Techniques
o Brush Construction
o Brush Counts
o Caulking
o Misc. Tips
Tools 3: Working with Curve Patches
• Curve Menu Commands
o Cylinder
o End Cap
o Bevel
o Cone
o Simple Patch Mesh
o Insert
o Delete
o Matrix
o Cap
• Patch Tool Bar
o Redisperse Patch Points
o CAP
• Moving Patches
o Moving Selected Curve Patch
o Nudging the Curve Patch
o Snap Selection To Grid
Tools 4: Working with Textures
• Texture Creation: Making new assets
• Texture Manipulation: Shader overview
o Shaders and Multi-Pass Texture Effects
• Texture Application: Texture Handling Tools
o View Textures
o Hide Unused
o Show All
o Surface Inspector
o Find / Replace
o Texture Lock
o Directory List
o Shaders
o Texture Directories
o Texture Shift Key Shortcuts
o Texture Rotate Key Shortcuts
o Texture Scaling Shortcuts
• Using Interactive Textures
o Texture Entities
Tools 5: Working with Entities
• The entity window
o Entity List
o Key Descriptions
o Check box Spawn Flags
o Active Properties
o Key & Value Fields
o Angle Buttons
o The Other Buttons
• Entity handling tools
o Escape
o Connect Entities
o Ungroup Entity
o Moving Selected Entity
o Nudging the Entity
o Changing Facing
Tools 6: Lights & Lighting
• Entity Lights
• Texture Lights
• “Sky” Lights
• Ambient Light
Tools 7: Misc. Commands
• Feedback & read-outs
o Cursor Coordinates
o Brush & Entity Counter
o Selection
o Origin
o Cursor Travel Distance
o Control Settings
• Viewing, seeing, not seeing, and hiding
o Toggle
o Camera
o Orthographic
o Show
o Hide/Show
o Show Brush/Patch Dimensions
• File management commands
o New Map
o Open
o Save
o Save As
o Save Selected
o Save Region
o Recent Maps
• Project
• Misc. Commands
o Map Info
o Entity List
o Preferences
• Opening Menus from the Keyboard
Tools 8: Compiling Maps
• The Build Menu
Tools 9: Debugging Maps
• The editor’s debug tools
o The Pointfile
o Next leak spot
o Previous leak spot
o Junk.txt
o Error Messages
• In-game Debug tools
o General Cheats
o General Toggle Binds
o Debug Mode: Logfile Creation
o GL_Showtris/R_Speeds/FrameCounter Toggle
o Lock the PVS Table
o MultiPass Texturing Toggle
o Turning Off Curves and Entities
• Curves, caulk, T-Junctions and cracks
o An Explanation of “Z-Fighting”
o An Explanation of T-Junction Cracks
o Avoiding T-Junction Cracks and Z-Fighting
o Finding and Fixing T-Junction Cracks and Z-Fighting
• A debug config
Appendix A: Glossary of Terms
Appendix B: Entity Descriptions
• Basic Key Information
• Ammo_* entities
• Func_* entities
• Holdable_* entities
• Info_* entities
• Item_* entities
• Light entity
• Misc_* entities
• Path_* entities
• Shooter_* entities
• Target_* entities
• Team_* entities
• Trigger_* entities
• Weapon entities
• Worldspawn entity
Appendix C: Bot Navigation Files
• Introduction
• Description
• Installation
• Usage
• Updating the entity lump
• Leaks
• Useful map information
o Map Boundaries
o Game Physics
• Optimizing a map for bspc compiling
• Entities & the navigation file
o Func_plat and Func_bobbing
o Cluster Portals
o “Do Not Enter” Areas
o Bot Control Entities
• Testing AAS files
o Solid Areas
• Version Changes
Appendix D: Tips, Tricks and Tutorials
• Making the death-fall sound
• Making a mirror
• Making a jump pad
o Lining Up the Pad Texture
• Making a launch pad
• Making a “Rocket Arena” style map
• Making an environment box
• Making a shooter
Appendix E: Online Resources
• News about the editor
• Editing tutorials
• Editing tools
• Prefab sources
• Texture sources
• Map object model sources
• Sounds
• FAQ
• Map reviews, general information
Appendix F: Default Key Shortcuts
Appendix G: Shortcut Keys and Mouse Functions
• Preface
• Introduction
• Shortcut Key List
• Mouse Function List
o Q3Radiant Editor Manual
Preface
Introduction
Minimum System Requirements
• Minimum System
• Recommended System
• What doesn’t work (well).. and how to fix it
Installation & Set-Up
• Installing the Editor
• Setting up Paths
• Improving Performance
• Setting up Preferences
o Optimizing Interface for
o Mouse
o Views / Rendering
o Camera
o Texturing
o New Functionality
o Game Path / Tool Settings
• The Project File
o New Project
o Load Project
o Changing the Project File
• Setting up the Windows
o The Camera Window (CAM)
o Entity/Texture/Console/Group Window
o Z-Axis Scale Window
o Map Window(s) – The Grid
o Colors
Entities and Assets
• What are Entities?
• What are Assets?
• Creating new Assests
o Creating Textures
o Creating Sounds
o Creating Models
• Making the .pk3 file
o My .pk3 file is HUGE! No one is downloading it!
Map-Building Basics
• Moving Around
o Moving in All Directions
o Flying through the Map
o Zoom with a View
o Jump to Location
o Moving the Maps Around
• Basic Construction Tutorial
o Quick & Dirty Steps to a SIMPLE room
Tools 1: Selecting and Deselecting
• The component handling tools
• Group component selections
• Copying, pasting, cloning, deleting and prefabs
• Working with regions
Tools 2: Working with Brushes
• Geometry Brush Handling Tools
o Create New Brush
o Move Geometry Brush
o Stretching the Brush
o Shrinking the Brush
o Flip Brush
o Rotate Brush
o Arbitrary Rotation
o Free Rotate in Map Window
o Drag
o Scale
o CSG Operations
o Clipper
o Make Detail
o Make Structural
o Func_Group
o Find Brush
o Brush Scripts
• Brush Menu Commands
o Poly-Sided Brushes
o Primitives
• Moving Selected Brushes
o Moving the Brush
o Nudging the Brush
o Snap Selection To Grid
• Efficient Brush Building Techniques
o Brush Construction
o Brush Counts
o Caulking
o Misc. Tips
Tools 3: Working with Curve Patches
• Curve Menu Commands
o Cylinder
o End Cap
o Bevel
o Cone
o Sphere
o Simple Patch Mesh
o Insert
o Delete
o Matrix
o Cap
o Overlay
o Thicken
• Patch Tool Bar
o Don’t Select Curved Brushes
o Show Patch Bounding Box
o Show Patches as Wireframe
o Patch Bend Mode
o Redisperse Patch Points
o CAP
• Moving Patches
o Moving Selected Curve Patch
o Nudging the Curve Patch
o Snap Selection To Grid
Tools 4: Working with Textures
• Brush Primitives: A new format
• Texture creation: Making new assets
• Texture manipulation: Shader overview
o Shaders and Multi-Pass Texture Effects
• Texture application: Texture Handling Tools
o View Textures
o Show in Use
o Show All
o Surface Inspector
o Find / Replace
o Texture Lock
o Load from List
o Shaders
o Flush
o Texture Window Scale
o Texture Directories
o Texture Shift Key Shortcuts
o Texture Rotate Key Shortcuts
o Texture Scaling Shortcuts
• Using Interactive Textures
o Texture Entities
Tools 5: Working with Entities
• The entity window
o Entity List
o Key Descriptions
o Check box Spawn Flags
o Active Properties
o Key & Value Fields
o Angle Buttons
o The Other Buttons
• Entity handling tools
o Connect Entities
o Ungroup Entity
o Moving Selected Entity
o Nudging the Entity
o Rotating Entities = BAD!
o Changing Facing = GOOD!
o Mass Rotations
Tools 6: Lights & Lighting
• Entity Lights
• Texture Lights
• “Sky” Lights
• Ambient Light
Tools 7: Misc. Commands
• Feedback & read-outs
o Z-Axis Layers
o Cursor Coordinates
o Brush & Entity Counter
o Selection
o Origin
o Cursor Travel Distance
o Control Settings
• Viewing, seeing, not seeing, and hiding
o Toggle
o Center
o Up Floor
o Down Floor
o Next (XY, YZ, XZ)
o Layout
o Zoom
o Show
o Hide/Show
o Entities as….
o Cubic Clipping
o Open GL Lighting
o Show Brush/Patch Dimensions
• File management commands
o New Map
o Open
o Save
o Save As
o Save Selected
o Save Region
o Reopening Maps
• Projects and Preferences
• Misc. Commands
o Map Info
o Entity Info
o Preferences
• Opening Menus from the Keyboard
Tools 8: Compiling Maps
• The BSP Menu
Tools 9: Debugging Maps
• The editor’s debug tools
o The Pointfile
o Next leak spot
o Previous leak spot
o Junk.txt
o Error Messages
• In-game Debug tools
o General Cheats
o General Toggle Binds
o Debug Mode: Logfile Creation
o GL_Showtris/R_Speeds/FrameCounter Toggle
o Lock the PVS Table
o MultiPass Texturing Toggle
o Turning Off Curves and Entities
• Curves, caulk, T-Junctions and cracks
o An Explanation of “Z-Fighting”
o An Explanation of T-Junction Cracks
o Avoiding T-Junction Cracks and Z-Fighting
o Finding and Fixing T-Junction Cracks and Z-Fighting
• A debug config
Appendix A: Glossary of Terms
Appendix B: Entity Descriptions
• Basic Key Information
• Ammo_* entities
• Func_* entities
• Holdable_* entities
• Info_* entities
• Item_* entities
• Light entity
• Misc_* entities
• Path_* entities
• Shooter_* entities
• Target_* entities
• Team_* entities
• Trigger_* entities
• Weapon entities
• Worldspawn entity
Appendix C: Bot Navigation Files
• Introduction
• Description
• Installation
• Usage
• Updating the entity lump
• Leaks
• Useful map information
o Map Boundaries
o Game Physics
• Optimizing a map for bspc compiling
• Entities & the navigation file
o Func_plat and Func_bobbing
o Cluster Portals
o “Do Not Enter” Areas
o Bot Control Entities
• Testing AAS files
o Solid Areas
• Version Changes
Appendix D: Tips, Tricks and Tutorials
• Making the death-fall sound
• Making a mirror
• Making a jump pad
o Lining Up the Pad Texture
• Making a launch pad
• Making a “Rocket Arena” style map
• Making an environment box
• Making a shooter
Appendix E: Online Resources
• News about the editor
• Editing tutorials
• Editing tools
• Prefab sources
• Texture sources
• Map object model sources
• Sounds
• FAQ
• Map reviews, general information
Appendix F: Default Key Shortcuts
Appendix G: Shortcut Keys and Mouse Functions
• Preface
• Introduction
• Shortcut Key List
• Mouse Function List
o Resources/Links List (Use WayBackMachine)
Model Making Tools
Model Making Tutorials
GMAX Specific Tools and Tutorials
UVW Skin Mapping & Unwrapping Tools
UVW Skin Mapping & Unwrapping Tutorials
MD3 Exporting Tutorials
Animating Tools
Animating Tutorials
Skin Making Tools
Skin Making Tutorials
General Painting Tutorials
Bot Tools
Bot Tutorials & Resources
Misc. Tools & Utilities
Audio/Voice/Sound Resources
Quake 3 Model & Skin Resources
Useful Links & Resources
• PKM
o Action Room Tutorial
o Basic Skinning Tutorial
o Advanced Skinning Tutorial
• Prima Games
o Breakthrough Official Strategy Guide
Movement
Running & Walking
Strafing
Circle-Strafing
Crouching
Jumping
Climbing
Compass & Navigation
Weapons Training
Aiming
Firing
Reloading
Combat Tactics
The Rifle-Butt Strike
Popping Smoke
Shoot & Scoot
Room Clearing
Commendations
Campaign Medals
Career Medals
• Prometheus
o Lightray 3D Tutorials
Beginner
• Attaching & Detaching Meshes
• Background Images
• Basic UVMapping Tutorial
• Create Object Dialog
• Creating Vertices & Faces
• Lightray 3D Basics
• Link & Unlink Objects
• Loading Images into the Material Editor
• Mesh Normals & Smoothing
• Mesh to Skin
• Modify Objects Dialog
• Select, Move, Rotate, Scale, Pivot, Coord Systems
• Toolbars & Dialogs
• Welding Vertices
Intermediate
• Applying UV Mapping
• CoDUO MP Tank Analysis
• Creating a New Weapon
• Creating Animations
• Exporting a file from LR3D and Importing in COD
• Skin Texture Painting
• The Process of Creating Skin
• Using Modifiers Tutorial
• Using Splines to Create a Gun Model
Advanced
• Inverse Kinematics
• Quake
o Bubba
Advanced Mapping
• Arches
• Bended Columns
• Bobbing Brushes
• Camera Portals
• Complex Doors – Buttons
• Creating a Pendulum
• Creating Doors
• Creating Landscapes
• Custom Textures
• Light Beams
• Making Team-CTF Levels
• Mirrors
• Moving Platforms and Trains
• Moving Spines
• Ramps
• Rotating Brushes
• Spiral Staircases
• Suspended Items
• Twisted Pillars
• Using Prefabs
• Using Sound
• Water Tunnels
Basic Mapping
• Basic Entities and Placement
• Basic Shapes
• Building Stairs
• Compiling
• Connecting Rooms
• Editing Shortcuts
• Introduction
• Jump Pads
• Liquids
• Making a pk3 File
• Models and Shaders
• Teleporters
• Volumetric Fog
• Your First Room
o djbob
Hints
o Eric Wasylishen
QBSP (Compile a Quake BSP file from a MAP source file)
• Name
• Synopsis
• Description
• Options
o –nofill
o –noclip
o –noskip
o –onlyvents
o –verbose
o –noverbose
o –splitspecial
o –transwater
o –notranswater
o –transsky
o –nooldaxis
o –forcegoodtree
o –bspleak
o –oldleak
o –leaktest
o –nopercent
o –bsp2
o -2psb
o –leakdist [n]
o –subdivide [n]
o –wadpath <dir>
o –oldrottex
o –maxNodeSize [n]
o –hexen2
o –wrbrushes
o –wrbrushesonly
o –notex
o –omitdetail
o –convert <fmt>
• Special Texture Names
o Skip
o Hint
• External Map Prefab Support
o _external_map
o _external_map_classname
o _external_map_angles
o _external_map_angle
o _external_map_scale
• Detail Brush Support
• Detail Variants
o func_detail_illusionary
o func_detail_wall
o func_detail_fence
• Model Entity Keys
o “_lmscale” “n”
o “_mirrorinside” “n”
• Other Special-Purpose Entities
o func_illusionary_visblocker
• Map Compatibility
• Author
• Reporting Bugs
• Copyright
• See Also
o Jex
Understanding Vis and Hint Brushes
• Basic Vis Theory
• Visual Vis Theory
• Optimising Vis with Hint Brushes
• Improper Hint Brush use
• Irregular Hint Brush use
• Creating Hint Brushes
o Lloyd M
Terragen Tutorial for Skyboxes
o Obsidian
Advanced Portal & Hinting Optimization Tutorial
Class on Hints
Exporting Models
Q3Map2 Shader Manual
• 0. Preface
o Credits
o Contact
• 1. Introduction
o What is a Shader?
o Shader Name & File Conventions
o Q3map Suffix
o Keyword Types
o Documenting with Comments
o Key Concepts
• 2. General Shader Keywords
o skyParms
o cull
o deformVertexes
o fogParms
o noPicMip
o noMipMaps
o polygonOffset
o portal
o sort
• 3. Q3Map2 Specific Shader Keywords
o q3map_alphaMod
o q3map_backShader
o q3map_backSplash
o q3map_baseShader
o q3map_bounce
o q3map_bounceScale
o q3map_clipModel
o q3map_cloneShader
o q3map_extraShader
o q3map_fadeAlpha
o q3map_fogDir
o q3map_forceMeta
o q3map_forceSunlight
o q3map_fur
o q3map_globalTexture
o q3map_indexed
o q3map_invert
o q3map_lightImage
o q3map_lightmapAxis
o q3map_lightmapBrightness
o q3map_lightmapFilterRadius
o q3map_lightmapGamma
o q3map_lightmapMergable
o q3map_lightmapSampleOffset
o q3map_lightmapSampleSize
o q3map_lightmapSize
o q3map_lightRGB
o q3map_lightStyle
o q3map_lightSubdivide
o q3map_noClip
o q3map_noFast
o q3map_noFog
o q3map_noPlanar
o q3map_normalImage
o q3map_noTJunc
o q3map_noVertexShadows
o q3map_offset
o q3map_patchShadows
o q3map_replicate
o q3map_shadeAngle
o q3map_skylight
o q3map_splotchFix
o q3map_styleMarker
o q3map_styleMarker2
o q3map_sun
o q3map_sunExt
o q3map_sunlight
o q3map_surfacelight
o q3map_surfaceModel
o q3map_tcGen
o q3map_tcMod
o q3map_terrain
o q3map_tessSize
o q3map_textureSize
o q3map_traceLight
o q3map_vertexScale
o q3map_vertexShadows
o q3map_vlight
• 4. Q3Map2 Specific Surface Parameter Shader Keywords
o surfaceparm alphashadow
o surfaceparm antiportal
o surfaceparm areaportal
o surfaceparm botclip
o surfaceparm clusterportal
o surfaceparm detail
o surfaceparm donotenter
o surfaceparm dust
o surfaceparm flesh
o surfaceparm fog
o surfaceparm hint
o surfaceparm ladder
o surfaceparm lava
o surfaceparm lightfilter
o surfaceparm lightgrid
o surfaceparm metalsteps
o surfaceparm monsterclip
o surfaceparm nodamage
o surfaceparm nodlight
o surfaceparm nodraw
o surfaceparm nodrop
o surfaceparm noimpact
o surfaceparm nomarks
o surfaceparm nolightmap
o surfaceparm nosteps
o surfaceparm nonsolid
o surfaceparm origin
o surfaceparm playerclip
o surfaceparm pointlight
o surfaceparm skip
o surfaceparm sky
o surfaceparm slick
o surfaceparm slime
o surfaceparm structural
o surfaceparm trans
o surfaceparm water
• 5. Editor Specific Shader Keywords
o qer_editorimage
o qer_nocarve
o qer_trans
• 6. Stage Specific Shader Keywords
o Texture Map Specification
o blendFunc
o tgbGen
o alphaGen
o tcGen
o tcMod
o depthFunc
o depthWrite
o detail
o alphaFunc
• 7. Quake 3 Engine Game Specific Shader Keywords
o Return to Castle Wolfenstein
o Return to Castle Wolfenstein: Enemy Territory
o Raven
o Ritual
• 8. Shader Effects Creation Tips
o Creating New Textures
Tools Needed
Setting up Files
Rules and Guidelines
Making the .pk3 File
o Notes on Alpha Channels
o Advanced Decal Tricks
Multiplicative Decals
Inverse Multiplicative Shadows
Using _decal Entities
• Appendix A: Triggerable Shader Entities
• Appendix B: Terrain Entities
o General Changes
Base Shader
tcMod Functions
tcGen Functions
o Lightmapped Terrain
q3map_nonPlanar
q3map_lightmapAxis
q3map_shadeAngle
q3map_lightmapMergable
q3map_lightmapSampleSize
q3map_lightmapSampleOffset
o AlphaMod Dotproduct Terrain
o AlphaMod Volume Terrain
• Appendix C: Foghull
o What is a Foghull?
o Skybox Images
o Foghull Shaders
o Entity Key Value Pairs
• Appendix D: Fur
o q3map_cloneShader
o q3map_fur
• Appendix E: Celshading
• Appendix G: Lightstyles
o Worldspawn Keys
o Lights
Light Entities
Light Emitting Shaders
o Lightmapped Surfaces
o Compiling
• Appendix I: Light Emitting Shaders
o Surface Lights
o Skies
o Lighting Effects
Shader Lighting Experiment
o Other
Lightmap Editing
o PBworks
Entity Explanation
• Select
o Select Complete Tall
o Select Touching
o Select Partial Tall
o Select Inside
• Undergroup Entity
• Move into Entity
• Move into worldspawn
• Make detail (Ctrl+M)
• Make structural (Shift+Ctrl+S)
• Smart Entities
o Smart_train
• Func
o Func_bobbing
o Func_button
o Func_door
o Func_door_model
o Func_door_rotating
o Func_group
o Func_pendulum
o Func_plat
o Func_rotating
o Func_static
o Func_timer
o Func_train
• Info
o Info_alien_intermission
o Info_human_intermission
o Info_notnull
o Info_null
o Info_player_intermission
• Light
• LightJunior
• Misc
o Misc_anim_model
o Misc_light_flare
o Misc_model
o Misc_particle_system
o Misc_portal_camera
o Misc_portal_surface
o Misc_teleporter_dest
• Path
o Path_corner
• Target
o Target_delay
o Target_kill
o Target_location
o Target_position
o Target_print
o Target_push
o Target_relay
o Target_rumble
o Target_score
o Target_speaker
o Target_teleporter
• Team
o Team_alien_acid_tube
o Team_alien_barricade
o Team_alien_booster
o Team_alien_hoevel
o Team_alien_overmind
o Team_alien_spawn
o Team_alien_trapper
o Team_alien_hive (not in standard entity file)
o Team_human_armoury
o Team_human_dcc
o Team_human_medistat
o Team_human_mgturret
o Team_human_reactor
o Team_human_repeater
o Team_human_spawn
o Team_human_tesla
• Triggers
o Trigger_always
o Trigger_ammo
o Trigger_buildable
o Trigger_class
o Trigger_equipment
o Trigger_gravity
o Trigger_heal
o Trigger_hurt
o Trigger_multiple
o Trigger_push
o Trigger_stage
o Trigger_teleport
o Trigger_win
• Worldspawn
o Plan B
My Take on Caulk hull/overdraw/hinting
Thicken
o Quakin
Sample Map: An Explanation
o RiceBug
Common Error Messages
Q3A Error Messages
o RKone
Curved Trim Tutorial
o skOre
Q3A Electronics
• 1. Mechanics
o 1.1 The Basics
Complex Func_ing, Trigger_ing and Target_ing
How to create pop up effects
o 1.2 Advanced Triggering
o 1.3 More Complex Examples of AT
The Teleport-Tunnel
Furthermore: The Teleport-Tunnel
Interlude: First Steps Done
• 2. Basic Electronics
o 2.1 Q3A Electronics
The AND-Gate
The NOT-Gate
The OR-Gate and Interlude
The EQUIV-Gate
The XOR-Gate
o 2.2 Gates and Beyond
Flip Flops
o 2.X The Use of Q3A Electronics
o SmallPileofGibs
Hint Brushes: How and why to use them
Q3 Map Explanation
• Geometry Definitions
• Map Definitions
• What does the BSP stage do?
• How and why is the BSP created?
• How can I control the BSP splits? (a way to use detail and Hint brushes)
• What is a leak?
• What is the .prt file?
• How are the brushes/patches turned into triangles?
• How is the PVS created?
• What does –vis –fast do?
• How do Potals affect visibility?
• How can I make VIS more efficient? (and reduce –vis processing time)
• How do lightmaps work?
• How are lightmaps generated?
• What about surface lights?
• What does –light –extra do?
• How does BSPC interpret the map?
• What is the ‘Brush CSG’ stage of BSPC?
• How is the area file created?
• How do Bots use the area file?
• How do I make Clusterportals?
o Timbo
Q3 Documentation Project
• GAME
• CGAME
• Q3UI
• RazoRapid
o CGM Bugger List
• Reborn
o Admin.ini Editor Documentation
o Reborn Patch Documentation
New Admin Commands
Admin System (Admin Rights)
New Game CVARs
New Client Commands
New Voting System
Auto-Update System
Notes
o New EventSystem Engine Documentation
o New Scripting Commands Documentation
o Reborn Console Messages
Information
Warnings
Errors
Script Errors
Exceptions
Others
o Reborn Files & Limits
Files
Limits
Constants
o Reborn Installation Guide
Overview
Windows Installation
• Quick Guide
• Detailed Guide
Linux Installation
• Quick Guide
• Detailed Guide
Additional Information
o Reborn RCON Commands
• Riflemen
o Weapon Skin Tutorial
• RingDog
o Model List – AA
o Model List – SH
o Model List – BT
• RyBack
o NightFall Documentation
Installing NightFall
NightFall API Client
NightFall API Server
NightFall Client Admin Commands
NightFall CVARs
NightFall Filters
NightFall RCON Commands
NightFall Script Event System
NightFall Scripting Functions
• Scorpio Midget
o MOHAA Tools Information
o MOHAA Unwrapped
Debugging
Menus
Commands
List of CFG Files
List of Menus
Variables (cvarlist)
Commands (cmdlist)
3 useful debugging threads
• Selzi
o Beginning with Mapping
MOHRadiant
MBuilder
PakScape
o Mapping First Room
• Shadow
o The Ultimate Compile Errors List
o Abbreviations
o Cheat Commands (To protect against)
Default Commands/CVARs
Custom (Hexed) Commands/CVARs
o Cheat Skins (To protect against)
o Custom Sky Textures
o Freeze-Tag Locations All Maps
Southern France (dm/mohdm1)
Destroyed Village (dm/mohdm2)
Remagen (dm/mohdm3)
The Crossroads (dm/mohdm4)
Snowy Park (dm/mohdm5)
Stalingrad (dm/mohdm6)
Algiers (dm/mohdm7)
The Hunt (obj/obj_team1)
Omaha Beach (obj/obj_team3)
The Bridge (obj/obj_team4)
St. Lo (obj/stlo)
Fort Wreck (dm/fortwreck)
St. Renan (obj/renan)
Morocco (dm/morocco)
Deep Mine (obj/deepmine)
Brest (mp_brest_dm)
Verschneit (mp_verschneit_dm)
Stadt (mp_stadt_dm)
o Freeze-Tag Locations V2 Rocket Facility
o MOHAA Map List
Custom Objective Maps
Custom DeathMatch Maps
Theme Maps
Single Player Maps
• Allied Assault
• Spearhead
• Breakthrough
Custom Single Player Maps
Liberation Maps
Default/Stock Maps
• Allied Assault
• Spearhead
• Breakthrough
o MOHAA Voice Taunts
o MOHSH Voice Taunts
o MOHAA Keys (Output)
o Player Model List
o Reborn CVARs
o Server CVARs
o Unnamedsoldier CVARs & Bindlist
• SkulpingNipple[NL]
o Put your own fonts ingame
Requirements
Installation
Take a Font
Fontgen
DXTBMP 1
Photoshop
DXTBMP 2
Pakscape
• Steven McMillan
o Adding an Elevator
• Sturmi
o Mapping Tutorials (In German)
• Swagel
o OpenSCR Guide
• The Rjukan Project
o Alternative Elevator (func_door)
o Areaportal Tutorial
Introduction
The Problem
How area portals work
How area portals don’t work
How to insert area portals in your map
Controlling area portals manually
o Bjarne’s Scripting Tutorial
Game Module Classes
Game Module Classes SH
Scripting Language, Appendix A, Commands
Scripting Language, Appendix B, Classes, and how they are used
Scripting Language, Appendix C, Script architecture
Scripting Language, Tutorial
Script Commands – Huddraw
Script File
o Bomb Dropping Planes Tutorial
o Caulk and Clip Tutorial
Areaportal
Black
Blank_lightmap
Carpetclip
Caulk
Caulkshadow
Caulksky
Clip
Clipall
Dirtclip
Foliageclip
Glassclip
Grassclip
Gravelclip
Grillclip
Hedgehogclip
Hint
Ladder
Light
Metalclip
Modelshader
Monster
Mudclip
Nodraw
Origin
Paperclip
Patharea
Playerclip
Portal
Puddleclip
Rain
Sandclip
Skip
Skyportal
Snowclip
Static_visible
Stoneclip
Sunblock
Switchflat
Switchflat_pulse
Tankclip
Trigger
Vehicleclip
Vis
Waterskip
Weapon
Woodclip
Explanations to the texture surface parameters
Example Map with Caulks & Clips
o Ladders that work down as well as up
o Making Driveable Tank
o Objectives – Combination
o Objectives – Random Placement
o Readme File Design
Intro
Heading
Abstract
Index
Installation instructions
Core data
History / Strategy / Fun facts / About / Usage
Errors
Version History
Contact
Copyright
Greetings
o Step by Step House Construction
o 3-Point Clipping
o AI Shooting at what YOU want
o AI Tutorial
Basic AI
Making the AI roll in the poker chips
The AI won’t play?
o Barrels
o Breakable Windows
o Convert map from OBJ to DM
Rename and move the map file
Write a new .scr file
Update references to the new names
o Custom Textures
o Dimensions to use in mapping
The Player
Capabilities of the Player
Steps of Stairs
Doors
Mapping dimensions
Size and ladders
o Error FAQ
o Filming in MOHAA
Getting MOHAA into a video format
Useful console commands
How to get rid of the ‘Press fire to join’ message when in spec
Removing the Avatars (the symbols above player’s heads)
Making a Script
o Fog that pulsates
o Give player guns & ammo (SP)
o LOD Terrain Design, using an image
Foreword
Draw a brush
Make it a LOD
Select the LOD
Save to Image
Open the .tga
Redraw it
Back to Radiant
Load the .tga
Satisfied?
o Make Moving Vehicle
o Medics
o Naming a file
Map file name
PK3 file name
Readme file name
So why these naming conventions?
o Objectives – Bombs (More than 1)
What to change in the map?
What to change in the script?
Variants
o Parameters on Entities
o Parameters when developing a map
o Patch meshes and bevels
o PK3 Making
About PK3s
What’s in a PK3
Creating a PK3
Common Mistakes
o Rotating Door
Construction
Setting up a func_rotatingdoor’s keys
Correct Angle Settings
Notes
o Scores and Statistics
Using a trigger and a map script
Using an external tool that polls the server’s query port
Reading the server log file
o Scripting Engine Characteristics
o Skybox creation with Terragen
Get Terragen
Play with Terragen
Terragen Tips
Rendering a skybox
Convert the files
Create a shader
Naming and placing the textures
Use the Sky
Problems
o Skyboxes and Sunlight
o Snow Tutorial
o Solutions to Common Errors on Your First Map
Radiant Problems
Compiling Problems
Map Loading Problems
o Supporting more features in Radiant
o Teleportation
o Traps
o Use CVARs to accept input via rcon, local keypress etc.
o VIS Designing
What is structural and detail brushes?
How to use your new knowledge?
What you don’t need to look at?
Starting Point
Using Filters
After activating the filters
Making the right brushes detail
Making the right brushes structural
What to do now?
Area portals in doors
Manual VIS with vis_leafgroup brushes
o Volume Damage
• TheShadow
o DM Map List (Incomplete)
o OBJ Map List (Complete)
• TheStorm
o Blocksize Guide
o Green Detail Information
o Rotating Fan
o VIS for Dummies
o VIS_leafgroup Guide
• Thomas McGuire
o MOHAA Tweak Guide
Troubleshooting
Config File
Graphics
Audio
Controls
Conclusion
• Thor
o Adding Custom Sound
o Cutting Corners
o Door Locked Sound
• Trinisica
o HDRI & Luminance Space
HDRI; High Dynamic Range Image
High Dynamic Range in Reflection/Retractions
HDRI for Illumination
Clamped and Unclamped
o Polymodeling
Quick Explanation of Poly Modeling
How Meshsmooth works
o Shaders
What’s a Shader?
Diffuse; Color Reflection
Specular; Light Source Reflection
Anisotrophic Specular
Raytraced Reflections
o Virtual Studio
The Plane Version of the Virtual Studio Setup
Flavor: Outside
Flavor: Inside
• Turret_toad
o MOH Hand Book
Introduction
• Welcome
• Credits
The Radiant Interface
• Intro to Radiant
• Setting up Radiant & MBuilder
• Viewports and Navigation of 3D space
• Radiant Menus
Beginner Mapping
• Material Manipulation
• Windows
• Brush Manipulation
• Curves and LOD Terrain
• Clipper Tool
• Lights
• Packing the PK3
Finishing up and Resources
• General Rules/Tips
• Resource Links
• VATEC6000
o PakRadar – How to set up a custom file list for your server Tutorial
• ViPER
o Creating seamless textures
• VonderCrunch (Vonderbakluft & Crunch)
o BSP Compile Options
o CSG Subtract
o Custom Sound Info
o Easy ways to screw up your map
o Manual VIS Help
o MOH Radiant Toolbar Options
o MP Dog Script
o Multiple Map Loading Screens
o Radiant Tips
o Set-up Radiant
• Voxel
o Doors
Sliding Door
Rotating Door
o Elevators
• Walkthroughs & Game Guides
o Allied Assault
Strategy Guide (In German)
HUD Guide
Walkthrough
Walkthrough A
Walkthrough B
Walkthrough C
Walkthrough Dutch Version
Weapons Guide
o Spearhead
Walkthrough
Weapons Guide
Rifle Guide
o Breakthrough
Walkthrough
• Wizzler[NL]
o MOHAA Reborn Rights Spreadsheet
• Wolf-Man
o Skinning Guide using Paint Shop Pro
• xNULL (Forum Posts)
o .30 Cal Browning in Multiplayer
o 3D Model of Stalingrad Map
o Add Apply Button to Menu
o Add Music to Maps
o Adjusting Number of Grenades per Map
o Anti-Bad Commands
o Array Check Help
o Array to Create a Menu
o Array to Spawn a Trigger in Different Location – Question
o Arrays & Floating Variables
o Arrays & Setsizes
o Attach Model to Head but change Origin
o Audio Triggers – Randomising
o Basic Template for RCON Commands on Players (Punishment)
o Bomb Only sets First Round Bug (Custom Map)
o Calling Game Sounds
o Camper's Name Printed
o Changing from FFA Map to OBJ Map
o Check what Weapon a Player has
o Counting Deaths
o Current Date & Time Display
o Custom Texture Masking Issues
o Damage Event Help
o Division
o Dynamic Melt Points
o ERROR – MAX_EDGE_LINES
o Flag Attached to Player
o Floating Triggers
o Floats & Memory
o FX Dummy.tik Models to Act as Speakers
o Game Crashes when Shooting in Custom Map
o Get Client Num(ID)
o Get Location of Player Spawn Point on the Fly
o Getting Maps to work with Mefy’s Maplist
o Give Weapon (Only once)
o Headshot Only with Sniper & Disable Other Hitboxes
o HUD Text with Shader Background
o Huddraw Helper
o Huddraw_Virtualsize Problem
o Hurt Trigger & Hide Command Issues
o If/Else on Sound Effects
o Kill and Death Tracking Possibility
o Know when a player is Walking or Running
o Lift Scripting Help
o Lightning Strike
o LightRay 3D Basics
o List of RGB Colors, usable in MOHAA
o Local.Player.Fireheld Info
o Local.Statix Setsize & Bounding Boxes for Spawning Object
o Map Info Mod
o Means of Death – Questions
o Mefy Location Creator Issue
o Mefy’s Gametypes Maplist & Map Info Mod
o Modding Sound Parameters
o Model Bound Box(es)
o MOHAA to Q3
o Multiplayer Health via Script
o Multiple Spawned Static Models in an Array
o Multiple Values in an Array
o NoDraw Issues on Allied Assault
o Placing HUDs where I want them to Show
o Player dies and spawns an ammo box (Spearhead)
o Player Jump Higher – Velocity
o Player Grenade Control (Spearhead)
o Player Skin Checker
o Points for Setting Bomb
o Proper Use of Centerprint Command
o Purple’s Event Handler Issues
o Push Player with a Bash
o Query Players within Script
o QuickSort
o RCON Command to Shuffle Teams
o RCON Force Weapon on the Fly
o RCON Menu – Linkcvar for Server Variables
o Referencing Script – Achievement Tracking
o Regen Health Help with Script
o Remove Static Model Entity from Custom Map
o Re-Skinned Default Tree Models Blinking Bug
o Scoreboard – Bot Script Help
o Screwy Sprites
o Script to Rotate CFG (Config) Files
o Server Redirect to other IP
o ServerSide Menu System Concept
o Set CVAR for Randomising Maplist
o Single Player Taunt & Weapon Sound Fix
o Sor’s Bot Scoreboard – Player Name Question
o Sor’s Bot Info
o Spawn Event and FreezeTag Objective
o Spawning Fire that Damages Player
o Teleport and getting Stuck
o Teleport Holding Use Key
o Teleport Issues
o Teleported Player’s View Angle
o The Floor is Lava – Death Trigger
o Tracking Player’s Location, Displaying it on HUD
o Trail Effect
o Trigger for Player in Area
o Trigger on a Dead Body
o Trigger Sizes
o Trigger to Kick Player
o Triggers and Spawns – Accessing Spawn Targetnames from Map Script
o Understanding the Reborn Intermission Event
o Understanding Triggers and the Easy Way to Create Them
o Variable Scope Possibility
o Weapon Check – Results in NULL – Help
o Weapon Swapping Issue
o When to use Level Waittill Prespawn and Level Waittill Spawn
• YoChoy
o How to port brush work into Milkshape
• Zagz
o Avatar Tutorial
o Crosshair Tutorial
o Custom Scoreboard and Loading Screen
o Custom Start-Up and Death Messages Tutorial
• Zappa
o SCR File Association Fix Windows 10
o Sublime Text 3 Installation Guide
o Try, Catch and Throw Exception Handling
o Velocity and Speed
• Zom-B
o Milkshape 3D Basics and Fundamentals
Intro
Fundamentals
Simple Shapes
Extrude Modelling
Vertex Modelling