Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Fiesta Online
You last visited: Today at 17:42

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Howto] Multiserver

Discussion on [Howto] Multiserver within the Fiesta Online forum part of the MMORPGs category.

Reply
 
Old   #1
 
Che's Avatar
 
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
[Howto] Multiserver

Ich möchte euch in diesem kleinen Howto zeigen, wie man ganz einfach mehrere Server laufen lässt und es schafft, dass alle Server im Serverauswahl-Fenster im Client auftauchen. Los gehts!

Da die normalen Serverfiles etwas unaufgeräumt sind und somit das ganze etwas verkomplizieren, habe ich mir mal die Mühe gemacht die Ordnerstruktur komplett zu ändern, das war mit nem Hex-Editor und viel Zeit absolut kein Problem. Damit ihr das nicht selbst tun müsst, habe ich sie für euch hochgeladen. Ich empfehle diese zu verwenden, sonst werdet ihr vermutlich beim Tutorial nicht ganz mitkommen, denn beim folgenden Tutorial werde ich diese Files verwenden.

Um einen weiteren Server hinzuzufügen öffnet zunächst die Datei _CONF.txt im Hauptverzeichnis eurer Serverfiles. Navigiert hier zum Block "Define World Name" (Zeile 52), dort steht bereits:
Code:
;-----------------------------------------------------------------------------------
; DEFINE WORLD NAME
;-----------------------------------------------------------------------------------
WORLD_NAME 0, "Server1", "_DATA"
Für jeden weiteren Server müsst ihr hier eine Zeile im Format
Code:
WORLD_NAME X, "ServerX", "_DATA"
anhängen, wobei X für die Nummer des Servers steht (keine numerischen Lücken lassen!)


Wenn das getan ist, dann muss weiter unten im Block nach der Definition der Loginserver und vor der Definition der ODBC Daten der neue Server hinzugefügt werden, hängt hierzu den Text in folgendem Format an:
Code:
;-----------------------------------------------------------------------------------
; SERVER X
;-----------------------------------------------------------------------------------

; World #X -------------------------------------------------------------------
SERVER_INFO "PG_World0X_Character_DB_Server",        2, 1, 0, 0, "Z",    9Y00,  1,        100    ; From ALL
SERVER_INFO "PG_World0X_GameLog_DB_Server",     3, 1, 0, 0, "Z",    9Y01,  1,        100    ; From ALL
SERVER_INFO "PG_World0X_Manager_Server",  5, 1, 0,20, "Z",    9Y10,  10,       2000   ; Public IP
SERVER_INFO "PG_World0X_Manager_Server",  5, 1, 0, 6, "Z",    9Y15,  1,        100    ; Public IP
SERVER_INFO "PG_World0X_Manager_Server",  5, 1, 0, 8, "Z",    9Y16,  1,        30     ; From OPTOOL

; Zone 0 ---------------------------------------------------------------------
SERVER_INFO "PG_World0X_Zone_Server",        6, 1, 0,20, "Z",    9Y20,  10,       2000   ; Public IP
SERVER_INFO "PG_World0X_Zone_Server",        6, 1, 0, 8, "Z",    9Y21,  1,        30     ; From OPTOOL

; Zone 1 ---------------------------------------------------------------------
SERVER_INFO "PG_World0X_Zone_Server1",        6, 1, 1,20, "Z",    9Y22,  10,       2000   ; Public IP
SERVER_INFO "PG_World0X_Zone_Server1",        6, 1, 1, 8, "Z",    9Y23,  1,        30     ; From OPTOOL

; Zone 2 ---------------------------------------------------------------------
SERVER_INFO "PG_World01_Zone_Server1",        6, 1, 2,20, "Z",    9Y24,  10,       2000   ; Public IP
SERVER_INFO "PG_World0X_Zone_Server1",        6, 1, 2, 8, "Z",    9Y25,  1,        30     ; From OPTOOL
Hierbei gilt: X = Servernummer; Y = Servernummer + 1; Z = eure externe IP

Jetzt fehlt nur noch die neuen OBDC-Info, hängt also ganz unten vor #End Text in folgendem Format an:
Code:
ODBC_INFO "CharacterX",    10,        1,    "DSN=CharacterX;    UID=sa;    PWD=Y", "USE World0X_Character;    SET LOCK_TIMEOUT 5000"
ODBC_INFO "GameLogX",    11,        1,    "DSN=GameLogX;    UID=sa;    PWD=Y", "USE World0X_GameLog;    SET LOCK_TIMEOUT 5000"
X steht hierbei für unsere Servernummer, Y für das Passwort des sa-Accounts.

