Restricted Zones (Dead Zones) (configuration/restrictedZone.lua)

5M Phone includes a realistic cellular signal coverage system where players in remote or shielded zones (mountains, underground bunkers, state prison) lose cell signal.


How Restricted Zones Work

When a player enters a restricted polygon zone:

  1. Signal is Lost: Cellular bars drop to 0, and incoming calls cannot connect ("The person is not reachable").
  2. Dynamic Island Alert: A warning banner pops up: "No Cellular Signal - Lost signal. Enable Wi-Fi in Control Center to use Wi-Fi calling & internet."
  3. Wi-Fi Calling: If the player toggles Wi-Fi on in the Control Center (or is near a router/building), internet and calling functionality are restored.
  4. Offline Apps: Offline utility apps (Camera, Photos, Notes, Calculator, Clock, Maps GPS) remain completely usable.

Configuring Blocked vs Offline Apps

In configuration/restrictedZone.lua:

Lua
Config.RestrictedZones = {
    Enabled = true,
    CheckIntervalMs = 1200,

    RestrictedApps = {
        xbird = true,       -- Blocked out of signal
        browser = true,     -- Blocked
        insta = true,       -- Blocked
        mail = true,        -- Blocked
        appstore = true,    -- Blocked
        ypage = true,       -- Blocked
        news = true,        -- Blocked
        darkchat = true,    -- Blocked
        payus = true,       -- Blocked
        housing = true,     -- Blocked
        services = true,    -- Blocked

        -- Offline allowed:
        maps = false,
        camera = false,
        photos = false,
        recorder = false,
        notes = false,
        calculator = false,
        clock = false,
        garage = false,
        settings = false,
    },
}

Defining Polygon Dead Zones

Lua
Config.RestrictedZones.Zones = {
    Zone1 = {
        name = 'Paleto Forest & Mount Chiliad Dead Zone',
        points = {
            vector2(-283.33, 4922.73),
            vector2(-180.30, 5256.06),
            vector2(-295.45, 5486.36),
            vector2(-186.36, 5795.45),
            vector2(213.64, 5892.42),
            vector2(165.15, 6068.18),
        },
    },
}