work on install second step

This commit is contained in:
Sky Johnson 2025-05-10 15:08:40 -05:00
parent 153ff6d787
commit 9a00ba700a
4 changed files with 311 additions and 159 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.db-shm
*.db-wal

Binary file not shown.

BIN
moonshark

Binary file not shown.

View File

@ -1,3 +1,4 @@
local start = microtime(true)
local db = sqlite("dk") local db = sqlite("dk")
db:create_table("babble", db:create_table("babble",
@ -24,7 +25,6 @@ db:create_table("control",
) )
db:insert("control", { db:insert("control", {
id = 1,
game_name = "Dragon Knight", game_name = "Dragon Knight",
game_size = 250, game_size = 250,
game_open = 1, game_open = 1,
@ -48,42 +48,40 @@ db:create_table("drops",
"attribute_2 TEXT NOT NULL DEFAULT ''" "attribute_2 TEXT NOT NULL DEFAULT ''"
) )
local drops_data = { db:insert("drops", {
{id = 1, name = "Life Pebble", level = 1, type = 1, attribute_1 = "maxhp,10", attribute_2 = ""}, {"Life Pebble", 1, 1, "maxhp,10", ""},
{id = 2, name = "Life Stone", level = 10, type = 1, attribute_1 = "maxhp,25", attribute_2 = ""}, {"Life Stone", 10, 1, "maxhp,25", ""},
{id = 3, name = "Life Rock", level = 25, type = 1, attribute_1 = "maxhp,50", attribute_2 = ""}, {"Life Rock", 25, 1, "maxhp,50", ""},
{id = 4, name = "Magic Pebble", level = 1, type = 1, attribute_1 = "maxmp,10", attribute_2 = ""}, {"Magic Pebble", 1, 1, "maxmp,10", ""},
{id = 5, name = "Magic Stone", level = 10, type = 1, attribute_1 = "maxmp,25", attribute_2 = ""}, {"Magic Stone", 10, 1, "maxmp,25", ""},
{id = 6, name = "Magic Rock", level = 25, type = 1, attribute_1 = "maxmp,50", attribute_2 = ""}, {"Magic Rock", 25, 1, "maxmp,50", ""},
{id = 7, name = "Dragon's Scale", level = 10, type = 1, attribute_1 = "defensepower,25", attribute_2 = ""}, {"Dragon's Scale", 10, 1, "defensepower,25", ""},
{id = 8, name = "Dragon's Plate", level = 30, type = 1, attribute_1 = "defensepower,50", attribute_2 = ""}, {"Dragon's Plate", 30, 1, "defensepower,50", ""},
{id = 9, name = "Dragon's Claw", level = 10, type = 1, attribute_1 = "attackpower,25", attribute_2 = ""}, {"Dragon's Claw", 10, 1, "attackpower,25", ""},
{id = 10, name = "Dragon's Tooth", level = 30, type = 1, attribute_1 = "attackpower,50", attribute_2 = ""}, {"Dragon's Tooth", 30, 1, "attackpower,50", ""},
{id = 11, name = "Dragon's Tear", level = 35, type = 1, attribute_1 = "strength,50", attribute_2 = ""}, {"Dragon's Tear", 35, 1, "strength,50", ""},
{id = 12, name = "Dragon's Wing", level = 35, type = 1, attribute_1 = "dexterity,50", attribute_2 = ""}, {"Dragon's Wing", 35, 1, "dexterity,50", ""},
{id = 13, name = "Demon's Sin", level = 35, type = 1, attribute_1 = "maxhp,-50", attribute_2 = "strength,50"}, {"Demon's Sin", 35, 1, "maxhp,-50", "strength,50"},
{id = 14, name = "Demon's Fall", level = 35, type = 1, attribute_1 = "maxmp,-50", attribute_2 = "strength,50"}, {"Demon's Fall", 35, 1, "maxmp,-50", "strength,50"},
{id = 15, name = "Demon's Lie", level = 45, type = 1, attribute_1 = "maxhp,-100", attribute_2 = "strength,100"}, {"Demon's Lie", 45, 1, "maxhp,-100", "strength,100"},
{id = 16, name = "Demon's Hate", level = 45, type = 1, attribute_1 = "maxmp,-100", attribute_2 = "strength,100"}, {"Demon's Hate", 45, 1, "maxmp,-100", "strength,100"},
{id = 17, name = "Angel's Joy", level = 25, type = 1, attribute_1 = "maxhp,25", attribute_2 = "strength,25"}, {"Angel's Joy", 25, 1, "maxhp,25", "strength,25"},
{id = 18, name = "Angel's Rise", level = 30, type = 1, attribute_1 = "maxhp,50", attribute_2 = "strength,50"}, {"Angel's Rise", 30, 1, "maxhp,50", "strength,50"},
{id = 19, name = "Angel's Truth", level = 35, type = 1, attribute_1 = "maxhp,75", attribute_2 = "strength,75"}, {"Angel's Truth", 35, 1, "maxhp,75", "strength,75"},
{id = 20, name = "Angel's Love", level = 40, type = 1, attribute_1 = "maxhp,100", attribute_2 = "strength,100"}, {"Angel's Love", 40, 1, "maxhp,100", "strength,100"},
{id = 21, name = "Seraph's Joy", level = 25, type = 1, attribute_1 = "maxmp,25", attribute_2 = "dexterity,25"}, {"Seraph's Joy", 25, 1, "maxmp,25", "dexterity,25"},
{id = 22, name = "Seraph's Rise", level = 30, type = 1, attribute_1 = "maxmp,50", attribute_2 = "dexterity,50"}, {"Seraph's Rise", 30, 1, "maxmp,50", "dexterity,50"},
{id = 23, name = "Seraph's Truth", level = 35, type = 1, attribute_1 = "maxmp,75", attribute_2 = "dexterity,75"}, {"Seraph's Truth", 35, 1, "maxmp,75", "dexterity,75"},
{id = 24, name = "Seraph's Love", level = 40, type = 1, attribute_1 = "maxmp,100", attribute_2 = "dexterity,100"}, {"Seraph's Love", 40, 1, "maxmp,100", "dexterity,100"},
{id = 25, name = "Ruby", level = 50, type = 1, attribute_1 = "maxhp,150", attribute_2 = ""}, {"Ruby", 50, 1, "maxhp,150", ""},
{id = 26, name = "Pearl", level = 50, type = 1, attribute_1 = "maxmp,150", attribute_2 = ""}, {"Pearl", 50, 1, "maxmp,150", ""},
{id = 27, name = "Emerald", level = 50, type = 1, attribute_1 = "strength,150", attribute_2 = ""}, {"Emerald", 50, 1, "strength,150", ""},
{id = 28, name = "Topaz", level = 50, type = 1, attribute_1 = "dexterity,150", attribute_2 = ""}, {"Topaz", 50, 1, "dexterity,150", ""},
{id = 29, name = "Obsidian", level = 50, type = 1, attribute_1 = "attackpower,150", attribute_2 = ""}, {"Obsidian", 50, 1, "attackpower,150", ""},
{id = 30, name = "Diamond", level = 50, type = 1, attribute_1 = "defensepower,150", attribute_2 = ""}, {"Diamond", 50, 1, "defensepower,150", ""},
{id = 31, name = "Memory Drop", level = 5, type = 1, attribute_1 = "expbonus,10", attribute_2 = ""}, {"Memory Drop", 5, 1, "expbonus,10", ""},
{id = 32, name = "Fortune Drop", level = 5, type = 1, attribute_1 = "goldbonus,10", attribute_2 = ""} {"Fortune Drop", 5, 1, "goldbonus,10", ""}
} }, {"name", "level", "type", "attribute_1", "attribute_2"})
db:insert("drops", drops_data)
db:create_table("forum", db:create_table("forum",
"id INTEGER PRIMARY KEY AUTOINCREMENT", "id INTEGER PRIMARY KEY AUTOINCREMENT",
@ -105,43 +103,41 @@ db:create_table("items",
"special TEXT NOT NULL DEFAULT ''" "special TEXT NOT NULL DEFAULT ''"
) )
local items_data = { db:insert("items", {
{id = 1, type = 1, name = "Stick", value = 10, attribute = 2, special = ""}, {1, "Stick", 10, 2, ""},
{id = 2, type = 1, name = "Branch", value = 30, attribute = 4, special = ""}, {1, "Branch", 30, 4, ""},
{id = 3, type = 1, name = "Club", value = 40, attribute = 5, special = ""}, {1, "Club", 40, 5, ""},
{id = 4, type = 1, name = "Dagger", value = 90, attribute = 8, special = ""}, {1, "Dagger", 90, 8, ""},
{id = 5, type = 1, name = "Hatchet", value = 150, attribute = 12, special = ""}, {1, "Hatchet", 150, 12, ""},
{id = 6, type = 1, name = "Axe", value = 200, attribute = 16, special = ""}, {1, "Axe", 200, 16, ""},
{id = 7, type = 1, name = "Brand", value = 300, attribute = 25, special = ""}, {1, "Brand", 300, 25, ""},
{id = 8, type = 1, name = "Poleaxe", value = 500, attribute = 35, special = ""}, {1, "Poleaxe", 500, 35, ""},
{id = 9, type = 1, name = "Broadsword", value = 800, attribute = 45, special = ""}, {1, "Broadsword", 800, 45, ""},
{id = 10, type = 1, name = "Battle Axe", value = 1200, attribute = 50, special = ""}, {1, "Battle Axe", 1200, 50, ""},
{id = 11, type = 1, name = "Claymore", value = 2000, attribute = 60, special = ""}, {1, "Claymore", 2000, 60, ""},
{id = 12, type = 1, name = "Dark Axe", value = 3000, attribute = 100, special = "expbonus,-5"}, {1, "Dark Axe", 3000, 100, "expbonus,-5"},
{id = 13, type = 1, name = "Dark Sword", value = 4500, attribute = 125, special = "expbonus,-10"}, {1, "Dark Sword", 4500, 125, "expbonus,-10"},
{id = 14, type = 1, name = "Bright Sword", value = 6000, attribute = 100, special = "expbonus,10"}, {1, "Bright Sword", 6000, 100, "expbonus,10"},
{id = 15, type = 1, name = "Magic Sword", value = 10000, attribute = 150, special = "maxmp,50"}, {1, "Magic Sword", 10000, 150, "maxmp,50"},
{id = 16, type = 1, name = "Destiny Blade", value = 50000, attribute = 250, special = "strength,50"}, {1, "Destiny Blade", 50000, 250, "strength,50"},
{id = 17, type = 2, name = "Skivvies", value = 25, attribute = 2, special = "goldbonus,10"}, {2, "Skivvies", 25, 2, "goldbonus,10"},
{id = 18, type = 2, name = "Clothes", value = 50, attribute = 5, special = ""}, {2, "Clothes", 50, 5, ""},
{id = 19, type = 2, name = "Leather Armor", value = 75, attribute = 10, special = ""}, {2, "Leather Armor", 75, 10, ""},
{id = 20, type = 2, name = "Hard Leather Armor", value = 150, attribute = 25, special = ""}, {2, "Hard Leather Armor", 150, 25, ""},
{id = 21, type = 2, name = "Chain Mail", value = 300, attribute = 30, special = ""}, {2, "Chain Mail", 300, 30, ""},
{id = 22, type = 2, name = "Bronze Plate", value = 900, attribute = 50, special = ""}, {2, "Bronze Plate", 900, 50, ""},
{id = 23, type = 2, name = "Iron Plate", value = 2000, attribute = 100, special = ""}, {2, "Iron Plate", 2000, 100, ""},
{id = 24, type = 2, name = "Magic Armor", value = 4000, attribute = 125, special = "maxmp,50"}, {2, "Magic Armor", 4000, 125, "maxmp,50"},
{id = 25, type = 2, name = "Dark Armor", value = 5000, attribute = 150, special = "expbonus,-10"}, {2, "Dark Armor", 5000, 150, "expbonus,-10"},
{id = 26, type = 2, name = "Bright Armor", value = 10000, attribute = 175, special = "expbonus,10"}, {2, "Bright Armor", 10000, 175, "expbonus,10"},
{id = 27, type = 2, name = "Destiny Raiment", value = 50000, attribute = 200, special = "dexterity,50"}, {2, "Destiny Raiment", 50000, 200, "dexterity,50"},
{id = 28, type = 3, name = "Reed Shield", value = 50, attribute = 2, special = ""}, {3, "Reed Shield", 50, 2, ""},
{id = 29, type = 3, name = "Buckler", value = 100, attribute = 4, special = ""}, {3, "Buckler", 100, 4, ""},
{id = 30, type = 3, name = "Small Shield", value = 500, attribute = 10, special = ""}, {3, "Small Shield", 500, 10, ""},
{id = 31, type = 3, name = "Large Shield", value = 2500, attribute = 30, special = ""}, {3, "Large Shield", 2500, 30, ""},
{id = 32, type = 3, name = "Silver Shield", value = 10000, attribute = 60, special = ""}, {3, "Silver Shield", 10000, 60, ""},
{id = 33, type = 3, name = "Destiny Aegis", value = 25000, attribute = 100, special = "maxhp,50"} {3, "Destiny Aegis", 25000, 100, "maxhp,50"}
} }, {"type", "name", "value", "attribute", "special"})
db:insert("items", items_data)
db:create_table("monsters", db:create_table("monsters",
"id INTEGER PRIMARY KEY AUTOINCREMENT", "id INTEGER PRIMARY KEY AUTOINCREMENT",
@ -155,6 +151,160 @@ db:create_table("monsters",
"immune INTEGER NOT NULL DEFAULT 0" "immune INTEGER NOT NULL DEFAULT 0"
) )
db:insert("monsters", {
{"Blue Slime", 4, 3, 1, 1, 1, 1, 0},
{"Red Slime", 6, 5, 1, 1, 2, 1, 0},
{"Critter", 6, 5, 2, 1, 4, 2, 0},
{"Creature", 10, 8, 2, 2, 4, 2, 0},
{"Shadow", 10, 9, 3, 2, 6, 2, 1},
{"Drake", 11, 10, 3, 2, 8, 3, 0},
{"Shade", 12, 10, 3, 3, 10, 3, 1},
{"Drakelor", 14, 12, 4, 3, 10, 3, 0},
{"Silver Slime", 15, 100, 200, 30, 15, 1000, 2},
{"Scamp", 16, 13, 5, 4, 15, 5, 0},
{"Raven", 16, 13, 5, 4, 18, 6, 0},
{"Scorpion", 18, 14, 6, 5, 20, 7, 0},
{"Illusion", 20, 15, 6, 5, 20, 7, 1},
{"Nightshade", 22, 16, 6, 6, 24, 8, 0},
{"Drakemal", 22, 18, 7, 6, 24, 8, 0},
{"Shadow Raven", 24, 18, 7, 6, 26, 9, 1},
{"Ghost", 24, 20, 8, 6, 28, 9, 0},
{"Frost Raven", 26, 20, 8, 7, 30, 10, 0},
{"Rogue Scorpion", 28, 22, 9, 7, 32, 11, 0},
{"Ghoul", 29, 24, 9, 7, 34, 11, 0},
{"Magician", 30, 24, 10, 8, 36, 12, 0},
{"Rogue", 30, 25, 12, 8, 40, 13, 0},
{"Drakefin", 32, 26, 12, 8, 40, 13, 0},
{"Shimmer", 32, 26, 14, 8, 45, 15, 1},
{"Fire Raven", 34, 28, 14, 9, 45, 15, 0},
{"Dybbuk", 34, 28, 14, 9, 50, 17, 0},
{"Knave", 36, 30, 15, 9, 52, 17, 0},
{"Goblin", 36, 30, 15, 10, 54, 18, 0},
{"Skeleton", 38, 30, 18, 10, 58, 19, 0},
{"Dark Slime", 38, 32, 18, 10, 62, 21, 0},
{"Silver Scorpion", 30, 160, 350, 40, 63, 2000, 2},
{"Mirage", 40, 32, 20, 11, 64, 21, 1},
{"Sorceror", 41, 33, 22, 11, 68, 23, 0},
{"Imp", 42, 34, 22, 12, 70, 23, 0},
{"Nymph", 43, 35, 22, 12, 70, 23, 0},
{"Scoundrel", 43, 35, 22, 12, 75, 25, 0},
{"Megaskeleton", 44, 36, 24, 13, 78, 26, 0},
{"Grey Wolf", 44, 36, 24, 13, 82, 27, 0},
{"Phantom", 46, 38, 24, 14, 85, 28, 1},
{"Specter", 46, 38, 24, 14, 90, 30, 0},
{"Dark Scorpion", 48, 40, 26, 15, 95, 32, 1},
{"Warlock", 48, 40, 26, 15, 100, 33, 1},
{"Orc", 49, 42, 28, 15, 104, 35, 0},
{"Sylph", 49, 42, 28, 15, 106, 35, 0},
{"Wraith", 50, 45, 30, 16, 108, 36, 0},
{"Hellion", 50, 45, 30, 16, 110, 37, 0},
{"Bandit", 52, 45, 30, 16, 114, 38, 0},
{"Ultraskeleton", 52, 46, 32, 16, 116, 39, 0},
{"Dark Wolf", 54, 47, 36, 17, 120, 40, 1},
{"Troll", 56, 48, 36, 17, 120, 40, 0},
{"Werewolf", 56, 48, 38, 17, 124, 41, 0},
{"Hellcat", 58, 50, 38, 18, 128, 43, 0},
{"Spirit", 58, 50, 38, 18, 132, 44, 0},
{"Nisse", 60, 52, 40, 19, 132, 44, 0},
{"Dawk", 60, 54, 40, 19, 136, 45, 0},
{"Figment", 64, 55, 42, 19, 140, 47, 1},
{"Hellhound", 66, 56, 44, 20, 140, 47, 0},
{"Wizard", 66, 56, 44, 20, 144, 48, 0},
{"Uruk", 68, 58, 44, 20, 146, 49, 0},
{"Siren", 68, 400, 800, 50, 10000, 50, 2},
{"Megawraith", 70, 60, 46, 21, 155, 52, 0},
{"Dawkin", 70, 60, 46, 21, 155, 52, 0},
{"Grey Bear", 70, 62, 48, 21, 160, 53, 0},
{"Haunt", 72, 62, 48, 22, 160, 53, 0},
{"Hellbeast", 74, 64, 50, 22, 165, 55, 0},
{"Fear", 76, 66, 52, 23, 165, 55, 0},
{"Beast", 76, 66, 52, 23, 170, 57, 0},
{"Ogre", 78, 68, 54, 23, 170, 57, 0},
{"Dark Bear", 80, 70, 56, 24, 175, 58, 1},
{"Fire", 80, 72, 56, 24, 175, 58, 0},
{"Polgergeist", 84, 74, 58, 25, 180, 60, 0},
{"Fright", 86, 76, 58, 25, 180, 60, 0},
{"Lycan", 88, 78, 60, 25, 185, 62, 0},
{"Terra Elemental", 88, 80, 62, 25, 185, 62, 1},
{"Necromancer", 90, 80, 62, 26, 190, 63, 0},
{"Ultrawraith", 90, 82, 64, 26, 190, 63, 0},
{"Dawkor", 92, 82, 64, 26, 195, 65, 0},
{"Werebear", 92, 84, 65, 26, 195, 65, 0},
{"Brute", 94, 84, 65, 27, 200, 67, 0},
{"Large Beast", 96, 88, 66, 27, 200, 67, 0},
{"Horror", 96, 88, 68, 27, 210, 70, 0},
{"Flame", 100, 90, 70, 28, 210, 70, 0},
{"Lycanthor", 100, 90, 70, 28, 210, 70, 0},
{"Wyrm", 100, 92, 72, 28, 220, 73, 0},
{"Aero Elemental", 104, 94, 74, 29, 220, 73, 1},
{"Dawkare", 106, 96, 76, 29, 220, 73, 0},
{"Large Brute", 108, 98, 78, 29, 230, 77, 0},
{"Frost Wyrm", 110, 100, 80, 30, 230, 77, 0},
{"Knight", 110, 102, 80, 30, 240, 80, 0},
{"Lycanthra", 112, 104, 82, 30, 240, 80, 0},
{"Terror", 115, 108, 84, 31, 250, 83, 0},
{"Blaze", 118, 108, 84, 31, 250, 83, 0},
{"Aqua Elemental", 120, 110, 90, 31, 260, 87, 1},
{"Fire Wyrm", 120, 110, 90, 32, 260, 87, 0},
{"Lesser Wyvern", 122, 110, 92, 32, 270, 90, 0},
{"Doomer", 124, 112, 92, 32, 270, 90, 0},
{"Armor Knight", 130, 115, 95, 33, 280, 93, 0},
{"Wyvern", 134, 120, 95, 33, 290, 97, 0},
{"Nightmare", 138, 125, 100, 33, 300, 100, 0},
{"Fira Elemental", 140, 125, 100, 34, 310, 103, 1},
{"Megadoomer", 140, 128, 105, 34, 320, 107, 0},
{"Greater Wyvern", 145, 130, 105, 34, 335, 112, 0},
{"Advocate", 148, 132, 108, 35, 350, 117, 0},
{"Strong Knight", 150, 135, 110, 35, 365, 122, 0},
{"Liche", 150, 135, 110, 35, 380, 127, 0},
{"Ultradoomer", 155, 140, 115, 36, 395, 132, 0},
{"Fanatic", 160, 140, 115, 36, 410, 137, 0},
{"Green Dragon", 160, 140, 115, 36, 425, 142, 0},
{"Fiend", 160, 145, 120, 37, 445, 148, 0},
{"Greatest Wyvern", 162, 150, 120, 37, 465, 155, 0},
{"Lesser Devil", 164, 150, 120, 37, 485, 162, 0},
{"Liche Master", 168, 155, 125, 38, 505, 168, 0},
{"Zealot", 168, 155, 125, 38, 530, 177, 0},
{"Serafiend", 170, 155, 125, 38, 555, 185, 0},
{"Pale Knight", 175, 160, 130, 39, 580, 193, 0},
{"Blue Dragon", 180, 160, 130, 39, 605, 202, 0},
{"Obsessive", 180, 160, 135, 40, 630, 210, 0},
{"Devil", 184, 164, 135, 40, 666, 222, 0},
{"Liche Prince", 190, 168, 138, 40, 660, 220, 0},
{"Cherufiend", 195, 170, 140, 41, 690, 230, 0},
{"Red Dragon", 200, 180, 145, 41, 720, 240, 0},
{"Greater Devil", 200, 180, 145, 41, 750, 250, 0},
{"Renegade", 205, 185, 150, 42, 780, 260, 0},
{"Archfiend", 210, 190, 150, 42, 810, 270, 0},
{"Liche Lord", 210, 190, 155, 42, 850, 283, 0},
{"Greatest Devil", 215, 195, 160, 43, 890, 297, 0},
{"Dark Knight", 220, 200, 160, 43, 930, 310, 0},
{"Giant", 220, 200, 165, 43, 970, 323, 0},
{"Shadow Dragon", 225, 200, 170, 44, 1010, 337, 0},
{"Liche King", 225, 205, 170, 44, 1050, 350, 0},
{"Incubus", 230, 205, 175, 44, 1100, 367, 1},
{"Traitor", 230, 205, 175, 45, 1150, 383, 0},
{"Demon", 240, 210, 180, 45, 1200, 400, 0},
{"Dark Dragon", 245, 215, 180, 45, 1250, 417, 1},
{"Insurgent", 250, 220, 190, 46, 1300, 433, 0},
{"Leviathan", 255, 225, 190, 46, 1350, 450, 0},
{"Grey Daemon", 260, 230, 190, 46, 1400, 467, 0},
{"Succubus", 265, 240, 200, 47, 1460, 487, 1},
{"Demon Prince", 270, 240, 200, 47, 1520, 507, 0},
{"Black Dragon", 275, 250, 205, 47, 1580, 527, 1},
{"Nihilist", 280, 250, 205, 47, 1640, 547, 0},
{"Behemoth", 285, 260, 210, 48, 1700, 567, 0},
{"Demagogue", 290, 260, 210, 48, 1760, 587, 0},
{"Demon Lord", 300, 270, 220, 48, 1820, 607, 0},
{"Red Daemon", 310, 280, 230, 48, 1880, 627, 0},
{"Colossus", 320, 300, 240, 49, 1940, 647, 0},
{"Demon King", 330, 300, 250, 49, 2000, 667, 0},
{"Dark Daemon", 340, 320, 260, 49, 2200, 733, 1},
{"Titan", 360, 340, 270, 50, 2400, 800, 0},
{"Black Daemon", 400, 400, 280, 50, 3000, 1000, 1},
{"Lucifuge", 600, 600, 400, 50, 10000, 10000, 2}
}, {"name", "max_hp", "max_dmg", "armor", "level", "max_exp", "max_gold", "immune"})
db:create_table("news", db:create_table("news",
"id INTEGER PRIMARY KEY AUTOINCREMENT", "id INTEGER PRIMARY KEY AUTOINCREMENT",
"author TEXT NOT NULL DEFAULT 'Guild Master'", "author TEXT NOT NULL DEFAULT 'Guild Master'",
@ -172,29 +322,27 @@ db:create_table("spells",
"type INTEGER NOT NULL DEFAULT 0" "type INTEGER NOT NULL DEFAULT 0"
) )
local spells_data = { db:insert("spells", {
{id = 1, name = "Heal", mp = 5, power = 10, type = 1}, {"Heal", 5, 10, 1},
{id = 2, name = "Revive", mp = 10, power = 25, type = 1}, {"Revive", 10, 25, 1},
{id = 3, name = "Life", mp = 25, power = 50, type = 1}, {"Life", 25, 50, 1},
{id = 4, name = "Breath", mp = 50, power = 100, type = 1}, {"Breath", 50, 100, 1},
{id = 5, name = "Gaia", mp = 75, power = 150, type = 1}, {"Gaia", 75, 150, 1},
{id = 6, name = "Hurt", mp = 5, power = 15, type = 2}, {"Hurt", 5, 15, 2},
{id = 7, name = "Pain", mp = 12, power = 35, type = 2}, {"Pain", 12, 35, 2},
{id = 8, name = "Maim", mp = 25, power = 70, type = 2}, {"Maim", 25, 70, 2},
{id = 9, name = "Rend", mp = 40, power = 100, type = 2}, {"Rend", 40, 100, 2},
{id = 10, name = "Chaos", mp = 50, power = 130, type = 2}, {"Chaos", 50, 130, 2},
{id = 11, name = "Sleep", mp = 10, power = 5, type = 3}, {"Sleep", 10, 5, 3},
{id = 12, name = "Dream", mp = 30, power = 9, type = 3}, {"Dream", 30, 9, 3},
{id = 13, name = "Nightmare", mp = 60, power = 13, type = 3}, {"Nightmare", 60, 13, 3},
{id = 14, name = "Craze", mp = 10, power = 10, type = 4}, {"Craze", 10, 10, 4},
{id = 15, name = "Rage", mp = 20, power = 25, type = 4}, {"Rage", 20, 25, 4},
{id = 16, name = "Fury", mp = 30, power = 50, type = 4}, {"Fury", 30, 50, 4},
{id = 17, name = "Ward", mp = 10, power = 10, type = 5}, {"Ward", 10, 10, 5},
{id = 18, name = "Fend", mp = 20, power = 25, type = 5}, {"Fend", 20, 25, 5},
{id = 19, name = "Barrier", mp = 30, power = 50, type = 5} {"Barrier", 30, 50, 5}
} }, {"name", "mp", "power", "type"})
db:insert("spells", spells_data)
db:create_table("towns", db:create_table("towns",
"id INTEGER PRIMARY KEY AUTOINCREMENT", "id INTEGER PRIMARY KEY AUTOINCREMENT",
@ -207,67 +355,69 @@ db:create_table("towns",
"items TEXT NOT NULL" "items TEXT NOT NULL"
) )
local towns_data = { db:insert("towns", {
{id = 1, name = "Midworld", lat = 0, lon = 0, inn_price = 5, map_price = 0, tp_cost = 0, items = "1,2,3,17,18,19,28,29"}, {"Midworld", 0, 0, 5, 0, 0, "1,2,3,17,18,19,28,29"},
{id = 2, name = "Roma", lat = 30, lon = 30, inn_price = 10, map_price = 25, tp_cost = 5, items = "2,3,4,18,19,29"}, {"Roma", 30, 30, 10, 25, 5, "2,3,4,18,19,29"},
{id = 3, name = "Bris", lat = 70, lon = -70, inn_price = 25, map_price = 50, tp_cost = 15, items = "2,3,4,5,18,19,20,29.30"}, {"Bris", 70, -70, 25, 50, 15, "2,3,4,5,18,19,20,29.30"},
{id = 4, name = "Kalle", lat = -100, lon = 100, inn_price = 40, map_price = 100, tp_cost = 30, items = "5,6,8,10,12,21,22,23,29,30"}, {"Kalle", -100, 100, 40, 100, 30, "5,6,8,10,12,21,22,23,29,30"},
{id = 5, name = "Narcissa", lat = -130, lon = -130, inn_price = 60, map_price = 500, tp_cost = 50, items = "4,7,9,11,13,21,22,23,29,30,31"}, {"Narcissa", -130, -130, 60, 500, 50, "4,7,9,11,13,21,22,23,29,30,31"},
{id = 6, name = "Hambry", lat = 170, lon = 170, inn_price = 90, map_price = 1000, tp_cost = 80, items = "10,11,12,13,14,23,24,30,31"}, {"Hambry", 170, 170, 90, 1000, 80, "10,11,12,13,14,23,24,30,31"},
{id = 7, name = "Gilead", lat = 200, lon = -200, inn_price = 100, map_price = 3000, tp_cost = 110, items = "12,13,14,15,24,25,26,32"}, {"Gilead", 200, -200, 100, 3000, 110, "12,13,14,15,24,25,26,32"},
{id = 8, name = "Endworld", lat = -250, lon = -250, inn_price = 125, map_price = 9000, tp_cost = 160, items = "16,27,33"} {"Endworld", -250, -250, 125, 9000, 160, "16,27,33"}
} }, {"name", "lat", "lon", "inn_price", "map_price", "tp_cost", "items"})
db:insert("towns", towns_data)
db:create_table("users", db:create_table("users",
"id INTEGER PRIMARY KEY AUTOINCREMENT", "id INTEGER PRIMARY KEY AUTOINCREMENT",
"username TEXT NOT NULL", "username TEXT NOT NULL",
"password TEXT NOT NULL", "password TEXT NOT NULL",
"email TEXT NOT NULL", "email TEXT NOT NULL",
"verify TEXT NOT NULL default ''", "verified INTEGER NOT NULL DEFAULT 0",
"regdate datetime NOT NULL default CURRENT_TIMESTAMP", "verify_token TEXT NOT NULL DEFAULT ''",
"onlinetime datetime NOT NULL default CURRENT_TIMESTAMP", "registered DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP",
"authlevel INTEGER NOT NULL default 0", "last_login DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP",
"latitude INTEGER NOT NULL default 0", "auth INTEGER NOT NULL DEFAULT 0",
"longitude INTEGER NOT NULL default 0", "lat INTEGER NOT NULL DEFAULT 0",
"charclass INTEGER NOT NULL default 0", "lon INTEGER NOT NULL DEFAULT 0",
"currentaction TEXT NOT NULL default 'In Town'", "class_id INTEGER NOT NULL DEFAULT 1",
"currentfight INTEGER NOT NULL default 0", "currently TEXT NOT NULL DEFAULT 'In Town'",
"currentmonster INTEGER NOT NULL default 0", "fighting INTEGER NOT NULL default 0",
"currentmonsterhp INTEGER NOT NULL default 0", "monster_id INTEGER NOT NULL default 0",
"currentmonstersleep INTEGER NOT NULL default 0", "monster_hp INTEGER NOT NULL default 0",
"currentmonsterimmune INTEGER NOT NULL default 0", "monster_sleep INTEGER NOT NULL default 0",
"currentuberdamage INTEGER NOT NULL default 0", "monster_immune INTEGER NOT NULL default 0",
"currentuberdefense INTEGER NOT NULL default 0", "uber_dmg INTEGER NOT NULL default 0",
"currenthp INTEGER NOT NULL default 15", "uber_def INTEGER NOT NULL default 0",
"currentmp INTEGER NOT NULL default 0", "hp INTEGER NOT NULL default 15",
"currenttp INTEGER NOT NULL default 10", "mp INTEGER NOT NULL default 0",
"maxhp INTEGER NOT NULL default 15", "tp INTEGER NOT NULL default 10",
"maxmp INTEGER NOT NULL default 0", "max_hp INTEGER NOT NULL default 15",
"maxtp INTEGER NOT NULL default 10", "max_mp INTEGER NOT NULL default 0",
"level INTEGER NOT NULL default 1", "max_tp INTEGER NOT NULL default 10",
"gold INTEGER NOT NULL default 100", "level INTEGER NOT NULL default 1",
"experience INTEGER NOT NULL default 0", "gold INTEGER NOT NULL default 100",
"goldbonus INTEGER NOT NULL default 0", "exp INTEGER NOT NULL default 0",
"expbonus INTEGER NOT NULL default 0", "gold_bonus INTEGER NOT NULL default 0",
"strength INTEGER NOT NULL default 5", "exp_bonus INTEGER NOT NULL default 0",
"dexterity INTEGER NOT NULL default 5", "strength INTEGER NOT NULL default 5",
"attackpower INTEGER NOT NULL default 5", "dexterity INTEGER NOT NULL default 5",
"defensepower INTEGER NOT NULL default 5", "attack INTEGER NOT NULL default 5",
"weaponid INTEGER NOT NULL default 0", "defense INTEGER NOT NULL default 5",
"armorid INTEGER NOT NULL default 0", "weapon_id INTEGER NOT NULL default 0",
"shieldid INTEGER NOT NULL default 0", "armor_id INTEGER NOT NULL default 0",
"slot1id INTEGER NOT NULL default 0", "shield_id INTEGER NOT NULL default 0",
"slot2id INTEGER NOT NULL default 0", "slot_1_id INTEGER NOT NULL default 0",
"slot3id INTEGER NOT NULL default 0", "slot_2_id INTEGER NOT NULL default 0",
"weaponname TEXT NOT NULL default 'None'", "slot_3_id INTEGER NOT NULL default 0",
"armorname TEXT NOT NULL default 'None'", "weapon_name TEXT NOT NULL default 'None'",
"shieldname TEXT NOT NULL default 'None'", "armor_name TEXT NOT NULL default 'None'",
"slot1name TEXT NOT NULL default 'None'", "shield_name TEXT NOT NULL default 'None'",
"slot2name TEXT NOT NULL default 'None'", "slot_1_name TEXT NOT NULL default 'None'",
"slot3name TEXT NOT NULL default 'None'", "slot_2_name TEXT NOT NULL default 'None'",
"dropcode INTEGER NOT NULL default 0", "slot_3_name TEXT NOT NULL default 'None'",
"spells TEXT NOT NULL default '0'", "drop_code INTEGER NOT NULL default 0",
"towns TEXT NOT NULL default '0'" "spells TEXT NOT NULL default '0'",
) "maps TEXT NOT NULL default '0'"
)
local time = math.roundto(microtime(true) - start, 4)
return "Complete! Took "..time.." seconds!"