Conectar-se
Quem está conectado
28 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 28 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 06/08/2014
Número de Mensagens : 4
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Game Iniciante

em Qua 06 Ago 2014, 16:07
Olá tudo bem?

Gostaria de uma força se possível, de uma Engine que o personagem movimentasse em 3 posições (esquerda, centro e direita) para desviar de objetos que caem nessas três posições aleatoriamente (random) e que a velocidade fosse aumentando para dificultar o desvio dos objetos, quando algum objeto colidisse com o personagem o jogo finalizava dando o score.

Desde já agradeço a atenção.
avatar
Ranking : Sem avaliações
Data de inscrição : 16/01/2014
Número de Mensagens : 314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 31

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://google.com

Re: Game Iniciante

em Qua 06 Ago 2014, 16:12
Gostaria de uma força se possível, de uma Engine que o personagem movimentasse em 3 posições (esquerda, centro e direita)
Centro ou Para cima? Especifique o tipo de jogo que vc esta desenvolvendo, Top-down (visão por cima), plataforma (jogos com gravidade)...
avatar
Data de inscrição : 06/08/2014
Número de Mensagens : 4
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Explicando melhor

em Qua 06 Ago 2014, 16:58
@Lighter escreveu:Gostaria de uma força se possível, de uma Engine que o personagem movimentasse em 3 posições (esquerda, centro e direita)
Centro ou Para cima? Especifique  o tipo de jogo que vc esta desenvolvendo, Top-down (visão por cima), plataforma (jogos com gravidade)...


Prezado,
Esta é a representação do jogo que estou querendo onde:
1 - Tecla Seta para esquerda o personagem pula para esquerda desviando das pedras.
2 - Tecla Seta para direita o personagem pula para direita desviando das pedras.
3 - As pedras vão caindo, aumentam de velocidade e são randomicas para dificultar o nivel.
4 - Se o desvio for bem sucedido aumenta o score, se não finaliza mostrando o score final.

obs.: o movimento do personagem é igual o do jogo "Timberman" para celular.

avatar
Ranking : Sem avaliações
Data de inscrição : 16/01/2014
Número de Mensagens : 314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 31

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://google.com

Re: Game Iniciante

em Qua 06 Ago 2014, 17:31
No timberman a movimentação do jogador é instantânea, então:

1 - Tecla Seta para esquerda o personagem pula para esquerda desviando das pedras.
2 - Tecla Seta para direita o personagem pula para direita desviando das pedras.
Step do Player
Código:
if keyboard_check_pressed(vk_right){ // se pressionar 'flecha' direita
 x+=10 // troque o 10 pela distancia que vc quer que ele 'pule'
}
if keyboard_check_pressed(vk_left){
 x-=10
}
// troque o 10 por quanto pixels vc quer que ele mova ao apertar a tecla

3 - As pedras vão caindo, aumentam de velocidade e são randomicas para dificultar o nivel.
4 - Se o desvio for bem sucedido aumenta o score, se não finaliza mostrando o score final.
Para fazer isso vamos fazer um contador de pedras para aumentar o nível, se a pedra bater no chão quer dizer que o player desvio, então aumentara a dificuldade;

Create da pedra
Código:
xx = irandom_range(0,room_width) // posição x da pedra gerara randomicamente

step da pedra
Código:
x = xx // posição da pedra será igual a posição gerada no create

if place_meeting(x,y,obj_chao){ // caso a pedra colida com o chão
 global.pontos +=1 // aumenta o pontuação
 instance_destroy()
}
vspeed := 10*pontos/10 // velocidade da pedra é diretamente proporcional a pontuação

Isso é uma base, esses códigos nem sempre são eficaz, existe formas melhores de você adapta-los esses algoritmos seu jogo.


Última edição por Lighter em Qua 06 Ago 2014, 18:35, editado 1 vez(es)
avatar
Data de inscrição : 06/08/2014
Número de Mensagens : 4
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 18:13
@Lighter escreveu:No timberman a movimentação do jogador é instantânea, então:

1 - Tecla Seta para esquerda o personagem pula para esquerda desviando das pedras.
2 - Tecla Seta para direita o personagem pula para direita desviando das pedras.
Step do Player
Código:
if keyboard_check_pressed(vk_right){ // se pressionar 'flecha' direita
 x+=10 // troque o 10 pela distancia que vc quer que ele 'pule'
}
if keyboard_check_pressed(vk_left){
 x-=10
}
// troque o 10 por quanto pixels vc quer que ele mova ao apertar a tecla

3 - As pedras vão caindo, aumentam de velocidade e são randomicas para dificultar o nivel.
4 - Se o desvio for bem sucedido aumenta o score, se não finaliza mostrando o score final.
Para fazer isso vamos fazer um contador de pedras para aumentar o nível, se a pedra bater no chão quer dizer que o player desvio, então aumentara a dificuldade;

