Manual del NGLE
Munición Personalizada
Por Wayne Scales
Traducido por Pemon
Con el comando Customize= tenemos la posibilidad de hacer
muchas cosas. Te voy a mostrar como modificar la munición
del Lanzagranadas.
Abajo la sintaxis que usaremos.
Syntaxis: Customize=CUST_AMMO, SlotOfAmmo, Ammo flags
(AMMO_....), Damage, ShotsForBox, ShotsWithWeapon, Extra,
IdTriggerGroupWhenHitEnemy, DamageForExplosion, Speed,
Gravity, IdAddEffectToAmmo, IdTriggerGroupAtEnd
Esto se ha de introducir en el script en la sección Level.
Field Descriptions (Descripciones del campo)
Campo, SlotOfAmmo= Aquí eliges el slot de la munición
que deseas modificar. Aquí la lista desde la cual puedes
seleccionar:
PISTOLS_AMMO_ITEM
UZI_AMMO_ITEM
SHOTGUN_AMMO1_ITEM (normal)
SHOTGUN_AMMO2_ITEM (wideshot)
CROSSBOW_AMMO1_ITEM (normal)
CROSSBOW_AMMO2_ITEM (explosive)
CROSSBOW_AMMO3_ITEM (poisoned)
GRENADE_GUN_AMMO1_ITEM (normal)
GRENADE_GUN_AMMO2_ITEM (power)
GRENADE_GUN_AMMO3_ITEM (lightning)
SIXSHOOTER_AMMO_ITEM
Campo, Ammo flags (AMMO_....)
Aquí puedes añadir ammo flags para crear diferentes opciones
para diferentes municiones. Aquí están las posibles flags.
Si no deseas usar esta opción escribe IGNORE.
AMMO_PUSH_LARA=
Esta es una bonita opción ya que Lara es empujada hacia
atrás al disparar su arma, como el retroceso con la
escopeta. No deberias usarlo con las pistolas porque no se
vería muy realístico pero con el Lanzagranadas funciona muy
bien. Debes escribir una distancia como valor en el campo
Extra para la distancia de desplazamiento. Las unidades de
distancia son; 1024 = un sector, 256 = un clic.
AMMO_PUSH_TARGET=
Cuando la munición alcanza al enemigo, será desplazado como
si el disparo le haya movido. En el campo Extra escribe la
distancia de movimiento. Las unidades de distancia son; 1024
= un sector, 256 = un clic.
AMMO_SET_GRENADE_TIMER=
Usar solo con la munición de las granadas. Puedes cambiar el
número de segundos requeridos para que explote la granada.
El valor por defecto es de 4 segundos. Debes introducir en
el campo Extra el número de segundos.
Campo, Damage (Daño)
Aquí puedes cambiar el daño causado por la munición.
Nota: esto es
un daño normal, mientras que si esta munición también es
explosiva debes configurar el daño para la explosión en el
otro campo, con el nombre DamageForExplosion (ver abajo)
Valores por defecto:
Valores Máx. por Defecto de la Munición
-----------------------------------
Pistols 1 - 255
UZI 1 - 255
Revolver 21 - 255
ShotGun normal 3 (*6) 255
ShotGun Wide 3 (*5) 1000
GrenadeGun Normal 20 - 255
GrenadeGun Power 20 - 1000
CrossBow Normal 5 - 255
CrossBow Explos. 5 - 1000
-----------------------------------
Nota:
Alguna munición solo tienen 0 daño porqué su daño solo es
para la explosión, en cualquier caso puedes forzar para
ellas un daño común.
* Al contrario de lo que la gente cree la munición wideshot de la
escopeta no es más potente. El daño causado es computado
como una lluvia aleatoria de fragmentos donde las
propiedades de ancho (wide) reducen la cantidad de
fragmentos que alcanza al objetivo. Normalmente este número
es de 5 mientras que la munición normal de la escopeta es de
6, de ahí que la munición normal de la escopeta causa un
daño más inmediato que el del wideshot. La única excepción,
es cuando se trata de un enemigo realmente grande.
Si deseas realmente una potente munición del tipo wideshot,
introduce en este campo un valor de daño y será añadido a la
suma del daño.
Campo, ShotsForBox
Cuando Lara recoge un ítem de munición se la dará de forma
automática una cantidad de balas, en este campo podemos
cambiar esto!
Aquí están los valores por defecto y el máximo que podemos
añadir.
MaxForBox
(Max.PorCaja)
------------------------------------------------------------
PISTOLS_AMMO_ITEM Unlimited (-2) 1000
UZI_AMMO_ITEM 30 - 1000
SHOTGUN_AMMO1_ITEM 6 - 1000
SHOTGUN_AMMO2_ITEM 6 - 42
CROSSBOW_AMMO1_ITEM 10 - 1000
CROSSBOW_AMMO2_ITEM 10 - 255
CROSSBOW_AMMO3_ITEM 10 - 255
GRENADE_GUN_AMMO1_ITEM 10 - 255
GRENADE_GUN_AMMO2_ITEM 4 - 255
GRENADE_GUN_AMMO3_ITEM 4 - 255
SIXSHOOTER_AMMO_ITEM 6 - 1000
------------------------------------------------------------
Nota:
Si deseas que este campo continúe sin cambios, introduce
IGNORE
* Existen razones técnicas (internas del tomb4.exe original)
del porqué algunas municiones tienen un valor máximo que
puedes introducir. Por favor no excedas los límites por que
sino te podrás encontrar con posibles cuelgues u otros
problemas relacionados con el TRNG.
* El valor -1 nos dice que tenemos "unlimited ammo"
("munición ilimitada") pero en realidad esto no es cierto,
porque el valor -1 es lo mismo que el valor IGNORE usado en
el NG_Center. Por esta razón, si deseas poner una cantidad
de balas por caja como munición ilimitada, debes poner otro
valor negativo diferente del -1, por ejemplo -2.
Campo, ShotsWithWeapon
Cuando Lara recoge un arma como puede ser la escopeta, se le
asigna de forma automática una cantidad de munición, quizás
para entender esto podría ser que la escopeta estuviera
cargada. Ahora podemos cambiarlo. Puedes ser malo con el
jugador y no darle balas cuando recoja la escopeta!!!!!
MaxAllowedValue (MaxValorPermitido)
----------------------------------------------------------------
Pistols Unlimited (-2) 1000
Revolver 6 - 255
UZI 30 - 255
ShotGun 6 (normal) 42
CrossBow 10 (normal) 255
GrenadeGun 10 (normal) 255
----------------------------------------------------------------
Nota:
si quieres dejar este campo sin cambios escribe IGNORE
* Existen razones técnicas (internas del tomb4.exe original)
del porqué algunas municiones tienen un valor máximo que
puedes introducir. Por favor no excedas los límites porque
sino te podrás encontrar con posibles cuelgues u otros
problemas relacionados con el TRNG.
* El valor -1 nos dice que tenemos "unlimited ammo"
("munición ilimitada") pero en realidad esto no es cierto,
porque el valor -1 es lo mismo que el valor IGNORE usado en
el NG_Center. Por esta razón, si deseas poner una cantidad
de balas por caja como munición ilimitada, debes poner otro
valor negativo diferente del -1, por ejemplo -2.
El campo Extra
Este campo opcional puede ser usado en ciertas
circunstancias para munición especial. Léete las
descripciones de las constantes AMMO_ para descubrir las
posibilidades del uso de este campo.
Campo, IdTriggerGroupWhenHitEnemy
Cita del Reference:
You can perform a TriggerGroup script command, when this
ammo hit some enemy. If you wish use this feature you have
to type the ID of TriggerGroup script command.
(Puedes introducir
en el script un comando TriggerGroup cuando esta munición
alcanza algún enemigo. Si deseas usar esta característica,
debes introducir en el script el ID del comando
TriggerGroup.)
Nota:
Si no deseas usar un triggergroup, escribe IGNORE
en este campo.
* Cuando el enemigo es alcanzado por la munición, el motor del juego
activará el TriggerGroup que has introducido y se pondrá
como "Found item" (ítem Encontrado) en el índice del enemigo
que es alcanzado por el disparo...
Si quieres realizar alguna ACTION especial que se encuentra en el
trigger group hit enemy, recuerda que debes añadir el flag
TGROUP_USE_FOUND_ITEM_INDEX al trigger exportado. El trigger
action que has colocado en el triggergroup entonces usará el
índice del enemy hit by ammo, en vez del animado que
originalmente habías introducido en el trigger action
exportado. El uso de este método te permite darle funciones
especiales a esta munición.
Campo, DamageForExplosion (DañoPorExplosión)
En este campo podemos configurar el daño causado por la
munición explosiva. Como puede ser por ejemplo, la granada o
el arco con munición explosiva.
Nota: al
personalizar el arco con munición de veneno, puedes usar
este campo para introducer la intensidad del veneno. El
valor por defecto del veneno es1.
El valor por defecto para todos los
tipos de munición explosiva es de30.
El valor máximo para el daño es de1000.
Campo, Speed (Velocidad)
Para la munición visible (como granadas y flechas) puedes
cambiar la (horizontal) velocidad.
Valores por defecto: Default MaxValue
-------------------------------------------------
Grenade (todos los tipos): 128 - 1024
Darts (todos los tipos): 512 - 1024
-------------------------------------------------
Nota:
puedes introducir diferentes velocidades para cada granada o
tipo de flechas. Esto quiere decir que puedes tener, por
ejemplo, una flecha (como la explosiva) que se mueva más
rápidamente que la flecha envenenada.
Campo, Gravity (Gravedad)
Para la munición visible (como granadas y flechas) puedes
cambiar su gravedad.
Valores por defecto: Default MaxValue
------------------------------------------------
Grenade (todos los tipos) 3 - 255
Darts (todos los tipos) 0 - 255
------------------------------------------------
Nota:
La gravedad no es simplemente la velocidad vertical (hacia
abajo) pero un valor de aceleración empleado para
incrementar la velocidad vertical.
* Para las flechas la gravedad no se proyecto pero puedes usarlo si
lo deseas.
Campo, IdAddEffectToAmmo (IdAñadeEfectoAMunición)
Este efecto solo aplica a la munición visible (granada y
flecha). Si lo deseas puedes configurar un efecto especial
usando en el script el comando AddEffect y luego introducir
en este campo su Id para adjuntarlo a esta munición cada vez
que vaya a ser usada. Por ejemplo, si creas un AddEffect
para añadir un fogonazo azul e introduces en este campo su
Id, la munición tendrá un efecto de haz azul.
Campo, IdTriggerGroupAtEnd
Este efecto solo es aplicable a la munición visible (granada
y flecha). Este campo funciona de forma similar al campo
"IdTriggerGroupWhenHitEnemy" descrito anteriormente, pero en
este caso no es importante si la munición alcanza de lleno o
no al enemigo. El TriggerGroup donde has introducido el Id
hará su función cuando alcance cualquier objeto, enemigos,
paredes, suelo, estáticos, etc.
En este TriggerGroup el "found enemy index" será el índice
de la munición actual. Si colocas en el triggergroup algún
ACTION puedes forzar la realización de esta acción en el
ítem de la munición (en la posición final) usando la
constante TGROUP_USE_FOUND_ITEM_INDEX.
Aquí pongo un script.
Customize=
CUST_AMMO,GRENADE_GUN_AMMO1_ITEM,AMMO_PUSH_LARA,0,7,
IGNORE,IGNORE,IGNORE,IGNORE,IGNORE,IGNORE,IGNORE,IGNORE
Esto es para mi nivel con lo que no necesito algunos de los
otros campos, así que solo he introducido IGNORE.