📧 Message Board Archive

DMOD editing problem..
Im having a small problem with the remake of 9gems 2...afther Dink teleports a few times he cant attack anymore...Ill post the scripts here so you can take a look at it and see the error I cant see:



//Intro part 5 with Dink and Martridge



void main( void )

{

  freeze(1);

  preload(830);

  draw_status();

  fade_up();



  sp_x(1, 275);

  sp_y(1, 378);

  sp_seq(1, 0);

     sp_nodraw(1, 0);

  sp_reverse(1, 1);

  sp_seq(1, 830);

  wait(50);

  playsound(50, 33000,0,0,0);

  wait(2100);

  sp_brain(1, 1);

  sp_reverse(1, 0);

sp_dir(1, 8);

     sp_brain(1, 1);

     sp_que(1, 0);

     sp_noclip(1, 0);

  say_stop("Ugh... I'm gonna be sick...", 1);

  sp_dir(1, 8);

  wait(500);

  move_stop(1, 8, 165, 1);

  sp_dir(1, 6);

int &evil;

  //Now EVIL

  &evil = create_sprite(99, 365, 0, 437, 1);

  sp_noclip(&evil, 1);



  say_stop("Martridge!!", 1);

  wait(250);

  say_stop("'4Yes, I know what happened Dink.", &current_sprite);

  wait(250);

  say_stop("'4But we don't have the time to save Link.", &current_sprite);

  wait(250);

  say_stop("What??", 1);

  wait(250);

  say_stop("'4We must find the other gems before it's too late.", &current_sprite);

  wait(500);

  say_stop("'4Here, take this.", &current_sprite);

  wait(250);

  add_magic("rune2", 437, 5);

  playsound(22, 22050, 0,0,0);

  &cur_magic = 1;

  arm_magic();

  draw_status();

  say_stop("What is it?", 1);

  wait(250);

  say_stop("'4It's a spellbook.", &current_sprite);

  wait(250);

  say_stop("But it's empty!", 1);

  wait(250);

  say_stop("'4You will have to fill it yourself,", &current_sprite);

  wait(250);

  say_stop("'4by solving shrines.", &current_sprite);

  wait(250);

  say_stop("'4When you want to select a spell press M.", &current_sprite);

  wait(250);

  say_stop("'4Here, take this fire spell.", &current_sprite);

  wait(250);



  playsound(22, 22050, 0,0,0);





  if (&life != &lifemax)

  {   wait(500);

      say_stop("'4I'll also heal you.", &current_sprite);

      spawn("mag-star");

      &life = &lifemax;

      wait(250);

  }



  playsound(22, 22050, 0,0,0);



  wait(1000);

  say_stop("'4And you also need this lantern.", &current_sprite);

  wait(500);



     // Isn't that 'chorus sound' funny?

  playsound(22, 22050, 0,0,0);

  wait(120);

     playsound(22, 22050, 0,0,0);

     wait(120);

        playsound(22, 22050, 0,0,0);

        wait(120);

              playsound(22, 22050, 0,0,0);

             wait(120);



  wait(500);

  say_stop("Why do I need ALL THAT??", 1);

  wait(250);

  say_stop("'4The next gem is in a cave.", &current_sprite);

  wait(250);

  say_stop("'4Good luck.", &current_sprite);

  wait(500);



  say_stop("'4Door de machten van magie....", &current_sprite);

  say("Err... Don't worry! I'll walk there!!!...", 1);

  wait(500);

  move(1, 2, 480, 1);

  wait(500);

  //Martridge casts a spell and stop Dink!

  say("'4", &current_sprite);

  int &save_x = sp_x(1, -1);

  int &save_y = sp_y(1, -1);

  // This nice 'freeze' anim/sound was an idea from Sharp (see Milderr!!2's ending)

  // Here is an advantage of beta-testing it =)

  playsound(31, 44050, 0, 0, 0);

  int &sprk = create_sprite(&save_x, &save_y, 7, 166, 1);

  sp_seq(&sprk, 166);

  move(1, 2, &save_y, 1); //stops Dink (cancel previous move)

  wait(200);

  say_stop("...I can't move!", 1);

  //btw, must preload next teleporting

  preload(831);

  wait(500);

  say_stop("'4Don't be so childish, Dink!", &current_sprite);

  wait(500);

  say_stop("'4...Van hier naar daar.", &current_sprite);

  wait(500);

  sp_kill(&evil,10); //hide Martridge's face



  //"Teleport" Dink

  sp_brain(1, 0);

  sp_seq(1, 831);

  wait(50);

     playsound(51, 11025, 0, 0, 0);

  say("AAaaah!!!...", 1);

  wait(500);

  say("", 1);

  wait(1800);

  sp_nodraw(1, 1);



  //create shiny thingie

  wait(200);

  &save_x = sp_x(1, -1);

  &save_y = sp_y(1, -1);

  &save_x -= 25;

  &save_y -= 17;

  &sprk = create_sprite(&save_x, &save_y, 7, 165, 1);

  sp_seq(&sprk, 165);

  preload(9);



  wait(1000);



  stopmidi();

  fade_down();

  fill_screen(0);

  &player_map = 442;

  load_screen();

  draw_screen();

}



then the next one:



//Intro part 6:  Link on a boat and Dink teleported



void main(void)

{

  int &ship = create_sprite(300, 400, 0, 9, 1);

  freeze(1);

  sp_speed(&ship, 1);

  sp_picfreeze(&ship, 1);

  sp_que(&ship, 1000);

  move(&ship, 8, -300, 1);

  fade_up();

  say("'9DIIIINK!!! HEEEELP!!!", &ship);

  say_stop_xy("'% So while Link was brough towards unknow...", 0, 410);

  wait(1000);

  //create shiny thingie

  &save_x = 650;

  &save_y = 200;

  int &sprk = create_sprite(&save_x, &save_y, 6, 165, 1);

  sp_seq(&sprk, 165);

  sp_que(&sprk, 1000);

  sp_speed(&sprk, 3);

  move(&sprk, 4, -10, 1);

  say_stop_xy("'% Dink was teleported towards the next Gem of Life...", 0, 410);

  wait(2000);

  fade_down();

  sp_kill(&ship,10);

  sp_kill(&sprk,10);

  fill_screen(0);

  &player_map = 400;

  load_screen();

  draw_screen();

}



and the next one:



//Intro part 7 with Dink falling into a hole

//This script is attached to an inanimate object in the room.



void main(void)

{

     freeze(1);

     preload(831);

     sp_x(1, 293);

     sp_y(1, 191);

     draw_status();

     fade_up();

     

     int &count = 0;

     &save_x = sp_x(1, -1);

     &save_y = sp_y(1, -1);

     &save_x -= 25;

     &save_y -= 15;

     loop:

     &save_x += random(5, 1);

     &save_x -= random(5, 1);

     &save_y += random(5, 1);

     &save_y -= random(5, 1);

     int &sprk = create_sprite(&save_x, &save_y, 7, 165, 1);

     sp_seq(&sprk, 165);

     &count += 1;

     if (&count != 4)

     {

           wait(300);

           goto loop;

     }

     wait(700);

     &save_x = sp_x(1, -1);

     &save_y = sp_y(1, -1);

     &save_x -= 25;

     &save_y -= 17;

     int &sprk = create_sprite(&save_x, &save_y, 7, 165, 1);

     sp_seq(&sprk, 165);

     wait(250);

     

     // animate Dink

     sp_seq(1, 0);

     sp_nodraw(1, 0);

     sp_reverse(1, 1);

     sp_seq(1, 831);

     playsound(51, 11025, 0, 0, 0);

     wait(2200);

     sp_brain(1, 1);

     sp_dir(1, 2);

     

     wait(500);

     

     

     say_stop("Damn, what a ride.", 1);

     wait(200);

     say_stop("Hey, wait a minute, there isn't any cave.", 1);

     wait(200);

     say_stop("That dumb little midget teleported me to the wrong place.", 1);

     wait(200);

     say_stop("I'd better start walking back.", 1);

     wait(200);

     

     

     move_stop(1, 2, 248, 1);

     int &mcrap = create_sprite(285, 260, 0, 89, 9);

     sp_que(&mcrap, -10);

     //so Dink isn't "behond" the hole :)

     //sp_seq(&mcrap, 167);

     wait(100);

     say("Uh Oh", 1);

     

     wait(900);

     

     int &size = 100;

     loopSize:

     if (&size > 55)

     {

           &size -= 2:

           sp_size(1, &size);

           wait(1);

           goto loopSize;

     }



     stopmidi();

     fade_down();

     fill_screen(0);

     &player_map = 432;

     wait(1);

     load_screen();

     draw_screen();

}





and the last one:



//Intro last Part with Dink now eventually in the cave



void main(void)

{

  //first time entry into game  

  if (&story == 3)

  {

     draw_status();

     dink_can_walk_off_screen(1);

     sp_size(1, 100);

     sp_x(1, 320);

     sp_y(1, -10);

     set_dink_speed(1);

     fade_up();

     sp_picfreeze(1, 1); //freezes Dink's walk animation

     move_stop(1, 2, 200, 1);

     sp_picfreeze(1, 0);

     playsound(15, 22052, 0, 0, 0);

     &life -= 5;

     freeze(1);

     set_dink_speed(3);

     dink_can_walk_off_screen(0);



     say_stop("Ahh! That hurts!", 1);

     wait(200);

     say_stop("It appears I'm in the cave anyway.", 1);

     wait(200);

     say_stop("Martridge and I will have a little talk about teleporting.", 1);

     wait(200)









     &story = 4;

     unfreeze(1);

  }

}



Afther this when yous tart palying again Dink cant attack anymore..its really frustating..
Re: DMOD editing problem..
Whoa! That's too much!

A few questions though:



 1. should be preload_seq(830); instead of preload(830); but that shouldn't be the problem

 2. What is sp_picfreeze(1,1)? Never heard of. It looks like it could be the problem.



Did Dink go through all the scripts (all details)? What you might try is to stop the warping at any point, and then see if Dink can still punch at that point. That way you should at least be able to narrow down where the problem is.

Re: DMOD editing problem..
Beuc thinks the problems is in the brain changes..Ill go try it again.
Re: DMOD editing problem..
: Whoa! That's too much!



: A few questions though:



:  1. should be preload_seq(830); instead of preload(830); but that shouldn't be the problem



:  2. What is sp_picfreeze(1,1)? Never heard of. It looks like it could be the problem.



Its a command that stops the gfx like the boat sailing in MI..
Re: DMOD editing problem..
: Afther this when yous tart palying again Dink cant attack anymore..its really frustating..



You do arm and equip item-fst.c, right?
Re: DMOD editing problem..
: : Afther this when yous tart palying again Dink cant attack anymore..its really frustating..



: You do arm and equip item-fst.c, right?



Yes of course...



Re: DMOD editing problem..
: : : Afther this when yous tart palying again Dink cant attack anymore..its really frustating..



: : You do arm and equip item-fst.c, right?



: Yes of course...



Just make sure.  Hit enter, and equip the fist.  If it isn't there, you know you have a problem.
Re: DMOD editing problem..
: : : Afther this when yous tart palying again Dink cant attack anymore..its really frustating..



: : You do arm and equip item-fst.c, right?



: Yes of course...



That's an awful lot of script to read though, but is it posible you used up all the resources of some kind (vars, scripts), a memory leak of some kind perhaps? Dink will be pretty much helpless if something like that happens.
Re: DMOD editing problem..
There different scripts..and yes Redink1 I tried that. You can arm the weapon but when you attack you only hear the sound and no movement. The fist works perfectley before that tough. And because a lot this isn't my own scripting I cant figure it out.