NPC/fr

= Introduction =

Grosso modo, il y a 3 façons permettant de faire fonctionner des NPC (Non Player Characters) alias bots dans OpenSimulator.

1. Approche client
Utiliser par exemple libopenmetaverse pour contrôler un avatar comme si il était contrôlé par un client (viewer).

Ce wiki contient quelques informations sur la procédure à suivre - voir


 * Building a bot - Débuter avec la conception de bot en utilisant libomv côté client.
 * pCampBot - Utilitaire pour tester la charge d'opensim qui peut être utilisé comme un exemple de code.

Cependant, une meilleure information peut etre trouvée autre part, puisque que cette méthode existe aussi bien pour Linden Lab que pour les autres grilles.

C'est comme cela que les bots furent traditionnellement crées sur SL puisque Linden Lab ne fournissait pas de methodes pour les NPC ou des acces directs au logiciel serveur. Un des avantages de cette méthode, comme mentionné plus haut, est qu'il peut être facilement porté entre les grilles de Linden Lab ou les autres, car il depend seulement de l'interface client (en tenant compte du fait que certaines grilles peuvent avoir une politique d'acceptation des bots). Cela autorise aussi les bots à aller de partout et faire tout ce qu'un humain pourrait faire, avec la bonne programmation. Un des inconvénients est qu'il est nécessaire d'avoir un compte utilisateur pour permettre au bot d'exister.

2. Les fonctions de scripts osNpc*
OpenSimulator fournit un ensemble de fonctions OSSL NPC pour créer et manipuler les bots. Voir OSSLNPC pour plus de détails.

Un des avantages de cette aproche est qu'un client n'est pas nécessaire pour un bot et les apparences du bot peuvent être sauvées dans des archives (OARs). Un des inconvénients est qu'il y a un nombre plus limité de fonctionnalités disponibles car les méthodes de scripts doivent être écrites pour contôler les différents comportements d'un NPC. Aussi, ces bots ne peuvent pas sortir de la région dans laquelle ils ont été créés.

3. Module de région
Dans OpenSim, les méthodes de script osNpc* utilisent le module interne NPCModule pour gérer et manipuler les bots. Un autre module de région pourrait directement appeler les méthodes NPCModule. Un avantage de cette approche est que la gestion des bots peut être simplifiée par l'utilisation de C# plutot que des scripts LSL/OSSL. Un des inconvénients est que chaque changement d'un module de région nécessite sa recompilation et le redémarrage du simulateur qui l'héberge.