Jump to content


  • Content Count

  • Avg. Content Per Day

  • Joined

  • Last visited

  • Days Won


-Chuck- last won the day on April 15

-Chuck- had the most liked content!

Community Reputation

5 Neutral

About -Chuck-

  • Rank

Profile Information

  • Gender
  • Location
  • Server

Recent Profile Visitors

655 profile views
  1. You can use both events in one npc... I have modify it for you, please give a try.. - script pvp1 -1,{ OnPCDieEvent: getmapxy @mapdie1$,@x,@y; if (@mapdie1$ != "coca_cola") end; set @CID,getcharid(0); set @name$,""; set @points,0; query_sql "SELECT `deaths_pvp1` FROM `rankpvp01` WHERE `char_id`="[email protected]+"",@points; query_sql "SELECT `name` FROM `rankpvp01` WHERE `char_id`="[email protected]+"",@name$; if ( @name$ == "" ) { query_sql "INSERT INTO `rankpvp01` (`char_id`,`name`,`deaths_pvp1`,`saldo_pvp1`) VALUES ("[email protected]+",'"+strcharinfo(0)+"',1,-1)"; end; } query_sql "UPDATE `rankpvp01` SET `deaths_pvp1` = `deaths_pvp1` + 1, `saldo_pvp1` = `saldo_pvp1` - 1 WHERE `char_id`="[email protected]; end; OnPCKillEvent: getmapxy @map1$,@x,@y; if ( @map1$ != "coca_cola" ) end; set @CID, getcharid(0); set @name$, ""; set @points, 0; query_sql "SELECT `kills_pvp1` FROM `rankpvp01` WHERE `char_id`="[email protected]+"", @points; query_sql "SELECT `name` FROM `rankpvp01` WHERE `char_id`="[email protected]+"", @name$; if ( @name$ == "" ) { query_sql "INSERT INTO `rankpvp01` (`char_id`,`name`,`kills_pvp1`,`saldo_pvp1`) VALUES ("[email protected]+",'"+strcharinfo(0)+"',1,1)"; dispbottom "Você Matou seu primeiro jogador"; end; } query_sql "UPDATE `rankpvp01` SET `kills_pvp1` = `kills_pvp1` + 1, `saldo_pvp1` = `saldo_pvp1` + 1 WHERE `char_id`="[email protected]; set @points, @points + 1; announce "Você matou [ "+rid2name(killedrid)+" ] e chegou a "[email protected]+" jogadores mortos.",bc_self,0x90FFFF; end; }
  2. Yes, just go to your server folder using cd command, type the command I sent above and press enter. This will start and save logs when its running.
  3. Run the server with this command: ./athena-start start --enlog This will save into log/map-server.log
  4. Im not sure, but i think you could do this on: db/skill_damage_db.txt
  5. Try a new 'System' folder.. And check if there is those files: 'OngoingQuestInfoList_Sakray.lub', 'RecommendedQuestInfoList_Sakray.lub'
  6. Why dont you use the diff on you pc, and then send the files using a FTP? (Like Filezilla)
  7. Disable "Ignore Lua errors", "Ignore Missing Pallete Errors" and "Ignore Resource Errors" when diffing you hexed. Then you will know what is missing...
  8. src/config/renewal.hpp #define RENEWAL #define RENEWAL_CAST #define RENEWAL_DROP #define RENEWAL_LVDMG #define RENEWAL_ASPD #define RENEWAL_STAT If you keep like that, everything work with renewal formulas, if you want some of them working like Pre-Re, just add // (disable by commenting the line) And recompile after saving..
  9. Esse erro é porque o servidor não achou a tabela loginlog no banco de dados ragnarok.. Recomendo dar uma lida nesse guia, ele é bem completo..:
  10. Na pasta conf/battle/drops.conf Nos dois último você não mexe, que são as chances mínimas e máximas. Os 3 primeiros são, cartas comuns, mini-boss e mvp, consecutivamente. 100 significa 0,01%
  11. -Chuck-

    NPC Timer

    You will need to save the npctimer into a variable when logginout...
  12. -Chuck-

    NPC Timer

    Try the end;s after the condition.. prontera,154,181,3 script testnpc::npctimerX0000 876,{ mes "Timer value" + getnpctimer(0); mes "State timer" + getnpctimer(1,"npctimerX0000"); mes "Number of events" + getnpctimer(2); switch(select("Initialization:Stop:Start:Settings")) { case 1: //initnpctimer; close; case 2: stopnpctimer; close; case 3: attachnpctimer strcharinfo(0); startnpctimer; end; case 4: input [email protected]; setnpctimer [email protected]; close; } OnTimer1000: dispbottom "After a second..."; message strcharinfo(0),"You have "+((getnpctimer(0))/1000)+" Seconds."; end; OnTimer5000: dispbottom "After 5 seconds..."; end; OnTimer10000: dispbottom "Times up! warping you to your home town"; stopnpctimer; end; OnPCLogoutEvent: if ( getnpctimer(0) == 0 ){ dispbottom " Why stop timer if it did not start yet"; } else { stopnpctimer; } end; OnPCLoginEvent: if ( getnpctimer(0) == 0 ){ dispbottom "no start countdown since it didn't start yet"; } else { startnpctimer; } end; }
  13. Ive just tried it here and got no errors.. I will paste into code.. Was reading this code, is called OnMVPDeath, but there is nothing on this event.. just a end; prontera,119,168,6 script Skormy 641,{ if(getgmlevel()<.gmlevel) end; set [email protected],-3; L_Menu: mes .NPC$; mes "Select an option from the menu below and click [ ^0000FFSummon!^000000 ] when you're done."; next; if([email protected] == -3){ set [email protected]$,"Random MVP"; } else if ( [email protected] ) { set [email protected]$,getmonsterinfo([email protected],0); } else { set [email protected]$,"NULL"; } Switch(select("Monster ID ( ^0000FF"[email protected]$+"^000000 ) :Map Name ( ^0000FF"[email protected]$+"^000000 ) :Amount ( ^0000FF"[email protected]+"^000000 ):[ ^0000FFSummon!^000000 ]")) { case 1: mes .NPC$; mes "Input the id of the monster you'd like to spawn."; next; input([email protected]); while(!query_sql("(SELECT `ID` from `mob_db` where `ID` = "[email protected]+") UNION ALL (SELECT `ID` from `mob_db2` where `ID` = "[email protected]+" LIMIT 1);",[email protected])) input([email protected]); if( compare(.blacklist$,"|"[email protected]+"|" ) ) { message strcharinfo(0),"I'm sorry but that monster was blacklisted!"; message strcharinfo(0),"Please use a different id."; set([email protected],0); } goto L_Menu; case 2: mes .NPC$; mes "Input the name of the map you'd like to spawn the monster on."; next; input([email protected]$); while(mobcount([email protected]$,"all")==-1){ input([email protected]$); if(mobcount([email protected]$,"all")!=-1){ mes "Would you like to spawn "+([email protected]==-3?"Random MVPs":getmonsterinfo([email protected],0))+" on the map "[email protected]$+"?"; next; if(select("Yes:No")-1) { set [email protected]$,""; continue; } else { break; } } } goto L_Menu; case 3: mes .NPC$; mes "Input the amount you'd like to spawn."; mes "( Maximum "+.Lamount+" )"; next; input([email protected]); while([email protected]<=0||[email protected]>.Lamount) { input([email protected]); if([email protected]>0&&[email protected]<=.Lamount) { mes "Would you like to spawn "[email protected]+" monsters?"; next; if(select("Yes:No")-1) { set [email protected],0; continue; } else { break; } } } goto L_Menu; case 4: if( mobcount([email protected]$,"all")==-1 || [email protected]<=0 ) { if(!.fiesta) { mes .NPC$; mes "I'm sorry you need to fill-out all the fields before summoning a monster!"; next; goto L_Menu; } else { if(mobcount([email protected]$,"all")==-1) set [email protected]$,"this"; if([email protected]<=0) set [email protected],.fiesta; } } if(.Mamount){ if(mobcount([email protected]$,"Skormy::OnMVPDeath")[email protected]>.Mamount&&.Mamount>0) { mes .NPC$; mes "I'm sorry but there can only be "+.Mamount+" MVPs in one map."; set [email protected],.Mamount-mobcount([email protected]$,"Skormy::OnMVPDeath"); if([email protected]>0) { mes "Would you like to spawn "[email protected]+" instead?"; if(select("Yes:No")-1) { mes "Ok!"; close; } announce ""+strcharinfo(0)+" : Summoned "[email protected]+" "[email protected]$+"(s) in "+([email protected]$=="this"?strcharinfo(3):[email protected]$)+".",bc_all,"0x"+.fontcolor$; monster [email protected]$,0,0,"--ja--",[email protected],[email protected],"Skormy::OnMVPDeath"; close; } next; goto L_Menu; } } announce ""+strcharinfo(0)+" : Summoned "[email protected]+" "[email protected]$+"(s) in "+([email protected]$=="this"?strcharinfo(3):[email protected]$)+".",bc_all,"0x"+.fontcolor$; monster [email protected]$,0,0,"--ja--",[email protected],[email protected],"Skormy::OnMVPDeath"; close; } end; OnMVPDeath: end; OnInit: //=-=-=-=-=-=Configuration=-=-=-=-=-= set .NPC$,"[ ^D2691ESkormy^000000 ]"; // Npc Name set .gmlevel,60; //Minimum Gm level allowed to spawn MVPS. set .fiesta,0; // If enabled will spawn that many random MVPs on the players map if no other information is provided! (Off=0) Will bypass Maximum amount! set .fontcolor$,"FFFF00"; // Hexi color text is announced in. set .Lamount,20; // Maximum amount of mvps that can be spawned at once. set .Mamount,100; // Maximum amount of mvps on one map at a time. (Off=0) set .blacklist$,"|1288|1003|1004|1005|"; //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= }
  14. You can try this idea: OnNPCKillEvent: if (getequipid(EQUIP_TYPE) == EQUIP_ID) { setiteminfo ITEM_ID,3,NEW_CHANCE; //1 = 0.01% , etc.. } If is a lot of items, you can create an array, and do a loop... Hope you understand..
  15. I didnt look how the npc works, only fixed the error... Could you try this please?
  • Create New...

Important Information

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