Sphereserver Guide

In diesem Guide werden wir uns einen Sphereserver einrichten, um auf diesen einzuloggen, sowie ein kleiner Einblick der Funktion.


Sphereserver Downloaden und einrichten:

Hier müssen wir Folgende Dinge Downloaden.

SphereSvr-win64.zip oder SphereSvrX-win64-nightly.zip
Latest Sphereserver Script Pack

Kleine Erklärung zu den 2 Server Versionen
Bei der Auswahl des Servers haben wir die Möglichkeit zwischen der X und nicht X Version.
Der Unterschied liegt darin, dass die X Version eine bessere Performance bietet.
Nachteil hingegen ist, dass sie nicht mehr zu 100% kompatibel mit der Sphere 56D ist.

Jetzt erstellen wir einen neuen Ordner und nennen ihm Sphere oder geben ihm den namens unseres Servers.
Im Anschluss entpacken wir den SphereSvr und das Sphereserver Script pack in unseren eben erstellten Ordner.

Jetzt haben wir den Ordner Scripts-master und Scripts.
Den Ordner Scripts löschen wir und benennen den Ordner Scripts-master in Scripts um.


Eine Übersicht der Verzeichnisse:

Accounts = hier sind die Accounts des Servers gespeichert.
logs = hier sind die Ausgaben innerhalb des Sphereservers gespeichert.
save = hier werden mit jedem Worldsave alle Items, Charaker etc. gespeichert.
scripts  = hier sind die Inhalte Items, Npcs, Regionen etc.
scripts/add-on/ = hier befinden sich zusätzliche Inhalte wie ein eingerichtetes Worldsave.
scripts/items/ = hier befinden sich die Item Scripts.
scripts/npcs/ = hier befinden sich die Npcs Scripts.
scripts/maps/ = hier befinden sich die Welten, Regionen und Sectoren Scripts.
scripts/speech/ = hier befinden sich die Sprach Scripts der Npcs.
scripts/stones/ = befinden sich die Scripts der Gilden und Stadtsteine.
scripts/system/ = hier befinden sich System Scripts z.B Aquarium.
scripts/web/ = hier wird der Sphereserver Status generiert.


Speicherdaten Erstellen:

Dafür gehen wir in den Ordner save und erstellen ein Textdokument, was wir sphereworld.scp nennen.
Jetzt öffnen wir die sphereworld.scp und schreiben im zweiten Absatz [EOF] hinein, speichern und schließen das Script.
Jetzt müssen wir 4 Kopien der sphereworld.scp erstellen und diese mit folgenden Namen versehen.
spheredata.scp
spheremultis.scp
spherechars.scp
spherestatics.scp

Hier werden in Zukunft die Informationen der Spielewelt gespeichert. (Items, erstellte Chars etc… )

Accountdaten Erstellen:

Dafür gehen wir in den Ordner accounts.
Hier müssen wir erneut zwei Textdokumente erstellen die heißen sphereaccu.scp und sphereacct.scp
Auch hier müssen wir ein [EOF] am Ende der beiden Scriptdateien einfügen.

Zusätzlich kommt in der sphereacct.scp noch folgende Informationen.

[Max]
Plevel=7
Password=Mustermann

Eine kleine Erklärung:
Max ist unser Account Name und Mustermann unser Passwort, wenn wir uns auf den Server einloggen möchten.
Der Plevel ist unser Rang auf den Server.
1 = Spieler
2 = Consuleor
3 = Seer
4 = Gamemaster
5 = Developer
6 = Co-Admin
7 = Admin

Hier werden in Zukunft alle Informationen zu den Accounts des Servers gespeichert.

SphereCrypt.ini

Hier sind alle Schlüssel des UO-Clients aufgelistet, die es aktuell gibt.
Damit kann man den Zugang zum Server quasi selbst einschränken, indem Client-Versionen Zugriff auf den Server haben. Um fehlende Schlüssel zu ergänzen, die mit der Weiterentwicklung des Clients kommen. Kann man den VCrypter benutzen
Man gibt die Client Version dort ein und er spuckt den Schlüssel aus.  


Sphere.ini

Hier sind alle Einstellungen zu unserem Server.
Als erstes müssen wir ein AGREE=1 unter der [SPHERE] Zeile schreiben.

ServName= Hier müssen wir den Namen unseres Servers schreiben.
ServIP= Hier kommt die IP unseres Servers hin. (Standard 127.0.0.1, außer bei Serveranbietern.)
ServPort= Hier steht der Port worunter, unser Server läuft.

