Jump to content
  • 0
Sign in to follow this  
Haikenz

Mini-game pacporing

Question

Este é um script antigo, porem eu gosto muito dele, pena que está desatualizado, por isso gostaria da ajuda de vocês que entendem de script para consertar

Este é o primeiro erro que aparece quando ja liga o emulador

[Warning]: script: buildin_getmapxy: .m$pacporing4 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (80,77)
[Warning]: script: buildin_getmapxy: .m$pacporing13 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (144,118)
[Warning]: script: buildin_getmapxy: .m$pacporing52 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (93,39)
[Warning]: script: buildin_getmapxy: .m$pacporing33 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (119,80)
[Warning]: script: buildin_getmapxy: .m$pacporing63 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (144,39)
[Warning]: script: buildin_getmapxy: .m$pacporing32 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (119,80)
[Warning]: script: buildin_getmapxy: .m$pacporing3 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (119,80)
[Warning]: script: buildin_getmapxy: .m$pacporing53 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (93,39)
[Warning]: script: buildin_getmapxy: .m$pacporing42 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (80,77)
[Warning]: script: buildin_getmapxy: .m$pacporing1 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (144,118)
[Warning]: script: buildin_getmapxy: .m$pacporing12 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (144,118)
[Warning]: script: buildin_getmapxy: .m$pacporing43 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (80,77)
[Warning]: script: buildin_getmapxy: .m$pacporing62 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (144,39)
[Warning]: script: buildin_getmapxy: .m$pacporing5 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (93,39)
[Warning]: script: buildin_getmapxy: .m$pacporing23 is not a string variable.
[Debug]: Source (NPC): Kasa at poring_s03 (158,77)
[Debug]: (map_mapname2mapid) mapindex_name2id: Map "" not found in index list!
[Debug]: Source (NPC): Stomring#pacporingConfig at poring_s01 (17,223)
[Warning]: script: buildin_getmapxy: .m$pacporing22 is not a string variable.
[Debug]: Source (NPC): Fantasma at poring_s02 (158,77)
[Warning]: script: buildin_getmapxy: .m$pacporing2 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (158,77)
[Warning]: script: buildin_getmapxy: .m$pacporing6 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (144,39)

Este ja acontece já dentro do jogo quando pega o cristal pra ficar invencivel (igual ao pacman)

[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Aprendiz at poring_s01 (0,0)

[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Fantasma at poring_s02 (0,0)

[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Kasa at poring_s03 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Kasa at poring_s03 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Karsa at poring_s03 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Kasa at poring_s03 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Kasa at poring_s03 (0,0)
[Error]: script:run_script_main: infinity loop !
[Debug]: Source (NPC): Kasa at poring_s03 (0,0)
[Debug]: Source (NPC): Stomring#pacporingConfig at poring_s01 (17,223)
[Debug]: NPCEvent '#pacporingbonus12::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '#pacporingbonus22::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '#pacporingbonus32::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '::On2PacPoringEnable' not found! (source: Stomring#pacporingConfig)

Esse ultimo erro ja aparece quando completa o nivel e vai para o proximo.

 

NPC: https://pastebin.com/0gm0q5y0

Share this post


Link to post
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Olá Dream Catcher,

Eu não analisei a fundo a lógica do script, mas vou te ajudar identificar e corrigir alguns erros.

5 horas atrás, Dream Catcher disse:

[Warning]: script: buildin_getmapxy: .m$pacporing4 is not a string variable.
[Debug]: Source (NPC): Aprendiz at poring_s01 (80,77)

O comando getmapxy está esperando como primeiro argumento uma variável do tipo string. Neste caso, a variável passada é do tipo int.

Correção:

getmapxy(getd(".m$"+strnpcinfo(3)+"$"),getd(".x"+strnpcinfo(3)),getd(".y"+strnpcinfo(3)),1);


Um erro interessante, se você reparar bem no script não existem laços (do, while, for), então me perguntei como poderia haver um loop infnito ali.

5 horas atrás, Dream Catcher disse:

[Error]: script:run_script_main: infinity loop ! [Debug]:
Source (NPC): Aprendiz at poring_s01 (0,0)

A resposta? Acredito que os gotos, mas não tenho certeza... teste a correção segue abaixo:

Correção:

L_invincible:
freeloop(1);
// O jogador é invencível,(que se movem aleatoriamente)
getmapxy(.@maplocation$,.@Xlocation,.@Ylocation,1);
set .@Xlocation2,rand(5);
set .@Ylocation2,rand(5);
set .@Xlocation,.@Xlocation+.@Xlocation2;
set .@Ylocation,.@Ylocation+.@Ylocation2;
if (checkcell(.@maplocation$,.@Xlocation,.@Ylocation,cell_walkable)) goto L_invincible;
freeloop(0);
npcwalkto .@Xlocation,.@Ylocation;
initnpctimer;
end;

 

Por último, seguem diversas mensagens de erro se referindo ao mesmo tipo de erro, eventos não encontrados.

5 horas atrás, Dream Catcher disse:

[Debug]: Source (NPC): Stomring#pacporingConfig at poring_s01 (17,223)
[Debug]: NPCEvent '#pacporingbonus12::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '#pacporingbonus22::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '#pacporingbonus32::OnEnable' not found! (source: Stomring#pacporingConfig)
[Debug]: NPCEvent '::On2PacPoringEnable' not found! (source: Stomring#pacporingConfig)

Não sei ao certo se os eventos deveriam ou não existir, como disse anteriormente não analisei a fundo o script. Portanto, segue a minha sugestão:

Correções:

case 1: case 2: case 3:
    donpcevent "::OnPacPoringEnable";
    break;
donpcevent "#pacporingbonus1"+.@k$+"::OnEnablePacBonus";
donpcevent "#pacporingbonus2"+.@k$+"::OnEnablePacBonus";
donpcevent "#pacporingbonus3"+.@k$+"::OnEnablePacBonus";

Isso é o máximo que eu posso fazer, espero ter ajudado de alguma forma.

Att,
_Okuz_.

Edited by Okuz
  • Love 1

Share this post


Link to post
Share on other sites
  • 0
4 horas atrás, Okuz disse:

Olá Dream Catcher,

Eu não analisei a fundo a lógica do script, mas vou te ajudar identificar e corrigir alguns erros.

O comando getmapxy está esperando como primeiro argumento uma variável do tipo string. Neste caso, a variável passada é do tipo int.

Correção:


getmapxy(getd(".m$"+strnpcinfo(3)+"$"),getd(".x"+strnpcinfo(3)),getd(".y"+strnpcinfo(3)),1);


Um erro interessante, se você reparar bem no script não existem laços (do, while, for), então me perguntei como poderia haver um loop infnito ali.

A resposta? Acredito que os gotos, mas não tenho certeza... teste a correção segue abaixo:

Correção:


L_invincible:
freeloop(1);
// O jogador é invencível,(que se movem aleatoriamente)
getmapxy(.@maplocation$,.@Xlocation,.@Ylocation,1);
set .@Xlocation2,rand(5);
set .@Ylocation2,rand(5);
set .@Xlocation,.@Xlocation+.@Xlocation2;
set .@Ylocation,.@Ylocation+.@Ylocation2;
if (checkcell(.@maplocation$,.@Xlocation,.@Ylocation,cell_walkable)) goto L_invincible;
freeloop(0);
npcwalkto .@Xlocation,.@Ylocation;
initnpctimer;
end;

 

Por último, seguem diversas mensagens de erro se referindo ao mesmo tipo de erro, eventos não encontrados.

Não sei ao certo se os eventos deveriam ou não existir, como disse anteriormente não analisei a fundo o script. Portanto, segue a minha sugestão:

Correções:


case 1: case 2: case 3:
    donpcevent "::OnPacPoringEnable";
    break;

donpcevent "#pacporingbonus1"+.@k$+"::OnEnablePacBonus";
donpcevent "#pacporingbonus2"+.@k$+"::OnEnablePacBonus";
donpcevent "#pacporingbonus3"+.@k$+"::OnEnablePacBonus";

Isso é o máximo que eu posso fazer, espero ter ajudado de alguma forma.

Att,
_Okuz_.

apareceu isso quando executei o emulador

[Debug]: (map_mapname2mapid) mapindex_name2id: Map "" not found in index list!

Até agora não apareceu mais nenhum erro depois entrei dentro do jogo.

Outra coisinha que percebi já dentro do jogo é que o monstro não mata o player se ficar parado ele fica encostado ao lado, somente se andar é que ele mata

Quando come o cristal bônus ele dar 10 seg de invencibilidade e quando come o aprendiz não aumenta os 10 segundos a mais. ( pois era pra aumentar +10 seg )

Script modificado: https://pastebin.com/kxWUj399

Edited by Dream Catcher

Share this post


Link to post
Share on other sites
  • 0

Este erro ocorre porque algum comando de script tentou utilizar um mapa que não está presente no map_index / cache. Infelizmente não sei te dizer em que momento que o erro ocorre, mas certifique-se de que você tem todos os mapas, que o script precisa para ser executado, implementados em seu emulador.

Sobre outras questões do jogo, não vou me prontificar porque este é um script bem antigo. A lógica presente nele (do meu ponto de vista) não está boa, acho que na época que o script foi feito não existiam comandos e formas melhores de se fazer isso, porém, hoje em dia há.

Para os demais problemas eu recomendo que você estude o básico / intermediário de scripting pois você mesmo será capaz de saná-los.

Isso é o máximo que eu posso fazer, desculpe.

Att,
_Okuz_.

  • Love 1

Share this post


Link to post
Share on other sites
Este tópico já possui mais de 30 dias sem respostas. Por favor, abra um novo tópico

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Seja bem vindo ao Cronus-Emulator.
É sempre um prazer te-lo conosco.
Você pode visualizar nossas áreas de suporte para encontrar suas soluções sem a necessidade de se registrar!
Registrando em nossa comunidade, você poderá conhecer mais sobre nosso projeto, criar tópicos, responder tópicos existentes, baixar milhares de recursos em nosso sistema de downloads, participar de nossa comunidade, customizar seu perfil e muito mais... Se você já possui uma conta, faça seu login - ou crie uma conta. Também temos integração com Google+ e Facebook.

×
×
  • Create New...