Mir 3 DarkSide
Likes Likes:  0
Page 1 of 2 12 LastLast
Results 1 to 15 of 17
  1. #1
    mapadale
    Guest mapadale's Avatar

    All in one thread for NPC scripts.

    Ok I've noticed that a lot of scripts are being repeatedly added or asked about, so with this one thread I've added all the common ones in and then some.

    Thanks goes to all those that have contributed to these scripts and have helped other users on understanding them better as well.

    Code:
    Fame 4 Level
     
    Add to 00default.txt
     
     
    [@_UpLevel]
    #IF
    CheckFame
    #ACT
    Mov D4 %P9
     
    #IF
    SMALL D4 1000
    #ACT
    INC D4 1
    SetFame %D4
    sysmsg "You have recieved 1 FamePoint on Level Up"
    break
    Just a small little script, to showcase, how you can simplify a repetitive menu down. What use to be a much larger code, is simplified down to about 100 lines of code, for easier editing and use. I've helped alot of people on msn, who don't seem to know this little trick and end up with huge repetitive scripts, that are tedious to edit.
    hope this helps you , let me know if you guys need any explanations, as im just showcasing the script, and assuming you no whats going on pay close attention to the variables used. those are the most critical parts.. to getting a script like this to work.
    Code:
    [@FameMenu]
    #IF
    CheckFame
    #ACT
    Mov D4 %P9  ; Amount of FP
    #SAY
    Welcome to the Famepoint rebirth system.\
    Currently we offer 8 rebirths to our members.\
    Attaining all of them is not an easy task.\
    Currently you have <$OUTPUT(D4)> FP's\
    <Rebirth/@rebirthmenu>\
     
    [@rebirthmenu]
    #SAY
    < Level 1 - 100 FP - Lvl100 - 60million gold/@rebirthauto(1,100,100,60000000)>\
    < Level 2 - 200 FP - Lvl200 - 80million gold/@rebirthauto(2,200,200,80000000)>\
    < Level 3 - 250 FP - Lvl300 - 100million gold/@rebirthauto(3,250,300,100000000)>\
    < Level 4 - 300 FP - Lvl400 - 120million gold/@rebirthauto(4,300,400,120000000)>\
    < Level 5 - 450 FP - Lvl500 - 150million gold/@rebirthauto(5,450,500,150000000)>\
    < Level 6 - 550 FP - Lvl850 - 200million gold/@rebirthauto(6,550,850,200000000)>\
    < Level 7 - 650 FP - Lvl1050 - 500million gold/@rebirthauto(7,650,1050,500000000)>\
    < Level 8 - 900 FP - Lvl1200 - 1Billion gold/@rebirthauto(8,900,1200,1000000000)>
     
    [@rebirthauto()]
    #ACT
    Mov D5 %ARG(1)
    Mov D6 %ARG(2)
    Mov D0 %ARG(3)
    Mov D8 %ARG(4)
     
    goto @dorebirth
     
    [@dorebirth]
    #IF
    ELARGE D4 %D6
    checkgold %D8
    checklevel %D0
    !HLSCRIPTCMD CHECKRELEVEL %D5
    #ACT
    DEC D4 %D6
    SetFame %D4
    take gold %D8
    HLSCRIPTCMD REINCARNATION
    HLSCRIPTCMD CLEAREXP
    #SAY
    You got <$HLREINCARNATION> rebirth now.\
    #ELSESAY
    You are short on something to gain this Rebirth.\
    <[ Exit ]/@exit>\\\
    Code:
    Top Script
     
    [@AllLevels]
    #SAY
    <$SERVERTOPALLLEVEL>\\
    <[ Exit ]/@exit>\\\
    [@TaoistLevels]
    #SAY
    <$SERVERTOPLEVEL2>\\
    <[ Exit ]/@exit>\\\
    [@WarriorLevels]
    #SAY
    <$SERVERTOPLEVEL0>\\
    <[ Exit ]/@exit>\\\
    [@WizardLevels]
    #SAY
    <$SERVERTOPLEVEL1>\\
    <[ Exit ]/@exit>\\\
    [@TopRich]
    #SAY
    <$SERVERTOPGOLD>\\
    <[ Exit ]/@exit>\\\
    Code:
    Rebirth Script
     
    [@rein]
    #IF
    HLSCRIPTCMD CHECKPOINT 500
    !HLSCRIPTCMD CHECKRELEVEL 1
    checklevel 60
    #ACT
    HLSCRIPTCMD REINCARNATION
    HLSCRIPTCMD CLEAREXP
    HLSCRIPTCMD SETPOINT - 500
     
    [@rein2]
    #IF
    HLSCRIPTCMD CHECKPOINT 500
    !HLSCRIPTCMD CHECKRELEVEL 2
    checklevel 120
    #ACT
    HLSCRIPTCMD REINCARNATION
    HLSCRIPTCMD CLEAREXP
    HLSCRIPTCMD SETPOINT - 500
     
    [@rein3]
    #IF
    HLSCRIPTCMD CHECKPOINT 500
    !HLSCRIPTCMD CHECKRELEVEL 3
    checklevel 210
    #ACT
    HLSCRIPTCMD REINCARNATION
    HLSCRIPTCMD CLEAREXP
    HLSCRIPTCMD SETPOINT - 500
    Code:
    Booty to Integral
     
    [@main]
    #SAY
    Hello i take Amulet's, bone's and goldore and\
    exchange them to integral S M and L.\ \
    
    <Use your service/@service>\
    
    [@service]
    #IF
    checkitem amulet 10
    #ACT
    take amulet 10
    give integral(s) 1
    #ELSEACT
    goto @noitem
    
    #IF
    checkitem bone 10
    #ACT
    take bone 10
    give integral(m) 1
    #ELSEACT
    goto @noitem
    
    #IF
    checkitem goldore 10
    #ACT
    take goldore 10
    give integral(l)
    #ELSEACT
    goto @noitem
    
    #SAY
    Thanks.
    
    [@noitem]
    #SAY
    you dont have bone's amulet's or gold ore.\ \
    <exit/@exit>\
    If there are any more scripts that people want or need, or have a script to add then let me know.

  2. Want your banner advert here? CLICK!
  3. #2
    LOMCN Developer Coly's Avatar
    Join Date
    Mar 2005
    Posts
    1,370

    Re: All in one thread for NPC scripts.

    If you use a Variable like D4 in one Function better use Px, P is for function Internal use and D for Digit..

    also made ...
    mov D4 %P9
    better...
    mov P1 %P9

    then you have it Pro like ;-)

    PS: If you use D for Gold, then it is a Bad idea, then better use Number = Nx... Like I say, D is Digit...

  4. #3
    LOMCN Senior Member Inflikted's Avatar
    Join Date
    Aug 2003
    Posts
    256

    Re: All in one thread for NPC scripts.

    here are a few other of my scripts i made from the past i got no use for them anymore so have fun

    Code:
    #SAY
    So you want to no what monsters are alive, I can help you, but it costs 50k to check.\
    <Ok/@monstercheckbuy>\
    <No thanks/@Exit>\
    [@monstercheckbuy]
    #ACT
    take gold 50000
    goto @monsterchecker
    [@monsterchecker]
    #IF
    checkmonmap D2402 1 TadangaOK
    #SAY
    TadangaOK is {FCOLOR/10}ALIVE{FCOLOR/12} in COK F2\
    #ELSESAY
    TadangaOK is {FCOLOR/6}DEAD{FCOLOR/12} in COK F2\
    
    #IF
    checkmonmap 10 1 Satan
    #SAY
    Satan is {FCOLOR/10}ALIVE{FCOLOR/12} in HoE\
    #ELSESAY
    Satan is {FCOLOR/6}DEAD{FCOLOR/12} in HoE\
    
    #IF
    checkmonmap D2301 1 Satan
    #SAY
    Satan is {FCOLOR/10}ALIVE{FCOLOR/12} in CTH\
    #ELSESAY
    Satan is {FCOLOR/6}DEAD{FCOLOR/12} in CTH\
    
    #IF
    checkmonmap D1106 1 ZumaTaurus
    #SAY
    ZumaTaurus is {FCOLOR/10}ALIVE{FCOLOR/12} in ZumaTemple\
    #ELSESAY
    ZumaTaurus is {FCOLOR/6}DEAD{FCOLOR/12} in ZumaTemple\
    
    #IF
    checkmonmap D1206 1 JinchonCaptain
    #SAY
    JinchonCaptain is {FCOLOR/10}ALIVE{FCOLOR/12} in JinchonPalace\
    #ELSESAY
    JinchonCaptain is {FCOLOR/6}DEAD{FCOLOR/12} in JinchonPalace\
    
    #IF
    checkmonmap D2107 1 BrightBloodLord
    #SAY
    BrightBloodLord is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowPalace\
    #ELSESAY
    BrightBloodLord is {FCOLOR/6}DEAD{FCOLOR/12} in SnowPalace\
    
    #IF
    checkmonmap D2205 1 EvilEmperor
    #SAY
    EvilEmperor is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowTower\
    #ELSESAY
    EvilEmperor is {FCOLOR/6}DEAD{FCOLOR/12} in SnowTower\
    
    #IF
    checkmonmap D2205 1 Tadanga
    #SAY
    Tadanga is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowTower\
    #ELSESAY
    Tadanga is {FCOLOR/6}DEAD{FCOLOR/12} in SnowTower\
    
    #IF
    checkmonmap D2204 1 ZumaTaurus
    #SAY
    ZumaTaurus is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowTower 4th\
    #ELSESAY
    ZumaTaurus is {FCOLOR/6}DEAD{FCOLOR/12} in SnowTower 4th\
    
    #IF
    checkmonmap 11 1 ZumaTaurusOK
    #SAY
    ZumaTaurusOK is {FCOLOR/10}ALIVE{FCOLOR/12} in ToK\
    #ELSESAY
    ZumaTaurusOK is {FCOLOR/6}DEAD{FCOLOR/12} in ToK\
    
    #IF
    checkmonmap 11 1 Tadanga
    #SAY
    Tadanga is {FCOLOR/10}ALIVE{FCOLOR/12} in ToK\
    #ELSESAY
    Tadanga is {FCOLOR/6}DEAD{FCOLOR/12} in ToK\
    
    #IF
    checkmonmap D2204 1 MinotaurKing
    #SAY
    MinotaurKing is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowTower 4th\
    #ELSESAY
    MinotaurKing is {FCOLOR/6}DEAD{FCOLOR/12} in SnowTower 4th\
    
    #IF
    checkmonmap D2203 1 BoneLord
    #SAY
    BoneLord is {FCOLOR/10}ALIVE{FCOLOR/12} in SnowTower 3rd\
    #ELSESAY
    BoneLord is {FCOLOR/6}DEAD{FCOLOR/12} in SnowTower 3rd\
    
    #IF
    checkmonmap D905 1 RedMoonEvil
    #SAY
    RedMoonEvil is {FCOLOR/10}ALIVE{FCOLOR/12} in RedMoonValley\
    #ELSESAY
    RedMoonEvil is {FCOLOR/6}DEAD{FCOLOR/12} in RedMoonValley\
    
    #IF
    checkmonmap D805 1 EvilCentipede
    #SAY
    EvilCentipede is {FCOLOR/10}ALIVE{FCOLOR/12} in DeathValley\
    #ELSESAY
    EvilCentipede is {FCOLOR/6}DEAD{FCOLOR/12} in DeathValley\
    
    #IF
    checkmonmap D705 1 BoarKing
    #SAY
    BoarKing is {FCOLOR/10}ALIVE{FCOLOR/12} in StoneTomb\
    #ELSESAY
    BoarKing is {FCOLOR/6}DEAD{FCOLOR/12} in StoneTomb\
    
    #IF
    checkmonmap D504 1 WoomaTaurus
    #SAY
    WoomaTaurus is {FCOLOR/10}ALIVE{FCOLOR/12} in WoomaTemple\\\
    #ELSESAY
    WoomaTaurus is {FCOLOR/6}DEAD{FCOLOR/12} in WoomaTemple\
    Code:
    [@repairmystuff]
    {FCOLOR/4}---------------------------------{FCOLOR/12}\
    Welcome to {FCOLOR/1}RNDPro{FCOLOR/12}\ Repair System
    {FCOLOR/4}---------------------------------{FCOLOR/12}\
    Would you like to repair all your weapons at once?\
    \
    < Yes /@yesrep>\
    < No Bye/@Exit>\
    [@yesrep]
    #IF
    #ACT
    GetRepairCost 0
    Mov P1  %P9     
    GetRepairCost 1
    Inc  P1  %P9     
    GetRepairCost 3
    Inc  P1  %P9
    GetRepairCost 8
    Inc  P1  %P9
    GetRepairCost 4
    Inc  P1  %P9
    GetRepairCost 5
    Inc  P1  %P9
    GetRepairCost 6
    Inc  P1  %P9
    GetRepairCost 7
    Inc  P1  %P9
    GetRepairCost 10
    Inc  P1  %P9
    
    #SAY
    This will cost you <$OUTPUT(P1)>\  
    Do you want to repair?\
    < Yes /@Blah>\\\
    < No /@Exit>\
    [@Blah]
    #IF
    CheckGold %P1
    #ACT
    GetRepairCost 0
    Mov P1  %P9     
    GetRepairCost 1
    Inc  P1  %P9     
    GetRepairCost 3
    Inc  P1  %P9
    GetRepairCost 8
    Inc  P1  %P9
    GetRepairCost 4
    Inc  P1  %P9
    GetRepairCost 5
    Inc  P1  %P9
    GetRepairCost 6
    Inc  P1  %P9
    GetRepairCost 7
    Inc  P1  %P9
    GetRepairCost 10
    Inc  P1  %P9
    Take Gold %P1
    RepairItem 0       
    RepairItem 1       
    RepairItem 3       
    RepairItem 8
    RepairItem 4
    RepairItem 5
    RepairItem 6
    RepairItem 7
    RepairItem 10
    goto @done
    #ELSEACT
    break
    #ELSESAY
    Not enough gold\
    < Bye/@Exit>\
    
    [@done]
    All done, thanks!\
    < Bye/@Exit>\

  5. #4
    LOMCN Senior Member Inflikted's Avatar
    Join Date
    Aug 2003
    Posts
    256

    Re: All in one thread for NPC scripts.

    PART 1 of GUILD SYSTEM MOD, i left it incomplete on purpose so for those who really know their stuff.. can finish it off, and have something very unique on their server instead of 90% of the people here.. who just copy/paste stuff. get part 2 in the next post.

    Code:
    begin
    [@main]
    #IF
        HasGuild
    #ACT
        FormatStr "FLD_GUILD='%s'" %GUILDNAME
        ReadValueSql  "TBL_GUILDBANK"  %A9  "FLD_GUILD,FLD_GOLD" [@Forward]
    #ELSESAY
    You are not in a guild go away.\
    
    [@Forward()]
    #IF
    #ACT
        Mov      D1      %ARG(2)
        Mov      A3      %ARG(1)
        FormatStr "FLD_GUILD='%s'" %GUILDNAME
        ReadValueSql  "TBL_GUILDPOINTS"  %A9  "FLD_GUILD,FLD_GPOINTS" [@Start]
    #ELSESAY
    You are not in a guild go away\ \
    < Close/@exit>\\\
    #IF
       Equal  A3   ""
    #ACT
        FormatStr "'%s',%s" %GUILDNAME 0
        Mov A6 %A9
        FormatStr "FLD_GUILD='%s'" %GUILDNAME
        Mov A5 %A9
        WriteValueSql "TBL_GUILDBANK" %A5 "FLD_GUILD,FLD_GOLD" %A6
    
    goto @start
    
    [@Start()]
    #ACT
        Mov      D3       %ARG(2) 
    #SAY
    Welcome to the {FCOLOR/10}Mythical{FCOLOR/12}\
    {FCOLOR/11}<$OUTPUT(A3)>{FCOLOR/12} Currently has {FCOLOR/1}<$OUTPUT(D3)>{FCOLOR/12} Mythical 
    
    Points.\
    {FCOLOR/11}<$OUTPUT(A3)>{FCOLOR/12} Currently has {FCOLOR/1}<$OUTPUT(D1)>{FCOLOR/12} Guild-
    
    Gold.\
    What would you like to do today?\ \
    < Guild Shop/@Shop>\
    < Guild Unlocks/@Unlocks>\
    < Donate/@yesdonate>\
    < GuildArea/@GuildArea>\
    
    [@GuildArea]
    #SAY
    Welcome to the Guild Area NPC currently\
    we have 15 areas up for grabs\\
    <Purchase Guild Area/@Guildpurchase>\
    <Change Guild Area password/@GuildPassword>\
    <Delete Guild Area/@Guilddelete>\
    <Access Rights/@Guildaccess>\\
    
    [@Guildpurchase]
    #SAY
    Currently Under Construction\\
    < Exit/@GuildArea>\
    
    [@GuildPassword]
    #SAY
    Currently Under Construction\\
    < Exit/@GuildArea>\
    
    [@Guilddelete]
    #SAY
    Currently Under Construction\\
    < Exit/@GuildArea>\
    
    [@Guildaccess]
    #SAY
    Currently Under Construction\\
    < Exit/@GuildArea>\
    
    [@Shop]
    #SAY
    Please keep in mind that for items that require\
    {FCOLOR/10}MythicalPoints{FCOLOR/12} to Purchase you Must be a {FCOLOR/1}
    
    Guildmaster\\{FCOLOR/12}
    < Buy with GuildGold/@Shopgold>\
    < Buy with GuildPoints/@Shoppoints>\
    < Dont want to buy anything/@Main>\
    
    [@Shopgold]
    #SAY
    <$OUTPUT(A3)> Guild currently has <$OUTPUT(D1)> Gold.\ \
    What would you like to buy today?\ \
    < Ginsengs/@ShopGins> - < Liqours/@ShopLiq>\
    < Talismans/@ShopTali> - < Pots/@ShopPots>\
    
    [@ShopGins]
    #SAY
    If you like you can purchase 200 Ginsengs for 200,000 Gold.\ \
    < Convert/@GinsConvert>\
    < Back/@Shop>\
    
    [@GinsConvert]
    #IF
    ELARGE D1 200000
    #ACT
    Dec D1 200000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give Ginseng 200
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@ShopLiq]
    #SAY
    Please select what type of Liquor u wanna buy\\
    < Storm/@Storm> - < Health/@Health> - <Magic/@Magic>\
    < Nature/@Nature> - < Impact/@impact> - < Spirit/@spirit>\
    < Neither/@shopGold>\
    
    [@Storm]
    #SAY
    If you like you can purchase 5 Storm(L) for 100,000 gold.\ \
    < Convert/@StormConvert>\
    < Back/@shop>\
    
    [@StormConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give StormLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Health]
    #SAY
    If you like you can purchase 5 Health(L) for 100,000 gold.\ \
    < Convert/@HealthConvert>\
    < Back/@shop>\
    
    [@HealthConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give HealthLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Magic]
    #SAY
    If you like you can purchase 5 Magic(L) for 100,000 gold.\ \
    < Convert/@MagicConvert>\
    < Back/@shop>\
    
    [@MagicConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give MagicLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Nature]
    #SAY
    If you like you can purchase 5 Nature(L) for 100,000 gold.\ \
    < Convert/@NatureConvert>\
    < Back/@shop>\
    
    [@NatureConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give NatureLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Impact]
    #SAY
    If you like you can purchase 5 Impact(L) for 100,000 gold.\ \
    < Convert/@ImpactConvert>\
    < Back/@shop>\
    
    [@ImpactConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give ImpactLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Spirit]
    #SAY
    If you like you can purchase 5 Spirit(L) for 100,000 gold.\ \
    < Convert/@SpiritConvert>\
    < Back/@shop>\
    
    [@SpiritConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give SpiritLiquor(l) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@ShopTali]
    #SAY
    Please Select what type of Talisman you want to buy.\ \
    < HolyTalisman(l)/@Holy> - < SoulTalisman/@Soul>\
    
    [@Holy]
    #SAY
    If you like you can purchase 5 Holy(L) for 100,000 gold.\ \
    < Convert/@HolyConvert>\
    < Back/@shop>\
    
    [@HolyConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give HolyTalisman(L) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Soul]
    #SAY
    If you like you can purchase 5 Soul(L) for 100,000 gold.\ \
    < Convert/@SoulConvert>\
    < Back/@shop>\
    
    [@SoulConvert]
    #IF
    ELARGE D1 100000
    #ACT
    Dec D1 100000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give SoulTalisman(L) 5
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@ShopPots]
    #SAY
    Please Select what type of pots you want to buy.\ \
    < Blue ones/@Blue> or < Red ones/@red>\

  6. #5
    LOMCN Senior Member Inflikted's Avatar
    Join Date
    Aug 2003
    Posts
    256

    Re: All in one thread for NPC scripts.

    PART 2 OF GUILD SYSTEM MOD

    Code:
    [@Blue]
    #SAY
    If you like you can purchase 200 Mana(xL) for 150k.\ \
    < Convert/@BlueConvert>\
    < Back/@shop>\
    
    [@BlueConvert]
    #IF
    ELARGE D1 150000
    #ACT
    Dec D1 150000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give MPPotion(XL) 200
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Red]
    #SAY
    If you like you can purchase 200 Health(xL) for 150k.\ \
    < Convert/@RedConvert>\
    < Back/@shop>\
    
    [@RedConvert]
    #IF
    ELARGE D1 150000
    #ACT
    Dec D1 150000
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    give HPPotion(XL) 200
    #SAY
    You now Have <$OUTPUT(D1)> Gold
    <Exit/@Exit>\
    
    [@Shoppoints]
    #SAY
    <$OUTPUT(A3)> Guild currently has <$OUTPUT(D3)> Points.\ \
    Keeping in mind Only GuildMasters can make a transaction\ 
    with Mythicalpoints, What would you like to buy today?\ \
    < Armours/@Armours> - < Weapons/@Weapons> - < Jewellary/@jewl>\
    
    [@Armours]
    #SAY
    There is a selection of armours you can chose from.\
    They are listed below for you. Each of these items will\
    cost your guild 20 Guild Points.\ \
    < DemonArmour(m)/@Demonm> - <DemonArmour(f)/@DemonF>\
    < DevineArmour(m)/@Devinem> - <DevineArmour(f)/@Devinef>\
    < Back/@shoppoints>\
    
    [@Weapons]
    #SAY
    There is a Selection of Weapons you can chose from.\
    They are listed Below for you. Each of rank2 items will\
    cost your guild 500 Guild Points. Rank3 items will\
    cost you guild 1250 Guild Points
    < ChaoticHeavenBlade(II)/@chb2> - < ChaoticHeavenBlade(III)/@chb3>\
    < DragonTreasure(II)/@dt2> - < Dragontreasure(III)/@dt3>\
    < Back/@shoppoints>\
    
    [@jewl]
    #SAY
    There is a selection of items you can chose from.\
    They are listed below for you. Each of these sets will\
    cost you guild 60 Guild Points.\ \
    < Savant Set/@Savant> - < Buddha Set/@Buddha> - < CrazyWar Set/@crazy>\
    < Back/@shoppoints>\
    
    [@Demonm]
    #IF
    IsGuildMaster
    ELARGE D3 20
    #ACT
       Dec D3 20
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DemonArmor(M) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Demonf]
    #IF
    IsGuildMaster
    ELARGE D3 20
    #ACT
       Dec D3 20
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DemonArmor(f) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Devinem]
    #IF
    IsGuildMaster
    ELARGE D3 20
    #ACT
       Dec D3 20
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DevineArmor(m) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Devinef]
    #IF
    IsGuildMaster
    ELARGE D3 20
    #ACT
       Dec D3 20
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DevineArmor(f) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@chb2]
    #IF
    IsGuildMaster
    ELARGE D3 500
    #ACT
       Dec D3 500
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give ChaoticHeavenblade(II) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@chb3]
    #IF
    IsGuildMaster
    ELARGE D3 1250
    #ACT
       Dec D3 1250
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give ChaoticHeavenblade(III) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@dt2]
    #IF
    IsGuildMaster
    ELARGE D3 500
    #ACT
       Dec D3 500
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DragonTreasure(II) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@dt3]
    #IF
    IsGuildMaster
    ELARGE D3 1250
    #ACT
       Dec D3 1250
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give DragonTreasure(III) 1
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Savant]
    #IF
    IsGuildMaster
    ELARGE D3 60
    #ACT
       Dec D3 60
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give SavantNecklace 1
       give SavantBracelet 2
       give SavantRing 2
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Buddha]
    #IF
    IsGuildMaster
    ELARGE D3 60
    #ACT
       Dec D3 60
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give BuddhaNecklace 1
       give BuddhaBracelet 2
       give BuddhaRing 2
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@Crazy]
    #IF
    IsGuildMaster
    ELARGE D3 60
    #ACT
       Dec D3 60
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GPOINTS='%s'" %D3
       UPDATEVALUESQL "TBL_GUILDPOINTS" %A8 %A9
       give CrazyWarNecklace 1
       give CrazyWarBracelet 2
       give CrazyWarRing 2
    #SAY
    You now have <$OUTPUT(D3)> mythical points\
    < Exit/@exit>
    
    [@YesDonate]
    #SAY
    So you would like to Donate?\ \
    < Donate to Guild/@Donate>\
    
    [@Donate]
    
    #SAY
    {FCOLOR/11}<$OUTPUT(A3)>{FCOLOR/12} guild has {FCOLOR/1}<$OUTPUT(D1)>{FCOLOR/12} Guild Gold.
    How Much gold would you like to donate to your guild bank?\
    <Amount of Gold/@@goldamount>
    [@@goldamount]
    #ACT
    Mov D6 %INPUTSTR
    goto @checkgold
    
    [@checkgold]
    #IF
    checkgold %D6
    #ACT
    Inc D1 %D6
       FormatStr "FLD_GUILD='%s'" %GUILDNAME
       Mov   A8     %A9
       FormatStr "FLD_GOLD='%s'" %D1
       UPDATEVALUESQL "TBL_GUILDBANK" %A8 %A9
    take gold %D6
    #SAY
    {FCOLOR/10}<$OUTPUT(A3)>{FCOLOR/10} now has {FCOLOR/11}<$OUTPUT(D1)>{FCOLOR/10} gold in the bank.\
    <[ Exit  ]/@exit>\\\
    
    [@Unlocks]
    #SAY
    Still being scripted bare with us.\ \
    <Exit/@main>\

  7. #6
    Mir3 Guru - Sting3G idaBigA's Avatar
    Join Date
    Oct 2003
    Location
    Stoke, UK
    Posts
    1,830

    Re: All in one thread for NPC scripts.

    Basic Death Script

    Code:
    #IF
    HLSCRIPTCMD CHECKUNDEADINHOME
    HLSCRIPTCMD CHECKUNDEAD
    #SAY
    {FCOLOR/1}Resurrection System.{FCOLOR/12}\ \
    You have been killed, Do you wish to be\
    placed back in town alive?\
    Revive in town is free\ \
    
    <Yes Please/@next1>\\
    #elseact
    close
    
    [@next1]
    #if
    HLSCRIPTCMD CHECKUNDEADINHOME
    #ACT
    HLSCRIPTCMD UNDEADINHOME
    close
    #elseact
    close
    Last edited by Geordiehc; 19-01-2012 at 09:09 PM. Reason: Blank Space, used to add a new script
    www.sting3g.com - PhoenixRising Server & Sting3G Server

  8. #7
    LOMCN Senior Member Inflikted's Avatar
    Join Date
    Aug 2003
    Posts
    256

    Re: All in one thread for NPC scripts.

    this is a borrowed concept from idabiga. i used it a long time ago, so i thought i would share some ideas for new coming server owners.

    this deals with 2 things.. clickitemevents and heal/damagezone's

    clickitemevents allow you to make your own custom clickable items in bag.. anything from customized healing pots, to talisman bundles like in mir2

    makehealzone/damagezone says what it is, it allows you to make a area to temporarily heal yourself or a group of players. you can control the time, the heal strength, and the radius.

    we start off by going into the 00default.txt

    in the first
    #ACT
    put in..

    goto @HealZone_ItemClick

    then create a link in the default00.txt

    [@HealZone_ItemClick]
    #CALL [System\ItemScripts\HealZone.txt] @EventItem_HealZone

    now make a healzone.txt in your QuestDiary\System\ItemScripts (make the itemscripts folder too for better organization)

    in the healzone.txt

    lets create..

    something like this

    Code:
    [@EventItem_HealZone]
    {
    #ACT
    SetItemEvent 61 4 @HealZone_Main  ;(61 is the stdmode, 4 being the shape, you need to make this item in your itemdb so mir3 knows what to look for. you can change those to fit what you what)
    
    
    [@HealZone_Main]
    #ACT
    Mov A0 %USERMAP
    Mov A1 %USERX
    Mov A2 %USERY
    FormatStr "%s,%s,%s,20" %A0 %A1 %A2   ;(20 is the radius around)
    MakeHealZone %A9 10 50 [GROUP]    ;(10 seconds is the time it lasts and 50 is the HP it heals per second)
    Take HealingGuildScroll 1
    Break
    }
    the healzone concept can be taken further.. and applied to safezone's.. so afk pets don't kill people, or in pvp safe area's to quickly regen your HP to get back into the fight faster.

    and damagezone does work pretty much the sameway.. but instead of using that its better to maybe use a mapspell.. because that show's up graphically on the game, while damagezone does not.

    something like this

    Code:
    [@EventItem_DamageZone]
    {
    #ACT
    SetItemEvent 61 6 @DamageZone_Main
    
    
    [@DamageZone_Main]
    #ACT
    Mov A0 %USERMAP
    Mov A1 %USERX
    Mov A2 %USERY
    FormatStr "%s,%s,%s,20" %A0 %A1 %A2
    Mov A4 %A9
    MapSpell [firewall] "%A4,%A1,386, +d600, +t10, +       ;(d600 being the dmg of 600, and t10 being 10 seconds) it can be replaced with [icewall] aswell. 
    Take DamageGuildScroll 1
    Break
    }
    my original purpose was to make the damagescroll sort of a suicide thing in a sabukwar battle. letting the clan leader only use it, killing himself and everyone around him instantly (usually a tactic to clean the stairs up of campers ;)). it proved to be pretty effective and make the game interesting assuming you limit the amount of damagescrolls available.


    a more advanced thing you can do.. you can take this concept further to create a unique boss room.. that creates randomized coordinates in the bossroom and deals deadly firewall's or icewalls by using a mapspell on a timerscript.

    thats all

  9. #8
    Loyal Member Josiko's Avatar
    Join Date
    Apr 2010
    Location
    Spain
    Posts
    408

    Re: All in one thread for NPC scripts.

    I proved the script of the fire but of another post and it was working but I was killing myself ami .. * _ * and only towards 1 piece of fire..

    The heal have I supposed it to myself if I put guild envez of group, can be alone?
    or in group with someone of clan?

    Greetings!
    ---------------------
    yo probe el script del fuego pero de otro post y funcionaba pero me mataba ami.. *_* y solo hacia 1 trozo de fuego..

    El heal me lo he supuesto si pongo guild envez de group , puedo estar solo?
    o en grupo con alguien de clan?

    Saludos!

  10. #9
    Loyal Member Josiko's Avatar
    Join Date
    Apr 2010
    Location
    Spain
    Posts
    408

    Re: All in one thread for NPC scripts.

    I need damage zone! xd

  11. #10
    Loyal Member dagras's Avatar
    Join Date
    Feb 2011
    Posts
    279

    Re: All in one thread for NPC scripts.

    anyone help me with a script for D menu, that allows a guild to teleport to a room and only allow members of said guild in by way of password?
    all my previouse attempts have failed.
    i can not put a copy of script i had up at moment as im not home

    thanks in advance

  12. #11
    Title Here... TheDayIDie's Avatar
    Join Date
    Jul 2011
    Location
    UK
    Posts
    3,652

    Re: All in one thread for NPC scripts.

    So you want a script that lets you teleport into a GuildPalace ?

    Do you have to purchase palace first etc? need more details. Not sure for 3.55 if i can make a script but ill take a look
    Last edited by TheDayIDie; 13-08-2012 at 06:06 PM.
    Inspired by Tai

  13. #12
    Loyal Member dagras's Avatar
    Join Date
    Feb 2011
    Posts
    279

    Re: All in one thread for NPC scripts.

    i would want script just to be able to ask for a password that i can put on dmenu. and only people who know password can move to guild only areas.
    if you can help would be appreciated.

  14. #13
    Title Here... TheDayIDie's Avatar
    Join Date
    Jul 2011
    Location
    UK
    Posts
    3,652

    Re: All in one thread for NPC scripts.

    Ok i have a script for this.
    Let me just script it ... brb 5-10mins

    ---------- Post Merged at 07:53 PM ---------- Previous Post was at 07:20 PM ----------
    This works for me on my kings server, should work for you but if not may need tweaking to fit the 3.55 requirments

    Code:
    [@PWChoose]
    #IF
    #ACT
    mov A1 ""
    goto @typepw
    
    [@typepw]
    #SAY
    <Enter Password/@@TypePw>\
    You wish to confirm the password as:{FCOLOR/10}<$OUTPUT(A1)>{FCOLOR/12}?\\
    
    <Continue/@continuetitle>\
    <Reset/@pwchoose>\
    
    [@@TypePw]
    #ACT
    mov A1 %Inputstr
    goto @typepw
    
    [@continuetitle]
    #IF
    EQUAL A1 "PASSWORDHERE"
    #ACT
    SYSMSG "You have gained access"
    MAPMOVE Blalalala
    #ELSEACT
    SYSMSG "You do not have the correct password"
    Last edited by TheDayIDie; 14-08-2012 at 01:53 AM.
    Inspired by Tai

  15. #14
    Loyal Member dagras's Avatar
    Join Date
    Feb 2011
    Posts
    279

    Re: All in one thread for NPC scripts.

    awesome job m8 thanks very much. just what i was looking for +REP

  16. #15
    Title Here... TheDayIDie's Avatar
    Join Date
    Jul 2011
    Location
    UK
    Posts
    3,652

    Re: All in one thread for NPC scripts.

    No problem, enjoy
    Inspired by Tai

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •