Table des matières

, ,

OpenSim

OpenSim est un logiciel serveur de monde virtuel en licence BSD. Il permet de se connecter au monde virtuel avec le client SL standard qui est en OpenSource. Ces « régions virtuelles » sont raccordées à des grilles alternatives ou sont indépendantes de toute grille.

Basic

Vous allez pouvoir lancer OpenSim le plus simplement possible. Actuellement la version d'Opensim permet de configurer plusieurs régions, mais elle ne permet pas encore d'éditer les avatars, snif. Il existe 3 modes d'installation :

  1. le mode standalone (développée ci-dessous) : il vous permettra d'installer une sim avec plusieurs régions sur votre propre pc. Vous pourrez également connecter votre sim à un réseau.
  2. le mode grid : pour faire fonctionner votre propre grille.
  3. le mode hypergrid : permet de passer d'une grille à une autre ou d'une région stadalone à une grille ou une autre région standalone.

Paquet

Pour utiliser OpenSim, il vous faudra des paquets supplémentaires à installer : subversion mono nant mono-mjs libmono-microsoft8.0-cil libmono-system-runtime2.0-cil mono-gmcs.

Depuis hardy (au moins) installez ces paquets :

 sudo apt-get install subversion nant mono-gmcs libmono-microsoft8.0-cil \
   libmono-system-runtime2.0-cil libgdiplus libmono-i18n2.0-cil libmono-oracle2.0-cil ruby
Depuis la version Opensim 0.6.5 vous aurez peut être besoin d'utiliser la version 2.4 de mono, mais actuellement vous devez la compiler. Voici un lien qui vous y aidera. Comment compiler mono version 2.4 pour Ubuntu, en anglais.

J'ai mis quelques commentaires ici : http://opensimulator.fr/forum/viewtopic.php?showtopic=463

Différents modes

Mode standalone pour faire connaissance avec l'opensim:

Installation

Tout ce qui suit ce passe via le terminal qui ce trouve dans Applications → Accessoires → Terminal.

Maintenant, on va commencer par télécharger le programme :(mise à jour des liens le 02/05/2009)

0.6.5 Alpha with post-release fixes (préféré)

svn co http://opensimulator.org/svn/opensim/branches/0.6.5-post-fixes opensim

0.6.5 Alpha release tag

svn co http://opensimulator.org/svn/opensim/tags/0.6.5-release opensim

Plus de versions : http://opensimulator.org/wiki/Download

Une fois que tout les fichiers sont téléchargés, ce qui peut prendre un certain temps vu la quantité, entrez dans le dossier tout juste téléchargé :

 cd opensim

Compilez le programme :

./runprebuild.sh

Finissez la compilation :

nant

Ensuite vous devez créer un fichier OpenSim.ini dans le dossier bin. Pour cela, copiez simplement le fichier OpenSim.ini.example du même dossier. Dans votre console tapez :

cd bin
cp OpenSim.ini.example  OpenSim.ini

OpenSim est maintenant installé en version Standalone et fonctionnel.

Démarrer

Voilà, on va maintenant lancer ce OpenSim tout fraîchement installé.

Tout ce fais via le terminal. On commence par entrer dans le dossier ou se trouve le fichier qu'on va exécuter.

cd opensim/bin

et maintenant, on va lancer ce joli programme (en Microsoft .Net) :

mono OpenSim.exe
En mode grille il faudra écrire :
   mono OpenSim.exe -gridmode=true

OpenSim se lance, et après tout le tralala de texte, le serveur sera lancé.

Maintenant, vous avez un serveur standalone fonctionnel,

Si c'est la première fois que vous le démarrez, il vous demandera des informations sur la configuration,

Il faut bien faire attention à ce que vous mettez, car sinon, votre serveur opensim ne marchera pas. Une solution entre parenthèses vous sera toujours proposée, recopiez cette option en cas de doute.Vous pourrez toujours modifier votre configuration plus tard via le fichier xml de votre région dans le dossier "Regions"

Informations de configuration au démarrage

Vous pouvez modifier vos paramètres dans le fichier …/opensim/bin/Regions/nom_de_la_region.xml à l'aide d'un éditeur de texte.

