QUẢNG CÁO TẠI ĐÂY WEBSITE - CLICK ĐỂ LIÊN HỆ

[Mu Offline] Hướng dẫn mở thêm Cụm server 2 và Thế hệ 2 web NBB, Server 11.82 trở lên.

Thảo luận trong 'Mu Offline - Mu Server' bắt đầu bởi theanhk, 21 Tháng mười một 2016.

  1. theanhk

    Làm thành viên từ:
    28 Tháng chín 2015
    Số bài viết:
    123
    Đã được thích:
    33
    Điểm thành tích:
    3
    Giới tính:
    Nam
    Chào các bạn!
    Sau đây là một vài hướng dẫn nhỏ để giúp cho những bạn chưa biết và đang tìm hiểu làm thêm 1 cụm server chạy cùng một máy chủ, vì có nhiều người hỏi về vấn đề này hoặc không hiểu rõ mà chưa được cao thủ nào giúp đỡ thì đây mình xin đóng góp và giúp ích một phần nào đó cho các bạn cũng như Diễn Đàn GameZone của chúng ta, có gì sai sót mong các bạn vui vẻ bỏ qua

    1- TitanCS
    (Chú ý những chỗ bôi màu phải thay đổi các thứ đó tránh trùng Port)
    Các số màu xanh của May chu 2, lâu rồi nên cũng không rõ, bạn để Code từ 0 đến 19 giống như các Sub của May chu 1, nếu không được thì chuyển lại thành 21 đến 39 nhé.
    Màu đỏ là tên server được đặt trong ClientMu Data/Local/ServerList.bmd

    Code:
    //---------------------------------------------------------------------------
    // 0-20        | 0-19        | 0-16 characters |    0-65535 | SHOW/HIDE
    //---------------------------------------------------------------------------
    //May chu 1    Port 0-19
    0        0        "192.168.1.100"        35901    "SHOW"
    0        1        "192.168.1.100"        35903    "SHOW"
    0        19        "192.168.1.100"        35919    "HIDE"
    
    
    //May chu 2    Port 21-39
    1        0        "192.168.1.100"        35921    "SHOW"
    1        1        "192.168.1.100"        35923    "SHOW"
    1        19        "192.168.1.100"        35939    "HIDE"



    2- Data/MapServerInfo.dat
    Code:
    //---------------------------------------------------------------------/
    //May chu - 1 ( 0-19 )
    //---------------------------------------------------------------------/
    0                                    
        0    0    1    S192.168.1.100    35901            
        1    0    1    S192.168.1.100    35903            
        19    0    1    S192.168.1.100    35919            
    //---------------------------------------------------------------------/
    //May chu - 2 ( 20-39 )
    //---------------------------------------------------------------------/
    0                                    
         20    0    1    S192.168.1.100    35921            
         21    0    1    S192.168.1.100    35923            
         39    0    1    S192.168.1.100    35939            
    //---------------------------------------------------------------------/
    //---------------------------------------------------------------------/
    end                                    
    1                                    
    end                                    
    //---------------------------------------------------------------------/
    //---------------------------------------------------------------------/

    3- TitanLinkServer
    (Muốn chạy 2 cụm máy chủ thì bạn phải chạy 2 TitanLink riêng biệt, TitanLink-Máy chủ 1 các Port bạn giữ nguyên và Copy ra một TitanLink nữa cho Máy chủ 2 và sửa lại tựa như bên dưới)

    Khi chạy 2 cụm máy chủ thì bạn sẽ phải chạy 2 TitanLinkServer của Máy chủ 1 và 2, coi như chúng được riêng biệt không ai liên qua đến ai, TitanCS thì vẫn là 1 vì chung Client
    Code:
    [DataServer1]
    
    
    Port=55960    = 55964
    ServerODBC=MuOnline = MuOnline2, đổi tất cả các DB trong TitanLink Máy chủ 2 thành tên DB mà bạn tạo thêm, ví dụ: Máy chủ 1 = MuOnline, Máy chủ 2                         = MuOnline2
    Name=MuOnline = MuOnline2
    NameMe=MuOnline = MuOnline2
    NameRS=Ranking
    NameES=MU2003_EVENT_DATA
    ResetColumn=Resets
    Login=sa
    Password=123123
    
    
    MaxConnections=10
    
    
    [DataServer2]
    
    
    Port=55962 = 55966
    ServerODBC=MuOnline = MuOnline2
    Name=MuOnline = MuOnline2
    NameMe=MuOnline = MuOnline2
    NameRS=Ranking
    NameES=MU2003_EVENT_DATA
    ResetColumn=Resets
    Login=sa
    Password=123123
    
    
    MaxConnections=10
    
    
    [PostServer]
    
    
    Port=55998 = 55997
    AdminName=Admin
    
    
    MaxConnections=10
    
    
    [WzExDB]
    
    
    Port=55906 = 55907
    ServerODBC=MuOnline = MuOnline2
    Name=MuOnline = MuOnline2
    Login=sa
    Password=123123
    
    
    MaxConnections=10
    
    
    [JoinServer]
    
    
    Port=55970 = 55971
    ServerODBC=MuOnline = MuOnline2
    Name=MuOnline = MuOnline2
    Login=sa
    Password=123123
    UseGoldChannelSystem=0
    UseSpecialDisconnect=0
    OnStartDisconnectAllInDB=0
    UseSpecialMove=0
    UseMD5=0
    UseCaseSensitive=0
    
    
    CSIP=127.0.0.1
    CSUDPPort=55557 = 55558
    
    
    [Common]
    
    
    IsS6E2=1
    IsSavePostLogs=1
    UseTitanCS=1
    
    
    [VIP]
    
    
    IsAutoRenew=0
    VipValue=100
    Days=10

    4- GameServer \Data \ServerInfo.dat
    Code:
    [GameServerInfo]
    ServerName        = Sub-1
    ServerCode        = 20
    ConnectMemberLoad    = 0

    5- GameServer /SCF_connect.ini
    ( Của máy chủ 2, bạn sửa lại các Port sao cho giống TitanLink-Máy chủ 2 bên trên như mình hướng dẫn )

    Code:
    [Connect]
    
    SCF_ServerPort=35901 = 35921 ...
    
    
    SCF_JoinServerIP=127.0.0.1
    SCF_JoinServerPort=55970 = 55971
    
    
    SCF_DataServerIP=127.0.0.1
    SCF_DataServerPort=55960 = 55964
    
    
    SCF_DataServerIP2=127.0.0.1
    SCF_DataServerPort2=55962 = 55966
    
    
    SCF_ExDbIP=127.0.0.1
    SCF_ExDbPort=55906 = 55907
    
    
    SCFGsUdpPort=60220 = 60240 + ... Cho sang chục số khác cho lành
    
    
    SCF_SCFPostServerOn=1
    SCF_SCFPostServerIP=127.0.0.1
    SCF_SCFPostServerPort=55998 = 55999 (Port này là của lệnh chat /post, Nếu để nguyên thì 2 cụm máy chủ có thể nói chuyện với nhau, đổi 55999 thì 2 cụm sẽ /post riêng biệt, nên đổi kẻo lại loạn cả 2 cụm máy chủ :) )

    6- Cuối cùng là ODBC-2 dành cho DB MuOnline2 - Cụm máy chủ thứ 2
    Các bạn có thể Copy rồi Paste vào ODBC.reg có sẵn trên máy, hoặc tải tại đây 32bit và 64bit
    http://www.mediafire.com/?c6cxbc4h5agbcx1
    Code:
    Windows Registry Editor Version 5.00
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI]
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\LOGIN]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="Administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MuOnline]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="Administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MuOnline2]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline2"
    "LastUser"="Administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MuOnlineJoinDB]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="Administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\USELOG]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="Administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\RMDB_CONNECTLOG]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\PC_MUONLINE]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\AccountDB]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\WPaymentDB]
    "Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
    "Server"="(local)"
    "Database"="MuOnline"
    "LastUser"="administrator"
    "Trusted_Connection"="Yes"
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
    "LOGIN"="SQL Server"
    "MuOnline"="SQL Server"
    "MuOnline2"="SQL Server"
    "MuOnlineJoinDB"="SQL Server"
    "USELOG"="SQL Server"
    "RMDB_CONNECTLOG"="SQL Server"
    "PC_MUONLINE"="SQL Server"
    "AccountDB"="SQL Server"
    "WPaymentDB"="SQL Server"


    Tiếp theo bạn tạo thêm một Database nữa và đặt tên cho nó khác DB của máy chủ 1 là được, ví dụ MuOnline thì tạo thêm MuOnline2 cho nó gọn
    Hướng dẫn trên đã đủ chi tiết chưa, còn thiếu chỗ nào hoặc chưa hiểu chỗ nào cứ post tại đây mình hoặc các pro khác giải đáp.
    Hướng dẫn mở thêm Thế Hệ 2 dành cho Web quản lý NetBanBe thì mình xin viết sau.
    Cám ơn các bạn đã đọc bài viết.

    ---------------------------------------------------------------------------
    Làm thêm Thế Hệ 2 cho web NetBanBe
    * Ưu điểm :
    Thế hệ :Mở được nhiều thế hệ. Rất phù hợp với MU đã mở được 1 thời gian, muốn lôi kéo thêm người mới chơi. Mỗi thế hệ có 1 bảng xếp hạng và bảng giới hạn rs riêng. Không phải đầu tư thêm máy chủ mới, tiết kiệm chi phí. Và tạo sự tin tưởng là hoạt động lâu dài.

    1. Bắt đầu :
    - Vào Web quản lý Admin tìm mục nhân vật -> Tìm dòng Thế hệ
    - Thêm tên Thế hệ mới vào rồi OK
    - Chép file config_thehe.php ( hoặc cả mục config vào Hosting ) để đồng bộ hóa với Server Web.


    2. Nếu dùng Database của NBB

    - Vào Table MuOnline > Table > MEMB_STAT > (Chuột phải) All Tasks > Manage Triggers
    - Ở chỗ Name<new> + TheHe (dbo) thì bạn chọn TheHe (dbo)
    - Xóa hết mấy dòng trong TheHe (dbo) rồi chép đoạn Triggersau vào :


    Query 2 Thế Hệ web NetBanBe
    Các Sub-1 -> Sub-5 là các Sub giành cho Thế Hệ 1, như vậy thì tất cả Sub khác là của Thế Hệ 2, nếu đăng nhập sai Sub vào sẽ bị 5 nhân vật NhamSV1 -> NhamSV5 bị khóa, các bạn có thể sửa lại Sub theo ý mình.
    Code:
    CREATE TRIGGER TheHe
    ON [dbo].[MEMB_STAT]
    FOR UPDATE
    AS
    BEGIN
    DECLARE 
    @slg_thehe tinyint,
    @Acc nvarchar(10),
    @TheHe nvarchar(50),
    @SV nvarchar (20)
    
    
    
    
    SET @slg_thehe = 2
    SELECT @Acc=memb___id,@SV=ServerName FROM inserted WHERE ConnectStat='1'
    SELECT @TheHe=thehe FROM MEMB_INFO WHERE [email protected]
    
    
    
    
    -- BEGIN Khong ap dung The he
    if(@slg_thehe=1)
    BEGIN
    UPDATE Character SET CtlCode=0 WHERE AccountID!='admin_block' AND [email protected] AND CtlCode=99 AND ErrorSubBlock!=99
    UPDATE AccountCharacter SET GameID1='' WHERE GameID1='NhamSV1' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID2='' WHERE GameID2='NhamSV2' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID3='' WHERE GameID3='NhamSV3' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID4='' WHERE GameID4='NhamSV4' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID5='' WHERE GameID5='NhamSV5' AND [email protected] AND Id!='admin_block'
    END
    -- END Khong ap dung The he
    ELSE
    BEGIN
    -- BEGIN Ap dung the he
    -- The he moi
    IF(@TheHe=2)
    BEGIN
    IF(@SV='Sub-1' OR @SV='Sub-2' OR @SV='Sub-3' OR @SV='Sub-4' OR @SV='Sub-5')
    BEGIN
    UPDATE Character SET CtlCode=99 WHERE AccountID!='admin_block' AND [email protected] AND (CtlCode=0 OR CtlCode=18) AND ErrorSubBlock!=99
    UPDATE AccountCharacter SET GameID1='NhamSV1' WHERE [email protected] AND (GameID1 IS NULL OR GameID1='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID2='NhamSV2' WHERE [email protected] AND (GameID2 IS NULL OR GameID2='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID3='NhamSV3' WHERE [email protected] AND (GameID3 IS NULL OR GameID3='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID4='NhamSV4' WHERE [email protected] AND (GameID4 IS NULL OR GameID4='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID5='NhamSV5' WHERE [email protected] AND (GameID5 IS NULL OR GameID5='') AND Id!='admin_block'
    END
    ELSE
    BEGIN
    UPDATE Character SET CtlCode=0 WHERE AccountID!='admin_block' AND [email protected] AND CtlCode=99 AND ErrorSubBlock!=99
    UPDATE AccountCharacter SET GameID1='' WHERE GameID1='NhamSV1' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID2='' WHERE GameID2='NhamSV2' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID3='' WHERE GameID3='NhamSV3' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID4='' WHERE GameID4='NhamSV4' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID5='' WHERE GameID5='NhamSV5' AND [email protected] AND Id!='admin_block'
    END
    END
    ELSE
    -- The he cu
    BEGIN
    IF(@SV='Sub-1' OR @SV='Sub-2' OR @SV='Sub-3' OR @SV='Sub-4' OR @SV='Sub-5')
    BEGIN
    UPDATE Character SET CtlCode=0 WHERE AccountID!='admin_block' AND [email protected] AND CtlCode=99 AND ErrorSubBlock!=99
    UPDATE AccountCharacter SET GameID1='' WHERE GameID1='NhamSV1' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID2='' WHERE GameID2='NhamSV2' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID3='' WHERE GameID3='NhamSV3' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID4='' WHERE GameID4='NhamSV4' AND [email protected] AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID5='' WHERE GameID5='NhamSV5' AND [email protected] AND Id!='admin_block'
    END
    ELSE
    BEGIN
    UPDATE Character SET CtlCode=99 WHERE AccountID!='admin_block' AND [email protected] AND (CtlCode=0 OR CtlCode=18) AND ErrorSubBlock!=99
    UPDATE AccountCharacter SET GameID1='NhamSV1' WHERE [email protected] AND (GameID1 IS NULL OR GameID1='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID2='NhamSV2' WHERE [email protected] AND (GameID2 IS NULL OR GameID2='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID3='NhamSV3' WHERE [email protected] AND (GameID3 IS NULL OR GameID3='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID4='NhamSV4' WHERE [email protected] AND (GameID4 IS NULL OR GameID4='') AND Id!='admin_block'
    UPDATE AccountCharacter SET GameID5='NhamSV5' WHERE [email protected] AND (GameID5 IS NULL OR GameID5='') AND Id!='admin_block'
    END
    END
    -- END ap dung the he
    END
    END
    Chọn Apply và OK
    Vô Web lập tài khoản thế hệ 2 và thưởng thức. 100% thành công nếu làm đúng như mình hướng dẫn.
    - Sau này khi thế hệ 2 reset tương đối với thế hệ 1, bạn có thể sát nhập vào làm 1 và dùng cái thế hệ 2 đó Open cụm Mu mới


    //=======================Query sat nhap==============================//
    update memb_info
    set thehe=1
    where thehe=2
    //================================================== =================//
  • Chia sẻ trang này

    loading...