So, das wars auch schon mit dieser Datei, nun zu der Konfiguration der Dienste:

Kopiert zunächst den Ordner _World00 und benennt die Kopie im Format _World0X wobei X wieder die Servernummer ist.
Öffnet nun die Kopie und geht in den Unterordner _Character, öffnet hier die Datei _CONF.txt.
Navigiert zu Zeile 9 und ersetzt die Zeile nach folgendem Schema:
Code:
MY_SERVER "PG_World0X_Character_DB_Server", "_World0X Character DB Server", 2,          X,         0
X steht wieder für die neue Servernummer.
Wiederholt diesen Vorgang für die Ordner _GameLog, _WorldManager, _Zone, _Zone1, _Zone2 nach folgenden Schemen:
_GameLog:
Code:
MY_SERVER "PG_World0X_GameLog_DB_Server", "_World0X GameLog DB Server", 3,          X,         0
_WorldManager
Code:
MY_SERVER "PG_World0X_Manager_Server", "_World0X Manager Server", 5,          X,         0
_Zone (hier ist es Zeile 44)
Code:
MY_SERVER "PG_World0X_Zone_Server", "_World0X Zone Server",   6,          X,         0
_Zone1 (hier ist es Zeile 44)
Code:
MY_SERVER "PG_World0X_Zone_Server1", "_World0X Zone Server1",   6,          X,         1
_Zone2 (hier ist es Zeile 44)
Code:
MY_SERVER "PG_World0X_Zone_Server2", "_World0X Zone Server2",   6,          X,         2
Nun habt ihr alle Konfigurationen in den Serverfiles selbst abgeschlossen, nun zu der Datenbank:

Loggt euch im Microsoft SQL Server Management Studio ein und stellt die Datenbanken World00_Character und World00_GameLog wieder her, benennt sie dieses mal aber nach dem Schema World0X_Character und World0X_GameLog wobei X wieder für die Servernummer unseres neuen Servers steht.
Also nach dem Motto


Wenn ihr das geschafft habt, dann setzt die neuen ODBC-Verbindungen, geht so:
Startet ODBC (bei 64-Bit-Systemen %SystemRoot%\sysWOW64\odbcad32.exe) und klickt auf den Tab SystemDSN.
Hier klickt ihr auf Hinzufügen und wählt "SQL Server" und klickt auf Weiter.
Für die neue Character-DB gebt den Text in Form CharacterX (wobei X wieder für die Servernummer steht) ein, für die GameLog-DB GameLogX (X = Servernummer).
Wählt unten noch euren eigenen Server und klickt auf Weiter und nochmal auf Weiter.
Setzt nun einen Haken bei "Die Standarddatenbank ändern auf:" und wählt hier eure neue Character-DB bzw GameLog-DB. (Also World0X_Character bzw World0X_GameLog, wobei X wie immer für die Servernummer steht), dann nochmal auf Weiter und dann auf Fertigstellen, nun habt ihrs geschafft!

Jetzt nur noch im Serverfiles-Ordner im (vorhin erstellten) Unterordner World0X (X = Servernummer) die install.bat ausführen und alle Services neu starten, also auch die neuen mitstarten... Nun läuft euer neuer Server!


Kleine Info zu den "neuen" Serverfiles:
die Files sind auf 2 Server vorkonfiguriert
_DATA entspricht _CONF/Data
_FILES entspricht _CONF/Shine (sind alte Athens Files, da ich meine ungerne weiter gebe)
_CONF.txt entspricht _CONF/config.txt
_ServerGroup.txt entspricht _CONF/_ServerGroup.txt

_LOGIN beinhaltet alle globalen Services
_World00 beinhaltet den ersten Server
_World01 beinhaltet den zweiten Server

Die Datenbanken müsst ihr per Hand wiederherstellen und die ODBC-Verbindungen per Hand konfigurieren, hab ja erklärt wie es geht
Che is offline  
Thanks
3 Users
Old 08/22/2012, 10:15   #2
 
elite*gold: 0
Join Date: Jul 2012
Posts: 184
Received Thanks: 72
In bischen fail oder ?

Schau dir mal die config von Korea oder Outspark an die haben es anderes ...

ich sag nur man kommt zu einem Ergebniss aber der rest ist leider falsch...
ιcσяє is offline  
Old 08/22/2012, 13:08   #3

 
elite*gold: 74
Join Date: Jun 2012
Posts: 608
Received Thanks: 360
Ich find's super das es so nen Tutorial gibt, aber ich finde es auch nen bisschen provokant das es aufeinmal auftaucht .. nachdem ich das bei iCore im Thread als Wunsch genannt habe. Vorher hat sich keiner drum geschert nun fängt einer an und plötzlich ziehen alle nach.

