BUPA Sync Status
BUPA Sync Status
BUPA Sync Status adalah sistem anotasi tubuh untuk roleplay medis. Pemain mengetik /status dan sebuah panel akan terbuka di atas karakter asli mereka — kamera berskrip membingkai ped langsung beserta pakaian, rambut, tato, dan propertinya, serta penanda area yang dapat diklik diproyeksikan dari tulang ped di setiap frame, sehingga penanda tersebut tetap menempel pada tubuh saat berputar.
Mengklik sebuah area memungkinkan Anda menulis catatan singkat. Catatan tersebut kemudian akan digambar di dalam dunia game, melayang tepat di bagian tubuh tersebut, untuk setiap pemain yang berdiri di dekat Anda. Paramedis melakukan hal yang sama pada pasien dengan /status <id>: mereka mendokumentasikan cedera, memilih berapa lama dokumentasi tersebut berlangsung, dan catatan tersebut dikunci agar pasien tidak dapat menghapusnya sebelum masa berlakunya habis.
Buka panel pada diri sendiri dengan /status. Tim medis memeriksa pasien dengan /status 12. /statusclear menghapus semua hal yang diizinkan untuk Anda hapus.
Key features
- Pratinjau karakter langsung — tanpa manekin dan tanpa menggambar boneka. Kamera membingkai ped pemain itu sendiri,
AutoFramemengukurnya dari kepala hingga kaki sehingga setiap model dibingkai dengan benar, dan penanda berada pada koordinat tulang asli. - 16 area tubuh — kepala, leher, dada, perut, lengan atas, lengan bawah, tangan, paha, lutut, dan kaki, masing-masing terikat pada tulang ped GTA dan masing-masing dapat dihapus dari konfigurasi.
- Teks melayang di dalam dunia game — pemain lain membaca anotasi pada tubuh itu sendiri, diberi warna sesuai tingkat keparahan, tanpa networking per-frame: anotasi dikirim melalui statebag pemain.
- Dokumentasi medis — job yang dapat dikonfigurasi (atau ACE) dapat menganotasi pemain lain dalam jarak tertentu, memilih durasi dari daftar prasetel, dan membuat catatan tersebut terkunci dari penghapusan.
- Kedaluwarsa otomatis — server membersihkan anotasi yang kedaluwarsa berdasarkan pengatur waktu dan anotasi tersebut akan hilang di mana saja tanpa perlu pembersihan dari pihak Anda.
- Tipe dan tingkat keparahan — cedera / perban / catatan, ringan / sedang / berat, keduanya didefinisikan sebagai daftar konfigurasi biasa.
- Batasan anti-penyalahgunaan — batas per karakter, satu anotasi per area, batas panjang teks, cooldown penulisan, dan pemeriksaan jarak pada setiap tindakan.
- Discord logging — embed dengan kode warna untuk anotasi yang ditambahkan, dihapus, dan dibersihkan, beserta informasi siapa yang menulis apa, pada siapa, dan berapa lama.
- 10 bahasa melalui sistem locale milik
ox_lib, dengan bahasa Inggris sebagai cadangan.
Frameworks
Framework dideteksi secara otomatis oleh shared/bridge.lua — tidak ada yang perlu disetel:
| Framework | Detected resource |
|---|---|
| QBox | qbx_core |
| QB-Core | qb-core |
| ESX | es_extended |
| Standalone | none — falls back to the license: identifier |
Framework hanya menyediakan dua hal: ID per-karakter yang stabil yang digunakan sebagai kunci database, serta nama job dan tingkat pangkat pemain untuk pemeriksaan izin medis.
How the data flows
- Penulisan dikirim ke server melalui callback
ox_lib. Klien tidak pernah dipercaya — identitas, izin, batasan, durasi, dan sanitasi teks semuanya diproses di sisi server. - Anotasi disimpan di MySQL berdasarkan citizen ID karakter.
- Daftar lengkap karakter didorong ke dalam statebag pemain
bupaStatuses. - Setiap klien di sekitar membaca statebag tersebut dan menggambar teks pada tulang yang cocok.
Dependencies
| Resource | Required | Purpose |
|---|---|---|
ox_lib |
Yes | Callbacks, notifications and the locale system |
oxmysql |
Yes | Storing annotations per character |
Tabel database dibuat secara otomatis saat pertama kali dimulai — tidak ada SQL yang perlu diimpor.