Jump to content

karazu

Members
  • Posts

    374
  • Joined

  • Last visited

Posts posted by karazu

  1. Hello /no1

     

    I think adding @disconnect command would be really useful since 2012 client force player to exit the game to login with another account.

     

    how about that script geniuses?

     

    thanks~ /bo

    USE 2013 client "2013/08/07"  it will let you use another account without going out of the client. 

  2. Can i have an suggestion? Why not maybe instead of implementing Rebellion class why not implement first the new 3rd job skills? and then go on to Rebellion update? And also as i knew Rebellion sprite can be seen on 2013-07-14cRagexe and up.

    I just found 2013-07-17c instead 2013-07-14c

     

    anyone can confirm another client (below 2013-08-07aRagexe) that work with Rebellion?

    will only work on 

    2013-08-07aRagexe

  3. Try  (spawn time is every 2 hours) :

    -    script    Sample    -1,{
    OnInit:
        announce "Dark Lord has been summoned!",0;
        monster "prontera",0,0,"Dark Lord",1272,1,strnpcinfo(1)+"::OnKill";
        end;
        
    OnKill:
        announce "Dark Lord has been killed by " +strcharinfo(0)+ "!",0;
        end;
        
    OnMinute00:
        if ( ( gettime(3) % 2 ) == 0 )
            donpcevent strnpcinfo(1)+"::OnInit";
        end;
            
    }
    

    I think he wants to apply it in all MVP's

  4. Rejected patch
     

    --- src/map/skill.h
    +++ src/map/skill.h
    @@ -21,7 +21,8 @@
     #define MAX_SKILL_IMPROVISE_DB 50
     
     #define MAX_SKILL_LEVEL 100
    -
    +int skill_mcri_hit(int tid, unsigned int tick, int _damage, intptr_t data);
    +int skill_mcri_kill_delay(int tid, unsigned int tick, int id, intptr_t data);
     //Constants to identify the skill's inf value:
     enum e_skill_inf
     {
     

     

     

  5. OnTimer190000:

        if(.point[1]>.point[2]){

            set .bg_id_w,$@bg_id_a;

            Announce "[battle Ground]:Team A Win!",0;

        }else if(.point[2]>.point[1]){

            set .bg_id_w,$@bg_id_b;

            Announce "[battle Ground]:Team B Win!",0;

        }else{

            set .bg_id_w,-1;

            Announce "[battle Ground]:Draw!",0;

        }

        for( set .@i,1; .playerid[.@i]; set .@i,.@i+1 ){

            if( attachrid(.playerid[.@i]) ){    //Prize if Team A win

                if(.bg_id_w == -1){ getitem 605,1;} //If Match Draws

                else if( getcharid(4) == .bg_id_w ) { getitem 605,1;} //If Someone Wins

            }

        }

     

    Tried using this lines

     

     

    for( set .i,1; i <= getarraysize(.playerid[.i]); set .i,.i+1 ){
     

    and

     

     

    for( set .@i,1; getarraysize(.playerid[.@i]) < .@i; set .@i,.@i+1 ){
     

    Booth doesn't have error in the MAP DB but still wont give a prize.

     

  6. Thank you for that.

    I will try this one.

     

     

     

    Are you sure that you're syntax of your for()-loop is right?

    for( set .@i,1; ..playerid[.@i]; set .@i,.@i+1 ){

    [/quote

    as you can the in the marked part there is not really a statement telling the loop how long it should repeat.

    It might be working, what I actually do not know because the athena-script-language is a bit weird and sometimes quite simple, so I would find it weird, if this would work.

    If it's like PHP it might be working if it interprets that you're just asking if this var has a value, so returning true. and as long as this statement returns true the for-loop should work.

     

    But to be safe just try this:

     

    for( set .@i,1; getarraysize(.playerid[.@i]) < .@i; set .@i,.@i+1 ){

    Hello  Still did not work.

     

     

    It will only announce and will not give prize..


    Hello Lets just continue the discussion fixing here:
     

     

    http://rathena.org/board/topic/88645-custom-battle-ground-by-goddammit-not-properly-working/
     

    Thank you

  7. Please help me with this.

    after the event/BG it will not give you a prize.


    This is the script


    DRAW,TEAM A or B wins it will not give you.

     

     

    OnTimer190000:
        if(.point[1]>.point[2]){
            set .bg_id_w,$@bg_id_a;
            Announce "[Battle Ground]:Team A Win!",0;
        }else if(.point[2]>.point[1]){
            set .bg_id_w,$@bg_id_b;
            Announce "[Battle Ground]:Team B Win!",0;
        }else{
            set .bg_id_w,-1;
            Announce "[Battle Ground]:Draw!",0;
        }
        for( set .@i,1; .playerid[.@i]; set .@i,.@i+1 ){
            if( attachrid(.playerid[.@i]) ){    //Prize if Team A win
                if(.bg_id_w == -1){ getitem 605,1;} //If Match Draws
                else if( getcharid(4) == .bg_id_w ) { getitem 605,1;} //If Someone Wins
            }
        }
     
     

     

  8. Related Topic

    http://rathena.org/board/topic/88636-onclock-command/#entry227658     (solve no error on map DB)
    http://rathena.org/board/topic/88644-what-is-the-error-all-about/              (solve no error on map DB)

     

     

     

     

     

    NPC problem in game.

    The time is ok, it will start every 15 mins of the game. 
    I can click the NPC but theirs a problem


    According to the Screen shot
    You can click it.
    Choose Join but after that It will  re direct you to Complete.
    post-2978-0-93934000-1381807775_thumb.jpg
    And it will continue to announce the statuses
     




     



    This is the script anyway
     

    //Author-Script		Goddameit	My forum : http://bit.ly/MDuQ9F	
    //Author-Map		TrojanWorm
    //Version		2012-10-31
    
    //Don't re-release in anywhere and anyway
    
    //////////////////////////////////////////////////////////////////////////
    
    endless_war	mapflag	battleground	2
    endless_war,218,86,0	script	#BattleGroundwarpA2	100,{
    	end;
    OnInit:
    	waitingroom "Join Team A(Click)",2,"#BattleGroundwarpA2::OnJoin",1;
    	end;
    OnJoin:
    	if(!$@bg_id_a)
    		set $@bg_id_a,waitingroom2bg("endless_war",205,85,"","");
    	else
    		waitingroom2bg_single($@bg_id_a,"endless_war",205,85,"#BattleGroundwarpA2");
    	warpwaitingpc "endless_war",205,85;
    	end;
    }
    endless_war,40,86,0	script	#BattleGroundwarpB2	100,{
    	end;
    OnInit:
    	waitingroom "Join Team B(Click)",2,"#BattleGroundwarpB2::OnJoin",1;
    	end;
    OnJoin:
    	if(!$@bg_id_
    		set $@bg_id_b,waitingroom2bg("endless_war",53,85,"","");
    	else
    	waitingroom2bg_single($@bg_id_b,"endless_war",53,85,"#BattleGroundwarpB2");
    	warpwaitingpc "endless_war",53,85;
    	end;
    }
    endless_war,165,86,0	script	#BattleGroundwarpA1	45,2,2,{
    	warp "endless_war",161,86;
    	end;
    }
    endless_war,90,86,0	script	#BattleGroundwarpB1	45,2,2,{
    	warp "endless_war",94,86;
    	end;
    }
    prontera,150,180,4	script	Battle Ground	100,{
    	if(.status==2)
    	{
    		mes "Game is running.";
    		close;
    	}
    	if(.status==1)
    	{
    		
    		if(.playernm>=128)
    		{
    			mes "Sorry, full";
    			close;
    		}
    		select("Join");
    		if(!.playerid[1])
    		{
    			//callsub OnEndd;
    			initnpctimer;
    		}
    		set .playernm,.playernm+1;
    		set .playerid[.playernm],getcharid(0);
    		mes "Complete";
    		close;
    	}
    	end;
    OnMinute00:
    OnMinute15:
    OnMinute30:
    OnMinute45:
    	callsub OnActive;
    	end;
    OnActive:
    	callsub OnEndd;
    	set .status,1;
    	Announce "[Battle Ground]:Someone active the game! Go to prontera,150,180 and join us!",0;
    	end;
    OnTimer60000:
        if(.point[1]>.point[2])
        {
            Announce "[Battle Ground]:Team A Win!",0;
            getitem $@bg_id_a,605,1;
        }else if(.point[2]>.point[1])
        {
            Announce "[Battle Ground]:Team B Win!",0;
            getitem $@bg_id_b,605,1;
        }else
        {
            Announce "[Battle Ground]:Draw!",0;
            getitem $@bg_id_a,605,1;
            getitem $@bg_id_b,605,1;
        }
     	callsub OnEnab2;
    	end;
    OnTimer90000:
    	set .status,2;
    	Announce "[Battle Ground]:Go!",0;
    	bg_monster $@bg_id_a,"endless_war",128,120,"A",1907,"Battle Ground::OnAdestory";
    	bg_monster $@bg_id_b,"endless_war",127,46,"B",1907,"Battle Ground::OnBdestory";
    	callsub OnEnab1;
    	end;
    OnTimer190000:
    	if(.point[1]>.point[2])
    	{
    		Announce "[Battle Ground]:Team A Win!",0;
    		getitem $@bg_id_a,605,1;
    	}else if(.point[2]>.point[1])
    	{
    		Announce "[Battle Ground]:Team B Win!",0;
    		getitem $@bg_id_b,605,1;
    	}else
    	{
    		Announce "[Battle Ground]:Draw!",0;
    		getitem $@bg_id_a,605,1;
    		getitem $@bg_id_b,605,1;
    	}
    	sleep2 3000;
    	callsub OnEndd;	
    	end;
    OnBdestory:
    	set .point[1],.point[1]+5;
    	set .point[2],.point[2]-3;
    	bg_updatescore "endless_war",.point[1],.point[2];
    	detachrid;
    	sleep2 10000;
    	bg_monster $@bg_id_b,"endless_war",127,46,"B",1907,"Battle Ground::OnBdestory";
    	end;
    OnAdestory:
    	set .point[2],.point[2]+5;
    	set .point[1],.point[1]-3;
    	bg_updatescore "endless_war",.point[1],.point[2];
    	detachrid;
    	sleep2 10000;
    	bg_monster $@bg_id_a,"endless_war",128,120,"A",1907,"Battle Ground::OnAdestory";
    	end;
    OnEndd:
    	set .status,0;
    	bg_destroy $@bg_id_a;
    	bg_destroy $@bg_id_b;
    	set $@bg_id_a,0;
    	set $@bg_id_b,0;
    	setarray .point[1],0,0;
    	killmonsterall "endless_war";
    	bg_updatescore "endless_war",.point[1],.point[2];
    	deletearray .playerid[0],128;
    	mapwarp "endless_war","prontera",150,180;
    	callsub OnDisa;
    	return;
    OnEnab1:
    	enablenpc "#BattleGroundwarpA1";
    	enablenpc "#BattleGroundwarpB1";
    	return;
    OnEnab2:
    	enablenpc "#BattleGroundwarpA2";
    	enablenpc "#BattleGroundwarpB2";
    	return;
    OnDisa:
    	disablenpc "#BattleGroundwarpA1";
    	disablenpc "#BattleGroundwarpB1";
    	disablenpc "#BattleGroundwarpA2";
    	disablenpc "#BattleGroundwarpB2";
    	return;
    OnInit:
    	sleep2 10000;
    	setwall "endless_war",218,87,1,1,0,"BattleGroundwarpA21";
    	setwall "endless_war",219,87,1,1,0,"BattleGroundwarpA22";
    	setwall "endless_war",219,86,1,1,0,"BattleGroundwarpA23";
    	setwall "endless_war",219,85,1,1,0,"BattleGroundwarpA24";
    	setwall "endless_war",218,85,1,1,0,"BattleGroundwarpA25";
    	setwall "endless_war",217,85,1,1,0,"BattleGroundwarpA26";
    	setwall "endless_war",217,86,1,1,0,"BattleGroundwarpA27";
    	setwall "endless_war",217,87,1,1,0,"BattleGroundwarpA28";
    	setwall "endless_war",40,87,1,1,0,"BattleGroundwarpB21";
    	setwall "endless_war",41,87,1,1,0,"BattleGroundwarpB22";
    	setwall "endless_war",41,86,1,1,0,"BattleGroundwarpB23";
    	setwall "endless_war",41,85,1,1,0,"BattleGroundwarpB24";
    	setwall "endless_war",40,85,1,1,0,"BattleGroundwarpB25";
    	setwall "endless_war",39,85,1,1,0,"BattleGroundwarpB26";
    	setwall "endless_war",39,86,1,1,0,"BattleGroundwarpB27";
    	setwall "endless_war",39,87,1,1,0,"BattleGroundwarpB28";
    	callsub OnEndd;
    	end;
    OnPCKillEvent:
    	if(strcharinfo(3)=="endless_war" && $@bg_id_a && $@bg_id_
    	{
    		if(getcharid(4) == $@bg_id_a)
    		{
    			set .point[1],.point[1]+1;
    		}else
    			set .point[2],.point[2]+1;
    		bg_updatescore "endless_war",.point[1],.point[2];
    	}
    	end;
    }
    
  9. What is the error in my script?


    I added this Script in the Custom Battle ground of Goddammit
     

     

        if(.point[1]>.point[2])
        {
            Announce "[Battle Ground]:Team A Win!",0;
            getitem $@bg_id_a,<item id>,<qty>;
        }else if(.point[2]>.point[1])
        {
            Announce "[Battle Ground]:Team B Win!",0;
            getitem $@bg_id_b,<item id>,<qty>;
        }else
        {
            Announce "[Battle Ground]:Draw!",0;
            getitem $@bg_id_a,<item id>,<qty>;
            getitem $@bg_id_b,<item id>,<qty>;
        }
     



    what is exaclty the error?


    This is in the MAP DB
     

     

     

    [Error]: 
    script error on npc/custom/MYNPC/CustomBattle.txt line 109
        parse_simpleexpr: unexpected character
       104 :     end;
       105 : OnTimer190000:
       106 :     if(.point[1]>.point[2])
       107 :     {
       108 :         Announce "[Battle Ground]:Team A Win!",0;
    *  109 :         getitem $@bg_id_a,'<'item id>,<qty>;
       110 :     }else if(.point[2]>.point[1])
       111 :     {
       112 :         Announce "[Battle Ground]:Team B Win!",0;
       113 :         getitem $@bg_id_b,<item id>,<qty>;
       114 :     }else
    [Info]: Done loading '14800' NPCs:
     
     

     



     



    ops i forgot to put an item sorry!



    still exist
     

     

    [Error]: 
    script error on npc/custom/MYNPC/CustomBattle.txt line 85
        parse_simpleexpr: unexpected character
        80 :     end;
        81 : OnTimer60000:
        82 :     if(.point[1]>.point[2])
        83 :     {
        84 :         Announce "[Battle Ground]:Team A Win!",0;
    *   85 :         getitem $@bg_id_a,'<'605>,<1>;
        86 :     }else if(.point[2]>.point[1])
        87 :     {
        88 :         Announce "[Battle Ground]:Team B Win!",0;
        89 :         getitem $@bg_id_b,<605>,<1>;
        90 :     }else
     

     



    for got to remove 

     

    <   >
     


    NO more error! HURAY



    New topic
     

     

    http://rathena.org/board/topic/88645-custom-battle-ground-by-goddammit-not-properly-working/
     
  10. Thank you for the reply.


    I am supposed to add it in this script

    //Author-Script        Goddameit    My forum : http://bit.ly/MDuQ9F    
    //Author-Map        TrojanWorm
    //Version        2012-10-31
    
    //Don't re-release in anywhere and anyway
    
    //////////////////////////////////////////////////////////////////////////
    
    endless_war    mapflag    battleground    2
    endless_war,218,86,0    script    #BattleGroundwarpA2    100,{
        end;
    OnInit:
        waitingroom "Join Team A(Click)",2,"#BattleGroundwarpA2::OnJoin",1;
        end;
    OnJoin:
        if(!$@bg_id_a)
            set $@bg_id_a,waitingroom2bg("endless_war",205,85,"","");
        else
            waitingroom2bg_single($@bg_id_a,"endless_war",205,85,"#BattleGroundwarpA2");
        warpwaitingpc "endless_war",205,85;
        end;
    }
    endless_war,40,86,0    script    #BattleGroundwarpB2    100,{
        end;
    OnInit:
        waitingroom "Join Team B(Click)",2,"#BattleGroundwarpB2::OnJoin",1;
        end;
    OnJoin:
        if(!$@bg_id_
            set $@bg_id_b,waitingroom2bg("endless_war",53,85,"","");
        else
        waitingroom2bg_single($@bg_id_b,"endless_war",53,85,"#BattleGroundwarpB2");
        warpwaitingpc "endless_war",53,85;
        end;
    }
    endless_war,165,86,0    script    #BattleGroundwarpA1    45,2,2,{
        warp "endless_war",161,86;
        end;
    }
    endless_war,90,86,0    script    #BattleGroundwarpB1    45,2,2,{
        warp "endless_war",94,86;
        end;
    }
    prontera,150,180,4    script    Battle Ground    100,{
        if(.status==2)
        {
            mes "Game is running.";
            close;
        }
        if(.status==1)
        {
            
            if(.playernm>=128)
            {
                mes "Sorry, full";
                close;
            }
            select("Join");
            if(!.playerid[1])
            {
                //callsub OnEndd;
                initnpctimer;
            }
            set .playernm,.playernm+1;
            set .playerid[.playernm],getcharid(0);
            mes "Complete";
            close;
        }
        end;
    OnClock0100:
    OnClock0300:
    OnClock0500:
    OnClock0700:
    OnClock0900:
    OnClock1100:
    OnClock1300:
    OnClock1500:
    OnClock1700:
    OnClock1900:
    OnClock2100:
    OnClock2300:
        callsub OnActive;
        end;
    OnActive:
        callsub OnEndd;
        set .status,1;
        Announce "[Battle Ground]:Someone active the game! Go to prontera,150,180 and join us!",0;
        end;
    OnTimer60000:
        if(.playernm<=32)
        {
            Announce "[Battle Ground]:Sorry, player amount isn't enough",0;
            callsub OnEndd;
            end;
        }
        Announce "[Battle Ground]:Event is ready!",0;
        for(set .@i,1;.@i<=.playernm;set .@i,.@i+1)
        {
            if(.@i%2==0)
                warpchar "endless_war",218,86,.playerid[.@i];
            else
                warpchar "endless_war",40,86,.playerid[.@i];
        }
        callsub OnEnab2;
        end;
    OnTimer90000:
        set .status,2;
        Announce "[Battle Ground]:Go!",0;
        bg_monster $@bg_id_a,"endless_war",128,120,"A",1907,"Battle Ground::OnAdestory";
        bg_monster $@bg_id_b,"endless_war",127,46,"B",1907,"Battle Ground::OnBdestory";
        callsub OnEnab1;
        end;
    OnTimer190000:
        if(.point[1]>.point[2])
        {
            Announce "[Battle Ground]:Team A Win!",0;
        }else if(.point[2]>.point[1])
        {
            Announce "[Battle Ground]:Team B Win!",0;
        }else
        {
            Announce "[Battle Ground]:Draw!",0;
        }
        sleep2 3000;
        callsub OnEndd;    
        end;
    OnBdestory:
        set .point[1],.point[1]+5;
        set .point[2],.point[2]-3;
        bg_updatescore "endless_war",.point[1],.point[2];
        detachrid;
        sleep2 10000;
        bg_monster $@bg_id_b,"endless_war",127,46,"B",1907,"Battle Ground::OnBdestory";
        end;
    OnAdestory:
        set .point[2],.point[2]+5;
        set .point[1],.point[1]-3;
        bg_updatescore "endless_war",.point[1],.point[2];
        detachrid;
        sleep2 10000;
        bg_monster $@bg_id_a,"endless_war",128,120,"A",1907,"Battle Ground::OnAdestory";
        end;
    OnEndd:
        set .status,0;
        bg_destroy $@bg_id_a;
        bg_destroy $@bg_id_b;
        set $@bg_id_a,0;
        set $@bg_id_b,0;
        setarray .point[1],0,0;
        killmonsterall "endless_war";
        bg_updatescore "endless_war",.point[1],.point[2];
        deletearray .playerid[0],128;
        mapwarp "endless_war","prontera",150,180;
        callsub OnDisa;
        return;
    OnEnab1:
        enablenpc "#BattleGroundwarpA1";
        enablenpc "#BattleGroundwarpB1";
        return;
    OnEnab2:
        enablenpc "#BattleGroundwarpA2";
        enablenpc "#BattleGroundwarpB2";
        return;
    OnDisa:
        disablenpc "#BattleGroundwarpA1";
        disablenpc "#BattleGroundwarpB1";
        disablenpc "#BattleGroundwarpA2";
        disablenpc "#BattleGroundwarpB2";
        return;
    OnInit:
        sleep2 10000;
        setwall "endless_war",218,87,1,1,0,"BattleGroundwarpA21";
        setwall "endless_war",219,87,1,1,0,"BattleGroundwarpA22";
        setwall "endless_war",219,86,1,1,0,"BattleGroundwarpA23";
        setwall "endless_war",219,85,1,1,0,"BattleGroundwarpA24";
        setwall "endless_war",218,85,1,1,0,"BattleGroundwarpA25";
        setwall "endless_war",217,85,1,1,0,"BattleGroundwarpA26";
        setwall "endless_war",217,86,1,1,0,"BattleGroundwarpA27";
        setwall "endless_war",217,87,1,1,0,"BattleGroundwarpA28";
        setwall "endless_war",40,87,1,1,0,"BattleGroundwarpB21";
        setwall "endless_war",41,87,1,1,0,"BattleGroundwarpB22";
        setwall "endless_war",41,86,1,1,0,"BattleGroundwarpB23";
        setwall "endless_war",41,85,1,1,0,"BattleGroundwarpB24";
        setwall "endless_war",40,85,1,1,0,"BattleGroundwarpB25";
        setwall "endless_war",39,85,1,1,0,"BattleGroundwarpB26";
        setwall "endless_war",39,86,1,1,0,"BattleGroundwarpB27";
        setwall "endless_war",39,87,1,1,0,"BattleGroundwarpB28";
        callsub OnEndd;
        end;
    OnPCKillEvent:
        if(strcharinfo(3)=="endless_war" && $@bg_id_a && $@bg_id_
        {
            if(getcharid(4) == $@bg_id_a)
            {
                set .point[1],.point[1]+1;
            }else
                set .point[2],.point[2]+1;
            bg_updatescore "endless_war",.point[1],.point[2];
        }
        end;
    }
     

    ok ill try this one

    OnMinute00:
    OnMinute30:
    
    // range of 30....
     

    currently on my script..

        end;
    OnMinute00:
    OnMinute30:
        callsub OnActive;
        end;
    OnActive:
        callsub OnEndd;
        set .status,1;
        Announce "[Battle Ground]:Someone active the game! Go to prontera,150,180 and join us!",0;
        end;
    OnTimer60000:
        if(.playernm<=32)
        {
     

    Thank you. This is now solve.

    Please help me the about another problem

  11. Hello instead of typing on NPC script
     

    OnClock0100:
    OnClock0300:
    OnClock0500:
    OnClock0700:
    OnClock0900:
    OnClock1100:
     
     
     
    how to make it shorter that the NPC will  just activate every hour or every 30 mins?


    This is every 3 hours?
     

     

    OnMinute00:
        if ( ( gettime(3) % 3 ) == 0 )
            // start the event
        end;
     
×
×
  • Create New...