Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Super Dicas de GM
+2
kraptus
GuiEdu
6 participantes
Página 1 de 1
Super Dicas de GM
Pessoas axei esse conteúdo em outro fórum deem uma conferida, vale a pena
P quem não sabe, é só clicar em spoiler e ver
P quem não sabe, é só clicar em spoiler e ver
- Spoiler:
- Estas dicas são para iniciantes ou quem não sabe fazer algumas coisas muito simples,estão aqui algumas dicas
1-Criar um efeito simples de explosão
Para criar um efeito simples de explosão basta fazer um objeto,no evento space,coloque a seguinte ação,vá na aba draw,clique no icone de explosão o último icone.selecione o tipo explosão,smoke(fumaça),star(estrela). e naum se esqueça de colocar relative, para que o efeito saia da onde o objeto está,coloque na room e aperte space.
2-Aparecer vida
Basta colocar um objeto controle (um objeto normal que comanda) coloque
um evento ''create'' a ação da aba score ''sets live'' coloque 3,depois em qualquer evento por exemplo space a mesma ação mas coloque assim -1 relative ,ou seja ele vai diminuir 1 vida.E no evento ''others'' ''no more live'' coloque a ação da aba main ''restart game''
3-Apareçer score
É a mesma coisa da vida mas coloque o score para aumentar de 10 em 10 (naum se esqueçe de marcar relative).
Essas são algumas dicas simples para iniciantes
4- Parallax Background
Para isso é simples faça um objeto para ele obj_fundo e coloque no evento draw draw_background(nome_do_background,view_xview/2,view_yview/2)
Coloque o objeto na room.
É necessário ter uma view, caso o contrario o efeito não fica certo.
5- Luz
Este é um efeito muito legal e bonito e simples
para isso faça um objeto sem sprite e coloque no evento draw
draw_set_blend_mode(bm_add)
draw_circle_color(x,y,50,c_white,c_black,0)
draw_set_blend_mode(bm_normal)
agora coloque o na room e veja o efeito se você quizer mudar a cor coloque a cor no lugar do c_white.mas se vc sabe tudo isso pode zuar com ele que fica com efeito loko.
Última edição por rodrigo1434 em Ter Abr 08, 2008 7:18 pm, editado 2 vezes
Solução problemas que são muitos babas
Aparecer os Frames por Segundo:
Para isso é só colocar no evento draw a ação que desenha uma variavel que é assim mas dá cor cor amarela e colocar fps no nome da variavel.
Velocidade do jogo
É só ajustar a variavel room_speed ou vá na room e modifique o valor 30
por qualquer outro.
Desenhar uma variável na tela conforme vc anda
Isso é baba,desenhe uma variavel e coloque no x = view_xview+320 e no y = view_yview+240 quer dizer a variavel vai ficar na tela e não na room.
Para um objeto seguir o outro
No evento end step coloque aquela ação que muda o x e y no valor x coloque o nome do objeto.x exemplo obj_jogador.x obj_jogador.y.
Fazer um efeito de sombra
No Game Maker é possivel fazer isso de uma maneira bem simples
Para fazer um efeito de luz utilizamos os códigos assim
draw_set_blend_mode(bm_add) tudo o que é claro vai aparecer menos o que é escuro
draw_cicle_color(x,y,500,c_white,c_black,0) desenha um circulo que vai ser a luz
draw_set_blend_mode(bm_normal) deixa tudo normal de volta
mas para um efeito de sombra a sombra é preta e se a preta some como faz
isso
draw_set_blend_mode(bm_subtract) tudo o que é preto vai aparecer menos o que é claro
draw_cicle_color(x,y,500,c_black,c_white,0) desenha um circulo que vai ser a sombra
draw_set_blend_mode(bm_normal) deixa tudo normal de volta
1 - Criando Uma Mira
Primeiro crie um sprite de como você quer sua mira e então crie um objeto com esse sprite.
No evento "Step" desse objeto, adicione o código:
Código:
x = mouse.x
y = mouse.y
Para que as coordenadas "X" e "Y" sejam as mesmas do mouse... Para ficar ainda melhor, vá em "Global Game Settings" e desmarque a opção "Display the cursor".
2 - Inimigo que Persegue Você
Para isso crie seu personagem (iremos chamá-lo de "D") e NÃO MARQUE A OPÇÃO "SOLID", então no objeto do seu inimigo, crie um evento "Step" e adicione ação "Step Avoiding".
Uma janela irá aparecer então adicione:
Código:
x: D.x
y: D.y
Speed: Você escolhe
Avoid: Solid Only
Esse inimigo então seguirá as coordenadas X e Y de seu personagem desviando dos objetos sólidos.
________________________________________________________________________________
Bom todos sabem o que é TDS né?não?
É um estilo de visão do jogo que é de cima chamado de Top Down Shooter
É o meu estilo favorito seguido do plataforma mas isso não vem ao caso
bem aqui vou mostrar a fazer a basico
Pegando os Resources
coloque um som de tiro e nomeie snd_tiro
selecione um sprite de cima de preferencia
um cara com uma arma mas centralize o sprite
e uma bala qualquer vc mesmo pode fazer
Criando os Objetos:
obj_bala
Coloque um sprite de bala no objeto bala
no evento create coloque
Código:
image_angle=direction
sound_play(snd_tiro)
no evento outside room
Código:
instance_destroy()
obj_player
Coloque um sprite no objeto player
mas coloque o sprite de lado pra direita para que dê certo
a imagem
no evento end step coloque
Código:
image_angle=point_direction(x,y,mouse_x,mouse_y)
no evento global mouse left button pressed
coloque pra criar uma instancia com direção(aquele icone de lampada com seta vermelha do lado)
coloque pra criar o objeto bala
x = 0
y = 0
speed = 30
direction=image_angle
relative = marque relative para que a bala sai do x y do player
no evento keyboard left (ou algo assim que eu não lembro)
Código:
if x>o
x-=4
no evento keyboard right
Código:
if xx+=4
no evento keyboard up
Código:
if y>0
y-=4
no evento keyboard down
Código:
if yy+=4
no evento draw(pra dar um charme)o efeito de sombra
Código:
draw_sprite_ext(sprite_index,image_index,x+3,y+2,image_xscale+0.1,image_yscale+0.1,
image_angle,c_black,0.3)
draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,image_angle,
image_blend,image_alpha)
Nivel:Intermediario
Aqui estão alguns comandos básicos sobre GML, vejam:
Comando básicos:
if: Esse código serve para quando você for fazer alguma coisa, ou quando acontecer alguma coisa. EX:
Código:
if keyboard_check(vk_up)
room_goto(room2) //esse é um exemplo, quando a seta para cima for pressionada irá para a room2
var: Esse código serve para criar uma variável, veja:
Código:
var_(nome da variável)=true
score: Bom, acho que não é preciso dizer nada, esse código define a pontuação. Ex:
Código:
//aqui estamos inserindo 10 pontos
score+=10
lives: É a mesma coisa de score, só que aqui são as vidas
false: Esse código é como uma execusão falsa, exemplo:
Código:
//Aqui será pressionada a seta para direita, então a var_parado será falsa e a var_direita será verdadeira
if keyboard_check(vk_right) and not keyboard_check(vk_left)
{
var_parado = false
var_direita = true
}
gravity: O nome já diz, esse comando define a gravidade, veja um exemplo:
Código:
gravity = 0.75
sprite_index: Esse comando mostra uma sprite, veja um exemplo:
Código:
// esse é apenas um exemplo, não tente usar esse código
if keyboard_check(vk_down)
sprite_index = spr_player
instance_destroy(): Esse comando é para destruir um objeto, veja um pequeno exemplo:
Código:
// caso a seta para esquerda seja pressionada o objeto que está executando esse código será destruído
if keyboard_check_pressed(vk_left)
instace_destroy();
instance_create: Comando utilizado para criar uma instância (objeto)
image_speed: Controle da velocidade da imagem, veja:
Código:
image_speed=0.25
Comandos do teclado:
Setas:
keyboard_check(vk_up)// Seta para cima
keyboard_check(vk_down)// Seta para baixo
keyboard_check(vk_left)// Seta para a esquerda
keyboard_check(vk_right)// Seta para a direita
keyboard_check(vk_space)// Tecla barra de espaços
Letras:
(keyboard_check(ord('X'))// para você mudar as teclas apenas mude a letra X para a tecla que você deseja
Outros
hspeed*=-1: esse código serve para inverter uma velocidade. Exemplo:
Código:
//crie um evento colison do player com a parede e escreva o comando citado acima.
draw_text: Escreve um texto, veja um exemplo:
Código:
// fica escrito time na room
draw_text(280,25,time);
view_xview e view_yview: Esse código serve para uma sprite seguir a tela. Ex:
Código:
// o objeto que está executando esse código irá seguir a room.
view_xview+100
view_yview+100
Já disse muitos comandos, agora vamos criar alguns códigos:
Contato com o chão:
Código:
// esse código é para o contato do player com o chão, a velocidade muda para 0
move_contact_solid(direction, 8 )
vspeed = 0
Código:
//código bem simples, crie um evento colision de um inimigo com um bloco.
if sprite_index=spr_inimigo_esquerda
{
sprite_index=spr_inimigo_direita;
}
else
{
sprite_index=spr_inimigo_esquerda;
}
Código:
// muda para a room0
room_goto(room0)
Agora aqui vai umas dicas para criação de inimigos.
1º- Inimigo comum
Vamos lá pessoal para a primeira matéria, não sou muito bom com explicações mas vou tentar, vamos começar fazendo a AI de um inimigo para seu jogo, esse inimigo é aquele clássico que anda de um lado para o outro.
Primeiro crie as sprites do inimigo, uma chamada " inimigo_esquerda" e outra chamada " inimigo_direita" (Sem aspas).Pois se você escrever algo errado o script vai acusar um erro e o jogo não vai funcionar corretamente, Agora, crie um bloco chamado "Wall" ou como quiser, esse bloco sera sólido e terá que ficar invisível, então nas propriedades do bloco desmarque a opção visible (para que ele não apareça no jogo ) pois ele será o bloco que fará seu inimigo bater e voltar.
Agora que criamos os sprites vamos para a segunda parte, vamos criar um objeto para o inimigo, coloque o nome que quiser nele e em Create coloque esses códigos pois as variáveis vão ser ativadas no inicio do objeto, pois Create é o inicio das ações do objeto:
Código:
Gravi_dade = true // você pode dar o nome que quiser para a variável
pa_rado = true
direi_ta = true
velo_cidade = 4
Código:
image_speed=0.55 // você também pode mudar a velocidade, a que te agrada melhor,ele muda a velocidade dos sprites
Clique na seta virada para a direita, em Speed coloque 3 e não marque a opção Relative, agora clique em Ok.
Crie um evento Step e escreva o código:
Código:
//AQUI VOCÊ DEFINE A GRAVIDADE
if place_free(x,y+1)
{
gravi_dade = false
gravity = 0.75
}
else
{
gravi_dade= true
gravity = 0
}
//LIMITAR VELOCIDADE DE QUEDA
if (vspeed > 10) {vspeed = 10}
Já estamos no final, crie um evento colision com o Wall e escreva:
Código:
if sprite_index=spr_inimigo_direita
{
sprite_index=spr_inimigo_esquerda;
}
else
{
sprite_index=spr_inimigo_direita;
}
Logo depois:
Código:
hspeed*=-1;//isso inverte a velocidade ao bater no Wall,( hspeed )esse código é para inverter somente na horizontal.
Agora que terminamos vamos criar o objeto chão, pois se não tiver esse objeto o seu inimigo vai cair e sumir na tela, agora crie um evento colision do inimigo com o objeto chao e escreva:
Código:
move_contact_solid(direction, 8 )
vspeed = 0
2º- inimigo com IA
Com esse código o inimigo ira pular quando você se aproximar dele, ele também pode ser usado para outras coisas como atirar,segir o personagem mas isso vou explicar mais abaixo.
IA básico:
Código:
if distance_to_object(obj_player)<37
{
vspeed=-14
}
IA simples:
Evento Create:
Código:
alarm[0]=round(random(90)+90)
Alarm0:
Código:
//aqui o seu inimigo atira e toca o som do tiro ao obj_player se aproximar.
if distance_to_object(obj_player)<150
{
sound_play(tiro)
instance_create(x-1,y,bala);
}
alarm[0]=60
Se você quiser que o inimigo faça todas as ações juntas faça o seguinte crie o mesmo código de antes, esse:
Código:
if distance_to_object(obj_player)<37
{
vspeed=-14
}
Agora um efeito simples de fade sem usar transição de rooms...
ara fazer um efeito de escurecer/clarear a tela manualmente basicamente vc precisará desenhar um retângulo do tamanho da tela e mudar a transparência dele.
Para começar, crie um obj que irá controlar o efeito. Vou chama-lo de obj_controle. Nesse oj, adicione um evento create e crie duas variaveis para indicar o nível de opacidade e se o efeito está ligado ou não.
Código:
opacidade=1;
ligado=0;
Obs: O nível máximo de opacidade é 1, onde estará com toda a cor, quanto menor o valor, mais transparente.
Agora vamos trabalhar no evento draw para desenhar nosso retângulo...
Iremos usar as seguintes funções:
• draw_set_alpha(nivel) - É usada para alterar o nível de transparência do que está sendo desenhado;
• draw_rectangle(x1,y1,x2,y2,lina) - Essa função irá desenhar o retângulo. X1 e Y1 indicam a posição do retângulo na tela, X2 e Y2 indicam o tamanho(largura e altura, respectivamente) e linha indica se somente uma linha deverá ser desenhada, sem preenchimento;
• draw_set_color(cor) - Usada para definir a cor do desenho.
Conhecendo as funções podemos começar o código do evento draw...
Código:
draw_set_alpha(opacidade);
draw_set_color(c_black);
draw_rectangle(0,0,640,480,0);
Primeiro definimos o nível de transparência usando a variável que criamos antes, depois definimos a cor do desenho para preto e finalmente desenhamos o retângulo. Repare que o tamanho usado nesse exemplo é 640x480, lembre-se de usar o tamanho da tela do seu jogo.
Agora temos que criar um jeito de ligar e desligar a transparência, para testar, adicione dois eventos key press, eu usei A e S para ligar e desligar, respectivamente.
Evento A:
Código:
ligado=1;
Evento S:
Código:
ligado=0;
Já definimos o desenho e um sistema de teste para ligar e desligar, mas é agora que iremos criar o efeito de transição fazendo com que fique transparente aos poucos. Adicione um evento step e nele coloque as seguintes condições.
Código:
if ligado==1 && opacidade>0 then //se o efeito estiver ligado e a opacidade for maior que zero)
{
opacidade-=0.1;
}
if ligado==0 && opacidade<1 then//se o efeito estiver desligado e a opacidade for menor do que 1
{
opacidade+=0.1
}
É bem simples, apenas checa se o sistema está ligado ou não e soma ou subtrai o valor da opacidade aos poucos para dar o efeito de transição.
Tela Seguindo o Personagem
Nas configurações da room, entre na aba "Views" e marque as opções:
- Enable the use of Views
- Visible when room starts
Para escolher a resoluão que você quer para seu jogo mude os valores "W:" e "H:" (de preferência mude para 640x480 ou 800x600 que são padrões...)
Agora para seguir o personagem, escolha na opção "Object Following" o nome do objeto...
Nos valores Hbor e Vbor, você escolherá os valores das "bordas" para que a câmera comece a mover... e no Hsp e Vsp são as velocidades da câmera para seguir o personagem (geralmente usamos -1)...
Dicas de Mouse no Game Maker
Versão: 6.1 / 7.0 (eu creio que também funcione no 5.0)
Autor: Eskyz
Introdução:
Bem galera, aqui trago duas dicas para personalizar o seu Mause! Nele, usaremos um objeto que criaremos chamado obj_Mouse será ele quem irá controlar todas as açoes com o Mause
1 - Trocando o Cursor do Mouse Dentro do Jogo
Primeiro, crie uma sprite que será o cursor. No objeto obj_Mouse, adicione um evento Step. Vá na Aba Extra, e abaixo de Other, arraste a setinha dourada para a ação. Aí, é só escolher a sprite! Veja o meu:
2 - Fazendo um Efeito Seguir o Mouse
Na verdade, esse é super-simples. No obj_Mouse, adicione um Step. Agora, vá na aba Draw. Embaixo de Other, arraste a explosãozinha. Ela é o símbolo dos Efeitos. Certo, agora, na X e na Y, deve-se colocar o seguinte:
X: mouse_x
Y: mouse_y
Ok, agora é só configurar como quiser. Escolha o tipo de efeito, o tamanho e a cor. Não marque a opção Relative. E não é bom mecher no where. Olha como ficou o meu:
Pronto galera, é bem fácil né? E se quiser usar os dois de uma vez, é só colocar ambos no evento Step.
Observação Importante: Para funcionar, você deve colocar o obj_Mouse em todas as Rooms que você quer que troque o curso, ou o efeito siga o curso, ou mesmo que faça os dois!
o fórum é esse, todo o credito vai p eles- Código:
http://legalgamesforum.forumsline.com
GuiEdu- Data de inscrição : 04/06/2010
Reputação : 0
Número de Mensagens : 505
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Super Dicas de GM
legal cara alguns comandos nao sabia pra que servia
da pra escreve um livro com essas dicas flw
da pra escreve um livro com essas dicas flw
kraptus- Data de inscrição : 01/06/2010
Reputação : 6
Número de Mensagens : 111
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Super Dicas de GM
Legal, acho que seria melhor se você postasse a fonte logo na descrição, mas isso não vem ao caso.. São dicas simples, mas que podem fazer falta em um jogo complexo.. (:
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: Super Dicas de GM
Muito bom,explicou muito bem,isso e o básico da gml,mais se você fosse o autor ia ser melhor ainda,não gosto muito do: ctrl - ctrl v.
Obs: Ô tuto grande.
Obs: Ô tuto grande.
Re: Super Dicas de GM
bem, eu dei uma editadinha bem, bem básica, mais sabe, eu tava de saída para a escola e nem deu p fazer um negócio melhor, bem formatado, mas tem muita coisa boa aíSalathiel escreveu:Muito bom,explicou muito bem,isso e o básico da gml,mais se você fosse o autor ia ser melhor ainda,não gosto muito do: ctrl - ctrl v.
GuiEdu- Data de inscrição : 04/06/2010
Reputação : 0
Número de Mensagens : 505
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Super Dicas de GM
nooosssaaaa isso é um balta de um tutorial imagino que o cara que fez ele teve muita paciência pra escreve tudo isso
Sonic- Games Ranking :
Notas recebidas : D
Data de inscrição : 12/01/2010
Reputação : -4
Número de Mensagens : 384
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Super Dicas de GM
não foi só um cara naumSonic escreveu:nooosssaaaa isso é um balta de um tutorial imagino que o cara que fez ele teve muita paciência pra escreve tudo isso
foram uns 5 ou 6
daí eu editei e juntei tudo num só e trouxe humildemente, carinhosamente, especialmente para vcs (nois)
GuiEdu- Data de inscrição : 04/06/2010
Reputação : 0
Número de Mensagens : 505
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Super Dicas de GM
Muito boas essas dicas, pena que eu já tinha visto isso em outro forúm.
Será de grande ajuda pra todos os usuários!
Será de grande ajuda pra todos os usuários!
Tópicos semelhantes
» Jogo:Super Sonic não e tão super
» Super Policial (Super Cop)
» COMPUTADOR - Dicas
» dicas tululoo
» [DICAS] PAINT
» Super Policial (Super Cop)
» COMPUTADOR - Dicas
» dicas tululoo
» [DICAS] PAINT
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos