ai-banking
Banques et distributeurs avec dépôts, retraits, virements, l’historique des transactions et les comptes de société pour les patrons de métier.
ai-banking est l’écran bancaire d’AI Core. Dans une agence bancaire, les joueurs déposent, retirent, virent de l’argent à d’autres joueurs et consultent leur historique de transactions ; les patrons gèrent aussi le compte de leur métier. Les distributeurs permettent de retirer et de virer. ai-banking ne garde aucun argent qui lui soit propre : chaque solde appartient à ai-core, donc l’argent est le même partout.
Ce qu’il fait en jeu
- Agence bancaire. Allez au guichet d’une agence et ouvrez la banque. Onglets : la carte et le solde, les comptes, l’activité, et les formulaires de dépôt, de retrait et de virement.
- Distributeur. Utilisez n’importe quel prop de distributeur (les modèles du panneau). Les distributeurs ne font que retirer et virer, dans les limites des distributeurs.
- Virements. Vers un joueur en ligne, par id serveur ou citizen id. Les frais de virement du panneau (un pourcentage) sont payés en plus par l’expéditeur.
- Historique. Chaque mouvement d’argent du compte, du plus récent au plus ancien, lu depuis le registre d’ai-core, page par page.
- Comptes de société. Un joueur dont le grade de métier est un grade de patron voit le compte
bankde ce métier et peut y déposer et en retirer. Chaque patron qui a l’écran ouvert voit les changements immédiatement.
Installation
Installé par la recipe d’AI Core. À la main : ensure ai-banking après ensure ai-core. Il nécessite ai-core.
Il lit les tables de comptes et de transactions d’ai-core, donc il a besoin de sa propre ligne de permission de base de données dans env.cfg :
add_convar_permission ai-banking read mysql_connection_stringLa recipe ajoute cette ligne. Dans le panneau d’ai-core, General > Bank choisit le script bancaire ; auto utilise ai-banking en premier.
Réglages du panneau
Panneau d’administration > Banking. Les valeurs par défaut viennent de data/banks.json et data/settings.json.
Onglet Banks
Un enregistrement par agence. Valeurs par défaut : six agences Fleeca, Pacific Standard et Blaine County Savings (Paleto Bay).
| Réglage | Ce qu’il change | Unité | Défaut pour une nouvelle banque |
|---|---|---|---|
| Name | Le nom de l’agence, affiché sur le blip. 1-48 caractères. | Fleeca Bank | |
| Counter | L’endroit où les joueurs ouvrent la banque. Placez-vous au guichet et utilisez votre position. | 0, 0, 0 | |
| Reach | À quelle distance du guichet le joueur doit se trouver. 1-20. | m | 3 |
| Map blip | Affiche l’agence sur la carte. | activé | |
| Blip look | Sprite, couleur et taille (affiché quand Map blip est activé). | sprite 108, couleur 2, taille 0.7 |
Chaque agence a aussi une carte NPC : Model (vide signifie pas de PNJ), What it does (animation d’attente) et Where it stands.
Onglet Rules
Les distributeurs permettent de retirer et de virer ; les dépôts et les comptes de société nécessitent une banque.
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| ATM models | Les props du monde qui fonctionnent comme distributeurs. Jusqu’à 20 noms de modèles. | prop_atm_01, prop_atm_02, prop_atm_03, prop_fleeca_atm | |
| ATM limit per action | Le maximum qu’un retrait ou un virement au distributeur peut déplacer. Les agences n’ont pas de limite. 0-10 000 000. | $ | 5 000 |
| ATM limit per day | Le maximum qu’un personnage retire et vire via les distributeurs en 24 heures. Compté en mémoire : un redémarrage d’ai-banking remet chaque compteur à zéro. 0-100 000 000. | $ | 20 000 |
| Transfer fee | Pourcentage ajouté aux virements vers d’autres joueurs (0 = gratuit). 0-50, par pas de 0.5. | % | 0 |
Commandes
Aucune.
Raccourcis clavier
Aucun. Les agences et les distributeurs utilisent l’Interaction style d’ai-core : une invite avec E, ou une option de ciblage.
Ce qu’il remplace
fxProvide : qb-banking et Renewed-Banking. Les scripts qui utilisent leurs exports d’argent de société atteignent ai-banking :
exports['qb-banking']:GetAccountBalance(job),AddMoney(job, amount, reason),RemoveMoney(job, amount, reason)exports['Renewed-Banking']:getAccountMoney(job),addAccountMoney(job, amount, reason),removeAccountMoney(job, amount, reason)
Le compte est un nom de métier ; l’argent est le compte bank du métier dans ai-core.
Autres scripts bancaires
La couche banque d’AI Core prend aussi en charge tgiann-bank, Renewed-Banking, qb-banking, okokBankingV2, fd_banking, wasabi_banking, kartik-banking et tgg-banking. Choisissez-en un dans le panneau d’ai-core (General > Bank) et arrêtez ai-banking. Voir Compatibilité.
Limites connues
- Les virements ne vont qu’aux joueurs en ligne, car ai-core garde l’argent en mémoire pour les personnages en ligne.
- Le serveur ne peut pas voir les props de distributeurs : il fait confiance à la position du distributeur que le jeu du joueur envoie et vérifie que le joueur reste à moins de 3 m. C’est pourquoi les distributeurs ont leurs propres limites ; les agences n’en ont aucune.
- Canaux de logs :
transfersetsociety.
ai-death pour les développeurs
Réanimer, soigner et lire l’état à terre à travers la couche médicale d’AI Core, les exports serveur d’ai-death, le state bag dead et l’event de réanimation QB.
ai-banking pour les développeurs
Les exports d’argent de société des métiers d’ai-banking (aussi sous les noms qb-banking et Renewed-Banking), et les appels de la lib à utiliser à la place dans le nouveau code.