RunUO-FR
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
RunUO-FR

Forum de support pour RunUO en français.
 
AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Jeux, jouets et Lego : le deuxième à ...
Voir le deal

 

 00) Installer son propre serveur RunUO et l'environnement C#

Aller en bas 
2 participants
AuteurMessage
Gargouille




Messages : 97
Date d'inscription : 02/09/2008

00) Installer son propre serveur RunUO et l'environnement C# Empty
MessageSujet: 00) Installer son propre serveur RunUO et l'environnement C#   00) Installer son propre serveur RunUO et l'environnement C# Icon_minipostedMer 3 Sep - 0:17

SITES OFFICIELS

RunUO.com le site et son forum


TELECHARGEMENTS


RunUo est un programme émulant un serveur UO, il est écrit en C#, et pour le faire fonctionner, il vous faut installer (si ce n'est pas déjà fait) un Framework de chez Bill.
Aujourd'hui, c'est le Framework 3.5

Ensuite, installez RunUO. A ce jour RunUo 2.0 RC2
Il s'agit d'un .exe, associé à un ensemble de très nombreux fichiers, dont ceux du répertoire Scripts, les codes en C# qui nous intéressent.

Par la suite, vous pourrez charger un autre ensemble de fichiers C#, les sources de RunUo. Ce sont des fichiers qui, une fois compilés, forment le Runuo.exe lançant le serveur. Les modifier peu être utile, mais pour utilisateurs confirmés seulement. En revanche, il est très utile dés le départ de pouvoir y jeter un oeil, le C# étant un langage orienté objet, tout se transmet par héritage, et il est donc souvent crucial de pouvoir "remonter" voir de quoi est fait cet héritage...

Enfin, optez pour un éditeur dédié C#, qui vous offrira des outils adaptés, là où un simple bloc note vous laissera faire tout le boulot. (avec un éditeur C# par exemple, si vous entrez un mot, il vous propose d'emblée toutes les méthodes disponibles, il suffit alors de faire son choix... Un éditeur dédié est à mon sens incontournable.)
Par exemple SharpDevelop et Visual C#
Et donc comment utiliser l'intellisense de ces logiciels...

MISE EN ROUTE



Dans votre répertoire RunUO, il y a (entre autres):
- Scripts qui contient les fichiers de code, et c'est là que vous mettrez vos créations et modifications.
- Saves pour l'instant vide et Backups qui contiendra quelques anciennes saves, au fur et à mesure que les Saves s'entassent...
- Data qui contient des fichiers de données, utilisés par certains scripts, certains en txt, d'autres en XML...

Votre serveur n'a pas besoin du jeu UO pour tourner, il y a d'un côté le serveur, et de l'autre le(s) client(s), que ce soit un Client.exe, ou que ce soit Razor...

En revanche, pour que vous puisseiez vous connecter à votre serveur, il faut que vous changiez le login.cfg de votre instalation du jeu UO.
Vous connaissez sûrement ce fichier puisqu'il fait partie de la plupart des patchs des serveurs. Il s'édite avec un simple bloc-note. Les lignes se commentent (et donc se désactivent) en les faisant commencer par ;
Le plus simple est donc de rajouter à votre login.cfg la ligne s'adressant à votre shard test, et de commenter l'une ou l'autre en fonction des besoins, votre client s'adressera alors soit à votre shard test, soit à votre shard préféré.
Exemple:

Citation :
;LoginServer=mon-shard.fr,2593
LoginServer=127.0.0.1,2593

127.0.0.1 est l'adresse du shard test, et 2593 le port de communication. Vos routeurs et autres pare-feux doivent laisser permettre l'utilisation de ce port.

Voilà, lancez la console, il vous sera demandé de créer un compte admin, le premier account de votre serveur, il sera Owner, et aura donc tous les accès.

Si vous utilisez la même instalation UO que sur votre shard préféré, votre shard test aura les mêmes maps, les mêmes gumps, mais pas les scripts customs, pas les spawns...

Si vous êtes conseiller ou GM, vous connaissez les commandes, si ça ne marche pas, tapez [ à la place des . ou allez dans le fichier Scripts\Commands\Handlers.cs et changez le ligne CommandSystem.Prefix = "[";


Vous voilà prêts à commencer l'apprentissage du script... Wink


Dernière édition par Gargouille le Dim 7 Sep - 17:47, édité 1 fois
Revenir en haut Aller en bas
Plume




Messages : 37
Date d'inscription : 05/09/2008

00) Installer son propre serveur RunUO et l'environnement C# Empty
MessageSujet: Quelques modifications intéressantes à faire   00) Installer son propre serveur RunUO et l'environnement C# Icon_minipostedDim 7 Sep - 3:21

Voilà, je pars ce topic afin de montrer quelques modifications intéressantes à faire pour mieux utiliser son RunUO. Qui m'aime me suive! [Pardon si certains trucs sont des doublons]

Changer le préfixe de commande

Afin de mieux fonctionner, il est intéressant de se doter de bons outils. Alors si vous êtes du genre à utiliser plein de commandes et les faire commencer par un ".", vous serez étonné d'apprendre lors de votre premier lancement de RunUO que votre .props fera dire à votre personnage .props . En effet, RunUO utilise le préfixe "[" par défaut.

Pour changer le tout, rendez-vous dans votre dossier */Scripts/Commands et sélectionnez le fichier Handlers.cs.

À la vingtième ligne, vous y trouverez

