• Announcements

    • Emistry

      Rules and Regulations - Script/Database/Source Release   11/17/2016

      In all sub-forums of this section , you are still bound to follow the rAthena Board Rules. Topic Author: Do not release scripts that are not of your own creation unless you can provide evidence of explicit permission from the original author to do so. Attempt to post your script in the proper section. If you're not certain as to where to post it, feel free to ask one of the Moderators. Your script release should contain at the very least a 3-4 sentences description or summary that clearly states what your script does. Do not use [ quote ] or [ code ] tags to release your script. Attempt to have multiple hosts for your scripts as to prevent dead links. 3 or more links are ideal. Your script should not contain any malicious code or produce the name of any servers in game where it will be visible to other players. Your script release should be tested, polished, map-server error free, and debugged fully or to a certain extent prior to release. Links to your script should directly provide the script without the need for registration.    Member: Do not create topics in this section asking for support or requesting for scripts. You're not allowed to bump your topics if you're not providing any new updates prior to your previous post. Do not post anything irrelevant contents in the topic.  If the link for the release isn't available, PM the author for any backup link. Do not judge others script as being too simple.    Everyone: Violate these rules may result in immediate deletion of the topic/post, warning increase, and restriction of posting abilities for a certain period of time. On future offenses, member is to receive an increase in the warn level and have their posting abilities restricted for a certain period of time to be determined by the Moderators handling the case.
      * rAthena Staff reserves the right to add to and change the rules at any time. It is your duty to keep up with any changes and follow them to the best of your ability.   Your cooperation in this regard will be highly appreciated. Thank you.
Emistry

【 Emistry © 2015 】E-Scripts Collection

510 posts in this topic

emistry

i want ask question about farm zone

can i change other mvp?

during i write this script....coz of lazy of thinking of what MVP should i put it....so i just use the Bloody Branch script to summon the MVP Monster Randomly....

anyway..if you wan to change...just edit this line.

monster .Map$,0,0,"[ Farm Zone ] Guardian",-3,5,strnpcinfo(0)+"::OnBossKill";

change the Number -3 to MVP Name that you want...just make sure you remain the OnBossKill Event Label


Can you help me set up the flower counting game? what should I Change and Where should I Put the prize

add prize ?

but make sure it is below these lines...

