การติดตั้ง Devil Market Addons
ติดตั้ง Node.js application และตั้งค่าเริ่มต้น
ข้อกำหนดเบื้องต้น
ก่อนติดตั้ง Devil Market Addons ต้องมี Node.js เวอร์ชัน LTS ติดตั้งอยู่บนเครื่อง
ใช้ Node.js LTS เท่านั้น
ใช้ Node.js เวอร์ชัน LTS (Long Term Support) เท่านั้น เพื่อความเสถียรและรองรับระยะยาว
- Node.js 22 "Jod" — LTS สิ้นสุดเมื่อเมษายน 2026 (ควรอัปเกรด)
- Node.js 24 "Krypton" — เวอร์ชันปัจจุบัน แนะนำสำหรับการติดตั้งใหม่
ดูเวอร์ชัน LTS ล่าสุดได้ที่ Node.js Releases
การติดตั้ง
ติดตั้ง Node.js LTS
เลือกวิธีติดตั้งได้ 2 แบบ — แนะนำให้ใช้ NVM เพื่อให้สลับเวอร์ชันง่ายในอนาคต
NVM (Node Version Manager) ช่วยให้ติดตั้งและสลับเวอร์ชัน Node.js ได้หลายเวอร์ชันบนเครื่องเดียว
Windows ใช้ nvm-windows (เพราะ NVM ตัวหลักรองรับเฉพาะ Mac/Linux):
- ดาวน์โหลด
nvm-setup.exeจาก หน้า Releases - ติดตั้งแล้วเปิด terminal ใหม่ (PowerShell หรือ CMD)
- ติดตั้ง Node.js LTS:
nvm install lts
nvm use ltsMac/Linux ใช้ NVM ตัวหลัก:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
nvm install --lts
nvm use --ltsติดตั้ง Node.js แบบทั่วไปผ่านตัวติดตั้งทางการ:
- ไปที่ nodejs.org/en/download
- เลือกเวอร์ชัน LTS (อย่าเลือก Current)
- ดาวน์โหลดและติดตั้งตามขั้นตอนปกติ
วิธีนี้ติดตั้งเพียงเวอร์ชันเดียว ไม่สามารถสลับเวอร์ชันได้ภายหลัง
ตรวจสอบการติดตั้ง
หลังติดตั้งเสร็จ ปิดและเปิด terminal ใหม่ แล้วตรวจสอบเวอร์ชัน:
node --version
npm --versionควรเห็นเวอร์ชัน Node.js v22.x.x หรือใหม่กว่า (เช่น v24.x.x)
ถ้าคำสั่งไม่พบ (command not found)
แสดงว่า Path ยังไม่ถูกเพิ่มให้ระบบ ให้ปิดและเปิด terminal ใหม่อีกครั้ง หรือรีสตาร์ทเครื่อง หากใช้ NVM ให้รัน nvm use lts ก่อน
ติดตั้ง Dependencies
เข้าไปในโฟลเดอร์ devil_marketaddons:
cd resources/[Devil]/[DevilMarket]/devil_marketaddons
npm installหรือใช้ไฟล์ start.bat ที่มากับสคริปต์ (Windows):
start.batสคริปต์จะ:
- ตรวจสอบ Node.js
- ถ้ายังไม่มี
.envจะให้กรอกข้อมูลที่จำเป็น - ติดตั้ง
node_modulesอัตโนมัติ - เริ่มระบบ
สร้างไฟล์ .env
คัดลอกไฟล์ตัวอย่าง:
cp .env.example .envแก้ไขค่าต่าง ๆ ในไฟล์ .env:
# API Security (ต้องตรงกับ Config_Main.Settings.License)
DEVIL_API_SECRET=your-secret-key-here
# Discord Bot
DISCORD_BOT_TOKEN=your_bot_token
# Database (ถ้าต่างจาก default)
# DB_HOST=localhost
# DB_USER=root
# DB_PASSWORD=
# DB_NAME=esxlegacy_c0e9d5
# Stripe (ถ้าใช้)
STRIPE_SECRET_KEY=sk_test_xxxxx
# Thunder (สำหรับตรวจสลิปอัตโนมัติ)
THUNDER_API_URL=https://api.thunder.in.th/v2/verify/bank
THUNDER_API_KEY=your_thunder_api_key
# TrueMoney Voucher
TW_VOUCHER_PHONE=0812345678
# TMWeasyAPI (PromptPay)
TMWEASY_USERNAME=your_username
TMWEASY_PASSWORD=your_password
TMWEASY_CON_ID=your_connection_id
TMWEASY_API_KEY=your_api_key
TMWEASY_PROMPTPAY_ID=0812345678ดูรายละเอียดเพิ่มเติมใน การตั้งค่า .env
ตั้งค่า API Secret
ค่า DEVIL_API_SECRET ใน .env ต้องตรงกับ Config_Main.Settings.License ใน devil_market/config/config_main.lua
ค่าต้องตรงกันเป๊ะ
ถ้าค่าไม่ตรงกัน API จะปฏิเสธการเชื่อมต่อทั้งหมด ระบบเติมเงินและ sync ข้อมูลจะใช้งานไม่ได้
- ใช้ค่า License ที่มากับสคริปต์ของคุณ (เปิดดูได้ที่
config_main.luaบรรทัดLicense) - คัดลอกค่านั้นไปใส่ใน
DEVIL_API_SECRETใน.env - ห้ามลบหรือแก้ค่า License ใน
config_main.lua— มันผูกกับบัญชีที่ซื้อสคริปต์
ตัวอย่าง:
ใน devil_market/config/config_main.lua:
License = "YOUR_LICENSE_KEY_HERE",ใน devil_marketaddons/.env ใส่ค่า เดียวกันเป๊ะ:
DEVIL_API_SECRET=YOUR_LICENSE_KEY_HEREตั้งค่า Discord Bot (ถ้าใช้)
- ไปที่ Discord Developer Portal
- สร้าง Application ใหม่
- ไปที่ Bot → Reset Token → คัดลอก Token
- ใส่ใน
DISCORD_BOT_TOKENในไฟล์.env - เปิดใช้ Intent ที่จำเป็น:
- Presence Intent
- Server Members Intent
- Message Content Intent
- เชิญบอทเข้าเซิร์ฟเวอร์ด้วย OAuth2 URL Generator:
- Scopes:
bot,applications.commands - Bot Permissions: Send Messages, Embed Links, Read Messages, Read Message History
- Scopes:
เริ่มระบบ
node index.jsหรือ:
start.batการรันแบบ Background
ใช้ PM2 (แนะนำ)
npm install -g pm2
pm2 start index.js --name devil-market-addons
pm2 save
pm2 startupคำสั่งที่ใช้บ่อย:
pm2 status # ดูสถานะ
pm2 logs devil-market-addons # ดู log
pm2 restart devil-market-addons
pm2 stop devil-market-addonsใช้ Windows Task Scheduler
สร้าง Task ใหม่:
- Program:
node.exe - Arguments:
index.js - Start in: path ของ
devil_marketaddons
ตรวจสอบการทำงาน
เมื่อเริ่มสำเร็จ จะเห็นข้อความ:
==========================================================
Devil Market Addons v2.0.0
Starting system...
==========================================================
[1/7] Connecting to database...
[2/7] Starting Discord Bot...
...
==========================================================
System is running
==========================================================ทดสอบ API:
curl http://localhost:30000/api/healthควรได้ผลลัพธ์:
{
"status": "ok",
"uptime": 1234
}แก้ปัญหาเบื้องต้น
ตรวจสอบเมื่อระบบไม่ทำงาน
ฐานข้อมูลเชื่อมต่อไม่ได้
- MySQL/MariaDB ทำงานอยู่หรือไม่
DB_HOST,DB_USER,DB_PASSWORD,DB_NAMEถูกต้อง- Port 3306 เปิดอยู่ (ค่า default)
Discord Bot ไม่ออนไลน์
- Token ถูกต้อง
- บอทถูกเชิญเข้าเซิร์ฟเวอร์แล้ว
- Intent เปิดใช้งานครบ
- Guild ID ใน
config.jsตรงกับเซิร์ฟเวอร์
API ไม่ตอบสนอง
- Port 30000 ไม่ถูกใช้งานโดยโปรแกรมอื่น
- Firewall อนุญาต port 30000
DEVIL_API_SECRETตรงกับฝั่ง FiveM