GCMod

Troubleshooting

Common issues and implementation notes for gcm_securezone.


/securezone does nothing for staff

Possible Causes

  • Staff account does not match Config.GroupPermissions.
  • ACE permissions are missing or misconfigured.
  • isPlayerStaff logic in custom/server.lua does not match your framework data shape.

Fix

  • Verify group names and ACE entries.
  • Add temporary debug logs in isPlayerStaff.
  • Adjust permission adapter logic to your framework.

Zones do not load after restart

Possible Causes

  • oxmysql starts after gcm_secureZone.
  • gcm_securezone table does not exist.
  • Invalid JSON stored in points or options columns.

Fix

  • Ensure startup order: oxmysql before gcm_secureZone.
  • Re-import database.sql.
  • Validate JSON integrity in DB rows.

Player restrictions are not applied inside safe zone

Possible Causes

  • Zone is saved with enabled = false.
  • Restriction options were disabled in runtime config.
  • Whitelist conditions match the player (whitelistStaff, whitelistJobs).

Fix

  • Review zone toggle state and restriction flags.
  • Re-check whitelist values and normalize job names to lowercase.

Speed cap behaves inconsistently

Possible Causes

  • limitarVelocidad is disabled.
  • velocidadMaxima has unrealistic values.
  • Another resource modifies vehicle speed/handling.

Fix

  • Enable speed cap and set practical km/h limits.
  • Retest with conflicting vehicle control scripts disabled.

HUD indicator position looks incorrect

Possible Causes

  • Invalid value in Config.hudIndicatorPosition.

Fix

Use one of the allowed values:

  • top-left
  • top-right
  • bottom-left
  • bottom-right

Restart the resource after config changes.


Implementation Risk Notes

These notes highlight potential edge cases or improvements in the current implementation.

Runtime Option Integrity

Invalid or partial JSON in the options payload can produce silent behavior drift between UI and runtime enforcement.