Devil HunterDevil Docs
Payment In Game

การติดตั้ง 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):

  1. ดาวน์โหลด nvm-setup.exe จาก หน้า Releases
  2. ติดตั้งแล้วเปิด terminal ใหม่ (PowerShell หรือ CMD)
  3. ติดตั้ง Node.js LTS:
nvm install lts
nvm use lts

Mac/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 แบบทั่วไปผ่านตัวติดตั้งทางการ:

  1. ไปที่ nodejs.org/en/download
  2. เลือกเวอร์ชัน LTS (อย่าเลือก Current)
  3. ดาวน์โหลดและติดตั้งตามขั้นตอนปกติ

วิธีนี้ติดตั้งเพียงเวอร์ชันเดียว ไม่สามารถสลับเวอร์ชันได้ภายหลัง

ตรวจสอบการติดตั้ง

หลังติดตั้งเสร็จ ปิดและเปิด 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

สคริปต์จะ:

  1. ตรวจสอบ Node.js
  2. ถ้ายังไม่มี .env จะให้กรอกข้อมูลที่จำเป็น
  3. ติดตั้ง node_modules อัตโนมัติ
  4. เริ่มระบบ

สร้างไฟล์ .env

คัดลอกไฟล์ตัวอย่าง:

cp .env.example .env

แก้ไขค่าต่าง ๆ ในไฟล์ .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:

config_main.lua
License = "YOUR_LICENSE_KEY_HERE",

ใน devil_marketaddons/.env ใส่ค่า เดียวกันเป๊ะ:

.env
DEVIL_API_SECRET=YOUR_LICENSE_KEY_HERE

ตั้งค่า Discord Bot (ถ้าใช้)

  1. ไปที่ Discord Developer Portal
  2. สร้าง Application ใหม่
  3. ไปที่ Bot → Reset Token → คัดลอก Token
  4. ใส่ใน DISCORD_BOT_TOKEN ในไฟล์ .env
  5. เปิดใช้ Intent ที่จำเป็น:
    • Presence Intent
    • Server Members Intent
    • Message Content Intent
  6. เชิญบอทเข้าเซิร์ฟเวอร์ด้วย OAuth2 URL Generator:
    • Scopes: bot, applications.commands
    • Bot Permissions: Send Messages, Embed Links, Read Messages, Read Message History

เริ่มระบบ

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

On this page