• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua Boss spawn

Sizaro

Advanced OT User
Joined
Aug 20, 2007
Messages
5,172
Solutions
5
Reaction score
227
Location
Sweden
GitHub
coldensjo
I want to make it so that whenever a specific boss spawns, it spawns with additional x creatures at x locations.

For example, when Man in the Cave has spawned, there are additional Ice Golems in the cave below him. Plus there are also unsummoned Monks with him.

LUA:
local spawns = {
    -- Bosses
    [1] = {position = Position(2089, 2160, 15), monster = 'The Mad Mage'},
    [2] = {position = Position(1781, 2260, 6), monster = 'General Murius'},
    [3] = {position = Position(2294, 2266, 10), monster = 'Demodras'},
    [4] = {position = Position(1729, 2063, 9), monster = 'Dharalion'},
    [5] = {position = Position(2372, 2310, 7), monster = 'Fernfang'},
    [6] = {position = Position(2018, 2028, 7), monster = 'Man in the Cave'},
    [7] = {position = Position(2111, 1974, 11), monster = 'Necropharus'},
    [8] = {position = Position(1983, 1935, 7), monster = 'The Horned Fox'},
    [9] = {position = Position(1927, 2095, 8), monster = 'The Evil Eye'},
    [10] = {position = Position(2252, 1812, 7), monster = 'Treasure Goblin'},
    [11] = {position = Position(2269, 2282, 7), monster = 'The Old Widow'},

    -- PoI bosses
    [12] = {position = Position(2313, 2349, 15), monster = 'Countess Sorrow'},
    [13] = {position = Position(2356, 2287, 15), monster = 'Dracola'},
    [14] = {position = Position(2387, 2243, 15), monster = 'Massacre'},
    [15] = {position = Position(2277, 2220, 15), monster = 'Mr. Punish'},
    [16] = {position = Position(2304, 2254, 15), monster = 'The Handmaiden'},
    [17] = {position = Position(2364, 2302, 15), monster = 'The Plasmother'},
    [18] = {position = Position(2430, 2189, 15), monster = 'The Imperor'},
  
    -- New
    [19] = {position = Position(2029, 1955, 8), monster = 'Apprentice Sheng'},
    [20] = {position = Position(1876, 2107, 8), monster = 'Big Boss Trolliver'},
    [21] = {position = Position(1898, 2045, 12), monster = 'Grorlam'},
    [22] = {position = Position(2117, 2361, 10), monster = 'Rukor Zad'},
    [23] = {position = Position(2006, 2150, 7), monster = 'The Big Bad One'},
    [24] = {position = Position(2097, 2205, 11), monster = 'The Noxious Spawn'},
}
function onThink(interval, lastExecution, thinkInterval)
    if math.random(1000) > 999 then
        return true
    end

    local spawn = spawns[math.random(#spawns)]
    Game.createMonster(spawn.monster, spawn.position, false, true)
    print('(Boss) '..spawn.monster..' just spawned.')
    return true
end
 
Solution
X
LUA:
local spawns = {
    -- Bosses
    [1] = {
        {position = Position(2089, 2160, 15), monster = 'The Mad Mage'},
        {position = Position(2089, 2160, 15), monster = 'rat'},
        {position = Position(2089, 2160, 15), monster = 'cave rat'}
    },
    [2] = {{position = Position(1781, 2260, 6), monster = 'General Murius'}},
    [3] = {{position = Position(2294, 2266, 10), monster = 'Demodras'}},
    [4] = {{position = Position(1729, 2063, 9), monster = 'Dharalion'}},
    [5] = {{position = Position(2372, 2310, 7), monster = 'Fernfang'}},
    [6] = {{position = Position(2018, 2028, 7), monster = 'Man in the Cave'}},
    [7] = {{position = Position(2111, 1974, 11), monster = 'Necropharus'}},
    [8] = {{position = Position(1983...
LUA:
local spawns = {
    -- Bosses
    [1] = {
        {position = Position(2089, 2160, 15), monster = 'The Mad Mage'},
        {position = Position(2089, 2160, 15), monster = 'rat'},
        {position = Position(2089, 2160, 15), monster = 'cave rat'}
    },
    [2] = {{position = Position(1781, 2260, 6), monster = 'General Murius'}},
    [3] = {{position = Position(2294, 2266, 10), monster = 'Demodras'}},
    [4] = {{position = Position(1729, 2063, 9), monster = 'Dharalion'}},
    [5] = {{position = Position(2372, 2310, 7), monster = 'Fernfang'}},
    [6] = {{position = Position(2018, 2028, 7), monster = 'Man in the Cave'}},
    [7] = {{position = Position(2111, 1974, 11), monster = 'Necropharus'}},
    [8] = {{position = Position(1983, 1935, 7), monster = 'The Horned Fox'}},
    [9] = {{position = Position(1927, 2095, 8), monster = 'The Evil Eye'}},
    [10] = {{position = Position(2252, 1812, 7), monster = 'Treasure Goblin'}},
    [11] = {{position = Position(2269, 2282, 7), monster = 'The Old Widow'}},
   
    -- PoI bosses
    [12] = {{position = Position(2313, 2349, 15), monster = 'Countess Sorrow'}},
    [13] = {{position = Position(2356, 2287, 15), monster = 'Dracola'}},
    [14] = {{position = Position(2387, 2243, 15), monster = 'Massacre'}},
    [15] = {{position = Position(2277, 2220, 15), monster = 'Mr. Punish'}},
    [16] = {{position = Position(2304, 2254, 15), monster = 'The Handmaiden'}},
    [17] = {{position = Position(2364, 2302, 15), monster = 'The Plasmother'}},
    [18] = {{position = Position(2430, 2189, 15), monster = 'The Imperor'}},
   
    -- New
    [19] = {{position = Position(2029, 1955, 8), monster = 'Apprentice Sheng'}},
    [20] = {{position = Position(1876, 2107, 8), monster = 'Big Boss Trolliver'}},
    [21] = {{position = Position(1898, 2045, 12), monster = 'Grorlam'}},
    [22] = {{position = Position(2117, 2361, 10), monster = 'Rukor Zad'}},
    [23] = {{position = Position(2006, 2150, 7), monster = 'The Big Bad One'}},
    [24] = {{position = Position(2097, 2205, 11), monster = 'The Noxious Spawn'}}
}
function onThink(interval, lastExecution, thinkInterval)
    if math.random(1000) > 999 then
        return true
    end
   
    local spawn = spawns[math.random(#spawns)]
    for i = 1, #spawn do
        Game.createMonster(spawn[i].monster, spawn[i].position, false, true)
    end
    print('(Boss) '..spawn[1].monster..' just spawned.')
    return true
end
 
Solution

Similar threads

Back
Top