Discord Silly Scripts

Silly CockFight

Silly CockFight

€21.00

Add to Basket

🐓 Silly Cockfight

A simple, fun cockfight/animal-fight system for RedM (RDR3) with VORP. Starts via a usable inventory item and spawns two fighters right next to the player. Spectators see names + an HP bar above the animals. 👀

Preview: Video

✨ Features

  • 🧰 Start via item (VORP Inventory): using the item triggers the spawn (item name is configurable).
  • 🛡️ Server-authoritative mode (optional): server controls turn order, damage, and HP sync → solid for multiplayer/spectators.
  • 🎮 Client mode (optional): when disabled, the fight runs locally for the initiator.
  • 📛 3D spectator UI: name + HP bar/HP-% above each fighter (up to ~25m distance).
  • 🧬 Custom models: random pool or by index (assign fighter A/B).
  • 🎲 Name pool: random fighter names from your list.
  • ⚖️ Balancing: fixed max HP regardless of animal model + damage as a min/max range.
  • ⏱️ Timeout / draw: fight ends as a draw after X minutes (optional).
  • 🧹 Auto-cleanup: after a win the animals stay briefly (~2 minutes), then cleanup.

⚙️ Config (config.lua)

🧩 General

  • Config.ServerAuthoritative (true/false)

    • true: server controls HP/damage/turn order and syncs values to all clients.
    • false: fight runs client-side for the initiator.
  • Config.CockfightItem (string)

    • VORP inventory item name that starts the fight. Default: "cockf".

🐔 Models / Names

  • Config.RoosterModelPick ("random" | "byIndex")

    • "random": each fighter gets a random model from Config.RoosterModels.
    • "byIndex": fighter 1 uses RoosterModels[1], fighter 2 uses RoosterModels[2].
  • Config.RoosterModels (array)

    • List of model names (strings), e.g. "a_c_rooster_01".
  • Config.RoosterNames (array)

    • Name pool; two names are drawn per fight.

⚔️ Balancing

  • Config.RoosterFixedMaxHealth (number)

    • Fixed max HP for all fighters (important because different animal models have different default HP).
  • Config.AttackDamageMin / Config.AttackDamageMax (number)

    • Damage per hit as a range. Each hit rolls a random value between min/max.
    • Tip: same values = fixed damage (e.g. 1 / 1).
  • Config.FightTimeoutMinutes (number)

    • Fight duration in minutes. After that: Draw.
    • 0 = disable automatic timeout.

💬 Texts / Notifications

  • Config.Texts (table)

    • alreadyRunning: shown if a fight is already running
    • bettingStart: pre-fight/"betting" text (shown immediately on start)
    • fightStart: fight start text (after countdown)
    • winnerA / winnerB: winner text with %s placeholder for the name
    • draw: draw
    • timeoutDraw: draw due to timeout
  • Config.TextDuration (table)

    • short / long: duration of the vorp:TipBottom notification in ms

📦 Dependencies

  • VORP Core or RSGCore (auto-detected at runtime)
  • oxmysql (for auto item setup)

📝 Hinweise

  • ⏳ The fight has a ~40 second countdown before it starts (so the “betting” message makes sense).
  • 🧠 The script uses invincible + script-controlled HP so animal models don’t randomly one-hit.
Back to category