Novice Land re-visited

Moderator: Moderators

Message
Author
XSDenied
Noob
Noob
Posts: 18
Joined: 06 Jul 2009, 10:38
Noob?: Yes

Novice Land re-visited

#1 Post by XSDenied »

trying to get it to work again... having a bit of difficulty after the training grounds quests actually start.

The bot seems to have difficulty changing to the training map 2-3 and 3-3 and it's not quite working out... i dunno if it's the quest chat or not... will keep working on it though.

Code: Select all

#
# Macro Novice Ground - Made by a LOT of People.
# Version: 1.4 r110805
#
# Complete Field Training,
# And goes to class chosen by the User.
#
# Remember: Use the plugin xConf, available at:
# http://brocenter.com/forum/viewtopic.php?f=74&t=359
#
# Save as MACROS.TXT in UTF-8
#
# Pre-Requirements: Character Created, lvl 1/1, in training camp.
#
# Start

automacro DefaultSettings {
   class Novice
   base == 1
   job == 1
   location new_1-1 53 111, new_2-1 53 111, new_3-1 53 111, new_4-1 53 111, new_5-1 53 111
   eval ($::config{QuestPart} ne "NoviceZone0") and ($::config{QuestPart} ne "NoviceZone1") and ($::config{QuestPart} ne "NoviceZone2")
   run-once 1
   call DefaultSettingsM
}

macro DefaultSettingsM {
[
   log = Clear definitions of the fields
   do conf lockMap none
   do conf route_randomWalk 0
   pause 1

   log = Save Character Name
   do conf charname @eval($::char->{name})
   pause 1
   
   # setting up the control files(CONTROL)
   # items_control

   #pickupitems
   do pconf all 1
   pause @rand(5,9)

   #mon_control
   do mconf all 2 0 0
   pause @rand(5,9)

   #Setting the General Setting parameters
   log = Parameters
   do conf autoMoveOnDeath 0
   do conf autoMoveOnDeath_x none
   do conf autoMoveOnDeath_y none
   do conf autoMoveOnDeath_map none
   do conf saveMap none
   do conf saveMap_warpToBuyOrSell 0
   do conf sellAuto 0
   do conf sellAuto_npc none
   do conf sellAuto_standpoint none
   do conf sellAuto_distance 5
   do conf storageAuto 0
   do conf storageAuto_npc none
   do conf autoTalkCont 0
   do conf autoSwitch_default_rightHand Novice Cutter [3]
   do conf autoSwitch_default_leftHand none
   do conf autoSwitch_default_arrow none
   do conf sitAuto_hp_lower 20
   do conf sitAuto_hp_upper 90
   do conf sitAuto_idle 0
   do conf sitAuto_look 4
   do conf sitAuto_look_from_wall 1
   do conf itemsTakeAuto 1
   do conf itemsGatherAuto 2
   do conf useHP.block Novice Potion
   do conf useHP.hp < 60%
   do conf useHP.disabled 0
   do conf sellAuto 1


   #Parameters are empty, so that the kore can then configure the class
   do conf statsAddAuto 0
   do conf statsAddAuto_list none
   do conf skillsAddAuto 0
   do conf skillsAddAuto_list none

   #If the config has been made for an archer
   #do conf runFromTarget 0
   #do conf runFromTarget_dist 6

   log ===========================
   log = General configuration 
   log =   Complete ...
   log = Initiating class configuration
   log ===========================
]

   pause @rand(3,4)
   do conf QuestPart NoviceZone0
}


automacro SettingsClass {
   class Novice
   base == 1
   job == 1
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1
   eval $::config{QuestPart} eq "NoviceZone0"
   run-once 1
   call SettingsClassM
}
macro SettingsClassM {

   log ==================================================================
   log ==  You have not set the class in the config  ======================
   log ==  To resolve in the console type a path from below  =======
   log ==  and press Enter:  ==========================================
   log ==  macro Swordsman-Crus  - for Templar =====================
   log ==  macro Swordsman-Knight  - for Lord Knight  ===================
   log ==  macro Acolite-Priest  - for High Priest  =======================
   log ==  macro Acolite-Monk  - for Champion  ==============================
   log ==  macro Thief-Assasin  - for Assassin Cross  =====================
   log ==  macro Thief-Rogue  - for Rogue  =======================
   log ==  macro Archer  - for Bard/Sniper  ========================
   log ==  macro Mage  - for Warlock/Sage  ==============================
   log ==  macro Merchant  - for Ferreito/Alquimista  =================
   log ==  macro Taekwon  - for Taekwon  ===============================
   log ==  macro Ninja  - for Ninja  ===================================
   log ==  macro Gunslinger  - for Justiceiro ==========================
   log ==> IF RSPs ERROR FOLLOW THE INSTRUCTIONS ABOVE  <======================
   log ==================================================================


   $conf = @eval($::config{class})
   if ($conf == E1) call Swordsman-Crus
   if ($conf == E2) call Swordsman-Knight
   if ($conf == N1) call Acolite-Priest
   if ($conf == N2) call Acolite-Monk
   if ($conf == G1) call Thief-Assasin
   if ($conf == G2) call Thief-Rogue 
   if ($conf == MG) call Mage
   if ($conf == AR) call Archer
   if ($conf == ME) call Merchant
   if ($conf == TK) call Taekwon
   if ($conf == NJ) call Ninja
   if ($conf == JU) call Gunslinger
   
   
}

