Monstros que desviam de tiros...

Mapas, Editores e tudo mais relacionado a Edição de DooM você encontra aqui.
Regras do fórum
LEIA COM ATENÇÃO
Antes de postar alguma dúvida utilize a função de pesquisar do fórum, pois a sua dúvida talvez já tenha sido respondida!
Avatar do usuário
Daniel
Mensagens: 232
Registrado em: Dom Jan 22, 2006 10:03 pm
Answers: 0
18
Contato:

Monstros que desviam de tiros...

Mensagem por Daniel »

E aí galera?

Agora, com as grandes possibilidades do DECORATE, estou tentando criar monstros que agem de acordo com determinadas situações no jogo. De algumas delas, tem o Zumbi que rouba armas, inventórios, tem um Imp que desvia de seus tiros, outro que se teletransporta, um Demon que pula atrás de você e um monstro que foge se estiver com vida muito baixa. Há muitas outras possibilidades, mas é tudo feito de forma simples. Vou tentar explicar a lógica aqui:

1) Monstros que fogem de seus tiros
Cada vez que uma arma atira (ou seja "Fire" state), coloque um A_GiveInventory("WeaponFiring"). Para que o monstro saiba quando você vai atirar, seu "See" state deve ficar assim:

See:
TROO A 0 A_JumpIfInTargetInventory("WeaponFiring",1,6)
TROO AA 2 A_Chase
TROO B 0 A_JumpIfInTargetInventory("WeaponFiring",1,3)
TROO BB 2 A_Chase
Loop
TROO 0 A_FaceTarget
TROO 0 A_SetAngle(90+angle)
TROO 0 A_Recoil(-12)
Loop

Dessa forma, o monstro estará sempre checando em que hora o jogador irá atirar. Assim que detectar uma ação de tiro, ele irá se virar de frente, girar em um ângulo de 90 graus e dar um salto (A_Recoil), voltando à perseguição em seguida (A_Chase). Utilizei isto em um Chaingunner no "Missile" state, por exemplo, para que ele desviasse de tiros mesmo atirando.

2) Fazendo um monstro cujo ataque não possa ser interrompido

Este é bem fácil. A lógica é não permitir que o monstro sinta dor ao atacar (não entrar no "Pain" state). Assim, podemos tentar isto:

Missile:
POSS E 0 A_ChangeFlag("NOPAIN",1)
POSS E 8 A_FaceTarget
POSS F 8 Bright A_PosAttack
Goto See

Assim, toda vez que o monstro atirar, completará a ação até o final (lembrando que o monstro terá sua vida diminuída ao ser atacado, mas não "sentirá dor".) O ataque só poderá ser interrompido quando ele morrer.

Aos poucos vou trazendo outras dicas.
Valeu galera!!!
Editado pela última vez por Daniel em Qui Ago 06, 2009 9:08 am, em um total de 1 vez.
Avatar do usuário
Daniel
Mensagens: 232
Registrado em: Dom Jan 22, 2006 10:03 pm
Answers: 0
18
Contato:

Re: Monstros que desviam de tiros...

Mensagem por Daniel »

3) Fazendo um monstro que só morre se explodir

Esta é parecida com os Zombes do Quake: só morrem com explosões ou tiros de míssil. Fiz isto no Stone Imp que virá este novo wad que pretendo fazer. Fazê-lo precisa de alterar seu Death State assim:

Death:
TROO I 8
TROO J 6 A_Scream
TROO KLM 6
TROO N 512
TROO N 0 HealThing(70)
TROO N 0 A_SetShootable
Goto Raise

Dessa forma, o monstro, após morto, irá ressuscitar após um tempo, com 70 de energia. Note que não tirei seu atribudo SOLID com A_NoBlocking, pois se ele ressuscitar e alguém estiver em cima dele, ao ligar A_SetSolid, o monstro irá ficar grudado com o outro que estiver em cima dele... infelizmente, não descobri outra maneira de alterar isto. A única maneira de matá-lo será destruindo totalmente seu corpo, ou seja, através do "XDeath" state (que pode permanecer inalterado). Outra dica: se o monstro for muito forte, fica difícil entrar no XDeath state, e para isto, utilize este comando no início de sua definição:

Health 500
GibHealth 20

Ou seja, se o monstro com um tiro que ultrapasse em 20 pontos sua energia, ele explodirá. Normalmente, o ZDoom calcula o GibHealth proporcionalmente à energia do monstro. Assim você altera isso.

4) Fazendo um monstro que rouba uma arma sua

Esta é bem fácil. Para isto, ele deve estar bem próximo de ti, assim, devemos usar o "Melee" state para fazer tal ação:

Melee:
POSS 0 A_JumpIfInventory("Pistol",1,1)
Goto Missile
POSS 0 A_TakeFromTarget("Pistol",1)
Goto See

Muito mole, não é? Quando o monstro estiver perto do jogador e ele tiver uma pistola, o monstro roubará a arma dele. Se não, ele irá atirar normalmente (Goto Missile).