Create da pedra
Código:
xx = irandom_range(0,room_width) // posição x da pedra gerara randomicamente

step da pedra
Código:
x = xx // posição da pedra será igual a posição gerada no create

if place_meeting(x,y,obj_chao){ // caso a pedra colida com o chão
 global.pontos +=1 // aumenta o pontuação
 instance_destroy()
}
vspeed := 10*pontos/10 // velocidade da pedra é diretamente proporcional a pontuação

Isso é uma base, esses códigos nem sempre são eficaz, existe formas melhores de você adaptado esses algoritmos seu jogo.


OK - com a movimentação do personagem
Esta acontecendo o seguinte erro:

"
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of  Step Event0
for object obj_Arma:

Push :: Execution Error - Variable Get -1.pontos(100001, -1)
at gml_Object_obj_Arma_StepNormalEvent_1 (line 7) -     vspeed := 10*pontos/10 // velocidade da pedra é diretamente proporcional a pontuação
############################################################################################

"

Estou trabalhando com 3 objetos:
Obj_Explorador - Personagem
Obj_Arma - que são os objetos que caem
Obj_Chao - que é a base em que o personagem de movimenta

Além do erro o obj_arma não esta caindo esta parado.
avatar
Ranking : Sem avaliações
Data de inscrição : 16/01/2014
Número de Mensagens : 314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 31

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://google.com

Re: Game Iniciante

em Qua 06 Ago 2014, 18:33
anonimo escreveu:OK - com a movimentação do personagem
Esta acontecendo o seguinte erro:
altera todas as variáveis pontos por 'global.pontos', e no create do obj_explorador coloque 'global.pontos = 0'
avatar
Data de inscrição : 06/08/2014
Número de Mensagens : 4
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 18:50
@Lighter escreveu:
anonimo escreveu:OK - com a movimentação do personagem
Esta acontecendo o seguinte erro:
altera todas as variáveis pontos por 'global.pontos', e no create do obj_explorador coloque 'global.pontos = 0'


O erro sumiu beleza, agora o obj_arma não cai. Continua parado.

Mais uma vez agradeço a atenção...
avatar
Ranking : Sem avaliações
Data de inscrição : 16/01/2014
Número de Mensagens : 314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 31

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://google.com

Re: Game Iniciante

em Qua 06 Ago 2014, 21:15
Altere o vspeed do obj_arma para vspeed= 5
avatar
Data de inscrição : 28/07/2014
Número de Mensagens : 17
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 21:28
@Lighter escreveu:Altere o vspeed do obj_arma para vspeed= 5

legal, fiz alguns testes.
o obj_arma depois que coloquei vspeed =5 cai uma vez e não volta a cair mais.
e tambem não está aparecendo o score na tela.
avatar
Data de inscrição : 23/03/2014
Número de Mensagens : 211
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 40

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 21:50
Hunm, já estou seguindo este tópico desde a sua criação, mas só agora vou ter coragem de mostrar a minha cara...
Como já percebi, o movimento do player já está pronto, então vamos ao "score" e ao objeto que fica caindo...
Primeiro, vamos programar o obj_arma...  Antes de tudo, crie um objeto e chame-o de o que quiser, neste exemplo vou chama-lo de objCtrl, no create dele:
Código:
alarm[0]=1;//este representa o tempo em que o obj_arma vai demorar para obter mais velocidade
alarm[1]=10;//este o tempo que ele é criado, ambos os valores podem ser modificados
global.velocidade=0.5;//esta é a velocidade do obj_arma
No evento "alarm0":
Código:
global.velocidade+=0.1;
alarm[0]=1;
No "alarm1":
Código:
instance_create(irandom_range(128,room_width-128),0,obj_arma);//ou o nome do obj_arma, substitua "128" o tamanho da sprite do objeto
Agora no obj_arma, no step:
Código:
vspeed=global.velocidade;
No evento de colisão com o chão:
Código:
instance_destroy();
Agora crie outro objeto, chame-o do o que quiser, eu o chamarei de objDraw.
No evento draw dele coloque isto:
Código:
draw_text(10,10,"Pontos; "+string(global.pontos));//Os dois 10 são as posições onde o texto será desenhado.
Caso não tenha feito nada para aumentar o valor da variavel pontos, coloque no evento creat do objDraw:
Código:
alarm[0]=1;//setei o alarm[0] deste evento como 1 step
No evento Alarm0:
Código:
global.pontos+=1;
alarm[0]=1;
Coloque estes outros objetos na room e fim...
Teste agora e veja se deu certo, se der, viva feliz! Happy
avatar
Data de inscrição : 28/07/2014
Número de Mensagens : 17
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 22:15
@AxeInLine escreveu:Hunm, já estou seguindo este tópico desde a sua criação, mas só agora vou ter coragem de mostrar a minha cara...
Como já percebi, o movimento do player já está pronto, então vamos ao "score" e ao objeto que fica caindo...
Primeiro, vamos programar o obj_arma...  Antes de tudo, crie um objeto e chame-o de o que quiser, neste exemplo vou chama-lo de objCtrl, no create dele:
Código:
alarm[0]=1;//este representa o tempo em que o obj_arma vai demorar para obter mais velocidade
alarm[1]=10;//este o tempo que ele é criado, ambos os valores podem ser modificados
global.velocidade=0.5;//esta é a velocidade do obj_arma
No evento "alarm0":
Código:
global.velocidade+=0.1;
alarm[0]=1;
No "alarm1":
Código:
instance_create(irandom_range(128,room_width-128),0,obj_arma);//ou o nome do obj_arma, substitua "128" o tamanho da sprite do objeto
Agora no obj_arma, no step:
Código:
vspeed=global.velocidade;
No evento de colisão com o chão:
Código:
instance_destroy();
Agora crie outro objeto, chame-o do o que quiser, eu o chamarei de objDraw.
No evento draw dele coloque isto:
Código:
draw_text(10,10,"Pontos; "+string(global.pontos));//Os dois 10 são as posições onde o texto será desenhado.
Caso não tenha feito nada para aumentar o valor da variavel pontos, coloque no evento creat do objDraw:
Código:
alarm[0]=1;//setei o alarm[0] deste evento como 1 step
No evento Alarm0:
Código:
global.pontos+=1;
alarm[0]=1;
Coloque estes outros objetos na room e fim...
Teste agora e veja se deu certo, se der, viva feliz! Happy


