# À quoi ça sert ?

Explication de pourquoi cette documentation

J'avais créé une documentation pour un serveur RP. Malheureusement, il a fermé. Certains points ont pris beaucoup de temps à être trouvés. Et le monde de FiveM s'agrandit, que ce soit dans le bien ou dans le mal.

Mais normalement, si tu es sur cette documentation, c'est que tu souhaites t'informer davantage sur le RP et obtenir de l'aide. Avec mon expérience et celle d'autres joueurs, dans cette documentation, vous allez trouver des documents, du texte, des informations afin de vous aider à avoir un RP de qualité.


# Aides pour Fivem

Fivem... Que c'est bien et problématique à la fois, voici certaines aides pour les personnes qui ont certains problèmes

## Les interfaces UI du serveur LAG

Il se peut que certains aient un problème avec l'utilisation des interfaces UI de certains scripts (inventaire, téléphone et autres...), fivem à une option pour débug ça.\
\
&#x20;*Il vous suffit d'aller sur Fivem > Dans les réglages de Fivem > Jeu > Cocher "Nui in-process GPU"*

<div data-full-width="true"><figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/1PllVcwLKemsiee1oZQk/Desktop%202023.06.17%20-%2012.54.20.01%20-%20Trim.gif" alt=""><figcaption><p>Vidéo d'explication afin d'aller dans les paramètres</p></figcaption></figure></div>

## Le curseur de ma souris bloque au milieu de mon écran

*Connectez-vous sur votre serveur RP > Aller dans les paramètres > Catégorie "Clavier/Souris" > Méthode d'entrée = "Raw Input"*

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/RzOgT1nzgXk6FTE39X0A/Desktop-2022.11.24-18.54.46.04.gif" alt=""><figcaption><p>Explication de la catégorie pour aller dans les paramètres</p></figcaption></figure>

## Ma Mini-Map est décalé est par rapport à mon HUD

*Connectez-vous sur votre serveur RP > Allez dans les paramètres > Catégorie "affichage" > Zone neutre "régler par rapport à votre écran"*

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/Om3FT45qfbZnqEDFQ0FD/Desktop-2022.11.24-19.40.05.02.gif" alt=""><figcaption><p>Explication de la catégorie pour aller dans les paramètres</p></figcaption></figure>

## Enlever les modifications fichier de votre GTAV

