Module:ShipCreatureData
Documentation for this module may be created at Module:ShipCreatureData/doc
local p = {
["Blood Daemon"] = {
["location"] = "Ships",
["difficulty"] = 157.7,
["goldvalue"] = 1577,
["hits"] = 8000,
["minmeleedmg"] = 50,
["maxmeleedmg"] = 60,
["wrestling"] = 110,
["armor"] = 25,
["magicresist"] = 100,
["magery"] = 100,
["minspelldmg"] = 20,
["maxspelldmg"] = 30,
["slayer"] = "Daemonic",
["ai"] = "MeleeMage",
["speed"] = "Medium",
["uniquescalar"] = 1.2,
},
["Blood Feaster"] = {
["location"] = "Ships",
["difficulty"] = 92.7,
["goldvalue"] = 927,
["hits"] = 4500,
["minmeleedmg"] = 40,
["maxmeleedmg"] = 50,
["wrestling"] = 90,
["armor"] = 50,
["magicresist"] = 25,
["slayer"] = "Daemonic",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.4,
},
["Bloody Hornbeast"] = {
["location"] = "Ships",
["difficulty"] = 60.1,
["goldvalue"] = 602,
["hits"] = 3500,
["minmeleedmg"] = 30,
["maxmeleedmg"] = 40,
["wrestling"] = 90,
["armor"] = 50,
["magicresist"] = 100,
["slayer"] = "Daemonic",
["ai"] = "Melee",
["speed"] = "VeryFast",
["uniquescalar"] = 1.2,
},
["Drowned Dragon"] = {
["location"] = "Ships",
["difficulty"] = 66.2,
["goldvalue"] = 662,
["hits"] = 4000,
["minmeleedmg"] = 30,
["maxmeleedmg"] = 40,
["wrestling"] = 80,
["armor"] = 50,
["magicresist"] = 25,
["poisonresist"] = 0.6,
["slayer"] = "Undead",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.3,
},
["Fungaloid"] = {
["location"] = "Ships",
["difficulty"] = 42.3,
["goldvalue"] = 423,
["hits"] = 3000,
["minmeleedmg"] = 20,
["maxmeleedmg"] = 30,
["wrestling"] = 80,
["armor"] = 25,
["magicresist"] = 25,
["poisonresist"] = 0.4,
["slayer"] = "Nature",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.25,
},
["Hierarch"] = {
["location"] = "Ships",
["difficulty"] = 64.1,
["goldvalue"] = 641,
["hits"] = 2500,
["minmeleedmg"] = 20,
["maxmeleedmg"] = 30,
["wrestling"] = 90,
["armor"] = 25,
["magicresist"] = 150,
["magery"] = 100,
["minspelldmg"] = 20,
["maxspelldmg"] = 30,
["slayer"] = "Humanoid",
["ai"] = "Mage",
["speed"] = "Slow",
["uniquescalar"] = 1.3,
},
["Jackal Spirit"] = {
["location"] = "Ships",
["difficulty"] = 59.3,
["goldvalue"] = 594,
["hits"] = 3500,
["minmeleedmg"] = 30,
["maxmeleedmg"] = 40,
["wrestling"] = 90,
["armor"] = 25,
["magicresist"] = 25,
["parry"] = 50,
["poisonresist"] = 0.6,
["slayer"] = "Undead",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.25,
},
["Lichenid"] = {
["location"] = "Ships",
["difficulty"] = 81.7,
["goldvalue"] = 817,
["hits"] = 4000,
["minmeleedmg"] = 40,
["maxmeleedmg"] = 50,
["wrestling"] = 90,
["armor"] = 75,
["magicresist"] = 25,
["poisonresist"] = 0.4,
["slayer"] = "Nature",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.35,
},
["Lizardman Elite Hunter"] = {
["location"] = "Ships",
["difficulty"] = 64.7,
["goldvalue"] = 647,
["hits"] = 4000,
["minmeleedmg"] = 35,
["maxmeleedmg"] = 45,
["wrestling"] = 90,
["armor"] = 50,
["magicresist"] = 25,
["slayer"] = "Monstrous",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.14,
},
["Lizardman Elite Warrior"] = {
["location"] = "Ships",
["difficulty"] = 86.1,
["goldvalue"] = 861,
["hits"] = 4500,
["minmeleedmg"] = 40,
["maxmeleedmg"] = 50,
["wrestling"] = 90,
["armor"] = 50,
["magicresist"] = 25,
["slayer"] = "Monstrous",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.3,
},
["Lizardman Warchief"] = {
["location"] = "Ships",
["difficulty"] = 160.7,
["goldvalue"] = 1607,
["hits"] = 8000,
["minmeleedmg"] = 50,
["maxmeleedmg"] = 60,
["wrestling"] = 100,
["armor"] = 50,
["magicresist"] = 25,
["slayer"] = "Monstrous",
["ai"] = "Melee",
["speed"] = "Medium",
["uniquescalar"] = 1.3,
},
["Murkvine"] = {
["location"] = "Ships",
["difficulty"] = 47.1,
["hits"] = 5000,
["minmeleedmg"] = 20,
["maxmeleedmg"] = 30,
["wrestling"] = 150,
["armor"] = 25,
["magicresist"] = 25,
["slayer"] = "Monstrous",
["ai"] = "Melee",
["speed"] = "Slow",
["uniquescalar"] = 1,
},
["Ossuarian Sightless Seer"] = {
["location"] = "Ships",
["difficulty"] = 138.8,
["goldvalue"] = 1388,
["hits"] = 5000,
["minmeleedmg"] = 20,
["maxmeleedmg"] = 30,
["wrestling"] = 90,
["armor"] = 25,
["magicresist"] = 100,
["magery"] = 125,
["minspelldmg"] = 25,
["maxspelldmg"] = 35,
["slayer"] = "Humanoid",
["ai"] = "Mage",
["speed"] = "Medium",
["uniquescalar"] = 1.35,
},
["Sunken Sorcerer"] = {
["location"] = "Ships",
["difficulty"] = 123.6,
["goldvalue"] = 1236,
["hits"] = 5000,
["minmeleedmg"] = 20,
["maxmeleedmg"] = 30,
["wrestling"] = 100,
["armor"] = 25,
["magicresist"] = 100,
["magery"] = 125,
["minspelldmg"] = 25,
["maxspelldmg"] = 35,
["slayer"] = "Monstrous",
["ai"] = "Mage",
["speed"] = "Slow",
["uniquescalar"] = 1.2,
},
}
-- Helper function to add comma's between numbers
function FormatInt(int)
int = string.reverse(int)
if string.len(int) > 3 and string.len(int) < 6 then
int = string.gsub(int, "(%d%d%d)", "%1,")
elseif string.len(int) == 6 then
int = string.gsub(int, "(%d%d%d)(%d%d%d)", "%1,%2")
elseif string.len(int) > 6 and string.len(int) < 9 then
int = string.gsub(int, "(%d%d%d)(%d%d%d)", "%1,%2,")
end
int = string.reverse(int)
return int
end
-- Fill out or format values
for index, creature in pairs(p) do
local defaultStatArray = {
["location"] = "Ships",
["difficulty"] = "?",
["goldvalue"] = "?",
["hits"] = "?",
["minmeleedmg"] = "",
["maxmeleedmg"] = "",
["wrestling"] = "",
["armor"] = "",
["magicresist"] = "",
["parry"] = "",
["atkspd"] = "?",
["magery"] = "",
["minspelldmg"] = "",
["maxspelldmg"] = "",
["poisontype"] = "",
["poisoning"] = "",
["poisonresist"] = "",
["stealth"] = "",
["slayer"] = "?",
["ai"] = "?",
["speed"] = "?",
["uniquescalar"] = "?",
["bosstype"] = "",
["armormin"] = "",
["magicresistmin"] = "",
["poisonresistmin"] = "",
}
if type(creature.location) == "table" then
local locations = ""
for i, spawnLocation in pairs(creature.location) do
if locations ~= "" then
locations = locations .. "<br>"
end
locations = locations .. "[[" .. spawnLocation .. "]]"
end
creature.location = locations
elseif type(creature.location) == "string" and creature.location ~= "?" then
creature.location = "[[" .. creature.location .. "]]"
end
if type(creature.goldvalue) == "number" then
creature.goldvalue = FormatInt(creature.goldvalue)
end
if type(creature.hits) == "number" then
creature.unformattedhits = creature.hits
creature.hits = FormatInt(creature.hits)
end
if creature.armormin then
creature.armormin = "<br>(" .. creature.armormin .. " min)"
end
if creature.magicresistmin then
creature.magicresistmin = "<br>(" .. creature.magicresistmin .. " min)"
end
if creature.poisonresistmin then
creature.poisonresistmin = "<br>(" .. creature.poisonresistmin .. " min)"
end
if creature.poisonresist then
creature.poisonresist = (creature.poisonresist * 100) .. "%"
end
if creature.specialresist then
creature.specialresist = (creature.specialresist * 100) .. "%"
end
if creature.minmeleedmg and creature.minmeleedmg ~= creature.maxmeleedmg then
creature.minmeleedmg = creature.minmeleedmg .. " - "
elseif creature.minmeleedmg == creature.maxmeleedmg then
creature.maxmeleedmg = ""
end
if creature.minspelldmg and creature.minspelldmg ~= creature.maxspelldmg then
creature.minspelldmg = creature.minspelldmg .. " - "
elseif creature.minspelldmg == creature.maxspelldmg then
creature.maxspelldmg = ""
end
for stat, defaultValue in pairs(defaultStatArray) do
if creature[stat] == nil then
creature[stat] = defaultValue
end
end
end
return p