-
Posts
10018 -
Joined
-
Days Won
409
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Everything posted by Emistry
-
Script request that shows the cards that have already been dropped on the server
Emistry replied to Tdi123's question in Script Requests
may try something like this. update the sql to retrieve from the correct table and fields. -
may try this. https://pastebin.com/raw/4xgQ2Krr however, this cant auto handle the scenario where the player left the guild after he registered as the member who using the GTB during WOE. But if you are a guild master, then you may try to use the command [at]gmreset to force your guild member (even if left guild) reset it.
-
try this - script Sample -1,{ end; OnTouchNPC: .@gid = getattachedrid(); if (.@gid) { getunitdata .@gid, .@array; if (getmonsterinfo(.@array[UMOB_CLASS], MOB_MVPEXP)) unitwarp 0,"this", -1, -1; } end; }
-
Script: | bonus bBaseAtk,2600; if (!agitcheck() && !agitcheck2() && !agitcheck3()) bonus2 bHPDrainRate, 1000, 100; just change your item_db instead of adding another script function
-
if (isequippedcnt(4318) == 1) { bonus3 bAutoSpell,"WZ_STORMGUST",2,20; bonus2 bAddEff,Eff_Freeze,100; } warp the script together.
- 1 reply
-
- 1
-
-
use this to setup the Job Changer in whatever way you want it. https://rathena.org/board/topic/105789-utility-sql-job-changer/
-
try https://pastebin.com/raw/m3v41X1t
-
Character base level reset NPC to 1 to level up and gain more statpoints
Emistry replied to AinsLord's question in Script Requests
RESET_COUNT++; // <-------- add the semicolon -
Character base level reset NPC to 1 to level up and gain more statpoints
Emistry replied to AinsLord's question in Script Requests
StatusPoint += (RESET_COUNT * 10); // free 10 status point per reset. add this to your reset npc script. -
add the coordinate to your npc or your shop npc.
-
How to add base and job exp rate on item
Emistry replied to terrence's question in Database Requests
refer the doc/item_bonus.txt#L296-L299 Experience ---------- bonus2 bExpAddRace,r,x; Increase exp gained by x% against enemies of race r bonus2 bExpAddClass,c,x; Increase exp gained by x% against enemies of class c -
How to add base and job exp rate on item
Emistry replied to terrence's question in Database Requests
sc_start SC_EXPBOOST,1800000,100; sc_start SC_JEXPBOOST,1800000,100; may refer existing battle manual item -
bonus bMatk,getrefine(); *getrefine() This function will return the refine count of the equipment from which the function is called. This function is intended for use in item scripts.
-
[Error]: buildin_strcharinfo: fatal error ! player not attached! Goblin Invasion
Emistry replied to DEsMOn's question in Scripting Support
//================================================Name====================================================== // Goblin Invasion NPC (Official Release Name) //===============================================Version==================================================== // 1.2 //===============================================Author===================================================== // ____ _____ ______ __ __ __ _______ __ _____ __ __ _______ // | __ \ _ \| __ \| | \ | |/ ___ \ | | / / | \ | |/ ___ \ // | |__| | \ \ |__| | | \| | | _\_/ | |/ /| | \| | | _\_/ // | __/ | | /| | | | |_ \ | | | | | | | |_ \ // | |\ \_/ / |\ \| | |\ | \_/ | | |\ \| | |\ | \_/ | // |__| \_____/|__| \__\__|__| \__|\______/ |__| \__\__|__| \__|\______/ //----------------------------------------Script Last Update 2020------------------------------------------- //==============================================Changelog=================================================== // 1.0 * // - Initial Release // 1.1 // - Added Host Event by GMAccess // 1.2 // - Remove all error from Latest rAthena // - Maximize script // - Fix some dialog of NPC // - Added Mapflag for the Event Map //========================================================================================================== prontera,155,185,6 script Invasion NPC 459,{ set .gm,50;//GM Level to access the GM Menu. Default: 50 // GM menu //It allows GMs Level 50 or more to Start and Stop invasions. if (getgmlevel()>.gm) { if (.mobs_left) { mes "[Invasion]"; mes "An invasion is in progress.."; mes "Location: " + .Map$; mes "^FF0000"+.mobs_left+"^000000 Goblins left"; mes " "; mes "Stop invasion?"; if(select("No:Yes")==1) close; donpcevent "Invasion NPC::OnTimer1805000"; mes "Invasion stopped"; announce "The Invasion has been stopped by "+strcharinfo(0),bc_all; close; } mes "[Invasion]"; mes "Please customize the Invasion event before starting it."; mes "Note - The Goblin Leader drops x5 of the prize."; Main: next; mes "[Invasion]"; switch(select("Item [" + getitemname(.ItemID) + "]:Start Event")) { case 1: mes "Which item would you like the Goblin Leader to drop?"; mes "Please input the item ID:"; input .ItemID; goto Main; case 2: mes "Starting the event now..."; close2; goto OnStart; } // If a player clicks the NPC, it displays: mes "[Invasion]"; mes .mobs_left+" have invaded "+.Map$[.rand_map]+"!"; close; ///////////////////////// //The actual NPC Script// ///////////////////////// OnMinute50: // Change this to your liking OnStart: set .mobs_left, 1; sleep 1000; set $@ran, rand(1,6); if ($@ran == 6) set .Map$,"guild_vs3"; if ($@ran == 5) set .Map$,"guild_vs3"; if ($@ran == 4) set .Map$,"guild_vs3"; if ($@ran == 3) set .Map$,"guild_vs3"; if ($@ran == 2) set .Map$,"guild_vs3"; if ($@ran == 1) set .Map$,"guild_vs3"; sleep 1000; announce "[ Rune-Midgard Guard ]: We have trouble here in the town " + .Map$ + "!", bc_all; sleep 5000; announce "[ Rune-Midgard Guard ]: Everyone, we need your help to get rid of these Goblins!", bc_all; monster .Map$,0,0,"Goblin",1258,10,"Invasion NPC::OnMyMobDead"; monster .Map$,0,0,"Goblin",1299,1,"Invasion NPC::OnMyMobDead"; set .mobs_left, 11; end; OnTimer1805000: // 30 minutes later, kills all the mobs. killmonster .Map$,"Invasion NPC::OnMyMobDead"; set .mobs_left, 0; OnStop://When the event is stopped by a GM, or all monsters dead. killmonster .Map$,"Invasion NPC::OnMyMobDead"; killmonster .Map$,"Invasion NPC::OnSpecialMobDead"; end; OnMyMobDead: //When a Goblin is killed set .mobs_left, .mobs_left-1; if (.mobs_left==0) { announce "[ Rune-Midgard Guard ]: Everyone, thankyou for helping to get rid of these Goblins!", bc_all; getitem .ItemID,20; //Change the [5] to the amount you wish to hand out. donpcevent "Invasion NPC::OnStop"; //announce "[Invasion NPC]: "+strcharinfo(0)+" has killed the last "+.mobname$+".",bc_all; announce "It seems that "+strcharinfo(0)+" has ended the Invasion!",bc_all; } else { //announce "["+.mobs_left+"/200] Goblins left.",bc_map; //announce "["+.mobs_left+"-"+200+"="+.mobs_left+"] Goblins left.",bc_map; //announce "[("+.mobs_left+")-(200)="+.mobs_left+"] Goblins left.",bc_map; announce "[ "+strcharinfo(0)+" ] has killed a Goblin. There are now "+.mobs_left+" Goblin left.",bc_map; } end; } end; } -
Character base level reset NPC to 1 to level up and gain more statpoints
Emistry replied to AinsLord's question in Script Requests
prontera,155,181,5 script Sample 757,{ if (BaseLevel < 99) { mes "You need to be at least level 99."; } else if (select("Reset", "cancel") == 1) { resetlvl 1; RESET_COUNT++; StatusPoint += (RESET_COUNT * 10); // free 10 status point per reset. if (RESET_COUNT && RESET_COUNT % 10 == 0) { getitem 512, 10; // every 10 reset get apple. } } close; } -
https://rathena.org/board/topic/90173-item-and-point-shop/ just add your item list //ADD YOUR ITEMS HERE - pointshop KOEPOINTS -1,#KOEPOINTS,501:1 and please use codebox to wrap your code next time.
-
Guild Pack NPC which can activate during WOE days
Emistry replied to DEsMOn's question in Script Requests
if (gettime(DT_HOUR) == 17 || (gettime(DT_HOUR) == 18 && gettime(DT_MINUTE) <= 30)) hideoffnpc strnpcinfo(3); -
(map_mapname2mapid) mapindex_name2id: Map "Sierra#mvp" not found in index list!
Emistry replied to theong456's question in Scripting Support
you're specifying a npc name, not a map name. The script command required a map name -
hideoffnpc instance_npcname("et_reward_npc"); // <------- ADD THIS
-
What is the point of create a npc just to preview an item that already exists in your inventory? You can just right away equip the item that exists in your inventory to preview it. Preview feature should be implemented for something that currently doesn't exists.
-
getskilllist(); for (.@i = 0; .@i < @skilllist_count; .@i++) { if (@skilllist_lv[.@i] > 0 && (@skilllist_flag[] == SKILL_PERM || @skilllist_flag[] == SKILL_PERM_GRANT) .@menu$ = .@menu$ + "skill_id ["+@skilllist_id[.@i]+"] lv = "+ @skilllist_lv[.@i]; .@menu$ = .@menu$ + ":"; } .@i = select(.@menu$) - 1; addtoskill @skilllist_id[.@i], -@skilllist_lv[.@i]; SkillPoint += @skilllist_lv[.@i]; however, this is not advised to use at server that doesn't allow to bypass skill tree if you want to display the skill name, either create a src mod to retrieve the skill name from db/skill_db (or search forum) or store it in an array and retrieve it.
-
change into these if you want to keep the random item bonus. *getitem3 <item id>,<amount>,<identify>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>,<RandomIDArray>,<RandomValueArray>,<RandomParamArray>{,<account ID>}; *getitem3 "<item name>",<amount>,<identify>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>,<RandomIDArray>,<RandomValueArray>,<RandomParamArray>{,<account ID>};
-
npc/guild2/agit_main_se.txt#L623 change to announce strcharinfo(0)+" from the ["+getguildname(.@GID)+"] guild conquered the ["+.@region$+" "+charat(strnpcinfo(2),3)+"] stronghold of "+getcastlename(strnpcinfo(4))+"!",bc_all|bc_woe;
-
replace with the new cloakonnpc/cloakoffnpc instead. https://github.com/rathena/rathena/commit/de80c5aab61eff6996a5e4c94d4a5a868eb18ca4