APÉNDICE B:
Propiedades y Flags

Bien, ésta es quizá una de las secciones del tutorial1 que te permitirá hacer las cosas más chulas con Decorate. Puedes, por ejemplo, hacer que tu enemigo tenga un escudo que devuelva los proyectiles, o que sea invisible hasta el momento de atacar, o que posea una invulnerabilidad a todo tipo de daño, salvo el causado por un arma concreta...

Una demostración rápida

Pero lo primero es lo primero. Edita el Decorate del "plasmozombi" que creamos anteriormente (véase la tercera lección) con tu editor de texto favorito. Sitúate justo debajo de la línea en la que se lee, en mayúsculas, MONSTER. Deja una línea en blanco, y añade:

  +Invulnerable
  +Reflective

Guarda los cambios y ejecuta de nuevo el mapa con el plasmozombi. Intenta dañarle con lo que sea: jamás morirá. Pero si le atacas con misiles, plasma o disparos de BFG, además te los devolverá. Esto es sólo una pequeña demostración de lo que puede hacer con los flags de Decorate.

Puedes ver una lista completa de ellos a continuación.

Listado de flags

Antes que nada:

+FLAGNAME establece un atributo.
-FLAGNAME elimina un atributo.

Propiedades físicas

SOLID:
El objeto es sólido y no puede ser atravesado.
SHOOTABLE:
El objeto puede recibir disparos y sufrir daño. Si sus puntos de vida bajan de cero se considerará que el objeto está muerto o destruido, y se mostrarán los sprites correspondientes.
FLOAT:
El objeto puede flotar en el aire; como un cacodemon, por ejemplo.
NOGRAVITY:
El objeto no se verá afectado por la fuerza de gravedad.
LOWGRAVITY:
El objeto sólo resultará afectado por un tercio de la fuerza de gravedad.
WINDTHRUST:
El objeto puede ser empujado por el viento.
HERETICBOUNCE:
Estilo de rebote de Heretic (los objetos sólo rebotan en el suelo).
HEXENBOUNCE
Estilo de rebote de Hexen (los objetos rebotan en suelos y paredes).
DOOMBOUNCE:
Estilo de rebote de Zdoom (como el de Hexen, pero con algunos cambios menores).
PUSHABLE:
El actor puede ser golpeado.
DONTFALL:
El objeto no cae aunque muera o resulte destruido.
CANPASS:
El objeto usará un sistema de detección de alturas y colisiones. ¡Usad este flag con cabeza! Solamente tiene sentido emplearlo en actores y objetos que puedan moverse por ellos mismos. Es necesario para pasar por encima de los puentes falsos de Zdoom.
ACTLIKEBRIDGE:
Necesario para el actor que se usa para crear puentes falsos en Zdoom. Utilícese junto con el flag anterior.
NOBLOCKMAP:
El objeto no podrá ser atravesado por ningún otro, pero él sí que puede atravesar a los demás. Casi todos los proyectiles lo emplean.
NOLIFTDROP:
Cuando el objeto se halla en un elevador típico de Doom no desciende con él.
SLIDESONWALLS:
El actor puede deslizarse por las paredes. Usado para los jugadores y otros actores en movimiento que son empujados contra un muro.

Conducta

