Jump to content

Ronald

Members
  • Posts

    241
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by Ronald

  1. 
    prontera,149,178,5	script	PT vs PT Manager	752,{
    mes "I am Party Match Manager.";
    mes "Party Leader may create a PVP Match here.";
    next;
    switch( select( ( .Created )?"Join Game[ ^FF0000"+.No+"vs"+.No+"^000000 ]":"Create Game",
    				( ( getgmlevel() >= .GMLevel || getcharid(0) == getpartyleader( getcharid(1),2 ) ) && .Created )?"^FF0000Remove Game^000000":"" )){
    
    Case 1:
    	switch( .Created ){
    		Case 0:
    			getpartymember getcharid(1),1;
    			if( getcharid(0) != getpartyleader( getcharid(1),2 ) || !getcharid(1) ){
    				mes "Sorry, but only a ^FF0000Party Leader^000000 can register a game here.";
    			}else{
    				mes "How many Players for each Party Team ?";
    				mes "Min = 1    Max = "+$@partymembercount;
    				mes "Because you only have "+$@partymembercount+" member right now.";
    				next;
    				input .No,1,$@partymembercount;
    				announce "[ "+.No+"vs"+.No+" Party Match ] created by "+strcharinfo(0)+", you may register to join.",0;
    				set .Team[0],getcharid(1);
    				set .Created,1;
    			}
    			close;
    		Case 1:
    			if( !.Team[1] && getcharid(1) == .Team[0] ){
    				mes "Please wait for ^FF0000Team 2^000000 to Register.";
    			}else{
    				if( getcharid(0) != getpartyleader( getcharid(1),2 ) || !getcharid(1) ){
    					mes "Sorry, but only a ^FF0000Party Leader^000000 can register a game here.";
    					close;
    				}
    				getpartymember getcharid(1),1;
    				if( $@partymembercount < .No ){
    					mes "You didnt have enough of "+.No+" Member for the Game.";
    					mes "You only have "+$@partymembercount+" Member.";
    				}else{
    					mes "Confirm Registration ?";
    					if( select("Yes:No") == 1 ){
    						set .Team[1],getcharid(1);
    						set .Created,2;
    						setarray .Members[0],.No,.No;
    						for( set .@party,0; .@party < 2; set .@party,.@party + 1 ){
    							getpartymember .Team[.@party],1;
    							for( set .@i,0; .@i < .No; set .@i,.@i + 1 )
    								warpchar .Map$,0,0,$@partymembercid[.@i];
    						}
    						end;
    					}
    				}
    			}
    			close;
    		Case 2:
    			mes "^FF0000The Game is in Progress.^000000";
    			mes "[ A "+.No+" vs "+.No+" Game ]";
    			mes "Team ^FF0000"+getpartyname( .Team[0] )+"^000000 vs Team ^FF0000"+getpartyname( .Team[1] )+"^000000 .";
    			close;
    		}
    		close;
    Case 2:
    		mes "Done, Match will be terminated right away.";
    		mapannounce .Map$,"Match has been Cancelled by a GM.",0;
    		close2;
    	OnReset:
    		deletearray .Team[0],getarraysize( .Team );
    		deletearray .Members[0],getarraysize( .Members );
    		if( .Winner ){
    			getpartymember .Winner,2;
    			for( set .@i,0; .@i < .No; set .@i,.@i + 1 ){
    				getitem 7726,5,$@partymemberaid[.@i];
    				getitem 7256,5,$@partymemberaid[.@i];
    			}
    		set .Winner,0;
    		}
    		sleep2 0;
    		set .Created,0;
    		mapwarp .Map$,"prontera",155,180;
    		end;
    }
    close;
    		
    OnPCDieEvent:
    OnPCLogoutEvent:
    if( strcharinfo(3) == .Map$ && .Created ){
    	for( set .@i,0; .@i < 2; set .@i,.@i + 1 )	
    		if( getcharid(1) == .Team[.@i] )
    			set .Members[.@i],.Members[.@i] - 1;
    			
    	if( .Members[0] < 1 ) set .Winner,.Team[1];
    	else if( .Members[1] < 1 ) set .Winner,.Team[0];
    			
    	if( .Winner ){
    		mapannounce .Map$,"Team "+getpartyname( .Winner )+" Win the "+.No+"vs"+.No+" Game.",0;
    		donpcevent strnpcinfo(0)+"::OnReset";
    	}else{
    		warp "prontera",155,180;
    	}
    }
    end;
    				
    OnInit:
    set .GMLevel,80;
    set .Map$,"guild_vs2";
    end;
    }
    

    Players can stop the PT vs PT :(

    Can anyone please help me solve this. Thank you guys! :D

     

     

    I was thinking of when the event starts. The NPC will be hidden and when it is over the NPC will be shown. How can I do that?

  2. prontera,158,192,5    script    Run Or Die    1904,{
        if ( !.start ) {
            mes "No Event at the Moment";
            close;
        }
        if ( .start == 2 ) {
            mes "Event is running";
            close;
        }
        if ( .register_count >= .register_limit ) {
            mes "This event has reach the maximum player participations";
            close;
        }
        percentheal 100,100;
        warp "guild_vs5", 0,0;
        .register_aid[ .register_count ] = getcharid(3);
        .register_count+++;
        end;
    OnWhisperGlobal:
        if ( getgmlevel() < 60 ) end;
    //OnClock0000: // put all your start timer here
    OnMinute20:
        if ( .start ) end;
        announce "Run or Die event registration start", 0;
        .start = 1;
        sleep 10000; // registration timer here
        announce "Run or Die event registration close", 0;
        .start = 2;
        sleep 3000;
        mapannounce "guild_vs5", "survive as long as you can !", 0;
        if ( .register_count < .register_min ) {
            announce "not enough participants for Run or Die event", 0;
            getmapxy .@map$, .@x, .@y, 1;
            mapwarp "guild_vs5", .@map$, .@x, .@y;
            goto L_reset;
        }
        while ( .start == 2 ) {
            monster "guild_vs5", 0,0, "Come On Baby!!!", 1904, 5 + rand(5), "", 0;
            monster "guild_vs5", 0,0, "Come On Baby!!!", 1904, 5 + rand(5), "", 1;
            monster "guild_vs5", 0,0, "Come On Baby!!!", 1904, 5 + rand(5), "", 2;
            sleep 5000;
        }
        end;
    OnPCDieEvent:
    OnPCLogoutEvent:
        if ( .start != 2 || strcharinfo(3) != "guild_vs5" ) end;
        while ( .register_aid != getcharid(3) && .@i < .register_count ) .@i++;
        deletearray .register_aid[.@i], 1;
        .register_count--;
        warp "SavePoint", 0,0;
        if ( .register_count > 1 ) end;
        killmonsterall "guild_vs5";
        announce "congratulations ~ the winner of Run Or Die event is "+ rid2name( .register_aid ), 0;
        getitem .reward_item_id, .reward_item_amount, .register_aid; // winner prize
        warpchar "SavePoint", 0,0, getcharid( 0, rid2name( .register_aid ) );
    L_reset:
        .start = 0;
        deletearray .register_aid;
        .register_count = 0;
        end;
    OnInit:
        .register_min = 2; // minimum amount of players to start this event, or else it auto-abort
        .register_limit = 100; // maximum amount of players able to participate in this event
        .reward_item_id = 12245;
        .reward_item_amount = 100;
        end;
    }
    guild_vs5    mapflag    nosave    SavePoint
    guild_vs5    mapflag    nowarp
    guild_vs5    mapflag    nowarpto
    guild_vs5    mapflag    noteleport
    guild_vs5    mapflag    nomemo
    guild_vs5    mapflag    nopenalty
    //guild_vs5    mapflag    nobranch
    guild_vs5    mapflag    noicewall
    
    

    It doesn't show and start. :(

    It is already in the enabled in the scripts_custom :(

     

    Sorry I'm not that expert in scripting

  3. // The rate at which usable items (in the item tab) other then healing items are dropped.
    
    item_rate_use: 100
    item_rate_use_boss: 100
    item_drop_use_min: 1
    item_drop_use_max: 10000
    
    // The rate at which equipment is dropped.item_rate_equip: 100
    item_rate_equip_boss: 100
    item_drop_equip_min: 1
    item_drop_equip_max: 10000
    
    // The rate at which cards are dropped
    item_rate_card: 50
    item_rate_card_boss: 10
    item_drop_card_min: 1
    item_drop_card_max: 10000

    Correct me if I'm wrong :)

     

    To test you can use @whodrops or @mobinfo to see the item rate.

  4. <version>31</version>
          <langtype>10</langtype>

    Everything is fine in the clientinfo Sir.

    But in putty I see that player is trying to connect with version 0 wherein the inputted version in clientinfo is 31. Which is right. >.<

    Same thing with me when I connect at the server it says I try to connect at version 0 where in in my clientinfo it is 31

  5. When I connect it shows the players who are logged in rAthena(playercount) then after another login rAthena(0) though some players and currently logged in then we encounter rejected from server wherein the server is currently up.

    Login Char and Map Server are Up.

     

    packet_db

    packet_db_ver: 31

     

    mmo.h 20120418

     

    clif.h

    enum { // packet DB
        MAX_PACKET_DB  = 0xf00,
        MAX_PACKET_VER = 31,
        MAX_PACKET_POS = 20,
    };

     

    Everything is correct. How come we encounter this. :( Please help..

     

    Thank you guys!

  6. I know this has nothing to do on how the server will work but I want to fix this warnings. Hope you could help me. Thanks in advance!

     

     

    [Warning]: Unknown setting 'atcommand_max_stat_bypass' in file conf/battle/gm.conf

     

     

    [Warning]: Invalid message ID '1500' at line 1542 from 'conf/msg_conf/map_msg.conf' file.
     

     

    and

     

     

    [Warning]: pet_db reading: Invalid mob-class 2200, pet not read.
    [Warning]: pet_db reading: Invalid mob-class 2210, pet not read.
    [Warning]: pet_db reading: Invalid mob-class 2313, pet not read.
    [Warning]: pet_db reading: Invalid mob-class 2398, pet not read.
     

     

    It's just minor but I just can't see what's wrong with it. I didn't change anything. :)

×
×
  • Create New...