AdminEmail= Hier muss unsere E-Mail-Adresse eingetragen werden.
URL= Hier steht die Adresse unseres Freeshards

TimeZone= Unsere Zeitzone
Lang= Die Sprache auf unseren Freeshard

SavePeriod= Nach wieviel Minuten unsere Spielewelt gespeichert wird.

//MulFiles= Hier empfiehlt es sich, dass // zu entfernen und den Pfad zu der jeweiligen Ultima Online Installation anzugeben.

Alternativ:
Im Sphere Ordner den Ordner mul erstellen und dort Folgende Dateien aus Ultima Online Installation einfügen.
map0.mul, statics0.mul,
 staidx0.mul, multi.mul, multi.idx, hues.mul, tiledata.mul.
Statt den Dateipfad zu der Ultima Online Installation dann nur mul/ eintragen.


Bei den folgenden Einträgen handelt es sich um die Features der Ultima Online Erweiterungen.
FeatureLBR= 01 |02
FeatureAOS = 01 | 02
FeatureSE = 01
FeatureML = 01
FeatureSA = 01
FeatureTOL = 01

Hier hat sich ein Fehler in der Sphere.ini eingeschlichen, die Datei Endung von .htm muss in .html geändert werden.
WebPageSrc=scripts/web/spherestatusbase.htm
WebPageFile=scripts/web/spherestatus.htm

Hier stehen die Login Informationen, die gebraucht werden, damit Leute außerhalb unseres Heimischen Netzwerks sich auf unseren Server mit ihrem Account einloggen können.
Unsere IP finden wir unter http://www.whatismyip.com
Nun legen wir einen weiteren Eintrag unter den vorhandenen an.
Der Eintrag MyShard kann auch durch unseren gewünschten Servernamen ersetzt werden.
[SERVERS]
MyShard
127.0.0.1
2593

MyShard Extern
IP-Adresse die uns auf der Seite angezeigt wurde. http://www.whatismyip.com
2593

Eine kleine Erklärung
MyShard Extern benötigen wir nur auf einen Heimserver, auf einen Offiziellen Server ersetzen wir nur die 127.0.0.1 mit der ServIP=.
Sowie den MyShard Eintrag durch unseren Servernamen.

Nun können wir unsere Sphere.ini speichern und Schließen.


Sphereserver Starten und Console:

Nun können wir unsere SphereSVR ausführen und warten bis folgendes in der Console erscheint:

Press '?' for console commands.


Jetzt schreiben wir einmal A hinein und bestätigen mit Enter.

Konsolen Befehle:
# = Wir lösen einen Worlsave aus, mit ## Werden auch Items, die ein Static-Flag haben, in die spherestatics.scp im save Ordner geschrieben.
A = Accounts die in der sphereacct.scp werden in die sphereaccu.scp geschrieben. So können wir im Betrieb neue Accounts freischalten.
B Hallo = Damit sagen wir auf unseren Server allen Hallo, das Hallo kann durch einen beliebigen Text ersetzt werden. wie z.B., dass in 5 Minuten der Server neu gestartet wird.
C = Liste aller eingeloggten Clients.
H = Aktiviert/Deaktiviert, dass gesprochene Sätze ingame angezeigt werden und in den log Files angezeigt werden.
R = lädt Aktualisierungen an den Scripten nach.
Strip = Damit erstellen wir die nötigen Informationen für Axis2, damit unsere Freunde Reisepunkte, NPCs und Items in Axis2 verfügbar haben.
Die erstellte sphere_strip_axis.scp finde wir im Ordner scripts/web
Striptng = Dasselbe wie Axis nur für TNG



Ultima Online vorbereiten zum Login auf den Server:

In einer Frischen Ultima Online Installation suchen wir die Login.cfg und öffnen diese.
Es sind folgende Einträge vorhanden:

LoginServer=107.23.176.74,7775
LoginServer=107.23.176.74,7776
LoginServer=107.23.85.115,7775
LoginServer=107.23.85.115,7776

Diese ersetzen wir durch:
LoginServer=127.0.0.1.2593

Ein kleiner Hinweis.
Wenn hingegen ein Bekannter von außerhalb bei uns einloggen soll, braucht er eine andere IP Adresse in der Login.cfg
Dieser benötigt nicht die 127.0.0.1 sondern die IP, die uns auf https://www.whatismyip.com/ angezeigt wird.


Nun Speichern wir diese und öffnen die Client client.exe
Dort geben wir unseren Accountnamen und Passwort ein


Nebenbei empfehle ich das Tool Axis2, da es die ideale Ergänzung ist, um auf dem Server Ingame arbeiten zu können. Zum Guide für Axis2