iRight:
if( #EventDelay > gettimetick(2) ){
dispbottom "Sorry, Time Penalty : Remain "+( #EventDelay - gettimetick(2) )+" seconds.";
}else{

find this line ( or somewher around this line )

npctalk "[ "+strcharinfo(0)+" ] , You're Correct.";

'

add below / above....

getitem <itemID>,<Amount>;

1

Share this post


Link to post
Share on other sites

[ Update ] : Updated Refine Function Script :

Description :

It is a Function Script for Refine Equipment without Failure Rate. The script are now able to use indenpendently in a NPC or an Item. Which mean, you can create multiple or numerous NPC Script + Items Script for Refining in your server. All of the Setting are independent..will not affect each others.

This Script will be able to answer / solve those below problems.

Please make me 1 100% Refiner +1 until +7.......

Please make me 1 100% Refiner +1 until + 10 .......

Please make me a Refine Ticket .....

and so on......


The BitMask Table :

//--- Bitmasks ----
// 1 - Top Headgear
// 2 - Armor
// 4 - Left Hand
// 8 - Right Hand
// 16 - Garment
// 32 - Shoes
// 64 - Left Accessory
// 128 - Right Accessory
// 256 - Middle Headgear
// 512 - Lower Headgear

If you want to allow the refine on those part....then just put in the Number ( for Single Part Refiner ) or Add in all the Number ( for Multiple Part Refiner )

For Example :

A Refiner that can refine Top Headgear Only ( BitMask = 1 )

A Refiner that can refine Both Left / Right Accessory Only ( BitMask = 126 + 64 = 190 )

A Refiner that can refine Armor / Garment / Shoes Only ( BitMask = 2 + 16 + 32 = 50 )

and etc.....


Function Script Calling :

callfunc( "RefineFunc",<itemID>,<BitMasks>,<MaxRefine>,<CheckEquip>,<RefineMode> );

Explaination on Each Argument :

// itemID -> Item that will be used.
// BitMask -> Refer to above bitmask table.
// MaxRefine -> What is the Max Refine. [ Can Bypass Default Server Max Refine ]
// CheckEquip -> Check Equipments is Refineable or not. [ 0 = Disable / 1 = Enable ]
// RefineMode -> +1 / Max Refine. [ 0 = +1 Refine / 1 = Max Refine ]


Sample Script :

Use as Item ( Refine Ticket ) :

501,Red_Potion,Red Potion,11,50,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc( "RefineFunc",501,63,10,1,1 ); },{},{}

Caution : Change Item Type to 11

Use as NPC Script ( Custom 100% Refiner ) :

prontera,155,181,5 script Refiner 757,{
callfunc( "RefineFunc",501,63,10,1,1 );
}

You can create as many NPC / Items for refine as you want to...

just make sure youprovide the correct Settings.

With this script, you can create several NPC that can allow users to refine items 100% success using certain items and different max refine level.

So, that your server wont need to focus on using 1 NPC. You can make 1 NPC for refine +5 / +6 / +7 using Elunium without fail, then you can further the refine to +8 / +9 using another NPC with different Items, and lastly +10 another NPC. It is all up to you.

Refine Function [ Version 4 ]

Changelog :

  • [ Version 1 ] - Cleaner and Compact than previous version.
  • [ Version 2 ] - Enable simple Customization on script.
  • [ Version 3 ] - Fixed some mistake typo and bug.
  • [ Version 4 ] - More Customized and able to apply on Multi NPC / Items with Independent Settings.

Scripts : View Download

Please spend your time to read all the things i have write / mentioned in the post before you asking any questions.

if got bug / problems please do report to me. :(

2

Share this post


Link to post
Share on other sites

Multi Currency Shop

no guide on this? like if want use TCG and zeny? or TCG or Zeny?

Refine Function [ Version 4 ]

i read little no understand, if i just want a Npc only and this npc just can refine+1~+5 only for 100%?

Reply (21/1/12 12.20am)

@thx for the multi currency. i want use this for TCG

@oh ic. if like that i can't use this script. it's will make my server unbalance @@" all +10 ==" no more rare equipment already. thx anyway

Edited by manabeast
0

Share this post


Link to post
Share on other sites
if want use TCG and zeny? or TCG or Zeny?

read here

CaseCH:
switch(getarg(0))
{
 Case 1:
  // Item Currency
  set @Currency,7227;
  // Item ID Lists
  setarray .ItemLists[0],2301,2302,2303,2304,2305,2306;
  // Item Price
  setarray .ItemPrice[0],1,2,3,4,5,6;
  return;
 Case 2:
  // Item Currency
  set @Currency,7539;
  // Item ID Lists
  setarray .ItemLists[0],2301,2302,2303,2304,2305,2306;
  // Item Price
  setarray .ItemPrice[0],1,2,3,4,5,6;
  return;
 Case 3:
  // Item Currency
  set @Currency,909;
  // Item ID Lists
  setarray .ItemLists[0],2301,2302,2303,2304,2305,2306;
  // Item Price
  setarray .ItemPrice[0],1,2,3,4,5,6;
  return;
 // Case 4,5,6.....etc...
 default:
  mes "Wrong Selection / Configurations";
  close;

i read little no understand, if i just want a Npc only and this npc just can refine+1~+5 only for 100%?

up to any refine you want also can....all is 100% rate for refine

2

Share this post


Link to post
Share on other sites

i like the multi currency. i was search easy tcg scrip =).

i use default i not yet change anything. here the ss

post-472-0-92225800-1327077154_thumb.png

0

Share this post


Link to post
Share on other sites

i like the multi currency. i was search easy tcg scrip =).

i use default i not yet change anything. here the ss

actually...it doesnt affect anything here...just a simple warning show you that the item that currently selling in this shop might be abused due to player can farm zeny buy purchase the item from the shop and sell back to shop because they can earn the zeny due to cost of purchase is lower than amount of gain...

-	shop	Emistry_Shop	-1,512:1

change the value 1 to any value with higher than the overchanged price of Apple....

2

Share this post


Link to post
Share on other sites

did you edit any thing in the script ?

the default setting...the flower is spawn at the below part of center of prontera...

for( set .@x,153; .@x <= 159; set .@x,.@x + 1 )
for( set .@y,146; .@y <= 153; set .@y,.@y + 1 ){

start from Coordinate 153,146 until 159,153 .....

if you have moved the npc to other map..then make sure the coordination is accessable...

and ...this flower event..is not an auto event...it required GM Staffs to start the event manually.

1

Share this post


Link to post
Share on other sites

Multi Currency Shop [ Version 3 ]

Help got an error

always says Out of Maximum Capacity

// Fixed some Bug. [ By Goddameit ]

// Leave this alone...
- shop Emistry_Shop -1,512:1


turbo_room,63,97,5 script Frei-RO Item Shop 811,{
// NPC Name
set .name$,"[^FF0000  Frei - RO Item Shop  ^000000]";

mes .name$;
mes "Each Shop Buy Item Using Different Items.";
mes "Which shop you like to look at it";
next;
deletearray .ItemLists[0],getarraysize( .ItemLists );
deletearray .ItemPrice[0],getarraysize( .ItemPrice );
npcshopitem "Emistry_Shop",512,1;
select("Donation Item Shop:Weapon Shop:Headgear Shop:Armor Shop:Muffler Shop:Shoe Shop:Shield Shop:Accessory Shop:Card Shop");
callsub CaseCH,@menu;

npcshopdelitem "Emistry_Shop",512;
for(set .@i,0; .@i < getarraysize( .ItemLists ); set .@i,.@i+1)
npcshopadditem "Emistry_Shop",.ItemLists[.@i],.ItemPrice[.@i];
mes "Okay...wait awhile";
mes "This Shop use ^FF0000"+getitemname( @Currency )+"^000000 to buy the Items.";
close2;
callsub CaseCH,@menu;
callshop "Emistry_Shop",1;
npcshopattach "Emistry_Shop";
dispbottom "You currently have "+countitem( @Currency )+" "+getitemname( @Currency )+".";
end;

OnBuyItem:
callsub CaseCH,@menu;
for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1)
for(set @j,0; @j < getarraysize( .ItemLists ); set @j,@j+1)
if( .ItemLists[@j] == @bought_nameid[@i] )
set @TotalCost,@TotalCost + ( .ItemPrice[@j] * @bought_quantity[@i] );
if( countitem( @Currency ) < @TotalCost )
{
for( set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1 )
{
mes "Item : ^0000FF"+getitemname( @bought_nameid[@i] )+"^000000";
mes "Quantity : ^0000FF"[email protected]_quantity[@i]+"^000000";
}
mes "^00FF00____________________________^000000";
mes "Total Cost : ^0000FF"[email protected]+" x "+getitemname( @Currency )+"^000000";
mes "^00FF00____________________________^000000";
mes "[ ^FF0000X^000000 ] You do not have enough ^0000FF"+getitemname( @Currency )+"^000000 to purchase this.";
} else {
for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1)
{
getitem @bought_nameid[@i],@bought_quantity[@i];
message strcharinfo(0),"Purchased "+getitemname( @bought_nameid[@i] );
}
delitem @Currency,@TotalCost;
mes "Thank you for shopping.";
mes "You now have "+countitem( @Currency )+" "+getitemname( @Currency )+" left.";
}
set @TotalCost,0;
deletearray @bought_nameid[0],getarraysize( @bought_nameid );
deletearray @bought_quantity[0],getarraysize( @bought_quantity );
close;

CaseCH:
switch(getarg(0))
{
Case 1:
// Item Currency //Donation Item Shop
set @Currency,7179;
// Item ID Lists
setarray .ItemLists[0],30307,30189,30063,2543,30500,30501,30502,30503,2383,2410,1530,2541;
// Item Price
setarray .ItemPrice[0],1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000;
return;
Case 2:
// Item Currency //Weapon Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],1530,1228,13412,13413,1577,1640,1281,1826,1187,1310,1641,2202,1827,13416,13177,13042,13179,1927,13418,1743,1282,1486,1981,1546,13110,13417,13176,13178,13307,1426,1576,1382,13017,1266;
// Item Price
setarray .ItemPrice[0],100,70,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50;
return;
Case 3:
// Item Currency //Headgear Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],5495,30318,5800,30117,5397,5490,5311,5423,5375,5266,5805,5305,5313,5418,5558,5421;
// Item Price
setarray .ItemPrice[0],90,50,55,500,12,24,10,12,20,12,55,25,18,60,30,150;
return;

Case 4:
// Item Currency //Armor Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],2383,2345,2347,2349,2351,2382,2374,2375,2378,2376,2377,2381,2379,2380;
// Item Price
setarray .ItemPrice[0],80,20,20,20,20,40,35,35,40,40,40,40,40,40;
return;

Case 5:
// Item Currency //Muffler Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],2538,2539,2537,2542,2540,2536;
// Item Price
setarray .ItemPrice[0],40,40,35,50,40,20;
return;

Case 6:
// Item Currency //Shoe Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],2410,2449,2436,2433,2437,2435;
// Item Price
setarray .ItemPrice[0],40,80,30,35,30,30;
return;

Case 7:
// Item Currency //Shield Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],2130,2138;
// Item Price
setarray .ItemPrice[0],40,25;
return;

Case 8:
// Item Currency //Accessory Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],30374,2630,2712,2744,2729,2733;
// Item Price
setarray .ItemPrice[0],50,30,45,40,15,35;
return;

Case 9:
// Item Currency //Card Shop
set @Currency,7227;
// Item ID Lists
setarray .ItemLists[0],4145,4365,4399,4441,4357,4376,4361;
// Item Price
setarray .ItemPrice[0],30,50,25,100,25,100,50;
return;


// Case 4,5,6.....etc...

default:
mes "Wrong Selection / Configurations";
close;
}
}

