Jump to content

drifterxxxx2

Members
  • Posts

    83
  • Joined

  • Last visited

Everything posted by drifterxxxx2

  1. thank you! I have another doubt with screen how do I change the scrollback size? this is what I've done so far screen ./athena-start start CTRL+a : scrollback 10000 but doesn't seem to change anything I read you can change the default lines that screen shows in .screenrc but idk how to do it, where do I add the line default scrollback?
  2. Hi I'm trying to see my rAthena servers in the console without restarting the server YES, I know there are a lot of topics about this. YES, I read the wiki my questions are 1.- how to make the attachment permanent? after I log out from putty screen turns off and it loses the attachment, so when I log in again I have to restart the server anyways 2.- how are you supose to use it
  3. totally missed that thank you! what about the #variable? I read it store the value in a table does it consume too much of server resources? long term speaking i.e. 1000+ accounts or how does that work? thank you again
  4. hi I want a welcome message to new players console shows: Fatal error! player not attached! and I have 2 questions prontera,3,3,3 script Welcome 111,{ end; OnPCLoginEvent: if (!#newbie) { sleep 3000; message strcharinfo(0),"welcome to the server, let me point this place to you"; sleep 3000; viewpoint 0,167,167,1,0xFF0000; set #newbie,1; } else end; } 1.- how can I solve this 2.- will the permanent variable add too much load to my server? thank you!
  5. - script GPtsRst -1,{ end; OnClock0000: switch(gettime(4)) { case 1: query_sql "UPDATE `guild_points` SET `total_points`=0"; query_sql "UPDATE `gid_points` SET `ind_pts`=0"; break; } end; } not sure if this works, but maybe it gives you ideas?
  6. Hi I'm trying to add the summer2 suit not sure if it's added already to rAthena, I didn't find it in github with the name summer or summer2 so I apologize if it has another name and this post is redundant I am aware of the script changebase too but that's not what i'm looking for since I want to create an item that change the suit for you, like the other xmas, summer, etc. for a X amount of time, you cannot use skills with it, you have the option to block changing palettes, and so on... the exact same rules from the other suits can someone help me? or point me where to look so I can do it myself? I'm a little afraid of playing too much with the src because it might work but I won't know if I did it correctly or not
  7. yes I am using zack data files any chance you could share your exe so I can test it in my server? could any of you recommend me any 2017 client so I can test? I've tried a few already with no luck thank you in advance edit: after a few tests I can say that this client seems also broken (to this day) throws random palette errors everywhere of non existing palette names. I tested my old 2016 client and I didn't have any issue, but 2017 just keep crashing to different palettes with random names on it hope it helps to someone
  8. Hi I'm testing 2017-01-25 in my server because I want baby summoners and expanded so far it is a pretty stable client for me but I ran into 1 error everytime I click in RODEX button from panel it goes "Client stopped working" and close. any ideas? - I added the 20170125 in src/custom/defines_pre.h - I used latest Nemo - no other related error just this, no errors in console If this post belongs to 2017-01-25 release topic please move it, I feel this is a particular case more than a general error tho
  9. Hi I'm trying to make a short quest similar to satan morocc After you get the quest 1234 in prontera you can now talk to the NPC that summons the MVP in prt_fild08 (whatever map) the spawner checks if you have the quest 1234 and if the delay is not less than 1 hour between the last time it was killed NPC summons the MVP and if you kill it gives item 920 (not part of the common drop) to all party members, sets the delay 1 hour for all players in the map you go back to prontera and if you have item 920 it complete quest I read npc/quests/quests_morocc.txt but it's too long and a bit tough to understand for my potato head I saw a lot of topics in the forum too but they talk about auto spawns and minigames and modifying mob_db can someone help me on this? make it like really short and simple thank you
  10. I changed the value in config/application.php AND the page CMSnewsRSS and nothing happens I went into my theme in eADevconfig.php and tried in every xml code that said rss, nothing changes tried in index.php in main folder from my theme and changed the value from '$rss->' and added rAthena news feed, it loads a bunch of random letters without any format (goes out of the page) thanks for the help, i give up. you can close
  11. Hi I'm trying to put RSS news feed in my fluxcp. I have IPboard 4.2.5 I tried doing settings > content discovery > create new I get this but not sure where to put it <rss version="2.0"> <channel> <title>Last news and updates</title> <link> http://www.server-ro.com/forum/index.php?/forum/17-news-and-updates/ </link> <description>Last news and updates asd</description> <language/> <item> <title>jkdasjkhasd</title> <link> http://www.server-ro.com/forum/index.php?/topic/11-jkdasjkhasd/ </link> <description> <![CDATA[ <p> adsads </p> ]]> </description> <guid isPermaLink="false">11</guid> <pubDate>Fri, 19 Jan 2018 10:51:00 +0100</pubDate> </item> </channel> </rss> I also follow these https://rathena.org/board/topic/67027-rss2news-for-fluxcp/ (not working) https://rathena.org/board/topic/109454-integrating-invision-power-board-with-flux-cp/ (added to application.php and not working) also modified themes/default/main/index.php (nothing happens) I'm like super confused @_@ could someone help me here?
  12. Hi So ... this is a little hard to explain... I'm using 20160203 I own 2 computers and I'm testing new palettes and some weather effects. After puting them in the grf I decided to copy the whole client folder and paste it in my secondary PC Then, I started the game in both, created 2 chars from 2 different accounts and tested how the palettes and effects behaved. It gets weird when I change to certain palettes because in one screen I see it (in example) Blue .. and in the other screen I see the exact same palette Green Setting off a weather effect in one screen and in the other it's still running What is happening? Can someone explain this to me? Pd. Server it is not in any of these computers
  13. very friendly and responsive to the task I requested. sometimes that's all you need and not just how fast you get it provided support after the delivery too, nothing else to say 5/5 stars
  14. Hi In this topic Olrox talks about which files you need to edit to change the level 175 yellow aura (almost at the end of the page 1), if you don't want any aura just make sure you don't delete them! Also, as a aura-hater, I found this very helpull if you want to try different colors or disable completely the 3rd job aura. Watch out tho, some files from the aura also are used by skills, i.e. severe rainstorm (not sure which tho) There's a lot of info you type 'aura' in the search engine too, people sharing free aura textures and so on. Hope it helps
  15. I followed this and worked for me at least
  16. Hi I'm not an expert but I found this very helpful for local server If you follow the steps carefully you'll your local rAthena working Also, to create an evil clone you simply need to search for the command in /doc/atcommands.txt @evilclone player/ID WoE and Battleground scripts,etc come along with rAthena
  17. Hi I'm testing @Euphy hunting missions script, which is //===== rAthena Script ======================================= //= Hunting Missions //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.4 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= Random hunting missions. //= Rewards are based on quest difficulty. //= //= NOTE: Requires SQL mob database. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.1 Small improvements and fixes. //= 1.2 Added party support and replaced blacklists with an //= SQL query, both thanks to AnnieRuru. //= 1.3 Re-added a blacklist adapted for the SQL query. //= 1.3a Added mission reset options. //= 1.3b Function updates. //= 1.4 Check for deleted characters, thanks to AnnieRuru. //= Syntax updates and style cleaning. //============================================================ prontera,152,187,6 script Hunting Missions 951,{ function Chk; mes "[Hunting Missions]"; mes "Hello, " + strcharinfo(0) + "!"; if (!#Mission_Delay) { next; mes "[Hunting Missions]"; mes "I can't find any records..."; mes "You must be new here!"; emotion ET_HUK; next; callsub Mission_Info; emotion ET_GO; #Mission_Delay = 1; close; } mes rand(2) ? "Working hard, as always..." : "Not slacking, I hope..."; mes "Is there anything I can help"; mes "you with?"; mes " "; mes "^777777~ You've completed " + callfunc("F_InsertPlural",Mission_Total,"mission",0,"^0055FF%d^777777 %s") + ". ~^000000"; next; switch(select( ((!Mission0) ? " ~ New Mission::" : ": ~ Mission Status: ~ Abandon Mission") + ": ~ Information: ~ Mission Shop: ~ View Top Hunters: ~ ^777777Cancel^000000" )) { case 1: mes "[Hunting Missions]"; if (#Mission_Count) { mes "You've started a mission"; mes "on another character."; if (!@hm_char_del_check) { // check for deleted character query_sql("SELECT 1 FROM `char_reg_num` WHERE `key` = 'Mission0' AND `char_id` IN(SELECT `char_id` FROM `char` WHERE `account_id` = " + getcharid(3) + ")", .@i); if (!.@i) { next; mes "[Hunting Missions]"; mes "I can't seem to find any records"; mes "for that character, though..."; mes "One moment, please."; emotion ET_SCRATCH; #Mission_Count = 0; } @hm_char_del_check = 1; } close; } if (#Mission_Delay > gettimetick(2) && .Delay) { mes "I'm afraid you'll have to wait " + callfunc("Time2Str",#Mission_Delay) + " before taking another mission."; close; } mes "You must hunt:"; query_sql("SELECT ID FROM `" + .mob_db$ + "` WHERE left(Sprite, 4) != 'meta' AND left(Sprite, 2) != 'E_' AND ~Mode & 32 AND EXP > 0 AND MVP1id = 0 AND DropCardid > 4000 AND DropCardid < 5000 AND ID < 2000 AND instr('"+.Blacklist$+"',ID) = 0 ORDER BY rand() LIMIT " + .Quests, .@mob); for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission" + .@i, .@mob[.@i]; setd "Mission" + .@i +"_", 0; } #Mission_Count = rand(.Count[0], .Count[1]); callsub Mission_Status; next; mes "[Hunting Missions]"; mes "Report back when"; mes "you've finished."; mes "Good luck!"; close; case 2: mes "[Hunting Missions]"; mes "Mission status:"; callsub Mission_Status; close; case 3: mes "[Hunting Missions]"; mes "Do you really want to"; mes "abandon your mission?"; if (.Reset < 0 && .Delay) mes "Your delay time will not be reset."; else if (.Reset > 0) mes "It will cost " + callfunc("F_InsertComma",.Reset) + " Zeny."; next; switch(select(" ~ Abandon...: ~ ^777777Cancel^000000")) { case 1: if (.Reset > 0) { if (Zeny < .Reset) { mes "[Hunting Missions]"; mes "You don't have enough"; mes "Zeny to drop this mission."; emotion ET_SORRY; close; } Zeny -= .Reset; emotion ET_MONEY; } mes "[Hunting Missions]"; mes "Alright, I've dropped"; mes "your current mission."; specialeffect2 EF_STORMKICK4; for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission"+.@i, 0; setd "Mission"+.@i+"_", 0; } #Mission_Count = 0; if (.Reset < 0 && .Delay) #Mission_Delay = gettimetick(2) + (.Delay * 3600); close; case 2: mes "[Hunting Missions]"; mes "I knew you were kidding!"; mes "Keep up the good work."; emotion ET_SMILE; close; } case 4: callsub Mission_Info; close; case 5: mes "[Hunting Missions]"; mes "You have ^0055FF" + #Mission_Points + "^000000 Mission Points."; mes "Use them well!"; callshop "mission_shop",1; npcshopattach "mission_shop"; end; case 6: mes "[Hunting Missions]"; mes "The top hunters are:"; query_sql("SELECT char_id AS id, (SELECT `name` FROM `char` WHERE char_id = id),`value` FROM `char_reg_num` WHERE `key` = 'Mission_Total' ORDER BY CAST(`value` AS SIGNED) DESC LIMIT 5", .@id, .@name$, .@val); for (.@i = 0; .@i < 5; .@i++) mes " [Rank " + (.@i+1) + "] " + ((.@name$[.@i] == "") ? "^777777none" : "^0055FF" + .@name$[.@i]+"^000000 : ^FF0000" + .@val[.@i] + " pt.") + "^000000"; close; case 7: mes "[Hunting Missions]"; mes "Nothing? Okay..."; emotion ET_SCRATCH; close; } end; Mission_Status: @f = 0; deletearray .@j[0], getarraysize(.@j); for (.@i = 0; .@i < .Quests; .@i++) { .@j[.@i] = getd("Mission" + .@i); .@j[.Quests] = .@j[.Quests] + strmobinfo(3,.@j[.@i]); .@j[.Quests+1] = .@j[.Quests+1] + (strmobinfo(6,.@j[.@i]) / (getbattleflag("base_exp_rate") / 100) * .Modifier[0]); .@j[.Quests+2] = .@j[.Quests+2] + (strmobinfo(7,.@j[.@i]) / (getbattleflag("job_exp_rate") / 100) * .Modifier[1]); mes " > "+Chk(getd("Mission"+.@i+"_"),#Mission_Count) + strmobinfo(1,.@j[.@i]) + " (" + getd("Mission"+.@i+"_") + "/" + #Mission_Count + ")^000000"; } // Reward formulas: .@Mission_Points = 3 + (.@j[.Quests] / .Quests / 6); .@Base_Exp = #Mission_Count * .@j[.Quests+1] / 5; .@Job_Exp = #Mission_Count * .@j[.Quests+2] / 5; .@Zeny = #Mission_Count * .Quests * .@j[.@i] * .Modifier[2]; next; mes "[Hunting Missions]"; mes "Mission rewards:"; mes " > Mission Points: ^0055FF" + .@Mission_Points + "^000000"; mes " > Base Experience: ^0055FF" + callfunc("F_InsertComma",.@Base_Exp) + "^000000"; mes " > Job Experience: ^0055FF" + callfunc("F_InsertComma",.@Job_Exp) + "^000000"; mes " > Zeny: ^0055FF" + callfunc("F_InsertComma",.@Zeny) + "^000000"; if (@f) { @f = 0; return; } next; mes "[Hunting Missions]"; mes "Oh, you're done!"; mes "Good work."; mes "Here's your reward."; emotion ET_BEST; specialeffect2 EF_ANGEL; specialeffect2 EF_TRUESIGHT; #Mission_Points += .@Mission_Points; BaseExp += .@Base_Exp; JobExp += .@Job_Exp; Zeny += .@Zeny; for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission" + .@i, 0; setd "Mission" + .@i+"_", 0; } #Mission_Count = 0; if (.Delay) #Mission_Delay = gettimetick(2) + (.Delay * 3600); Mission_Total++; if (Mission_Total == 1) query_sql("INSERT INTO `char_reg_num` (`char_id`,`key`,`index`,`value`) VALUES (" + getcharid(0) + ",'Mission_Total','0',1)"); else query_sql("UPDATE `char_reg_num` SET `value` = " + Mission_Total + " WHERE `char_id` = " + getcharid(0) + " AND `key` = 'Mission_Total'"); close; Mission_Info: mes "[Hunting Missions]"; mes "If you so choose, I can assign"; mes "you a random hunting quest."; mes "Some are easier than others, but"; mes "the rewards increase with difficulty."; next; mes "[Hunting Missions]"; mes "Missions points are shared"; mes "amongst all your characters."; if (.Delay) mes "Delay time is, too."; mes "You can't take missions on"; mes "multiple characters at once."; next; mes "[Hunting Missions]"; mes "You can start a quest"; mes (.Delay ? "every " + ((.Delay == 1) ? "hour." : .Delay + " hours.") : "whenever you want."); mes "That's everything~"; return; function Chk { if (getarg(0) < getarg(1)) { @f = 1; return "^FF0000"; } else return "^00FF00"; } OnBuyItem: @cost = 0; for (.@i = 0; .@i < getarraysize(@bought_nameid); .@i++) for (.@j = 0; .@j < getarraysize(.Shop); .@j += 2) if (@bought_nameid[.@i] == .Shop[.@j]) { set @cost, @cost + (.Shop[.@j+1] * @bought_quantity[.@i]); break; } mes "[Hunting Missions]"; if (@cost > #Mission_Points) mes "You don't have enough Mission Points."; else { for (.@i = 0; .@i < getarraysize(@bought_nameid); .@i++) { getitem @bought_nameid[.@i], @bought_quantity[.@i]; dispbottom "Purchased " + @bought_quantity[.@i] + "x " + getitemname(@bought_nameid[.@i]) + "."; } #Mission_Points -= @cost; mes "Deal completed."; emotion ET_MONEY; } @cost = 0; deletearray @bought_nameid[0], getarraysize(@bought_nameid); deletearray @bought_quantity[0], getarraysize(@bought_quantity); close; OnNPCKillEvent: if (!getcharid(1) || !.Party) { if (!#Mission_Count || !Mission0) end; for (.@i = 0; .@i < .Quests; .@i++) { if (strmobinfo(1,killedrid) == strmobinfo(1,getd("Mission" + .@i))) { if (getd("Mission" + .@i + "_") < #Mission_Count) { dispbottom "[Hunting Mission] Killed " + (set(getd("Mission" + .@i + "_"),getd("Mission" + .@i + "_") + 1)) + " of " + #Mission_Count + " " + strmobinfo(1,killedrid) + "."; end; } } } } else if (.Party) { .@mob = killedrid; getmapxy(.@map1$,.@x1,.@y1,UNITTYPE_PC); getpartymember getcharid(1),1; getpartymember getcharid(1),2; for (.@i = 0; .@i < $@partymembercount; .@i++) { if (isloggedin($@partymemberaid[.@i], $@partymembercid[.@i])) { set .@Mission_Count, getvar(#Mission_Count, $@partymembercid[.@i]); set .@Mission0, getvar(Mission0, $@partymembercid[.@i]); set .@HP, readparam(HP, $@partymembercid[.@i]); if (.@Mission_Count && .@Mission0 && .@HP > 0) { getmapxy(.@map2$,.@x2,.@y2,UNITTYPE_PC); if ((.@map1$ == .@map2$ || .Party == 1) && (distance(.@x1,.@y1,.@x2,.@y2) <= 30 || .Party < 3)) { for (.@j = 0; .@j < .Quests; .@j++) { .@my_mob_id = getvar( getd("Mission"+.@j),$@partymembercid[.@i] ); .@my_count = getvar( getd("Mission"+.@j+"_"), $@partymembercid[.@i] ); if (strmobinfo(1,.@mob) == strmobinfo(1,.@my_mob_id)) { if (.@my_count < .@Mission_Count) { setd "Mission"+.@j+"_", (.@my_count+1), $@partymembercid[.@i]; dispbottom "[Hunting Mission] Killed " + (.@my_count+1) + " of " + .@Mission_Count + " " + strmobinfo(1,.@mob) + ".", 0x777777, $@partymembercid[.@i]; break; } } } } } } } } end; OnInit: .Delay = 24; // Quest delay, in hours (0 to disable). .Quests = 6; // Number of subquests per mission (increases rewards). .Party = 3; // Party options: 0 (exclude party kills), 1 (include party kills), 2 (same map only), 3 (screen area only) .Reset = -1; // Reset options: -1 (abandoning mission sets delay time), 0 (no delay time), [Zeny] (cost to abandon mission, no delay time) setarray .Count[0], // Min and max monsters per subquest (increases rewards). 50,75; setarray .Modifier[0], // Multipliers for Base Exp, Job Exp, and Zeny rewards. getbattleflag("base_exp_rate")/200,getbattleflag("job_exp_rate")/200,6; .mob_db$ = // Table name of SQL mob database (checkre(0))?"mob_db_re":"mob_db"; setarray .Shop[0], // Reward items: <ID>,<point cost> (about 10~20 points per hunt). 512,1,513,1,514,1,538,5,539,5,558,10,561,10; .Blacklist$ = // Blacklisted mob IDs. "1062,1088,1183,1186,1200,1212,1220,1221,1234,1235,"+ "1244,1245,1250,1268,1290,1293,1294,1296,1298,1299,"+ "1300,1301,1303,1304,1305,1306,1308,1309,1311,1313,"+ "1515,1588,1618,1676,1677,1678,1679,1796,1797,1974,"+ "1975,1976,1977,1978,1979"; npcshopdelitem "mission_shop",512; for (.@i = 0; .@i < getarraysize(.Shop); .@i += 2) npcshopadditem "mission_shop", .Shop[.@i], .Shop[.@i+1]; end; } - shop mission_shop -1,512:-1 And I ran into this error [Warning]: script:op_2num: overflow detected op=C_MUL i1=66 i2=45851620 [Debug]: Source (NPC): Hunting Missions at prontera (152,187) I was testing with the ammount of quests given and exp/zeny rewards, as you can see here (extracted from script) OnInit: .Delay = 24; // Quest delay, in hours (0 to disable). .Quests = 6; // Number of subquests per mission (increases rewards). .Party = 3; // Party options: 0 (exclude party kills), 1 (include party kills), 2 (same map only), 3 (screen area only) .Reset = -1; // Reset options: -1 (abandoning mission sets delay time), 0 (no delay time), [Zeny] (cost to abandon mission, no delay time) setarray .Count[0], // Min and max monsters per subquest (increases rewards). 50,75; setarray .Modifier[0], // Multipliers for Base Exp, Job Exp, and Zeny rewards. getbattleflag("base_exp_rate")/200,getbattleflag("job_exp_rate")/200,6; I increased the number of quest from 4 to 6, Increased delay from 12 to 24 hours, increased amount of min,max monsters from 40,70 to 50,75 and decreased the exp rates by half and zeny reward Question is, How do I prevent the script from runing into overflow, not sure where did it get that number :/
  18. Ty for your response The issue, tho, was in the input command which is not very well explained in doc/script_commands.txt, at least for snail slow learners like me xD I tried this input .Message2,0,176; // so i guess it only counts positives, and works like range if (.Message2 == 0) {// excluded 0 not a valid char level next; mes "not valid"; mes "try again"; close; } else if (.Message2 > 175) { next; mes "not valid"; mes "must be level 1-175"; close; } else { mes "here is your message"; close2; //etc so overall it works but I still didn't fully understand how input works I hope I got it right Maybe will help other people
  19. Hi I'm trying to modify @Emistry's non spammable broadcaster It supose to ask player for job and level and then announce it Restrictions are the job must be only letters, less than 25 characters and level must be from 1-175 This is what I've manage to write so far, it is not yet complete, but i'm stuck because it's not reading the 'else' Not sure why.. not sure of anything actually xD .. all kind of tips are welcome! //Emistry's Non Spammable Ver prontera,147,165,5 script Broadcaster NPC 503,{ set .name$,"[Broadcaster]"; set .Minutes,1; if( .DelayTime <= gettimetick(2)) { mes .name$; mes "hi ^0000FF"+strcharinfo(0)+"^000000 ."; mes "do you want to look for party for ^FF000050.000^000000z.?"; mes "remember, you agree to follow the ^5533AArules^000000.\n"; mes "for more information please visit us at."; switch( select("yes","nope")) { case 1: next; mes .name$; mes "what is your ^FF0000job^000000?\n"; mes "you can also add your friends here."; input(.Message1$); if (getstrlen(.Message1$) < 25) { next; mes .name$; mes "and your level?\n"; mes "numbers 1-175"; input(.Message2); } if (.Message2 > 1) || (.Message2 < 175) { close2; set .DelayTime,gettimetick(2) + ( .Minutes * 1 ); set zeny,zeny-100000; announce "["+strcharinfo(0)+"] is looking for party to play as "+.Message1$+" level "+.Message2+". please send him a message",0,0x007799,14; end; } else { next; mes .name$; mes "message not valid."; mes "must be less than 25 characters and from 1-175."; mes "try again."; close; } case 2: next; mes .name$; mes "come back anytime."; close; } } else if( .DelayTime > gettimetick(2) ){ set .last,.DelayTime - gettimetick(2); set .@min, .last % (24*60*60) % (60*60) / (60); set .@sec, .last % (24*60*60) % (60*60) % (60); mes "[Broadcaster]"; mes "cant send another meesage in "+.@min+" minutes "+.@sec+" secs"; } close; } Thank you for your time
  20. Hi I'm trying to make this script work The problem is the after I accept quest 8507 the NPC doesn't go to line 13 It simply repeat the line 56 prontera,72,165,4 script NPC 509,{ if (BaseLevel < 120) { mes .n$; mes "you're not allowed"; mes "go level"; close; } if (checkquest(8507) == 2) && (checkquest(8508) == 2) && (checkquest(8508) == 2) && (checkquest(8510) == 2) { mes "you're really good at hunting!"; close; } else { if (checkquest(8507) != -1) { if (checkquest(8507,HUNTING) != 2) { mes .n$; mes "i'm glad you helped us."; mes "go hunt."; close2; emotion ET_OK; end; } } if (checkquest(8508) != -1) { if (checkquest(8508,HUNTING) != 2) { mes .n$; mes "i'm glad you helped us."; mes "go hunt."; close2; emotion ET_OK; end; } } if (checkquest(8509) != -1) { if (checkquest(8509,HUNTING) != 2) { mes .n$; mes "i'm glad you helped us."; mes "go hunt"; close2; emotion ET_OK; end; } } if (checkquest(8510) != -1) { if (checkquest(8510,HUNTING) != 2) { mes .n$; mes "i'm glad you helped us."; mes "go hunt."; close2; emotion ET_OK; end; } } else { mes .n$; mes "finally you're more than 120"; mes "please help us"; next; switch(select("yes","no.")) { case 1: mes .n$; mes "yay!"; setquest 8507; close2; emotion ET_OK; end; case 2: next; mes .n$; mes "bleh."; close2; emotion ET_CRY; end; } } } } How can I make the NPC check if i'm in the middle of a quest and say string "I'm glad you helped us".... Accepting all kind of tips!
  21. Hi I'm trying to make Woe potion boxes so I set battleflag 'woe_reserved_char_id' and added to a NPC script i.e. the NPC gives me Woe's White Potion, this item will only work in Woe time Until now i'm perfectly fine and everything works So now I'm trying to make a box of Woe's White Potion and found this old script in eAmod { getitem2 504,50,1,0,0,254,0,getbattleflag("woe_reserved_char_id")&0xffff,(getbattleflag("woe_reserved_char_id")>>16)&0xffff; } Following script_commands.txt I understand almost everything in 'getitem2', except from this // First, let's get an ID of a character who's name will be on the item. // Only an existing character's name may be there. // Let's assume our character is 'Adam' and find his ID. @charid = getcharid(0,"Adam"); // Now we split the character ID number into two portions with a binary // shift operation. If you don't understand what this does, just copy it. @card3 = @charid & 65535; @card4 = @charid >> 16; My problem is the box is not opening in Woe times (the item alone works perfectly fine) What am I getting wrong here? how does this binary shift works? what is &0xffff?
  22. Thanks for your response I'm aware of item_delay I just wanted to add a delay on the effect, more like learn how to I thought sleep2 would pause the script specialeffect2 but it is not working
  23. Hi I'm making several custom items and I was wondering how to add a delay of 1 sec to the effect on potions I have this so far 35027,T_Potion,Test Potion,0,1,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ itemheal rand(325,405),0; { specialeffect2 207; sleep2 1000; } },{},{} but it isn't working
  24. I was adding some duplicates and when I extracted the resnametable.txt all the korean letters changed to '??????????' for some reason so all the .bmp duplicate paths broke ofc problem solved thanks for the information, pretty usefull
  25. Hi I'm currently using rAthena and 20160203 I'm getting the 'missing .bmp' error everytime I enter a map with invisible minimap, like WoE castle maps for example. I'm a bit confused because I didn't have this issue in 20151104 and not sure if this is an option now in nemo or a bad config that i'm missing... The data.grf doesn't come with all .bmp files like, using the previous example, arug_cas04-05.bmp (missing .bmp for arunafeltz castle maps) but still manage to work without any fatal error. What to do? Anyone else having this issue?
×
×
  • Create New...