macro Swordsman-Crus {
[
   do conf Job 1
   do conf statsAddAuto 1
   do conf statsAddAuto_list 15 str, 15 dex, 15 agi, 25 dex, 15 vit, 30 str, 30 agi, 20 vit, 50 str, 40 agi, 35 dex, 72 str, 60 agi, 40 vit, 47 dex, 75 vit, 68 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Bash 10, Provoke 5, Endure 2

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Swordsman-Knight {
[
   do conf Job 1
   do conf statsAddAuto 1
   do conf statsAddAuto_list 15 str, 15 dex, 25 str, 25 dex, 15 vit, 30 dex, 40 str, 20 vit, 50 str, 30 agi, 40 dex, 60 str, 60 agi, 20 int, 49 dex, 75 str, 80 agi, 92 str
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Bash 10, Provoke 5, Endure 2

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Acolite-Priest {
[
   do conf Job 2
   do conf statsAddAuto 1
   do conf statsAddAuto_list 15 dex, 15 int, 20 dex, 40 int, 30 dex, 50 int, 20 vit, 60 int, 40 dex, 70 int, 30 vit, 80 int, 60 dex, 60 vit
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Acolite-Monk {
[
   do conf Job 2
   do conf statsAddAuto 1
   do conf statsAddAuto_list 15 str, 15 dex, 25 str, 25 dex, 15 vit, 30 dex, 40 str, 14 vit, 50 str, 30 agi, 40 dex, 60 str, 60 agi, 20 int, 54 dex, 75 str, 38 int, 73 agi, 48 int, 82 str
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Heal 3, Divine Protection 5, Blessing 1

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}


macro Mage {
[
   do conf Job 3
   do conf statsAddAuto 1
   do conf statsAddAuto_list 90 int, 90 dex, 40 vit
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Archer {
[
   do conf Job 4
   do conf statsAddAuto 1
   do conf statsAddAuto_list 50 dex, 30 agi, 70 dex, 40 agi, 80 dex, 60 agi, 90 dex, 70 agi, 99 dex, 99 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Owl's Eye 3, Vulture's Eye 10
   
   lock NoviceGroundPart1
   pause @rand(2,3)
   
   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Thief-Rogue {
[
   do conf Job 5
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 str, 10 agi, 20 dex, 20 str, 50 agi, 30 dex, 30 str, 70 agi, 80 agi, 50 dex, 86 str, 95 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Improve Dodge 10, Double Attack 10

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Thief-Assasin {
[
   do conf Job 5
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 str, 10 agi, 20 dex, 20 str, 50 agi, 12 int, 30 dex, 30 str, 70 agi, 42 dex, 60 str, 80 agi, 14 vit, 94 str
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Improve Dodge 10, Double Attack 10

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}


macro Merchant {
[
   do conf Job 6
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 dex, 10 str, 20 agi, 20 str, 15 dex, 30 vit, 20 dex, 40 vit, 30 str, 30 dex, 22 agi, 40 str, 40 agi, 40 dex, 50 str, 12 int, 67 agi, 50 dex, 70 str, 60 vit, 24 int, 80 agi, 70 dex, 90 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Item Appraisal 1, Enlarge Weight Limit 3, Discount 10, Overcharge 10, Enlarge Weight Limit 10, Pushcart 10, Vending 8

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]
}

macro Taekwon {
[
   do conf Job 7
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 dex, 10 str, 20 agi, 20 str, 40 agi, 40 str, 20 dex, 70 agi, 50 str, 40 dex, 67 agi , 99 str , 50 dex
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Run 10, Counter 1, Ready Counter 1, Counter 7,  Turn Kick 1, Ready Turn 1, Turn Kick 7, Down Kick 1, Ready Down 1, Down Kick 7, Storm Kick 1, Ready Storm 1, Storm Kick 7,Jump Kick 1, Power 5, Taekwon Mission 1

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]   
}

macro Ninja {
[
   do conf Job 8
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 dex, 10 str, 20 agi, 20 str, 15 dex, 30 vit, 20 dex, 40 vit, 30 str, 30 dex, 22 agi, 40 str, 40 agi, 40 dex, 50 str, 12 int, 67 agi, 50 dex, 70 str, 60 vit, 24 int, 80 agi, 70 dex, 90 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9

   lock NoviceGroundPart1
   pause @rand(2,3)
   do conf QuestPart NoviceZone1
   do reload macro
]
}


macro Gunslinger {
[
   do conf Job 9
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 dex, 10 str, 20 agi, 20 str, 15 dex, 30 vit, 20 dex, 40 vit, 30 str, 30 dex, 22 agi, 40 str, 40 agi, 40 dex, 50 str, 12 int, 67 agi, 50 dex, 70 str, 60 vit, 24 int, 80 agi, 70 dex, 90 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9

   lock NoviceGroundPart1
   pause @rand(2,3)

   do conf QuestPart NoviceZone1
   do reload macro
]

}


##  Novice Zone Anti Reconnect Macro
automacro DisconnectedFromMapServer {
   class Novice
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3, new_1-4, new_2-4, new_3-4, new_4-4, new_5-4
   console /(Disconnected from Map Server|The NPC did not respond|You are not talking to any NPC|Desconectado do Servidor de Mapas)/
   exclusive 1
   call DFMS
}
macro DFMS {
   pause 1
   do reload macro
   release all
   do reload conf
   do relog 7
   pause 4
}

# Newbie chars talking to the Teachers 
automacro NoviceGroundPart1 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone1"
   class Novice
   run-once 1
   call NoviceGroundPart1M
}
macro NoviceGroundPart1M {
   do move $.map @rand(51,54) @rand(110,112)
[
   log ================================================
   log ===========  Speaking with Sprakki  ============
   log ================================================
]
   pause @rand(2,3)
   do talknpc 53 114 c w1 c w1 c w1 c c w1 c w1 c w1 c c
   pause @rand(2,3)
   do conf QuestPart NoviceZone2
}


automacro NoviceGroundPart2 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone2"
   class Novice
   run-once 1
   call NoviceGroundPart2M
}
macro NoviceGroundPart2M {
[
   log ================================================
   log ===========  Confirmation talk  ================
   log ================================================
]
   pause @rand(2,3)
   do talknpc 53 114 w2 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone3
}


automacro NoviceGroundPart3 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone3"
   class Novice
   run-once 1
   call NoviceGroundPart3M
}
macro NoviceGroundPart3M {
[
   log ================================================
   log =============  Moving to Portal  ===============
   log ================================================
]
   do move new_1-1 148 112
   pause @rand(2,3)
   do move new_1-2 @rand(99,101) @rand(24,26)
   do conf QuestPart NoviceZone4
}


automacro NoviceGroundPart4 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone4"
   class Novice
   run-once 1
   call NoviceGroundPart4M
}
macro NoviceGroundPart4M {
   pause 3
   do move new_1-2 @rand(99,101) @rand(24,26)
[
   log ================================================
   log =====  Second conversation with Sparkki  =======
   log ================================================
]
   pause @rand(2,3)

   do talknpc 100 29 c w2 c r0 w2 c w2 c w2 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone5
}


automacro NoviceGroundPart5 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone5"
   class Novice
   run-once 1
   call NoviceGroundPart5M
}
macro NoviceGroundPart5M {
   do move new_1-2 @rand(99,101) @rand(101,103)
   pause @rand(2,3)

   [
   log ================================================
   log =========  Conversation with Brade  ============
   log ================================================
]
   do talknpc 100 105 w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c

   pause @rand(2,3)

   [
   log ================================================
   log ========  Equip items given by Brade ===========
   log ================================================
]
   do eq @inventory (Tattered Novice Ninja Suit)
   do eq @inventory (Somber Novice Hood)
   do eq @inventory (Novice Slippers)
   do eq @inventory (Novice False Eggshell)
   do eq @inventory (Novice Main-Gauche)
   do eq @inventory (Novice Guard)
   
   pause @rand(2,3)

   do talknpc 100 105 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c
   
   pause @rand(2,3)   
   do talknpc 100 105 w4 c
   
   pause @rand(2,3)
   do conf QuestPart NoviceZone6
}


automacro NoviceGroundPart6 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone6"
   class Novice
   run-once 1
   call NoviceGroundPart6M
}
macro NoviceGroundPart6M {
   pause @rand(2,3)
   do move new_1-2 @rand(114,116) @rand(109,111)

   [
   log ================================================
   log ==========  Conversation with Jinha  ===========
   log ================================================
   ]
   pause @rand(2,3)
   do talknpc 115 120 w2 c w2 r0 w2 c w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 115 120 w2 c w2 r1 w2 c 
   
   pause @rand(2,3)
   do conf QuestPart NoviceZone7
}


automacro NoviceGroundPart7 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone7"
   class Novice
   run-once 1
   call NoviceGroundPart7M
}
macro NoviceGroundPart7M {
   pause @rand(2,3)
   do move new_1-2 @rand(99,101) @rand(101,103)

[
   log ================================================
   log ==========  Conversation with Brade 2  =========
   log ================================================
]
   pause @rand(2,3)
   do talknpc 100 105 w2 c w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 100 105 w2 c w2 r1 w2 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone8
}


automacro NoviceGroundPart8 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone8"
   class Novice
   run-once 1
   call NoviceGroundPart8M
}
macro NoviceGroundPart8M {
   pause @rand(2,3)
   do move new_1-2 @rand(32,34) @rand(173,175)
[
   log ================================================
   log ========  Conversation with Chocolat  ==========
   log ================================================
]
   do talknpc 33 172 w1 c w1 c w1 c w1 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone8pt1
}


automacro NoviceGroundPart8pt1 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone8pt1"
   class Novice
   run-once 1
   call NoviceGroundPart8pt1M
}
macro NoviceGroundPart8pt1M {
   pause @rand(2,3)
[
   log ================================================
   log =========  Conversando com a Kafra  ============
   log ================================================
]
   do talknpc 30 176 w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 c w1 r4 w1 c

   pause @rand(2,3)
   do conf QuestPart NoviceZone8pt2
}


automacro NoviceGroundPart8pt2 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone8pt2"
   class Novice
   run-once 1
   call NoviceGroundPart8pt2M
}
macro NoviceGroundPart8pt2M {
   pause @rand(2,3)
[
   log ================================================
   log =========  Conversation with Zonda  ============
   log ================================================
]
   do talknpc 33 176 w1 c w1 c w1 c w1 c w1 c w1 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone8pt3
}


automacro NoviceGroundPart8pt3 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone8pt3"
   class Novice
   run-once 1
   call NoviceGroundPart8pt3M
}
macro NoviceGroundPart8pt3M {
   pause @rand(2,3)
[
   log ================================================
   log =========  Conversation with Soldier  ==========
   log ================================================
]
   do talknpc 36 176 w4 c w4 c w4 c w4 c
   pause @rand(2,3)
   do conf QuestPart NoviceZone8pt4
}


automacro NoviceGroundPart8pt4 {
   location new_1-1, new_2-1, new_3-1, new_4-1, new_5-1, new_1-2, new_2-2, new_3-2, new_4-2, new_5-2
   eval $::config{QuestPart} eq "NoviceZone8pt4"
   class Novice
   run-once 1
   call NoviceGroundPart8pt4M
}
macro NoviceGroundPart8pt4M {
   pause@rand(3,4)
[
   log ================================================
   log ========  Conversation with Chocolat 2 =========
   log ================================================
]
   do talknpc 33 172 w2 c w2 c w2 c w2 c w2 c w2 c 
   pause @rand(2,3)
   do conf QuestPart NoviceZone9
}


automacro NoviceGroundPart9 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone9"
   class Novice
   run-once 1
   call NoviceGroundPart9M
}
macro NoviceGroundPart9M {
   [
   log ================================================
   log =============  Novice Battlefield  =============
   log ================================================
   ]
   pause 3
   do move new_1-3 @rand(94,96) @rand(26,28)
[
   log ================================================
   log =========  Conversation with Brade 3  ==========
   log ================================================
]
   pause @rand(2,3)
   do talknpc 96 30 w2 c w2 c w2 c w2 c w2 c w2 c
   pause @rand(2,3)
   do conf route_randomWalk 1
   pause 2
   do conf attackAuto 2
   pause @rand(2,3)
   $poring = @eval(0)   
   do conf QuestPart NoviceZone10
}


automacro NoviceGroundPart10 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3
   eval $::config{QuestPart} eq "NoviceZone10"
   class Novice
   run-once 1
   console /(You attack Monster Poring)/i
   call NoviceGroundPart10M
}
macro NoviceGroundPart10M {
   $poring = @eval($poring+1)
   if ($poring < 4) goto rls
   if ($poring >= 4) goto npc
   
   :rls
   release all
   goto end

   :npc
   pause @rand(3,4)
   do conf route_randomWalk 0
   pause 1
   do conf attackAuto 0
   pause 1
   do conf itemsTakeAuto 0 
   pause @rand(3,4)
   do move new_1-3 @rand(94,96) @rand(26,28)
[
   log ================================================
   log =========  Conversation with Brade 4  ==========
   log ================================================
]
   pause @rand(2,3)
   do talknpc 96 30 w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c
   pause @rand(2,3)
   do eq @inventory (Novice Cutter [3])
   do conf statsAddAuto 1
   do conf statsAddAuto_list 10 dex, 10 str, 20 agi, 20 str, 15 dex, 30 vit, 20 dex, 40 vit, 30 str, 30 dex, 22 agi, 40 str, 40 agi, 40 dex, 50 str, 12 int, 67 agi, 50 dex, 70 str, 60 vit, 24 int, 80 agi, 70 dex, 90 agi
   do conf skillsAddAuto 1
   do conf skillsAddAuto_list Basic Skill 9, Item Appraisal 1, Enlarge Weight Limit 3, Discount 10, Overcharge 10, Enlarge Weight Limit 10, Pushcart 10, Vending 8	
   do conf QuestPart NoviceZone11

   :end
   stop
}

automacro NoviceGroundPart11 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone11"
   class Novice
   run-once 1
   call NoviceGroundPart11M
}
macro NoviceGroundPart11M {
[
   log ================================================
   log ============  Begin Quest Section  =============
   log ================================================
]
[
   log ================================================
   log ==========  Talking to the Mage NPC  ===========
   log ================================================
]
   pause @rand(2,3)
   do move new_1-3 @rand(104,106) @rand(38,40)
   do talknpc 101 41 w2 c w2 r0 w2 c w2 c w2 c w2 c w2 c w2 c w2 r0 w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 101 41 w2 c w2 r2 w2 c w2 c w2 c
   pause @rand(2,3)
   do eq @inventory (Novice Adventurer's Suit [1])
   do eq @inventory (Somber Novice Hood)
   do eq @inventory (Novice Slippers)
   do eq @inventory (Novice False Eggshell)
   do eq @inventory (Novice Cutter [3])
   do eq @inventory (Novice Guard)
   do conf attackAuto 2
   do conf route_randomWalk 1
   pause 1
   do conf itemsTakeAuto 1
   $lunatic = @eval(0)
   do conf QuestPart Lunatic
}


automacro LunatCont {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "Lunatic"
   class Novice
   run-once 1
   console /(You attack Monster Lunatic)|(You attack Monster Lunatic)/i
   call LunatContM
}
macro LunatContM {
   $lunatic = @eval($lunatic+1)
   if ($lunatic < 15) goto end
   if ($lunatic >= 15) goto finish
   
   :end
   release LunatCont
   stop

   :finish
   do conf route_randomWalk 0
   pause 1
   do conf attackAuto 0
   pause 1
   do conf itemsTakeAuto 0 
   pause @rand(3,4)
   do move new_1-3 @rand(116,118) @rand(37,39)
   pause @rand(3,4)
   do talknpc 101 41 w2 c w2 r2 w2 c
   
   log = Quest Concluded =

   pause @rand(3,4)
   do conf QuestPart NoviceZone12   
   stop
      
}


automacro NoviceGroundPart12 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2,new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone12"
   class Novice
   run-once 1
   call NoviceGroundPart12M
}
macro NoviceGroundPart12M {
   pause @rand(2,3)
   do move new_1-3 @rand(104,106) @rand (46,48)
[
   log ================================================
   log ========  Teleporting to another level =========
   log ================================================
]
   pause @rand(2,3)
   do talknpc 103 50 w2 c w2 c w2 c w2 r0 w2 c w2 r1 w2 c

   pause @rand(2,3)
   do conf QuestPart NoviceZone13
}