Da ich aber mit meiner Meinung neutral handel .. verstehe ich nun nicht warum iCore einen Thread erstellt hat und ihn am nächsten Tag löscht. Aber aufgrund der sich nicht besseren Situation in unserer Sektion, werde ich diesbezüglich nochmal ein Thread eröffnen.

Aber wie bereits gesagt, schön das es solch ein Tutorial gibt .. auch wenn ich es selbst noch nicht ausprobiert habe.
Cℓoud is offline  
Old 08/22/2012, 13:14   #4
 
xChainSaw's Avatar
 
elite*gold: 0
Join Date: Jun 2012
Posts: 26
Received Thanks: 3
Auch wenn jetzt vllt. geflame kommt oder so .
Aber ich stimme Cloud zu , es gab diesen wunsch schon . Der Wunsch wurde an iCore gerichtet und nicht an alle :P
Jetzt ist der Thread entgültig weg , und es hätte bestimmt vielen geholfen .

Sehr nett von diir ( Che ) .

Mfg xChainSaw
xChainSaw is offline  
Old 08/22/2012, 16:14   #5
 
Che's Avatar
 
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
Quote:
Originally Posted by ιcσяє View Post
ich sag nur man kommt zu einem Ergebniss aber der rest ist leider falsch...
Ich hab nie behauptet, dass das die einzige richtige Methode ist, aber so hab ich es hinbekommen und so ist es am einfachsten.
Quote:
Originally Posted by Cℓoud View Post
Ich find's super das es so nen Tutorial gibt, aber ich finde es auch nen bisschen provokant das es aufeinmal auftaucht .. nachdem ich das bei iCore im Thread als Wunsch genannt habe. Vorher hat sich keiner drum geschert nun fängt einer an und plötzlich ziehen alle nach.
So weit ich das mitbekommen habe bin ich einer der ersten, die es überhaupt geschafft haben nen Multiserver zu erstellen, wer meinen Server kennt kann sogar im Forum in den News nachlesen, dass zeitweise 2 Server öffentlich zugänglich waren, über diese Methode.
So ein Tutorial zu schreiben hatte ich schon lange vor, hatte aber nie Lust die neugeordneten Files fertig zu stellen und hatte bedenken, dass sowas überhaupt jemanden interessiert. Da aber der Wunsch geäußert wurde, dachte ich mir "egal, dann publizierst du es halt" und habs schnell geschrieben.
Quote:
Originally Posted by xChainSaw View Post
Sehr nett von diir ( Che ) .
np
Che is offline  
Old 08/22/2012, 21:13   #6
 
EpicFight's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 1,697
Received Thanks: 615
Quote:
Originally Posted by Che​ View Post
Ich hab nie behauptet, dass das die einzige richtige Methode ist, aber so hab ich es hinbekommen und so ist es am einfachsten.

So weit ich das mitbekommen habe bin ich einer der ersten, die es überhaupt geschafft haben nen Multiserver zu erstellen, wer meinen Server kennt kann sogar im Forum in den News nachlesen, dass zeitweise 2 Server öffentlich zugänglich waren, über diese Methode.
So ein Tutorial zu schreiben hatte ich schon lange vor, hatte aber nie Lust die neugeordneten Files fertig zu stellen und hatte bedenken, dass sowas überhaupt jemanden interessiert. Da aber der Wunsch geäußert wurde, dachte ich mir "egal, dann publizierst du es halt" und habs schnell geschrieben.

np
laut quellen hatte crusher den ersten , aber ist ja wayne xD du , canic , ich haben einen anderen aufbau xD
crusher hatte es so wie ich ^^
EpicFight is offline  
Old 03/03/2017, 22:06   #7
 
elite*gold: 0
Join Date: Feb 2016
Posts: 114
Received Thanks: 13
Cooles Tutorial, hab mal eine Frage:
Also ich möchte gerne 2 Server auf meinem Root haben, die sollen aber voneinander getrennt sein
also zum Beispiel:
Server 1 und Client 1 verbunden mit Datenbank 1
Server 2 und Client 2 verbunden mit Datenbank 2

Wenn alle Dienste von Server 1 funktionieren lassen sich starten und mit Client 1 komm ich auf dem Server 1 drauf und kann rumlaufen questen etc
und alle Dienste von Server 2 funktionieren auch lassen sich auch starten und mit Client 2 komm ich ebenfalls auf Server 2 drauf und kann rumlaufen und questen etc.

Aber mein Problem ist
ich kann nicht beide Server laufen lassen
ich kann entweder die Dienste von Server 1 in Dienste eintragen lassen, oder
alle Dienste von Server 2 in Dienste eintragen lassen mit Firstrun
aber ich möchte das alle Dienste von beiden Servern eingetragen sind
ich weiß das es ja dann doppelt wäre
wegen dem Dienstnamen zum Beispiel:
Dienstname: AccountLogDB_Server
AnzeigeName: _AccountLog
weil bei beiden Servern heißt der Dienst ja gleich
aber ich möchte das die Dienste doppelt drin stehen

also Server 1:
Dienstname: AccountLogDB_ServerA
Anzeigename: _AccountLogA
und Server 2:
Dienstname: AccountLogDB_ServerB
Anzeigename: _AccountLogB
das es dann folgendermaßen aussieht mit allen Diensten:

Versteht ihr mich?
Das alle Dienste von Server 1 und alle Dienste von Server 2 in Dienste aufgelistet werden, aber halt verändert weil ja die Dienste grundsätzlich ja gleich heißen und nur ein Server eingetragen und gestartet werden kann und der andere kann nicht eingetragen werden, weil ja bereits die Dienste des anderen Servers eingetragen sind da ja alle den selben Dienstnamen und Anzeige Namen haben. Darum möchte ich wissen wie ich das ändere
das ich die Dienste so umbenenen kann das jeder einzelne Dienst zwei Mal vorkommt nur halt mit unterschiedlichen Namen wie im dem Spoilerfeld.


Hab es hinbekommen ich muss nur die
DateServerInfo_Accountlog.txt ändern
und da den Anzeigenamen und Dienstnamen des Dienstes ändern und nur ein A hinzufügen.
Aber den OdinRestServer Dienst kann ich irgendwie nicht ändern, weil es davon keine DataServerInfo.txt gibt
TheDragonX3 is offline  
Old 03/04/2017, 18:39   #8
 
EpicFight's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 1,697
Received Thanks: 615
Du brauchst un teschiedliche Dienst Namen, Db Namen und verschiedene Ports...


zum Rest, pass den Namen doch im Source Code an..
EpicFight is offline  
Thanks
1 User
Old 03/04/2017, 19:26   #9
 
elite*gold: 0
Join Date: Feb 2016
Posts: 114
Received Thanks: 13
Ich hab das jetzt hinbekommen indem ich in der Registry den Dienstnamen ändere
also Server1 hat jetzt den
Dienstnamen: AESIRGAMES_OdinRestServer
Anzeigename: _OdinRestServer

und Server2 hat jetzt den
Dienstnamen: AESIRGAMES_OdinRestServerA
Anzeigename: _OdinRestServer2
alle Dienste lassen sich bis auf die Odin Dienste starten
das problem hab ich jetzt

beide Server kann ich zwar starten aber nicht gleichzeitig laufen lassen
ich kann entweder nur AESIRGAMES_OdinRestServer oder AESIRGAMES_OdinRestServerA starten
Server 1 = AESIRGAMES_OdinRestServer hat den Port 80
und Server2 = AESIRGAMES_OdinRestServerA hat den Port 81
und dann kann ich alle Dienste starten aber dann hab ich das Problem
beim zweiten Server hab ich ein Auththenfication Fehler und wenn der erste Server da steht in der Server auswahl: Auslastung: Offline

also alle Dienste sind gestartet Server 1 mit Port 80 und Server 2 mit Port 81
aber ich komm auf keinen der beiden drauf, aber sobald ich die Dienste von Server 2 beende, dann wird aus dem Server 1 Status: Offline ein Low und dann komm ich auf Server 1 drauf wenn die dienste von Server 2 aus sind.
Und den Auth Fehler kann ich nur beheben wenn ich beide
AESIRGAMES_OdinRestServer, AESIRGAMES_OdinRestServerA zu Port 80 mache, aber dann kann ich nur einen von beiden starten und auch nur auf einem von beiden Servern drauf.

