RYL2ServerController

Well.. i cant belive it.

First i was surfing in skopje's forum and found a post from metadon where he said that he has made this launcher.. ok i thought it was just a joke or he needs a bit attention. But when i surfed more i found a damn arrogant post. I attached it here as a pic.

The location is or was:
hxxp://lamja.11.forumer.com/viewtopic.php?t=115
on 29.09.2006 18:34 GMT+3
Depends on did he delete or edit the post.

So really.. this isnt funny anymore.


OMG BUSTED!
 
anyone se if this work for ryl 1 ?

I said it doesnt work. You can only use the auto-restart function on other programs.

If im not bored and if i dont see high demand for the ryl1 support then i wont make it.
 
Are u stupid or what? The previous guy didnt read the forth post. Ok. But u dont even read the first post 'til the end. This thread isnt so big as the ones about server setup so it shouldn't be hard to read and understand it.
 
You can make it even for ryl1. But for ryl1 doesnt work the online showing, log windows opening, and login server enabling.

thats why i was asking if it worked for ryl 1 "anything on it"
sry not trying to be mean but wanted to show i was asking good question
gomen :X
 
Re: [Share]RYL2ServerController

hmm..
i use version 2240.
so my map on DOS. (map.dat)
how to add 5 map on this controller ?

Code:
start RylGameServer.exe -c 0 -z 12
start RylGameServer.exe -c 0 -z 8
start RylGameServer.exe -c 0 -z 16
start RylGameServer.exe -c 0 -z 5
start RylGameServer.exe -c 0 -z 14

- bad english ^^
 
Re: [Share]RYL2ServerController

hmm..
i use version 2240.
so my map on DOS. (map.dat)
how to add 5 map on this controller ?

Code:
start RylGameServer.exe -c 0 -z 12
start RylGameServer.exe -c 0 -z 8
start RylGameServer.exe -c 0 -z 16
start RylGameServer.exe -c 0 -z 5
start RylGameServer.exe -c 0 -z 14

- bad english ^^

kill yourself

you and your 2 year old bumps
 
Re: [Share]RYL2ServerController

hmm..
i use version 2240.
so my map on DOS. (map.dat)
how to add 5 map on this controller ?

Code:
start RylGameServer.exe -c 0 -z 12
start RylGameServer.exe -c 0 -z 8
start RylGameServer.exe -c 0 -z 16
start RylGameServer.exe -c 0 -z 5
start RylGameServer.exe -c 0 -z 14

- bad english ^^

...

Name_6=Zone1
Addr_6=RylZone1.exe
Args_6=-c 0 -z 1
Code_6=119

Name_7=Zone2
Addr_7=RylZone2.exe
Args_7=-c 0 -z 2
Code_7=119

...

MapServers=6,7

..
 
Re: [Share]RYL2ServerController

yes it works well with ryl1 just edit that ini and it should work.

i found better to use 2 controllers at once for map separations because i want to avoid rollbacks when restarting servers.
also i noticed its better to leave login out from it so it can be handled manually better.
 
Re: [Share]RYL2ServerController

I have issues with it reading players online. I can use it to start server and all that not a big deal but i was just going to use the php to read the status
 
Re: [Share]RYL2ServerController

im pretty sure i've shared the source. edit the parser to match the status in ryl 1 log window ;)
 
Re: [Share]RYL2ServerController

im pretty sure i've shared the source. edit the parser to match the status in ryl 1 log window ;)

Hrm gonna have to look for source then, i don't even remember if i got the latest version. ;) Stuck with the classics , Since i just came back to ragezone a few days ago
 
Re: [Share]RYL2ServerController

Components.vb

Code:
   'Login server:
    '
    '@ Clients Server Open 
    'G:00 Kron1x    (0x00000003)   85.146.48.175, Ver:1753    ALLOW_ALL  H:23/17
    'Conneted Agent : 1 / Total User : 40 

    'Auth server
    '@ Limit Players : 0
    '@ Client Open
    '
    'Client Version : 1602, CheckSum : 0x414CA637
    'PatchAddress :  127.0.0.1
    ' Human:    0, Akhan:    0, Total:    0

    ' DBAgent:
    'Ver:1602 / Checksum:0x3a7170cd / PattchAddress:127.0.0.1
    'Connected LoginServer  (      127.0.0.1: 12002)
    'Connected UIDServer    (      127.0.0.1: 12001)
    'Connected AuthServer   (      127.0.0.1:  2880) : Connected User(0)
    'Connected ChatServer   (      127.0.0.1:  2887)
    '(Z:08 C:00) GameServer(0x08000002:      127.0.0.1) CharNum:0
    '(Z:12 C:00) GameServer(0x0c000002:      127.0.0.1) CharNum:0
    '(Z:14 C:00) GameServer(0x0e000502:      127.0.0.1) CharNum:0
    'Session(USER:0/CHAR:0)
    'StoreData(0/0) / CharacterData(0/0)

    'Human:0/Akhan:0
    'Current Total User Count : 0

    Private Sub gotEHook_mess(ByVal sender As clsHook, ByVal mystring As String)
        Dim rE As Boolean = False
        Select Case sender.sItem.codeToOpenLog
            Case &H87 'login 
                'Debug.WriteLine("E: " & " - " & mystring)
                Dim ls As String() = arrayRemoveEmpty(mystring.Split(vbNewLine))
                If ls.Length > 1 AndAlso ls(0).IndexOf("@ Clients Server") = 0 Then 'login server ryl2
                    If ls(0).IndexOf("Open") > 0 AndAlso Not serverInfo.LoginOpen Then
                        serverInfo.LoginOpen = True
                        rE = True
                    ElseIf ls(0).IndexOf("Closed") > 0 AndAlso serverInfo.LoginOpen Then
                        serverInfo.LoginOpen = False
                        rE = True
                    End If
                    'If ls(1).IndexOf("  H:") > 6 Then '6 becose then we dont catch the server name if it starts with H:
                    '    Dim t As String() = Trim(ls(1).Substring(ls(1).IndexOf("  H:", 6) + "  H:".Length)).Split("/")
                    '    If t.Length = 2 Then
                    '        If serverInfo.LoginHuman <> Val(t(0)) Then rE = True
                    '        If serverInfo.LoginAkkan <> Val(t(1).Substring(1)) Then rE = True
                    '        serverInfo.LoginHuman = Val(t(0))
                    '        serverInfo.LoginAkkan = Val(t(1).Substring(1))
                    '    End If
                    'End If
                ElseIf ls.Length > 1 AndAlso ls(0).IndexOf("@ Clients Allow") = 0 Then 'login server ryl1
                    If ls(0).IndexOf("all") > 0 AndAlso Not serverInfo.LoginOpen Then
                        serverInfo.LoginOpen = True
                        rE = True
                    ElseIf (ls(0).IndexOf("Closed") > 0 OrElse ls(0).IndexOf("some") > 0) AndAlso serverInfo.LoginOpen Then
                        serverInfo.LoginOpen = False
                        rE = True
                    End If
                End If
                Dim la As String() = ls(UBound(ls)).Split("/")
                If la.Length > 1 Then
                    For Each l As String In la
                        Dim lw As String() = l.Split(":")
                        If lw.Length = 2 Then
                            lw(0) = Trim(lw(0))
                            lw(1) = Val(Trim(lw(1)))
                            Select Case lw(0)
                                Case "Conneted Agent"
                                    If serverInfo.LoginAgent <> lw(1) Then rE = True
                                    serverInfo.LoginAgent = lw(1)
                                    'Case "Total User"
                                    '    If serverInfo.LoginTotal <> lw(1) Then rE = True
                                    '    serverInfo.LoginTotal = lw(1)
                            End Select

                        End If
                    Next
                End If
            Case &H83 'UID
            Case &H6F 'DBAgent ryl1
                Dim ls As String() = arrayRemoveEmpty(mystring.Split(vbNewLine))
                Dim mapZones As Integer() = serverInfo.LoginMapZones
                Dim mapCount As Integer() = serverInfo.LoginMap
                Dim foundMaps As Integer() = {}
                For Each l As String In ls
                    '(Z:14 C:00) GameServer(0x0e000502:      127.0.0.1) CharNum:0
                    If l.IndexOf("GameServer") > 0 Then
                        Dim zone As Integer = Val(Trim(l.Substring(l.IndexOf("Z:") + 2, 2)))
                        Dim count As Integer = Val(Trim(l.Substring(l.IndexOf("Connected User :") + "Connected User :".Length)))
                        Dim index As Integer = Array.IndexOf(mapZones, zone)
                        ReDim Preserve foundMaps(UBound(foundMaps) + 1)
                        foundMaps(UBound(foundMaps)) = zone
                        If index < 0 Then
                            ReDim Preserve mapZones(UBound(mapZones) + 1)
                            ReDim Preserve mapCount(UBound(mapCount) + 1)
                            index = UBound(mapZones)
                            mapZones(index) = zone
                            serverInfo.LoginMapZones = mapZones
                            serverInfo.LoginMap = mapCount
                        End If
                        If serverInfo.LoginMap(index) <> count Then rE = True
                        serverInfo.LoginMap(index) = count
                    End If
                Next
                If foundMaps.Length < mapZones.Length Then
                    For i As Integer = 0 To mapZones.Length - 1
                        If Array.IndexOf(foundMaps, mapZones(i)) >= 0 Then
                        Else
                            mapCount(i) = 0
                        End If
                    Next
                    rE = True
                End If
            Case &H9C4B 'DBAgent ryl2
                Dim ls As String() = arrayRemoveEmpty(mystring.Split(vbNewLine))
                Dim mapZones As Integer() = serverInfo.LoginMapZones
                Dim mapCount As Integer() = serverInfo.LoginMap
                Dim foundMaps As Integer() = {}
                For Each l As String In ls
                    '(Z:14 C:00) GameServer(0x0e000502:      127.0.0.1) CharNum:0
                    If l.IndexOf("GameServer") > 0 Then
                        Dim zone As Integer = Val(Trim(l.Substring(l.IndexOf("Z:") + 2, 2)))
                        Dim count As Integer = Val(Trim(l.Substring(l.IndexOf("CharNum:") + "CharNum:".Length)))
                        Dim index As Integer = Array.IndexOf(mapZones, zone)
                        ReDim Preserve foundMaps(UBound(foundMaps) + 1)
                        foundMaps(UBound(foundMaps)) = zone
                        If index < 0 Then
                            ReDim Preserve mapZones(UBound(mapZones) + 1)
                            ReDim Preserve mapCount(UBound(mapCount) + 1)
                            index = UBound(mapZones)
                            mapZones(index) = zone
                            serverInfo.LoginMapZones = mapZones
                            serverInfo.LoginMap = mapCount
                        End If
                        If serverInfo.LoginMap(index) <> count Then rE = True
                        serverInfo.LoginMap(index) = count
                    End If
                Next
                If foundMaps.Length < mapZones.Length Then
                    'Dim nZ As Integer() = {}
                    'Dim nC As Integer() = {}
                    For i As Integer = 0 To mapZones.Length - 1
                        If Array.IndexOf(foundMaps, mapZones(i)) >= 0 Then
                            'ReDim Preserve nZ(UBound(nZ) + 1)
                            'ReDim Preserve nC(UBound(nC) + 1)
                            'nZ(UBound(nZ)) = mapZones(i)
                            'nC(UBound(nC)) = mapCount(i)
                        Else
                            mapCount(i) = 0
                        End If
                    Next
                    rE = True
                    'serverInfo.LoginMapZones = nZ
                    'serverInfo.LoginMap = nC
                End If
            Case &H6D 'auth
                Dim ls As String() = arrayRemoveEmpty(mystring.Split(vbNewLine))
                If ls.Length > 0 Then
                    Dim l As String = ls(UBound(ls))
                    If l.Length > 0 AndAlso l.IndexOf(",") > 0 Then
                        Dim la As String() = l.Split(",")
                        If la.Length = 3 Then
                            For Each s As String In la
                                If s.IndexOf(":") > 0 Then
                                    Dim sa As String() = s.Split(":")
                                    Dim k As String = Trim(sa(0))
                                    Dim v As Integer = Val(Trim(sa(1)))
                                    Select Case k
                                        Case "Human"
                                            If serverInfo.LoginHuman <> v Then rE = True
                                            serverInfo.LoginHuman = v
                                        Case "Akhan"
                                            If serverInfo.LoginAkkan <> v Then rE = True
                                            serverInfo.LoginAkkan = v
                                        Case "Total"
                                            If serverInfo.LoginTotal <> v Then rE = True
                                            serverInfo.LoginTotal = v
                                    End Select
                                End If
                            Next
                        End If
                    End If
                End If
            Case &H6C 'chat
            Case &H77 'game
        End Select
        If rE Then
            RaiseEvent ServInfoChanged(serverInfo)
        End If
    End Sub

Purpose:
The idea of this method is to parse the contents of the log window's.

Input:
Dim ls As String() = arrayRemoveEmpty(mystring.Split(vbNewLine)) - lines
sender.sItem.codeToOpenLog - which window

Output:
serverInfo - filled with info
RaiseEvent ServInfoChanged(serverInfo) - to notify the hooks of the change
 
Re: [Share]RYL2ServerController

Anf if you'r in doupt for different version again:

i have worked ONLY for 1600 and 1700 RYL 2 version. All my stuff has been tested on those 2. If you have any other version, you can try it and hope it works, if it doesnt, well -- you got the source...
 
Back