User:Angry Beaver/Sandbox: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
m (breakpoint)
Line 25: Line 25:
| [[GCF]]* || Offical Release || Contains all original content for the game
| [[GCF]]* || Offical Release || Contains all original content for the game
|-
|-
| [[FGD]]* || Released with game/mod || Informs Hammer of all the properties of entities and how to use them. Actual entities defined in code!
| [[FGD]]* || Released with game/mod || Hammer's reference guide of all the properties of entities and how to use them.
|-
| [[MDL]] || Released with game/mod || A 3D model that can be placed inside of the level
|-
| [[VMT]] || Released with game/mod || The properties and name of a texture used in the level
|-
| [[VTF]] || Released with game/mod || The physical appearance of a texture
|-
|-
| [[BSP]]* || Compiling || The final version of your map that can be run in game
| [[BSP]]* || Compiling || The final version of your map that can be run in game
|-
|-
| [[AIN]] || Compiling || All movement information and properties for [[NPC|NPCs]] on the map.
| [[AIN]] || Compiling || All movement information and hints for [[NPC|NPCs]] in the map.
|-
|-
| [[LOG]] || Compiling || The entire compile log of the compilers run
| [[LOG]] || Compiling || The entire compile log of all the compilers run on the vmf
|-
|-
| [[PRT]] || Compiling || Provides information about leafs and thier interaction
| [[PRT]] || Compiling || Provides information about [[Visleaf|leafs]] and thier interaction
|-
|-
| [[PTS]]* || Compiling with errors || A helpful guide for finding [[Leak|leaks]]
| [[PTS]]* || Compiling with errors || A helpful guide for finding [[Leak|leaks]]
|-
|-
| [[NAV]] || In game parameter || All movement information and properties for [[Bot|Bots]] on the map.
| [[NAV]] || In game parameter || All movement information and hints for [[Bot|Bots]] in the map.
|-
|-
| [[CFG]] || Released with program || Information sued to configure a programs options
| [[CFG]] || Released with program || Information used to configure a program's options
|-
|-
| [[VCD]] || [[FacePoser]] || All NPC interaction and sounds for 1 scene as made by faceposer
| [[VCD]] || [[FacePoser]] || All NPC interaction and sounds for 1 scene as made by faceposer
Line 52: Line 58:
| [[Hammer]]* || <Source SDK>/bin || To edit and create maps
| [[Hammer]]* || <Source SDK>/bin || To edit and create maps
|-
|-
| [[Vbsp]]* || <Source SDK>/bin || Creates physical spaces and entity properties
| [[Vbsp]]* || <Source SDK>/bin || Compiles physical spaces and entity properties
|-
|-
| [[Vvis]]* || <Source SDK>/bin || Calculates visiblitiy
| [[Vvis]]* || <Source SDK>/bin || Compiles all calculations for visiblitiy
|-
|-
| [[Vrad]]* || <Source SDK>/bin || Creates and applies lighting effects
| [[Vrad]]* || <Source SDK>/bin || Compiles and applies lighting effects
|-
|-
| [[Glview]] || <Source SDK>/bin || View sinformationn in prt files
| [[Glview]] || <Source SDK>/bin || Viewing the informationn in prt files
|-
|-
| [[Game Directory#Using VConfig to set the game directory|VConfig]] || <Source SDK>/bin || Configures game setups for Hammer
| [[Game Directory#Using VConfig to set the game directory|VConfig]] || <Source SDK>/bin || Configures game setups for Hammer
Line 68: Line 74:


''* indicates files/programs thats should be the most familiar.''
''* indicates files/programs thats should be the most familiar.''
While knowing them all is helpfull its not required. Its best to learn as you go, know what the possibilities are then find out how to use them when it comes time to need them.


==Start to Finish==
==Start to Finish==
Taking a level from start to finish is a difficult process and is often the hardest thing to do. Developing a working level requires a breakdown of steps to consider and procede through. The key though is not forgetting to consider what decisions are going to have to be made and what decisions have been made earlier. Flowing from one stage to the next will ensure a compelte feeling design and expidite the process. Hammer isn't a blind development tool, have an image an picture a plan. Without one lots of time will be lost to accomodating changes and altering whats already been made. Start with a pencil and paper and work all the way up.
Taking a level from start to finish is a difficult process and is often the hardest thing to do. Developing a working level requires a breakdown of steps to consider and procede through. The key though is not forgetting to consider what decisions are going to have to be made and what decisions have been made earlier. Flowing from one stage to the next will ensure a compelte feeling design and expidite the process. Hammer isn't a blind development tool, have an image an picture a plan. Without one lots of time will be lost to accomodating changes and altering whats already been made. Start with a pencil and paper and work all the way up to final product. Images on the right correspond to an example of the process being followed.


===Concept===
===Concept===
...
A map needs a Theme, a Storyline, and Key Points before development can begin. Start with a blank piece of paper. First write down what game the level is for, then write down what the level is. Is it a hostage map, is it a deathmatch arena, or is it point control? On top of that, where is it? Is it in Iraq, is it on the moon, or is it a bunker being stomred by nazis? Write down what the user will be trying to do when they play the level. These three form the theme, a counter strike hostage map based in las veags for example. Next comes the biggest question of all, why? What is the players motivation, what is the storyline of this level. Is Gordon freeman still fighting for freedom from opression, is your mission to defuse the bomb under parliment before it explodes, or is it just to kill everything moving around. Storyline can take as much space as needed but the more the better. not having sufficent ideas behind your storyline often leads to weak designs that are no fun.


===Evaluation===
===Evaluation===

Revision as of 12:52, 5 November 2006

I get short breaks and occasional times to work on this at work and school, you'll probably see a lot of tiny updates to this but this is my way of transproting documents under development between work, school, and home. TH wiki syntax gets difficult to read and understand without the preview button :). I'd appricate any advice or suggestions you have go in talk section and that you do not modify or move any content on/from/to this page, its a constant WIP untill it gets moved to another location, then feel free to edit the article. I just wanna keep my sandbox my work page.


This is a personal page on my own namespace. If you have anything to add, questions, comments, or managed to find something I didn't, please post on the talk page instead. Thanks!

Designing a Level

(this section will be the Level Design article once compelte)

Template:Int lvl design

Introduction

Level design begins deep where that first spark of inspiration comes from. It has many forms to take with a lot of work to be done before, during, and after Hammer has been loaded. Hammer is a tool for level design, it allows the creation, design, and building of entire levels for the player to explore; thus, a deeper understanding of the level design process would allow the use of Hammer in the most effective way. Hammer makes the level it should not make the idea. Theres lots to learn about Hammer, but theres almost as much to learn about why its used and the process using it takes, what other programs help and where Hammer sits in the level design process.

Whats Involved

Levels are not self contained entities. The common misconception of thoose begining to learn level design is that you start with a .vmf and end with a .bsp. They need textures and models, they need compiling and cubemaps, they need lots of things. Making a level does not require one file and will never leave just one file. The following is a rundown of exactly what files and programs you'll meet and how thier important. Some are optional, others only appear when an error occurs.

File Type Creation Purpose
VMF* Saving in Hammer The source file for any map, contains all brushes entities and properties
VMX Saving in Hammer A backup version of your .vmf should anything go wrong with the original
GCF* Offical Release Contains all original content for the game
FGD* Released with game/mod Hammer's reference guide of all the properties of entities and how to use them.
MDL Released with game/mod A 3D model that can be placed inside of the level
VMT Released with game/mod The properties and name of a texture used in the level
VTF Released with game/mod The physical appearance of a texture
BSP* Compiling The final version of your map that can be run in game
AIN Compiling All movement information and hints for NPCs in the map.
LOG Compiling The entire compile log of all the compilers run on the vmf
PRT Compiling Provides information about leafs and thier interaction
PTS* Compiling with errors A helpful guide for finding leaks
NAV In game parameter All movement information and hints for Bots in the map.
CFG Released with program Information used to configure a program's options
VCD FacePoser All NPC interaction and sounds for 1 scene as made by faceposer
RES Manually Detials all custom resources used inside the level


Program Name Where Purpose
Hammer* <Source SDK>/bin To edit and create maps
Vbsp* <Source SDK>/bin Compiles physical spaces and entity properties
Vvis* <Source SDK>/bin Compiles all calculations for visiblitiy
Vrad* <Source SDK>/bin Compiles and applies lighting effects
Glview <Source SDK>/bin Viewing the informationn in prt files
VConfig <Source SDK>/bin Configures game setups for Hammer
GCFScape* Here Viewing and extraction of files from a gcf
Vmex Here Disputed program for converting a bsp into a vmf

* indicates files/programs thats should be the most familiar.

While knowing them all is helpfull its not required. Its best to learn as you go, know what the possibilities are then find out how to use them when it comes time to need them.

Start to Finish

Taking a level from start to finish is a difficult process and is often the hardest thing to do. Developing a working level requires a breakdown of steps to consider and procede through. The key though is not forgetting to consider what decisions are going to have to be made and what decisions have been made earlier. Flowing from one stage to the next will ensure a compelte feeling design and expidite the process. Hammer isn't a blind development tool, have an image an picture a plan. Without one lots of time will be lost to accomodating changes and altering whats already been made. Start with a pencil and paper and work all the way up to final product. Images on the right correspond to an example of the process being followed.

Concept

A map needs a Theme, a Storyline, and Key Points before development can begin. Start with a blank piece of paper. First write down what game the level is for, then write down what the level is. Is it a hostage map, is it a deathmatch arena, or is it point control? On top of that, where is it? Is it in Iraq, is it on the moon, or is it a bunker being stomred by nazis? Write down what the user will be trying to do when they play the level. These three form the theme, a counter strike hostage map based in las veags for example. Next comes the biggest question of all, why? What is the players motivation, what is the storyline of this level. Is Gordon freeman still fighting for freedom from opression, is your mission to defuse the bomb under parliment before it explodes, or is it just to kill everything moving around. Storyline can take as much space as needed but the more the better. not having sufficent ideas behind your storyline often leads to weak designs that are no fun.

Evaluation

<Does it work?>

Construction

<how to go about making it>

Re-Evaluation

<now you can see it, is it right? is it FUN?>

Releasing

<getting it ready for everyone else>

Mechanics

<making the map do what you want and how important it is>

Gameplay

<working you map for the game your playing>

Conclusion

<something deep and meaningfull>



Hammer in Depth

(this section will be the Hammer in Depth article once compelte)


Template:Int lvl design

Introduction

Now the why has been covered lets get deeper into the how. While all the menus and buttons and functions are well documented its not often clear what tool you'll need. You want a slope, should you carve, vertex manipulate, split, or even use a primitive? All will work but it becomes a trick to know which tools to use where and why.

Todo:  guide the user through the toolbar documentation, recomend tools and procedures

Conclusion

<something deep and meaningfull>

Misc

This section aims to go through Valve Hammer Editor and show you whats availble, the tools and the processes you follow to get things done including what the tools are being used for, and the best ways to use them. While all the possible views, tools, and options are documented elsewhere this is the guide of where to look for them and how and when to use them. This is more than just how to use Hammer, its why your using it and what its doing when you take each step. This is important to know as understanding the reason is the best way to reach the goal.