Skip to content

Patchnotes Discord

La section UPDATE peut afficher automatiquement les patchnotes / annonces postées dans un salon Discord : vous écrivez vos updates dans Discord, elles apparaissent dans le loading screen. Aucune mise à jour de fichier nécessaire.

TIP

Les patchnotes sont mis en cache : ils s'affichent instantanément au chargement, puis se rafraîchissent automatiquement en arrière-plan à chaque démarrage du serveur.

Configuration — config/discord.lua

lua
return {
    BotToken = "",       -- Token de votre bot Discord (à garder secret !)
    ChannelID = "",      -- ID du salon à lire
    MessageLimit = 10,   -- Nombre de messages à afficher (1-20)
    Debug = true,        -- Logs serveur détaillés (mettre false en prod)
}
ChampDescription
BotTokenLe token de votre bot Discord. Ne le partagez jamais.
ChannelIDL'ID du salon Discord à lire (ex. #patchnotes)
MessageLimitNombre de messages récupérés (1 à 20)
DebugLogs détaillés dans la console FXServer (requête, réponse, comptage, écriture du cache)

Mise en place pas à pas

1. Créer une application & un bot Discord

  1. Allez sur le Discord Developer Portal.
  2. New Application → donnez un nom → confirmez.
  3. Onglet BotAdd BotYes, do it!.
  4. Sous le nom du bot, Reset Token puis copiez-le → collez-le dans BotToken.

WARNING

Ne partagez jamais votre token publiquement. Quiconque le possède peut contrôler votre bot.

2. Inviter le bot sur votre serveur Discord

  1. Onglet OAuth2URL Generator.
  2. Scopes : cochez bot.
  3. Bot Permissions, au minimum :
    • Read Messages / View Channels
    • Read Message History
  4. Copiez l'URL générée, ouvrez-la, sélectionnez votre serveur, Authorize.

3. Récupérer l'ID du salon

  1. Discord → Paramètres → Avancés → Mode développeur (activez-le).
  2. Clic droit sur le salon voulu (ex. #patch-notes) → Copier l'identifiant du salon.
  3. Collez-le dans ChannelID.

4. Format des messages Discord

Les messages postés dans le salon suivent cette structure :

Ligne 1      → Titre du patchnote
---          → Séparateur (optionnel, ignoré)
Reste        → Description / détails

Exemple de message à poster :

v1.3.0 - Major Update
---
- Added 10 new vehicles
- Fixed server crash on job start
- New faction: Special Forces
- Performance improvements

NOTE

Si un message n'a pas de texte (content vide) mais contient un embed, le script récupère automatiquement le titre + la description de l'embed.

5. Redémarrer le serveur

Une fois BotToken, ChannelID et MessageLimit configurés, redémarrez le serveur FiveM. Les messages sont récupérés et affichés automatiquement.

Fallback manuel (sans Discord)

Si vous ne voulez pas utiliser Discord, laissez BotToken/ChannelID vides et renseignez directement les updates dans config/config.js :

js
update: {
    title: "UPDATE",
    elements: [
        {
            title: "v1.2.0",
            description: "- Added new vehicles\n- Fixed bugs\n- Improved performance",
            date: "11/01/2026",
            author: "Admin",
        },
        {
            title: "v1.1.0",
            description: "- New jobs added\n- Economy rebalance",
            date: "05/01/2026",
        },
    ],
},
ChampDescription
titleNuméro ou nom de version
descriptionDétails (\n pour un saut de ligne)
date(optionnel) Date de l'update
author(optionnel) Auteur

Ces elements ne s'affichent que si Discord ne renvoie aucun message.

Sécurité & escrow

IMPORTANT

config/discord.lua contient votre token : il est listé dans escrow_ignore du fxmanifest.lua, donc modifiable même sur une resource escrow. Ne committez jamais votre vrai token dans un dépôt public.

Dépannage

Activez Debug = true et consultez la console FXServer :

Message consoleSignification
ChannelID ou BotToken manquantUn des deux champs est vide dans discord.lua
Discord error: 401Token invalide
Discord error: 403Le bot n'a pas accès au salon (permissions / invitation)
Discord error: 404ChannelID incorrect
Messages bruts reçus: 0Le salon est vide, ou le bot ne voit pas l'historique
Cache écrit dans data/discord_cache.js (OK)Tout fonctionne ✅