Si estás aquí seguramente ya has leído Introducción a Hammer, sino, sería una buena idea pues hay conceptos que usaré en el texto y que sobreentenderé que los conoces.
Pero tranquilo, este es un tutorial de iniciación, para empezar a tocar y dejar de leer la teoría para aplicarla por primera vez.
Como ya se ha comentado los mapas han de ser cajas cerradas porque el compilador ha de hacer cálculos de luz y fallará (haciendo que la compilación sea mucho más lenta y encima salga el mapa mal) si nos dejamos un hueco abierto.
Así que para esta primera toma de contacto nos aseguraremos de que esto se cumple haciendo un cubo y vaciándolo, de modo que nuestro mapa será lo que haya dentro de ese cubo perfectamente cerrado.
Vamos a empezar seleccionando una textura que se aplicará a todas las caras del sólido. Para tener buenas costumbres usaremos una textura orange, cuyo objetivo explicaré en otro tutorial. Vamos al diálogo de texturas y hacemos clic en “Browse” y en la ventana que sea abre, abajo del todo ponemos en “filter” el texto “dev” y usaremos la textura “dev/dev_measurewall01a”. Hacemos doble clic para seccionalarla ya ahora vamos a crear el cubo.
Para ello iremos a la herramienta parar crear sólidos y nos aseguraremos de que estamos creando un cubo (block). Para ello veremos que a arriba a la derecha tenemos un cuadro de diálogo, en el primer desplegable (“categories”) debemos tener “Primitives” y en el segundo (“Objects”) “Block”. Más adelante veremos que otras formas básicas se pueden crear.
Ahora vamos a la vista “Top” y hacemos un cuadrado haciendo clic y arrastrando. Nos debería aparecer un rectángulo con una línea de puntos de color blanco.
Soltad el ratón y observad como ahora aparecen 9 puntos en las cuatro esquinas y en los puntos medios entre estas. Estos cuadros nos permitirán modificar la forma de nuestro cubo antes de crearlo físicamente en el mundo, si estiramos de una esquina movemos las 2 aristas a las que toca mientras que si estiramos de un punto medio solo moveremos esa arista. Probad un rato pues es algo que haréis mucho. Además tendréis vuestro primer susto - Mi rectángulo ha desaparecido! -. Tranquilos, esto es normal aunque muy molesto, al estar en la fase de definición del objeto y este no estar creado hacer clic en cualquier sitio vacio hará que el hammer entienda que queremos volver a empezar a hacer otro sólido y que el que estábamos haciendo no es lo que queríamos. Probad, hacer un rectángulo en un sitio y luego haced otro al lado en un espacio vacio, veréis como el primero desaparece y solo nos queda el segundo.
Bien, ahora que empezamos a entender como funciona la herramienta de creación de sólidos vamos a seguir con nuestra caja hermética.
Lo primero, fijáos que si solo trabajamos en una de las vistas solo trabajamos con 2 ejes, en el caso de la “top” X e Y, pero en 3D tenemos 3 ejes, nos falta el Z, así que podemos definir el ancho y el alto de la caja pero no su profundidad. Para eso tenemos las otras 2 vistas, “side” y “front” nos permitirán tocar las otras combinaciones de ejes (X y Z para “front” y Y y Z para “side”).
Entonces, para acabar de definir la caja tendremos que empezar a hacer nuestro cubo en una vista y acabar de definirlo con una de las otras 2. Ahora que ya tenemos nuestra caja con el tamaño que queremos (unos 128x128x128 sería una pequeña, poco más alta que un personaje) pasamos a crearla propiamente dicho, para eso hemos de pulsar la tecla intro y entonces las líneas de puntos blancas se habrán convertido en líneas sólidas rojas. Además, en nuestra vista 3D aparecerá nuestro sólido.
Por último vamos a cambiarla ya que cuando creamos una forma básica esta es maciza. Para ello seleccionamos el sólido y en alguna de las vistas 2D hacemos botón derecho encima suyo y del menú contextual buscamos la opción “Make Hollow” (hacer vacio). Acto seguido se nos abrirá una ventana en que nos pide el ancho de la pared, un vamos de 32 es una pared gruesa. Además nos permite poner números negativos caso en que el muro se crea hacia fuera.
Por ejemplo, si tenemos un cubo de 100x100x100 y lo vaciamos, si lo hacemos con un valor de 20 tendremos un cubo de 100x100x100 con unas paredes de 20 dejando un hueco interior de 80x80x80. En cambio, si lo hacemos de -20 tendremos un cubo de 120x120x120 con un espacio interior de 100x100x100.
Bien, ya tenemos nuestra habitación creada, ahora necesitamos crear un poco de lógica.
La primera y necesaria será info_player_start que es la entidad que indica al juego donde ha de aparecer nuestro personaje.

