Primero debes descargarte el valve hammer editor. Si teneis el steam no es un problema pero la url q yo usaba ya no existe. Asi q tendreis q buscaros la vida. Tambien podeis buscarlo en la carpeta “worldcraft†en el CD del HL pero... Esa version es muy antigua y ni siqiera tiene OpenGL
El hammer en cuestion es una editor de mapas “pesado†muy cansino y no demasiado intuitivo pero en fin....
Abrid el hammer. Os pedira q lo configureis (si le habeis dixo q no ir al menu tools y buscad options)
Poneos en la pestaña “game configurationsâ€:
Configuration / Edit / Add / (Nombre q te de la gana)
Game Data Files / Add / (Si tienes la ultima version del hammer (el 3.5 me paise) iros a “C:\Archivos de programa\Valve Hammer Editor\fgd\half-life\halflife.fgdâ€) si no buscad en la carpeta del half-life)
Game excutable directory / browse / (c:\sierra\half-life)
Mod directory / browse / (c:\sierra\half-life\valve)
Game directory / browse / (c:\sierra\half-life\valve)
RMF directory / browse / (pon la ruta donde qieras q se pongan los diseños del mapa)
Explicacion:
Game configurations: Esto engloba el entorno de trabajo del editor y donde este va a buscar arxivos
Configuracion: Un nombre para la configuracion q lo diferencie de los otros nombres
Game data files: Son las “entidades†q va a usar el editor
Game executable directory: Mira ni la mas remota idea
Mod directory: El directorio del mod creo q su funcion es q el editor abra esa carpeta por defecto cuand le des a abrir a buscar arxivo de sonido, etc.
Game directory: Muy importante por q en caso de q el mod no tenga un arxivo el editor buscara uno en esta carpeta.
RMF directory: Aki van los diseños sin compilar (Es decir sin ser convertidos en una arxivo q el HL pueda leer como mapa)
Poneos ahora en la pestaña “build programsâ€
configuration: La q habeis puesto antes
Game executable / browse / (c:\sierra\half-life\hl.exe)
CSG executable / Browse / (c:\arxivos de programa\valve hammer editor\tools\qcsg.exe)
BSP executable / browse / (c:\arxivos de programa\valve hammer editor\tools\qbsp2.exe)
VIS executable / browse / (c:\arxivos de programa\valve hammer editor\tools\vis.exe)
RAD executable / browse / (c:\arxivos de programa\valve hammer editor\tools\qrad.exe)
placed compiled... / browse / (c:\sierra\half-life\valve\maps)
Explicacion:
Build programs: Esto es solo para la compilacion del mapa es decir transformarlo en una arxivo q pueda leerlo el HL.
Busca la pestaña. Textures/ add wad y buscad en c:\sierra\half-life\valve el paquete de texturas halflife.wad
Game executable: el ejecutable del HL
CSG executable: Una herramienta q configura el mapa (No se q pa q sirve)
BSP executable: convierte el arxivo *.rmf en un arxivo q entiende el HL *.bsp
VIS executable: Optimiza el mapa para q no xupe CPU
RAD executable: Es la iluminacion del mapa.
Placed compiled...: El lugar donde se colocan los mapas compilados
Ya teneis el hammer preparado. Ahora hay q empezar a usarlo.Cierra las opciones dandole a aply, close. Haz clic en file / new.
Necesitas una referencia para el tamaño de las habitaciones, vamos a crear una entidad donde el jugador hara “spawnâ€.
Busca un icono con forma de bombilla a la izqierda. Ahora en la derecha busca la palabra categories. Tiene dos cajas de texto desplegable, una debe poner entities y la otra (la segunda) es en la q vas a buscar info_player_start. Ahora vete al cuadro de arriba a la derecha (plano 2d top) y haz clic. Pon la entidad donde qieras y pulsa intro.
Tocan las paredes. Selecciona la caja q hay debajo de la bombilla en el menu de herramientas de la izqierda. ahora arrastra en la seccion Top del mapa 2d para crear una caja alrededor de la entidad info_player_start. Hazla muy grande.
Vete a side y agranda la caja para q qepa la entidad info_player_start (debe sobrar un poqito). Ahora pulsa intro. La caja se hara solida y la linea q antes era discontinua se hara continua.
Vamos a ponerle texturas. Selecciona la caja. Y busca en la derecha en la categoria textures “babtech6â€. Ahora vamos a la parte izqierda. En la tercera seccion puedes ver tres cajas coloreadas estas se usan para las texturas. Primero debemos seleccionar la caja q hemos hecho en mapa y ahora la caja del menu de herramientas de en medio. A partir de ahora llamare a esta operacion “colorear todoâ€.
Tienes una cja gigantes solida (o sea no hueca) o sea q hay q hacerla hueca. Selecciona tu caja y en uno de los planos 2D haz clic derecho sobre ella y busca la opcion hollow. 32 q es el valor inicial esta bien.
Ahora vamos a movernos por el mapa en la primera seccion de herramientas de la barra de herramientas de la derecha hay un icono con una camara haz clic. Vete a la vista 3d ahora te puedes mover por ella.
Vamos a meter una entidad light (o sease luz) en el cajoncito. Haz clic en la bombilla y busca light por el mismo sistema del info_player_start (con q le deis a la l una vez selecciones el menu desplegable bastara). Ponla en un punto elevado. Ahora seleccionala y pulsa alt-enter. Tienes un nuevo menu puñetero en guiri. Busa brightness y dale a pick color selecciona el color menos apropiado y q mas odies pero q no sea negro. El cuarto valor q aparecera sera la luminosidad ponle 300. cierra el cuadro.
Ahora vamos a crear una tonteria necesaria en todas los jodios mapas menos en MP. Una entidad suit (o traje de proteccion). item_suit Ponla encima de la entidad info_player_start pero q la este tocando. Ahora vete a las propiedades vete a la pestaña flag y selecciona short logon si no haces esto cuando cojas el traje se tirara media diciendote q has cojido un traje de proteccion. Ahora pon la entidad dentro de la entidad info_player_start. No esta mal has conseguido hacer una caja con una luz perra leyendo un tocho gigantesco.
Ahora vamos a meter un zombie pa fastidiar un poco. Crea una entidad monster_zombie.
Vamos a compilarlo. En la barra de herramientas de arriba el ultimo boton (antes debes guardar tu grandiosa obra de arte abstracta):
Aditional paremeters (paremetros adicionales). Escribe -dev para meterte en el modo depuracion
CSG,VIS,RAD,BSP en modo normal. (Don't run game debe estar desactivado) listo tienes un mapa del HL
Diccionario de entidades:
Esto es un diccionario de entidades... bueno de las q me se. Si puedo lo prolongare en el futuro (el caso es q puedo. Traduzco: Si no me pesa el culo lo prolongare en el futuro...)
aiscripted_sequence: Bueno es una entidad q fuerza a un monstruo a moverse: Tiene en todo momento la IA activa. O sea q no la uses si el monstrou te persigue o te dispara
ambient_generic: Simplemente un arxivo de sonido a reproducir se puede usar como una radio el sonido en bucle de un ordenador etc...
entidades standar
ammo*: Municion para esa arma (*)
cycler: Un modelo ciclico no se usarlo
cylcer_weapon: El arma escogida reaparece cada cierto tiempo
env_beam: Una entidad “laser†Es decir una linea de colorines usar entidades info_target
env_beverage: genera un refresco de maqina espendedora
env_blood: cada vez q se invoca genera sangre de alien o humana
env_explosion: Adivinalo...
env_fade: nubla la vista al jugador por un color. Se puede especificar el tiempo.
env_funnel: es una tonteria crea un puñado de particulas q van hacia la entidad. Solo se puede usar una vez
env_global una variable global es decir q se puede usar en escenarios encadenados
env_glow: un sprite. Es decir la lucecita de una bombilla fuego humo etc...
env_laser: no se pa q esta por q es lo mismo q una beam aunqe tiene mas opciones. Creo q se usa para la entidad func_turret_laser
env_message: Crea un mensaje recuerdo q una vez consegui q funcionara.
env_render: Nu se q es
env_shake: un bonito terremoto
env_shooter: lanza pedazos de carne, madera metal, cuando se invoca util si se une con env_blood
env_sound: su nombre engaña es el sonido q hara la superficie q pisas
env_spark: crea chispas.
env_sprite: no la uses necsitas usar la herramienta de una pared con una diana y encontrar el wad decals en textures
game_counter: una variable q cuenta cada vez q se invoca cuando llega a su valor activa el target
game_counter_set: cambia el maximo de la variable counter
game_end: Ni repajolera idea como no coloqe los creditos...
game_player_equip: debe ser multiplayer...
saltamos a game_text las las variables de entre medio son pa mapas MP avanzados
game_text: invoca un texto cunado se invoca la entidad
gibsshooter: otra variable clon hace lo mismo q env_shooter
info_bigmomma: Es una entidad de IA para el bixo ese grande del planeta xen q tiraba headcrabs chiqititos...
info_intermission: No lo he probado
info_landmark: Se usa para transiciones entre dos escenarios. Solo single
info_node: Una de las entidades q mas vas a usar esta entidad son las rutas q usaran los enemigos (y aliados) para seguirte
info_node_air: Esta entidad es igual al info_node pero las usan los animales acuaticos y voladores
info_null: Ni idea
info_player_coop: Aki apareceria un jugador en un juego cooperativo es decir un server con personas q juegan la partida singular del HL no es sugerible q haya mas de 8 personas
info_player_deathmatch: Aki aparecen los jugadores en los mapas multijugador
info_player_start: aki empieza el jugador en la partida single.
info_target: Esta entidad es una entidad de posicion las otras entidades la usan de objetivo. Por ejemplo se usa para poner el principio y el fin del laser haciendo 2 de estas entidades
info_teleport_destination: Este es el destino de una entidad de teletransporte
items... Bueno es simple algunos sirven de decoracion y otros son utiles en el juego
light: Una luz estandar
light_spot: Simula una linterna
light_environment: Una luz q se utiliza en espacios abiertos donde has usado la textura “sky†(cielo en guiri)
monster... Ta claro no? Solo voy a poner los mas raros
monster_bigmomma: Necesita entidades especificas llamadas info_bigmommas si no su vida es de 100 o por ai una miseria...
monster_cockroach: una cucaracha
monster_flyer_flock: Son un grupo de aliens voladores q se usan para decorar
monster_furniture: Entidad decorativa debes especificar el mueble. Este no es solido
monster_generic: Sirve para especificar el aspecto de un monstruo (por ejemplo si qieres poner un sargento sin hombres alrededor necesitas usar esto)
monster_grunt_repel: ¡Q no te engañe el nombre! Esta entidad no es un grunt q baja por un repel si no la cuerda de este
monstermaker: Hace “spawns†de una clase de monstruo
multi_manager: Una herramienta complicada pero en fin haya voy.
Crea una entidad y vete a sus propiedades busca un boton desactibable llamado smartedit y haz clic
deberia qedar esto
Ahora rellena el campo key con la plabra “name†y value con una palabra q te interese depues haz clic en add. Bien esto era el nombre de esta entidad. Puedes poner en la parte key entidades q ya hayas echo en el mapa y en value el intervalo de retardo en segundos q tardara esta en ser invocada puedes añadir todas las q qieras. Esto es util para por ejempplo hacer q una pared se rompa y seguidamente slaga volando un marine a la vez q un alien_grunt hace una animacion de lanzarlo por ejemplo.
Multisource: Os habeis fijado q muxas entidades tienen un campo llamado master? Pues bien esta entidad es un master y ella solita escanea todas las entidades q la tienen como target cuando todas estas entidades han activado el multisource este se desactiva y todas las unidades en las q pusiste en nombre de la multisource en el campo master son utilizables.
path_corner: Una entidad de seguimiento estandar. Se usa en func_trains y env_beams por regla general
path_track: Esta se usa en los trenes q se pueden especificar su velocidad
player_loadsave: Pues eso carga la ultima partida guardada
Playerweaponstrip: Una curiosa utilidad q “roba†todas las armas al jugador
scripted_sentence: Haze q una entidad “hableâ€. se necesita modificar un arxivo te texto. El arxivo senteces.txt q esta en la carpeta valve\sounds. Si no lo encuentras tendras q descomprimir el arxivo pak0.pak.
scripted_sequence: El monstruo esta “ciego†solo espavila cuando le disparan o cuando termina la orden.
Speaker: simula un altavoz con anuncios aleatorios estos suenan en todo el mapas
target_cdaudio: carga esa pista del CD
trigger_auto: Si tienes una entidad en el mapa y qieres q se accione sola (o bien por q qieres q se active al iniciar el mapa o bien por q qieres q se activa al desbloqear su master) esta entidad es la unica q lo hace
Nota: No todas las entidades necesitan q se les invoqe para activarse
trigger_camera: Crea una camara no fisica q cuando se acciona el jugador cambia su vista actual por esta.
trigger_changetarget: cambia el objetivo de una entidad. Se puede usar por ejemplo para hacer un cambio de vias
trigger_relay: la entidad se repite una y otra vez y no es por q haya tomado gazpacho...
weapon_... Armas muxas armas
weaponbox: esas cajitas q aparecen en el planeta xen con municion
world_items: Sirve para usar una entidad item en varios mapaas. No se usarla
xen_plantlight: una luz del planeta xen en forma de planta debes crear una entidad light y ponerla de traget de la planta para q cree luz
xen_hair: un pelo de la napia del planeta xen
xen_tree: cuando lo tocas te pega un viaje de agarrate y no te menes
xen_spore: Cuando de activa lanza esporas
Listo las entidas estandar estan alfabeticamente listadas ahora les toca a las entidades q se crean a partir de muros. Crea una cajita estandar dentro de tu mapa haz clic derecho sobre ella y selecciona tie to entity.
Nada a seguir con el diccionario
button_target: es un objetivo rapido es autoactiva cuando el master se desbloqea
env_bubbles: crea burbujas
func_breakable: Una entidad q se puede romper si la usas para q se rompa por trigger asegurate de q pones una func_wall en medio para q la IA no se ponga a dispara a la ventana cuando te vea.
func_button: un boton de toda la vida usa texturas con un +0* delante y asegurate de q al lado de esta haya una con un +a* delante
*el nombre de la textura de las dos debe ser el mismo
func_conveyor: os juro q hace 2 años los sabia...
func_door: una puerta q va hacia una direccion especifica pero no hace rotacion aegurate de hacer la entidad un poco mas grande por donde vaya a abrirse para q no se vean sus restos cuando se active
func_door_rotating: ¡Si! por fin voy a explicaros la textura origin. Esta puerta tiene un “eje†q es por la q la puerta giraray debe estar texturizado con una especial llamada origin
¿te has fijado en es textura verdecilla? Pues aparte de la puerta esta otra cajita ocn esta textura q es la q sirve para q rote en el punto q tu qieres.
func_friction: Simula resbalacion o ralentizacion en la superficie.
func_guntarget: no se
func_healthcharger: actua de “boton†cuando se pulsa recarga tu vida
func_illusionary: esta entidad no es fisica. Qiero decir la textura se ve pero el jugador puede atravesarla.
func_ladder: entidad invisible actua de escalera haz una func_wall delante para q no escales el aire...
func_monsterclip: los monstruos no pueden tocar esta entidad “prefieren†qedarse donde estaban
func_mortar_field: no se sirve para un mortero normal o un grafico para apuntar.
func_pendulum: esta claro no? No te olvidis de la textura origin
func_plat: una plataforma q sube cuando te subes a ella y baja cuando te sales
func_plat_rotating: no te olvides de la origin
func_pushable: una silla un refreso.. cosas q se pueden empujar
func_recharge: un func_healthcharger pero para el traje de proteccion
func_rot_button: normalmente se usa para las valvulas. Necesita origin
func_rotating: se usa para ventiladores cuchillas etc.. origin necesario
func_tank: un tanqe q usa balas. Mata a todo lo q se mueve. Las balas salen por la textura origin. Para q parezca q un soldado la controla. Crea un monster_human_grunt en estado prisoner y en trigger_condition pon death despues en trigger_target el nombre de la func_tank
func_tankcontrols: usala si qieres hacer un func_tank o func_tanklaser manejable.
func_tanklaser: un tanqe mas psicodelico. Origin necesario
func_tankmortar: no se usarlo se q necesita origin y un info_target... creo pero aun asi no consegui demasiado.
func_tankrocket: mi favorito sobre todo cuando no me apunta a mi XD
func_trackautochange: sirve para un cambio de vias automatico
func_trackchange: cambio de vias
func_tracktrain: un tren q usa railes o entidades path_track
func_train: una entidad q se mueve por path_corners util para ascensores y puertas de movimientos complicados
func_traincontrols: para controlar un tren
func_wall: Sirve para optimizar el mapa crear escaleras o cristales
optimizar el mapa: esto es mas util en el HL2 q en el primero. Tienes una pared en medio de una habitacion si la haces entidad esta pillara menos fotogramas pero mas r_speed (latencia o lag) asi q cuidado.
Escalera: busca una entidad con un { delante en render mode ponele solid y en fx amount 255
Cristal irrompible: render mode en texture fx amount para establecer la trasparencia mientras mas bajo mas transparente
func_wall_toggle: esta pared se activa y se desactiva es util para “engañar†a la IA cuando haces una entidad func_breakable
func_water: MUY IMPORTANTE. Creala con texturas con un ! Delante si no el HL se colgara
game_zone_players: otra entidad pal multiplayer ni idea
momentary_door: crea una puerta q se va cerrando lentamente
momentary_rot_button: va abriendo una puerta momentary lentamente. Cuando la sueltas la puerta empieza a cerrarse
los triggers hechos con bloqes son especiales es necesario “tocarlos†para q se activen aunqe si bien se pueden poner muxos de ellos para q se activen tambien al usarlas de target otra entidad
trigger_autosave: guarda la partida solo se usa una vez. Se activa cuando la toca el player
trigger_cdaudio: pista de CD al tocar la entidad
trigger_changelevel: hace un salto a otro nivel se necesita un info_landmark. La entidad changelevel debe ser identica a la del otro mapa y el info landamark debe estar en el mismo sitio. Si lo pones mal el jugador aparecera en la pared.
Ademas de lo anterior se debe establecer el nombre del mapa (no qivocarse con el nombre del arxivo compilado)en map/ map properties. Poner en title el nombre ( el mismo del arxivo compilado) y en map team list debes poner la misma palabra en los dos mapas
trigger_counter: Cuando otras entidades lo han activado un determinado numero de veces este invoca a su target
trigger_endsection: solo se q cuando lo uso se cuelga el HL
trigger_gravity: es la gravedad del mapa
trigger_hurt: cuando el jugador esta dentro de ella le hace un determidado daño cada segundo
trigger_monsterjump: cuando el jugador lo toca sale volando
trigger_multiple: cuando el jugador la toca se activa una entidad.
trigger_once: cuando el jugador la toca esta invoca una entidad pero la entidad trigger_once desparece y ya no es utilizable
trigger_push: creo q empuja al jugador.
trigger_teleport: teletransporta al jugador a una entidad info_teleport_destination
trigger_transition: se cuelga no se pa q es.
Nada ya he terminado la guia de entidades ahora vamos a seguir con la fisica del mapa.
Vamos a copiar los muros de la habitacion 3 veces y a ponerlos adyacentes. Depues vamos a poner al jugaodor y a la entidad suit en una habitacion diferente a la del monstruo y q no sea la q esta en medio.
Este deberia ser el aspecto mas o menos. Ahora vamos a cojer la de enmedio y vamos en top a reducirla a la mitad. Asi creamos un pasillo muy util para poder poner una puerta. Vamos a elegir la textura lab1_door7 y en front vamos a crear una puerta de 64x96. Cuando arrasrtemos la nueva caja para darle forma os fijareis de q en la parte de abajo a la derecha unos valores se cambian uno es el tamaño del objeto y el otro su posicion en el mapa. Ahora tenemos un problema la caja hace saltos en su tamaño de 64 en 64 o sea un cojazo por q como vamos a poner 96 si solo se puede 64 o 128 pues bien en el menu de arriba a la izqierda estan las herramientas de grig (o maya) hacemos clic en la q tiene un menos celeste. Ahora los saltos son de 32 y 32 o sea lo q necesitamos ahora debemos en top poner un tamaño de un cuadro aproximadamente. Tenemos una puerta con una textura un tanto aletoria asi q tenemos un problema.
vamos a tener q hacer uso de una herramienta q nos permite mover las texturas a nuestro antojo pero antes persionad shift-l para activar el texture lock q hace q cuando movamos una entidad su textura qede fijada y se mueva con la puerta. En el menu de la izqierda hay una caja de colorines haz clic en ella te saldra una nueva ventana slecciona la parte frontal de la puerta. En la seccion shift del nuevo menu cambia los valores hasta q la textura se ajuste
yata ahora usa la camara para dar la vuelta a la puerta veras q esta tambien esta deforme asi q selecciona la herramienta de puntero y haz clic derecho sobre ella. Has copiado la otra textura. Y ahora se ve bien. Ahora busca la textura steel y haz la operacion en la parte de la izqierda derecha arriba y abajo de la puerta para q tengan una textura mas razonable. Pega la puerta al suelo ( por supuesto desactiva la casilla de aplicar texturas del menu de la izqierda). Esta debe estar centrada a la habitacion. Ahora vamos a crear paredes a su alrededor. Usa la herramiento aplicar texturas haciendo clic izqierdo sobre una pared para cojer una textura. Desactiva la herrramienta. Crea una pared como esta.
Ahora selecciona la puerta. Te costara un poco asi q lo mas sensto es q muevas la pared a la izqierda una casilla. Selecciona la puerta y ponal en la pared. Ahora hazl clic sobre la puerta en cualqier plano 2d y busca la option carve. Listo has hecho un agujero en la pared. Pero si lo dejaramos asi cuando la puerta se moviera se veria en todo momento asi q tenemos q hacer la pared mas grande
y deberia qedar asi. Ahora vamos a convertir la puerta en una entidad func_door. Seleccionala y haz clic derecho despues en tie to entity busca en class func_door. En la opcion angle pon up (debes repetirlo una vez). Listo ya tienes la puerta. Aunqe no estaria mal q en el mapa 2d front la estiras un cuadro hacia arriba para q no se vea cuando se suba. Tenemos un problema y es q hay dos pedazo de paredes q tu player no puede pasar asi q vamos a hacer q pueda pasarlas. Si sleecionas una de las 2 cajas grandes esta se selecciona entera lo cual es un problema asi q haz clic derecho y en ungroup listo ahora tendras q cojer la caja del pasillo y desagruparla. Ahora coje una de las dos paredes q hay en el pasillo q dan a las cajas grandes. Agrandalas un poco en top y utiliza la opcion carve
y suprimela tenemos un problema dos pedazos agujeros negros en el mapa
estos son los llamados leaks o fisuras. Sus problemas si hay una leak UNA sola en el mapa TODA la iluminacion del mapa se va a la mierda la IA no responde bien los FPS se van a la porra y ni te cuento los r_speeds. Asi q pega las paredes laterales del pasillo a las paredes de la caja grande para q las fisuras desaparezcan. Repite toda la operacion con la otra caja grande. ¡A si casi se me olvida pon dos luces en el pasillo una a cada lado de la puerta y una en cada caja grande. Compilalo y observa tu obra.
LEAKS como encontrarlos:
En la ventana de compilacion en la parte q pone BSP busca leak.
Te habras dado cuenta de q el zombie no puede seguirte en cuanto cruces la puerta este se queda pavo donde estaba y esto es por q no as creado info_nodes debes crear estas cositas por todo el mapa donde pueda haber enemigos claro. Vamos a crear una y despues vamos copierlas unas 30 veces (es broma) creala un poco por encima del suelo algo asi
bien ahora copiala y crea otra dejando dos cuadros de diferencia pero asegurate de q esten a la misma altura.
Un truqito para evitar tener q poner la altura te todos los nodes vete al menu map y en entity report selecciona todas las info_nodes y dale a mark ahora solo tienes q poner bien la altura deberia qedar algo asi
bien ahora vamos a forzar a otro mostruo zombie q vas a crear y q le vas a poner de nombre harbie a q vaya hacia tu habitacion. Necesitamos una entidad aiscripted_sequence en medio de tu habitacion esta si debes ponerla a la altura del suelo. Ahora debes poner en target monster harbie. Por supuesto presupongo q en la otra habitacion hay un zombie nuevo con el campo de sus propiedades name establecido como harbie. Ahora en las propiedades del aiscripted_sequence busca el ultimo campo y ponlo en ambush y en el campo de arriba (move to position) ponlo en walk. Ahora crea un trigger_auto q tenga de target la aiscripted_sequence. Listo compila el mapa y mira como el monstruo ahora pasa por la puerta y se va ti con mu mala uva.
Pero asi el mapa qeda soso a menos q solo te qieras dedicar a correr vas a tener q ponerte a ti mismo una weapon shotgun y 2 ammo_buckshot. Listo ahora vamos a hacer q llegado a un punto se apaguen las luces. Crea un bloqe con la textura aaatrigger justo antes de entrar en la segunda caja su altura debe ser la del jugador y su anchura debe aguardar casi toda la habitacion. Crea en una entidad trigger_once por el medio tie to entity. No te precocupes esta pared es invisible cuando el jugador la toqe automaticamente se apagaran las luces, pero para q haga eso primero debes seleccionar la luz de la caja y la del pasillo y ponerle de nombre luz. Ahora en el trigger_once ponle de target luz y yata. Compila para ver el resultado.
Bien pero asi el mapa qeda muy soso con una sola textura excepto la de la puerta. ¿Como mejorarlo? Muy facil primero vamos a buscar una textura q comience por wall. Tenemos un monton de paredes pero como nuestro mapa no es a medida solo podemos aplicar las menos decoradas. Elige una. Esta textura sera para los laterales del mapa. Usa la herramienta aplicar textura para poner esa textura en todos los laterales. Ahora vamos a hacer una busqeda de texturas a partir de la textura wall elegida por ejemplo yo he elegido fifties_wall14v por consiguiente ahora debo hacer una busqeda de textures con el nombre fifties. Y buscar entre las q han aprecido las q tengan ademas de fifties la palabra ceil (o “c†en algunos casos) esta textura la usaremos para el techo. Probablemente una de las cajas no tenga la textura del techo alineada con las otras asi q haz clic izqierdo sobre un techo en el q ya hayas aplicado la textura y despues aplicala a todos los techos. Esto hara q todas las texturas sean simetricas. Ahora en vez de fifties ceil (la busqeda anterior) vamos a buscar fifties fl (o f ) para el suelo.
Ahora vamos a poner un cuerpo muerto de un cientifico (monster_scientist_dead). Ahora vamos a ponerlo pegado a una pared su angle debe ser la direccion contraria a esta y su pose sitting. Ahora necesitamos usar decals asi q en la configuracion del hammer carga el pak de texturas decals.wad
Ahora vamos a buscar la barra de herramientas de texturas para concretar la q tiene una diana. Ahora en texture group (en el sitio donde se buscan texturas) buscamos la ultima. Deberian aparecer un monton de texturas blancas. Selecciona una q ponga blood. Ahora vete a la vista 3D (debes tener la diana seleccionada. Y pega un decal en el cientifico muerto. No podras acertar exactamente sobre el asi q ahora debes mover al cientifico sobre el decal (asegurate de q este esta pegado a la pared pero no sobre ella). Listo compila el mapa pa ver el resultado.
Vaya vaya sobre la marcha del mapa me he dado cuenta de q la entidad aiscripted_sequence no es la mas apropiada para el mapa ya q si te ve este no es va hacia ti y si le disparas tampoco despabila. Esto es por q la entidad aiscripted_sequence carga una IA al monstruo despues de llegar a la posicion indicada asi q tendremos q cambiarla por una entidad scripted_sequence. Es muy facil vete a las propiedades de la aiscripted_sequence y busca en el menu desplegable class la entidad scripted_sequence y y activar la casilla override ai. Ahora bien sigue habiendo un problema y es q el zombie no se va para nosotros, sigue su ruta asi q tenemos q hacerle varios puntos de rutas. Copia la entidad scripted_sequence 1 en cada caja y 2 en el pasillo a la q esta mas cerca del zombie dejale de nombre ai1 y ponle de target ai2 a la siguiente le pones de nombre ai2 y de objetivo ai3 asi consecutivamente. En fin tampoco parece q espavile al verte pero por lo menos espavila al recibir un balazo.
Ahora vamos a hacer una caja mas grande q las otras dos. Esta debe estar pegada al bloqe de los zombies y su altura debe ser 512 pues vamos a usar la textura out_wall7a para las paredes. Ahora vamos a usar la herramienta hollow para hacer hueca la sala. Alinea las texturas de las paredes. Ahora vamos a poner de suelo... pon el q qieras pero en las texturas debes hacer una busqeda con la palabra out. El techo sin embargo estara hecho de una entidad y un muro solido. Coge la textura sky y aplicala al techo. Desagrupa la gran caja y copia el texho mueve el producto copiado hacia abajo q este pegado al techo pero q no este encima y q tampoco traspase las paredes laterales
algo asi. Y ahora aplicale al techo creado la textura {invisible (a todo la caja copiada). Ahora convierte esa caja en una entidad func_wall (control+t). Para q se haga invisible. Debes poner render mode solid y fx amount 255. Listo. Ahora crea en el medio de la habitacion y pegada al techo una luz light_environment. Ponla de color blanco y de luminosidad 300. Ahora vamos a hacer una puerta doble con la textura fifties_dr6a2. Creala en el plano front. Su tamaño debe ser 128x96 (debido a q son dos puertas y no una). reduce la puerta a la mitad y copiala de forma q haya dos bloqes. Ahora en la vista 2d top ponle el tamaño propicio para hace un agujero en la pared q da a la caja de los zombies y utiliza la opcion carve. Por mala suerte tendras q usarla dos veces una por cada puerta. Ahora saca las puertas del agujero y hazlas finas. Ahora vamos a añadirle una textura origin a cada puerta. Mas omenos debeis hacer un palo con la textura esa y pegarla a la puerta.
Tiene q haber una dentro de cada puerta. Cuando la hayas hecho agrupa la puerta con su orgin. O sea selecciona las dos pulsando control y usa la funcion group. Ahora debes convertir cada una en una puerta func_door_rotating
Ahora vamos a hacer una batallita en el patio lo primero es q uses la opcion de crear bloqes y en categories busca en la opcion crates obstaculos para q la IA se parapete (recuerda volver despues a primitive block si no cuando crees un bloqe crearas un crate agrandado o estrchado...
No te olvides de los info_nodes. La composicion de eqipos debe ser. Team: 1 (alien_slave,alien_grunt,alien_slave) Team: 2 (humang_grunt[shotgun],human_grunt[submachinegun],human_grunt[submachinegun+grenades] Si no sabes como hacer esto yo te lo explico:
Pon los crates como qieras. Las unidades deben estar cada faccion a un lado del mapa y en medio una func_wall_toggle q desactivaremos un poco antes de llegar a la puerta. (si no se atacarian a l empezar el mapa) para cambiar el eqipo de los grunts nada mas q tenemos q buscar en sus propiedades la casilla weapons. Recuerda poner los eqipos numericos. Pon en cada eqipo un “squad leader†(debe ser el primer human grunt creado en caso de los soldados y el alien_grunt en caso de los aliens) es una casilla q hay en flags. Listo ya tienes la batallita.
Aki podriamos dar por terminada la guia sin embargo estoy abierta responderos a todas vuestras preguntas (eso si tened en cuenta q no me suelo pasar por internet) y si qereis puedo ampliar la guia para enseñaros a decorar los mapas, hacer ascensores, usar los masters y multimanger hacer escaleras (tanto las q se escalan como las q se pisan) hacer agua etc... Tambien qeria saber si qereis la guia esa para el editor del doom3... :wink: . A si añadido al ver q la gente del foro ya sabe del hammer y es q esta guia no es muy avanzada pero si qieren puedo hacer una guia mas avanzada del HL. Aunqe la forma mas rapida de aprender es practicar...


