0

Share this post


Link to post
Share on other sites

Please try to be specify ??

i dunno how to duplicate your problems..the script work just fine in my test server...

i can buy all the item in each categories.....

and remember next time use codebox or attachment to wrap a long script ^^

0

Share this post


Link to post
Share on other sites
// Item Currency //Weapon Shop set @Currency,7227; // Item ID Lists setarray .ItemLists[0],1530,1228,13412,13413,1577,1640,1281,1826,1187,1310,1641,2202,1827,13416,13177,13042,13179,1927,13418,1743,1282,1486,1981,1546,13110,13417,13176,13178,13307,1426,1576,1382,13017,1266; // Item Price setarray .ItemPrice[0],100,70,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50; return;

try dun over put item, maybe this script can't support too much item in a single shop, try making shop2 =)

0

Share this post


Link to post
Share on other sites

array can support up to 128 element..

and yes..perhap it is because of he putting too much items in 1 shop..

0

Share this post


Link to post
Share on other sites

there is a bug in multi currency shop!. warning players can buy that just force to buy it continously and boom u will get the item

0

Share this post


Link to post
Share on other sites

there is a bug in multi currency shop!. warning players can buy that just force to buy it continously and boom u will get the item

what mean ? elaborate more ? and how to duplicate the bug ( if possible )

0

Share this post


Link to post
Share on other sites

[ Update ] : Added a Class Restriction Script :

Description :

This Script allow certain Maps to Block / Restrict certain Job Class. Configurations can be varies across the Maps settings. If the Class that are Blocked entering the Map, the Characters will be warped out from the Map within few seconds after they enter the Map.

This Script will be able to answer / solve those below problems.

Where can i find a Trans Class / 3rd Class WOE ??

How to Block Certain Jobs from entering some Maps ?


Configuration :

Bitwise Table and Usage :

// -------- BitMasks --------
// 1 - Normal jobs,
// 2 - Adv jobs.
// 4 - Baby jobs,
// 8 - Normal 3rd jobs.
// 16 - Adv. 3rd jobs.
// 32 - Baby 3rd jobs.
// 64 - Certain Jobs ( Specific )

// ----- Mode Example : ( Blocked Class ) ------
// 63 - All Class that has been defined
// 64 - Only the Specific Job you defined
// 7 - Normal + Advanced + Baby Jobs
// 56 - Normal 3rd + Advanced 3rd + Baby 3rd Jobs

Notes :



Just add in the Value for the Bitmask.
Aware of the Usage of Certain Jobs.
--- If you using Bitmask Above , aware of the Limit Reach. ( ~128 Total Class )
--- If your Bitmask = ( 63 + 64 ) , Your "Certain Jobs" have only about 20 Slots.
--- Anyway, i dont think you will do so since Bitmask 63 will block most of the Class already.
* Common Sense : Make sure the Array ".@Restrict" didnt exceed limit of 128 element.



You may edit these below parts... but by default, i have list down most of the Job Class accordingly...

// Normal Jobs
if( getarg(0) & 1 ) setarray .@Restrict[getarraysize(.@Restrict)],0,1,2,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18,19,20,23,24,25,4046,4047,4049;
// Adv Jobs
if( getarg(0) & 2 ) setarray .@Restrict[getarraysize(.@Restrict)],4001,4002,4003,4004,4005,4006,4007,4008,4009,4010,4011,4012,4013,4015,4016,4017,4018,4019,4020,4021;
// Baby Jobs
if( getarg(0) & 4 ) setarray .@Restrict[getarraysize(.@Restrict)],4023,4024,4025,4026,4027,4028,4029,4030,4031,4032,4033,4034,4035,4037,4038,4039,4040,4041,4042,4043,4045;
// Normal 3rd Jobs
if( getarg(0) & 8 ) setarray .@Restrict[getarraysize(.@Restrict)],4054,5055,4056,4057,4058,4059,4066,4067,4068,4069,4070,4071,4072;
// Adv 3rd Jobs
if( getarg(0) & 16 ) setarray .@Restrict[getarraysize(.@Restrict)],4060,4061,4062,4063,4064,4065,4073,4074,4075,4076,4077,4078,4079;
// Baby 3rd Jobs
if( getarg(0) & 32 ) setarray .@Restrict[getarraysize(.@Restrict)],4096,4097,4098,4099,4100,4101,4102,4103,4104,4105,4106,4107,4108;