Para ello iremos a la herramienta de entidades y en el cuadro de diálogo la buscaremos. Acto seguido haremos clic en un punto del interior de nuestra caja. En ese momento veremos aparecer 2 líneas verdes en cuya intersección aparecerá una cuadro verde. Esa es la posición que tendrá la entidad y si le damos a intro se convertirá en la entidad que queremos.
Alternativamente podemos poner directamente una entidad en el mapa usando la vista 3D y haciendo clic en el sitio donde queremos que apareza. Además en este caso no hay que darle a intro, aparece directamente.
La mayoría de entidades tienen un modelo o una imagen asociada que nos ayuda a hacernos una idea de que es o de lo que ocupa. En el caso de info_player_start veremos un modelo de un ser humanoide con la perilla de Freeman, el cual nos ayudará a saber las proporciones del mapa.
Ahora que tenemos la entidad en su sitio vamos a asegurarnos de que está bien puesta. Para que no de error la entidad info_player_start no puede tocar ningún sólido. Para asegurarnos además de que esto no ocurra la dejaremos volando una unidad por encima del suelo como podéis ver en la segunda imagen, el cuadro rojo nos muestra el espacio entre la entidad y el suelo (que se ve como una línea blanca).
Además, podemos decidir hacia donde estará nuestro persona mirando rotando la entidad. Si seleccionamos la entidad y hacemos clic izquierdo los 9 cuadros que antes hemos comentado se convertirán en 4 redondas. Si cogemos una de estas redondas y movemos el ratón rotaremos la entidad. Para más precisión es mejor usar la herramienta “modificar” (control+M) y usar la opción rotate y el eje Z.
Otra entidad interesante para este primer mapa es light. No es imprescindible, pero quedará todo mejor. El proceso es el mismo, seleccionamos la herramienta, en el desplegable del cuadro de dialogo buscamos light y hacemos clic donde queremos que esté la luz, una vez creada veremos una bombilla en nuestro mapa.
Ahora pasaremos a configurarla un poco, la gracia de las entidades es que hacen cosas. Para ver las propiedades seleccionamos la entidad, hacemos clic derecho encima suyo y seleccionamos “Properties”.
En la ventana que se abrirá veremos varias pestañas, nos interesa la primera y ahora concretamente la propiedad de la lista llamada “Brightness”. Los números que salen corresponden a la intensidad de cara color RGB y el último a la cantidad de brillo que genera la luz. Usando la opción “pick color” iremos más rápido y si queremos un color más concreto lo mejor es usar algún programa de edición de imagen y mirar los valores RGB (recordad que van de 0 a 255 de modo que si el programa funciona con % aplicadlo siendo 255 = 100%). Por último, podremos un brillo de 300 que es bastante brillante, y sino, ya iremos ajustando.
Cuando nuestro mapa ya está listo solo nos queda compilarlo. Compilar se refiere al proceso en que se pasa el mapa al formato BSP que es el que usa el juego. Este proceso pasa por diferentes pases como es la construcción de la geometría, el cálculo de luces, etc.
Para compilar el mapa le daremos a la opción “Run” (F9) y se nos abrirá una ventana. Para esta primera compilación dejaremos todo en “normal” y yo recomiendo usar la opción “Don't run the game” para evitar que solo compilar arranque el juego.
¿Porque no arrancar el juego, si quiero probar el mapa? os preguntaréis. Bien, cuando arranquemos el proceso de compilación veréis que aparece una nueva ventana que se llena de texto inintilegible. Bien este texto es el resultado de los pasos de la compilación y nos permitirá depurar y encontrar errores en el mapa.
Cuando acabe el proceso de compilación veremos que aparece una línea en la parte inferior de la ventana que pone “Copy to clipboard”. Este botón lo que hace es copiar el informe de compilación al portapales que nos servirá para encontrar los errores.
Para eso vamos al bloc de notas u otro editor de textos similar (yo uso notepad++) y le damos a pegar. Como veréis aparecerá todo el chorro de texto que antes hemos comentado. Ahora usamos la opción “Buscar” del editor y buscamos “Error”, “Leak” y “Warning”, si no aparece nada tenemos un mapa sin errores, al menos, de compilación. No obstante. el tratamiento de errores lo veremos en otro tutorial.
Ahora ya solo nos queda entrar al juego, dar a la opción “Crear servidor” y buscar nuestro mapa y veremos que tal, en un principio tendremos que encontrarnos con una habitación pequeña con una luz.
Bien, si has llegado aquí puedes decir que ya sabes crear sólidos básicos, vaciarlos y que tienen la base de creación de entidades y configuración de las mismas.