[RESOLVIDO] Sistema de load game

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido [RESOLVIDO] Sistema de load game

Mensagem por Adriano Heartless em Sab 12 Fev 2011, 02:09

Ola pessoal felicidade
Bom estou pedido a ajuda de todos vocês pois estou completamente desesperado e minhas forças estão no 0 pois já tentei de tudo. É o seguinte
Eu e minha equipe estamos desenvolvendo um jogo educativo e optamos pelo game maker pois é a ferramenta que mais sabemos usar. Mas sou iniciante pois o GM é de uma tamanha complexidade enorme.

Peço desculpas se meu tópico é repetido pois esxistem varios falando dessa assunto e estudei muito tais tópicos mais ainda não consegui fazer o que desejo, então vamos lá:

o game está ficando muito grande e o consumo de memoria esta absurdo!!! =O
Pelo meus calculos se o jogo for terminado vai pedir como requerimento minimo 2 GB de memoria LOL
mas que GTA 4 '-'

Então eu criei um diretorio e coloquei todos os arquivos de som externamente. Isso ajudou muito. E agora estou fazendo o mesmo com as Sprites. E atraves de teste de verificação da memoria ficou perfeito mas, só tem um problema =/

criei uma tela de load com um objeto nele contendo a seguinte lógica:

Exclamation No create ele deleta todas as sprites e sons da fase anterior isso para libarar a memoria

// DELETANDO ABERTURA
sprite_delete(spr_13);
sprite_delete(spr_7);
sprite_delete(spr_efect);
sprite_delete(spr_9);
sprite_delete(spr_10);
sprite_delete(spr_quissa);
sprite_delete(spr_14);
sprite_delete(spr_15);
sprite_delete(chiquinha_tela);

// DELETANDO main menu
sprite_delete(spr_historia);
sprite_delete(spr_sair);
sprite_delete(spr_atividades);

// DELETANDO SOUNDS
sound_delete(bgm_abertura);


Exclamation Depois chamo um alarme 0 onde ele carrega as novas sprites da nova fase em seus respectivos lugares no diretorio

// carregando sprite
sprite_replace_sprite(spr_logo_fazenda_final,"Data/Act1/sprlogofazendaquissamafinal.gmspr");
sprite_replace_sprite(balao_fala_tidinho,"Data/GlobalAssets/sprbalaofalatidinho.gmspr");
sprite_replace_sprite(balao_chiquinha,"Data/GlobalAssets/sprbalaochiquinha.gmspr");
sprite_replace_sprite(sStandLeft,"Data/Character/sStandLeft.gmspr");
sprite_replace_sprite(sStandRight,"Data/Character/sStandRight.gmspr");

Exclamation e novamente chamo um alarme [1] para carregar o audio

// CARREGANDO SOUNSDS
sound_replace(bgm_cena_01,"Sound/BGM/cena_01.wav",3,0);
sound_replace(sfx_titulo,"Sound/Interface/titulo.wav",1,0);
sound_replace(voice_chiquinha_01,"Sound/Voice/Chiquinha/01.wav",1,0);
sound_replace(voice_chiquinha_02,"Sound/Voice/Chiquinha/02.wav",1,0);
sound_replace(voice_chiquinha_03,"Sound/Voice/Chiquinha/03.wav",1,0);
sound_replace(voice_chiquinha_04,"Sound/Voice/Chiquinha/04.wav",1,0);


E assim por diante, ou seja, cada atividade terminada entra uma tela de load deletando as sprites e sounds que não serão usadas na proxima atividade e carregando as novas sprites e sounds.

Bom essa foi a lógica que desenvolvi atraves dos estudos daqui do fórum que mais adapitou com a programação do game =/


Só que quando o usuario volta para tela de inicio e quiser reniciar uma atividade que já foi feita antes o load trava pois diz que os sprites e sounds não existe isso porque ja foram deletados antes =/



Tem como fazer uma maneira de deletar da memoria sprites e sounds e depois chama-las no diretorio ou adiciona-las novamente no jogo????


Última edição por adriano Heartleless em Seg 21 Fev 2011, 12:24, editado 1 vez(es)

Adriano Heartless

Número de Mensagens : 95
Idade : 27
Data de inscrição : 12/02/2011
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://ganelse.blogspot.com.br/

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Sistema de load game