automacro NoviceGroundPart13 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone13"
   class Novice
   run-once 1
   call NoviceGroundPart13M
}
macro NoviceGroundPart13M {
[
   log ================================================
   log =======  Conversation with Npc Swordman  =======
   log ================================================
]
   pause @rand(2,3)
   do move $.map @rand(96,98) @rand(37,39)
   do talknpc 97 41 w2 c w2 r0 w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 r0 w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 97 41 w2 c w2 r2 w2 c w2 c w2 c
   pause @rand(2,3)
   do eq @inventory (Novice Adventurer's Suit [1])
   do eq @inventory (Somber Novice Hood)
   do eq @inventory (Novice Slippers)
   do eq @inventory (Novice False Eggshell)
   do eq @inventory (Novice Cutter [3])
   do eq @inventory (Novice Guard)
   do eq @inventory (Swordsman Manual)
   do conf attackAuto 2
   pause 1
   do conf route_randomWalk 1
   pause 1
   do conf itemsTakeAuto 1
   $Picky = @eval(0)
   do conf QuestPart Picky
}


automacro PickyCont {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "Picky"
   class Novice
   run-once 1
   console /(You attack Monster Picky)/i
   call PickyContM
}
macro PickyContM {
   $Picky = @eval($Picky+1)
   if ($Picky < 15) goto end
   if ($Picky >= 15) goto finish
   
   :end
   release PickyCont
   stop

   :finish
   do conf route_randomWalk 0
   pause 1
   do conf attackAuto 0
   pause 1
   do conf itemsTakeAuto 0 
   pause @rand(2,3)
   do move $.map @rand(96,98) @rand(37,39)
   do talknpc 97 41 w2 c w2 r2 w2 c
   
   log = Quest Concluded =
   
   pause @rand(3,4)
   do conf QuestPart NoviceZone14   
   stop
      
}


automacro NoviceGroundPart14 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone14"
   class Novice
   run-once 1
   call NoviceGroundPart14M
}
macro NoviceGroundPart14M {
[
   log ================================================
   log =======  Conversation with Npc Thief  ==========
   log ================================================
]
   pause @rand(2,3)
   do move $.map @rand(104,106) @rand(37,39)
   pause @rand(3,4)
   do talknpc 105 41 w2 c w2 r0 w2 c w2 c w2 c w2 c w2 c w2 r0 w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 105 41 w2 c w2 r2 w2 c w2 c w2 c
   pause @rand(2,3)
   do eq @inventory (Novice Adventurer's Suit [1])
   do eq @inventory (Somber Novice Hood)
   do eq @inventory (Novice Slippers)
   do eq @inventory (Novice False Eggshell)
   do eq @inventory (Novice Main-Gauche)
   do eq @inventory (Novice Guard)
   do eq @inventory (Thief Manual) 
   do conf attackAuto 2
   pause 1
   do conf route_randomWalk 1
   pause 1
   do conf itemsTakeAuto 1
   $Willow = @eval(0)
   do conf QuestPart Willow
}


automacro WillowCont {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "Willow"
   class Novice
   run-once 1
   console /(You attack Monster Willow)|(You attack Monster Salgueiro)/i
   call WillowContM
}
macro WillowContM {
   $Willow = @eval($Willow+1)
   if ($Willow < 35) goto end
   if ($Willow >= 35) goto finish
   
   :end
   release WillowCont
   stop

   :finish
   pause @rand(2,3)
   do move $.map @rand(104,106) @rand(37,39)
   pause @rand(2,3)
   do talknpc 105 41 w2 c w2 r2 w2 c

   log = Quest Concluded =

   pause @rand(3,4)
   do conf QuestPart NoviceZone15
   stop
      
}

automacro NoviceGroundPart15 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone15"
   class Novice
   run-once 1
   call NoviceGroundPart15M
}
macro NoviceGroundPart15M {
[
   log ================================================
   log =======  Talking to the Merchant NPC  =========
   log ================================================
]
   $mapavenda = $.map
   pause @rand(2,3)
   do move $.map @rand(104,106) @rand(37,39)
   pause @rand(3,4)
   do talknpc 109 41 w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c w2 c
   pause @rand(2,3)
   do talknpc 109 41 w2 c w2 r2 w2 c w2 c w2 c
   pause @rand(2,3)
   do eq @inventory (Merchant Manual)
   pause @rand(2,3)
   do eq @inventory (Novice Adventurer's Suit [1])
   do eq @inventory (Somber Novice Hood)
   do eq @inventory (Novice Slippers)
   do eq @inventory (Novice False Eggshell)
   do eq @inventory (Novice Main-Gauche)
   do eq @inventory (Novice Guard)
   do conf QuestPart Merchant
}

automacro Merchant {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "Merchant"
   base >= 10
   class Novice
   run-once 1
   call MerchantM
}

macro MerchantM {
   pause @rand(2,3)
   do move $.map @rand(104,106) @rand(37,39)
   pause @rand(2,3)
   do talknpc 109 41 w2 c w2 r2 w2 c w2 c w2 c
   pause @rand(2,3)
   log = Quest concluded successfully
   pause @rand(2,3)
   do conf QuestPart NoviceZone16
}


automacro NoviceGroundDied {
   location new_1-3
   eval $::config{QuestPart} eq "NoviceZone12"||$::config{QuestPart} eq "NoviceZone13"||$::config{QuestPart} eq "NoviceZone14"||$::config{QuestPart} eq "Willow"||$::config{QuestPart} eq "Picky"
   class Novice
   run-once 1
   call NoviceGroundDiedM 
}
macro NoviceGroundDiedM {
   pause @rand(4,3)
   do move $.map @rand(104,106) @rand (46,48)
[
   log ================================================
   log ========  Teleport to another level ========
   log ================================================
]
   pause @rand(2,3)
   do talknpc 103 50 w2 c w2 c w2 c w2 r0 w2 c w2 r1 w2 c
   pause @rand(2,3)
   do conf route_randomWalk 1
   pause @rand(2,3)
   do conf attackAuto 2
   pause @rand(2,3)
   do conf itemsTakeAuto 1
   pause @rand(2,3)
   release all
}


automacro NoviceGroundPart16 {
   location new_1-2, new_2-2, new_3-2, new_4-2, new_5-2, new_1-3, new_2-3, new_3-3, new_4-3, new_5-3
   eval $::config{QuestPart} eq "NoviceZone16"
   class Novice
   base >= 16
   run-once 1
   call NoviceGroundPart16M
}
macro NoviceGroundPart16M {
[
   log ================================================
   log =========  Starting Job Class Change  ==========
   log ================================================
]
   $job = @eval($::config{Job})
   if ($ job == 1) goto swordsman
   if ($ job == 2) goto Acolite
   if ($ job == 3) goto Mage
   if ($ job == 4) goto Archer
   if ($ job == 5) goto Thief
   if ($ job == 6) goto Merchant
   if ($ job == 7) goto Taekwon
   if ($ job == 8) goto Ninja
   if ($ job == 9) goto Gunslinger
   
   :Swordsman
   pause @rand(2,3)
   do move @rand(100,102) @rand(37,39)
   pause @rand(2,3)
   do talknpc 97 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Acolite
   pause @rand(2,3)
   do move @rand(100,102) @rand(37,39)
   pause @rand(2,3)
   do talknpc 101 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Thief
   pause @rand(2,3)
   do move @rand(100,102) @rand(37,39)
   pause @rand(2,3)
   do talknpc 105 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Merchant
   pause @rand(2,3)
   do move @rand(112,114) @rand(37,39)
   pause @rand(2,3)
   do talknpc 109 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Archer
   pause @rand(2,3)
   do move @rand(112,114) @rand(37,39)
   pause @rand(2,3)
   do talknpc 113 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Mage
   pause @rand(2,3)
   do move @rand(112,114) @rand(37,39)
   pause @rand(2,3)
   do talknpc 117 41 w2 c w2 r1 w2 c w2 c w2 r1 w2 c
   do conf QuestPart QuestClass
   goto end

   :Taekwon
   pause @rand(2,3)
   do move @rand(120,122) @rand(37,39)
   pause @rand(2,3)
   log = Sorry, this is not available yet =/
   do conf QuestPart QuestClass
   goto end

   :Gunslinger
   pause @rand(2,3)
   do move @rand(120,122) @rand(37,39)
   pause @rand(2,3)
   log = Sorry, this is not available yet =/
   do conf QuestPart QuestClass
   goto end

   :Ninja
   pause @rand(2,3)
   do move @rand(120,122) @rand(37,39)
   pause @rand(2,3)
   log = Sorry, this is not available yet =/
   do conf QuestPart QuestClass
   goto end

   :end
   stop
}

##
# Swordsman Test
##
automacro QuestClassE {
   location izlude_in
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassEM
}
macro QuestClassEM {
[
   log ========================================
   log ========  Swordsman Job Change  ========
   log ========================================
]
   pause @rand(2,3)
   do move @rand(73,75) @rand(166,168)
   pause @rand(2,3)
   do talknpc 74 172 w2 c w1 r1 w1 c w1 r0 w1 c w1 c
   pause @rand(2,3)
   
   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}



##
# Acolite Test
##
automacro QuestClassN {
   location prt_church
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassNM
}
macro QuestClassNM {
[
   log ========================================
   log =========  Acolite Job Change  =========
   log ========================================
]
   pause @rand(2,3)
   do move @rand(182,184) @rand(36,38)
   pause @rand(2,3)
   do talknpc 184 41 w2 c w1 r0 w1 c w1 c w1 c w1 c
   pause @rand(2,3)
   
   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}


##
# Thief Test
##
automacro QuestClassG {
   location moc_prydb1
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassGM
}
macro QuestClassGM {
[
   log ========================================
   log ==========  Thief Job Change  ==========
   log ========================================
]
   pause @rand(2,3)
   do move 85 115
   pause @rand(2,3)
   do move @rand(44,46) @rand(125,127)
   pause @rand(2,3)
   do talknpc 39 129 w2 c w1 r0 w1 c w1 c w1 r0 w1 c w1 c w1 c w1 r0 w1 c w1 c w1 c
   pause @rand(2,3)
   do talknpc 42 133 w2 c w1 c w1 c w1 c w1 c


   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}


##
# Merchant Test
##

automacro QuestClassM {
   location alberta_in
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassMM
}

macro QuestClassMM {
[
   log ========================================
   log ========  Merchant Job Change  =========
   log ========================================
]
   pause @rand(2,3)
   do move @rand(56,58) @rand(42,44)
   pause @rand(2,3)
   do talknpc 53 43 w2 c w1 r0 w1 c w1 c w1 c w1 c
   pause @rand(2,3)

   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}


##
# Archer test
##

automacro QuestClassA {
   location payon_in02
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassArcher
}

macro QuestClassArcher {
[
   log ========================================
   log ======= Archer Class Chagnge  ==========
   log ========================================
]
   pause @rand(2,3)
   do move @rand(63,65) @rand(66,68)
   pause @rand(2,3)
   do talknpc 64 71 w2 c w1 r0 w1 c w1 c w1 c w1 c
   pause @rand(2,3)

   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}


##
# Mage test
##

automacro QuestClassMG {
   location geffen_in
   eval $::config{QuestPart} eq "QuestClass"
   class Novice
   job == 10
   run-once 1
   call QuestClassMGM
}

macro QuestClassMGM {
[
   log ========================================
   log == Mage Class Change  ==
   log ========================================
]
   pause @rand(2,3)
   do move @rand(163,165) @rand(121,123)
   pause @rand(2,3)
   do talknpc 164 124 w2 c w1 r0 w1 c w1 c w1 r0 w1 c w1 c w1 c w1 c
   pause @rand(2,3)

   log == Class Change Completed Successfully!!
   
   do conf QuestPart end
   stop
}

seratiel
Noob
Noob
Posts: 1
Joined: 01 Sep 2010, 10:58
Noob?: Yes
Location: • Indonesian •
Contact:

Re: Novice Land re-visited

#2 Post by seratiel »

the macro is working for me :)
but.. i just confused with this :

i already set "class" to G1 (means macro thief-rogue is loaded). but i saw on my console, my char talk with Mage NPC. and SkillAddAuto was changed become Merchant skill. ?

snowiscold1
Noob
Noob
Posts: 2
Joined: 12 Jul 2012, 07:20
Noob?: No

Re: Novice Land re-visited

#3 Post by snowiscold1 »

i play mRO, and this macro is not working.. some npc's location are not found. and the items name are different for my server. i hope you can fix the npc's location.

p/s: nice effort. tq.

User avatar
alisonrag
Developers
Developers
Posts: 34
Joined: 30 Jun 2011, 12:25
Noob?: No
Location: Brazil

Re: Novice Land re-visited

#4 Post by alisonrag »

this macro work only in BRO server bacause of npc's coords,
to work in others you need to update the dialog and the coords of npc...

to make the quest u can use this:
to control the quests:

1 - return the value of $::questList->{7139}->{'missions'}->{1076}->{'count'}, where 7139 is the ID of quest and 1076 is ID of monster.

2 - u can use to count moster kill this: hook target_died.
"ignorance is a blessing"

Post Reply