Entrar
Últimos assuntos
» Colisões não funcionandopor RastaMaan Ontem à(s) 19:49
» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Ontem à(s) 16:45
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18
» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30
» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07
» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45
» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51
» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31
» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11
» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
[DUVIDA]Tower Defense em plataforma
5 participantes
Página 1 de 1
[DUVIDA]Tower Defense em plataforma
Pessoal,eu quero fazer um jogo tipo Tower defense.Esse é um jogo de plataforma e como se fosse na era medieval.
Explicação:Tem um guerreiro e ele tem que destruir um inimigo poderoso,e ao longo do jogo vai recrutando pessoas(arqueiros, bárbaros,magos,cavalos ... e por fim uma fênix)
Então o jogo tem um mineiro que com o tempo vai conseguindo dinheiro para comprar mais carinhas para conseguir um exército,e destruir o castelo inimigo.Indo direto ao ponto queria saber como ter varias vidas ao mesmo tempo ,como um carinha souber que se o inimigo estiver a uma tal distância ele atira e como fazer para os inimigos se organizarem e surgirem até um certo ponto .
Explicação:Tem um guerreiro e ele tem que destruir um inimigo poderoso,e ao longo do jogo vai recrutando pessoas(arqueiros, bárbaros,magos,cavalos ... e por fim uma fênix)
Então o jogo tem um mineiro que com o tempo vai conseguindo dinheiro para comprar mais carinhas para conseguir um exército,e destruir o castelo inimigo.Indo direto ao ponto queria saber como ter varias vidas ao mesmo tempo ,como um carinha souber que se o inimigo estiver a uma tal distância ele atira e como fazer para os inimigos se organizarem e surgirem até um certo ponto .
Andrew3000- Data de inscrição : 18/11/2011
Reputação : 1
Número de Mensagens : 20
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
Bom amigo uma da suas perguntas posso responder eu uso esse codico para fazer um canhao de tower defense...
Faça assim crie um objeto de um canhao de tower defense e coloque no creat :
No evento alarm coloque
e no evento steep coloque
esse codico faiz para se estiver em determinada distancia acontecer alguma açao...
Claro coloque isso no creat do obj_tiro
Bom eu respondi como faiz para para acontecer uma açao se estiver perto,mais quiz complementar como criar um canhao completo pois muita gente tem duvida disso...
Abraço se tiver duvida em relaçao com o codico so perguntar
Faça assim crie um objeto de um canhao de tower defense e coloque no creat :
- Código:
tiro=true
No evento alarm coloque
- Código:
tiro=true
e no evento steep coloque
esse codico faiz para se estiver em determinada distancia acontecer alguma açao...
- Código:
if distance_to_object(obj_inimigo)<=200//se tiver a 200 pixel do objeto inimigo
{
image_angle=point_direction(x,y,obj_inimigo.x,obj_inimigo.y); //o canhao fica no angulo da inimigo
if tiro = true{ //variavel do tiro
instance_create(x,y,obj_tiro) //crie o obj_tiro
tiro=false // o tiro fica false so vai poder atira depois do da execuçao do alarm
alarm[0]=30} // a cada 1 30 steep aconteça a açao do tiro
}
Claro coloque isso no creat do obj_tiro
- Código:
move_towards_point(obj_inimigo.x,inimigo.y,15) // faiz paraque o tiro va na direçao do inimigo
Bom eu respondi como faiz para para acontecer uma açao se estiver perto,mais quiz complementar como criar um canhao completo pois muita gente tem duvida disso...
Abraço se tiver duvida em relaçao com o codico so perguntar
Re: [DUVIDA]Tower Defense em plataforma
Por "várias vidas ao mesmo tempo" você quer dizer "não usar a variável global 'health'"? Fácil, use uma variável local qualquer, tipo "vida". Tenho um tutorial sobre variáveis na minha assinatura, se você estiver com problemas nesse sentido.Andrew3000 escreveu:queria saber como ter varias vidas ao mesmo tempo
A joker já respondeuAndrew3000 escreveu:como um carinha souber que se o inimigo estiver a uma tal distância ele atira
Outra pergunta ambígua. Como você QUER que eles se organizem? Em formação? Quer que eles tomem decisões? Ou é simplesmente um pathfind?Andrew3000 escreveu:como fazer para os inimigos se organizarem
Use um objeto pra criar os inimigos e ponha, nesse objeto, um contador. A cada inimigo criado, avance esse contador em uma unidade. Só crie os inimigos se esse contador estiver num valor menor que o número máximo de inimigos que você quer criar.Andrew3000 escreveu:e surgirem até um certo ponto .
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
Sobre as vidas eu quero dizer assim :
Eu faço vida no player e no inimigo e as duas diminui ao mesmo tempo ,o que faz para evitar isso ?
Sobre a formação eu queria uma coisa tipo assim:
Certos inimigos vão defender seu proprio castelo e os outros atacar o do player
Se precisar de alguma coisa a mais pode falar
Eu faço vida no player e no inimigo e as duas diminui ao mesmo tempo ,o que faz para evitar isso ?
Sobre a formação eu queria uma coisa tipo assim:
Certos inimigos vão defender seu proprio castelo e os outros atacar o do player
Se precisar de alguma coisa a mais pode falar
Última edição por Andrew3000 em Sex 25 Nov 2011, 19:03, editado 1 vez(es) (Motivo da edição : Erro ortográfico)
Andrew3000- Data de inscrição : 18/11/2011
Reputação : 1
Número de Mensagens : 20
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
Já respondido no post anterior: use uma variável local.Andrew3000 escreveu:Sobre as vidas eu quero dizer assim :
Eu faço vida no player e no inimigo e as duas diminui ao mesmo tempo ,o que faz para evitar isso ?
Simplesmente um pathfind, então. Tenho um tutorial sobre o A* na minha assinatura, com um script adaptável. Pra escolher qual alvo tentar atingir, basta mudar o argumento do script.Andrew3000 escreveu:Sobre a formação eu queria uma coisa tipo assim:
Certos inimigos vão defender seu proprio castelo e os outros atacar o do player
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
Olá amigo! Vi que você está fazendo um jogo igual ao meu =D olha umas screens do meu:
Até agora está indo de vendo em popa! Não estranhe as linhas brancas pois é só para checar se está tudo correto =D o nome é SealFighter's =D
- Spoiler:
Até agora está indo de vendo em popa! Não estranhe as linhas brancas pois é só para checar se está tudo correto =D o nome é SealFighter's =D
Re: [DUVIDA]Tower Defense em plataforma
Saim eu ainda estou perdido
Eu agradeceria se me explicasse algumas coisas melhor(porque eu ainda estou no nível iniciante).
Soul Limaloko, legal o seu jogo,é quase assim que estou querendo o meu ,a diferença é que o meu é meio era medieval.
Eu agradeceria se me explicasse algumas coisas melhor(porque eu ainda estou no nível iniciante).
Soul Limaloko, legal o seu jogo,é quase assim que estou querendo o meu ,a diferença é que o meu é meio era medieval.
Andrew3000- Data de inscrição : 18/11/2011
Reputação : 1
Número de Mensagens : 20
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
Hm... Deixa eu tentar explicar melhor, então.
Existem variáveis locais e globais. Algumas variáveis são built-ins (já vêm com o game maker). Existem built-ins dos dois tipos.
"locais" significa "atuam somente na instância" e "globais" significam "atuam no jogo todo".
Usar uma global pra determinar a vida de todos os inimigos causa o bug de atirar em um e matar todos.
(muito) mais informações podem ser encontradas no meu tutorial sobre variáveis, que eu criei justamente porque iniciantes têm dificuldade nesse assunto.
Quanto ao pathfind, pode esquecer, por enquanto. Não é nada básico. Requer, pra começar, um completo entendimento do funcionamento das variáveis. (pelo menos o A*, que eu uso e recomendo, requer).
Mas se o seu jogo é semelhante ao das imagens do Soul Limaloko, então ele não requer o uso de pathfinding complexos (mas não acho que o dele tenha muito a ver com tower defense, me parece mais um plataform shooter).
O que você precisa é definir qual o objetivo de cada inimigo. Pra isso, você pode usar um "choose" logo no create event de cada um e armazenar o objetivo escolhido numa variável.
falando de IA
Pra fazer o comportamento dos inimigos, verifique o ambiente no step event, checando a distância até as instâncias que atuarão sobre ele ou, melhor dizendo, que ele atuará sobre elas.
Tipo assim: se tem um boneco do jogador NA FRENTE do inimigo E está PERTO, o inimigo ataca o boneco. Mas, se o inimigo já tiver chegado PERTO do CASTELO do jogador, ele ignora os bonecos e manda brasa no castelo.
Tem um monte de funções pra verificar o ambiente: place_meeting, point_distance, collision_circle, instance_nearest... um MONTE. Você vai usar elas nos momentos adequados e pronto, sua IA está feita.
O complicado, mesmo, é definir como você quer que o inimigo atue. Isso só você pode fazer. Nem que eu tivesse a pretensão de escrever seu código eu poderia fazê-lo sem que você definisse, nos mínimos detalhes, como o inimigo vai agir. E definir isso é metade do código escrito!
Assim:
Defina minuciosamente o que você espera que aconteça. Daí, se não conseguir pensar em como traduzir isso pro game maker, a gente te dá uma mão.
Existem variáveis locais e globais. Algumas variáveis são built-ins (já vêm com o game maker). Existem built-ins dos dois tipos.
"locais" significa "atuam somente na instância" e "globais" significam "atuam no jogo todo".
Usar uma global pra determinar a vida de todos os inimigos causa o bug de atirar em um e matar todos.
(muito) mais informações podem ser encontradas no meu tutorial sobre variáveis, que eu criei justamente porque iniciantes têm dificuldade nesse assunto.
Quanto ao pathfind, pode esquecer, por enquanto. Não é nada básico. Requer, pra começar, um completo entendimento do funcionamento das variáveis. (pelo menos o A*, que eu uso e recomendo, requer).
Mas se o seu jogo é semelhante ao das imagens do Soul Limaloko, então ele não requer o uso de pathfinding complexos (mas não acho que o dele tenha muito a ver com tower defense, me parece mais um plataform shooter).
O que você precisa é definir qual o objetivo de cada inimigo. Pra isso, você pode usar um "choose" logo no create event de cada um e armazenar o objetivo escolhido numa variável.
- Código:
objetivo = choose("ataca", "defende")
- Código:
instance_create(castelo.x, castelo.y, choose(inimigoAtaca, inimigoDefende)
falando de IA
Pra fazer o comportamento dos inimigos, verifique o ambiente no step event, checando a distância até as instâncias que atuarão sobre ele ou, melhor dizendo, que ele atuará sobre elas.
Tipo assim: se tem um boneco do jogador NA FRENTE do inimigo E está PERTO, o inimigo ataca o boneco. Mas, se o inimigo já tiver chegado PERTO do CASTELO do jogador, ele ignora os bonecos e manda brasa no castelo.
Tem um monte de funções pra verificar o ambiente: place_meeting, point_distance, collision_circle, instance_nearest... um MONTE. Você vai usar elas nos momentos adequados e pronto, sua IA está feita.
O complicado, mesmo, é definir como você quer que o inimigo atue. Isso só você pode fazer. Nem que eu tivesse a pretensão de escrever seu código eu poderia fazê-lo sem que você definisse, nos mínimos detalhes, como o inimigo vai agir. E definir isso é metade do código escrito!
Assim:
é igual ase estiver perto do castelo, ataca o castelo
senão, se estiver perto de um boneco, ataca o boneco
senão, caminha em direção ao castelo
- Código:
if (point_distance(x, y, castelo.x, castelo, y)<alcance){
script_de_atacar_o_castelo();
}
else{
if (point_distance(x, y, boneco.x, boneco.y)<alcance){
script_de_atacar_o_boneco();
}
else{
x+=velocidade;
}
}
Defina minuciosamente o que você espera que aconteça. Daí, se não conseguir pensar em como traduzir isso pro game maker, a gente te dá uma mão.
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
só uma dica ... nao use strings pro 'objetivo' elas são bem mais lentas que números ... faça assim crie constantes tipo ob_ataca = 0,ob_defende = 1
e use elas em vez de strings...
e use elas em vez de strings...
diego333- Data de inscrição : 06/10/2010
Reputação : 3
Número de Mensagens : 84
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DUVIDA]Tower Defense em plataforma
saim agora eu consegui entender melhor!(sobre o objetivo ,era só criar dois tipos de inimigos :um para atacar e outro para defender)o inimigo só vai ir pra frente mesmo,e quando estiver algo no caminho ele ataca.
Sobre as vidas,qual variável eu uso? (eu sempre usei health)
Obs.:eu li seu tutorial e bem informativo.
Sobre as vidas,qual variável eu uso? (eu sempre usei health)
Obs.:eu li seu tutorial e bem informativo.
Andrew3000- Data de inscrição : 18/11/2011
Reputação : 1
Número de Mensagens : 20
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Resolvido]Tower defense O_O
» Bug em tower defense
» Ajuga com tower defense !
» Medieval Tower Defense
» ajuda com tower defense
» Bug em tower defense
» Ajuga com tower defense !
» Medieval Tower Defense
» ajuda com tower defense
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|