BSP Protection et leaks

Maps Server-Exclusive : lier une map GMod à un seul serveur

Une map Server-Exclusive ne tourne entièrement que sur un serveur GMod sous licence. Comment marche la vérification, à qui elle convient et ses limites.

Une map Server-Exclusive est liée à un serveur Garry’s Mod précis : le fichier de la map seul est incomplet, et seul un serveur disposant d’une licence valide charge les éléments manquants. Celui qui copie uniquement le BSP n’obtient donc pas une map pleinement fonctionnelle. Le principe rend le partage peu attrayant et visible, mais ce n’est pas une protection absolue contre la copie.

Le problème de fond : chaque joueur a la map

Pour que quelqu’un puisse jouer sur ton serveur, son client a besoin du fichier de la map. Il est téléchargé via FastDL ou le Steam Workshop, comme décrit dans Maps sur serveur GMod : FastDL et Workshop. Ensuite, le BSP se trouve sur son ordinateur et peut être copié.

Pour une communauté qui a investi beaucoup de temps ou d’argent dans sa propre map, c’est un problème. La map est ce qui la distingue des autres, et une copie sur un autre serveur lui enlève précisément ça. Un fingerprint peut aider à rattacher une telle copie à une licence, mais ne l’empêche pas de tourner. C’est là qu’intervient la liaison de la map à un serveur.

Comment fonctionne la liaison à un serveur

L’idée est de séparer la map en une partie publique et une partie privée.

  1. Lors de la protection, des entités importantes sont retirées du fichier de la map, comme les spawns, les lumières et la logique.
  2. Ces entités passent dans un paquet serveur privé. Il se trouve uniquement sur le serveur et n’est pas envoyé aux joueurs.
  3. Au démarrage de la map, le serveur demande à un service de licences si sa licence est valide.
  4. Si c’est le cas, le serveur recharge les entités retirées. La map est complète.
  5. Sinon, la map reste incomplète.

Ça fonctionne parce qu’un serveur GMod peut créer des entités à l’exécution via des scripts, et que les scripts côté serveur ne quittent pas le serveur. Les entités chargées existent alors sur le serveur comme toutes les autres : la logique et les spawns y fonctionnent, et ce que les joueurs doivent voir leur parvient par la synchronisation normale du jeu. Sur un serveur correctement configuré, ils ne remarquent aucune différence en jeu.

En plus, certaines portes, certains triggers ou d’autres entités peuvent être désignés par le nom qu’ils portent dans Hammer. Sans licence valide, ils restent verrouillés.

ÉlémentOù il se trouvePublic ?
BSP protégéServeur, plus Workshop ou FastDLoui, il arrive chez chaque joueur
Paquet serveur avec fichier de licence, scripts et données d’entitésuniquement sur le serveur sous licencenon
BSP original non protégéchez le mappeur, et chez les acheteurs s’il est aussi vendu en téléchargement normalnon, il ne doit jamais être publié

La dernière ligne est décisive. Dès que le fichier original est public quelque part, la liaison ne sert plus à rien.

À qui profite une map Server-Exclusive

  • Les communautés qui ont leur propre map exclusive. Si tu as commandé une map ou que tu l’as achetée en exclusivité, tu ne veux pas la retrouver sur d’autres serveurs. Map custom ou map Workshop pèse le pour et le contre entre une map à soi et une map publique.
  • Les mappeurs qui vendent une licence par serveur. Au lieu de vendre un fichier qui tourne partout, tu vends l’utilisation sur un seul et unique serveur.
  • Les maps à longue durée de vie. Plus un serveur vit longtemps d’une map, plus l’effort supplémentaire est rentable.

Le principe a moins de sens pour les maps destinées à se diffuser librement et pour les serveurs qui n’autorisent pas les connexions sortantes.

Prérequis et exploitation

Une map liée à un serveur demande un peu de travail d’exploitation :

  • Il te faut un accès aux fichiers du serveur, par FTP ou via le panel de l’hébergeur.
  • Le serveur doit pouvoir établir des connexions HTTPS sortantes vers le service de licences.
  • L’horloge système du serveur doit être à l’heure, sinon la vérification peut échouer.
  • Si la licence est liée à une adresse IP, la liaison doit être adaptée après un déménagement vers une nouvelle adresse.
  • Après l’installation, teste une fois la map en entier avant de la mettre en ligne.

