Results 1 to 8 of 8

Thread: Help with exori script!

  1. #1
    iBot User
    Join Date
    Jul 2012
    Posts
    246
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    7
    Rep Power
    0

    Help with exori script!

    Hello i've got this exori script from the forum that im using!



    PHP Code:
    --[[ 
    .
    ______    __        ______   .__   __.   _______ 
    |   _  \  |  |      /  __  \  |  \ |  |  /  _____|
    |  |
    _)  | |  |     |  |  |  | |   \|  | |  |  __  
    |   _  <  |  |     |  |  |  | |  . `  | |  | |_ | 
    |  |_)  | |  
    `----.|  `--'  | |  |\   | |  |__| | 
    |______/  |_______| \______/  |__| \__|  \______| 

    ]]--    

    local monsters = {"dragon", "dragon lord"} -- ur array
    local amount_gran = 5
    local amount_exori = 3
    local exori = "exori"
    local gran = "exori gran"
    local check_floor = true
    local pvpWorld = true

    if check_floor then
        if pvpWorld then
            if paround(5, check_floor) == 0 and maround(1, unpack(monsters)) >= amount_exori and cancast(exori) then
                cast(exori)
            elseif paround(5, check_floor) == 0 and maround(1, unpack(monsters)) >= amount_gran and cancast(gran) then
                cast(gran)
            elseif pvpWorld == false then
                if maround(1, unpack(monsters)) >= amount_exori and cancast(exori) then
                    cast(exori)
                elseif maround(1, unpack(monsters)) >= amount_gran and cancast(gran) then
                    cast(gran)
                end
            end
        end
    end 
    but i was wondering if someone couild help me add that it uses exori hur\ico if 2 or less monsters?

    AND if its possible, "dont stand near holes, so ppl can jump" etc?
    possible?

    thx in advance

  2. #2
    Normal User mistgun's Avatar
    Join Date
    Nov 2012
    Location
    LDZ
    Posts
    333
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    3 Post(s)
    Reputation
    41
    Rep Power
    5
    Use this exori action , i think is the best action on forum created by Sirmate
    U can change ammount of monsters here for use exoris etc and u can set here monster health % to cast exori hur , ico etc
    Its check floors too and i think its cant hit any player

    Code:
    -- [[ INIT START ]] --
        local CONFIG = {
            CREATURES = {"Sea Serpent", "Young Sea Serpent"},
            
            PLAYERS = {
                ENABLED = true,
                DISTANCE = 14,
                FLOOR_DIFFERENCE = 1,
                SAFE_LIST = {"Bubble", "Eternal Oblivion"},
            },
            
            SPELLS = {
                --{NAME = "groundshaker", AMOUNT = 6},
                {NAME = "fierce berserk", AMOUNT = 4},
                {NAME = "berserk", AMOUNT = 3},
                {NAME = "front sweep", AMOUNT = 2},
                --{NAME = "annihilation", HP_PC = 45},
                {NAME = "brutal strike", HP_PC = 10},
                {NAME = "whirlwind throw", HP_PC = 10},
            },
        }
    
        -- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
    
        SPELLS_CONFIG = SPELLS_CONFIG or {}
        LAST_FLOOR = LAST_FLOOR or Self.PositionZ()
        ATTACK_EXHAUST = ATTACK_EXHAUST or 0
        
        table.lower(CONFIG.CREATURES)
        
        local RESET_SPELLS_CONFIG = #CONFIG.SPELLS ~= #SPELLS_CONFIG
        
        if (not RESET_SPELLS_CONFIG) then
            for INDEX, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
                if (SPELL_ENTRY.NAME ~= SPELLS_CONFIG[INDEX].NAME or ((SPELL_ENTRY.AMOUNT and SPELL_ENTRY.AMOUNT ~= SPELLS_CONFIG[INDEX].AMOUNT) or (SPELL_ENTRY.HP_PC and SPELL_ENTRY.HP_PC ~= SPELLS_CONFIG[INDEX].HP_PC))) then
                    RESET_SPELLS_CONFIG = true
                    break
                end
            end
        end
        
        if (RESET_SPELLS_CONFIG) then
            SPELLS_CONFIG = {}
            
            local CURRENT_INDEX = 1
            
            while (#CONFIG.SPELLS >= CURRENT_INDEX) do
                CONFIG.SPELLS[CURRENT_INDEX].INFO = Spell.GetByWordsOrName(CONFIG.SPELLS[CURRENT_INDEX].NAME)
                
                if (not CONFIG.SPELLS[CURRENT_INDEX].INFO:isValid()) then
                    table.remove(CONFIG.SPELLS, CURRENT_INDEX)
                else
                    if (#CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition() > 0 and table.find({"BIG_BEAM", "BIG_WAVE", "FRONT", "SMALL_BEAM", "SMALL_WAVE", "STRIKE"}, CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition())) then
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = true
                    else
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = false
                    end
                    
                    CURRENT_INDEX = CURRENT_INDEX + 1
                end
            end
        end
    -- [[ INIT END ]] --
    
    if (Self.PositionZ() ~= LAST_FLOOR) then
        LAST_FLOOR, ATTACK_EXHAUST = Self.PositionZ(), System.TimeMilliseconds() + 2000
        return
    end
    
    if (System.TimeMilliseconds() > ATTACK_EXHAUST) then
        for _, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
            if (SPELL_ENTRY.INFO:isAbleToCast(nil, false)) then
                local ATTACKED = Creature.GetAttacked()
                
                if (SPELL_ENTRY.AMOUNT and (not CONFIG.PLAYERS.ENABLED or Self.PlayersAroundFloorIgnore(CONFIG.PLAYERS.DISTANCE, CONFIG.PLAYERS.FLOOR_DIFFERENCE, unpack(CONFIG.PLAYERS.SAFE_LIST)) == 0)) then
                    local HIGHEST_AMOUNT, BEST_DIRECTION = 0, Self.LookDirection()
                                
                    if (SPELL_ENTRY.NEED_DIRECTION) then
                        for DIRECTION, CREATURES_AMOUNT in pairs({[DIRECTION_NORTH] = 0, [DIRECTION_EAST] = 0, [DIRECTION_SOUTH] = 0, [DIRECTION_WEST] = 0}) do
                            CREATURES_AMOUNT = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), DIRECTION, unpack(CONFIG.CREATURES))
                            
                            if (CREATURES_AMOUNT > HIGHEST_AMOUNT or (CREATURES_AMOUNT >= HIGHEST_AMOUNT and DIRECTION == Self.LookDirection())) then
                                HIGHEST_AMOUNT, BEST_DIRECTION = CREATURES_AMOUNT, DIRECTION
                            end
                        end
                    else
                        HIGHEST_AMOUNT, BEST_DIRECTION = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), Self.LookDirection(), unpack(CONFIG.CREATURES)), Self.LookDirection()
                    end
                    
                    if (HIGHEST_AMOUNT >= SPELL_ENTRY.AMOUNT) then
                        while (Self.LookDirection() ~= BEST_DIRECTION) do
                            Self.Turn(BEST_DIRECTION)
                            System.Wait(25, 75)
                        end
                        
                        if (SPELL_ENTRY.INFO:CastSpell()) then
                            System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                        end
                    end
                elseif (SPELL_ENTRY.HP_PC and SPELL_ENTRY.INFO:isAbleToCast(ATTACKED, false) and table.find(CONFIG.CREATURES, ATTACKED:Name():lower()) and SPELL_ENTRY.HP_PC >= ATTACKED:HealthPercent()) then
                    if (SPELL_ENTRY.INFO:CastSpell(ATTACKED)) then
                        System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                    end
                end
            end
        end
    end
    LATEST FREE AND PAID SCRIPTS

    Ghostland: EK Coryms Cave: EK
    Peninsula Tomb: EK, MS/ED Mount Sternum: EK
    Dwarf City: EK Nightstalkers Mountain: ED, MS

  3. #3
    iBot User
    Join Date
    Jul 2012
    Posts
    246
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    7
    Rep Power
    0
    really? you use it?? i will test it out ! thanks man

  4. #4
    iBot User
    Join Date
    Jul 2012
    Posts
    246
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    7
    Rep Power
    0
    people cant jump up and down to make u skull? it checks floors? for players?

  5. #5
    iBot User
    Join Date
    Jul 2012
    Posts
    246
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    7
    Rep Power
    0
    ???????????

  6. #6

  7. #7
    iBot User
    Join Date
    Jul 2012
    Posts
    246
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    7
    Rep Power
    0
    ya i heard but i cant get it to work, even tho i got sirmates libery ;s

  8. #8
    iBot User
    Join Date
    Jun 2012
    Posts
    517
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    4 Post(s)
    Reputation
    132
    Rep Power
    7
    Code:
    -- [[ INIT START ]] --
        local CONFIG = {
            CREATURES = {"Sea Serpent", "Young Sea Serpent"},        ------ Here you add monsters to shoot
            
            PLAYERS = {
                ENABLED = true,                            -- Here you set Player security true = PVP / false = No-PVP
                DISTANCE = 14,                            -- Distance to Player from you char.
                FLOOR_DIFFERENCE = 1,                -- Floors beetwen you and other players (PosZ)
                SAFE_LIST = {"Bubble", "Eternal Oblivion"},    -- Here you can add players who will be ignored in player security
            },
            
            SPELLS = {                                                   --- Here you can add spells yo use: Name of monster, Amount to use spells, HP_PC is minimal Hp of monster to use spell
                --{NAME = "groundshaker", AMOUNT = 6},
                {NAME = "fierce berserk", AMOUNT = 4},
                {NAME = "berserk", AMOUNT = 3},
                {NAME = "front sweep", AMOUNT = 2},
                --{NAME = "annihilation", HP_PC = 45},
                {NAME = "brutal strike", HP_PC = 10},
                {NAME = "whirlwind throw", HP_PC = 10},
            },
        }
    -------- Below this line is engine
    
    
        -- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
    
        SPELLS_CONFIG = SPELLS_CONFIG or {}
        LAST_FLOOR = LAST_FLOOR or Self.PositionZ()
        ATTACK_EXHAUST = ATTACK_EXHAUST or 0
        
        table.lower(CONFIG.CREATURES)
        
        local RESET_SPELLS_CONFIG = #CONFIG.SPELLS ~= #SPELLS_CONFIG
        
        if (not RESET_SPELLS_CONFIG) then
            for INDEX, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
                if (SPELL_ENTRY.NAME ~= SPELLS_CONFIG[INDEX].NAME or ((SPELL_ENTRY.AMOUNT and SPELL_ENTRY.AMOUNT ~= SPELLS_CONFIG[INDEX].AMOUNT) or (SPELL_ENTRY.HP_PC and SPELL_ENTRY.HP_PC ~= SPELLS_CONFIG[INDEX].HP_PC))) then
                    RESET_SPELLS_CONFIG = true
                    break
                end
            end
        end
        
        if (RESET_SPELLS_CONFIG) then
            SPELLS_CONFIG = {}
            
            local CURRENT_INDEX = 1
            
            while (#CONFIG.SPELLS >= CURRENT_INDEX) do
                CONFIG.SPELLS[CURRENT_INDEX].INFO = Spell.GetByWordsOrName(CONFIG.SPELLS[CURRENT_INDEX].NAME)
                
                if (not CONFIG.SPELLS[CURRENT_INDEX].INFO:isValid()) then
                    table.remove(CONFIG.SPELLS, CURRENT_INDEX)
                else
                    if (#CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition() > 0 and table.find({"BIG_BEAM", "BIG_WAVE", "FRONT", "SMALL_BEAM", "SMALL_WAVE", "STRIKE"}, CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition())) then
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = true
                    else
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = false
                    end
                    
                    CURRENT_INDEX = CURRENT_INDEX + 1
                end
            end
        end
    -- [[ INIT END ]] --
    
    if (Self.PositionZ() ~= LAST_FLOOR) then
        LAST_FLOOR, ATTACK_EXHAUST = Self.PositionZ(), System.TimeMilliseconds() + 2000
        return
    end
    
    if (System.TimeMilliseconds() > ATTACK_EXHAUST) then
        for _, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
            if (SPELL_ENTRY.INFO:isAbleToCast(nil, false)) then
                local ATTACKED = Creature.GetAttacked()
                
                if (SPELL_ENTRY.AMOUNT and (not CONFIG.PLAYERS.ENABLED or Self.PlayersAroundFloorIgnore(CONFIG.PLAYERS.DISTANCE, CONFIG.PLAYERS.FLOOR_DIFFERENCE, unpack(CONFIG.PLAYERS.SAFE_LIST)) == 0)) then
                    local HIGHEST_AMOUNT, BEST_DIRECTION = 0, Self.LookDirection()
                                
                    if (SPELL_ENTRY.NEED_DIRECTION) then
                        for DIRECTION, CREATURES_AMOUNT in pairs({[DIRECTION_NORTH] = 0, [DIRECTION_EAST] = 0, [DIRECTION_SOUTH] = 0, [DIRECTION_WEST] = 0}) do
                            CREATURES_AMOUNT = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), DIRECTION, unpack(CONFIG.CREATURES))
                            
                            if (CREATURES_AMOUNT > HIGHEST_AMOUNT or (CREATURES_AMOUNT >= HIGHEST_AMOUNT and DIRECTION == Self.LookDirection())) then
                                HIGHEST_AMOUNT, BEST_DIRECTION = CREATURES_AMOUNT, DIRECTION
                            end
                        end
                    else
                        HIGHEST_AMOUNT, BEST_DIRECTION = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), Self.LookDirection(), unpack(CONFIG.CREATURES)), Self.LookDirection()
                    end
                    
                    if (HIGHEST_AMOUNT >= SPELL_ENTRY.AMOUNT) then
                        while (Self.LookDirection() ~= BEST_DIRECTION) do
                            Self.Turn(BEST_DIRECTION)
                            System.Wait(25, 75)
                        end
                        
                        if (SPELL_ENTRY.INFO:CastSpell()) then
                            System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                        end
                    end
                elseif (SPELL_ENTRY.HP_PC and SPELL_ENTRY.INFO:isAbleToCast(ATTACKED, false) and table.find(CONFIG.CREATURES, ATTACKED:Name():lower()) and SPELL_ENTRY.HP_PC >= ATTACKED:HealthPercent()) then
                    if (SPELL_ENTRY.INFO:CastSpell(ATTACKED)) then
                        System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                    end
                end
            end
        end
    end

Posting Permissions

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