-
Content Count
365 -
Joined
-
Last visited
-
Days Won
4
Content Type
Profiles
Forums
Downloads
Staff Applications
Calendar
Everything posted by Litro
-
try change code in this part // Shop NPCs -- supplying no argument displays entire menu.// callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}};//============================================================prontera,164,203,6 script Quest Shop#1 4_M_MOCASS2,{ callfunc "qshop"; } callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; make it like this prontera,164,203,6 script Quest Shop#1 4_M_MOCASS2,{ callfunc "qshop",1; } it will automaticaly open first category shop without generating category menu, AFAIK CMIIW
-
prontera,164,174,4 script Freebies 123,{ mes "[Hello]"; if (#Freebie) { mes "You have claimed your freebies already"; close; } mes "[I can give you a free gift based on your future job.]"; mes "[Please choose the correct item for the future job]"; mes "Select one:"; next; switch(select("Str:Agi:Vit:Int:Dex")) { case 1: getitem 25000,1; break; case 2: getitem 22003,1; getitem 35006,1; //Item for Agi break; case 3: getitem 22004,1; getitem 35007,1; //Item for Vit break; case 4: getitem 22001,1; getitem 35002,20; //Item for int break; case 5: getitem 22002,1; getitem 35004,1; //Item for Dex break; } #Freebie = 1; close; }OnInit: waitingroom "Get your freebies here ! ",0; end;}
-
i have faced it long time ago, try reformating the image with photoshop may be it corrupted, or try with other image and rename it
-
is this part of script ?, used variable is attached temporary to character, post entire script as for part 'Team leader register but it say you are not team leader .', change this part code if ( getcharid(0) != CID[@MnF] ) {mes "You are not the Teamleader!";close;} to this if ( getcharid(0) != getpartyleader(getcharid(1),2) ) {mes "You are not the Teamleader!";close;}
-
im writing this script and want to have dynamic menu like one writen by Annie Ruru on vendor control script, where the generated menu have previous and next page selection on it, can anyone help me to make it happen, tell you a tale i have staring into the script mentioned above for half hours and still not understand how the script work here the script it not complete yet prontera,150,150,1 script Freelancer Manager 100,{ mes .@n$ = "[Manager]"; mes "Hi.. what I can do to help you?"; next; switch(select("Submit Request","See Request List")) { case 1: mes .@n$; mes "Input Item ID that you want to request"; next; if (input(.@item_id,501,32768) || getitemname(.@item_id)=="" || getitemname(.@item_id)=="null") { mes .@n$; mes "Invalid input value or that item doesn't exist."; close; } mes .@n$; mes "Input how many "+.@item_id+" do you want to request?"; next; if (input(.@item_at,1,3000)) { mes .@n$; mes "Invalid input value or you are sick!!"; close; } mes .@n$; mes "So you want to request "+.@item_at+"x "+getitemname(.@item_id)+", is that correct?"; next; if (select("Yes, That's right.","Nope") == 2 ) { mes .@n$; mes "Okay, sure what ever "+(Sex?"Man.";"Woman."); close; } mes .@n$; mes "All right, lets talk about payment."; mes "input item id that you will give as payment"; next; if (input(.@pays_id,501,32768) || getitemname(.@pays_id)=="" || getitemname(.@pays_id)=="null") { mes .@n$; mes "Invalid input value or that item doesn't exist."; close; } mes .@n$; mes "Now please input amount of payment you will give"; next; if (input(.@pays_at,1,30000)) { mes .@n$; mes "Invalid input value or you are too generous or too sick for sure."; close; } mes .@n$; mes "Okay, Let's rehash your fill"; mes "Request : "+.@item_at+"x "+getitemname(.@item_id); mes "Payment : "+.@pays_at+"x "+getitemname(.@pays_id); mes " "; mes "Is everything above correct?"; next; if (select("Yes, That's right.","Uh Oh I'm not sure") == 2 ) { mes .@n$; mes "Okay, sure what ever "+(Sex?"Man.";"Woman."); close; } query_sql "INSERT INTO `job_board` VALUES ('"+getcharid(0)+"', '"+.@item_id+"', '"+.@item_at+"', '"+.@pays_id+"', '"+.@pays_at+"', unix_timestamp(now()))"; mes .@n$: mes "All right, your request have been listed in request list, after 3 day your request will be erased from request list"; mes "and you will need to make new request for same item if you still need it, thanks for using my service"; close; case 2: .@data = query_sql("SELECT `char_id`,`item_id`,`item_at`,`pays_id`,`pays_at` FROM `job_board` ORDER BY `timestamp`", .@char_id, .@item_id, .@item_at, .@pays_id, .@pays_at); // Credit to Annie Ruru - Taken From Vendor Control Script .@maxpage = .@data / .slotperpage + ( .@data % .slotperpage > 0 ) -1; while (true) { .@menu$ = .@currentpage ? "Previous Page:" : ":"; .@pageindex = .@currentpage * .slotperpage; for ( .@i = 0; .@i < .slotperpage && .@pageindex + .@i < .@data; .@i++ ) .@menu$ = .@menu$ +"Slot No."+( .@pageindex + .@i +1 )+" - ^FF0000[UnAvailable]^000000:"; if ( .@currentpage != .@maxpage ) .@menu$ = .@menu$ + "Next Page"; .@pick = select( .@menu$ ) -1; if ( !.@pick ) .@currentpage--; else if ( .@pick == .slotperpage +1 ) .@currentpage++; else break; } } OnInit: .slotperpage = 10; // display how many slots per page (prevent making the menu too long) query_sql "CREATE TABLE IF NOT EXISTS `job_board` ( `char_id` INT(11) NOT NULL DEFAULT '0', `item_id` INT(11) UNSIGNED NOT NULL DEFAULT '0', `item_at` INT(11) NOT NULL DEFAULT '0', `pays_id` INT(11) UNSIGNED NOT NULL DEFAULT '0', `pays_at` INT(11) NOT NULL DEFAULT '0', `timestamp` INT(11) UNSIGNED NOT NULL DEFAULT '0', PRIMARY KEY (`job_id`)) ENGINE=MyISAM"; end;} when menu generated it will seen like this // First Page or Page One-1123x Red Pot1124x Red Pot1125x Red Pot1126x Red Pot1127x Red Potnext page// Page Two-previous page1123x Red Pot1124x Red Pot1125x Red Pot1126x Red Pot1127x Red Potnext page// Last Pageprevious page1123x Red Pot1124x Red Pot1125x Red Pot1126x Red Pot1127x Red Pot when some one take the request, item requested will be mailed to the request maker and item requested will be deleted from the request taker, and when player make request the item payment will be deleted from him and when request taker completed a request he will be given the payment back to the tittle i asking for help to make the menu usable in game, and for the rest script if anyone want to help me to complete it a lot of thanks given and im grateful for it if anyone want to complete overall script, i want to add admin menu for deleting request that not quit posible or crazy request if you know what i mean, to delete it from request and a request will be expire in 3 days there for i have make timestamp for the script to delete old entry request that have pased 3 days on the database
-
[Request] Level Config For Damage, Skill & Status Calc (3Ceam Conf)
Litro replied to Litro's question in Plugin Requests
BUMP bump bump~ can you make it happen maam @@AnnieRuru -
[Request] Level Config For Damage, Skill & Status Calc (3Ceam Conf)
Litro posted a question in Plugin Requests
Hello, Can some one help me ? i have modified my battle.c, skill,c and status,c it was heavily edited for it, but when i update it yesterday all my work in battle.c was crumbled, yes it was my stupidity by i still have the backup file, here i want to ask help for make it into plugin, i think it was good for private server, for more information i have gathered data from 3ceam http://3ceam.googlecode.com/svn/trunk/rewrite/conf/battle/skill.conf // Set this to the max base level that you would like skills to add extra bonus damage from. // [Pinky] // NOTE: Default level is 150, if you set this to a higher level then you will experience higher/overload damage from many 3rd class skills.// NOTE2: If you set this to a lower level then 100 all skills will suffer penalties higer than 100%, causing damages below the minimun damage.max_highlvl_nerf: 150// Set this to the max job level that you would like 3rd class skills to add extra bonus damage from. // [Pinky] // NOTE: Default 3rd class job_level is 50 (official servers), if you set this to a higher level depending on your server's 3rd classes max job level, then you might experience higher/overload damage/effects from 3rd class skills.// This setting only effects 3rd class skills that uses job level as a bonus multiplicator.// 0 = disabledmax_joblvl_nerf: 50 and this code i have used for my own, taken from 3ceam by @Rytech blvl_nerf = status->get_lv(src); if( sd && ((skill_id >= RK_ENCHANTBLADE && skill_id <= LG_OVERBRAND_PLUSATK) || (skill_id >= RL_GLITTERING_GREED && skill_id <= OB_AKAITSUKI)) && battle_config.max_blvl_nerf && blvl_nerf > battle_config.max_blvl_nerf ) blvl_nerf = battle_config.max_blvl_nerf; t_blvl_nerf = status->get_lv(target); if( sd && ((skill_id >= RK_ENCHANTBLADE && skill_id <= LG_OVERBRAND_PLUSATK) || (skill_id >= RL_GLITTERING_GREED && skill_id <= OB_AKAITSUKI)) && battle_config.max_blvl_nerf && t_blvl_nerf > battle_config.max_blvl_nerf ) t_blvl_nerf = battle_config.max_blvl_nerf; if( sd && ((skill_id >= RK_ENCHANTBLADE && skill_id <= LG_OVERBRAND_PLUSATK) || (skill_id >= RL_GLITTERING_GREED && skill_id <= OB_AKAITSUKI)) && battle_config.max_jlvl_nerf ) jlvl_nerf = min(sd->status.job_level,battle_config.max_jlvl_nerf); else if( sd ) jlvl_nerf = sd->status.job_level; Litro -
wow it look good, can't wait to try
-
maybe this can do http://herc.ws/board/topic/1466-ro-credentials-rocred-v191-last-updated-20150108/page-4#entry47642
- 41 replies
-
ahhh i see, try change code in this part if(countitem(6221) > 0 && gettimetick(2) - exchangedalready > (60 * 60 * 20)) { to if(countitem(6221) > 0) { it will make while waiting for 20 hours, still you can exchange for beads if you have mystic hydra ball.
-
The Quest you mean is in the First Mate npc isn't it??, if so here i move exchanger to be part of npc main menu and remove time setting // //=====// /==/ /==/ /==/ // // // /==/ /==/ /=/ /==/ // //=====// /==/ /=/ /==============/ /========/ /==//===/ /==/ /==/// //=////// /==/ /==//=/ /==/ /==/==/==/==/==/ / / / /==/ /==/ /==/// // == /==/ /==//=/ /==/ /==/ /==/ /==/ ======/ / /==/ /==/ /==/// // == /==/ /==/ /=/ /==/ /==/ /==/ /==/ / /===/ / /==/ /==/ /==/// // == /==/ /==/ /=/ /==/ /==/ /==/ /==/ / /===/ / /==/ /==/=====/==/// // == /==/ /==/ /=/ /==/ /==/ /==/ /==/ /========/ /==/ /==///////==/// ================ rAthena Script ==================================================// ============== Information =======================================================// = iRO Daily Quest : Swab the Deck// = Made by :// = Rikimaru//===== Current Version: =============================================== //= 1.4//===== Compatible With: =============================================== //= any rAthena SVN//===== Description: =================================================== //= The iRO Daily Quest : Swab the Deck//= Usefull for having fun in a Server with a Mini Quest//= Has a counter of 20 Hours until the Players can do the Quest agian.//===== Additional Comments: =========================================== //= 1.3 Finished Scripting all NPC's [Rikimaru]//= 1.4 Fixed a saved Variable Typo [Rikimaru]//====================================================================== //============== DO NOT REMOVE MY CREDITS AND CLAIM MY WORK AS YOURS ===alberta,104,60,5 script [Quest] First Mate 748,{ set .@npcname$,"[ First Mate ]"; set .@BeadID,6222; mes .@npcname$; mes "Hey , do you want to do the Daily Quest?"; next; switch(select("Yes,sure!:No,bye!:Exchange Shiny Beads:Cancel")) { case 1: mes .@npcname$; mes "Okay you have to go to the alberta Ship"; mes "and enter one of the Portals and Catch A Hydra!"; next; mes .@npcname$; mes "If you catch it,you'll get a Mystic Hydra Ball,"; mes "if you got it,come back to me,if you failed,"; mes "come back to me and get a new Hydra Ball,to"; mes "catch the rats!"; next; mes .@npcname$; mes "So,here take this,"; mes "and come back when you finished."; getitem 12408,1; close; case 2: mes .@npcname$; mes "Okay,goodbye!"; close; case 3: mes .@npcname$; mes "Hey,how many Mystic Leaf Cat Balls"; mes "do you want to exchange to Shiny Beads?"; next; mes .@npcname$; mes "Input the Amount of the Mystic Leaf Cat Balls,which you want to exchange."; mes "If you input 0 , you're going to cancel the deal."; next; if (input(.@beadamount,1,30000) || countitem(6221) < .@beadamount) { mes .@npcname$; mes "I'm sorry,but you're missing some items!"; close; } mes .@npcname$; mes "Do you really want to exchange"; mes ":"+ .@beadamount +" Mystic Leaf Cat Balls"; mes "for "+ .@beadamount +" Shiny Beads?"; next; switch(select("Yes!:No!")) { case 1: mes .@npcname$; mes "Okay converting... ... ..."; delitem 6221, .@beadamount; getitem .@BeadID, .@beadamount; set BaseExp,+50000;// CHANGE THE EXP AMOUNT!! set JobExp,+40000;// CHANGE THE EXP AMOUNT!! next; mes .@npcname$; mes "Okay you can exchange the Shiny Beads at the Second Mate."; close; case 2: mes .@npcname$; mes "Okay goodbye!"; close; } case 4: close; }}// ============================ End of the First Mate Script ===================================alberta,107,59,5 script [Quest] Second Mate 100,{set .@npcname$,"^0000FF[ Second Mate ]^000000";set .BeadID,6222;setarray @ItemID[0],5159,5158,2281,2283,2295,5094,14545,12221,12210,11501,11502;setarray @Cost[0],20,10,10,10,30,100,2,1,2,1,1;setarray @itemcount[0],1,1,1,1,1,1,3,5,3,100,100;mes .@npcname$;mes "Hello ["+strcharinfo(0)+"],do";mes "you want to buy some items?";mes "You'll have to give me Shiny";mes "Beads for the Items!";next; if (select("Yes,sure","No,nevermind!") == 2) close; next; mes .@npcname$; mes "Item = Cost"; for( set .@i, 0; .@i < getarraysize(@ItemID); set .@i, .@i + 1 ) { mes "^0000ff"+@itemcount[.@i]+"x "+getitemname(@ItemID[.@i])+"^000000 = ^00aa00"+@Cost[.@i]+"^000000"; if( .@i < 1 ) set .@menu$, getitemname(@ItemID[.@i]); else set .@menu$, .@menu$+":"+getitemname(@ItemID[.@i]); } next; select(.@menu$); set @choice, @menu - 1; mes @npcname$; if(countitem(.BeadID) <@Cost[@choice]) { mes "You need more Shiny Beads for "+@itemcount[@choice]+"x '"+getitemname(@ItemID[@choice])+"'"; close; } mes "Are u realy sure to trade "+@itemcount[@choice]+"x '^ff0000"+getitemname(@ItemID[@choice])+"^000000' for ^00aa00"+@Cost[@choice]+"^000000 Shiny Beads?"; if(select("No! Cancel!:Yes, Trade me!") == 1 ) { mes "Canceled the Trade"; close; } set .@new, .BeadID - @Cost[@choice]; if( .@new < 0 ) set .@new, 0; delitem .BeadID,@Cost[@choice]; getitem @ItemID[@choice], @itemcount[@choice]; mes "The Trade was succesfull. Have fun with the Item!"; close;}alb_ship,0,0,0,0 monster Suspicious Hydra 2081,20,300000,150000,1
-
try change 20 to 24 on this part if(countitem(6221) > 0 && gettimetick(2) - exchangedalready > (60 * 60 * 20)) {
-
Need help: Running a basic server (pre-re and re)
Litro replied to laylayzi's question in General Server Support
the answer will be to long, to make it simpler let say this, there is several thread on "How to make a server" and other you can use search box to search it or maybe you should start reading wiki, check what you need there, if you still didn't get what is tit and tat or can't found what you need, you can come back here and ask the question Preference link you can take a look here http://herc.ws/wiki/Main_Page http://herc.ws/board/topic/968-guide-how-to-setup-hercules/?hl=guide -
that ArrowN.tga, may be it can help you merge it to your grf data.zip
-
Rep up and thanks man
-
you should give the detail man so other can help you
-
i think he mean the frame sprite like when hit he want to make it do other frame sir and i think that client side way
-
you should add shop five category, from what i see you have only 4 category in the array setarray .Shops$[1],"Wing Quest!","Headgear Quest!","Weapon Quest!","Dragon Set Quest"; add one more setarray .Shops$[1],"Wing Quest!","Headgear Quest!","Weapon Quest!","Dragon Set Quest","What Ever You Wanna Name It Here"; and do reloadscript, try npc again if still give you "An error occured" when clicking the npc
-
this, can you add multiple map restriction and time limit for afk.c plugin sir ?
-
setarray .Shops$[1],"Wing Quest!","Headgear Quest!","Weapon Quest!","Dragon Set Quest"; add shop category and try it
-
from what i can tell your commputer is not having support for asiang languang, so you can't open it with n++, but try to open it in wordpad
-
RO Credentials (ROCred), v1.10.0 - last updated 2017/12/31
Litro replied to Ai4rei's topic in Client-Side Releases
Currently known case where MAC address is missing are Wine/Crossover users. The protable usb modem too not having mac on its own it will give 00-00-00-00-00 some like that, im trying to solve that isue aparently i have used login check so no more than 2 mac addres logged in same time, but the user who give 00- mac adress is too many from them and they was kicked out from game reference: http://superuser.com/questions/125379/does-a-usb-modem-have-its-own-mac-address http://security.stackexchange.com/questions/32319/will-my-usb-modem-send-my-mac-address-to-my-isp from the reference above taken conclusion is the Modem communications type it must be 802.x protocol to have it own mac addres, truthly i don't even uderstand what they tell but i make it simply modem usb is not real modem dummy isn't it -
Just change the tick deff part and disable tick deff2 part, it should be like this case SC_DEEP_SLEEP: sc_def = bst->int_*50; tick_def = bst->int_ *20; // Linear reduction instead //tick_def2 = bst->int_ * 50 + SCDEF_LVL_CAP(bl, 150) * 50; // kRO balance update lists this formula break; sc_def is resistance part, tick_def is timer part, tick_def2 is timer part to but taken to calculation after tick deff has been calculated, SCDEF_LVL_CAP(bl, 150) * 50 is comparison level caster and target (not sure how it work get @Playtester or other member who have knowledge to explain it to you)
-
it there in the git https://github.com/HerculesWS/Hercules/blob/master/doc/script_commands.txt