AMBUSH:
El monstruo no atacará al jugador hasta que lo vea directamente, aunque haya podido oírlo antes —por ejemplo, si el jugador ha estado disparando en las inmediaciones—. Es similar a la opción Deaf o "Sordo" que suele venir en los editores de mapas.
BOSS:
Los sonidos de alerta y muerte del monstruo se escucharán a todo volumen en cualquier parte del mapa. Además, no se verá afectado por la muerte instantánea causada por la maza de Heretic con el libro de poder activo, ni por el Banishment Device de Hexen. Sólo recibirá una cuarta parte del daño ocasionado por los espíritus del Wraithverge, será inmune al daño indirecto de fuego por la Bloodscourge, contará con resistencia extra al Arco Eléctrico del mago de Hexen, y sólo sufrirá 50 puntos de daño de una explosión por Flechette. Nótese que aunque no estéis jugando a Hexen o Heretic, un monstruo de Doom con este flag influirá en los efectos de las armas que usen atributos de estos juegos.
NOSPLASHALERT:
El monstruo no será alertado por el ruido de las salpicaduras al caer en el agua.
LOOKALLAROUND:
El monstruo puede verte aunque estés de espaldas a él.
STANDSTILL:
Cuando un enemigo no tenga nada más que matar, se quedará quieto en vez de continuar caminando aleatoriamente por el escenario.
QUICKTORETALIATE:
El monstruo atacará a diferentes objetivos en vez de centrarse en uno sólo. El arch-vile, por ejemplo, hace gala de esta conducta.2
DORMANT:
El enemigo u objeto deberá activarse mediante Thing_Activate.
FRIENDLY:
El actor ayudará al jugador contra sus enemigos y no le dañará, salvo que resulte muerto y resucitado por los adversarios. También funciona a la inversa; es decir, si tenéis a un arch-vile como aliado, los monstruos que resucite serán también de vuestro mismo bando.
LONGMELEERANGE:
Si no te alejas al menos 192 unidades del monstruo, éste no usará sus ataques con proyectiles. Útil sobre todo cuando esos proyectiles son poderosos y pueden causar daños en un radio amplio.
MISSILEMORE:
Aumenta la posibilidad de que el monstruo use ataques con proyectiles en lugar de cuerpo a cuerpo.
MISSILEEVENMORE:
Similar que el anterior, pero con mayores probabilidades aún de ataques con proyectiles. Combinando ambos flags se pueden crear enemigos súper agresivos.
NOTARGETSWITCH:
El enemigo nunca atacará a otro objetivo hasta que el actual haya muerto. Justo la conducta contraria a la vista en QUICKTORETALIATE.
ALWAYSRESPAWN (sólo en la versión de desarrollo):
El actor siempre resucitará, aunque el nivel de dificultad del juego no sea Nightmare.
NEVERRESPAWN (sólo en la versión de desarrollo):
El actor nunca resucitará, aunque el nivel de dificultad del juego sea Nightmare.

Habilidades

CANNOTPUSH:
El actor no puede golpear objetos.
NOTELEPORT:
El actor no puede ser teletransportado, o teletransportarse por sí mismo.
ACTIVATEIMPACT:
El actor puede activar eventos de tipo G1/GR al disparar sobre las líneas del mapa correspondientes.
CANPUSHWALLS:
El actor puede activar eventos de tipo P1/PR.
CANUSEWALLS:
El actor puede abrir puertas que no estén bloqueadas.
ACTIVATEMCROSS:
El actor activará líneas con la propiedad de Monster special al cruzarlas.
ACTIVATEPCROSS:
El actor activará líneas con el atributo de Projectile special.
CANTLEAVEFLOORPIC:
El actor no podrá cruzar a otro sector que no tenga la misma textura de suelo.
TELESTOMP:
El actor podrá teletransportarse sobre otros objetos, destruyéndolos en el acto.
STAYMORPHED:
Si el actor sufre alguna transformación, no podrá regresar a su forma original.
CANBLAST:
El actor u objeto puede ser movido mediante un disco de repulsión de Hexen, u otro artefacto de propiedades similares. Este atributo viene implícito en los monstruos y enemigos.
NOBLOCKMONST:
El actor es capaz de atravesar líneas marcadas con la propiedad de Block monsters.
CANBOUNCEWATER:
El objeto puede rebotar en el agua. Normalmente, y a excepción de cuando son capaces de moverse por sí mismos, los objetos son eliminados al caer sobre una superficie con textura de agua u otros líquidos.
THRUGHOST:
El actor u objeto pueden atravesar fantasmas.
SPECTRAL:
El actor o monstruo que tenga este atributo sólo sufrirá daños de proyectiles marcados con este mismo flag; cualquier otro proyectil lo atravesará sin más.
FRIGHTENED:
El monstruo huirá del jugador.
NOTARGET:
Un actor con esta propiedad no podrá ser objetivo de un ataque, salvo que ataque antes a un contrincante. Esto no impide a las criaturas aliadas del jugador atacar a otros monstruos.
NOTIMEFREEZE:
El actor no quedará congelado en el tiempo a causa del power-up Time freeze de Skulltag, ni por el comando de consola freeze.

Defensas