Boa noite, que bom que apareceu pra ajudar  Laughing 
segui os passos corretamente, aparece o score corretamente, mais ele só fica aumentando e eu acho que o nosso amigo quer que cada obj_arma que o personagem consiga desviar conte como 1 ponto no score. fiquei curioso como faz isso.

a outra parte que tambem não está dando é o mesmo problema que estou enfrentando no meu game, o obj_arma cai só uma vez
e não fica caindo para o personagem desviar e contar os pontos.
o que está acontecendo no meu, é que ele cai, colide com o chão e destroi e não cria mais.
avatar
Data de inscrição : 23/03/2014
Número de Mensagens : 211
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 40

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Game Iniciante

em Qua 06 Ago 2014, 22:32
(sou tão importante assim para você?) O_O Agora que notei que o tópico é de outro e não do fabert O_O
Acaba que eu me esqueci de uma coisa no objCtrl, no evento alarm[1], logo abaixo do "instance_creat" coloque isso:
Código:
alarm[1]=10;//Fabert, coloque aqui o tempo que eu te dei no outro topico;
Isso ocorre porque eu esqueci de colocar para fazer o loop...
Caso for realmente isso, caso ele queira que só adicione pontos depois de desviar, então apaga o evento creat e o evento alarm[0] do objDraw, e no obj_arma, no evento de colisão com o chão(novamente '--):
Código:
global.pontos += 1;
Coloque o "instance_detroy" que tem, embaixo disso, porque se não, o objeto será destruido antes de poder adicionar o ponto...
(Vou copiar o Alex Fc do meu jeito(mas ainda vou copiar!)) Até!
avatar
Ranking : Sem avaliações
Data de inscrição : 16/01/2014
Número de Mensagens : 314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 31

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://google.com

Re: Game Iniciante

em Qua 06 Ago 2014, 23:16
Oi Axel blz?

Fabert, desenvolvedorr até mesmo pro Axel(zoera kk), criei uma engine pra auxilia-los no processo de criação de jogos desse tipo, liberei o download pelo google drive, assim vocês poderem estudar os códigos. A engine esta toda comentada e é fácil entendimento, nível: elemental.

A engine traz através dos códigos as seguintes características:
* Gerador de objetos arma, que aumenta de velocidade gradativamente;
* O objeto arma sempre sera gerado, próximo ao jogador;
* Contador de pontos;
* O objeto arma sempre sera gerado na mesma escala, 32.. 64.. 128 na room, para seguir o mesmo padrão do obj_player que se move em 32 pixels.

Até que ficou divertida, mas para ficar perfeita você devera adapta-la para o seu jogo;

Download Aqui:

Flw, espero ter ajudado galera, bons estudos;
avatar
Data de inscrição : 28/07/2014
Número de Mensagens : 17
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Qui 07 Ago 2014, 00:16
Lighter e AxeInLine obrigado pela ajuda, vou estudar e tentar fazer algo, muito obrigado mesmo, isso vai ajudar muito  cheers 
avatar
Data de inscrição : 12/11/2014
Número de Mensagens : 27
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Game Iniciante

em Sab 22 Nov 2014, 17:33
acho que vcs estão so esquendo do.... place_free, porque se n gente! o buneco bugaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum