Jump to content

RyokoMVP

Members
  • Posts

    209
  • Joined

  • Last visited

Posts posted by RyokoMVP

  1. the script you posted.... work fine in my test server...

    and..if you are not using eAthena..make sure you change

    .i++;
    

    into

    set .i,.i + 1;
    

    okey i'll try... i use valhalla ( judas svn ) not eAthena >_<

    okay , problem solved Emistry , thanks a lot

  2. i try like this

    prontera,214,187,5	script	Sample	992,{
    
    OnS1:
    if(Zeny < 500) goto NeedZenys;
    set Zeny,zeny-500;
    percentheal 100,100;
    skilleffect 34,0; sc_start SC_BLESSING,180000,10;
    skilleffect 29,0; sc_start SC_INCREASEAGI,180000,10;
    sc_start SC_MAGNIFICAT,180000,10;
    end;
    OnS2:
    if(Zeny < 50000) goto NeedZenys;
    set Zeny,zeny-50000;
    percentheal 100,100;
    sc_start SC_BLESSING,360000,10;
    sc_start SC_INCREASEAGI,360000,10;
    sc_start SC_MAGNIFICAT,360000,10;
    sc_start SC_IMPOSITIO,180000,10;
    skilleffect 361,0; sc_start SC_ASSUMPTIO,180000,10;
    end;
    OnS3:
    if(Zeny < 5000) goto NeedZenys;
    set Zeny,zeny-5000;
    switch ( basejob ) {
     case Job_Alchemist:	set .@spirit, 445; break;
     case Job_Monk:	 set .@spirit, 447; break;
     case Job_Star_Gladiator:  set .@spirit, 448; break;
     case Job_Sage:	 set .@spirit, 449; break;
     case Job_Crusader:	set .@spirit, 450; break;
     case Job_SuperNovice:   set .@spirit, 451; break;
     case Job_Knight:	set .@spirit, 452; break;
     case Job_Wizard:	set .@spirit, 453; break;
     case Job_Priest:	set .@spirit, 454; break;
     case Job_Bard: case Job_Dancer: set .@spirit, 455; break;
     case Job_Rogue:	 set .@spirit, 456; break;
     case Job_Assassin:	set .@spirit, 457; break;
     case Job_Blacksmith:   set .@spirit, 458; break;
     case Job_Hunter:	set .@spirit, 460; break;
     case Job_Soul_Linker:   set .@spirit, 461; break;
     default:
      if ( upper == 1 && baselevel < 70 )
    set .@spirit, 494;
    }
    if ( .@spirit ) {
     sc_start4 sc_spirit, 360000, 5, .@spirit,0,0;
     skilleffect .@spirit, 5;
    }
    end;
    
    NeedZenys:
    mes "You Don't Have Money";
    close;
    
    OnInit:
    defpattern 1, "S1","OnS1";
    defpattern 1, "S2","OnS2";
    defpattern 1, "S3","OnS3";
    activatepset 1;
    
    setarray .pub_title$[0],"S1 = 500","S2 = 50.000","S3 = 5000";
    while( 1 ){
    delwaitingroom;
    waitingroom .pub_title$[ .i % 3 ],0;
    .i++;
    sleep 2000;
    }
    end;
    
    }

    but only show first pub , and never change ( first pub is S1 ) S2 And S3 Is Not Shown

    btw i got error like this @map server

    [Debug]: Source (NPC): Sample at prontera (214,187)

    [Warning]: Found more arguments than necessary.

  3. hello , this is my script

    prontera,214,187,5	script	Sample	992,{
    
    OnPaket:
    if(Zeny < 100000) goto NeedZenys;
    set Zeny,zeny-100000;
    percentheal 100,100;
    sc_start SC_BLESSING,360000,10;
    sc_start SC_INCREASEAGI,360000,10;
    sc_start SC_MAGNIFICAT,360000,10;
    sc_start SC_IMPOSITIO,360000,10;
    skilleffect 361,0; sc_start SC_ASSUMPTIO,360000,10;
    end;
    OnBuffs:
    if(Zeny < 500) goto NeedZenys;
    set Zeny,zeny-500;
    percentheal 100,100;
    skilleffect 34,0; sc_start SC_BLESSING,360000,10;
    skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10;
    end;
    OnLink:
    if(Zeny < 10000) goto NeedZenys;
    set Zeny,zeny-10000;
    switch ( basejob ) {
     case Job_Alchemist:	set .@spirit, 445; break;
     case Job_Monk:	 set .@spirit, 447; break;
     case Job_Star_Gladiator:  set .@spirit, 448; break;
     case Job_Sage:	 set .@spirit, 449; break;
     case Job_Crusader:	set .@spirit, 450; break;
     case Job_SuperNovice:   set .@spirit, 451; break;
     case Job_Knight:	set .@spirit, 452; break;
     case Job_Wizard:	set .@spirit, 453; break;
     case Job_Priest:	set .@spirit, 454; break;
     case Job_Bard: case Job_Dancer: set .@spirit, 455; break;
     case Job_Rogue:	 set .@spirit, 456; break;
     case Job_Assassin:	set .@spirit, 457; break;
     case Job_Blacksmith:   set .@spirit, 458; break;
     case Job_Hunter:	set .@spirit, 460; break;
     case Job_Soul_Linker:   set .@spirit, 461; break;
     default:
      if ( upper == 1 && baselevel < 70 )
    set .@spirit, 494;
    }
    if ( .@spirit ) {
     sc_start4 sc_spirit, 360000, 5, .@spirit,0,0;
     skilleffect .@spirit, 5;
    }
    end;
    
    NeedZenys:
    mes "You Don't Have Money";
    close;
    
    OnInit:
    defpattern 1, "paket","OnPaket";
    defpattern 1, "buff","OnBuffs";
    defpattern 1, "link","OnLink";
    activatepset 1;
    end;
    }
    
    

    how if i want to make this NPC have a waiting room ( pub ) and change every 2 second ?

    i need example :

    pub 1 : Paket Price Is 100000

    Pub 2 : Buff Price Is 500

    Pub 3 : Link Price Is 10000

    Just Have 1 Pubs , But Change Every 2 second like BOT ~ thanks...

    i already read Here

    but i still confuse~ sorry >_<

  4. im sorry ~ i dont know about detail..my player only send this picture

    what i know is he use windows 7

    all my player who use windows 7 ( 80% ) have error every log in into my RO , i dont know why..error just shown for windows 7 only...

    work good at windows XP

  5. prontera,214,187,5    script    Sample    992,{
    OnHeal:
    percentheal 100,100;
    end;
    OnBuffs:
    percentheal 100,100;
    skilleffect 34,0; sc_start SC_BLESSING,360000,10;
    skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10;
    end;
    OnLink:
    switch ( basejob ) {
     case Job_Alchemist:    set .@spirit, 445; break;
     case Job_Monk:     set .@spirit, 447; break;
     case Job_Star_Gladiator:  set .@spirit, 448; break;
     case Job_Sage:     set .@spirit, 449; break;
     case Job_Crusader:    set .@spirit, 450; break;
     case Job_SuperNovice:   set .@spirit, 451; break;
     case Job_Knight:    set .@spirit, 452; break;
     case Job_Wizard:    set .@spirit, 453; break;
     case Job_Priest:    set .@spirit, 454; break;
     case Job_Bard: case Job_Dancer: set .@spirit, 455; break;
     case Job_Rogue:     set .@spirit, 456; break;
     case Job_Assassin:    set .@spirit, 457; break;
     case Job_Blacksmith:   set .@spirit, 458; break;
     case Job_Hunter:    set .@spirit, 460; break;
     case Job_Soul_Linker:   set .@spirit, 461; break;
     default:
      if ( upper == 1 && baselevel < 70 )
       set .@spirit, 494;
    }
    if ( .@spirit ) {
     sc_start4 sc_spirit, 360000, 5, .@spirit,0,0;
     skilleffect .@spirit, 5;
    }
    end;
    OnInit:
    defpattern 1, "heal","OnHeal";
    defpattern 1, "buff","OnBuffs";
    defpattern 1, "link","OnLink";
    activatepset 1;
    end;
    }

    i dont edit anything~ btw ... can u make this script only work if thats people ( player ) have TCG card ? if not this NPC will Not Respect

  6. @ryokomvp

    make sure you have PCRE enabled..

    beside...please alway refer to your map server when any npcs are not working...there should be some useful message for you to debug it...

    refer PCRE

    yes i know about PCRE , i already install it...it's work for buff and link . only heal the npc dont do anything...

    i already install PCRE because my disguise need it too~ there is no debug i think..because link and buff work~ only heal not work

  7. hello everyone, i don't know why but my players got error like this every login ( not all players )

    they use Windows 7 , Turn Off Firewall , Antivirus , And Use NetFrameWork 4.5

    Anyone Can Help My Players?Thanks

    171018791a37c720174b924c3b4c6cf416e9e6a3.jpg

  8. Hey can i request some healer with command ? it's possible ?

    like a bot i said~ so if we said " heal " the healer will heal us , if we said " buff " the npc will give us a buff

    or NPC Healer will open PUB , and when enter the pub and said write " heal / buff " this npc will give us heal / buff

    it's possible ?

  9. hey i want to ask , i try to use kPatcher / thor patcher with true config.but why my patcher can't connect to my vps ?

    andbody know why? in my old vps it's work good...but it's not connected in my new vps..control panel and other work 100% only patcher not work...

    somebody can help me?

    for example this is my thor patcher configuration

    [Config:Main]
    
    RootURL='http://27.111.34.120/patch/'
    
    RemoteConfigFile='main.ini'
    
    TimeOut=0
    
    StatusFile='server.dat'
    
    DefaultGRF='Miracle.grf'
    
    ClientEXE='Miracle.exe'
    ClientParameter=''
    
    FinishOnConnectionFailure=false
    
    [Config:Window]
    AutoResize=false
    Style='none'
    
    Width=842
    Height=595
    
    DragHandling=true
    
    Background='images/bg.jpg'
    
    FadeOnDrag=false
    
    [Config:BGM]
    File=
    
    Loop=true
    
    Volume=20
    
    Directory=
    
    [Config:Misc]
    Title='Miracle'
    
    HideProgressBarWhenFinish=true
    
    
    [ProgressBar:bar1]
    Width=380
    Height=30
    
    Left=395
    Top=473
    
    BackColorStart=$009DEEEF
    BackColorEnd=$00C2F1F1
    
    FrontColorStart=$006ED5B0
    FrontColorEnd=$0080DDCA
    
    FrontImage=
    BackImage=
    
    Hook='ProgressChange'
    
    
    
    [Label:Status]
    AutoResize = false
    
    Width=369
    Height=
    
    Left=15
    Top=498
    Alignment='center'
    
    FontColor=$000000
    FontName = ''
    FontSize =
    
    Text=''
    
    Hook='StatusChange'
    
    [NoticeBox:Box0]
    Width=382
    Height=263
    Left=396
    Top=190
    URL='http://27.111.34.120/patch/notice.html'
    
    
    [button:Start]
    Default='images/start1.png'
    OnHover='images/start2.png'
    OnDown='images/start3.png'
    
    Left=5
    Top=9
    
    Hook='Start'
    
    [button:Exit]
    Default='images/Exit1.png'
    OnHover='images/Exit2.png'
    OnDown='images/Exit3.png'
    
    Left=139
    Top=60
    
    Hook='Exit'
    
    [button:Cancel]
    Default='images/Exit1.png'
    OnHover='images/Exit2.png'
    OnDown='images/Exit3.png'
    
    Left=139
    Top=60
    Hook='Cancel'
    
    

  10. You Paste the SQL Syntax into your SQL directory within a New Query and commit it to

    your directory to change tables to accommodate the SQL within the textual script provided.

    ill paste it in the SQL directory where tha Main.SQL is in??

    then ill make a new schema for the market bulletin.sql?

    then paste the market bulletin.txt in the NPC custom folder???

    correct me sir if i mistaken...

    open phpmyadmin

    open your ragnarok table

    import new sql ( market bulletin.sql )

    open your custom npc folder

    insert market bulletin npc there

  11. //===== rAthena Script =======================================
    //= Disguise Event
    //===== By: ==================================================
    //= GmOcean
    //===== Current Version: =====================================
    //= 5.1
    //===== Compatible With: =====================================
    //= rAthena SVN
    //===== Additional Comments: =================================  
    //= Note: This script requires PCRE to run properly.
    //= 5.0 Last update by GmOcean.
    //= 5.1 Cleaned and standardized, mostly. [Euphy]
    //============================================================
    
    prontera,160,155,4    script    Disguise Event    795,{
    
       // Currently set to run every two hours.
       // To change times, edit the OnClock labels below.
    
       set .@GMLevel,60;    // GM level required to access NPC.
       set .@n$,"[^0000FFDisguise NPC^000000]";
    
       if (getgmlevel()>=.@GMLevel) {
           mes .@n$;
           mes "Select an option.";
           next;
           switch(select("Turn ON/OFF Event:Event Settings")) {
           case 1:
               mes .@n$;
               if (.EventON) {
                   mes "The Event is currently: [^0000FFON^000000]";
                   mes "Would you like to turn it OFF?";
               } else {
                   mes "The Event is currently: [^FF0000OFF^000000]";
                   mes "Would you like to turn it ON?";
               }
               if(select("Yes:No")==2) close;
               if (.EventON) {
                   set .EventON,0; set .Timer,0;
                   setnpctimer 0; stopnpctimer;
                   announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
                   deletepset 1;
                   setnpcdisplay "Disguise Event",795;
                   close;
               }
               set .EventON,1; set .Timer,1; setnpctimer 0; initnpctimer;
               set .ResetCounter,.ResetCounter+1;
               announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
               announce "The Event is being held in Prontera.",bc_all | bc_blue;
               close;
           case 2:
               mes .@n$;
               mes "Pick a setting to modify.";
               next;
               switch(select("Monster Display:Number of Rounds:Prize Settings")) {
               case 1:
                   setarray .@r$[0],"Disguise as all monsters.","Disguise as MVPs only.";
                   mes .@n$;
                   mes "Choose a disguise rule.";
                   next;
                   set .Rule, select(implode(.@r$,":"));
                   mes .@n$;
                   mes "The Disguise Rule has been set:";
                   mes "  > ^0055FF"+.@r$[.Rule-1]+"^000000";
                   close;
               case 2:
                   mes .@n$;
                   mes "Input the number of rounds you want the event to last.";
                   mes "Current number: [^0000FF"+.Rounds+"^000000]";
                   next;
                   input .@Rounds;
                   set .Rounds,.@Rounds;
                   mes .@n$;
                   mes "The number of rounds has been changed to "+.Rounds+".";
                   close;
               case 3:
                   mes .@n$;
                   mes "Input the Item ID of the prize given each round.";
                   mes "Current item: [^0000FF"+getitemname(.Prize)+"^000000] (ID #"+.Prize+")";
                   next;
                   input .@Prize;
                   mes .@n$;
                   if (getitemname(.@Prize)=="" || getitemname(.@Prize)=="null") {
                       mes "That item does not exist. Please try again.";
                       close;
                   }
                   set .Prize,.@Prize;
                   mes "Input the amount to be given.";
                   next;
                   input .@amount;
                   mes .@n$;
                   if (.@amount<=0 || .@amount>=10000) {
                       mes "That amount is invalid. Using default ammount of 1.";
                       set .@amount,1;
                       next;
                       mes .@n$;
                   }
                   set .PrizeAmt,.@amount;
                   mes "The Prize has been changed successfully.";
                   mes "Prize: "+.PrizeAmt+"x [^0000FF"+getitemname(.Prize)+"^000000]";
                   close;
               }
           }
       }
       if (.EventON) end;
       mes .@n$;
       mes "Welcome.";
       mes "How may I be of assistance?";
       if(select("Information:Nothing, just passing through.")==2) close;
       next;
       mes .@n$;
       mes "This event is quite simple.";
       mes "At the start of the event, I will";
       mes "disguise myself as a random";
       mes "monster. You have to shout";
       mes "that monter's name out loud.";
       next;
       mes "If you are correct, you will receive";
       mes "a prize. If not, keep trying!";
       mes "That's all that there is to this event.";
       close;
    
    OnInit:
       set .EventON,0;
       set .Wait,0;
       set .Winner,0;
       set .ResetCounter,0;
       set .Rounds,10;
       set .Prize,512;
       set .PrizeAmt,1;
       set .Rule,1;
       setarray .MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
      				   1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
                      1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
                      2156,2165;
       set .BlackList$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," +
      	 "1171,1172,1173,1181,1187,1210,1217,1218,1222,1223,1224,1225,1226,1227,1228," +
      	 "1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,2002,2003,2004," +
      	 "2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035," +
      	 "2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049," +
      	 "2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063," +
      	 "2064,2065,2066,2067,2075,2076,2077,2078,2079,2080,2081,2083,2084,2085," +
      	 "2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099," +
      	 "2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113," +
      	 "2114,2115,2116,2117,2118,2119,2120,2121,2123,2124,2125,1496,";
       end;
    OnClock0000:
    OnClock0200:
    OnClock0400:
    OnClock0600:
    OnClock0800:
    OnClock1000:
    OnClock1200:
    OnClock1400:
    OnClock1600:
    OnClock1800:
    OnClock2000:
    OnClock2200:
       set .ResetCounter,.ResetCounter+1;
       set .EventON,1;
       set .Timer,1;
       set .Wait,1;
       announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
       announce "The Event is being held in Prontera.",bc_all | bc_blue;
       setnpctimer 0;
       initnpctimer;
       end;
    OnTimer10000:
       if (.Timer || .Change) end;
       set .Wait,0;
       goto iDisguise;
       end;
    OnTimer30000:
       if (.Timer) end;
       set .Change,0;
       setnpcdisplay "Disguise Event",795;
       npctalk "You took too long to guess what I was. Please wait 10 seconds while I disguise again.";
       specialeffect 725;
       set $MonsterName$,"";
       deletepset 1;
       stopnpctimer;
       setnpctimer 0;
       initnpctimer;
       end;
    OnTimer60000:
       if (.Timer!=1) end;
       announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue;
       announce "The Event is being held in Prontera.",bc_all | bc_blue;
       end;
    OnTimer120000:
       if (.Timer!=1) end;
       announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue;
       announce "The Event is being held in Prontera.",bc_all | bc_blue;
       end;
    OnTimer180000:
       if (.Timer!=1) end;
       announce "The Disguise Event has begun!",bc_all | bc_blue;
       announce "The Event is being held in Prontera.",bc_all | bc_blue;
       set .Timer,0; stopnpctimer;
       setnpctimer 0; initnpctimer;
    iDisguise:
       if (.Rule==1) {
           set .Winner,0;
           set .Monster,1000+rand(1,995);
           if (compare(","+.BlackList$+"," , ","+.Monster+",")) goto iDisguise;
           if (.Monster==.LastMonster) goto iDisguise;
           set .LastMonster,.Monster;
           set $MonsterName$,getmonsterinfo(.Monster,0);
       }
       if (.Rule==2) {
           set .Winner,0;
           set .Monster,rand(49);
           set $MonsterName$,getmonsterinfo(.MVP[.Monster],0);
       }
       deletepset 1;
       defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
       activatepset 1;
       if (.Rule==1) setnpcdisplay "Disguise Event",.Monster;
       if (.Rule==2) setnpcdisplay "Disguise Event",.MVP[.Monster];
       set .Change,1;
       setnpctimer 0;
       end;
    iCorrect:
       if (.Winner) {
           dispbottom "Someone has already won this round.";
           end;
       }
       set .Winner,1;
       set .RoundCount,.RoundCount+1;
       deletepset 1;
       activatepset 1;
       getitem .Prize,.PrizeAmt;
       announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
       if (.RoundCount>=.Rounds) {
           setnpcdisplay "Disguise Event",795;
           set .RoundCount,0; set .Change,0; set .EventON,0;
           setnpctimer 0; stopnpctimer;
           npctalk "Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
           end;
       }
       setnpcdisplay "Disguise Event",795;
       set .Change,0;
       setnpctimer 0;
       end;
    }
    
    

    why i got error at line 42?

×
×
  • Create New...