Case / Jail Policy#
กติกาของคดีและคุกอยู่ที่ config/customer/03_cases_jail.lua ส่วนรายการข้อมูลถูกแยกออกเพื่อหาและแก้ง่าย
Limits / Case policy#
Config.Cases เป็นกติกาการใช้งานแฟ้มคดี ส่วน Config.General.Limits เป็นขีดจำกัดที่ลูกค้าปรับได้
Config.General.Limits— ตั้งเพดาน Custom Fine, Custom Jail, ความยาวข้อความ และเวลาจัดการ Draft ค้างCases.RequireOnDuty— บังคับเข้าเวรก่อนแก้/ส่งคดีหรือจัดการผู้ช่วยAllowCustomCharges— อนุญาตข้อหาที่กรอกเองAllowChargeMultipliers— เปิดการใช้ข้อหาตัวคูณAllowCaseAssistants/AssistantMaxDistance— เปิดผู้ช่วยคดีและกำหนดระยะAllowAssistantEditsAfterSubmit— อนุญาตแก้รายชื่อผู้ช่วยหลังส่งแฟ้มAutoEvidenceCharges.Enabled— เปิดสร้างข้อหาอัตโนมัติจากของกลางที่ผูกไว้
Charges — config/data/charges.lua#
{
category = 'normal',
name = 'จกปูน',
fine = 5000,
jail = 10,
maxFine = 100000,
maxJail = 60
}maxCountจำกัดจำนวน x ต่อคดีmaxFineจำกัดค่าปรับรวมของข้อหานั้นmaxJailจำกัดเวลาเจลรวมของข้อหานั้น-1หมายถึงไม่กำหนดเพดานจากค่านี้jailLocationตั้งคุกเริ่มต้นของข้อหา และallowOtherJailเลือกว่าจะให้เจ้าหน้าที่เปลี่ยนคุกได้หรือไม่
หมวดข้อหา#
Config.ChargeCategories ตั้ง code, ชื่อ, สี, isRed, noJailCard และลำดับแสดงผล โดย category ของแต่ละข้อหาต้องอ้าง code ที่มีอยู่
ข้อหาหลบหนีออกจากคุก#
Config.Charges.EscapeCase ตั้งหมวด ชื่อที่รองรับ {caseId}, ค่าปรับ, ตัวคูณเวลา และเลือก timeSource='remaining' หรือ 'original' เพื่อกำหนดฐานเวลาที่ใช้กับคดีหลบหนี
ตัวคูณคดี#
fineMultiplier = 10 -- คูณค่าปรับข้อหาอื่น x10
jailMultiplier = 2 -- คูณเวลาเจลข้อหาอื่น x2Auto Charge จากของกลาง#
{
category = 'normal', name = 'จกปูน', fine = 5000, jail = 10,
evidenceItems = {
{ item = 'cement', count = 1 },
{ item = 'cement_box', count = 10 },
{ item = 'cement_pack', count = '1-10' }
}
}หลังบันทึกคดี ระบบใช้หลักฐานเท่าที่ข้อหาต้องใช้และเก็บเศษไว้สำหรับครั้งต่อไป
Jail Locations — config/data/jail_locations.lua#
เพิ่ม/แก้สถานที่คุมขังที่ Config.Jail.DefaultLocations ในไฟล์นี้ และสามารถใช้ POLICE+ ช่วยสร้างตำแหน่งแล้ว Copy Config มาวางได้
| Field | ผลลัพธ์ |
|---|---|
key / name | key เป็นรหัสอ้างอิงถาวรของสถานที่คุมขัง (ควรคงเดิมเมื่อมีผู้ต้องขังใช้งานอยู่) และ name คือชื่อที่แสดง |
coords | ศูนย์กลางพื้นที่คุมขัง |
death | จุดที่ใช้เมื่อผู้ต้องขังต้องกลับเข้าพื้นที่หลังเสียชีวิตตามโหมดที่เปิด |
exit | จุดออกเมื่อพ้นโทษ |
radius | ขนาดพื้นที่คุมขัง |
isDefault | กำหนดสถานที่เริ่มต้น |
Jail Card#
Config.Jail.Card.Items ตั้ง item, label และจำนวนนาทีที่ลดได้ต่อบัตร; MenuEnabled เปิดเมนูและ MenuControl เลือกปุ่มใช้งาน
Escape / GPS Cutter#
เปิด/ปิด Feature ที่ config/customer/00_setup.lua และตั้งรายละเอียด Escape / Alert / GPS Cutter ที่ config/customer/03_cases_jail.lua
การแจ้งเตือนหลบหนี#
- เมื่อผู้ต้องขังออกนอกพื้นที่ ระบบจะแจ้งตำรวจตามกติกาที่เปิดไว้
Alerts.RepeatIntervalMsตั้งช่วงเวลาแจ้งซ้ำ และPlannedRepeatCountตั้งจำนวนครั้งIgnoreOfficerTypeFilterเลือกว่าจะให้เหตุหลบหนีข้ามตัวกรอง Dispatch ส่วนตัวของตำรวจหรือไม่DetailsFormatรองรับ{name},{source},{caseId},{location}InmateNotifyตั้งการแจ้งผู้ต้องขัง ส่วนOfficerNotifyตั้ง Toast ฝั่งตำรวจInitial / Repeatเลือก key จากConfig.Dispatch.Typesสำหรับเหตุครั้งแรก/ครั้งถัดไป- การแจ้งแต่ละครั้งใช้ตำแหน่งล่าสุดที่ระบบรองรับในเวลานั้น
- เมื่อตัด GPS สำเร็จ การแจ้งตำแหน่งครั้งถัดไปจะหยุดตามกติกา GPS Cutter
- หลัง restart สถานะการหลบหนีและการแจ้งเตือนที่เกี่ยวข้องยังทำงานต่อได้
GpsCutter = {
Enabled = true,
Item = 'gps_cutter',
Amount = 1,
ConsumeOnUse = true
}ConsumeOnUse=true— ตัด GPS สำเร็จแล้วหัก itemConsumeOnUse=false— ยังต้องมี item ตาม Amount แต่ไม่หักเมื่อใช้สำเร็จ- GPS Cutter ตัดเฉพาะการติดตาม/แจ้งตำแหน่งหลบหนี เวลาคุมขังยังนับต่อเหมือนเดิม
- ถ้าเรียกผ่าน Inventory ภายนอก ให้เรียก Export ของ nX Police โดยไม่หัก item เองล่วงหน้า เพื่อให้
ConsumeOnUseทำงานตาม Config
Inventory ภายนอกสามารถเรียก exports['nX_police']:CutJailGps(source) ฝั่ง Server เพื่อใช้งาน GPS Cutter ตาม Config เดียวกันได้
Death Return#
Config.Jail.DeathReturn ตั้งว่าจะจัดการผู้ต้องขังที่เสียชีวิตหรือไม่ โดย ImmediateOnDeath ใช้จุด death ของคุกทันทีตามโหมดที่ตั้ง
| Mode | ผลลัพธ์ |
|---|---|
warp_only | พากลับจุดคุกแต่คงสถานะเสียชีวิตไว้ให้ระบบหมอ/เกิดของเซิร์ฟเวอร์จัดการต่อ |
warp_and_revive | พากลับจุดคุกและชุบตาม ReviveHealth; เลือก ClearBloodOnRevive ได้ |
Jail Announcement#
Config.Jail.Announcement.DurationMs ตั้งเวลาที่ประกาศคุกแสดง และ MaxCharges จำกัดจำนวนข้อหาที่แสดงในประกาศ
Case Screenshot#
Config.Jail.CaseScreenshot ตั้ง CaptureBeforeJail, รูปแบบ Encoding และ Quality; ต้องเปิด Feature CaseScreenshot และตั้ง Screenshot integration ให้พร้อมก่อนใช้งาน