Code:
CommandSystem.Prefix = "[";

C'est à cet endroit, entre les guillemets, que vous décidez quel sera le préfixe pour les commandes.

Autre fait intéressant à noter, c'est ici aussi que vous pouvez décider du niveau d'accès nécessaire pour plusieurs commandes. Par exemple:


Code:
Register( "Save", AccessLevel.Administrator, new CommandEventHandler( Save_OnCommand ) );

On peut voir que la commande de sauvegarde est uniquement dédiée aux Administrateurs et aux rangs supérieurs. Si votre serveur est en construction, il serait intéressant de donner cette commande à certains de vos builders sans que ceux-ci n'aient la possibilité d'avoir la gestion des comptes. Donnez-leur un niveau d'accès Seer et modifiez le AccessLevel.Administrator pour un AccessLevel.Seer.


Utiliser un IP interne

Plusieurs utilisateurs de Vista ont pu remarquer que faire tourner un serveur sur ce système d'exploitation est ardu. De plus, de nos jours, la tendance est à la protection de nos secrets les plus... secrets. Il existe une façon pour les développeurs de tester leurs scripts sur un serveur différent de celui qu'ils hébergent, et ce, sans les divulguer à qui que ce soit: le IP interne. Ce même IP vous permettra, surtout si vous utilisez un ordinateur portable, de ne configurer qu'une seule fois votre serveur et d'y avoir accès en tout temps, même à un endroit où vous n'aurez pas internet!

Vous aurez besoin du fichier ServerList.cs qui se trouve dans le répertoire */Scripts/Misc

À l'intérieur de ce fichier vous trouverez la ligne de code suivante en-dessous du gros paragraphe de blabla.

Code:
public static readonly string Address = null;

Modifiez pour que cela donne

Code:
public static readonly string Address = "127.0.0.1";

Chose intéressante. En-dessous de cette ligne se trouve celle dans laquelle vous pouvez renommer votre serveur. Ainsi, vous lui donnerez un nom personnalisé. N'oubliez pas les guillemets puisqu'il s'agit de texte.

Voilà! Vous êtes parés à utiliser votre serveur pour vous et vous seul UNIQUEMENT. Il ne vous restera qu'à modifier votre login.cfg et lui attribuer cette adresse IP.

Vous pouvez donc faire vos modifications bien tranquillement sur ce RunUO tandis qu'un autre fonctionnera à côté pour vos joueurs adorés.

Assurer l'indépendance de son serveur!

Vous avez sans doute déjà remarqué qu'il est impossible a prime abord de faire des freezes d'objets lorsqu'on est sur l'ordinateur d'hébergement. Eh bien, c'est parce que votre RunUO utilise déjà ces fichiers, il vous est donc impossible de les modifier pendant que vous les utilisez. Idem pour un utilisateur de Mulpatcher qui veut faire quelques modifications sur la carte pendant que son serveur tourne. Il existe un moyen bien simple de palier à ce problème: modifier le répertoire en imposant à RunUO celui que vous désirez.

Pour cela, vous aurez besoin d'accéder au fichier Datapath.cs situé dans le dossier */Scripts/Misc

À l'intérieur de celui-ci vous trouverez ce petit bout de code bien intéressant.

Code:
      /* If you have not installed Ultima Online,
       * or wish the server to use a separate set of datafiles,
       * change the 'CustomPath' value, example:
       *
       * private const string CustomPath = @"C:\Program Files\Ultima Online";
       */
        private static string CustomPath = @"C:\Program Files\EA Games\Ultima Online 2d Client";

      /* The following is a list of files which a required for proper execution:
       *
       * Multi.idx
       * Multi.mul
       * VerData.mul
       * TileData.mul
       * Map*.mul
       * StaIdx*.mul
       * Statics*.mul
       * MapDif*.mul
       * MapDifL*.mul
       * StaDif*.mul
       * StaDifL*.mul
       * StaDifI*.mul
       */

Cela explique d'abord que si vous désirez avoir des fichiers de jeu indépendant des fichiers systèmes, il vous faudra modifier le répertoire contenu dans la ligne

Code:
private static string CustomPath = @"C:\Program Files\EA Games\Ultima Online 2d Client";

Ainsi, vous lui donnerez donc une allure qui ressemblera à

Code:
private static string CustomPath = @"C:\RunUO\Fichiers de jeu";

L'énumération de fichiers .mul suivante indique quels fichiers il vous faudra déplacer à cet endroit. Ceux contenant un astérisque avant le .mul veulent simplement dire que vous devrez tous les déplacer, nonobstant de leur numéro.

Ainsi, vous pourrez avoir un plein contrôle sur votre serveur et être en mesure de l'exploiter au maximum. Faîtes cependant attention: si vous modifiez des fichiers via votre serveur (exemple le freeze qui modifiera les statics.mul et statidx.mul), il vous faudra les recopier dans votre répertoire Ultima Online; si par contre vous modifiez des fichiers via d'autres applications (Notepad pour les .def ou Mulpatcher pour les .mul),il vous faudra les copier dans votre répertoire RunUO que vous avez créé.
Revenir en haut Aller en bas
 
00) Installer son propre serveur RunUO et l'environnement C#
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Exécuter Runuo
» Bienvenue sur RunUO-FR
» RunUO sous Linux
» Le tout premier RunUO-FR
» RunUO-FR, un lieu neutre?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RunUO-FR :: Tutoriaux Scripts :: Tutoriaux RunUO-
Sauter vers: