Salutare !
Am incercat sa bag si eu 2 servere in acelasi client. Ambele fiind de acelasi tip, acelasi serverfile. Vreau sa fie unul PVM, iar celalalt PVP!
Am reusit sa bag, primul server merge, dar pe al doilea cand il selectez, aleg si ch si dau ok, ma scoate din client.
Este posibil sa nu fi facut eu bine, de aceea am nevoie de ajutorul vostru !
Astept un tutorial sau ceva, pentru a rezolva aceasta problema !
Eroare Client
Da cautare pe google dupa textul "Mai multe servere / CH-uri într-un client" si vei gasi un tutorial.
Root-serverinfo.py
Cod: Selectaţi tot
import locale
def BuildServerList(orderList):
retMarkAddrDict = {}
retAuthAddrDict = {}
retRegion0 = {}
ridx = 1
for region, auth, mark, channels in orderList:
cidx = 1
channelDict = {}
for channel in channels:
key = ridx * 10 + cidx
channel['key'] = key
channelDict[cidx] = channel
cidx += 1
region['channel'] = channelDict
retRegion0[ridx] = region
retAuthAddrDict[ridx] = auth
retMarkAddrDict[ridx*10] = mark
ridx += 1
return retRegion0, retAuthAddrDict, retMarkAddrDict
if locale.IsEUROPE():
STATE_NONE = '...'
STATE_DICT = {
0 : '....',
1 : 'Normal',
2 : 'Ocupat',
3 : 'Plin',
}
CHANNELS1 = [
{'name':'CH1','ip':'192.168.1.2','tcp_port':13000,'udp_port':13000,'state':STATE_NONE,},
{'name':'CH2','ip':'192.168.1.2,'tcp_port':13001,'udp_port':13001,'state':STATE_NONE,},
{'name':'CH3','ip':'192.168.1.2','tcp_port':13002,'udp_port':13002,'state':STATE_NONE,},
{'name':'CH4','ip':'192.168.1.2','tcp_port':13003,'udp_port':13003,'state':STATE_NONE,},
]
CHANNELS2 = [
{'name':'CH1','ip':'192.168.1.3','tcp_port':13000,'udp_port':13000,'state':STATE_NONE,},
{'name':'CH2','ip':'192.168.1.3,'tcp_port':13001,'udp_port':13001,'state':STATE_NONE,},
{'name':'CH3','ip':'192.168.1.3','tcp_port':13002,'udp_port':13002,'state':STATE_NONE,},
{'name':'CH4','ip':'192.168.1.3','tcp_port':13003,'udp_port':13003,'state':STATE_NONE,},
]
MARK1 = { 'ip' : '192.168.1.2', 'tcp_port' : 13000, 'mark' : '120.tga', 'symbol_path' : '120', }
MARK2 = { 'ip' : '192.168.1.3', 'tcp_port' : 13000, 'mark' : '120.tga', 'symbol_path' : '120', }
AUTH1 = {'ip':'192.168.1.2','port':11002, }
AUTH2 = {'ip':'192.168.1.3','port':11002, }
NAME1 = { 'name' : 'Nume Server Metin2'}
NAME2 = { 'name' : 'Nume Server Metin2 - server2'}
REGION0_ORDER_LIST = [
(NAME1, AUTH1, MARK1, CHANNELS1),
(NAME2, AUTH2, MARK2, CHANNELS2),
]
NEW_REGION0, NEW_REGION0_AUTH_SERVER_DICT, NEW_MARKADDR_DICT = BuildServerList(REGION0_ORDER_LIST)
# RESULT
NEW_REGION_NAME_DICT = {0 : 'POLAND',}
NEW_REGION_AUTH_SERVER_DICT = {0 : NEW_REGION0_AUTH_SERVER_DICT,}
NEW_REGION_DICT = {0 : NEW_REGION0,}
MARKADDR_DICT = NEW_MARKADDR_DICT
REGION_DICT = NEW_REGION_DICT
REGION_NAME_DICT = NEW_REGION_NAME_DICT
REGION_AUTH_SERVER_DICT = NEW_REGION_AUTH_SERVER_DICT
TESTADDR = { 'ip' : '192.168.1.2', 'tcp_port' : 50000, 'udp_port' : 50000, }Nu imi merge, imi da o eroare la client !White scrie:Root-serverinfo.pyCod: Selectaţi tot
import locale def BuildServerList(orderList): retMarkAddrDict = {} retAuthAddrDict = {} retRegion0 = {} ridx = 1 for region, auth, mark, channels in orderList: cidx = 1 channelDict = {} for channel in channels: key = ridx * 10 + cidx channel['key'] = key channelDict[cidx] = channel cidx += 1 region['channel'] = channelDict retRegion0[ridx] = region retAuthAddrDict[ridx] = auth retMarkAddrDict[ridx*10] = mark ridx += 1 return retRegion0, retAuthAddrDict, retMarkAddrDict if locale.IsEUROPE(): STATE_NONE = '...' STATE_DICT = { 0 : '....', 1 : 'Normal', 2 : 'Ocupat', 3 : 'Plin', } CHANNELS1 = [ {'name':'CH1','ip':'192.168.1.2','tcp_port':13000,'udp_port':13000,'state':STATE_NONE,}, {'name':'CH2','ip':'192.168.1.2,'tcp_port':13001,'udp_port':13001,'state':STATE_NONE,}, {'name':'CH3','ip':'192.168.1.2','tcp_port':13002,'udp_port':13002,'state':STATE_NONE,}, {'name':'CH4','ip':'192.168.1.2','tcp_port':13003,'udp_port':13003,'state':STATE_NONE,}, ] CHANNELS2 = [ {'name':'CH1','ip':'192.168.1.3','tcp_port':13000,'udp_port':13000,'state':STATE_NONE,}, {'name':'CH2','ip':'192.168.1.3,'tcp_port':13001,'udp_port':13001,'state':STATE_NONE,}, {'name':'CH3','ip':'192.168.1.3','tcp_port':13002,'udp_port':13002,'state':STATE_NONE,}, {'name':'CH4','ip':'192.168.1.3','tcp_port':13003,'udp_port':13003,'state':STATE_NONE,}, ] MARK1 = { 'ip' : '192.168.1.2', 'tcp_port' : 13000, 'mark' : '120.tga', 'symbol_path' : '120', } MARK2 = { 'ip' : '192.168.1.3', 'tcp_port' : 13000, 'mark' : '120.tga', 'symbol_path' : '120', } AUTH1 = {'ip':'192.168.1.2','port':11002, } AUTH2 = {'ip':'192.168.1.3','port':11002, } NAME1 = { 'name' : 'Nume Server Metin2'} NAME2 = { 'name' : 'Nume Server Metin2 - server2'} REGION0_ORDER_LIST = [ (NAME1, AUTH1, MARK1, CHANNELS1), (NAME2, AUTH2, MARK2, CHANNELS2), ] NEW_REGION0, NEW_REGION0_AUTH_SERVER_DICT, NEW_MARKADDR_DICT = BuildServerList(REGION0_ORDER_LIST) # RESULT NEW_REGION_NAME_DICT = {0 : 'POLAND',} NEW_REGION_AUTH_SERVER_DICT = {0 : NEW_REGION0_AUTH_SERVER_DICT,} NEW_REGION_DICT = {0 : NEW_REGION0,} MARKADDR_DICT = NEW_MARKADDR_DICT REGION_DICT = NEW_REGION_DICT REGION_NAME_DICT = NEW_REGION_NAME_DICT REGION_AUTH_SERVER_DICT = NEW_REGION_AUTH_SERVER_DICT TESTADDR = { 'ip' : '192.168.1.2', 'tcp_port' : 50000, 'udp_port' : 50000, }
Cam asa arata serverinfo-ul meu.
Cod: Selectaţi tot
import os
import app
import locale
import debugInfo
CHINA_PORT = 50000
if locale.IsEUROPE():
STATE_NONE = "..."
STATE_DICT = {
0 : "MENTENANTA",
1 : "NORMAL",
2 : "OCUPAT",
3 : "FULL"
}
Zeros_serverinfo = {
1:{"key":11,"name":"CH1","ip":"12.34.56.789","tcp_port":15701,"udp_port":15701,"state":STATE_NONE,},
2:{"key":12,"name":"CH2","ip":"12.34.56.789","tcp_port":16701,"udp_port":16701,"state":STATE_NONE,},
}
REGION_NAME_DICT = {
0 : "GERMANY",
}
REGION_AUTH_SERVER_DICT = {
0 : {
1 : { "ip":"12.34.56.789", "port":14005, },
}
}
REGION_DICT = {
0 : {
1 : { "name" :"Metin2Aguna", "channel" : Zeros_serverinfo, },
},
}
MARKADDR_DICT = {
10 : { "ip" : "12.34.56.789", "tcp_port" : 15701, "mark" : "10.tga", "symbol_path" : "10", },
}
TESTADDR = { "ip" : "12.34.56.789", "tcp_port" : 50000, "udp_port" : 50000, }
Bagă asta și modifici cu datele și porturile serverului tău !
Cod: Selectaţi tot
import os
import app
import locale
import debugInfo
CHINA_PORT = 50000
if locale.IsEUROPE():
STATE_NONE = "NORMAL"
STATE_DICT = {
0 : "MENTENANTA",
1 : "NORMAL",
2 : "OCUPAT",
3 : "FULL"
}
SERVER1_CHANNEL_DICT = {
1:{'key':11,'name':'CANAL 1 ','ip':'188.241.194.158','tcp_port':15701,'udp_port':15701,'state':STATE_NONE,},
}
SERVER2_CHANNEL_DICT = {
1:{'key':11,'name':'CANAL 1 ','ip':'188.241.194.158','tcp_port':15701,'udp_port':15701,'state':STATE_NONE,},
}
REGION_NAME_DICT = {
0 : 'GERMANY',
}
REGION_AUTH_SERVER_DICT = {
0 : {
1 : { 'ip':'188.241.194.158', 'port':14005, },
2 : { 'ip':'188.241.194.158', 'port':11003, },
}
}
REGION_DICT = {
0 : {
1 : { 'name' : 'Metin2Atum', 'channel' : SERVER1_CHANNEL_DICT, },
2 : { 'name' : 'TEST', 'channel' : SERVER2_CHANNEL_DICT, },
},
}
MARKADDR_DICT = {
10 : { 'ip' : '193.84.64.4', 'tcp_port' : 15701, 'mark' : '10.tga', 'symbol_path' : '10', },
20 : { 'ip' : '93.114.82.50', 'tcp_port' : 15701, 'mark' : '10.tga', 'symbol_path' : '10', },
}
TESTADDR = { 'ip' : '193.84.64.4', 'tcp_port' : 50000, 'udp_port' : 50000, }
#DONEpoftim aici
unde e 127.0.0.1 modificu cu ip tau!
un thx nu stira
Cod: Selectaţi tot
import locale
def BuildServerList(orderList):
retMarkAddrDict = {}
retAuthAddrDict = {}
retRegion0 = {}
ridx = 1
for region, auth, mark, channels in orderList:
cidx = 1
channelDict = {}
for channel in channels:
key = ridx * 10 + cidx
channel['key'] = key
channelDict[cidx] = channel
cidx += 1
region['channel'] = channelDict
retRegion0[ridx] = region
retAuthAddrDict[ridx] = auth
retMarkAddrDict[ridx*10] = mark
ridx += 1
return retRegion0, retAuthAddrDict, retMarkAddrDict
if locale.IsEUROPE():
STATE_NONE = '...'
STATE_DICT = {
0 : 'MENTENANTA',
1 : 'NORMAL',
2 : 'OCUPAT',
3 : 'FULL',
}
CHANNELS1 = [
{'name':'CH1','ip':'127.0.0.1','tcp_port':15701,'udp_port':15701,'state':STATE_NONE,},
]
CHANNELS2 = [
{'name':'CH1','ip':'127.0.0.1','tcp_port':15701,'udp_port':15701,'state':STATE_NONE,},
]
MARK1 = { 'ip' : '127.0.0.1', 'tcp_port' : 15701, 'mark' : '10.tga', 'symbol_path' : '120', }
MARK2 = { 'ip' : '127.0.0.1', 'tcp_port' : 15701, 'mark' : '10.tga', 'symbol_path' : '120', }
AUTH1 = {'ip':'127.0.0.1','port':14005, }
AUTH2 = {'ip':'127.0.0.1','port':14005, }
NAME1 = { 'name' : 'Metin2Aguna PVM'}
NAME2 = { 'name' : 'Metin2Aguna PVP'}
REGION0_ORDER_LIST = [
(NAME1, AUTH1, MARK1, CHANNELS1),
(NAME2, AUTH2, MARK2, CHANNELS2),
]
NEW_REGION0, NEW_REGION0_AUTH_SERVER_DICT, NEW_MARKADDR_DICT = BuildServerList(REGION0_ORDER_LIST)
# RESULT
NEW_REGION_NAME_DICT = {0 : 'POLAND',}
NEW_REGION_AUTH_SERVER_DICT = {0 : NEW_REGION0_AUTH_SERVER_DICT,}
NEW_REGION_DICT = {0 : NEW_REGION0,}
MARKADDR_DICT = NEW_MARKADDR_DICT
REGION_DICT = NEW_REGION_DICT
REGION_NAME_DICT = NEW_REGION_NAME_DICT
REGION_AUTH_SERVER_DICT = NEW_REGION_AUTH_SERVER_DICT
TESTADDR = { 'ip' : '127.0.0.1', 'tcp_port' : 50000, 'udp_port' : 50000, }
unde e 127.0.0.1 modificu cu ip tau!
un thx nu stira
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 79 vizitatori






