O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Problema ao mudar de mapa RPG Maker 2003

Iniciado por d4ftw0rm, 30/06/2020 às 12:56

Bom dia a todos, sou novo aqui.
Recentemente eu resolvi fazer uma varredura no pc e encontrei um joguinho feito por mim no RPG Maker 2003 que eu fiz em meados de 2004 ou 2006.
Hoje consegui fazer o joguinho abrir depois de muito pesquisar, mas quando eu resolvo entrar em alguma porta ou barco e etc, o jogo da o seguinte error "Event script referenced a map that does not exist", nao entendo pq , pois o jogo tem 43 mapas, e eu lembro de ter feito varios mapas pra esse joguinho.
Segue o print:


Alguem sabe o que eu devo fazer? estou muito ansioso pra ver o que eu fiz, tentar sentir um pouco de nostalgia. Aquele tempo era muito bom.

30/06/2020 às 18:44 #1 Última edição: 30/06/2020 às 18:49 por Dr.XGB
Este erro é bem comum quando há um conflito na leitura de eventos.
O que aconteceu foi porque logo após o teleporte do mapa A para o mapa B, houve alguma ação com um determinado evento do Mapa A. Todavia, a partir do momento em que você mudou de mapa, o jogo puxa todos os dados contendo os eventos que serão serão lidos novamente neste mapa e aí então os comandos inseridos logo após aquele teleporte continuarão sendo lidos porém com um outro conjunto de eventos, causando então este conflito, fazendo com que a aplicação não consiga encontrar o evento que está sendo apontado naquele comando pois ele está em um outro mapa e aí essa exceção que aparece na sua tela é lançada, abortando o seu jogo.

Veja um exemplo de um "Crash Test" que fiz aqui pra vc entender o que aconteceu:


Este é o mapa A. Nele eu inseri 2 eventos: o teleporte (azul) com ID: 0001 e uma Vaca (vermelho) com ID: 0002 para testar.


Este é o mapa B. É o destino cujo o teleporte do mapa A o levará.


Lá no mapa A, a programação do teleporte ficou desta forma. Primeiro o herói se teleportará ao mapa e aí depois
que a sua aplicação fez a leitura dos novos eventos, aquela vaca não existirá mais neste mapa. O mapa A possui dois eventos, o mapa B possui 1 único evento cujo seu ID é 0001. Quando o teleporte acontece e as instruções continuam sendo lidas naquele evento que sobrou no teleporte lá do mapa A, ele vai tentar fazer a Vaca (ID:0002) pular, porém o ID:0002 não existe mais no conjunto de eventos coletado pela aplicação.


E aí, CABUM! Uma exceção é lançada porque a aplicação tenta procurar o evento de ID:0002 e te avisa: "Olha, não consigo encontrar esse evento para poder pular. E agora?" e então fecha o seu jogo.

Solução:
Abrir o seu jogo, ir em todos os momentos em que este erro ocorre e corrigir esse conflito de eventos. Aí depende do que vai rolar no seu jogo.

  • Era pra acontecer uma cutscene logo após o teleporte?
    Então programe a cutscene no mapa onde ela ocorrerá ao invés de ocorrer logo após o teleporte.
  • Há um processo paralelo com um switch ativado onde ele move os eventos do mapa A?
    Desative o switch antes do teleporte acontecer, nunca depois.

Espero que tenha conseguido solucionar seu problema. Não se esqueça de nos retornar se conseguiu ou não.
Qualquer dúvida, não hesite em postar aqui.

Grande abraço! o/