Voici à quoi ressemble ce fichier avec des options par défaut :

   <Root>
   <Config sim_UUID="4faa363c-ff27-45c4-8783-b2158d4d09db" 
   sim_name="Nom-de-la-region"
   sim_location_x="1000" sim_location_y="1000" 
   internal_ip_address="0.0.0.0"
   internal_ip_port="9000" allow_alternate_ports="false" 
   external_host_name="127.0.0.1"    
   master_avatar_uuid="00000000-0000-0000-0000-000000000000"
   master_avatar_first="pseudo" 
   master_avatar_last="nom_de_l'avatar" 
   master_avatar_pass="mot-de-passe" 
   lastmap_uuid="ici_il_y_aura_un_uuid" lastmap_refresh="1237702487" 
   nonphysical_prim_max="0" physical_prim_max="0" clamp_prim_size="false" 
   object_capacity="0" />
   </Root>

Mode grid :

Pour installer une grille… à développer.

Mode hypergrid :

Le mode hypergrid vous permet de passer d'une grille ou d'une région aux autres grilles et régions de l'hypergrid. C'est un peu comme si vous passiez d'un site internet à un autre via un lien. Vous conservez votre avatar et votre inventaire. Vous n'avez pas besoin de créer un compte pour chaque destination et enfin vous pouvez converser avec n'importe quel avatar local. Il reste encore des bugs mais dans l'ensemble c'est assez impressionnant !

En mode Standalone ou mode grille

1. se procurer Opensim et l'installer normalement (voir mode standalone)
2. Modifiez les coordonnées de votre région

Modifiez ces coordonnées dans OpenSim.ini et dans votre fichier xml de région *; ajoutez 6000 à X et à Y. Par exemple si votre région a pour coordonnées 1000, 1000, ses nouvelles coordonnées deviendront 7000,7000. (D'après ce que j'ai compris ce serait pour uniformiser toutes les coordonnées de l'hypergrid.)

Depuis la version 0.6.6 le fichier région n'est plus un fichier xml mais un fichier ini qui a pour nom 'RegionConfig.ini'. Vous pourrez également modifier les coordonnées dans un éditeur de texte.
3. Configurer OpenSim.ini ainsi (les exemples sont tirés du wiki opensimulator.org ):

En mode Standalone :

  [Network]
   http_listener_port = 9300
   remoting_listener_port = 9895  ;(legacy - not used any more) je n'ai pas mis cette ligne
   grid_server_url = http://example.com:9300 
   grid_send_key = null
   grid_recv_key = null
   user_server_url = http://example.com:9300
   user_send_key = null
   user_recv_key = null
   asset_server_url = http://example.com:9300
   inventory_server_url = http://example.com:9300
   messaging_server_url = http://example.com:9300

En mode grille :

 [Network]
  http_listener_port = 9300
  remoting_listener_port = 9895  (legacy - not used any more)
  grid_server_url = http://example.com:8001
  grid_send_key = null
  grid_recv_key = null
  user_server_url = http://example.com:8002
  user_send_key = null
  user_recv_key = null
  asset_server_url = http://example.com:8003
  inventory_server_url = http://example.com:8004
  ; Port 8005 reserved
  messaging_server_url = http://example.com:8006

Pour les deux modes Il est recommandé d'avoir ces deux options :

 WorldMapModule = "WorldMap"
 WorldMapModule = "HGWorldMapModule"
4. Votre domiciliation

Assurez-vous que vous avez défini votre domicile (home) via World/Set home to here

5.Démarrez Opensim

Pour cela vous devez taper dans la console

[mono] OpenSim.exe -hypergrid=true

Pour vérifier si votre connexion à l'hypergrid est effective vous pouvez utiliser la commande link-region (voir ci-dessous).

Pour une région connectée à une grille qui est en mode hypergrid

Vous devez seulement lier votre région à l'hypergrid. Cela se fait dans la console à l'invite de votre région tapez :

 link-region <Xloc> <Yloc> loginuri-de-la-grille:port

link-region : commande pour lier votre région

<Xloc> et <Yloc> : coordonnées de votre région sur la grille

Par exemple pour lié une grille dans la Francogrid écrivez :

  link-region <Xloc> <Yloc> grid.francogrid.com:8002 
  
Pour plus d'informations référez-vous au wiki d'opensimulator (en anglais) :http://opensimulator.org/wiki/Installing_and_Running_Hypergrid

Quelques adresses

Il y a quelques adresses ici: http://opensimulator.org/wiki/Public_Hypergrid_Nodes Toutes ne fonctionnent pas 24h/24 et certaines jamais. Il existe également d'autres listes. Bonne visite !

Les viewer

Hippo Opensim viewer

Pour entrer dans votre sim personnelle, installez la visionneuse Hippo. Vous pourrez télécharger ce logiciel à cette adresse :

http://mjm-labs.com/viewer/download.php

Vous pouvez télécharger le Setup pour linux ou utiliser la source que vous compilerez.

Installation à partir du Setup

Je n'ai pas pu installer Hippo Opensim viewer à partir du setup. Mais si vous voulez essayer, n'oubliez pas de cocher la case exécutable dans les propriétés du fichier.

Compiler Hippo Opensim viewer

Prérequis

Vous devez avoir installé les paquets suivants :

Télécharger la source

Dernière release : (mot de passe vide)

svn co --username anonymous http://forge.opensimulator.org/svn/opensim-viewer/tags/v0.5.0_LL1.22.11 source

Dernière version :

svn co --username anonymous http://forge.opensimulator.org/svn/opensim-viewer/trunk source
Compiler

Placez vous dans le dossier de la source.

cd source
scripts/build.sh
Connectez-vous à votre sim
http://127.0.0.1:9000/

Si vous avez connecté votre sim à un réseau utilisez l'adresse publique externe de votre PC(voir la section Héberger Opensim chez soi )

liés à la vie réelle, la consommation et la danse virtuelle ça va 5 minutes. :-)

