- Moved `parseItemProps` function to `core/utils.ts` for reuse across modules. - Updated various services to import and utilize the centralized `parseItemProps`. - Introduced new utility functions for handling consumable cooldowns and healing calculations. - Enhanced mob management with a new repository system, allowing for dynamic loading and validation of mob definitions from the database. - Added admin functions for creating, updating, listing, and deleting mobs, with validation using Zod. - Implemented tests for mob management functionalities. - Improved error handling and logging throughout the mob and consumable services.
51 lines
2.3 KiB
JSON
51 lines
2.3 KiB
JSON
{
|
|
"name": "amayo",
|
|
"version": "2.0.22",
|
|
"description": "",
|
|
"main": "src/main.ts",
|
|
"scripts": {
|
|
"db:push": "prisma db push",
|
|
"db:pull": "prisma db pull",
|
|
"start": "npx tsx watch src/main.ts",
|
|
"script:guild": "node scripts/setupGuildCacheCollection.js",
|
|
"dev": "npx tsx watch src/main.ts",
|
|
"dev:light": "CACHE_MESSAGES_LIMIT=25 CACHE_MEMBERS_LIMIT=50 SWEEP_MESSAGES_LIFETIME_SECONDS=600 SWEEP_MESSAGES_INTERVAL_SECONDS=240 npx tsx watch --clear-screen=false src/main.ts",
|
|
"dev:mem": "MEMORY_LOG_INTERVAL_SECONDS=120 npx tsx watch src/main.ts",
|
|
"dev:ultra": "CACHE_MESSAGES_LIMIT=10 CACHE_MEMBERS_LIMIT=25 SWEEP_MESSAGES_LIFETIME_SECONDS=300 SWEEP_MESSAGES_INTERVAL_SECONDS=120 MEMORY_LOG_INTERVAL_SECONDS=60 ENABLE_MEMORY_OPTIMIZER=true NODE_OPTIONS='--max-old-space-size=256 --expose-gc' npx tsx watch --clear-screen=false src/main.ts",
|
|
"dev:optimized": "MEMORY_LOG_INTERVAL_SECONDS=300 ENABLE_MEMORY_OPTIMIZER=true NODE_OPTIONS='--expose-gc' npx tsx watch src/main.ts",
|
|
"start:prod": "NODE_ENV=production NODE_OPTIONS=--max-old-space-size=384 npx tsx src/main.ts",
|
|
"start:prod-optimized": "NODE_ENV=production ENABLE_MEMORY_OPTIMIZER=true NODE_OPTIONS='--max-old-space-size=512 --expose-gc' npx tsx src/main.ts",
|
|
"tsc": "tsc",
|
|
"typecheck": "tsc --noEmit",
|
|
"seed:minigames": "npx tsx src/game/minigames/seed.ts",
|
|
"test:mobs": "npx tsx scripts/testMobData.ts",
|
|
"start:optimize-relic": "NODE_ENV=production ENABLE_MEMORY_OPTIMIZER=true NEW_RELIC_APP_NAME=amayo NEW_RELIC_LICENSE_KEY= NODE_OPTIONS='--max-old-space-size=512 --expose-gc' npx tsx --experimental-loader=newrelic/esm-loader.mjs src/main.ts"
|
|
},
|
|
"keywords": [],
|
|
"author": "",
|
|
"license": "MIT",
|
|
"type": "commonjs",
|
|
"dependencies": {
|
|
"@google/genai": "1.20.0",
|
|
"@google/generative-ai": "0.24.1",
|
|
"@prisma/client": "6.16.2",
|
|
"appwrite": "20.1.0",
|
|
"chrono-node": "2.9.0",
|
|
"discord-api-types": "0.38.26",
|
|
"discord.js": "15.0.0-dev.1759363313-f510b5ffa",
|
|
"ejs": "^3.1.10",
|
|
"newrelic": "13.4.0",
|
|
"node-appwrite": "19.1.0",
|
|
"pino": "9.13.0",
|
|
"zod": "4.25.1",
|
|
"prisma": "6.16.2",
|
|
"redis": "5.8.2"
|
|
},
|
|
"devDependencies": {
|
|
"@types/ejs": "^3.1.5",
|
|
"@types/node": "24.3.1",
|
|
"ts-node": "10.9.2",
|
|
"typescript": "5.9.2"
|
|
}
|
|
}
|