*Nous proposons des outils afin de vous aider à supprimer vos packs graphiques (exemple pour évider le ban Fivem de 14 jours*�&#xDE05;*), rien de ne vous oblige à télécharger les outils, vous pour réinstaller GTAV & Fivem si vous voulez :)*\
*·* [*Cliquer pour télécharger le fichier 100% safe*](https://cdn.discordapp.com/attachments/829872325221679184/1121559015416152127/GTA_V_Mod_Remove_Tool.exe)\
*·* [*Cliquer se diriger via le site GTA5 Mods (pas sûr)*](https://www.gta5-mods.com/tools/gta-v-mod-remove-tool)

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th align="center"></th></tr></thead><tbody><tr><td>     <img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/TZF3c98S58LB4RKlIvCA/image.png" alt="" data-size="original"></td><td align="center">Si ne vous avez rien d'écrit. Aller dans Settings >Select new path et sélectionner le fichier GTAV de votre PC</td></tr><tr><td>   <img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/pZhGeVpY5ICw8V7b3lpi/image.png" alt=""></td><td align="center">Cliquer sur "Delete all files and folder from GTAV folder" et ensuite un pop-up va s'ouvrir et cliquer sur "Oui"</td></tr></tbody></table>

## Mettre une carte personnalisée

Nous laissons aux joueurs la possibilité de changer leurs cartes elles-mêmes et les aidons au lieu qu'il perde du temps sur des recherches internet et des réponses farfelues.\
· Crédit des maps : [Aothsa](https://aothsa.com/category/gtav-fivem-map-mods/)

{% tabs %}
{% tab title="Tuto" %}

### Voici une aide concernant l'installation de la MAP :&#x20;

*Vous inquiétez pas, c'est extrêmement facile !*

[Format vidéo](https://www.youtube.com/watch?v=_OaxikS8qxY) ou en écrit :

#### Étape #1 · Téléchargement des map :&#x20;

![](https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/ENOh8H3Nwpu3Nm52q9RF/image.png)\
Comme vous pouvez le voir, l'information concernant "L'aide à l'installation de la MAP" est dans une case, vous avez des onglets où chacun à un style de map, votre bonheur est potentiellement dedans !

#### Étape #2 · Trouver l'emplacement du fichier :&#x20;

Pas compliqué, il vous suffit d'aller dans vos fichiers Fivem : FiveM Application Data > le fichier "mods", et vous déplacez la map télécharger dans ce fichier.
{% endtab %}

{% tab title="4K - Satellite" %}

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/YwVRy6eLRgLeaL733JXk/image.png" alt=""><figcaption><p>130.1 Mo | Une map pour être dans l'immersion de son rôleplay !</p></figcaption></figure>

{% embed url="<https://drive.google.com/file/d/1FE8W64Z4TUMgJfn5anWrJDxixiHZ2ShF/view?usp=share_link>" %}
{% endtab %}

{% tab title="3K - Dessin Réaliste" %}

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/7OhQvq3pVG4ymrn3GBPB/image.png" alt=""><figcaption><p>63.0 Mo | Chaque secteur est correctement dessin et réaliste.</p></figcaption></figure>

{% embed url="<https://drive.google.com/file/d/1XbUfXfM5rJtNJy0wQoRmjsmZzh2JiiFy/view?usp=share_link>" %}
{% endtab %}

{% tab title="Atlas HD" %}

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/juWriCBoz9NVEybkiFwn/image.png" alt=""><figcaption><p>24,1 Mo | Un style assez coloré tout en gardant les séparations de secteur.</p></figcaption></figure>

{% embed url="<https://drive.google.com/file/d/1JB-z21sL-2wRPBFNwcU2pRNaoPHc1M3V/view?usp=share_link>" %}
{% endtab %}

{% tab title="Road HD" %}

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/Io2k69fiSrql2hjEDNLx/image.png" alt=""><figcaption><p>24,1 Mo | Un retour aux sources mais avec plus de détails.</p></figcaption></figure>

{% embed url="<https://drive.google.com/file/d/1Yri37T4Bgw8f9eVdMDm9m0rkXKOBZJ2y/view?usp=share_link>" %}
{% endtab %}
{% endtabs %}

## NVE / NVR gratuit (légal)

[⚠️](https://emojipedia.org/fr/symbole-d-avertissement/) Attention ! Parfois Fivem ban des joueurs ayant un NVE, on sait pas quand et pourquoi, mais il considère ça comme une modification de fichier (un genre de cheat).

Le site <https://www.razedmods.com/>propose : NVE (*NaturalVision Evolved)* et NVR *(NaturalVision Remastered)*, vous pouvez vous rendre sur son site ou télécharger via ses liens re-directionnelle : \
· [NVE](https://downloads.razedmods.com/nve.php) *(Il apporte de nombreux changements visuels pour une expérience plus réaliste)*\
· [NVR](https://razed.filemail.com/d/xecjywxmpatwrqp) *(Expérience plus réaliste, incluant les conditions météorologiques, l'éclairage, les couleurs, les textures, le système d'armes, etc.)*<br>

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/edj3Eddgg6sVgFjyNz38/image.png" alt=""><figcaption><p>Image de présentation du site WEB</p></figcaption></figure>

## Mods Fivem

Avec Fivem vous pouvez appliquer des Mods, ces dernières ne devraient pas vous faire ban car c'est une catégorie créée par Fivem pour ces Mods, si c'est le cas cette rubrique n'existera plus !

• [Bruits des tirs pour d'armes](https://drive.google.com/file/d/1UtKoHWVBG_OKcfvzxhtM5K448cpCeDHL/view?usp=share_link)

• [Bruits environnementaux](https://drive.google.com/file/d/1YwGB4VezzDG-p4e4OUBEJL7ukj--qyeu/view?usp=share_link)

• [Effet de Sangs](https://drive.google.com/file/d/16k10TkbHcLKvOJ2ZcbGGdg8WtYC56NoO/view?usp=share_link)

• [Améliorations des lumières de Los Santos](https://drive.google.com/file/d/1NqkKtyR-0hapebdSG4JDHcSLzdAmdJ9O/view?usp=share_link)

• [Élimine l'effet de brume, même par temps ensoleillé](https://drive.google.com/file/d/1WsW0bE_3Zbh_7AhOBwRKWYMNHqxfmTWd/view?usp=share_link)<br>

## CURL Error code 56

Cette erreur vient ni de vous, ni du serveur, ni de l'hébergeur du serveur mais de vous, bon plutôt votre fournisseur d'internet.

Apparemment certains fournisseurs d’accès internet *(SFR par exemple concernant le problème du joueur)* ont modifié les protocoles en IPV4 CGNAT *(Carrier-grade NAT)* et c’est cela qui pose problème. La seule solution est de téléphoner à votre fournisseur d’accès internet et de demander à enlever le protocole IPV4 CGNAT, et de revenir sur du IPV4 full stack.

Vous pouvez aussi essayer de redémarrer votre box Internet. Ce problème peut se régler après cette action.

<figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/ZjEk8A1EC2S2QnW7oOC8/image.png" alt=""><figcaption><p>Screen lors de la tentative de connexion au serveur</p></figcaption></figure>

***

## Identifiant de Fivem

> Un problème avec votre license rockstar  ? Ceci devrait corrigé votre problème, ce message est une réponse la commande `!identifiers` sur le discord de Fivem.

Assurez-vous que ni FiveM ni Rockstar Games Launcher ne sont en cours d'exécution.

* Appuyez sur Win + R, saisissez `%localappdata%\DigitalEntitlements\` et cliquez sur OK
* Sauvegardez tous les fichiers qui s'y trouvent, laissez-les dans un répertoire séparé.
* Supprimez tous les fichiers à l'intérieur de DigitalEntitlements.
* Exécutez Grand Theft Auto V une fois via le lanceur approprié que vous avez utilisé pour installer le jeu.&#x20;
* Votre client FiveM devrait maintenant utiliser vos nouveaux identifiants, à condition que vous ayez réellement des licences distinctes.

Vous devrez peut-être également supprimer `%appdata%\CitizenFX\ros_id.dat` qui est votre identifiant Rockstar Social Club.


# Aide pour votre PC

Cette page va être pour vous donner quelques tips pour améliorer l'utilisation et la performance de votre ordinateur

## Mettre à jour tout vos logiciels à jour d'un coup

1. Ouvrir votre `invite de commandes` Windows
2. Écrire la commande `winget upgrade`
3. Si ça vous demande une autorisation de pays, accepter.
4. Ensuite vous allez avoir tout les logiciels avec une mise à jour possible

   <figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/VSyxgOuXiNsYvbnU0XGD/image.png" alt=""><figcaption></figcaption></figure>
5. Maintenant écriez la commande `winget updgrade --all`
6. Les mises à jours vont se faire directement

   <figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/1kOFRCd6Gh15pEVjJ8QZ/image.png" alt=""><figcaption><p>Des validations Windows vont être nécessaire pour certaines applications et d'autres seront trop neuves pour l'installer</p></figcaption></figure>
7. Si le texte rester figée dans l'invite de commandes, appuyer sur une touche de votre clavier pour débugger les mises à jours.


# Information concernant Los Santos

Afin de mieux vous informer concernant Los Santos, il est important de prendre le temps de se renseigner sur l'histoire et les particularités de cette ville fictive, qui est le décor de nombreux jeux.

## Où se trouve Los Santos dans la vrai vie ?

Afin que ne soyez pas perdu avec où est Los Santos dans la vraie, voici la carte :

<div><figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/mIuEL29xM3pDTDRdLpfC/image.png" alt=""><figcaption><p><em>Endroit où se trouve Los Santos dans la vrai vie</em><br><br>Los Santos est située dans l'État fictif de San Andreas, qui est lui-même inspiré de la Californie du Sud.</p></figcaption></figure> <figure><img src="https://content.gitbook.com/content/UzUJOibY6x9GLCXAqxht/blobs/RdnVlf4R2wFX2VpapHYi/localisation%20Los%20Santos%20&amp;%20Cayo%20Perico%20on%20USA.png" alt=""><figcaption><p><br>Los Santos &#x26; Cayo Périco, inspirées de la communauté de GTAV sur Reddit et d'autres forums, sont situées à gauche sur la carte des États-Unis.</p></figcaption></figure></div>

## Combien a-t-il d'habitants à Los Santos ?

Comme Los Santos est une ville imaginaire qui s'inspire de la ville de Los Angeles, en Californie. Nous pouvons compter environ 4 millions d'habitants en 2021. Nous restons donc sur ce chiffre concernant les aventures sur ActiveLife.

## C'est Los Santos ou Le nom de mon Serveur RP ?

Il est important de noter que le nom de la ville fictive de Los Santos, qui est le décor du jeu Grand Theft Auto V, n'a rien à voir avec le nom de votre serveur RP. Los Santos est une ville imaginaire qui s'inspire de Los Angeles, en Californie, tandis que votre serveur RP que vous avez rejoint, c'est comme le nom de la marque.<br>


# Aide DEV

Les snippets vont être pour VSCode principalement, c'est comme une extension mais plus personnel afin d'être plus rapide dans le développement.&#x20;

Pour afficher les pages de configuration, il suffit de reste appuyer en premier sur la touche CTRL G et ensuite la touche P et écrire `>snippets`

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FqcNIqAXDX5Xaht0T5D65%2Fimage.png?alt=media&amp;token=03a3a7ef-d789-43ac-85b4-8aac1c7b3216" alt=""><figcaption></figcaption></figure>

Ensuite rechercher lua

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2Fkf8PBJfPtskqKWcKJ0oW%2Fimage.png?alt=media&amp;token=305894bd-4c03-408e-ae64-bafe13665e95" alt=""><figcaption></figcaption></figure>

<details>

<summary>Snippet pour le .lua</summary>

```lua
{
	"E": {
		"prefix": "E",
		"body": [
			"IsControlJustPressed(0, 38)"
		]
	},

	"RegisterCommand": {
		"prefix": "RegisterCommand",
		"body": [
			"RegisterCommand(\"$1\", function()\r\rend)"
		]
	},

	"fxmanifest": {
		"prefix": "fxmanifest",
		"body": [
			"fx_version 'cerulean'\rgame 'gta5'\rlua54 'yes'\r\r",
			"shared_scripts {\r\t'config.lua',\r}\r\r",
			"client_scripts {\r\t'client.lua',\r}\r\r",
			"server_scripts {\r\t'@oxmysql/lib/MySQL.lua',\r\t'server.lua',\r}\r\r",
			"ui_page {\r\t'ui/index.html',\r}\r\r",
			"files {\r",
			"\t'ui/ui.html',",
			"\t'ui/styles.css',",
			"\t'ui/scripts.js',",
			"\t'ui/jquery-3.6.0.min.js',",
			"\t'ui/assets/*.png',",
			"}\r\r",
			"dependency 'oxmysql'",
		]
	},


	"print table": {
		"prefix": "printtable",
		"body": [
			"print(json.encode($1, {indent = true}))"
		]
	},

	"qbcoreexport": {
		"prefix": "qbcoreexport",
		"body": [
			"QBCore = exports['qb-core']:GetCoreObject()"
		]
	},

	"CreateThread": {
		"prefix": "createthread",
		"body": [
			"CreateThread(function()\r\t$1\rend)",
		]
	},

	"forkv": {
		"prefix": "forkv",
		"body": [
			"for k,v do\r\t$1\rend",
		]
	},

	"jsevent": {
		"prefix": "jsevent",
		"body": [
			"window.addEventListener('message', function(event) {",
			"\tvar item = event.data;",
			"\tif (item.ui === 'ui_name') {\r\t$1\r\t}",			
			"});"
		]
	},

	"nuicallback": {
		"prefix": "nuicallback",
		"body": [
			"RegisterNUICallback(\"$1\", function(data, cb)\r\t",			
			"end)"
		]
	}
}
```

</details>


# La police

Comment informer que les informations écrites viennent d'un ancien serveur RP ? Cela signifie que certaines choses écrites suivent la cohérence de ce dernier. Il ne s'agira pas du LSPD, mais du SAPD (San Andreas Police Department), une police d'État.


# Fiche des procédures

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2Fk9YDieCKrsuoS5jSFkZK%2Fimage.png?alt=media&amp;token=fc85b382-9f41-40f5-be83-e20cec00c098" alt=""><figcaption></figcaption></figure>

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FJ2VoPL9FWQrWUsKlU2DV%2Fimage.png?alt=media&amp;token=709fd9b4-e02e-4ef1-ace7-69a6f55f8970" alt=""><figcaption></figcaption></figure>


# Formation Tazer

## | TAZER

**• Qu'est ce que le tazer ? Pistolet à impulsions électriques**\
· Arme non létales\
· porté de 4-5 mètres\
· 50000 volts et 2 milliampères et ce pendant jusqu'à 5 secondes\
· Le fait de tazer une personne mouillée, ne le tuera pas à cause de l'ampérage.\
· Bloque le système nerveux de l'individu en contactant les muscles et les rendant inopérants (paralysie momentanée)\
· Suspect non armé *(ou arme blanche/contendante)*\
· Si après une décharge, il oppose toujours une résistance, peut lui en mettre une deuxième, mais pas plus\
· Le tazer tire deux aiguilles qui se plantes et envoi une décharge (+ / -)\
· Angles optimales : 45° vers le sol

**• Ne pas utiliser sur :**\
· Personne frêle physiquement *(handicapé/âgée)*\
· Personnes armé *(arme à feu)*\
· Personnes avec des problèmes cardiaques ou cardiovasculaires *(mais tu peux pas savoir)*\
· Les enfants\
· Les femmes enceintes

**• Méthodologie pour utiliser le tazer :**\
· Préciser ses actions aux individus (main tazer)\
· Effectuer les 3 sommations avec quelques secondes voire plus d'intervalle\
· Tazer si menace

**• Test du tazer :**\
· Lui faire tirer au tazer et aller chercher les aiguilles *(3 fois)*\
· Le tazer une fois pour qu'il sache ce que ça fait


# Permis de Port d'Arme

## | Questions :

**• Si il connait déjà 2-3 trucs sur les armes à feu ou PPA en général**

**• Pourquoi il veut une arme à feu**

**• Comment il se servirait d'une arme a feu**

**• Comment il définit la légitime défense ?** La défense doit être proportionnelle à l'attaque

**• ISTC : en 4 points** *(Instruction au Tir de Combat)*\
· Une arme doit toujours être considérée comme chargée.\
· Ne jamais pointer ni laisser pointer le canon d'une arme sur quelqu'un ou quelque chose que l'on ne veut pas détruire.\
· Garder l'index hors de la détente tant que la mir et l'objectif ne sont pas aligné.\
· Être sûr de son objectif et de son environnement.

**• CEVITAL : en 7 points**\
`· C : Certification d'identification` Identifier la Cible, sa distance, si tu es à porter, si le tir est possible en sécurité et si tu tir ou pas\
`· E : Elévation` Re vérification du C (par exemple si la cible a bouger entre temps ou ce genre de conneries)\
`· V : Visée` Alignement de la mire sur l'objectif, ne pas rester trop longtemps sinon l'œil se fatigue, qui deviens sec ou humide, la respiration qui peut jouer et le mouvement des bras\
`· I : Index` Comme vue à l'ISTC, mettre l'index sur la détente\
`· T : Tir` Départ du projectile\
`· A : Analyse` A cause de la visée, le champs de vision s'est rétréci pour se focus sur l'objectif créant un effet de "tunnel", il faut sortir de cette effet de tunnel et vérifier l'état de l'objectif\
`· L : Latéralité` Revérifier votre environnement l'impact, la sécu...

**• Les protections et sécurité :**\
· Lunettes : Pour le retour de poudre principalement quand y'a du vent (éventuellement la douille)\
· Protection auditives : si possible (pas grave si tu l'utilise que une ou deux fois) stand de tir obligatoire\
· La douille en sortie de chambre est très chaude\
· Faire attention aux personnes autours de vous (se mettre derrière et en diagonales à la sortie de douille\
· S'il y a quelqu'un d'autre dans la ligne de mire, il est mort (donc faire attention)

‎ **• Rendre une arme inopérante&#x20;*****(Trois méthodes principales)*****&#x20;:** \
· Cran de sureté\
· Chargeur + éjecter la douille de la chambre\
· Holster autobloquant\
· Désamorçage du percuteur de douilles

**• Transport et stockage :**\
`· Maison :` Démonter dans le coffre, si menacé récemment, monter dans le coffre et munitions à coté\
`· Véhicule :` Mallette : Monter dans la mallette + dans le coffre *(compartiment caché)* munitions autre part. Si menacer récemment, charger dans la boite à gants avec serrure *(clé de voiture peut être vu avec le Benny's)*\
`· Pédestre :` Holster : cran de sécurité et sécurité holster\
`· Entretien :` Chiffon plus brosse, et matériel d'entretien vu à l'ammunation. Arme déchargée et inopérante, propre (canon notamment) puis nettoyer toutes les parties de l'arme\
`· Test de tir :` Pdp test de si il tire ou pas en fonction des situations proposées\
`· Vérification :` Aller vérifier le coffre à sa maison

***

## | Informations supplémentaires :

**• Méthodes de transport :**\
· Holster autobloquant ou dans sa mallette de transport\
· Malette de transport verrouillée par code et dans le coffre de votre véhicule\
· Les chargeurs doivent se trouver dans un autre compartiment sécurisé et verrouillé et se situé ailleurs dans le véhicule.

**• Mise en incapacité d'une arme :**\
· Retirer le chargeur et sortir la balle chambrée\
· Enclencher la sécurité\
· Mettre son arme dans son holster autobloquant\
· Désamorçage du percuteur de douille\
· Disponible au SAPD\
· Le percuteur est la partie adjacente au chien

**• Entretien :**\
· Faire entretenir son arme par les services du SAPD (agréer par le gouvernement)\
· Entretenir l'arme soi-même\
· Une formation peut être dispensée en physique afin de le faire soi-même.\
· Démonter, nettoyer, graisser et remonter correctement votre arme.

· Tous les mois, vous devez faire réviser votre arme auprès du SAPD.

· Extrait de casier : 2'500$

· Formation : 5000$ avec examen, si loupé à payer quand même et vous pouvez compter un deuxième essayé 1 semaine plus tard et re 5'000$


# Recrutement

Le recrutement est crucial. Voici une base sur laquelle vous pouvez vous appuyer pour mener à bien le processus de recrutement.

## Fonctionnement du processus de recouvrement de A à Z

Voici comment va se dérouler le processus de recrutement, depuis l'arrivée de la personne au Poste de Police pour obtenir des informations, jusqu'au moment où elle est acceptée en tant que cadet dans nos rangs. Bien entendu, il s'agit d'une explication du fonctionnement que nous vous recommandons de suivre pour éviter les erreurs ou les oublis.

***

### Arrivé de la personne au Poste de Police

Une fois que la personne est arrivée, qu'elle ait déjà une expérience en tant qu'agent de police ou non, en tant que recruteur compétent, vous pourrez procéder aux tests physiques. Bien sûr, veuillez recueillir les informations suivantes : prénom, nom et numéro de téléphone à transmettre à l'endroit dédié au recrutement.

### Explication avant l'entrainement physique de l'individu(e)

**1. Tenue de l'individu(e)** La personne doit porter une tenue assez sportive, souvent composée de : un short, un t-shirt et des chaussures de sport.

**2. Direction au terrain d'entrainement :** [Photo de l'endroit](https://media.discordapp.net/attachments/797089418003480596/1163823823691448330/image.png?ex=6540fa66\&is=652e8566\&hm=200847aaf98b6b1e23000894534133913e60fe3b63b42afddc5ddf7a502d6051&) - [Position GPS](https://media.discordapp.net/attachments/797089418003480596/1163824952877789205/image.png?ex=6540fb73\&is=652e8673\&hm=6c74c270319ee423ab4dc2c6611fe6938af8a750b850fd46c1b429a1cc772f95&)

**3. Expliquer à l'individu(e) :**\
· Ce test physique peut être éliminatoire.\
· Toutes les remarques faites pendant l'entraînement ont pour but de réaliser de petits tests psychologiques.\
· Aucune note ne sera divulguée, car les tests seront destinés à la vérification plutôt qu'à l'évaluation.

***

### Entrainement physique de l'individu(e)

**1. Echauffement :** La personne peut faire des [Squat](https://cdn.discordapp.com/attachments/797089418003480596/1163828190813368370/20231017151455_1.jpg?ex=6540fe77\&is=652e8977\&hm=cb01926b8d0c4d338ca0e8cb2ef86d8b535e9dc3d1266219b30e8b0d00ca6cc1&), [Abdo](https://cdn.discordapp.com/attachments/797089418003480596/1163828202616135841/20231017151526_1.jpg?ex=6540fe7a\&is=652e897a\&hm=73f0bb6bebda418f23861f5e5febe8c0c888429b7304193b3427663479d8dc65&) ou même [Jumping Jack](https://cdn.discordapp.com/attachments/797089418003480596/1163828216407019520/20231017151538_1.jpg?ex=6540fe7d\&is=652e897d\&hm=af71c69dbd9496d034f3f201102c89d3266b347af2be622f2ec26735a6567e29&).

**2. Tour de terrain:** Faire 3 [tours du terrain](https://cdn.discordapp.com/attachments/797089418003480596/1163828679323951205/image.png?ex=6540feec\&is=652e89ec\&hm=b5f1145eeb73fa01bfd6752f83496768ac6eeb67461c208e1fdd6412b2950c9c&)

**3. Traction et autres:** La personne va devoir faire des [tractions](https://cdn.discordapp.com/attachments/797089418003480596/1163829092479668245/image.png?ex=6540ff4e\&is=652e8a4e\&hm=8917617f8c746d26e55c21d0748484ce1e7487d1f72136e721f828c4958af9b0&) *(chinup)*

**4. L'entrainement des escaliers:** La personne devra [monter des escaliers, se rendre à l'autre rangée, puis redescendre et aller à l'autre rangée](https://cdn.discordapp.com/attachments/797089418003480596/1163834926978834472/image.png?ex=654104bd\&is=652e8fbd\&hm=c6e4a176b9084de3eaf07a3351de1d6ddb23a6c5f5aff06677563a93528091a8&), jusqu'à la fin.

**5. Tour de terrain :** Petit [tour du terrain](https://cdn.discordapp.com/attachments/797089418003480596/1163828679323951205/image.png?ex=6540feec\&is=652e89ec\&hm=b5f1145eeb73fa01bfd6752f83496768ac6eeb67461c208e1fdd6412b2950c9c&) en marchant, parler avec l'individu(e).

**6. Imagination / Bonus :** Vous avez l'histoire du sable ou vous pouvez réaliser ce que vous avez en tête.

**7. Debrief :** Débrief avec la personne.

***

### Entretien au Poste de Police

**1. Quelle est votre relation avec les forces de l'ordre ?** *"L'idée derrière cette question est de déterminer si la personne a, par exemple, un membre de sa famille qui a été policier, ou si la personne a déjà commis une petite erreur dans sa vie."*

**2. Pourquoi cette envie de rejoindre le S.A.P.D** *"Peu importe la réponse à la première question, cette dernière peut être souvent posée."*

**3. Connait tu la différence entre le SAPD et le LSPD ?** Le SAPD, c'est-à-dire le 'San Andreas Police Department', est une force de police d'État, tandis que le LSPD est un service de police de Los Santos et Blaine County.


# Équipements de la Police

### Équipement LSPD:

· Matraque\
· Lampe torche\
· Tazer X-26\
· Radio\
· Pistolet Glock 17\
· MP5\
· M4A1 \
· Tazer X-26 : \
&#x20;  · Portée de 4-5 m pour 50'000v à 2 milliampères\
&#x20;  · Bloque le système nerveux central engendrant une paralysie temporaire\
&#x20;  · Pas de tazer pour les personnes frêles, enfants, âgée, ayant des problèmes de santé ou armée\
&#x20;  · Risque de mort ou de tir pour les personnes armées suite à la contraction musculaire engendrée par la décharge

***

### Arme à feu:

**• Qu'est-ce que c'est ?**\
· Dispositif de mort\
· Ne pas mettre dans les mains de n'importe qui\
· Usage dans des conditions spécifiques:\
&#x20;  · Légitime défense: réponse proportionnée\
&#x20;  · Assistance à personne en danger\
&#x20;  · Ordre direct d'un supérieur motivé\
&#x20;  · Braquage\
&#x20;  · Prise d'otage\
· Être préparé aux conséquences à savoir la mort et la psychologie

**• Conditions d'utilisations :**\
· Chaque balle tirée doit être justifiée via un rapport:\
&#x20;  · Date\
&#x20;  · Heure\
&#x20;  · Lieu\
&#x20;  · Victime des tirs\
&#x20;  · Description brève des faits\
&#x20;  · Alternatives essayées avant usage de l'arme\
&#x20;  · Motif de l'utilisation de l'arme


# Formation Henry/SAD

### Le Pilote :

> **Questions**

**• Pouvez-vous piloter un hélicoptère en portant votre tenue de service (travail) ?**\
· Non, je dois porter une tenue appropriée (aviation) pour piloter.

**• Est-ce que les autres passagers doivent également avoir une tenue appropriée ?**\
· Non, mais c'est préférable. Ils ne sont pas tenus d'être à l'aise dans leur tenue ou leur position dans l'hélicoptère car ils ne pilotent pas.

**• Quelle est la distance minimale à respecter par rapport au dernier bâtiment survolé en pieds (ft) ou en mètres :**\
· Entre 50 ft et 80 ft | Entre 15 mètres et 25 mètres.

**• Quelle est la distance minimale à maintenir en vol par rapport au dernier bâtiment :**\
· 250 ft, soit 76 mètres.

**• Quelle est la définition du C.A.T "Clear Air Turbulence" et à quoi cela sert ?**\
· C'est s'abstenir de la haute altitude pour éviter les C.A.T. "Clear Air Turbulence" qui sont des vents de fortes intensités en haute altitude.

**• Le pilote doit-il avoir un copilot avec lui ?**\
· Il reste quand même extrêmement conseillé, vous devez passer un appel radio afin de vérifier si un agent est disponible. Sinon, vous pouvez assumer le rôle de l'appel radio. Attention, cela peut être compliqué pour vous si vous n'arrivez pas à gérer ces deux tâches.

**• Quel est le code d'appel radio pour désigner une unité en hélicoptère ?**\
· Henry `MATRICULE`

**• Quel est le code radio à utiliser lorsqu'on effectue un décollage et un atterrissage ?**\
· Henry-XX décollage \[lieu]\
· Henry-XX Aterrissage \[lieu]

**• Quel carburant utilise l'hélicoptère ?**\
· Kérosène.

**• Quelle est la consommation de l'hélicoptère ?**\
· En 15 minutes, l'hélicoptère n'a plus assez de carburant car :

> *"Consommation de carburant en 1 heure = 40 litres."*\
> *"Consommation de carburant en 15 minutes = (40 litres / 60 minutes)*\
> *15 minutes = 10 litres."*

**• Temps de ravitaillement ?**\
· 2 minutes

**• Quelle est l'altitude requise pour pouvoir observer en hélicoptère ?**\
· 1800 ft, soit 550 mètres.

***

### Les rôles dans un hélicoptère

**• Le pilote :**

· Pilote l'hélicoptère.\
· Écoute les appels radio du copilote ou de la direction pour connaître sa trajectoire.\
· Ne doit pas parler à la radio si un copilote est présent et qu'il possède les informations nécessaires.\
· Se concentrer sur ses actions.\
· Peut changer de radio (Sierra) pour informer aux aérodrome de leur position

**• Le copilot :**\
· Doit transmettre les informations par radio.\
· Doit être concentré sur les cibles à garder à l'œil.\
· Doit également rester concentré sur l'environnement qui entoure l'hélicoptère.

**• Peux tu me citer les 6 informations de l'**[**intérieur du tableau de bord**](https://media.discordapp.net/attachments/797089418003480596/1162471038886612992/image.png?ex=653c0e85\&is=65299985\&hm=75c05d89b6e9004b9dc27eecfca0e9d6f32c01d546158d5e58acbbfe8009cfaa&=) **:**&#x20;

<div align="left"><figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FrRjjWAXGjqcXc1jirgqW%2Fimage.png?alt=media&amp;token=b1ad1d77-0e7d-4d0a-919e-c93c1e9f323f" alt=""><figcaption></figcaption></figure></div>

***

### Mise en situation

· Direction aéroport :

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FB3lfztilCeYFaLBaWiEX%2Fimage.png?alt=media&amp;token=96e97c25-bea5-4f31-a541-0dd087fb5a1d" alt=""><figcaption></figcaption></figure>

· Entrainement stationnaire au plus proche du sol :&#x20;

<div align="center"><figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FyvzH2GeFAWpSUc2kuv3x%2Fimage.png?alt=media&amp;token=08c9b61c-fcbc-4af1-875e-df6d662936bb" alt="" width="563"><figcaption><p>Tour autour de l'avion</p></figcaption></figure></div>

· Entraînement à se déplacer à très basse altitude :  \
`La personne doit rester sur la ligne avec les points et faire un tour entier.`

· Entraînement à reculer à très basse altitude : \
`La personne doit rester sur la ligne avec les points et faire un tour entier en reculant.`

· Se poser sur le toit du bâtiment du Mont Chiliad, se poser dans les deux configurations : \
`Queue en avant et ensuite en arrière`*`(sol pas stable)`*&#x20;

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2Fl1C7CnSOvhOIYXwxo3uG%2Fimage.png?alt=media&amp;token=a80be465-7570-46bc-9e45-5ef6ec547f99" alt="" width="563"><figcaption></figcaption></figure>

· Partit pour Sandy Shore le lac *(stabilisation au dessus de l'eau)*

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FlBbtTfTdJYdQPF1Sy1dv%2Fimage.png?alt=media&amp;token=e2c5c4ed-f5af-4fe5-8674-aa33d8596ff4" alt=""><figcaption></figcaption></figure>

· Passer le premier pont et le deuxième pont *(si il est confiant et si vous l'autorisé)* doucement en tenant compte de l'inertie.&#x20;

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FMm0dgwsN5lWuNKKZs8uN%2Fimage.png?alt=media&amp;token=0059c80f-be68-41f1-9f01-fcae96c0a579" alt="" width="563"><figcaption></figcaption></figure>

· Rentrer au PDP via cette voie, en lui demandant de longer la côte.\
`Doit être éloigné de 100 mètres de la côte de la base militaire`.&#x20;

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FyXumZ1DmYLMxwk1XLhiQ%2Fimage.png?alt=media&amp;token=6482d0bd-fa5b-4993-88af-1000ed680a1d" alt="" width="563"><figcaption></figcaption></figure>

### Législation

· Le pilotage doit se faire uniquement lors de temps dégagé afin d'éviter les risques d'accidents\
· Le pilotage ne doit jamais se faire sous une quelconque influence

### Sécurité

· Ne jamais passer à l'arrière de l'appareil ou proche du rotor arrière même éteint\
· Mettre le casque de communication\
· Mettre son harnais de sécurité\
· Avoir une tenue adaptée *(rien qui dépasse: cheveux, fils, etc...)*\
· Se baisser lorsque les pâles sont en rotation ou attendre l'arrêt\
· Ne pas se tenir dans la zone directe d'atterrissage de l'appareil

***

### [Livret de Formation Henry](https://docs.google.com/document/d/17NMRIKo3rlt3LleNZLZHb_Y2TOOk8f2eAI6UtrXR6LY/edit?usp=sharing)

### Modèle de Validation du Permis :&#x20;

· [Civil ](https://docs.google.com/document/d/13U39F8bg9AVwLNwATZzlJsK70KUFkqGH0T7I4cBhURk/edit?usp=sharing)\
· [Commercial](https://docs.google.com/document/d/1533uq3KN7YlOWKC7x2ObbXHfs4EYv6e077rlIK3sXVQ/edit?usp=sharing)\
· [Professional](https://docs.google.com/document/d/1NRphkaz_zIlxmNu7I29219IHY9AfjceCKUGAVj_4hPQ/edit?usp=sharing)

### Facturation :

· Civil: 17.500$\
· Commercial : 15.000$\
· Professional : 10.000$


# Formation Pit & Poursuite

### PIT

> **Questions et Explications**

**• C'est quoi un PIT ?**\
· "PIT" signifie "Pursuit Intervention Technique", également appelée "Precision Immobilization Technique". C'est une tactique où un véhicule de police percute délibérément le côté arrière du véhicule en fuite pour provoquer un effet de rotation, ce qui fait perdre le contrôle au conducteur en fuite et permet aux policiers de l'arrêter plus facilement.

**• A partir de quelle moment à t'on l'autorisation d'effectuer un PIT ?**\
· La course poursuite doit durer plus de 10 minutes.\
· La conduite de la personne est dangereuse *(circulation sur le trottoir, circulation à contresens)*.\
· Demander l'autorisation du Command Staff en présentant ces arguments.\
· Rouler à une vitesse inférieure à 100 km/h.\
· Être sur une route / voie dégagée *(Aucun risque de blessure accidentelle pour autrui)*

**• Si aucun agent du Command Staff est en service, je demande à qui pour effectuer un PIT ?**\
· Vous pourriez essayer de contacter un Command Staff par téléphone.\
· Vous pourriez également demander l'autorisation à un procureur.\
· Vous pouvez effectuer la manœuvre PIT si la course poursuite a duré plus de 20 minutes.

> **Mise en situation :**

**• Si vous disposez d'une CVPI et que vous avez l'autorisation de réaliser une manœuvre PIT sur un Baller 3ème Génération, le feriez vous ?**\
· Étant donné que cela pourrait être difficile à accomplir, je demanderais la présence d'un Explorer afin d'effectuer cette manœuvre en toute sécurité.

> **Mise en pratique**

`Le formateur explique que toutes les situations sont réunies et que l'agent a l'autorisation d'effectuer le PIT. Vous allez partir en véhicule, et la personne devra tenter de vous faire une manœuvre PIT.`\
· Rouler à 60 km/h\
· Rouler à 80 km/h.\
· Rouler à 95/100 km/h.\
· Rouler à plus de 101 km/h.\
· Alterner entre 60 et 80 km/h tout en effectuant des zigzags lents.\
· Tourner en rond, et il devra tenter de vous faire une manœuvre PIT.

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2F59j0Rt5VqBUpjAIG4HyP%2Fimage.png?alt=media&amp;token=9dd5e695-71b8-4b62-af9e-f61f4cb20ec4" alt=""><figcaption><p>Le devant de votre voiture, doit être aligner avec la roue de derrière</p></figcaption></figure>

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FQQjjJXv8MEyrkN1Fyw9M%2Fimage.png?alt=media&amp;token=d3cd6469-dba0-41f3-b5c0-dfd2612eb0a9" alt=""><figcaption><p>Approcher vous doucement afin de coller la route et pousser à l'intérieure</p></figcaption></figure>

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FSeY3JO8Mwks7TuZMdX6g%2Fimage.png?alt=media&amp;token=73b3d00f-a68e-40be-9e7b-3ede7fb2db5c" alt=""><figcaption><p>Faites en sorte de le contourner à gauche une fois le véhicule déséquilibré</p></figcaption></figure>

<figure><img src="https://137422021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUzUJOibY6x9GLCXAqxht%2Fuploads%2FiqQzIPOE54BcUocja7PH%2Fimage.png?alt=media&amp;token=f424c1f4-1ab3-463a-89e2-09da679f631c" alt=""><figcaption><p>Bien joué ! Vous savez le fonctionnement afin de PIT un véhicule</p></figcaption></figure>

***

### Poursuite :

`Vous expliquez à l'agent à quoi va servir cette formation et ce que vous allez faire.`

> *"En ce qui concerne cette étape de poursuite, je vais vous poser des questions, demander votre réaction et action pendant des mises en situation. Nous allons également examiner vos Calls Radio et observer votre conduite."*

> *"Pour des raisons de sécurité médiatique, nous allons utiliser deux véhicules : une Dodge Charger et un véhicule banalisé non sérigraphié, dans le but d'éviter tout problème politique. Le véhicule de police sérigraphié sera en Code 3, tandis que le véhicule banalisé n'affichera aucun code. Nous allons rouler rapidement sur des routes calmes avec une faible circulation. Votre mission consistera à suivre le véhicule tout en effectuant des appels radio sur une fréquence distincte de celle du service général du SAPD."*

**• Quelle est la Code Ten afin de dire une course poursuite :**\
· Le code radio est 10-80

**• Combien de véhicule sont autoriser à poursuivre un véhicule occupé 2x ?**\
· 3 agents *(maximum 2 véhicules)* | En cas d'individus armés, 4 agents *(maximum 3 véhicules)*

**• Qui est autorisé à effectuer des Calls Radio :**\
· L'opérateur radio ou le conducteur si je suis en Lincoln.

**• Je met quel CODE si je poursuit un véhicule ?**\
· Les Code 3 (Gyrophares et Sirènes)

**• Je met quel code si je suis le véhicule d'aide sur un 10-80**\
· Je met seulement les Code 2 (Gyrophares)

**• Pourquoi les Code 2 ?**\
· Éviter la pollution sonore *(éviter un excès de bruit)*, et dans le cas où j'essaie d'anticiper le virage du véhicule, je sais où se dirige l'unité et ça évite que je me perde en entendant mes propres sirènes.

**• Si je perds le véhicule que je poursuivais, que dois-je faire ?**\
· J'informe à la radio que j'ai perdu le véhicule à tel endroit, rappelle l'identité visuelle de ce dernier, et coupe tous mes codes afin d'éviter que la personne ne connaisse ma position.

> **Mise en situation :**

`Le formateur informe un 10-7 pour formation, de lui même et les agents présent pour le test. Informe qu'il est joignable par téléphone. Et se déplace dans une autre fréquence radio avec les agents pour les tests`

**• Donnez un exemple de code 10 pour "le formateur donne un exemple de situation" ?**\
· `Une voiture refuse de se soumettre à un contrôle routier. Il s'agit d'une Greenwood Verte avec deux personnes à bord, et vous vous trouvez dans le quartier de Little Seoul.`\
· Adam 59, le 10-38 se transforme en 10-56 d'une Greenwood Verte occupée 2x, située dans la zone de Little Seoul.

**Pour la formateur**\
`Début de la course poursuite :`\
· Vérifiez que les CODE 3 sont bien allumés. · Demandez qu'il effectue des 10-20 oraux toutes les 15 secondes. (Pendant 1 minutes)\
`Exemple : Actuellement Groove Street ou Direction Parking Rouge`\
· Assurez vous que l'agent ne tente pas de se coller ou de heurter le coffre du véhicule, et demandez lui de se rappeler qu'il doit se positionner à l'arrière gauche ou droit du véhicule pour éviter les risques de coups de lapin lors d'un freinage brusque.

`Vous devez effectuer ce test pendant une période de 5 à 10 minutes afin d'évaluer s'il est capable de poursuivre un véhicule seul et d'évaluer son niveau de conduite.`


# Le Légal

Voilà comment créer, reprendre une entreprise sur Paradise Life ?

> Beaucoup de personnes ont peur de rejoindre le légal et parfois créer une entreprise car il ne pas save comment faire, que ça soit la création de dossiers où ce qu'on attend d'eux, Paradise Life vous propose une aide :)

{% content-ref url="/pages/S7HkNVH7xl9o4egSxQef" %}
[Créer une entreprise](/categorisation/le-legal/creer-une-entreprise)
{% endcontent-ref %}

{% content-ref url="/pages/FRIAUCsHZPhLXa34fRyq" %}
[Broken mention](broken://pages/FRIAUCsHZPhLXa34fRyq)
{% endcontent-ref %}


# Créer une entreprise

Cette rubrique nous allons expliquer notre vision des entreprises sur Paradise Life, ça veut dire ce qu'on attend d'une entreprise, ce qu'il faut faire pour créer/récupérer une entreprise, etc.

<details>

<summary>Comment créer une entreprise ?</summary>

Pour créer une entreprise, il est nécessaire d'avoir un dossier solide, nous savons que tout le monde n'est pas un professionnel de la création d'entreprise, donc voici une petite aide qui va être utile plus d'une fois :&#x20;

* Format [Google Slides](https://docs.google.com/presentation/d/1Jz-CO53__9YXNWkP-XibTxRTNYWHvvr17RUY906LEr4/edit?usp=sharing) *(Fichier > Créer une copie > Présentation entière*)

**ou version écrite :**&#x20;

* **La première page :** Il est nécessaire (pour ne pas dire obligatoire), de toujours écrire le nom de l'entreprise, mettre le logo de l'entreprise, une petite description de l'entreprise sur cette première page pour donner un avant-goût
* **La deuxième page :** Elle est souvent suivie d'une description avancée de l'entreprise avec l'histoire de cette dernière.
* **Troisième page :** Un sommaire du document est nécessaire pour faire comprendre au lecteur l'utilité de chaque page.
* **Sommaire :** Dans ce sommaire *(lire le* [*Google Slides*](https://docs.google.com/presentation/d/1Jz-CO53__9YXNWkP-XibTxRTNYWHvvr17RUY906LEr4/edit?usp=sharing) *pour mieux comprendre)*, il faut *"Hiérarchie de l'entreprise, Gestion de l'argent, Les recettes, Les véhicules, Le mapping, et d'autres choses comme les tenues, le discord, etc..."*

</details>

<details>

<summary>Comment récupérer une entreprise</summary>

Pour récupérer une entreprise, tout dépend de niveau de récupération que vous voulez faire :&#x20;

* **Si c'est une refonte de l'entreprise** *(recettes, vision de l'entreprise, salaire, grades)*, le modèle de "[Commencer créer une entreprise](#comment-creer-une-entreprise)" est le mieux.
* **Si vous récupérez l'entreprise qui était desserte,** et que vous ne faites aucun changement, effectué un ticket afin de savoir les recettes, salaires, grades (si vous ne les connaissez pas) Et si tout vos correspond un simple dossier qui explique pourquoi vous voulez le reprendre suffit. Mais si vous effectuez un changement un dossier plus complet et nécessaire (donc comme dans "[Comment créer une entreprise ?](#comment-creer-une-entreprise)")
* **Si vous récupérez une entreprise de manière rôleplay,** informer simplement le Staff *(réf. légaux)* via un ticket de ce changement.

</details>

<details>

<summary>Ce que Paradise Life attend d'une entreprise</summary>

Oulààà, cette catégorie on l'aime bien :relaxed:, voici une "petite" liste :&#x20;

* On souhaite d'abord que tous les joueurs prennent du plaisir quand il travaille dans ce job, après vous gérer l'entreprise de façon rôleplay, mais pas de forcing.
* Organiser ou aider à l'organisation d'événements en RP, vous générer un certain nombre d'argent que certains auraient besoin pour faire réunir des joueurs afin qu'il s'amuse.
* Si vous faites une entreprise que pour l'argent, ce n'est pas la bonne vision et on vous conseille très vite d'oublier cet argument.

</details>


# L'illégal

Voilà comment créer, reprendre un groupe sur Paradise Life ?

> L'illégal est important sur tous les serveurs, nous avons une vision propre à nous-mêmes, où certains détails sont rares à voir sur certains serveurs.

{% content-ref url="/pages/qjnvMufpaXN99roXdmvs" %}
[Broken mention](broken://pages/qjnvMufpaXN99roXdmvs)
{% endcontent-ref %}

{% content-ref url="/pages/OC4ZLR6NNdf77XB27vRf" %}
[Créer un groupe illégal](/categorisation/lillegal/creer-un-groupe-illegal)
{% endcontent-ref %}


# Créer un groupe illégal

Alors sur cette rubrique nous allons expliquer notre vision de l'illégal sur Paradise Life, ça veut dire ce qu'on attend d'un groupe illégal, ce qu'il faut faire pour créer/récupérer un groupe etc...

<details>

<summary>Comment créer un groupe illégal ?</summary>

Pour créer un groupe illégal, il est nécessaire d'avoir un dossier solide, nous savons que tout le monde n'est pas un professionnel de la création d'un groupe, donc voici une petite aide qui va être utile plus d'une fois :&#x20;

* Format [Google Slides](https://docs.google.com/presentation/d/13czVjNx-bd9bVUvWhVKqZjFM0aG0TbVRYORjcXoTuK8/edit?usp=sharing) *(Fichier > Créer une copie > Présentation entière*)

**ou version écrite :**&#x20;

* **La première page :**&#x49;l est nécessaire (pour ne pas dire obligatoire), de toujours écrire le nom du groupe, mettre le logo représentatif du groupe, avec une mini-phrase d'accroche sur cette première page pour donner un avant-goût.
* **La deuxième page :** Elle est souvent suivie d'une description avancée du groupe avec l'histoire de cette dernière.
* **Troisième page :** Un sommaire du document est nécessaire pour faire comprendre au lecteur l'utilité de chaque page.
* **Sommaire :** Dans ce sommaire *(lire le* [*Google Slides*](https://docs.google.com/presentation/d/13czVjNx-bd9bVUvWhVKqZjFM0aG0TbVRYORjcXoTuK8/edit?usp=sharing) *pour mieux comprendre)*, il faut *"Hiérarchie du groupe, Vos scènes pour le légal & l'illégal, votre vision, Les véhicules, Le mapping, et d'autres choses comme les tenues, le discord, etc..."*

</details>

<details>

<summary>Comment récupérer un groupe illégal</summary>

Pour récupérer un groupe, tout dépend de niveau de récupération que vous voulez faire :&#x20;

* Si \~3 joueurs sont dans un groupe, mais vous êtes un groupe de 10 joueurs, vous allez faire un dossier de reprise du groupe, et une discussion avec ses joueurs est nécessaire afin de savoir si vous êtes dans leurs visions et les grades qui vont prendre à votre arrivée. Le dossier de reprise, doit être comme un [dossier de création du groupe](#comment-creer-un-groupe-illegal), *(voir rubrique au-dessus)*.
* Si vous récupérez un groupe qui est désert, nous vous conseillons de regarder [cette page](broken://pages/qjnvMufpaXN99roXdmvs).
* **Si vous récupérez un groupe de manière rôleplay,** informer simplement le Staff *(réf. illégaux)* via un ticket de ce changement.

</details>

<details>

<summary>Ce que Paradise Life attend d'un groupe illégal</summary>

Oulààà, cette catégorie on l'aime bien :relaxed:, voici une "petite" liste :&#x20;

* On souhaite d'abord que tous les joueurs prennent du plaisir quand ils jouent dans votre groupe ou qu'il rencontre votre groupe, après vous gérer l'entreprise de façon rôleplay, mais pas de forcing.
* Organiser ou aider à l'organisation d'événements en RP, vous générer un certain nombre d'argent que certains auraient besoin pour faire réunir des joueurs afin qu'il s'amuse.
* Soyez présent dans le léga, l'illégal à toujours était plus nombreux que le légal que sur les serveurs et il est primordial que vous nous aidiez à soutenir le légal
* Ne bloquer vos scènes que sur vos points forts, aller sur des terrains que vous connaissez pas.
* Jouer avec les autres joueurs que ça soit des groupes illégaux, des civils ou le SAPD

</details>


# App News

:flag\_fr: App News est une application non officielle de lb-phone. Aucun autre téléphone ne peut supporter cette application. L'application sera disponible pour une seule entreprise (WeazelNews, par exemple) afin de publier des articles. Compatible avec ESX & QBCore.

:flag\_us: App News is an unofficial app from lb-phone. No other phone can support this app. The app will be available for a single company (WeazelNews, for example) to publish articles. Compatible with ESX & QBCore.

***

:flag\_fr: **Fonctionnalités**\
• Framework : ESX & QBCore\
• Supprimer les articles via l'application en étant staff (permissions modifiables)\
• Insertion d'images ou de gifs\
• Système de like Système de configuration simple et efficace (Dépendance d'un script)\
• Afficher l'image en grand via un script externe et gratuit : [lien](https://github.com/skypr0d/ShowScreenshot)

:flag\_us: **Feature :** \
• Framework: ESX & QBCore\
• Delete articles via the app as staff *(modifiable permissions)*\
• Insert images or gifs\
• Like system Simple and effective configuration system *(Script dependency)*\
• Display the image in large size via an external and free script : [link](https://github.com/skypr0d/ShowScreenshot)

***

{% embed url="<https://forum.cfx.re/t/lb-phone-plugin-app-news/5251202>" %}

***

### PREVIEW

{% embed url="<https://youtu.be/Jfcdiqf6F1A>" %}

***

### BUY THE SCRIPT

{% embed url="<https://skyprod.tebex.io/package/6362042>" %}

{% embed url="<https://skyprod.tebex.io/package/6362028>" %}

***

### INSTALLATION

:flag\_fr: \
1\. Téléchargez la ressource sur votre <https://keymaster.fivem.net/asset-grants>\
2\. Insérez la ressource à l'endroit souhaité sur votre serveur\
3\. Lancez la ressource dans le fichier `.cfg`\
4\. Configurez vos fichiers `config.lua` et `config.js` selon vos préférences\
5\. Exécuter le code `.sql` dans votre base de donnée

:flag\_us: \
1\. Download the resource from your <https://keymaster.fivem.net/asset-grants>\
2\. Insert the resource in the desired location on your server\
3\. Launch the resource in the `.cfg` file\
4\. Configure your `config.lua` and `config.js` files as you prefer\
5\. Execute the `.sql` code in your database

***

### Configuration

> Config.lua

```lua
ConfigNewsApp = {
    Framework = 'QBCore', -- ESX & QBCore
    JobRequired = 'weazelnews',
    ['Settings'] = {
        AuthorRequiredCharacters = 2, -- The number of the author of the publication must have at least (2 by default) characters to have his name written (otherwise it is written unknown)
        ESX_StaffsLists = {'owner', 'admin'},
        QBCore_StaffsLists = {'god', 'admin', 'mod'},
    },
    ['Translate'] = {
        -- Client Side 
        UnknownAuthor = "Inconnu",

        -- Server Side 
        TimeAgoIfError = "Aucune information",
        PostIdNotFound = "~r~Le post n'a pas était trouvé",
        PostsDeleted =  "~g~Article n°%s supprimé",
        PostPublished = "~g~Article publié",

        AppNotif_Title = "Nouvelle publication",
        AppNotif_Description = "Le WeazelNews vient de publier un nouvel article.",

        ['TimeAgo'] = {
            Instant = "Il y a quelques instants",
            Minutes = "Il y a %s minute(s)",
            Hours = "Il y a %s heure(s)",
            Day = "Il y a %s jour(s)",
            Months = "Il y a %s mois",
            Years = "Il y a %s an(s)",
        },
    },
    ['ShowNotification'] = function(text) -- Notification type, depending on your framework or external script (Server notifications are forwarded here)
        if ConfigNewsApp.Framework == 'ESX' then 
            TriggerEvent('esx:showNotification', text)
        elseif ConfigNewsApp.Framework == 'QBCore' then 
            TriggerEvent('QBCore:Notify', text)
        end
    end,
}
```

> Config.js

```javascript
const Config = {  
    ColorDeleteArticle : "red", // lb-phone color (red, blue, green)
};

const Translate = {
    UnableLoadImage : "Impossible de charger l'image.",

    PublishedBy : "Publié par",
    Like : "j'aime",

    AlreadyLiked : "Vous avez déjà aimé cette article.",
    LikeArticle : "Vous venez d'aimer cette article.",

    DeleteThisArticle : "Supprimer cette article",

    MustWriteTitle : "Veuillez au minimum écrire un titre à votre article afin de le publier.",
};
```


# Lockers UI

:flag\_fr: Locker UI est un script de gestion de casier pour vos métiers. Il est sécurisé via un mot de passe à 4 chiffres. Vous pouvez ajouter et supprimer des casiers, définir une limite de casiers créables et changer le nom des casiers. Compatible avec ESX & QBCore et avec l'inventaire OX & QS.

:flag\_us: Locker UI is a locker management script for your professions. It is secured with a 4-digit password. You can add and remove lockers, set a limit on the number of lockers that can be created, and change the locker names. Compatible with ESX & QBCore and with the inventories OX & QS.

***

{% embed url="<https://forum.cfx.re/t/lockers-ui-esx-qb-7-escrow-30-open-source/5210615>" %}

***

### Preview Vidéo&#x20;

{% embed url="<https://youtu.be/a0PgpeGXqGM>" %}

### Buy&#x20;

{% embed url="<https://skyprod.tebex.io/>" %}

***

### Installation&#x20;

:flag\_fr: Téléchargez le script depuis votre keymaster, extrayez le fichier, placer le dans le dossier de votre choix et ajoutez-le à votre `resources.cfg` / `server.cfg`. Ensuite, ouvrez votre fichier `sql.sql` et insérez-le dans la base de données.

:flag\_us: Download the script from your keymaster, extract the file, place it in the folder of your choice and add it to your `resources.cfg` / `server.cfg`. Then, open your sql.sql file and insert it into the database.

```sql
CREATE TABLE `s_lockers` (
  `label` varchar(50) NOT NULL,
  `lists` longtext NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;


ALTER TABLE `s_lockers`
  ADD PRIMARY KEY (`label`);
COMMIT;
```

***

### Configuration

:flag\_fr: Vous allez utiliser plusieurs fichiers pour configurer au maximum le script. Les deux fichiers principaux sont ceux ci-dessous :

:flag\_us: You will use several files to configure the script to the maximum extent. The two main files are those below:

<details>

<summary>Config.lua</summary>

```lua
Config = {}

Config.LockerMenu = {

    ['Framework'] = 'QBCore', -- QBCore or ESX
    ['Inventory'] = 'QS', -- QS, OX (QS potentially automatically creates for the qb-inventory)

    ['Settings'] = { 
        MinCharacForNewName = 3, -- Minimum number of characters to change the locker name
        MinNumberForNewPassword = 4, -- Minimum number of digits to change the password

        DrawMarkerDistance = 10, -- The distance to display the marker
        InteractDistance = 2.5, -- The distance in order to be able to interact and open the locker menu

        KeyOpenMenu = 38, -- The key to open the menu : https://docs.fivem.net/docs/game-references/controls/#controls
    },

    ['Lockers'] = {
        ['lspd_locker'] = {
            TitleName = "Los Santos Police Department",
            Coords = vector3(316.38, -272.42, 53.92),
            MarkerOption = {Type = 6, dirX = 0.0, dirY = 0.0, dirZ = 0.0, rotX = -90.0, rotY = 0.0, rotZ = 0.0, scaleX = 0.7, scaleY = 0.7, scaleZ = 0.7, red = 255, green = 255, blue = 255, alpha = 100, bobUpAndDown = false, faceCamera = false, p19 = true, rotate = false, textureDict = false, textureName = false, drawOnEnts = false}, -- Yes, lots of settings ^^
            MarkerZPosition = (-0.97), -- If you want to increase the height of the marker. Remove the “-”

            ['Restriction'] = {
                JobName = "police", -- "job_name" or "none"
                GradeJob = {'all'}, -- {'all'} or {'1','2','3','4'}
                LockerManagement = 3, -- Grade for Add, Remove, Edit Lockers
                MaxLockers = 20, -- Maximum number of lockers
            },
        },
        ['lspd_locker2'] = {
            TitleName = "Emergency Medical Services",
            Coords = vector3(307.56, -271.09, 53.95),
            MarkerOption = {Type = 6, dirX = 0.0, dirY = 0.0, dirZ = 0.0, rotX = -90.0, rotY = 0.0, rotZ = 0.0, scaleX = 0.7, scaleY = 0.7, scaleZ = 0.7, red = 255, green = 255, blue = 255, alpha = 100, bobUpAndDown = false, faceCamera = false, p19 = true, rotate = false, textureDict = false, textureName = false, drawOnEnts = false}, -- Yes, lots of settings ^^
            MarkerZPosition = (-0.97), -- If you want to increase the height of the marker. Remove the “-”

            ['Restriction'] = {
                JobName = "ambulance", -- "job_name" or "none"
                GradeJob = {'1','2','3','4'}, -- {'all'} or {'1','2','3','4'}
                LockerManagement = 7, -- Grade for Add, Remove, Edit Lockers
                MaxLockers = 10, -- Maximum number of lockers
            },
        },

        ['test_video'] = {
            TitleName = "Tuto Vidéo",
            Coords = vector3(-1017.69, -1129.02, 2.12),
            MarkerOption = {Type = 6, dirX = 0.0, dirY = 0.0, dirZ = 0.0, rotX = -90.0, rotY = 0.0, rotZ = 0.0, scaleX = 0.7, scaleY = 0.7, scaleZ = 0.7, red = 255, green = 255, blue = 255, alpha = 100, bobUpAndDown = false, faceCamera = false, p19 = true, rotate = false, textureDict = false, textureName = false, drawOnEnts = false}, -- Yes, lots of settings ^^
            MarkerZPosition = (-0.97), -- If you want to increase the height of the marker. Remove the “-”

            ['Restriction'] = {
                JobName = "ambulance", -- "job_name" or "none"
                GradeJob = {'1','2','3','4'}, -- {'all'} or {'1','2','3','4'}
                LockerManagement = 3, -- Grade for Add, Remove, Edit Lockers
                MaxLockers = 25, -- Maximum number of lockers
            },
        },






    },

    ['ShowNotification'] = function(text, typenotif) -- Notification type, depending on your framework or external script (Server notifications are forwarded here)
        if Config.LockerMenu['Framework'] == 'QBCore' then 
            TriggerEvent('QBCore:Notify', text, typenotif)
        elseif Config.LockerMenu['Framework'] == 'ESX' then 
            TriggerEvent('esx:showNotification', text, typenotif)
        end
    end,

    ['Translate'] = { 
        -- Client Side

        Interact = "[E] Ouvrir",

        NeedMoreCharacters = "Le nom du casier doit comporter au minimum %s caractères.",
        NameChanged = "Changement du nom du casier effectué : de '%s' à '%s'.",


        NeedMoreNumber = "Le mot de passe doit contenir %s chiffres.",
        PasswordIsNotNumbers = "Le mot de passe ne contient pas que des chiffres.",
        NumberTooLow = "Le mot de passe doit comporter plus de %s chiffres.",

        NotBeNegative = "Le mot de passe ne doit pas être une valeur négative.",
        PasswordChanged = "Le mot de passe du casier a été changé : de '%s' à '%s'.",

        LockerDeleted = "Casier n°%s supprimé (Sous le nom %s).",

        NotHaveAccess = "Vous n'avez pas les accès nécessaires pour effectuer cette action.",

        IncorrectPassword = "Mot de passe incorrect.",

        -- Server Side : 
        NewLocker = "Nouveau casier",
        NewLockerCreated = "Nouveau casier créé.",
    },

    ['OpenInventory'] = function(inv_name) -- For any requests for inventory management additions, come to my Discord if you're having trouble : discord.gg/EyT4mt8Pwf
        if Config.LockerMenu['Inventory'] == 'QS' then 
            local inventory_settings = { maxweight = 20000, slots = 10 }
            TriggerServerEvent("inventory:server:OpenInventory", "stash", inv_name, inventory_settings)
            TriggerEvent("inventory:client:SetCurrentStash", inv_name)
        elseif Config.LockerMenu['Inventory'] == 'OX' then 
            local ox_inventory = exports.ox_inventory
            local inventory_settings = { maxweight = 20000, slots = 10 }

            if ox_inventory:openInventory('stash', inv_name) == false then
                TriggerServerEvent('Lockers:Inventory:Register', inv_name, inventory_settings)
                ox_inventory:openInventory('stash', inv_name)
            end
        end 
    end,
}

LockersUI_DrawText = function(x, y, z, text)
    local px,py,pz=table.unpack(GetGameplayCamCoords())
    local dist = GetDistanceBetweenCoords(px,py,pz, x,y,z, 1)
 
    local scale = (1/dist)*2
    local fov = (1/GetGameplayCamFov())*100
    local scale = scale*fov
        SetTextScale(0.0*scale, 0.40*scale)
        SetTextFont(4)
        SetTextProportional(1)
        SetTextColour(255, 255, 255, 215)
        SetTextDropshadow(0, 0, 0, 0, 255)
        SetTextEdge(1, 0, 0, 0, 150)
        SetTextDropShadow()
        SetTextOutline()
        SetTextEntry("STRING")
        SetTextCentre(1)
        AddTextComponentString(text)
        SetDrawOrigin(x,y,z, 0)
        DrawText(0.0, 0.0)
        ClearDrawOrigin()
end
```

</details>

<details>

<summary>Config.js</summary>

```javascript
const Config = {
    EnableBlackBackground: true, 
    ColorBackground: "rgba(0, 0, 0, 0.7)", 
    
    BlurOpacity : "3px", // 0px = disabled | 3px = default

    ['NewNameSettings'] : {
        MinLenght : 3,
        MaxLength : 30,
    },
};

const Translate = {
    CreateLocker : "Ajouter un casier",

    ['NewLocker'] : {
        NewLocker : "Nouveau casier",
        Open : "Ouvrir",
        Edit : "Gestion",
        LockerLimitReached : "Vous avez atteint la limite de casier créable",
    },

    ['Open'] : {
        EnterPassword : "Saisiez le mot de passe",
        Placeholder : "...",
    },

    ['Edit'] : {
        ChangeNameLocker : "Changer le nom du casier",
        Placeholder_newname : "Casier de ......",

        ChangePasswordLocker : "Changer le mot de passe",
        Placeholder_newpassword : "1111-9999",

        ValidEmojie : "✔",

        ['Footer'] : {
            DeleteLocker : "Supprimer le casier",
            Valid : "Valider",
            Cancel : "Annuler",
        },
    },

    NotHaveAcces : "Vous n'avez pas les accès requis pour cette action",

    ['Footer'] : {
        Valid : "Valider",
        Cancel : "Annuler",
    },
};
```

</details>

:flag\_fr: Après, vous avez le fichier `server_config.lua` afin de gérer les journaux, l'impression dans la console pour le casier supprimé inutile, et la gestion de l'inventaire du côté serveur.

:flag\_us: Afterward, you have the `server_config.lua` file to manage logs, printing in the console for unnecessary removed lockers, and server-side inventory management.

<details>

<summary>server_config.lua</summary>

```lua
MySQL.ready(function() -- Small addition to remove boxes not inserted in your config.lua
    local lockers_lists = MySQL.query.await('SELECT * FROM `s_lockers`')
    for _,lockers in pairs(lockers_lists) do
        if not Config.LockerMenu['Lockers'][lockers.label] then 
            MySQL.update('DELETE FROM `s_lockers` WHERE label = ?', {lockers.label}, function(result)
                print("[^1DEBUG^7] Casier sous le nom ^3"..lockers.label.."^7 supprimé de la base de données car il n'était pas mentionné dans votre fichier Config.lua.")
                -- print("[^1DEBUG^7] Locker under the name ^3"..lockers.label.."^7 deleted from the database because it was not mentioned in your Config.lua file.")
                Logs_TableDeletedDebug(lockers.label)
            end)
        end
    end
end)

RegisterNetEvent('Lockers:Inventory:Register', function(inv_name, inventory_settings)
    if source == 0 then return end 

    if Config.LockerMenu['Inventory'] == 'OX' then 
        local ox_inventory = exports.ox_inventory
        ox_inventory:RegisterStash(inv_name, inv_name, inventory_settings.slots, inventory_settings.maxweight)
    end
end)


local Logs_Webhook = {
    ['LockerDeleted'] ='https://discord.com/api/webhooks/',
    ['LockerAddNewLocker'] ='https://discord.com/api/webhooks/',
    ['TableDeletedDebug'] = 'https://discord.com/api/webhooks/',
}

Logs_LockerDeleted = function(source, name)
    if source == 0 then return end 

    local embeds = {{
        ["description"] = ("· **ID du joueur :** %s \n· **Pseudo du joueur :** %s \n· **Nom du casier supprimé :** %s"):format(tonumber(source), GetPlayerName(tonumber(source)), name),
        ["color"] = 15605278, -- https://www.colorhexa.com/30ff00
    }}
    PerformHttpRequest(Logs_Webhook['LockerDeleted'], function(err, text, headers) end, 'POST', json.encode({username=username,embeds=embeds}), { ['Content-Type'] = 'application/json' })
end

Logs_AddNewLocker = function(source, label, lists)
    if source == 0 then return end 

    local embeds = {{
        ["description"] = ("· **ID du joueur :** %s \n· **Pseudo du joueur :** %s \n· **Nom des casiers :** %s \n· **Total des casiers :** %s "):format(tonumber(source), GetPlayerName(tonumber(source)), label, #lists),
        ["color"] = 3211008, -- https://www.colorhexa.com/30ff00
    }}
    PerformHttpRequest(Logs_Webhook['LockerAddNewLocker'], function(err, text, headers) end, 'POST', json.encode({username=username,embeds=embeds}), { ['Content-Type'] = 'application/json' })
end

Logs_TableDeletedDebug = function(name)
    local embeds = {{
        ["description"] = ("· **Nom de la table supprimé :** %s"):format(name),
        ["footer"] = {
            ["text"] = "Supprimé de la base de données car il n'était pas mentionné dans votre fichier Config.lua.",
        },
        ["color"] = 13800222, -- https://www.colorhexa.com/30ff00
    }}
    PerformHttpRequest(Logs_Webhook['TableDeletedDebug'], function(err, text, headers) end, 'POST', json.encode({username=username,embeds=embeds}), { ['Content-Type'] = 'application/json' })
end
```

</details>

***

### Différence : ESCROW & OPEN-SOURCE

{% tabs %}
{% tab title="ESCROW" %}
:flag\_fr: La version escrow reste assez simple, comme montré dans la vidéo. Elle est vraiment spécialement conçue pour la configuration du script. Les modifications plus poussées ne vous sont pas fournies, bien que je pense vous avoir donné accès à de nombreuses modifications. C'est pourquoi le prix reste relativement bas pour la qualité de ce dernier.

:flag\_us: The escrow version remains quite simple, as shown in the video. It is specifically designed for script configuration. More advanced modifications are not provided, although I believe I have given you access to many adjustments. Hence, the price remains relatively low considering its quality.
{% endtab %}

{% tab title="OPEN-SOURCE" %}
:flag\_fr: La version open-source conserve le même tri des fichiers que l'escrow. Le changement, vous demanderez ? Vous aurez accès à tous les fichiers, bien sûr. Toute revente du script sera suivie de façon judiciaire. Cependant, vous pourrez apprendre le fonctionnement de certaines choses assez complexes.

:flag\_us: The open-source version maintains the same file sorting as the escrow. What's the change, you ask? You'll have access to all the files, of course. Any resale of the script will be legally monitored. However, you'll be able to learn the workings of some rather complex things.
{% endtab %}
{% endtabs %}


# Menu Props

:flag\_fr: Le menu Props est idéal pour permettre à vos joueurs d’ajouter des objets de décoration ou d’aider à la création de mini-événements. Ajoutez des props qui resteront persistants, mais se supprimeront automatiquement au bout d’un certain temps que vous aurez défini. Déplacez les props avec précision grâce à l’outil Gizmo ! Vous avez peur d’un abus ? Les membres du staff peuvent gérer tous les props du serveur !

:flag\_us: The Props Menu is perfect for allowing your players to add decorative objects or help create mini-events. Add props that remain persistent but will automatically be removed after a set time you define. Move props precisely using the Gizmo tool! Worried about abuse? Staff members can manage all server props !

***

{% embed url="<https://forum.cfx.re/t/menu-props-semi-permanent-full-syncro-etc/5345340>" %}

***

### Preview Vidéo&#x20;

{% embed url="<https://youtu.be/G4E4Dwsn298>" %}

### Buy&#x20;

{% embed url="<https://skyprod.tebex.io/package/6977899>" %}

***

### Feature

:flag\_fr:

* Menu RageUI Custom – Style épuré
* Suppression automatique des props au bout de *x* minutes
* Herse fonctionnelle (crève toutes les roues, même s’il n’y en a qu’une qui touche)
* Liste de props prédéfinis dans des catégories, ouverte à tout le monde ou aux jobs.
* Option admin ou ouverte à tout le monde : possibilité de spawn n’importe quel prop (dimension max à définir pour éviter les abus)
* Admin : voir tous les props, les supprimer, savoir qui les a posés
* Limite de props que peuvent poser les joueurs et le staff

:flag\_us:

* Custom RageUI Menu – Clean Style
* Automatic deletion of props after *x* minutes
* Functional spike strip (pops all tires, even if only one is touched)
* List of predefined props sorted by category, available to everyone or restricted to specific jobs
* Admin option or open to everyone: ability to spawn any prop (maximum size to be defined to prevent abuse)
* Admin: view all props, delete them, see who placed them
* Limit on the number of props that players and staff can place

***

### Installation&#x20;

:flag\_fr: Téléchargez le script depuis votre keymaster, extrayez le fichier, placer le dans le dossier de votre choix et ajoutez-le à votre `resources.cfg` / `server.cfg`. Ensuite, ouvrez votre fichier `sql.sql` et insérez-le dans la base de données.

:flag\_us: Download the script from your keymaster, extract the file, place it in the folder of your choice and add it to your `resources.cfg` / `server.cfg`. Then, open your sql.sql file and insert it into the database.

```sql
DROP TABLE IF EXISTS `s_props`;
CREATE TABLE IF NOT EXISTS `s_props` (
  `id` int NOT NULL AUTO_INCREMENT,
  `identifier` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
  `prop_name` varchar(30) COLLATE utf8mb4_general_ci NOT NULL,
  `timestamp` varchar(20) COLLATE utf8mb4_general_ci NOT NULL,
  `timestamp_limit` varchar(20) COLLATE utf8mb4_general_ci NOT NULL,
  `metadata` json DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=275 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
COMMIT;
```

***

### Configuration

:flag\_fr: Vous allez utiliser plusieurs fichiers pour configurer au maximum le script. Les deux fichiers principaux sont ceux ci-dessous :

:flag\_us: You will use several files to configure the script to the maximum extent. The two main files are those below:

<details>

<summary>Config.lua</summary>

```lua
Config = {}

Config.PropsMenu = { 
    DebugPrint = false, -- If true, the function will print all information. Disable this option if you do not want to display any output
    GradeAdmin = "admin",
    EnablePropsCustomForAdmin = true, -- If False, update the translate : button_title_admincustomprops
    PropsLimitPlayer = 20,
    PropsLimitStaff = 50,
    DimensionMax = 110.0,
    KeyPressedPlaceProp = 191, -- G
    AutomaticDeleteAfter = 120, -- (os.time() + (60 * Config.PropsMenu.AutomaticDeleteAfter)) 120 = 2h
    CheckDelayDeleteProp = 20, -- in minutes (the code is 60000 x ..) / Check every x minutes to remove the props that have deleted the
    EnableStinger = true,
    StingerList = {'p_ld_stinger_s', 'p_stinger_04', 'p_stinger_02'},
    DrawOutlineColor = {r = 255, g = 255, b = 153, alpha = 100},
    ['ShowNotification'] = function(text, typenotif) -- Notification type, depending on your framework or external script (Server notifications are forwarded here)
        TriggerEvent('QBCore:Notify', text, typenotif)
    end,
    ['Input'] = function(title, label) -- Input dialog, depending on your framework or external script (return = input)
        local input = lib.inputDialog(title, {label})
        if not input and input[1] then return end
        return input[1]
    end,
    ['WhitelistProps'] = {
        -- ['xm3_prop_xm3_tent_01a'] = {'police', 'gouv', 'ambulance'},
        -- ['p_ld_stinger_s'] = {'police', 'gouv'},
        -- ['p_stinger_04'] = {'police', 'gouv'},
        -- ['p_stinger_02'] = {'police', 'gouv'},
        -- ['prop_barrier_work05'] = {'police', 'gouv'},
        -- ['prop_mp_barrier_02b'] = {'police', 'gouv'},
        -- ['reh_prop_reh_outline_01a'] = {'police', 'gouv'},
        -- ['xm_prop_body_bag'] = {'police', 'gouv', 'ambulance'},
        -- ['prop_roadcone02a'] = {'police', 'ambulance', 'gouv'}, 
        -- ['v_med_bed1'] = {'ambulance', 'gouv'},
        -- ['prop_coffin_02b'] = {'ambulance', 'gouv'},
        -- ['xm_prop_smug_crate_s_medical'] = {'ambulance', 'gouv'},
        -- ['prop_barrier_work06a'] = {'ambulance', 'police', 'gouv'},        
    },
    ["BlacklistProps"] = { 
        ["stt_prop_ramp_spiral_m"],
        ["stt_prop_ramp_adj_flip_s"],
    },
    ['PredefinedProps'] = {
        {
            RequiredJob = {"police"},
            NameMenu = "LSPD",
            Lists = {
                {name = "Herse (Longue 1)", props = "p_ld_stinger_s"},
                {name = "Herse (Longue 2)", props = "p_stinger_04"},
                {name = "Herse (Grosse)", props = "p_stinger_02"},
                {name = "Barriere (Do not cross)", props = "prop_barrier_work05"},
                {name = "Barriere (Rouge & Blanche)", props = "prop_mp_barrier_02b"},
                {name = "Barriere (Veille)", props = "prop_barrier_work06a"},
                {name = "Cible (Hauteur)", props = "gr_prop_gr_target_05c"},
                {name = "Cible (Murale)", props = "gr_prop_gr_target_w_02b"}, 
                {name = "Cible (Sol)", props = "gr_prop_gr_target_05a"},
                {name = "Corp", props = "reh_prop_reh_outline_01a"},
                {name = "Sac morgue", props = "xm_prop_body_bag"},
                {name = "Cône de Signalisation (Petit)", props = "prop_roadcone02a"},
                {name = "Cône de Signalisation (Grand 1)", props = "prop_phonebox_05a"},
                {name = "Cône de Signalisation (Très grand)", props = "prop_roadpole_01a"},
                {name = "Tente de toit", props = "xm3_prop_xm3_tent_01a"},
            },
        },
        {
            RequiredJob = {"ambulance"},
            NameMenu = "EMS",
            Lists = {
                {name = "Tente de toit", props = "xm3_prop_xm3_tent_01a"},
                {name = "Trousse de secours", props = "xm_prop_smug_crate_s_medical"},
                {name = "Barriere (Veille)", props = "prop_barrier_work06a"},
                {name = "Lit (Brancard)", props = "v_med_bed1"},
                {name = "Cercueil", props = "prop_coffin_02b"},
                {name = "Cône de Signalisation (Petit)", props = "prop_roadcone02a"},      
                {name = "Sac morgue", props = "xm_prop_body_bag"},   
            }, 
        },
        {
            NameMenu = "Électronique",
            Lists = {
                {name = "Télévision", props = "prop_tv_flat_02"},
                {name = "Ordinateur", props = "prop_monitor_w_large"},
                {name = "Laptop", props = "prop_laptop_01a"},
                {name = "Téléphone Bureau", props = "prop_off_phone_01"},
            }, 
        },
        {
            NameMenu = "Nourritures & Boissons",
            Lists = {
                {name = "Sceau a champagne", props = "vw_prop_casino_champset"},
                {name = "Flute champagne", props = "prop_cs_champ_flute"},
                {name = "Bouteille de Bière", props = "prop_amb_beer_bottle"},
                {name = "Bouteille de vin", props = "prop_wine_rose"},
                {name = "Verre cocktail", props = "prop_tequsunrise"},
                {name = "Carafe", props = "prop_pitcher_01_cs"},
                {name = "Bouteille sachet", props = "prop_cs_beer_bot_40oz"},
                {name = "Verre", props = "ex_p_ex_tumbler_04_empty"},
                {name = "Chips", props = "prop_food_chips"},
                {name = "Cacahuetes", props = "prop_peanut_bowl_01"},
                {name = "Verre de café", props = "p_ing_coffeecup_01"},
                {name = "Mug", props = "v_club_vu_coffeemug2"},
                {name = "Verre carton", props = "ng_proc_sodacup_01a"},
                {name = "Cacahuetes", props = "prop_peanut_bowl_01"},
                {name = "Assiette", props = "v_res_mplatelrg"},
                {name = "Assiette pleine", props = "prop_cs_plate_01"},
                {name = "Fourchette", props = "prop_cs_fork"},
                {name = "Plateau repas", props = "prop_food_tray_03"},
            }, 
        },
        {
            NameMenu = "Extérieure",
            Lists = {
                {name = "Banc de Parc", props = "prop_bench_01b"},
                {name = "Poubelle", props = "prop_bin_07b"},
                {name = "chaise camping", props = "hei_prop_hei_skid_chair"},
                {name = "chaise jardin", props = "gr_dlc_gr_yacht_props_seat_01"},
                {name = "chaise blanche", props = "prop_table_04_chr"},
                {name = "chaise plastique", props = "prop_table_03b_chr"},
                {name = "Table grise", props = "gr_dlc_gr_yacht_props_table_03"},
                {name = "Feu de bois", props = "gr_prop_gr_hobo_stove_01"},
            }, 
        },
    },
    ['Translate'] = { 
        ["R"] = { -- Header RageUi Translate
            menu_main_title = "MENU PROPS",
            menu_main_description = "Décorer l'extérieur",

            menu_playersprops_title = "MES PROPS",
            menu_playersprops_description = "Liste de tous vos props",

            menu_playerspropsaction_title = "ACTIONS",
            menu_playerspropsaction_description = "Que souhaitez-vous faire sur votre prop ?",

            menu_adminactions_title = "ADMIN - ACTIONS",
            menu_adminactions_description = "Gestion du prop joueur",

            menu_allprops_title = "TOUS LES PROPS",
            menu_allprops_description = "Liste des props des joueurs",

            menu_allcategory_title = "LISTE PRÉDÉFINIE",
            menu_allcategory_description = "Choisissez la catégorie que vous souhaitez",

            menu_category_title = "PRÉDÉFINI",
            menu_category_description = "Choisir mon prop dans ma liste prédéfinie",
        },
        ["B"] = { -- Button Text Translate
            separator_error_nocitizenid = "~r~ERREUR : Impossible de récupérer le Citizen ID",

            button_title_adminalllists = "~r~(ADMIN) ~s~Liste des props des joueurs",
            button_rightlabel_adminalllists = "→→→",

            button_title_playerprops = "Voir la liste de mes props",
            button_rightlabel_playerprops = "→→→",

            button_title_category = "Voir la liste de mes props",
            button_rightlabel_category = "→→→",

            button_title_admincustomprops = "~r~(Admin)~s~ Ajouter le prop via son nom",
            button_description_admincustomprops = "~c~https://forge.plebmasters.de/objects/",
            button_rightlabel_admincustomprops = "→→→",

            button_title_predefinedprops = "props", -- Job Catégory Count Props
            button_rightlabel_predefinedprops = "→→→",

            separator_category_name = "Catégorie :",
            button_rightlabel_categoryprop = "→→→",

            separator_nopropsplaced = "~r~Vous n'avez placé aucun prop",

            button_title_gizmo = "Déplacer avec Gizmo",
            button_rightlabel_gizmo = "→→→",

            button_title_deleteprops = "Supprimer le prop",
            button_rightlabel_deleteprops = "→→→",

            button_title_tp_prop = "Se téléporter vers le prop",
            button_rightlabel_tp_prop = "→→→",

            separator_nopropsfound = "Aucun prop trouvé",
        },
        
        input_customprops_title = "Objet personnalisé",
        input_customprops_label = "Nom du prop",

        prop_placed = "~g~Prop placé n°%s",
        prop_notfound = "~r~Le prop n°%s n'a pas été retrouvé.",

        prop_coords_edited = "~g~Le prop a été correctement déplacé.",

        menu_already_open = "~r~Le menu est déjà ouvert.",
        prop_whitelist = "~r~Vous n'avez pas le métier requis pour placer des props.",
        limit_reached = "~r~Vous avez atteint votre limite de props.",
        player_in_vehicle = "~r~Veuillez sortir de votre véhicule.",
        automatic_deleted = "~o~Votre prop n°%s a été supprimé automatiquement.",
        prop_suspect = "~o~L'objet que vous essayez de faire apparaître ne remplit pas nos conditions.",
        prop_deleted = "~g~Le prop n°%s a été correctement supprimé.",
        prop_not_deleted = "~o~Le serveur n'a pas réussi à supprimer le prop n°%s.",        
        prop_blacklisted = "~r~Le prop que vous essayez de placer est blacklisté.",
    }
} 
```

</details>

***

### Différence : ESCROW & OPEN-SOURCE

{% tabs %}
{% tab title="ESCROW" %}
:flag\_fr: La version escrow reste assez simple, comme montré dans la vidéo. Elle est vraiment spécialement conçue pour la configuration du script. Les modifications plus poussées ne vous sont pas fournies, bien que je pense vous avoir donné accès à de nombreuses modifications. C'est pourquoi le prix reste relativement bas pour la qualité de ce dernier.

:flag\_us: The escrow version remains quite simple, as shown in the video. It is specifically designed for script configuration. More advanced modifications are not provided, although I believe I have given you access to many adjustments. Hence, the price remains relatively low considering its quality.
{% endtab %}

{% tab title="OPEN-SOURCE" %}
:flag\_fr: La version open-source conserve le même tri des fichiers que l'escrow. Le changement, vous demanderez ? Vous aurez accès à tous les fichiers, bien sûr. Toute revente du script sera suivie de façon judiciaire. Cependant, vous pourrez apprendre le fonctionnement de certaines choses assez complexes.

:flag\_us: The open-source version maintains the same file sorting as the escrow. What's the change, you ask? You'll have access to all the files, of course. Any resale of the script will be legally monitored. However, you'll be able to learn the workings of some rather complex things.
{% endtab %}
{% endtabs %}


# Serveur Loup Garou


# Présentation

Bonjour, ce projet s'inspire de "Les Loups-garous de Thiercelieux" en suivant les traces des LG UHC de TheGuill84.

{% hint style="info" %}
Aucune date n'est encore annoncé pour ce projet, car avant tout ça reste du développement et surtout de l'envie.
{% endhint %}

{% hint style="info" %}
Ce serveur serait un mini-jeu *(aucun rp)*. L'idée est d'avoir au minimum 12 joueurs au maximum (50 ou plus) afin de faire des soirées loup garou.
{% endhint %}

***

### Comment faire ça pour Fivem ?&#xD;

* Au début avoir un seul système seul moi <mark style="color:$warning;">@Owner</mark> va pouvoir lancer les parties (plus tard les <mark style="color:purple;">@Host</mark> auront l'accès)
* Au début, chaque joueurs voulant jouer va rejoindre le serveur. Une fois tout rejoint le créateur de la partie va définir la composition (rôle qui souhaite selon le nombre de joueurs)
* Une zone de jeu sera défini sur la MAP (map de gta5) avec un rayon de jeu.
* Ensuite dans une documentation que je vais créé, je vais expliquer les rôles, comment jouer (pour les non puriste de ce jeu)

### Pourquoi je veux créer ce serveur ?

Quand je fesais du DEV je voulais créer un script de loup garou (comme wolfy), donc les gens arrive à point, lancer la partie et joue (mais sans bouger, juste de la parole avec de l'aide via un script) sauf que comme sur chaque projet j'étais "le principcal & seul dev", les autres problèmes du serveur ainsi que l'envie descendais. J'ai donc malheuresement baisser les bras pour cette idée.

Je souhaite donc créé ce serveur afin de quand même respecter l'envie de base de créer ce script et aussi j'ai envie de faire amuser les gens et me faire amuser.

### Comment je serais rentable pour ce projet ? &#xD;

Tout d'abord, je pense payer 10€ de machine par mois (si <30 joueurs) + une clé CFX \~18€. Pour essayer de rentabiliser ça, j'essayerais un système de créateur de session qui sera avec le rôle <mark style="color:purple;">@Host</mark> au mois

<br>


# Les rôles


# Villageois


# Loups-Garous


# Rôles solitaires


# Rôles hybrides


