Protéger ses maps du vol

Quelques astuces de mapping sur le moteur Source

Voir les tutoriels hammer
Niveau Débutant
8 minutes de lecture
Astuces en Mapping sur Source

Vous en avez marre de certains parasites qui vous volent vos maps ? Mettez leur un coup de tapette en utilisant l'outil "Momo's Map Manipulation Tool" afin de protéger efficacement vos cartes 😋

Explications

Un .bsp est constitué de lumps, pour faire simple ce sont pleins de tiroirs qui contiennent les différents attributs de votre map (entités, textures, etc). L'outil consiste à récupérer le plus possible du lump n°1 (entités), les supprimer du lump et générer un code Lua côté serveur afin de les replacer à l'initialisation de la carte.

Installation

Pour commencer il faut vous munir de l'addon disponible sur le Steam Workshop ou alors directement sur GitHub.

Utilisation

⚠️ Avant de commencer je vous conseille de lire tout en bas de ce tutoriel les exceptions afin de paramétrer l'addon avant son utilisation ! C'est parti, passons aux choses sérieuses. Une fois l'addon installé rentrez cette commande dans votre console : %_divider_article_logout_%

Remplacez gm_lexa_testing01 par le nom de la map que vous souhaitez protéger. Une fois le menu ouvert suivez les instructions ci-dessous Protéger ses maps du vol Protéger ses maps du vol Protéger ses maps du vol Protéger ses maps du vol Quand vous êtes rendu ici, je vous conseille d'enlever le "_mod" afin de faciliter la manipulation. Ensuite rendez vous dans votre explorateur de fichiers dans le dossier "data" par défaut dans :

Et activez les extensions de fichier : Protéger ses maps du vol Une fois ceci fait, descendez jusqu’à trouver les fichiers préalablement enregistrés. Protéger ses maps du vol Et retirez respectivement les extensions de fichier jusqu’à uniquement garder uniquement *.lua et *.bsp, vous pouvez dès à présent commencer par sauvegarder le .bsp dans un autre dossier qui servira pour l'upload sur le Steam Workshop. Ouvrez le .lua et vérifiez bien qu'à la ligne 3 il y ait :

Publication sur le Workshop

Afin de rendre téléchargeable votre map je vous conseille d'utiliser le Steam Workshop et par la même occasion d'empaqueter vos contents dans votre .bsp grâce à ce tutoriel.

⚠️Dans le cadre d'une carte privée ne publiez pas le .lua sur le workshop ou autre, sinon votre protection sera inutile. Si c'est une map publique vous pouvez publier le fichier Lua dans un dossier /lua/autorun/server/ de votre addon ce qui aura pour effet lors de la décompilation d'avoir le .vmf mais sans entités.

Mise en place sur votre serveur

Ignorez cette étape si votre map est publique et que vous avez préalablement upload le fichier Lua directement dans votre addon sur le Steam Workshop Une fois que toutes les étapes précédentes sont réalisées vous pouvez passer à la mise en place de la carte sur votre serveur. Pour ceci vous aurez besoin du fichier Lua. Prenez le fichier Lua et placez-le dans le dossier '/garrysmod/lua/autorun/server/' de votre serveur. Une fois tout ceci fait, vous pouvez procéder au redémarrage de votre serveur afin de vous assurer que toutes les entités sont présentes, en cas de souci n'hésitez pas à me contacter directement sur le Discord de GCA.

Cas exceptionnels

Certains addons, comme les carte d'accès, nécessitent d'attribuer des valeurs à certaines entités avant qu'elles ne soient recréées par l'outil. Il y a deux solutions pour régler ceci. Solution n°1 : Modifier l'addon en question pour faire en sorte qu'il attribue les valeurs aux entités après leur création. Solution n°2 : Créer un fichier Lua dans \garrysmod\lua\autorun\client et utiliser le Hook "**map_manipulation_tool:moveEntitiesToLua:moveToLua**" afin de paramétrer l'outil, voici ci-dessous ce qu'il retourne et différents exemples de son utilisation.

Exemple pour ne laisser sur la carte que certaines classes d'entité :

Notamment sur les addons attribuant des paramètres sur les boutons comme les cartes d'accès, il est conseillé de laisser les boutons sur la map.

Exemple pour ne laisser sur la carte que les entités portant un certain targetname :

Si vous avez une quelconque question sur certaines manières d'utiliser l'outil, vous pouvez me contacter sur le Discord de GCA, je suis ouvert à toutes questions 😀

Passer au chapitre suivant :