Viewer Meerkat

Meerkat est un viewer avec encore pas mal de bugs. Certains le préfèrent, testez-le est vous pourrez vous faire votre opinion.

Vous pouvez télécharger un fichier tar.gz d'installation ici : http://www.meerkatviewer.org/

Meerkat a un énorme avantage, il permet d'importer et d'exporter des objets full perm de SecondLife vers l'Opensim.

Configurations particulières

Objets dynamiques

Pour que les objets de votre sim interagissent entre eux (par exemple pour supprimer l'effet fantôme systématique), ouvrez le fichier opensim.ini dans un éditeur de texte. Vous trouverez le code suivant sous la section PHYSICS :

  ; Choose one of the physics engines below
  physics = basicphysics
  ;physics = POS
  ;physics = OpenDynamicsEngine
  ;physics = modified_BulletX 

On vous demande de choisir un moteur physique. Ici "basicphysics" est utilisé par défaut. Pour utiliser OpenDynamicsEngine, commentez et décommentez les lignes adéquates.

Commentez une ligne signifie qu'on ajoute un commentaire dans un code, ce commentaire ne sera pas lu pendant l'exécution du code. Il est là uniquement pour renseigner le développeur, ou ici pour proposer plusieurs options possibles. Pour commenter une ligne dans un code on utilise un point virgule (;) en début de ligne.

Votre code devient :

  ; Choose one of the physics engines below
  ;physics = basicphysics
  ;physics = POS
  physics = OpenDynamicsEngine
  ;physics = modified_BulletX 

Créer plusieurs régions

Voici un lien vers un site où Forest vous expliquera mieux que moi comment faire.

http://lslblog.free.fr/index.php/post/2008/01/11/5-minutes-pour-heberger-4-regions

Héberger Opensim chez soi

Encore une fois , merci Forest !

http://lslblog.free.fr/index.php/post/2008/07/01/Heberger-OpenSim-a-la-maison-en-ADSL

Utiliser une base de données MySQL

Précautions

Enregistrez vos régions avant de modifier votre méthode de stockage des données de votre sim.

Il faut savoir que lorsque vous la redémarrerez tout sera à refaire.

Une idée qui me vient en écrivant :Pour conserver votre inventaire et l'apparence de votre avatar, placez-les dans des boites dans votre région avant de sauvegarder cette dernière. Je n'ai pas testé cette méthode, si ça marche vous pouvez le dire ici même ;-) sinon préparez-vous à tout perdre (en dehors de la région sauvegardée bien entendu) .

Je n'ai pas encore essayé d'installer une grille, donc je ne sais pas si cette méthode fonctionne pour cette configuration.

Pourquoi utiliser MySQL pour Opensim ?

- Les avatars conservent leur apparence à chaque démarrage.

- On peut facilement sauvegarder, consulter et modifier cette base de données (avec un minimum de connaissance dans ce domaine ).

- Cette base de données est indispensable en mode Grid.

Installer MySQL

- En local : Installez un serveur Lamp sur votre machine

- Si vous avez un hébergeur, celui-ci devrait vous fournir l'insallation nécessaire pour utiliser une base de données MySQL mais attention il n'est pas toujours possible d'utiliser une base de données externe. Certains hébergeurs interdisent leur utilisation lorsque le site d'appel n'est pas chez eux.

