programming-game
Version:
The client for programming game, an mmorpg that you interact with entirely through code.
1,094 lines (1,093 loc) • 31.7 kB
JavaScript
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.items = void 0;
var spells_1 = require("./spells");
var baseAttacksPerSecond = {
dagger: 1.6,
oneHandedAxe: 1.2,
oneHandedMace: 1.1,
oneHandedSword: 1.4,
bow: 0.7,
staff: 0.8,
crossbow: 0.5,
twoHandedAxe: 0.9,
twoHandedMace: 0.8,
twoHandedSword: 1,
fellingAxe: 0.9,
pickaxe: 0.9,
};
var generateArmor = function (id, name, type, defense, tier) {
var cost = tier * 2000;
return {
id: id,
name: name,
type: type,
weight: 1000,
buyFromVendorPrice: cost,
sellToVendorPrice: Math.floor(cost / 10) || 1,
stats: {
defense: defense,
},
};
};
var createCraftingIngredient = function (id, name, weight, buyPrice, deprecated) {
if (deprecated === void 0) { deprecated = false; }
var def = {
id: id,
name: name,
weight: weight,
type: "trash",
buyFromVendorPrice: buyPrice,
sellToVendorPrice: Math.floor(buyPrice * 0.1) || 1,
};
if (deprecated) {
def.deprecated = true;
}
return def;
};
var createArmorGenerator = function (opts) {
return Object.entries(opts.items).reduce(function (acc, _a) {
var key = _a[0], val = _a[1];
acc[key] = generateArmor(key, val.name, val.type, opts.baseDefense, opts.tier);
return acc;
}, {});
};
var calcSellPrice = function (buyPrice) {
return Math.floor(buyPrice * 0.1) || 1;
};
var createSpellStone = function (spell, name, cost) {
return {
id: spell,
type: "trash",
name: "".concat(name, " Spell Stone"),
weight: 5000,
buyFromVendorPrice: cost,
sellToVendorPrice: calcSellPrice(cost),
};
};
var glassVial = createCraftingIngredient("glassVial", "Glass Vial", 100, 100);
var eyeJelly = createCraftingIngredient("eyeJelly", "Eye Jelly", 0.25, 100);
var pinewoodArrowShaftWeight = 35;
var featherWeight = 0.1;
var stoneArrowHeadWeight = 7;
/**
* @deprecated
* You should use the heartbeat.items value instead as it will always contain the latest item definitions.
*/
exports.items = __assign(__assign(__assign(__assign(__assign({
//#region crafting
arrowShaft: createCraftingIngredient("arrowShaft", "Arrow Shaft", 300, 3, true), feather: createCraftingIngredient("feather", "Feather", featherWeight, 2), snakeFangs: createCraftingIngredient("snakeFangs", "Snake Fangs", 7, 10), woodLog: createCraftingIngredient("woodLog", "Wood Log", 5000, 18, true), bitOfWood: createCraftingIngredient("bitOfWood", "Bit of Wood", 500, 2, true), stoneArrowHead: createCraftingIngredient("stoneArrowHead", "Stone Arrow Head", stoneArrowHeadWeight, 3), pinewoodLog: createCraftingIngredient("pinewoodLog", "Pinewood Log", 5000, 18), pinewoodBits: createCraftingIngredient("pinewoodBits", "Pinewood Bits", 500, 2), oakLog: createCraftingIngredient("oakLog", "Oak Log", 5000, 18), oakBits: createCraftingIngredient("oakBits", "Oak Bits", 500, 2), pinewoodArrowShaft: createCraftingIngredient("pinewoodArrowShaft", "Pinewood Arrow Shaft", pinewoodArrowShaftWeight, 3), ratPelt: createCraftingIngredient("ratPelt", "Rat Pelt", 100, 100), copperNeedle: createCraftingIngredient("copperNeedle", "Copper Needle", 0.5, 500), coarseThread: createCraftingIngredient("coarseThread", "Coarse Thread", 0.5, 100), eyeJelly: eyeJelly, snakeSkinLeather: createCraftingIngredient("snakeSkinLeather", "Snakeskin Leather", 1000, 1000), glassVial: glassVial, minorHealthPotion: {
id: "minorHealthPotion",
name: "Minor Health Potion",
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
weight: glassVial.weight + eyeJelly.weight,
type: "usable",
}, medicatedBandage: {
id: "medicatedBandage",
name: "Medicated Bandage",
buyFromVendorPrice: 500,
sellToVendorPrice: 50,
weight: 0.1,
type: "usable",
}, digesta: createCraftingIngredient("digesta", "Digesta", 100, 100), leatherStrips: createCraftingIngredient("leatherStrips", "Leather Strips", 100, 100), lightLeather: createCraftingIngredient("lightLeather", "Light Leather", 1000, 1000),
// cloths
// tier 1
tatteredCottonCloth: createCraftingIngredient("tatteredCottonCloth", "Tattered Cotton Cloth", 100, 100), cottonCloth: createCraftingIngredient("cottonCloth", "Cotton Cloth", 1000, 1000), boltOfCottonCloth: createCraftingIngredient("boltOfCottonCloth", "Bolt of Cotton Cloth", 10000, 3000), tatteredLinenCloth: createCraftingIngredient("tatteredLinenCloth", "Tattered Linen Cloth", 100, 300), linenCloth: createCraftingIngredient("linenCloth", "Linen Cloth", 1000, 1000), boltOfLinenCloth: createCraftingIngredient("boltOfLinenCloth", "Bolt of Linen Cloth", 10000, 3000), tatteredWoolCloth: createCraftingIngredient("tatteredWoolCloth", "Tattered Wool Cloth", 100, 200), woolCloth: createCraftingIngredient("woolCloth", "Wool Cloth", 1000, 2000), boltOfWoolCloth: createCraftingIngredient("boltOfWoolCloth", "Bolt of Wool Cloth", 10000, 3000), snakeSkin: {
id: "snakeSkin",
name: "Snake Skin",
type: "trash",
weight: 100,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
}, stone: {
id: "stone",
name: "Stone",
type: "trash",
weight: 1000,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
}, flint: {
id: "flint",
name: "Flint",
type: "trash",
weight: 1000,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
}, stoneCutterTools: {
id: "stoneCutterTools",
name: "Stone Cutting Tools",
type: "trash",
weight: 5000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, campfireKit: {
id: "campfireKit",
name: "Campfire Kit",
type: "trash",
weight: 3000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, anvil: {
id: "anvil",
name: "Anvil",
type: "trash",
weight: 10000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, stoneCarvingKnife: {
id: "stoneCarvingKnife",
name: "Stone Carving Knife",
type: "trash",
weight: 500,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
}, mortarAndPestle: {
id: "mortarAndPestle",
name: "Mortar and Pestle",
type: "trash",
weight: 500,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
}, furnace: {
id: "furnace",
name: "Furnace",
type: "trash",
weight: 10000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, copperIngot: {
id: "copperIngot",
name: "Copper Ingot",
type: "trash",
weight: 3000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
}, tinIngot: {
id: "tinIngot",
name: "Tin Ingot",
type: "trash",
weight: 3000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
}, bronzeIngot: {
id: "bronzeIngot",
name: "Bronze Ingot",
type: "trash",
weight: 3000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
}, chunkOfCopper: {
id: "chunkOfCopper",
name: "Chunk of Copper",
type: "trash",
weight: 1000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, copperOre: {
id: "copperOre",
name: "Copper Ore",
type: "trash",
weight: 1000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, tinOre: {
id: "tinOre",
name: "Tin Ore",
type: "trash",
weight: 1000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, woodPommel: {
id: "woodPommel",
name: "Wood Pommel",
type: "trash",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
deprecated: true,
}, pinewoodPommel: {
id: "pinewoodPommel",
name: "Pinewood Pommel",
type: "trash",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
}, pinewoodAxeHandle: {
id: "pinewoodAxeHandle",
name: "Pinewood Axe Handle",
type: "trash",
weight: 2000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
},
//#endregion crafting
//#region consumables
ratMeat: {
id: "ratMeat",
name: "Rat Meat",
type: "food",
weight: 400,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
calories: 200,
}, snakeMeat: {
id: "snakeMeat",
name: "Snake Meat",
type: "food",
weight: 1000,
calories: 500,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
}, edibleSlime: {
id: "edibleSlime",
name: "Edible Slime",
type: "food",
weight: 100,
calories: 3000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
}, chickenMeat: {
id: "chickenMeat",
name: "Chicken Meat",
type: "food",
weight: 1000,
calories: 500,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
},
//#endregion consumables
//#region ammo
woodenArrow: {
id: "woodenArrow",
type: "ammo",
ammoType: "arrow",
name: "Wooden Arrow",
weight: 1,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
damage: 1,
stats: {
attack: 1,
},
deprecated: true,
}, pinewoodArrow: {
id: "pinewoodArrow",
type: "ammo",
ammoType: "arrow",
name: "Pinewood Arrow",
// combined weight of the arrow shaft, feather, and stone arrow head
weight: pinewoodArrowShaftWeight + 1 + stoneArrowHeadWeight,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
damage: 1,
stats: {
attack: 1,
},
}, woodenBolt: {
id: "woodenBolt",
type: "ammo",
ammoType: "bolt",
name: "Wooden Bolt",
weight: 1,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
damage: 1,
stats: {
attack: 1,
},
deprecated: true,
},
//#endregion ammo
//#region random
snakeVenom: {
id: "snakeVenom",
name: "Snake Venom",
type: "trash",
weight: 10,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
}, snakeEyes: {
id: "snakeEyes",
name: "Snake Eyes",
type: "trash",
weight: 10,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
},
//#endregion random
//#region weapons
//#region staffs
woodenStaff: {
id: "woodenStaff",
name: "Wooden Staff",
type: "staff",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 1,
stats: {},
spellCount: 1,
deprecated: true,
attacksPerSecond: baseAttacksPerSecond["staff"],
}, copperStaff: {
id: "copperStaff",
name: "Copper Staff",
type: "staff",
attacksPerSecond: baseAttacksPerSecond["staff"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 2,
stats: {},
spellCount: 1,
deprecated: true,
}, ironStaff: {
id: "ironStaff",
name: "Iron Staff",
type: "staff",
attacksPerSecond: baseAttacksPerSecond["staff"],
weight: 1000,
buyFromVendorPrice: 300,
sellToVendorPrice: 30,
damage: 3,
stats: {},
spellCount: 1,
deprecated: true,
}, steelStaff: {
id: "steelStaff",
name: "Steel Staff",
type: "staff",
attacksPerSecond: baseAttacksPerSecond["staff"],
weight: 1000,
buyFromVendorPrice: 400,
sellToVendorPrice: 40,
damage: 4,
stats: {},
spellCount: 1,
deprecated: true,
}, goldStaff: {
id: "goldStaff",
name: "Gold Staff",
type: "staff",
attacksPerSecond: baseAttacksPerSecond["staff"],
weight: 1000,
buyFromVendorPrice: 500,
sellToVendorPrice: 50,
damage: 5,
stats: {},
spellCount: 1,
deprecated: true,
}, platinumStaff: {
id: "platinumStaff",
name: "Platinum Staff",
type: "staff",
attacksPerSecond: baseAttacksPerSecond["staff"],
weight: 1000,
buyFromVendorPrice: 600,
sellToVendorPrice: 60,
damage: 6,
stats: {},
spellCount: 1,
deprecated: true,
},
//#endregion staffs
//#region wooden
woodenDagger: {
id: "woodenDagger",
name: "Wooden Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 1,
stats: {},
spellCount: 0,
deprecated: true,
}, woodenSword: {
id: "woodenSword",
name: "Wooden Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 2,
stats: {},
spellCount: 0,
deprecated: true,
}, pinewoodSword: {
id: "pinewoodSword",
name: "Pinewood Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 1,
stats: {},
spellCount: 0,
},
//#endregion wooden
//#region stone weapons
stoneFellingAxe: {
id: "stoneFellingAxe",
name: "Stone Felling Axe",
type: "fellingAxe",
attacksPerSecond: baseAttacksPerSecond["fellingAxe"],
weight: 2000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 2.5,
stats: {},
spellCount: 0,
}, copperFellingAxe: {
id: "copperFellingAxe",
name: "Copper Felling Axe",
type: "fellingAxe",
attacksPerSecond: baseAttacksPerSecond["fellingAxe"],
weight: 2000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
damage: 3.5,
stats: {},
spellCount: 0,
}, stonePickaxe: {
id: "stonePickaxe",
name: "Stone Pickaxe",
type: "pickaxe",
attacksPerSecond: baseAttacksPerSecond["pickaxe"],
weight: 2000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
damage: 2.5,
stats: {},
spellCount: 0,
}, copperPickaxe: {
id: "copperPickaxe",
name: "Copper Pickaxe",
type: "pickaxe",
attacksPerSecond: baseAttacksPerSecond["pickaxe"],
weight: 2000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
damage: 3.5,
stats: {},
spellCount: 0,
},
//#endregion stone weapons
/**
* copper weapons
*/
copperDagger: {
id: "copperDagger",
name: "Copper Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 500,
buyFromVendorPrice: 2500,
sellToVendorPrice: 250,
damage: 2,
stats: {},
spellCount: 0,
}, copperSword: {
id: "copperSword",
name: "Copper Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
damage: 3,
stats: {},
spellCount: 0,
}, copperGreatSword: {
id: "copperGreatSword",
name: "Copper Greatsword",
type: "twoHandedSword",
attacksPerSecond: baseAttacksPerSecond["twoHandedSword"],
weight: 2000,
buyFromVendorPrice: 5000,
sellToVendorPrice: 500,
damage: 5,
stats: {},
spellCount: 0,
},
/**
* iron weapons
*/
ironDagger: {
id: "ironDagger",
name: "Iron Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 1000,
buyFromVendorPrice: 300,
sellToVendorPrice: 30,
damage: 3,
stats: {},
spellCount: 0,
}, ironSword: {
id: "ironSword",
name: "Iron Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 4,
stats: {},
spellCount: 0,
},
/**
* steel weapons
*/
steelDagger: {
id: "steelDagger",
name: "Steel Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 1000,
buyFromVendorPrice: 300,
sellToVendorPrice: 30,
damage: 4,
stats: {},
spellCount: 0,
}, steelSword: {
id: "steelSword",
name: "Steel Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 5,
stats: {},
spellCount: 0,
},
/**
* gold weapons
*/
goldDagger: {
id: "goldDagger",
name: "Gold Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 5,
stats: {},
spellCount: 0,
}, goldSword: {
id: "goldSword",
name: "Gold Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 6,
stats: {},
spellCount: 0,
},
/**
* platinum weapons
*/
platinumDagger: {
id: "platinumDagger",
name: "Platinum Dagger",
type: "dagger",
attacksPerSecond: baseAttacksPerSecond["dagger"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 6,
stats: {},
spellCount: 0,
deprecated: true,
}, platinumSword: {
id: "platinumSword",
name: "Platinum Sword",
type: "oneHandedSword",
attacksPerSecond: baseAttacksPerSecond["oneHandedSword"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 7,
stats: {},
spellCount: 0,
deprecated: true,
},
/**
* Shields
*/
woodenShield: {
id: "woodenShield",
name: "Wooden Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 1,
},
spellCount: 0,
deprecated: true,
}, pinewoodShield: {
id: "pinewoodShield",
name: "Pinewood Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 1,
},
spellCount: 0,
}, copperShield: {
id: "copperShield",
name: "Copper Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 4000,
sellToVendorPrice: 400,
stats: {
defense: 2,
},
spellCount: 0,
}, ironShield: {
id: "ironShield",
name: "Iron Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 3,
},
spellCount: 0,
}, steelShield: {
id: "steelShield",
name: "Steel Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 4,
},
spellCount: 0,
}, goldShield: {
id: "goldShield",
name: "Gold Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 5,
},
spellCount: 0,
}, platinumShield: {
id: "platinumShield",
name: "Platinum Shield",
type: "shield",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {
defense: 6,
},
spellCount: 0,
deprecated: true,
},
/**
* Bows
*/
woodenBow: {
id: "woodenBow",
name: "Wooden Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
damage: 0,
stats: {},
deprecated: true,
spellCount: 0,
}, pinewoodBow: {
id: "pinewoodBow",
name: "Pinewood Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 3000,
sellToVendorPrice: 300,
damage: 0,
stats: {},
spellCount: 0,
}, copperBow: {
id: "copperBow",
name: "Copper Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 1,
stats: {},
deprecated: true,
spellCount: 0,
}, ironBow: {
id: "ironBow",
name: "Iron Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 2,
stats: {},
deprecated: true,
spellCount: 0,
}, steelBow: {
id: "steelBow",
name: "Steel Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 3,
stats: {},
deprecated: true,
spellCount: 0,
}, goldBow: {
id: "goldBow",
name: "Gold Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 4,
stats: {},
deprecated: true,
spellCount: 0,
}, platinumBow: {
id: "platinumBow",
name: "Platinum Bow",
type: "bow",
attacksPerSecond: baseAttacksPerSecond["bow"],
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
damage: 5,
stats: {},
deprecated: true,
spellCount: 0,
},
/**
* crossbows
*/
woodenCrossbow: {
id: "woodenCrossbow",
name: "Wooden Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 0,
stats: {},
deprecated: true,
spellCount: 0,
}, pinewoodCrossbow: {
id: "pinewoodCrossbow",
name: "Pinewood Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 0,
stats: {},
deprecated: true,
spellCount: 0,
}, copperCrossbow: {
id: "copperCrossbow",
name: "Copper Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 1,
stats: {},
deprecated: true,
spellCount: 0,
}, ironCrossbow: {
id: "ironCrossbow",
name: "Iron Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 2,
stats: {},
deprecated: true,
spellCount: 0,
}, steelCrossbow: {
id: "steelCrossbow",
name: "Steel Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 3,
stats: {},
deprecated: true,
spellCount: 0,
}, goldCrossbow: {
id: "goldCrossbow",
name: "Gold Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 4,
stats: {},
deprecated: true,
spellCount: 0,
}, platinumCrossbow: {
id: "platinumCrossbow",
name: "Platinum Crossbow",
type: "crossbow",
attacksPerSecond: baseAttacksPerSecond["crossbow"],
weight: 1000,
buyFromVendorPrice: 200,
sellToVendorPrice: 20,
damage: 5,
stats: {},
deprecated: true,
spellCount: 0,
}, copperCoin: {
id: "copperCoin",
name: "Copper Coin",
type: "trash",
weight: 1,
buyFromVendorPrice: 1,
sellToVendorPrice: 1,
},
//#region grimmoires
basicGrimmoire: {
id: "basicGrimmoire",
name: "Basic Grimmoire",
type: "grimmoire",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {},
spells: {},
spellCount: 3,
}, adeptsGrimmoire: {
id: "adeptsGrimmoire",
name: "Adept's Grimmoire",
type: "grimmoire",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {},
spells: {},
spellCount: 6,
}, mastersGrimmoire: {
id: "mastersGrimmoire",
name: "Master's Grimmoire",
type: "grimmoire",
weight: 1000,
buyFromVendorPrice: 100,
sellToVendorPrice: 10,
stats: {},
spells: {},
spellCount: 9,
}, cheatersGrimmoire: {
id: "cheatersGrimmoire",
name: "Cheater's Grimmoire",
type: "grimmoire",
weight: 1000,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
stats: {},
spells: Object.keys(spells_1.spellMap).reduce(function (acc, spell) {
acc[spell] = true;
return acc;
}, {}),
deprecated: true,
spellCount: 100,
},
//#endregion grimmoires
//#endregion weapons
minorManaRing: {
id: "minorManaRing",
name: "Minor Mana Ring",
type: "ring",
weight: 1000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
stats: {
maxHp: -10,
maxMp: 10,
},
}, minorManaAmulet: {
id: "minorManaAmulet",
name: "Minor Mana Amulet",
type: "amulet",
weight: 1000,
buyFromVendorPrice: 1000,
sellToVendorPrice: 100,
stats: {
maxHp: -10,
maxMp: 10,
},
}, cheatersManaRing: {
id: "cheatersManaRing",
name: "Cheater's Mana Ring",
type: "ring",
weight: 1000,
buyFromVendorPrice: 10,
sellToVendorPrice: 1,
stats: {
maxMp: 100,
mpRegen: 10,
},
deprecated: true,
} }, createArmorGenerator({
baseDefense: 1,
baseWeight: 1000,
items: {
cottonHood: {
name: "Cotton Hood",
type: "helm",
},
cottonPants: {
name: "Cotton Pants",
type: "legs",
},
cottonShirt: {
name: "Cotton Shirt",
type: "chest",
},
cottonBoots: {
name: "Cotton Boots",
type: "feet",
},
cottonGloves: {
name: "Cotton Gloves",
type: "hands",
},
},
tier: 1,
})), createArmorGenerator({
baseDefense: 2,
baseWeight: 1500,
items: {
lightLeatherHelm: {
name: "Light Leather Cap",
type: "helm",
},
lightLeatherChest: {
name: "Light Leather Tunic",
type: "chest",
},
lightLeatherLegs: {
name: "Light Leather Greaves",
type: "legs",
},
lightLeatherBoots: {
name: "Light Leather Boots",
type: "feet",
},
lightLeatherGloves: {
name: "Light Leather Gloves",
type: "hands",
},
},
tier: 1,
})), createArmorGenerator({
baseDefense: 2,
baseWeight: 1000,
items: {
snakeSkinHelm: {
name: "Snake Skin Cap",
type: "helm",
},
snakeSkinChest: {
name: "Snake Skin Tunic",
type: "chest",
},
snakeSkinLegs: {
name: "Snake Skin Greaves",
type: "legs",
},
snakeSkinBoots: {
name: "Snake Skin Boots",
type: "feet",
},
snakeSkinGloves: {
name: "Snake Skin Gloves",
type: "hands",
},
},
tier: 1,
})), createArmorGenerator({
baseDefense: 3,
baseWeight: 2000,
items: {
copperMailHelm: {
name: "Copper Mail Coif",
type: "helm",
},
copperMailChest: {
name: "Copper Chain Vest",
type: "chest",
},
copperMailLegs: {
name: "Copper Chain Leggings",
type: "legs",
},
copperMailBoots: {
name: "Copper Chainmail Boots",
type: "feet",
},
copperMailGloves: {
name: "Copper Chain Gloves",
type: "hands",
},
},
tier: 1,
})), {
// mail
// ...generateRings(),
//#endregion end armor
//#region spell stones
// tier 1
aid_digestion: createSpellStone("aid_digestion", "Aid Digestion", 2000), regen: createSpellStone("regen", "Regen", 2000), heal: createSpellStone("heal", "Heal", 4000), fireball: createSpellStone("fireball", "Fireball", 7000),
// > tier 1
ballOfIce: createSpellStone("ballOfIce", "Ball of Ice", 8000), chill: createSpellStone("chill", "Chill", 7000), flashFreeze: createSpellStone("flashFreeze", "Flash Freeze", 12000), iceArmor: createSpellStone("iceArmor", "Ice Armor", 8000), icicle: createSpellStone("icicle", "Icicle", 6000) });