ktoxktox docs

Configuration

Configuration reference for ktx_fishing.

Configuration

All configuration lives in static/config.json.

Debug

{
  "Debug": {
    "enabled": false,
    "logLevel": "warn",
    "modules": {
      "client": true,
      "server": true,
      "ui": false,
      "inventory": true,
      "fishing": true
    }
  }
}
  • enabled - toggle debug output
  • logLevel - log verbosity: "info", "warn", "error"
  • modules - per-module toggles. Set each to true or false to enable/disable debug output for that module.

Locale

{
  "Locale": {
    "language": "en"
  }
}

language is a code matching a file in locales/. Ships with en and de.

Fishing

All fishing data (spots, rods, settings) is nested under the top-level Fishing key in static/config.json.

FishingSpots

Array of fishing locations on the map.

{
  "FishingSpots": [
    {
      "id": "pier_spot",
      "name": "Del Perro Pier",
      "coords": { "x": -1850.5, "y": -1230.3, "z": 13.0 },
      "range": 5.0,
      "blip": {
        "enabled": true,
        "sprite": 317,
        "color": 3,
        "scale": 0.8
      },
      "rewards": [
        {
          "item": "fish_bass",
          "label": "Bass",
          "chance": 40,
          "amount": { "min": 1, "max": 3 }
        }
      ]
    }
  ]
}
  • id - unique identifier for the spot
  • name - display name
  • coords - world position (x, y, z)
  • range - interaction radius in game units
  • blip.enabled - show on map
  • blip.sprite - GTA blip sprite ID
  • blip.color - GTA blip color ID
  • blip.scale - blip size multiplier
  • rewards - array of possible catches
  • rewards[].item - inventory item name
  • rewards[].label - display name for the reward
  • rewards[].chance - drop weight (higher = more common)
  • rewards[].amount.min / amount.max - random quantity range

Tip: Rarity tiers are derived from chance: >= 40 = common, >= 20 = uncommon, >= 10 = rare, >= 5 = epic, < 5 = legendary. Lower the chance to make a reward rarer in the UI.

FishingRods

Object keyed by inventory item name. Each rod modifies the base fishing behavior. Ships with wood_rod, metal_rod, and gold_rod.

{
  "FishingRods": {
    "wood_rod": {
      "label": "Wood Rod",
      "color": "#a0845e",
      "successMultiplier": 1.0,
      "timeMultiplier": 1.0,
      "rewardMultiplier": 1.0,
      "luckModifier": 1.0
    },
    "metal_rod": {
      "label": "Metal Rod",
      "color": "#9fb7d5",
      "successMultiplier": 1.15,
      "timeMultiplier": 1.2,
      "rewardMultiplier": 1.3,
      "luckModifier": 1.5
    },
    "gold_rod": {
      "label": "Gold Rod",
      "color": "#e1b955",
      "successMultiplier": 1.3,
      "timeMultiplier": 1.6,
      "rewardMultiplier": 1.8,
      "luckModifier": 2.2
    }
  }
}
  • label - display name in UI
  • color - hex color for UI styling
  • successMultiplier - multiplies the base catch success rate. 1.5 = 50% more likely to catch
  • timeMultiplier - multiplies the fishing duration. 0.7 = 30% faster
  • rewardMultiplier - multiplies reward amounts. 1.3 = 30% more items
  • luckModifier - multiplier applied to roll chance for rare items. 1.0 = base, 2.2 = much better loot

FishingSettings

{
  "FishingSettings": {
    "baseFishingTime": 8000,
    "maxFishingTime": 15000,
    "afkFishing": true,
    "experience": {
      "enabled": true,
      "baseXP": 10,
      "bonusXPPerRod": {
        "wood_rod": 0,
        "metal_rod": 5,
        "gold_rod": 10
      }
    }
  }
}
  • baseFishingTime - minimum fishing duration in milliseconds
  • maxFishingTime - maximum fishing duration in milliseconds
  • afkFishing - allow players to fish without active input
  • experience.enabled - toggle XP progression system
  • experience.baseXP - XP earned per catch
  • experience.bonusXPPerRod - object mapping rod key to a flat XP bonus added per catch when that rod is used