Configurer opensim.ini pour MySQL

- Ouvrez le fichier ../opensim/bin/opensim.ini dans un iditeur de texte.

- Commentez toutes les lignes se référant à SQLite :(vérifiez si je n'ai rien oublié)

  ;storage_plugin = "OpenSim.Data.SQLite.dll"
  ; asset_plugin = "OpenSim.Data.SQLite.dll"
  ; asset_source = "SQLiteDialect;SqliteClientDriver;URI=file:Asset.db,version=3"
  ; inventory_plugin = "OpenSim.Data.SQLite.dll"
  ; inventory_source = "SQLiteDialect;SqliteClientDriver;URI=file:Inventory.db,version=3"
  ; userDatabase_plugin = "OpenSim.Data.SQLite.dll"
  ; user_source = "SQLiteDialect;SqliteClientDriver;URI=file:User.db,version=3"
  

- Décommentez les lignes se référant à MySQL et renseignez les informations de connexion à votre base de donnée :

Si votre base de données (BDD) n'est pas installée en local, remplacez localhost, nom_de_la_BDD, root et mot_de_passe par les informations de connexion de votre base de donnée.
 storage_plugin="OpenSim.Data.MySQL.dll"
 storage_connection_string="Data Source=localhost;Database=nom_de_la_BDD;User ID=root;Password=mot_de_passe;"
 asset_plugin = "OpenSim.Data.MySQL.dll" ; for mysql
 asset_source = "Data Source=localhost;Database=nom_de_la_BDD;User ID=root;Password=mot_de_passe;"
 inventory_plugin = "OpenSim.Data.MySQL.dll"
 inventory_source = "Data Source=localhost;Database=nom_de_la_BDD;User ID=root;Password=mot_de_passe;"
 userDatabase_plugin = "OpenSim.Data.MySQL.dll"
 user_source = "Data Source=localhost;Database=nom_de_la_BDD;User ID=root;Password=mot_de_passe;"

mssql_connection.ini

Enregistrez un fichier mssql_connection.ini à partir du fichier mssql_connection.ini.example que vous trouverez dans le dossier bin d'opensim.Modifiez cette partie (attention, je n'ai pas trouvé beaucoup d'explications à ce sujet donc j'ai pu commettre des erreurs d'interprétation…à vérifier) :

   
  [mssqlconnection]
  data_source=\SQLEXPRESS  ;adresse de la base de données exemple localhost 
  initial_catalog=database  ;nom de la base de données, exemple opensim
  persist_security_info=True  
  user_id=username	;utilisateur de la base de données, exemple root
  password=password   ; mot de passe de la base de données

Redémarrage

Redémarrez normalement votre sim. Votre base de données MySQL devrait se remplir automatiquement.

Les commandes

Commandes générales

Pour connaître toutes les commandes de console Opensim possibles : (commentaires en anglais)

help

Sauvegarder une région : sauvegarde des primitives, des textures et des scripts.

save oar nom_du_fichier.tar.gz 

Charger une région : charge les primitives, les textures et les scripts d'une région sauvegardée.

load oar nom_du_fichier.tar.gz 

Si vous avez plusieurs régions, vous devez être dans la bonne région . Pour changer de région :

change region nom_de_région 
De nombreux sites ajoutent un trait d'union entre change et region (change-region). Chez moi ça ne fonctionne que sans trait d'union.

Créer un nouvel utilisateur :

create user 

On vous demandera le premier nom, le deuxième nom, le mot de passe, <x_loc>, <y_loc> et l'adresse mail du nouvel utilsateur. [<first> [<last> [<pass> [<x> <y> [<email>]]]]]

Commandes de terrain

Pour connaître toutes les commandes de terrain en console Opensim : (commentaires en anglais)

help terrain

Pour charger une map au format .raw dans une région :

terrain load nom_du_fichier.raw
N'oubliez pas de vous mettre dans la bonne région. Vous risquez de perdre une région non sauvegardée.
Pour créer des map au format raw dans the Gimp, vous pouvez utiliser le script de Domino Marama pour the Gimp que vous trouverez ici : http://dominodesigns.info/the_gimp/second_life_raw_terrain.html On peut imaginer toutes les formes de terrain.
  • Une fleur :
  • Une carte de France :

Mise à jour

Tout est expliqué ici : http://opensimulator.fr/OpenSim_doc/doku.php/home:installation:serveur:mise_a_jour

Voir aussi


Contributeurs :