However,.....this is a special case .......

// Certain Jobs ( Specific Your Own Class Restriction )
if( getarg(0) & 64 ) setarray .@Restrict[getarraysize(.@Restrict)],4046,4002,4004,4013,4011;

It would be better to Not using Bitwise 64 if your script already block all of the job class above ( Bitwise : 63 )

This is because, the limit might be exceed if you add too much Job Class in the Array for Bitwise ( 64 + 63 )

Anyway, i think it is still Okay to use Bitwise ( 64 + some of the other Bitwise ) ...but not All Bitwise combined.


Settings :

I guess you should be able to understand this part right ? so, i will skip this parts.

// Wait X Seconds before warped out.
set .Sec,5;
// Lowest GM Level to Bypass
set .LowGMLvl,80;

Here come the Maps Settings Parts.

setarray .Map$, // <Mapname>,<Mode>.... ( Mode = Bitwise Value )  Max of ~64 Map Settings.
  "prtg_cas01","63",
  "prtg_cas02","64",
  "prtg_cas03","3",
  "prtg_cas04","2",
  "prtg_cas05","1";

You should be able to realize that....the setting are done in this Format..

<MapName>, <Mode>,
.........
<MapName>, <Mode>;

the Mode refer to the Bitwise Value ( Blocked Class for the Map ) and the Mode are write within Quotation Mark ( " " ) as a string.

refer to above Bitwise Table for how to configure the Bitwise Value for Restrict those Job Class.

You may add up to ~64 Maps.

Example :

  "prtg_cas01","63",        // --------> Restrict "All" the Job Class  ( Except "Certain Jobs" )
  "prtg_cas02","64",        // --------> Restrict "Certain Jobs" ( Specified by Yourself )
  "prtg_cas03","3",          // --------> Restrict "Normal & Advanced Job" Class
  "prtg_cas04","2",          // --------> Restrict "Advance" Jobs
  "prtg_cas05","1";          // --------> Restrict "Normal" Jobs


Class Restriction [ Version 2 ]

Changelog :

  • [ Version 1 ] - A Simple Blocking Certain Job to Enter a Map.
  • [ Version 2 ] - Enable Multiple Different Configuration across the Maps.

Scripts : View Download


Please spend your time to read all the things i have write / mentioned in the post before you asking any questions.

if got bug / problems please do report to me. ;)

3

Share this post


Link to post
Share on other sites

there is a bug in multi currency shop!. warning players can buy that just force to buy it continously and boom u will get the item
what mean ? elaborate more ? and how to duplicate the bug ( if possible )

he mean if player A talk to NPC B. continue like this.

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> Get item (this Shop without pay. mean free !! player dun have donation cradite can get the item for free)

0

Share this post


Link to post
Share on other sites

there is a bug in multi currency shop!. warning players can buy that just force to buy it continously and boom u will get the item
what mean ? elaborate more ? and how to duplicate the bug ( if possible )

he mean if player A talk to NPC B. continue like this.

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> no creadit fail,

select item> buy> Get item (this Shop without pay. mean free !! player dun have donation cradite can get the item for free)

Okay...i barely get what you mean now...

mean..when there is 2 or more player using the same shop..might caused incorrect items purchasing problems and bugs.

anyway..

try this...i've updated the script using temporary character integer variable

hope this problem should be fix..

i have tested the script using 2 Character to buy using the Shop.. it work fine for me so far..


[ Update ] : Modified Multi Currency Shop Script :

Multi Currency Shop [ Version 4 ]

Script Description : Post Link

Changelog :

  • [ Version 1 ] - Simple Shop Based Currency Shop.
  • [ Version 2 ] - Support Multiple Different Currency Shop in 1 NPC.
  • [ Version 3 ] - Fixed Repeating Items Lists Problem.
  • [ Version 4 ] - Fixed Items Purchasing Bug and Problems.

Scripts : View Download

0

Share this post


Link to post
Share on other sites

actualy i mean 1 player purchase same item when npc bug can give player free item = =" b is npc not player.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now