Accueil › Documentation › Configuration · origen_banking

Configuration · origen_banking

Toute la configuration se trouve dans config/main.lua. Les valeurs propres au serveur sont dans config/server/webhooks.lua.


Général

Variable Par défaut Description
Config.Debug false Affiche la sortie de débogage dans la console du serveur
Config.Language 'en' Langue de la ressource — 'es' ou 'en'
Config.MaxAccounts 3 Nombre maximal de comptes qu’un joueur peut posséder

Config.Framework est détecté automatiquement dans init.lua. Ne le remplace pas dans le fichier de configuration.


IBAN

Les ID de compte sont générés sous la forme IBANPrefix suivi de chiffres aléatoires, jusqu’à atteindre IBANLength caractères au total.

Variable Par défaut Description
Config.IBANPrefix '' Préfixe ajouté devant chaque ID de compte généré
Config.IBANLength 16 Longueur totale de l’ID de compte, préfixe inclus

Banques

Chaque entrée crée un point d’interaction bancaire physique avec un blip.

Champ Type Description
coords vector3 Obligatoire. Position du point d’interaction de la banque
isCentral boolean Facultatif, false par défaut. Si true, les joueurs peuvent créer de nouveaux comptes partagés depuis cette agence
label string Facultatif. Texte affiché sur le blip
lua
Config.Banks = {
    { coords = vector3(150.266, -1040.203, 29.374),  isCentral = false, label = 'Banco - Legion Square' },
    { coords = vector3(-1212.980, -330.841, 37.787), isCentral = false, label = 'Banco - Pillbox Hill' },
    { coords = vector3(-2962.582, 482.627, 15.703),  isCentral = false, label = 'Banco - Del Perro' },
    { coords = vector3(314.187, -278.621, 54.170),   isCentral = false, label = 'Banco - Alta Street' },
    { coords = vector3(-112.202, 6469.295, 31.626),  isCentral = true,  label = 'Banco Central - Paleto Bay' },
    { coords = vector3(246.727, 223.705, 106.286),   isCentral = true,  label = 'Banco Central - Vinewood Hills' },
    { coords = vector3(1830.41, 3850.33, 35.89),     isCentral = false, label = 'Banco - Sandy' },
    { coords = vector3(-351.04, -49.71, 49.04),      isCentral = false, label = 'Banco - Rockford Hills' },
}

Marqueur

Marqueur dessiné à chaque point d’interaction bancaire.

lua
Config.Marker = {
    type = 20,
    color = {0, 0, 0, 200},
    size = vector3(0.3, 0.3, -0.3),
    coords = vector3(0.0, 0.0, 1.0),
    bobUpAndDown = false,
    faceCamera = false,
    rotate = true,
}

Distributeurs

Les props de distributeur sont détectés automatiquement par modèle ; ils n’ont pas de blips.

Variable Par défaut Description
Config.ATM.Models prop_atm_01, prop_atm_02, prop_atm_03, prop_fleeca_atm Modèles de prop traités comme des distributeurs
Config.ATM.DetectRadius 1.5 Distance en mètres pour afficher l’interface de texte et permettre l’interaction
Config.ATM.ShowSharedAccounts true Si true, les comptes partagés (métier, gang, société) auxquels le joueur a accès sont aussi utilisables depuis un distributeur

Limites des distributeurs

Les limites s’appliquent par compte, par cycle et uniquement sur le canal des distributeurs. Les agences bancaires ne sont pas limitées.

Variable Par défaut Description
Config.ATM.Limits.Enabled true Active le système de limites par cycle
Config.ATM.Limits.ResetMinutes 20 Minutes réelles avant la réinitialisation d’un cycle et le retour des limites à zéro
Config.ATM.Limits.WithdrawPerCycle 50000 Maximum retirable par compte et par cycle
Config.ATM.Limits.DepositPerCycle 50000 Maximum déposable par compte et par cycle

Les limites sont conservées en mémoire cache. Redémarrer la ressource ou le serveur remet tous les compteurs à zéro.


Prêts

Toute la validation (montants, durées, éligibilité et fonds de la banque) se fait côté serveur. L’interface ne fait que simuler et afficher ; elle ne décide jamais.

Approbation

Variable Par défaut Description
Config.Loans.Enabled true Active le système de prêts
Config.Loans.AutoApproveUnder 25000 Les prêts jusqu’à ce montant sont approuvés instantanément ; au-delà, ils passent dans la file manuelle
Config.Loans.ApprovalJob 'banker' Métier autorisé à approuver les prêts, à condition que son grade soit au moins ApprovalGrade
Config.Loans.ApprovalGrade 2 Grade minimal du métier requis pour approuver
Config.Loans.ApprovalAce 'origen_banking.approve' Permission ACE qui accorde aussi le droit d’approbation
Config.Loans.ApprovalCommand 'loansadmin' Commande de chat qui ouvre la NUI sur la file d’approbation. Mets '' pour la désactiver

Limites globales

Variable Par défaut Description
Config.Loans.MaxActiveLoans 2 Prêts actifs simultanés par joueur, prêts en attente inclus
Config.Loans.MinAmount 1000 Montant minimal global d’un prêt
Config.Loans.BlockIfOverdue true Bloque les nouveaux prêts tant que le joueur en a un en retard

Pénalités

Variable Par défaut Description
Config.Loans.Penalty.Enabled true Active les pénalités de retard de paiement
Config.Loans.Penalty.RatePerMiss 5.0 Pourcentage supplémentaire ajouté à la mensualité pour chaque paiement manqué
Config.Loans.Penalty.MaxMisses 3 Manquements autorisés avant que le prêt soit marqué defaulted et que l’événement de garantie se déclenche

Remboursement anticipé

Variable Par défaut Description
Config.Loans.EarlyPayoff.Enabled true Permet de solder le prêt avant son terme
Config.Loans.EarlyPayoff.InterestRebate 50 Pourcentage des intérêts restants remis lors d’un remboursement anticipé

Types de prêt

Champ Description
label Nom affiché dans l’interface
interestRate Pourcentage total d’intérêts
minAmount / maxAmount Plage autorisée du capital
allowedTerms Array des nombres de mensualités autorisés
frequency Nombre de jours entre les mensualités
requiresCollateral Exige une référence de bien (plaque, ID de propriété)
forceManualApproval Envoie toujours le prêt dans la file manuelle, sans tenir compte de AutoApproveUnder
lua
Config.Loans.Types = {
    personal = {
        label              = 'Personal',
        interestRate       = 12.0,
        minAmount          = 1000,
        maxAmount          = 50000,
        allowedTerms       = { 6, 12, 24 },
        frequency          = 7,
        requiresCollateral = false,
    },
    mortgage = {
        label               = 'Mortgage / Vehicle',
        interestRate        = 6.0,
        minAmount           = 25000,
        maxAmount           = 500000,
        allowedTerms        = { 24, 48, 96 },
        frequency           = 7,
        requiresCollateral  = true,
        forceManualApproval = true,
    },
}

Fournisseurs du bridge

Définis dans init.lua. Utilise "auto" pour détecter la ressource active, ou force un fournisseur précis par son nom.

lua
BridgeConfig.HelpText  = "auto"
BridgeConfig.Notify    = "auto"
BridgeConfig.Inventory = "auto"

Webhooks

Fichier : config/server/webhooks.lua

lua
Config.Webhook = {
    banking = "YOUR_DISCORD_WEBHOOK_URL"
}