INVULNERABLE:
El actor o criatura es invencible.
REFLECTIVE:
Cualquier proyectil que impacte contra el actor u objeto que posea este atributo rebotará.
SHIELDREFLECT:
Hace lo mismo que el flag anterior, pero sólo por la parte de delante del monstruo u objeto. Los ataques que procedan de otras direcciones —de atrás, por ejemplo— actuarán del modo normal.
NORADIUSDMG:
El actor o monstruo no sufrirá daños indirectos de radio —explosiones, principalmente—.
DONTBLAST:
El actor u objeto no pueden ser empujados por un disco de repulsión de Hexen o similar.
GHOST (sólo para Heretic):
No implica translucencia. Algunas armas no podrán dañar a los enemigos y actores con este flag.
DONTMORPH:
El actor no puede resultar transformado —por ejemplo, convertido en gallina en Heretic—.
NOTELEOTHER:
El actor o enemigo no se verá afectado por el Banishment Device de Hexen u otros artefactos con propiedades similares.
DONTHURTSPECIES:
Previene que el monstruo reciba daños de los proyectiles de otros monstruos de su mismo tipo. Todos los demonios de Doom poseen este atributo.
NODAMAGE:
El actor sigue reaccionando a los daños que supuestamente sufriría en combate, pero es invencible. No le veo la diferencia con el flag INVULNERABLE, la verdad.

Apariencia y sonidos

INVISIBLE:
El actor o monstruo es invisible, y puede moverse frente a sus adversarios sin alertarlos. Obviamente no se mostrará su imagen durante el juego.
SHADOW:
El actor es casi invisible. Debéis especificar también renderstyle Fuzzy.
NOBLOOD:
El actor o monstruo no sangrará al resultar herido.
NOBLOODDECALS:
El actor no dejará en el escenario salpicaduras de sangre al recibir daño. No es necesario asignar este atributo si ya se ha usado NOBLOOD.
STEALTH:
El actor o monstruo será invisible, pero se mostrará fugazmente cada vez que ataque.
FLOORCLIP:
La parte inferior del actor quedará oculta si éste se halla sobre una superficie con textura de agua u otros líquidos.
SPAWNFLOAT:
El actor aparecerá a una altura aleatoria en lugar de sobre el suelo.
SPAWNCEILING:
El actor aparecerá justo bajo el techo.
FLOATBOB:
El actor o monstruo flotará como si estuviese usando el power-up de Heretic Wings of Wrath.
NOICEDEATH:
El enemigo o actor no puede morir congelado.
DONTGIB:
El actor, enemigo o monstruo no podrá ser convertido en un montón de despojos sanguinolentos por techos que aplastan.
DONTSPLASH:
El actor no salpica al entrar en el agua u otros líquidos.
FULLVOLACTIVE:
El sonido de alerta del monstruo o enemigo sonará al volumen máximo en todo el mapa. Este atributo viene implícito en BOSS.
FULLVOLDEATH:
El sonido de muerte del monstruo se escuchará con el máximo volumen en todo el mapa. También viene implícito en el flag mencionado arriba, BOSS.
VISIBILITYPULSE:
La translucidez del actor varía aleatoriamente entre el 25% y la opacidad completa, de forma continua, como si fuese un pulso de invisibilidad parcial.
ROCKETTRAIL:
Deja una estela de humo al moverse, como los cohetes.
GRENADETRAIL:
Deja un rastro como si fuera una granada.
NOBOUNCESOUND:
El sonido no rebota.
NOSKIN:
El actor no puede usar skins. Útil para definir PlayerClasses.
NOPAIN:
El actor recibirá daño, pero nunca reaccionará a él, aunque tenga un PainChance de 255.

Proyectiles

