Resolución de problemas
Troubleshooting
/status 12 says I am not allowed
The medic check runs on the server and fails for one of four reasons:
- Your job is not in
Config.Permissions.EditOthers, or the list is empty (which disables examining other players entirely). - Your job grade is below
Config.Permissions.MinGrade. - You are further from the target than
Config.Permissions.MaxDistance(default 3 m) — that returns "You are too far away." - You expected the ACE route but
Config.Permissions.UseAceis stillfalse.
"You cannot remove it before it expires"
That annotation was placed on you by a medic and Config.Permissions.LockStaffNotes is on. It will disappear on its own when the timer ends. An authorised job can take it off early only if Config.Permissions.StaffCanRemoveLocked is true.
Clear all and /statusclear behave the same way — they only remove what the caller is allowed to remove, and keep the locked entries.
The markers do not sit on the body
The markers are projected from bone coordinates every frame, so they should follow the ped exactly.
offsetinConfig.BodyPartsis deliberately not applied to the markers — it exists to lift the floating in-world text off the body. If you applied it to the markers, every dot would drift upward.- To nudge one region's marker, add the optional
marker = { x = 0.0, y = 0.0, z = 0.04 }to that body part only. - If markers look laggy on a busy server,
Config.Camera.HotspotRefreshis your dial — it is a refresh interval in milliseconds, so a higher number is cheaper and less smooth.
The character is cropped, tiny or off-centre
Leave Config.Camera.AutoFrame = true and adjust these instead:
Fill— how much of the screen height the body occupies. Lower it if the character feels cramped.VerticalNudge— positive moves the character down the screen, negative moves it up.SideOffset— how far the ped is pushed left so the panel does not cover it.Fov— lower for less distortion, higher to fit more of the body without moving the camera back.
Distance and Height are only read when AutoFrame is false.
Text clips into the clothing
Raise the z value of that body part's offset. That offset moves the in-world text only and does not affect the panel.
Nobody else can see my annotation
- They must be within
Config.Text.ViewDistance(6 m by default). - If
Config.Text.OnlyWhileAimingis on, they only see it while holding the aim key. - Annotations travel through the
bupaStatusesplayer statebag. If a player joined mid-session and sees nothing at all, check thatoxmysqlis running and that the server console shows no database errors.
"Character data is not loaded yet"
The server could not resolve a citizen id for that player. On QBox, QB-Core and ESX this means the character has not finished loading; the resource reloads a player's annotations on QBCore:Server:PlayerLoaded and esx:playerLoaded.
Annotations come back after a restart
That is intended — they are stored in MySQL against the character's citizen id and reloaded on start. Expired ones are deleted by the sweep thread, which runs every Config.Duration.CleanupInterval seconds (minimum 10).
"Slow down a moment"
Config.Limits.WriteCooldown (default 2 seconds) is the anti-spam gap between writes. Set it to 0 to disable it.
Other limits you may be hitting
| Message | Cause |
|---|---|
| Annotation limit reached | Config.Limits.MaxPerPlayer (default 4) |
| That body region already has an annotation | Config.Limits.OnePerBodyPart is true |
| Please write a valid annotation | The text was empty after trimming and stripping <, >, ~ |
| Invalid body region | The body part id is not in Config.BodyParts |
Turn on Config.Debug while you are configuring. It prints a line for every write, showing the writer, the target, the region and whether the note was locked.