Kannst du mir sagen wie ich das hinkriege das ich beide Server gleichzeitig nutzen kann?
Das beide AESIRGAMES_OdinRestServer, AESIRGAMES_OdinRestServerA auf Port 80 laufen und beide auf Auslastung: Low stehen und nicht auf Offline und kein Auth Fehler kommt?
Ich weiß ja das der OdinRestServer nur mit Port 80 funktioniert, aber es muss doch ne Möglichkeit geben das man das auch ändern kann eventuell in der Exe selbst. Ich habe 2 unterschiedliche OdinRestServer wie gesagt OdinRestServer für Server 1 und OdinRestServerA für Server 2. Da ich 2 unterschiedliche Server habe
also 2 Server 2 Clients will nicht 2 Server auf einem Server haben wie z.B: Fiesta = Nature, Markis, Izyel, Apoline. Möchte 2 getrennte Server mit 2 Clients die beide sich nicht beißen sondern funktionieren möchte keine VM benutzen da ich sonst nur NAT verwenden müsste da Bridge nicht funktioniert.
TheDragonX3 is offline  
Old 03/04/2017, 23:42   #10
 
elite*gold: 0
Join Date: Sep 2013
Posts: 562
Received Thanks: 361
Benutz bei einem Server die outspark_vc71.dll die mitgeliefert wurde und bei dem
anderen die outspark_vc71.dll die ich releast habe mit dem abgeänderten Port.
Der Restserver kann nämlich auf allen Ports lauschen, die .dll schreibt dem Logindienst
jedoch vor, anfragen nur an stubedore.t zu senden welche du per host datei ja auf
localhost verweist.
D0n! is offline  
Old 03/05/2017, 01:09   #11
 
elite*gold: 0
Join Date: Feb 2016
Posts: 114
Received Thanks: 13
Wie meinst du das jetzt genau? wo soll ich diese .dll her bekommen?
Kannst du mir genauer erklären wie ich den Port ändern kann vom OdinRestserver?
Das Server 1 auf Port 80 läuft und Server 2 auf einem anderen Port läuft ohne das Server 2 den Auth Fehler macht?
Weil ja beide OdinRestServer den Port 80 haben wollen.
TheDragonX3 is offline  
Old 03/05/2017, 18:14   #12
 
elite*gold: 0
Join Date: Sep 2013
Posts: 562
Received Thanks: 361
Bitte lies dir meinen Post doch nochmal etwas genauer durch.
Informationen und einen Downloadlink zur dll findest du .

Einen angepassten RestService bei dem Service und Displayname frei definierbar sind
kannst du herunterladen.

Gruß D0n!
D0n! is offline  
Old 03/05/2017, 21:27   #13
 
elite*gold: 0
Join Date: Feb 2016
Posts: 114
Received Thanks: 13
Vielen lieben dank
Ich habs ja genau durchgelesen und habe mal im Windows Explorer die dll eingegeben und gefunden aber ich kann nix mit der DLL anfangen aber ich hab eine ini gefunden in der was mit RestServer und Port 80 drin steht, guck dir das hier an:
Das ist die Outspark.ini Datei

muss ich dann auch da auf einen anderen Port umstellen?

Ich habe jetzt die RestServer.exe aus der Rar Datei genommen die du hochgeladen hast und gegen die vom Server ausgetauscht und auch korrekt konfiguriert aber ich erhalte immer noch den Auth Fehler :c
Habe den Port geändert und erhalte den Auth Fehler weiterhin
TheDragonX3 is offline  
Old 03/05/2017, 23:08   #14
 
elite*gold: 0
Join Date: Sep 2013
Posts: 562
Received Thanks: 361
Sorry aber ich gebs auf...
D0n! is offline  
Thanks
1 User
Old 03/05/2017, 23:19   #15
 
elite*gold: 0
Join Date: Feb 2016
Posts: 114
Received Thanks: 13
Ja tut mir leid aber was kann ich dafür?
ich habe alles gemacht was du gesagt hast. Ich habe die RestServer.exe aus der Rar datei entpackt und sie durch die OdinRestServer.exe ersetzt und passend umbenannt wegen der Batch-Datei habe auch einen anderen Port eingetragen
und den Pfad zur Datenbank angepasst
Der Dienst startet läuft fehlerfrei über den neuen Port, aber wenn ich vom Launcher aus mich einlogge startet das Spiel, es lädt und kurz bevor die Serverliste erscheint kommt wieder der Auth Fehler.
TheDragonX3 is offline  
Reply


Similar Threads Similar Threads
multiserver hack
11/19/2010 - Metin2 - 1 Replies
hi guys i wana know if exist an multi server hack like the one from banjo 1 for metin the one that wass teleport speed and atack hack if exist can any one send me the dowload link plz i cant find it
Multiserver client
09/19/2009 - Metin2 Private Server - 4 Replies
jo hab ne frage ich soll ja was aus dem pack ordner löschen nähmlich locale_honkong und locale_honkong 2 aber es gibt locale_honkong epk und eix und locale_honkong2 epk und eix was soll ich löschen ? bitte um hilfe



All times are GMT +1. The time now is 17:44.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.