Une crainte fréquente est la panne du service de licences. Les bonnes implémentations utilisent donc un délai hors ligne : après une vérification valide, la map continue de tourner pendant une durée limitée, même si le service est brièvement injoignable.

Limites

  • Contrôle total d’un serveur sous licence. Quelqu’un qui contrôle entièrement un serveur sous licence peut manipuler les scripts et contourner la protection. C’est vrai pour toutes les solutions de ce type.
  • La géométrie et les textures restent dans le BSP. L’apparence de la map peut toujours être analysée. C’est pourquoi l’obfuscation va de pair.
  • Les entités manquantes peuvent être reconstruites. Ça demande du travail et des connaissances, mais ce n’est pas impossible.
  • Dépendance à un service. Sans une première vérification réussie, la map ne démarre pas entièrement.

Server-Exclusive est donc une couche supplémentaire. Protéger une map GMod des leaks montre comment elle s’articule avec les autres.

Server-Exclusive sur bspmarket.de

Dans BSP Protection, Server-Exclusive est un niveau de protection à part entière qui inclut Fingerprint et Obfuscation. Tu obtiens au final la map protégée et un paquet serveur privé au format ZIP. Seules les entités qui peuvent être restaurées de façon sûre sont retirées, et le rapport de résultat indique s’il y en avait. Une map sans entités de ce type et sans noms renseignés tourne entièrement même sans licence. Seules les entités qui peuvent être restaurées de façon sûre sont retirées, et le rapport de résultat indique s’il y en avait. Une map sans entités de ce type et sans noms renseignés tourne entièrement même sans licence. bspmarket.de décrit lui-même le mode ainsi : la map ne tourne entièrement que sur le serveur disposant d’une licence valide, et une copie transmise reste incomplète.

Autres points documentés publiquement :

  • La licence peut être liée à l’adresse IP du serveur.
  • Un délai hors ligne réglable couvre les courtes pannes. Si bspmarket.de signale la licence comme révoquée ou expirée, le délai prend fin immédiatement.
  • Si quelqu’un utilise le paquet serveur sur un autre serveur, le titulaire de la licence est prévenu.
  • Seul le BSP protégé du paquet a sa place dans le Workshop.
  • Il n’y a aucune promesse face aux serveurs manipulés.

Sur le marketplace, les Creators peuvent aussi proposer une map sous forme de licence pour un seul et unique serveur, en paiement unique ou en location. Avec l’option de véritable exclusivité, la map n’est plus vendue après la première vente de licence. Ceux qui l’ont achetée avant conservent leur accès, ce qui ne garantit donc pas qu’elle tourne uniquement sur ton serveur. Ceux qui l’ont achetée avant conservent leur accès, ce qui ne garantit donc pas qu’elle tourne uniquement sur ton serveur. La page produit indique si une map est proposée de cette façon. Le coût d’un run de protection que tu lances toi-même figure sous BSP Credits.

Questions fréquentes

Puis-je mettre une map Server-Exclusive sur le Workshop ?

Oui, mais uniquement le BSP protégé. Le fichier de licence, les scripts et les données d’entités restent privés sur le serveur, et le fichier original non protégé n’est jamais publié.

Que se passe-t-il si le service de licences est injoignable ?

Après une vérification valide, la map continue de tourner pendant le délai hors ligne, jusqu’à son expiration. Au tout premier démarrage, le serveur a besoin d’une connexion.

Que se passe-t-il quand je change de serveur ?

Si l’adresse IP change, la liaison de la licence doit être adaptée. Sur bspmarket.de, la liaison est vérifiée côté serveur, le paquet reste donc le même. Pour une licence achetée sur le marketplace, tu demandes le changement de serveur dans ta bibliothèque.

Ma map devient-elle impossible à copier ?

Non. Le BSP peut toujours être copié, mais sans le paquet serveur et sans licence valide, il est incomplet. Quelqu’un qui contrôle entièrement un serveur sous licence peut contourner la protection.