-
MOHAA Tutorials V1.4
NEW RELEASE: **MOHAA TUTORIALS PACKAGE V1.4**
30-03-2020
Download Links: xNULL MIRROR & MediaFire MIRROR
(Note: The file size is around 700MB currently)
Hey guys!
This is the first official post, specifically about the MOHAA Tutorials Package.
This package includes all guides, tutorials, manuals and lists I could find online in regards to MOHAA (including SH & BT).
They are sorted in folders by the name of the authors/creators, as some tutorials are about several different subjects and I did not want to split tutorials in different versions.
The package includes very known tutorial bundles, as those of .MAP, The Rjukan Project and Nemesis and a lot of lesser known ones as well.
I did not want any of these tutorials to go to waste or get lost.. so let's make sure there's always a copy of them somewhere out there! :D
IMPORTANT NOTE: If you are looking for a specific topic and/or keyword, the included Table of Contents document (in the zip file) is your friend! This document includes the name of every Guide/Tutorial, as well as every Chapter and Sub-Chapter within it! So for easy searching; press CTRL+F inside the document and type the keyword you're looking for. If you can't seem to find anything, try synonyms of your chosen keyword.
(Also; make sure to check out the included Read-Me file and the first page of the Table of Contents file for more info)
Most tutorials/guides included are about one of the following aspects/subjects of MOHAA (incl. SH & BT):
- Mapping
- Modding
- Scripting
- Skinning
- Modelling
- Software Manuals
- Installation Guides
- Walkthroughs
- CVAR Lists
- General Informative Lists
A decent amount of the tutorials also include extra files for help (pk3 files, .map files, script files, readme files, videos etc.).
Some tutorials might be missing pictures, unfortunately I was unable to recover those, meaning you'd have to follow those tutorials without them :(
The following software is also included in this package, for your convenience:
- PakScape
- MOHTools (Radiant)
- MBuilder
- MOHSH SDK
- MilkShape 3D V1.8.5 (Key included)
- LightRay 3D V1.4, V1.4.1 & V1.5 Beta (Key included)
- Plugins (for Radiant & MilkShape 3D)
- Fontgen (in SkulpingNipple[NL]'s folder)
- Gensurf (in Balr14's folder)
- Thread Viewer (in jv_map's folder)
- MOHAA Source Maps
- MOHAA Recorder
- Admin.ini Editor (in Reborn's folder)
- EasyGen (in Huba's Folder)
- MOHAA Tools V1.6b (in Scorpio Midget's folder)
- Blender Quake BSP Importer (in Andrew Palmer's folder)
- OpenSCR (in Swagel's folder)
- MOHAA Script Framework (in $or's folder)
Various other possibly useful tools have been included inside the Misc. Tools folder (incl. Bot Files & BSP Compilers).
I'll also add the Updates list (since V1.3) and the Table of Contents below so you can check those out before downloading :)
p.s. Also check out the AAAA Map Database and search on either 'test' or 'tutorial' to find maps which were specifically designed as tutorials to teach people how to create certain things in maps, most of these maps include a .map file! :)
Updates V1.4
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
Table of Contents
(Sorry it looks messy, unfortunately this is how it's copied, and I don't want to re-type it all haha! The proper looking Table of Contents is included within the download as well.)
Code:
$or
o $ors Scripting Tutorial
Introduction
Vital Knowledge
How to use Pakscape/winrar
Opening Script Files
Closer look at the files
Lets 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 Maps Script File
The Maps .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 Maps 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 Youll Need
Setting Up
o Map Mate
o Radiant
First Steps
The Skybox
o Brushes
o Size doesnt 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 Dont 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 Dos and Donts
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? Whats 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
Lets 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. Whats 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 Penumbras 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 AABBs 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 its 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 ControlMain Module
o ControlInitialize 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 Cooks 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?
Whats 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
Whats 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 Mikes 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 Brushs 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 doesnt 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 editors 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 doesnt 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 Dont 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 editors 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 dont work
How to insert area portals in your map
Controlling area portals manually
o Bjarnes 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 wont 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 players 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
Whats in a PK3
Creating a PK3
Common Mistakes
o Rotating Door
Construction
Setting up a func_rotatingdoors keys
Correct Angle Settings
Notes
o Scores and Statistics
Using a trigger and a map script
Using an external tool that polls the servers 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 dont 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
Whats 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 Mefys 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 Mefys 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 Purples 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 Sors Bot Scoreboard Player Name Question
o Sors 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 Players View Angle
o The Floor is Lava Death Trigger
o Tracking Players 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
Other Projects:
MOHAA Guide: A fully detailed guide on how to play the game, plus a lot of useful information for Players, Admins & Modders.
MOHAA .MAP (Source) Files: Includes all .MAP (Source) Files of Custom Maps that I could find (for Mappers).
MOHAA Prefabs: Includes all Prefabs that I could find (for Mappers).
MOHAA Pictures: Includes all Pictures that are in any way related to MOHAA/SH/BT that I could find (Icons, Banners, Wallpapers, Mod Logos etc.)
-
In regards to version 1.4.
This gives a closer and more detailed look to the newly added Tutorials/Posts regarding AAAA, xNULL and Quake 3
Added AAAA Forum Posts
Code:
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
Added xNULL Forum Posts
Code:
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 Mefys 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 Mefys 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 Purples 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 Sors Bot Scoreboard Player Name Question
o Sors 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 Players View Angle
o The Floor is Lava Death Trigger
o Tracking Players 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
Added Quake 3 Tutorials
Code:
- Added a 'Bubba' Folder and included:
- Advanced Mapping Tutorial
- Basic Mapping Tutorial
- Added a 'djbob' Folder and included:
- Hints
- Added a 'Eric Wasylishen' Folder and included:
- QBSP (Compile a Quake BSP File from a MAP Source File)
- Added a 'Jex' Folder and included:
- Understanding VIS and Hint Brushes
- Added a 'Lloyd M' Folder and included:
- Terragen Tutorial for Skyboxes
- Added a 'Obsidian' Folder and included:
- Advanced Portal & Hinting Optimization Tutorial
- Class on Hints
- Exporting Models
- Q3Map2 Shader Manual
- Shader Lighting Experiment
- Added a 'Other' Folder and included:
- Lightmap Editing
- Added a 'PBworks' Folder and included:
- Entity Explanation
- Added a 'Plan B' Folder and included:
- My Take on Caulk hull/overdraw/hinting
- Thicken
- Added a 'Quakin' Folder and included:
- Sample Map: An Explanation
- Added a 'RiceBug' Folder and included:
- Common Error Messages
- Q3A Error Messages
- Added a 'RKone' Folder and included:
- Curved Trim Tutorial
- Added a 'skOre' Folder and included:
- Q3A Electronics
- Added a 'SmallPileofGibs' Folder and included:
- Hint Brushes: How and why to use them
- Q3 Map Explanation
- Added a 'Timbo' Folder and included:
- Q3 Documentation Project