ai-prison
Des peines de prison comptées par le serveur, avec objets confisqués à l’entrée, travail en prison, cantine et évasions sanctionnées par du temps supplémentaire.
ai-prison gère les peines de prison. La police envoie en prison un joueur menotté depuis son menu, les administrateurs avec une commande, et les autres scripts à travers AI Core. Le serveur compte les minutes, donc un joueur ne peut pas les modifier. Le travail en prison raccourcit la peine, une cantine distribue des repas gratuits, et quitter l’enceinte de la prison ramène le joueur avec du temps supplémentaire.
Ce qu’il fait en jeu
- Entrée. Le joueur est placé à un point de cellule aléatoire et reçoit une notification avec les minutes. Quand Take items at the gate est activé, tout l’inventaire est confisqué et conservé sur le personnage.
- L’horloge. Une minute de peine passe par minute de jeu. Quand Count time offline est activé, le temps passé hors du serveur compte aussi. Le joueur reçoit une notification avec le temps restant à l’entrée, toutes les 10 minutes et à chaque minute des 5 dernières. Le menu radial affiche Sentence pendant l’incarcération.
- Travail en prison. Les postes de travail (boîtiers électriques par défaut) ne s’affichent qu’aux joueurs incarcérés. Travailler lance une barre de progression ; à la fin, la peine est réduite des minutes du poste. Chaque poste a son propre délai avant que le même personnage puisse y retravailler.
- Cantine. Un comptoir où les joueurs incarcérés reçoivent gratuitement un objet repas, une fois par Wait between meals.
- Évasions. Toutes les 10 secondes, le serveur vérifie où se trouve chaque joueur incarcéré. Hors de l’enceinte, le joueur est renvoyé dans une cellule avec des minutes supplémentaires, et la police reçoit une alerte quand Alert the police est activé.
- Libération. Quand la peine est purgée (ou qu’un policier ou un administrateur le libère), le joueur est placé au point de libération et récupère les objets confisqués.
- Fiches. Chaque incarcération écrit une fiche
jaildans le MDT de la police quand il y en a un qui tourne.
Installation
Installé par la recipe d’AI Core. À la main : ensure ai-prison après ensure ai-core. Il nécessite ai-core et OneSync. Il n’utilise aucune table de base de données propre : la peine est stockée sur le personnage.
La prison par défaut est le pénitencier de Bolingbroke, avec 11 points de cellule, une enceinte à 16 angles, 7 postes de travail sur boîtiers électriques et une cantine qui distribue des burger. Assurez-vous que l’objet repas existe dans votre inventaire, ou changez-le.
Réglages du panneau
Panneau d’administration > Prison. Les valeurs par défaut viennent de data/settings.json et data/tasks.json.
Onglet Prison
Cells and release : un joueur incarcéré commence à un point de cellule aléatoire et sort au point de libération quand la peine est purgée.
| Réglage | Ce qu’il change | Défaut |
|---|---|---|
| Cell points | Jusqu’à 30 points (position et orientation) où apparaissent les joueurs incarcérés. | 11 cellules à Bolingbroke |
| Release point | L’endroit où se tient un joueur à la fin de sa peine (devant la porte). | 1848.13, 2586.05, 44.67 |
Prison area : un joueur incarcéré hors de cette zone est considéré comme en train de s’évader.
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| Area corners | Faites le tour des murs de la prison et ajoutez un angle à chaque changement de direction (au moins 3, au plus 32). | 16 angles | |
| Area height | Mètres au-dessus et en dessous des angles qui comptent encore comme l’intérieur. 5-200. | m | 200 |
Canteen : un comptoir où les joueurs incarcérés reçoivent un repas gratuit.
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| Canteen counter | L’emplacement du point de cantine. | 1777.59, 2560.52, 44.62 | |
| Meal item | L’objet distribué ; vide ferme la cantine. | burger | |
| Items per meal | Combien d’exemplaires de l’objet donne un repas. 1-10. | 1 | |
| Wait between meals | Minutes avant que le même personnage puisse recevoir un autre repas. 0-240. | min | 10 |
Onglet Rules
Sentence : le serveur compte les minutes ; les joueurs ne peuvent pas les modifier.
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| Longest sentence | Les peines plus longues données par la police ou les administrateurs sont ramenées à cette valeur. 1-10 000. | min | 120 |
| Count time offline | Activé : les minutes passent aussi quand le joueur est absent. Désactivé : seul le temps en jeu compte. | désactivé | |
| Take items at the gate | Activé : l’inventaire est confisqué à l’incarcération et rendu à la libération. | activé |
Escapes
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| Extra time for an escape | Minutes ajoutées chaque fois qu’un joueur incarcéré est trouvé hors de l’enceinte. 0-600. | min | 5 |
| Alert the police | Envoie une alerte police avec la position de l’évasion. | activé |
Onglet Prison work
Un enregistrement par poste de travail. Supprimer un poste signifie que les joueurs ne peuvent plus y travailler.
| Réglage | Ce qu’il change | Unité | Défaut |
|---|---|---|---|
| Name | Le nom du poste, affiché sur son invite (« Work: Fuse box 1 »). | vide | |
| Place | L’endroit où le joueur travaille. Placez-vous là et utilisez votre position. | 0, 0, 0 | |
| Work time | Durée de la barre de progression. 3-120. | s | 10 |
| Minutes served | De combien la peine est réduite à chaque fois. 0-60. | min | 1 |
| Wait before working here again | Secondes avant que le même personnage puisse retravailler à ce poste. 0-3600. | s | 120 |
Commandes
| Commande | Arguments | Qui peut l’utiliser | Ce qu’elle fait |
|---|---|---|---|
/jail | id (id serveur du joueur), minutes (nombre) | Administrateurs d’ai-core (ACE ai.admin), la console du serveur, ou toute personne autorisée à command.jail | Envoie un joueur en prison. Les minutes sont ramenées à Longest sentence. |
/unjail | id (id serveur du joueur) | Administrateurs d’ai-core, la console, ou command.unjail | Libère immédiatement un joueur, avec ses objets. |
Les policiers incarcèrent depuis le menu d’ai-police (Send to prison) ; ils n’ont pas besoin de la commande.
Raccourcis clavier
Aucun. Les postes de travail et la cantine sont des points d’interaction (invite avec E, ou une option de ciblage, selon l’Interaction style d’ai-core).
Ce qu’il remplace
Pas de fxProvide. Il garde la peine dans la clé de métadonnées de personnage injail, la clé qu’utilise QBCore, donc les scripts QB qui lisent ou écrivent injail fonctionnent avec lui. Un script de police QB qui règle injail via le pont démarre une peine dans ai-prison ; la régler à 0 libère.
Autres scripts de prison
La couche prison d’AI Core prend aussi en charge qb-prison, rcore_prison, xt-prison et tgiann-policejob. Arrêtez ai-prison et démarrez l’un d’eux : ai-police et tous les autres scripts continuent d’incarcérer à travers AI Core. Voir Compatibilité.
Limites connues
- Avec Count time offline désactivé, un joueur qui part garde les minutes restantes jusqu’à son retour.
- Incarcérer un joueur déjà incarcéré règle la nouvelle peine ; les objets stockés lors de la première incarcération restent stockés.
- Un inventaire plein à la libération ne peut pas reprendre tous les objets ; ce qui n’a pas pu être rendu est écrit dans le log du serveur.
- Canal de logs :
prison.
ai-policealert pour les développeurs
Comment envoyer une alerte police qui atteint ai-policealert (ou tout autre script d’alerte), les champs de DispatchAlert et l’export propre d’ai-policealert.
ai-prison pour les développeurs
Incarcérer, libérer et lire le temps restant à travers la couche prison d’AI Core, les exports serveur d’ai-prison et les métadonnées de personnage qu’il conserve.