Jump to content

Keitenai

Members
  • Posts

    85
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by Keitenai

  1. On 8/15/2018 at 6:20 AM, tribal0306 said:
    vending.cpp(384): warning C4244: '-=': conversion from 'double' to 'int', possible loss of data

    Should i ignore this warning?

     

    in vending.cpp find this code:

    sprintf(message + strlen(message), "Total profit: %s x %d", "Zeny" ,(mailprofit -= mailprofit * (battle_config.vending_tax / 10000.)));

     

    change it to this:

    sprintf(message + strlen(message), "Total profit: %s x %d", "Zeny" ,(mailprofit -= mailprofit * (int)(battle_config.vending_tax / 10000.)));

     

    is my solution correct @Easycore ?

  2. for Royal Guard's costume body sprite,

    rename ( grf\data\sprite\Àΰ£Á·\¸öÅë\³²\costume_1 ) it to ÆÈ¶óµò_³²_1 for male,

    while ( grf\data\sprite\Àΰ£Á·\¸öÅë\¿©\costume_1ÆÈ¶óµò_¿©_1 for female sprite to be used by paladin.

  3. try this @Nero:

    -	script	guild_vs1s2	-1,{
    
    	OnAgitEnd:
    		callsub( L_reward,0, "guild_vs1" );
    		end;
    		
    	OnAgitEnd2:
    		callsub( L_reward,1, "guild_vs1" );
    		end;
    	
    	L_reward:
    		.@type = getarg( 0,0 );
    		.@map$ = getarg( 1,"" );
    		
    		if ( .@type == 0) {	// woe fe
    			setarray .@item_master,
    				30206,2;
    			setarray .@item_member,
    				30206,1;
    		}
    		else {	// woe se
    			setarray .@item_master,
    				30206,2;
    			setarray .@item_member,
    				30206,1;
    		}
    		.@item_master_size = getarraysize( .@item_master ) - 1;
    		.@item_member_size = getarraysize( .@item_member ) - 1;
    		
    		if ( .@map$ != "" ) {
    			.@gid = getcastledata( .@map$,1 );
    			if ( .@gid > 0 ) {
    				getguildmember .@gid,1;
    				getguildmember .@gid,2;
    				.@master_id = getcharid( 3, getguildmaster( .@gid ) );
    				while ( .@i < [email protected] ) {
    					.@x = 0;
    					if ( isloggedin( [email protected][.@i],[email protected][.@i] ) ) {
    						if ( [email protected][.@i] == .@master_id ) {
    							while ( .@x < .@item_master_size ) {
    								if(!checkvending(strcharinfo(0,[email protected][.@i])))
    									getitem .@item_master[.@x],.@item_master[.@x+1],[email protected][.@i];
    								.@x += 2;
    							}
    						}
    						else {
    							while ( .@x < .@item_member_size ) {
    								if(!checkvending(strcharinfo(0,[email protected][.@i])))
    									getitem .@item_member[.@x],.@item_member[.@x+1],[email protected][.@i];
    								.@x += 2;
    							}
    						}
    					}
    					.@i++;
    				}
    			}
    		}
    		return;
    }

     

     

  4. Keitenai Resistance Capping


    File Name: Keitenai_Delay_System
    File Submitter: keitenai
    File Submitted: 27 Nov 2017
    File Category: Src Modification
    Content Author: keitenai

    Information:

          Resistance capping applies to item effects which have "bSubEle, bSubSize, bSubRace2, bSubRace, bSubClass, bNearAtkDef, and bLongAtkDef".

          This modification can be set to less than 100 resistance cap to avoid too resistance heal, or set over 100 upto max of 200 if the dev would like to enable resistance heal.

    Features:

    1. Configurable Maximum resistance capping.
    2. Resistance capping can be applied to different resistance bonus types with different values.
    3. Resistance capping is applied to all items with resistance bonus scripts.

    By buying this scr modification code, you agree to these terms:

    • You are not allowed to redistribute this src code modification in any way, shape, or form.
    • Chargeback scams are not tolerated and will get you punished on rAthena.
    • I @Keitenai still retain all rights to this src modification.
    • Terms above may be changed or adjusted without prior notification.

     


     

  5. File Name: [email protected]
    File Submitter: keitenai
    File Submitted: 1 Dec 2017
    File Category: Src Modification
    Content Author: keitenai

    Information:

          @ resist will check the current values of resistance from each element.

    Thanks to @Santafe for the idea of this command.

    @resist.PNG.e4ce7669ccd72c0ea4c835bb54b10019.PNG

          1. Download the Diff file.

          2. Patch the diff to your rAthena

          3. Recompile your server.

          4. RUN THE SERVER!

     

    Compatible with:  rAthena 03da2f6 ( as of Dec 1, 2017 )

    Download : [email protected]

    • Upvote 6
    • Love 1
    • MVP 1
  6. abyss_01,22,36,1	script	Quest Helper#25	112,{
    
    if(killmob_a == .AmountToKill_a && killmob_b == .AmountToKill_b && killmob_c == .AmountToKill_c && quest_active){
    	mes "[Warpra Helper]";
    	mes "Congratulations!";
    	set killmob_a,0;
    	set killmob_b,0;
    	set killmob_c,0;
    	set quest_active,0;
    	getitem .ItemPrize,.AmountItemPrize;
    close;
    }
    
    mes "[Warpra Helper]";
    mes "You have to kill:";
    mes getmonsterinfo(.MonsterToKill_a,MOB_NAME)+" ~ ^0000ff"+killmob_a+"/"+.AmountToKill_a+"^000000";
    mes getmonsterinfo(.MonsterToKill_b,MOB_NAME)+" ~ ^0000ff"+killmob_b+"/"+.AmountToKill_b+"^000000";
    mes getmonsterinfo(.MonsterToKill_c,MOB_NAME)+" ~ ^0000ff"+killmob_c+"/"+.AmountToKill_c+"^000000";
    
    else if((killmob_a <= .AmountToKill_a || killmob_b <= .AmountToKill_b || !killmob_c <= .AmountToKill_c) && quest_active)
    	close;
    else
    	{
    		next;
    		mes "[Warpra Helper]";
    		mes "Do you want to accept the Quest?";
    		next;
    		if(select("Yes")){
    			mes "[Warpra Helper]";
    			mes "You can now begin to Kill the Monsters !!";
    		set quest_active,1;
    		close;
    		}
    	}
    end;
    
    OnNPCKillEvent:
    if(!quest_active) end;
    
    	if(killedrid == .MonsterToKill_a){
    		set killmob_a,killmob_a + 1;
    		if (killmob_a < .AmountToKill_a)
    			dispbottom "You've killed "+killmob_a+"/"+.AmountToKill_a+" "+getmonsterinfo(.MonsterToKill_a,MOB_NAME);
    		else if(killmob_a == .AmountToKill_a)
    			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_a,MOB_NAME);
    	}
    
    	if (killedrid == .MonsterToKill_b){
    		set killmob_b,killmob_b + 1;
    		if (killmob_b < .AmountToKill_b)
    			dispbottom "You've killed "+killmob_b+"/"+.AmountToKill_b+" "+getmonsterinfo(.MonsterToKill_b,MOB_NAME);
    		else if(killmob_b == .AmountToKill_b)
    			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_b,MOB_NAME);
    	}
    
    	if (killedrid == .MonsterToKill_c){
    		set killmob_c,killmob_c + 1;
    		if (killmob_c < .AmountToKill_c)
    			dispbottom "You've killed "+killmob_c+"/"+.AmountToKill_c+" "+getmonsterinfo(.MonsterToKill_c,MOB_NAME);
    		else if(killmob_c == .AmountToKill_c)
    			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_c,MOB_NAME);
    	}
    end;
    
    //===============================================================
    //	CONFIGURATION ( change to your desire )
    //===============================================================
    OnInit:
    	.MonsterToKill_a = 1002;
    	.AmountToKill_a = 1;
    
    	.MonsterToKill_b = 1004;
    	.AmountToKill_b = 1;
    
    	.MonsterToKill_c = 1005;
    	.AmountToKill_c = 1;
    
    	.ItemPrize = 909;
    	.AmountItemPrize = 1;
    end;
    }
    

     

  7. On 8/17/2017 at 11:29 AM, gekigengar said:

    Hello, I apologize if such method existed, but I cannot find anything searching on the forums.

    Any ways to disable Bank/RODEX?

    Or at least on certain maps like Jail/Certain maps?

    There are a lot of item restriction that can be bypassed through RODEX/Bank..

    Which caused a lot of my custom content to be broken.

    People bypassing NPC checks to certain areas with restricted items through RODEX mail. (Such as no bringing Yggberry to pvp room, an entrance NPC could check, but inside, people can receive mails containing Ygg berry)

    Or offending players sending out equipment out of jail through Rodex..

     

    Thanks for sharing this issue.

    Try this diff to disable rodex and bank on "nowarp" and "nowarpto" mapflags. I still haven't tested this yet though.

    norodex-nobank.diff

    Quote

    Index: src/map/mail.c
    ===================================================================
    --- src/map/mail.c    (revision 6)
    +++ src/map/mail.c    (working copy)
    @@ -113,6 +113,10 @@
     * @return see enum mail_attach_result in mail.h
     */
     enum mail_attach_result mail_setitem(struct map_session_data *sd, short idx, uint32 amount) {
    +
    +    if(map[sd->bl.m].flag.nowarpto || map[sd->bl.m].flag.nowarp)
    +        return MAIL_ATTACH_ERROR;
    +
         if( pc_istrading(sd) )
             return MAIL_ATTACH_ERROR;
     
    Index: src/map/pc.c
    ===================================================================
    --- src/map/pc.c    (revision 7)
    +++ src/map/pc.c    (working copy)
    @@ -11725,6 +11725,9 @@
     enum e_BANKING_DEPOSIT_ACK pc_bank_deposit(struct map_session_data *sd, int money) {
         unsigned int limit_check = money + sd->bank_vault;
     
    +    if(map[sd->bl.m].flag.nowarpto || map[sd->bl.m].flag.nowarp)
    +        return BDA_OVERFLOW;
    +
         if( money <= 0 || limit_check > MAX_BANK_ZENY ) {
             return BDA_OVERFLOW;
         } else if ( money > sd->status.zeny ) {
     

     

    • Upvote 1
    • Love 1
    • MVP 1
  8. On 9/12/2017 at 6:27 AM, Jasc said:

    Anyone know if it is possible to re-enable the old resistance system where if a player had over 100% resistance to an element, it would heal them for the excess amount. As of right now, the skills would "miss players" and items like Evil Druid Card would make other players do 1 damage on a resistance of -25 as shown on the property chart.

     

    In conf/battle/battle.conf

    Quote

    // Does HP recover if hit by an attribute that's same as your own? (Note 1)
    attribute_recover: no
     

    Set it to YES

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.