MISSILE:
El proyectil es un cohete.
RIPPER:
El proyectil puede atravesar monstruos y jugadores.
NODAMAGETHRUST:
El actor que reciba el impacto del proyectil no será empujado o golpeado.
DONTREFLECT:
Atraviesa el escudo reflector de monstruos o actores con los atributos REFLECTIVE o SHIELDREFLECT.
FLOORHUGGER:
El proyectil se deslizará por el suelo. Útil para crear columnas de fuego infernal, por ejemplo.
CEILINGHUGGER:
Lo mismo que el anterior, pero por el techo.
BLOODLESSIMPACT:
Normalmente cuando un proyectil impacta contra algún monstruo aparecerá sangre. Con este flag esto se desactiva.
BLOODSPLATTER:
El proyectil generará sangre al golpear a un enemigo que ya esté herido (debe poseer menos del 50% de sus puntos de salud totales para funcionar).
FOILINVUL:
Puede dañar a actores o monstruos con el flag INVULNERABLE, salvo si se trata de jugadores.
SEEKERMISSILE:
El proyectil perseguirá a sus objetivos. Es necesario usar code pointers.
SKYEXPLODE:
El proyectil explotará al chocar contra un techo que tenga la textura de cielo, en lugar de desaparecer como suele ser habitual. Añade realismo.
NOEXPLODEFLOOR:
El proyectil no hará explosión al chocar contra el suelo, sólo quedará detenido.
EXTREMEDEATH:
El impacto del proyectil destruirá completamente al objetivo, dejando de él sólo restos inidentificables (como las explosiones de los misiles del lanzacohetes sobre los zombis).
NOEXTREMEDEATH:
El ataque nunca destruirá completamente a sus víctimas (véase el flag anterior).
BOUNCEONACTORS:
El proyectil rebotará contra otros actores, sin explosionar contra ellos o causar daños.
EXPLODEONWATER:
El proyectil explotará al impactar contra una superficie de agua u otros líquidos.
PIERCEARMOR:
El proyectil causará daño independientemente de la armadura que posea el objetivo.
FORCERADIUSDMG:
El proyectil causará siempre daños indirectos en un radio determinado (daño por explosión), incluso cuando el objetivo posea el atributo BOSS.

Miscelánea

DROPPED:
El objeto desaparecerá para siempre cuando alguien lo recoja.
ISMONSTER:
El actor es un monstruo.
CORPSE:
El actor es un cadáver.
COUNTKILL:
Al morir se suma al contador Kills que aparece tras superar cada nivel. Todos los monstruos, salvo los lost souls, poseen este atributo.
COUNTITEM:
El objeto se sumará al contador Items al final de cada nivel.
NOTDMATCH:
El actor no aparecerá nunca en partidas deathmatch.
DROPOFF:
El actor o monstruo puede caer desde alturas. ¡Todos los jugadores deben poseer este flag activado o no podrán saltar desde alturas superiores a 24 unidades!
ALLOWPARTICLES:
Sólo los "puffs" (impactos de balas) pueden tener este atributo. Permite reemplazar los impactos habituales por efectos de partículas.
FASTER:
El monstruo se moverá el doble de rápido jugando en el nivel de dificultad Nightmare, o si la opción Fast Monsters está activada.
ALWAYSFAST:
El monstruo siempre se moverá el doble de rápido.
NEVERFAST:
El monstruo nunca se moverá el doble de rápido, aunque estemos jugando con la opción Fast Monsters.
OLDRADIUSDMG:
Usa el antiguo sistema de cálculo de daños de radio.
USESPECIAL:
El especial del actor será activado cuando pulses "usar" sobre él.
NOINTERACTION:
El actor es puramente decorativo, y no se verá afectado por las IAs (inteligencias artificiales) de los monstruos o las leyes físicas del juego. A efectos prácticos es como si no existiera. Sólo se le puede mover mediante la acción ThrustThing.
NOCLIP:
El actor puede atravesar paredes.
ICECORPSE:
El actor es un cadáver congelado.

NOTAS...

1 Este apéndice del tutorial ha sido escrito en agosto de 2008 por Doom Missed, y no pertenece al texto original enviado en 2006 por Jack the Ripper. Agradecimientos pues a Doom Missed por su esfuerzo.

2 Supongamos que el arch-vile está irritado con otro monstruo. Ha comenzado a invocar la típica llama de fuego sobre él... Pero en ese momento llega el jugador y dispara sobre el arch-vile. Entonces, el ataque de fuego del arch-vile se trasladará instantáneamente al jugador. Un monstruo sin el atributo +QUICKTORETALIATE, en esa misma situación, tendría que interrumpir sus acciones en curso antes de dedicarse a luchar contra el jugador.


Cumple con el estándar HTMLCumple con el estándar CSSApta para cualquier navegador

Podéis copiar libremente cualquier contenido de esta página. Si se trata del texto o las imágenes, mencionad la fuente (www.arcades3d.net)...