Falou!
Avatar do usuário
Pedro Vc
Mensagens: 3260
Registrado em: Ter Jul 15, 2008 4:40 pm
Answers: 0
15

Re: Monstros que desviam de tiros...

Mensagem por Pedro Vc »

Muito interessante essas dicas.....
A unica que eu sabia fazer era o monstro que foge quando ta com low health D:
Esperando
-Deus Vult 2 SE
-NeoDoom 2
And Current Projects
-Lucifer's Rising
Avatar do usuário
DooManiac
Mensagens: 779
Registrado em: Qui Fev 09, 2006 2:00 am
Answers: 0
18
Localização: RJ

Re: Monstros que desviam de tiros...

Mensagem por DooManiac »

Nem fazia idéia de que pudesse se fazer coisas assim!Boa Daniel!
Wa59
Mensagens: 983
Registrado em: Sex Abr 21, 2006 9:54 pm
Answers: 0
18
Localização: Jundiaí - SP
Contato:

Re: Monstros que desviam de tiros...

Mensagem por Wa59 »

Você se importa se eu escrever isso com mais detalhes e colocar na wiki?

E também seria legal fazer um monstro que rouba sua arma e usa ela contra você. :lol:
Mas com isso que você postou já da pra chegar nisso fácil, valeu.
Swim... Swim... Hungry...
Dopefish lives.
Avatar do usuário
Daniel
Mensagens: 232
Registrado em: Dom Jan 22, 2006 10:03 pm
Answers: 0
18
Contato:

Re: Monstros que desviam de tiros...

Mensagem por Daniel »

5) Um zumbi que dá tiros de pistola, rouba sua espingarda e usa ela contra você:

Melee:
POSS A 0 A_JumpIfInTargetInventory("Shotgun",1,1)
Goto Missile
POSS A 0 A_TakeFromTarget("Shotgun",1)
Goto See
Missile:
POSS E 0 A_JumpIfInventory("Shotgun",1,4)
POSS E 8 A_FaceTarget
POSS F 8 Bright A_PosAttack
POSS E 8
Goto See
POSS E 10 A_FaceTarget
POSS F 10 Bright A_SposAttack
POSS E 10
Goto See

Pronto! Se ele roubar a Shotgun de você, A_JumpIfInventory irá checar, no Missile State, se o monstro a roubou. Se sim, executará a animação de tiro de shotgun. Pronto!
Avatar do usuário
Logan MTM
Mensagens: 2895
Registrado em: Dom Dez 11, 2005 8:12 pm
Answers: 0
18
Localização: Rio de Janeiro - Brasil
Contato:

Re: Monstros que desviam de tiros...

Mensagem por Logan MTM »

Vou bola um Zumbi que sente e joga baralho com vc! 8D
Wa59
Mensagens: 983
Registrado em: Sex Abr 21, 2006 9:54 pm
Answers: 0
18
Localização: Jundiaí - SP
Contato:

Re: Monstros que desviam de tiros...

Mensagem por Wa59 »

Logan MTM escreveu:Vou bola um Zumbi que sente e joga baralho com vc! 8D
Tem que pedir blefe no truco.
Swim... Swim... Hungry...
Dopefish lives.
Imp Hunter

Re: Monstros que desviam de tiros...

Mensagem por Imp Hunter »

Logan MTM escreveu:Vou bola um Zumbi que sente e joga baralho com vc! 8D
E assim meu proximo Mod será: Ultimate Yugioh Doom : Shores of Cards

EU INVOCO MEU CYBERDEMON BRANCO DE OLHOS AZUIS
Avatar do usuário
Mathey Bu
Mensagens: 502
Registrado em: Seg Jul 21, 2008 11:18 am
Answers: 0
15
Localização: Decorate

Re: Monstros que desviam de tiros...

Mensagem por Mathey Bu »

os tutorias ficaram ate legais, mas essas paradinhas sao bem velhas. Tenho uma aki pra tu.

1)

um monstro q quando estiver na metade da vida ele começa a andar mais rapido e atacar mais rapido tb.

Código: Selecionar todos

see:
TROO A 0 A_JumpIfHealthLower(40, "correndo")
TROO AABBCCDD 2 A_Chase
Loop
correndo:
TROO AAABBBCCCDDD 1 A_Chase("melee", "missile", CHF_NIGHTMAREFAST)
Loop
quando a vida dele estiver menor q 40, ele começa a correr.

2) vc tb pode pular para varios estados usando uma unica ação

ex:

Código: Selecionar todos

A_Jump(128, "see", "pain", "missile")

actor impnegao : doomimp
{

states {

See:
TROO A 0 A_Jump(128, "pain", "missile")
TROO AABBCCDD 2 A_Chase
Loop

e so um exemplo msm. Isso e util para fazer varios atques.

}

dai o ator tem aproximadamente 50% de chance para pular ou para o estado see, ou para o pain, ou pro missile.

em breve mais. :wink:

Voltar para “Dúvidas e tutoriais”