Payment In Game
การเปลี่ยนเบอร์โทรศัพท์
ตั้งค่าราคาและกฎการเปลี่ยนเบอร์โทรศัพท์ (config_phone.lua)
ไฟล์ config_phone.lua กำหนดกฎการเปลี่ยนเบอร์โทรศัพท์ ราคาตามความสวยของเบอร์ และระบบ Cache
การตั้งค่าหลัก
PhoneChangeConfig.Settings = {
Enabled = true,
MinPhoneLength = 4, -- ความยาวขั้นต่ำ
MaxPhoneLength = 6, -- ความยาวสูงสุด
AllowedPrefixes = {}, -- บังคับ prefix (ส่วนใหญ่ปล่อยว่าง)
CheckDuplicate = true, -- ตรวจเบอร์ซ้ำในระบบ
}ระบบ Cache
ลดจำนวน query ฐานข้อมูลตอนตรวจเบอร์ซ้ำ:
CacheSettings = {
Enabled = true,
Duration = 300000, -- อายุ cache 5 นาที (milliseconds)
MaxEntries = 1000 -- จำนวนรายการสูงสุด
}ระบบราคาตามความสวยของเบอร์
ระบบจะวิเคราะห์เบอร์ที่ผู้เล่นเลือก แล้วคำนวณราคาตามความยาวและลวดลาย
ราคาฐาน
PricingSystem = {
BasePrice = {
Point = 100, -- ราคาฐาน
Coin = 0
},
}ตัวคูณตามความยาว
LengthMultipliers = {
[4] = 5.0, -- เบอร์ 4 หลัก แพงที่สุด
[5] = 2.5, -- เบอร์ 5 หลัก
[6] = 1.0 -- เบอร์ 6 หลัก ใช้ราคาฐาน
}ตัวคูณตามลวดลายพิเศษ
SpecialMultipliers = {
AllSame = 3.0, -- เลขเหมือนกันหมด เช่น 1111, 8888
Sequential = 2.5, -- เลขเรียง เช่น 1234, 5678
ReverseSequential = 2.5, -- เลขเรียงย้อน เช่น 4321, 8765
Pattern = 2.0, -- รูปแบบซ้ำ เช่น 1212, 3434
Lucky = 1.8, -- เลขมงคล 8/9 เยอะ
ManyRepeats = 1.5 -- เลขซ้ำจำนวนมาก
}ตัวอย่างการคำนวณราคา
สูตร: ราคา = BasePrice × LengthMultiplier × SpecialMultiplier
| เบอร์ | ลวดลาย | ความยาว | ลวดลาย | ราคา |
|---|---|---|---|---|
123456 | ธรรมดา 6 หลัก | 1.0 | 1.0 | 100 Point |
12345 | ธรรมดา 5 หลัก | 2.5 | 1.0 | 250 Point |
1234 | ธรรมดา 4 หลัก | 5.0 | 1.0 | 500 Point |
1111 | เลขเหมือนกัน 4 หลัก | 5.0 | 3.0 | 1,500 Point |
1234 | เลขเรียง 4 หลัก | 5.0 | 2.5 | 1,250 Point |
4321 | เลขเรียงย้อน 4 หลัก | 5.0 | 2.5 | 1,250 Point |
1212 | รูปแบบซ้ำ 4 หลัก | 5.0 | 2.0 | 1,000 Point |
8899 | เลขมงคล 4 หลัก | 5.0 | 1.8 | 900 Point |
999888 | เลขมงคล 6 หลัก | 1.0 | 1.8 | 180 Point |
ข้อความแจ้งเตือน
Messages = {
InvalidLength = "เบอร์โทรศัพท์ต้องมี X-Y หลัก",
InvalidPrefix = "รูปแบบเบอร์โทรศัพท์ไม่ถูกต้อง",
InvalidFormat = "เบอร์โทรศัพท์ต้องเป็นตัวเลขเท่านั้น",
AlreadyExists = "เบอร์โทรศัพท์นี้มีผู้ใช้งานแล้ว",
NoChange = "คุณไม่ได้เปลี่ยนแปลงเบอร์โทรศัพท์",
Success = "เปลี่ยนเบอร์โทรศัพท์เรียบร้อยแล้ว!",
InsufficientFunds = "Point ไม่เพียงพอสำหรับการเปลี่ยนเบอร์นี้"
}การปรับแต่งราคา
ลดราคาเบอร์ทั่วไป
BasePrice = { Point = 50, Coin = 0 }เพิ่มราคาเบอร์สั้น
LengthMultipliers = {
[4] = 10.0,
[5] = 5.0,
[6] = 2.0
}เพิ่มความพิเศษเบอร์มงคล
SpecialMultipliers = {
AllSame = 5.0,
Sequential = 4.0,
Lucky = 3.0
}หมายเหตุ
รายละเอียดระบบ
- เบอร์ที่ตรวจไม่เจอลวดลายพิเศษจะใช้ราคาตามความยาวอย่างเดียว
- ระบบ Cache จะเก็บผลตรวจเบอร์ซ้ำไว้ชั่วคราว ลดการ query ฐานข้อมูล
- ถ้า
CheckDuplicate = falseระบบจะไม่ตรวจว่าเบอร์ซ้ำในระบบหรือไม่ (อาจมีคนใช้เบอร์เดียวกันได้)