Mensagem por Shadow10 em Sab 12 Fev 2011, 02:22

Acho que se determinar que se for tal room cria tais coisas pra ela.
Assim:
Código:
if room = 1{
// carregando sprite
sprite_replace_sprite(spr_logo_fazenda_final,"Data/Act1/sprlogofazendaquissamafinal.gmspr");
sprite_replace_sprite(balao_fala_tidinho,"Data/GlobalAssets/sprbalaofalatidinho.gmspr");
sprite_replace_sprite(balao_chiquinha,"Data/GlobalAssets/sprbalaochiquinha.gmspr");
sprite_replace_sprite(sStandLeft,"Data/Character/sStandLeft.gmspr");
sprite_replace_sprite(sStandRight,"Data/Character/sStandRight.gmspr");


// CARREGANDO SOUNSDS
sound_replace(bgm_cena_01,"Sound/BGM/cena_01.wav",3,0);
sound_replace(sfx_titulo,"Sound/Interface/titulo.wav",1,0);
sound_replace(voice_chiquinha_01,"Sound/Voice/Chiquinha/01.wav",1,0);
sound_replace(voice_chiquinha_02,"Sound/Voice/Chiquinha/02.wav",1,0);
sound_replace(voice_chiquinha_03,"Sound/Voice/Chiquinha/03.wav",1,0);
sound_replace(voice_chiquinha_04,"Sound/Voice/Chiquinha/04.wav",1,0);
}

Assim quando for (room = 1) o sistema vai ter que carregar os arquivos.

Shadow10

Ranking : Nota C
Número de Mensagens : 429
Data de inscrição : 07/11/2010
Notas recebidas : C
Reputação : 19
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Sistema de load game

Mensagem por Adriano Heartless em Sab 12 Fev 2011, 10:00

Poxa vlw mesmo Shadow Razz
sua dica é muito boa dessa forma fica até mais organizado, posso fazer uma tela só de load sem precisar criar varias telas com objetos diferente para carregar os arquivos que era a forma como estava fazendo

Mas, o lance do deleter as Resources da memoria ainda é um problema =/
O pior que se eu não deletar o consumo de memoria só aumenta.
Percebi que o comando "Sprite_delete e sound_delete" funciona diferente do object_delete pois um deleta temporariamente mas, o sprite_delete deleta definitivamente do jogo e se for utilizar tao sprite não tem como =/
O mesmo serve para as sounds.

tinha que ter uma maneira de utilizar e deletar as resources quando necessario para que o consumo de memoria ficar sempre estavel >.<

Adriano Heartless

Número de Mensagens : 95
Idade : 27
Data de inscrição : 12/02/2011
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://ganelse.blogspot.com.br/

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Sistema de load game

Mensagem por Shadow10 em Sab 12 Fev 2011, 23:26

Ja que os arquivos são externos, as sprites podem sim ser deletadas definitivamente pra quando quizer usa-las oa invez de "sprite_replace_sprite"
use "sprite_add_sprite", pois o "sprite_replace_sprite" serve pra sprites que ja estão inclusas no jogo enquanto "sprite_add_sprite" carrega um de um folder que nesse caso seria o do jogo instalado no PC.

Nota: eu não testei, por tanto eu não sei se essa dica vai funcionar, mas vale a pena tentar.

E eu to muito afim de jogar, espero até ficar pronto.

Shadow10

Ranking : Nota C
Número de Mensagens : 429
Data de inscrição : 07/11/2010
Notas recebidas : C
Reputação : 19
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Sistema de load game

Mensagem por Adriano Heartless em Ter 15 Fev 2011, 15:43

Poxa vlw mesmo Shadow O/
era esse comando que eu estava procurando desdo começo sprite_add_sprite pois agora posso deletar a hora que eu quiser e criar um sprite novo eheheheh. Gostaria de agradecer pela ajuda mesmo Happy

Sobre o jogo não sei se poderei disponibiliza-lo para download pois esta sendo desenvolvido para prefeitura da minha cidade e para as escolas mais vou conversar com eles e posto aqui no fórum a respeito com vidios fotos e tudo mais XD

Adriano Heartless

Número de Mensagens : 95
Idade : 27
Data de inscrição : 12/02/2011
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://ganelse.blogspot.com.br/

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Sistema de load game

Mensagem por Conteúdo patrocinado Hoje à(s) 11:54


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum