Tạo 1 server với Odin Source. Đơn giản :)

Thảo luận trong 'Maple Story' bắt đầu bởi [D], 11/5/08.

  1. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Do cái server của Odin team có khá nhiều cái rắc rối với người nào ko biết chút gì về máy tính nên mình post luôn lên đây cái server đã đầy đủ tất cả những thứ cần thiết. Và để chạy đc nó thì chỉ cần download những trương trình cần thiết để chạy server mà thôi :).
    OdinMS Server
    Java Runtime.
    JCE Unlimited Strength Files
    MySQL
    MySQL Query Browser

    Bước 1: Download và cài đặt cái Java Runtime. Cái này dễ rồi khỏi cần nói nhé :D. Tiếp theo giải nén cái jce_policy-6.zip ra đâu đó rồi copy 2 cái file local_policy.jar và US_export_policy.jar. Mở thư mục Java trong Program Files lên. Rồi tìm đến tất cả thư mục security ở trong đây và chép đè nó vào. Ví dụ như của mình có 2 thư mục
    Mã:
    F:\Program Files\Java\jdk1.6.0_10\jre\lib\security
    Mã:
    F:\Program Files\Java\jre1.6.0_06\lib\security
    Xong rồi thì click chuột phải vào cái biểu tượng My Computer ở Desktop chọn Properties -> Advanced -> Environment Variables
    . Trong System variables tìm đến dòng "Patch", click vào Edit và sửa nó lại thành đường dẫn tới thư mục bin trong thư mục Java\jdk1.6.0_10 ví dụ như của mình
    Mã:
    ;[COLOR="Red"]F[/COLOR]:\Program Files\Java\jdk1.6.0_10\bin
    Do mình cài Java ở ổ F nên nếu bạn cài Java ở ổ C thì nhớ đổi lại cho đúng.

    Bước 2: Download MySQL rồi cài đặt có đặt pass hay ko thì tùy :)). Sau mọi người có thể edit lại server cho phù hợp cũng đc :). Tốt nhất là mọi người cứ đặt luôn pass cho tài khoản rootroot. Còn Default Schema thì là Odinms. Ví dụ:
    Mã:
    Server Host: localhost
    Port: 3306
    Username: root
    Password: root
    Default Schema: odinms
    Xong thì Ok để vào phần giao diện chính của MySQL Query Browser. Lúc này chọn File -> Open Script ... -> Chọn đến thư mục Server Odin đã giải nén rồi chọn file Odinms.sql -> click vào nút Execute màu xanh lá ở góc phỉa phía trên. Xong chờ 1 lát :D.

    Bước 3: Vào thư mục MapleStory của bạn và copy tất cả các file có đuôi mở rộng là wz và copy vào thư mục wz trong server. Đến đây thì bạn có thể chơi đc rồi \:D/. Chỉ việc chạy cái JerJerStarter.bat rồi chờ nó 1 tí là để server run là xong. ID và pass mặc định có sẵn là admin.

    Bước 4: Reg nick :-?. Cái server này để mà creat nick trong database thực sự khó do password của nó phải đc encrypt lại. Vậy thì thôi. Xài hàng có sẵn cho nhanh tội đếk gì phải mệt nhọc thế nhỉ :)). Click vào đây để download cái Wamp Server. Download xong thì cài nó vào. Xong chạy nó lên bạn sẽ thấy 1 biểu tượng nhỏ xuất hiện ở khay hệ thống. Nếu nó màu đỏ tức là đang ở trạng thái Offline -> Click chuột trái vào rồi chọn Put Online. Lúc này nó sẽ chuyển sang màu vàng :D. Ok rồi. Giờ click vào đây để down cái web này về (vì sao mình chọn cái web này vì nó có cả rank riếc nhìn khá hay xD). Down xong thì giải nén nó ra đâu đấy bạn sẽ đc 1 thư mục là www. Ném nó vào trong thư mục wamp (đây chính là thư mục mà cái wamp server vừa đc cài đặt). Nó có hỏi chép đè lên ko thì Yes 1 cái. Xong bạn vào thư mục functions trong www và mở file config.php lên. Ở đây nó chú thích rất dễ hiểu. Làm gì tiếp theo thì các bạn cứ tự hiểu. Ví dụ như của tôi:
    Mã:
    $host['naam'] = 'localhost';                // my host
    $host['gebruikersnaam'] = 'root';       // my database username
    $host['wachtwoord'] = 'root';   // my database password
    $host['databasenaam'] = 'odinms';       // my database name
    
    //-----------Status Details--------------------------------------
    
    $serverip = "localhost";     //Replace with your WAN IP if public
    $loginport = "7575";	     //Don't change
    $worldport = "8484";		//Dont' Change
    $sql_db = "odinms";		     //DB Name
    $sql_host = "localhost";     //DB Host
    $sql_user = "root";	     	 //DB User
    $sql_pass = "root";		     	 //DB Password
    $logserv_name = "<b>Login Server</b>: ";		 //Login Status Server Name
    $worldserv_name = "<b>World Server</b>: ";			// World Status Name
    $offline = "<font color =red>Offline</font>";  //Displays Offline Status
    $online = "<font color = green>Online</font>";	//Displays Online Status
    Để cho rank hoạt động thì bạn cũng cần edit lại 1 chút trong file rank.php. Ví dụ như của tôi thì là thế này:
    Mã:
    $mysql['server']="localhost";
    $mysql['user']="root";
    $mysql['password']="root";
    $mysql['database']="odinms";
    Còn 1 số thứ khác nữa nếu bạn quan tâm thì cứ chịu khó mà tìm hiểu :-j.
    Sau khi reg nick nó sẽ báo lỗi. Quên mất vụ này =)). Copy 2 cái dòng này rồi mở cái MySQL và Execute nó
    Mã:
    ALTER TABLE `accounts` MODIFY COLUMN `banreason` TEXT NULL DEFAULT NULL;
    Mã:
    ALTER TABLE `accounts` MODIFY COLUMN `macs` TINYTEXT NULL DEFAULT NULL; 
    Bước 5: Nếu bạn muốn chơi Online. Tất nhiên rồi :D. Kiếm 1 cái IP (quay lại cái bài viết của mình về server C++ mà xem, đang lười :)) ). Vào server mở 3 file login.properties, channel.properties và world.properties lên. Mở bằng gì cũng đc, Notepad cho nhanh. Xong thì đổi hết tất cả IP 127.0.0.1 thành IP của bạn và Save nó lại là xong :D.

    Nếu ở bước 2 bạn ko muốn đặt pass là root thì ok, cứ đặt :D. Nhưng nhớ là phải edit lại file db.properties. Vì password mặc định ở đây là root nên muốn sẹc vơ chạy thì phải đổi lại thành pass của bạn :)).

    Thế nếu muốn thay đổi exp và meso rate :-?. Đơn giản. Mở file world.properties lên sẽ thấy 2 dòng
    Mã:
    net.sf.odinms.world.exp=1
    net.sf.odinms.world.meso=1
    Chỉnh sao thì tùy tâm :)).

    Giới hạn số người chơi ? Cũng trong world.properties cả
    Mã:
    net.sf.odinms.login.userlimit=10
    Mở thêm channel ? -> channel.properties
    Mã:
    # number of channels to host in this process
    net.sf.odinms.channel.count=2
    # channel keys
    # (these are defined in the channels table)
    net.sf.odinms.channel.0.key=release1
    net.sf.odinms.channel.1.key=release2
    Ở đây là 2 channel. Muốn bao nhiêu thì tự biết à nha :-"

    Edit drop rate? Ok.
    Vào Server -> src -> net -> sf -> odinms -> net -> channel -> mở file ChannelServer.java
    Tìm dòng
    Mã:
    private int mesoRate;
    rồi thêm đoạn này vào bên dưới
    Mã:
            private int dropRate;
            private int bossdropRate;
    tiếp tục tìm dòng này 2 lần.
    Mã:
    mesoRate = Integer.parseInt(props.getProperty("net.sf.odinms.world.meso"));
    rồi lại thêm cái này vào bên dưới
    Mã:
    dropRate = Integer.parseInt(props.getProperty("net.sf.odinms.world.drop"));
    bossdropRate = Integer.parseInt(props.getProperty("net.sf.odinms.world.bossdrop"));
    tiếp tục tìm đoạn này 2 lần
    Mã:
    public void setMesoRate(int mesoRate) {
    		this.mesoRate = mesoRate;
    	}
    rồi lại thêm vào bên dưới
    Mã:
    public int getDropRate()
            {
                return dropRate;
            }
            
            public void setDropRate(int dropRate)
            {
                this.dropRate = dropRate;
            }
            public int getBossDropRate()
            {
                return bossdropRate;
            }
            
            public void setBossDropRate(int bossdropRate)
            {
                this.bossdropRate = bossdropRate;
            }public int getDropRate()
            {
                return dropRate;
            }
            
            public void setDropRate(int dropRate)
            {
                this.dropRate = dropRate;
            }
            public int getBossDropRate()
            {
                return bossdropRate;
            }
            
            public void setBossDropRate(int bossdropRate)
            {
                this.bossdropRate = bossdropRate;
            }
    Rồi. Save nó lại xong quay trở ra với thư mục gốc của server. Mở file World.properties lên. Tìm dòng này
    Mã:
    net.sf.odinms.world.meso=1
    thêm đoạn này vào dưới
    Mã:
    # drop factor
    net.sf.odinms.world.drop=1
    # bossdrop factor
    net.sf.odinms.world.bossdrop=1
    Cái đoạn này số 1 là gì thì tự hiểu.
    Tiếp theo mở file MapleMap.Java ở thư mục src -> net -> sf -> odinms -> server -> maps
    Tìm đoạn này
    Mã:
    if (isBoss) {
    			maxDrops = 10;
    		} else {
    			maxDrops = 4;
    		}
    đổi nó thành đoạn này
    Mã:
    if (isBoss)
                        maxDrops = 10 * ChannelServer.getInstance(channel).getBossDropRate();
                    else
                        maxDrops = 4 * ChannelServer.getInstance(channel).getDropRate();
    Tìm đoạn này
    Mã:
    for (int i = 0; i < toDrop.size(); i++) {
    			if (toDrop.get(i) == -1) {
    				if (alreadyDropped.contains(-1) && !isBoss) {
    					toDrop.remove(i);
    					i--;
    				} else {
    					alreadyDropped.add(-1);
    				}
    			} else {
    				MapleInventoryType type = ii.getInventoryType(toDrop.get(i));
    				if (alreadyDropped.contains((int) type.getType()) && !isBoss) {
    					toDrop.remove(i);
    					i--;
    				} else {
    					alreadyDropped.add((int) type.getType());
    				}
    			}
    		}
    và thay bằng đoạn này
    Mã:
    for (int i = 0; i < toDrop.size(); i++) 
                    {
    			if (alreadyDropped.contains(toDrop.get(i)) && !isBoss) 
                            {
                                toDrop.remove(i);
                                i--;
    			} 
                            else 
                                alreadyDropped.add(toDrop.get(i));
    		}
    Lưu ý đừng để bossdrop quá cao. Còn lý do thì cứ thử thì biết =)).
    Nếu có gì trục trặc thì có thể dùng luôn mấy cái này.

    Hơ chán quá. Vào cày lvl tiếp vậy :|.
    Mà quái sao cái chữ kí của mình ko hiển thị nhỉ (_ _")

    Giờ mình không rảnh nên mọi người đừng add nick Y!m mình để hỏi nữa. Có gì mọi người cứ post câu hỏi hay lỗi lên đây (nếu là lỗi thì có ảnh càng tốt). Có thể mình ko có thời gian trả lời nhưng vẫn còn nhiều người nữa có thể giúp bạn. Vì vậy xin nói lại lần nữa: Nếu add nick Y!m mình để chat chít linh tinh thì rất sẵn lòng. Còn nếu để hỏi giúp đỡ hay đại loại thế thì bỏ qua cho nếu mình đưa bạn nào đó vào Ignore List :). Thx
     
  2. ShakeBottle

    ShakeBottle T.E.T.Я.I.S

    Tham gia ngày:
    16/1/08
    Bài viết:
    505
    ặc, máy ông cùi thì chắc gvn này chỉ có vài 3 người cài đc odin quá:|
     
  3. KaTaKy

    KaTaKy The Warrior of Light

    Tham gia ngày:
    13/7/05
    Bài viết:
    2,121
    Nơi ở:
    Toronto
    Tut đâu , viết nhanh lên :-w , we r w8ting 4 u :-w
     
  4. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Ừ thì cũng đang định viết đây mà bu cứ ngồi bên cạnh hò hét bắt nấu cơm thế này thì bố thằng nào mà viết đc T_T. Nhưng có lẽ tôi cần chút thời gian để test thử server. Chiều nay vô test cùng nhé Đơ cu ra với KaTaKy =.=".
    Chiều nay đã định đèo "ấy" đi chơi mà lại chạy đc server =.=". Thôi dẹp :)). Mình là người đàn ông trên cả "chân chính" hơn hẳn "chân phụ" cơ mà =))
     
  5. KaTaKy

    KaTaKy The Warrior of Light

    Tham gia ngày:
    13/7/05
    Bài viết:
    2,121
    Nơi ở:
    Toronto
    Ông làm cái server ko cần wip với hama ấy ;)) , connect cho nó nhanh .
     
  6. ShakeBottle

    ShakeBottle T.E.T.Я.I.S

    Tham gia ngày:
    16/1/08
    Bài viết:
    505
    làm server ko cần wippien với hamachi lag lắm, phải đường truyền ngon mới chịu được. Với lại wippien đâu có rắc rối mấy? Connect cái là vào được, đâu như hamachi[-(
     
  7. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Tôi xin ông ^:)^. Thứ nhất mạng nhà tôi là loại trả tiền theo dung lượng. Thứ 2. Cái server này nặng pà kố ra. Chơi độ vài người còn đỡ đc chứ chơi nhiều thì có mà lại thành Đơ cu ra à :|.
     
  8. Closezen

    Closezen Dragon Quest

    Tham gia ngày:
    29/12/05
    Bài viết:
    1,300
    Nơi ở:
    an toàn khu
    Odin là xài java à ? giật hơn thì phải
     
  9. nghia9a

    nghia9a 30 tỷ/1m2 à??? LÊN ĐỒN!! Lão Làng GVN

    Tham gia ngày:
    14/4/07
    Bài viết:
    13,461
    Nơi ở:
    Trại gà
    thui chơi cái kia tự sướng cho nó thích chứ chơi trên Odin lại phải cài thêm mà máy tui cùi pắp qué làm sao chịu đc nhiệt
     
  10. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Ừ. Chả giật gì đâu. Chỉ là giật quá thôi =)). Thôi tạm thời gác vụ viết Tut lại. Giờ đi đón ẻm đi chơi đã :-". Tối nhé các đồng chí :-j
     
  11. Hyuu

    Hyuu Mario & Luigi

    Tham gia ngày:
    30/11/07
    Bài viết:
    784
    Nơi ở:
    Hà Nội
    nhanh nhanh nhé ông bạn :wink: . . . .
     
  12. hoangtulolem87

    hoangtulolem87 T.E.T.Я.I.S

    Tham gia ngày:
    23/7/04
    Bài viết:
    672
    Viết tut đi! Cân được tất! Không phải xoắn vì cái vụ máy móc :))
     
  13. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Ừ thích thì chiều. Nhưng phải kiếm người test cái đã. Ko viết rồi có người hỏi thì trả lời kiểu mô ? :))
     
  14. toimagic

    toimagic Donkey Kong

    Tham gia ngày:
    7/3/06
    Bài viết:
    311
    TUT ... tiếng Anh tự đọc tự hiểu tự làm.Chạy 3 file .bat để run server tốn khoản 10 -> 20% CPU
    Mã:
    http://www.odinms.de/forum/showthread.php?t=64750
     
  15. nghia9a

    nghia9a 30 tỷ/1m2 à??? LÊN ĐỒN!! Lão Làng GVN

    Tham gia ngày:
    14/4/07
    Bài viết:
    13,461
    Nơi ở:
    Trại gà
    máy nhà ông 1g ram mà còn thế chắc máy tui 256m thì có mà chiếm mất 200% mất =))
     
  16. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Bro thử xem làm đc ko :D. Làm đc chỉ tớ phát :D.
    10-20% ? Quad Core ?
     
  17. toimagic

    toimagic Donkey Kong

    Tham gia ngày:
    7/3/06
    Bài viết:
    311
    ah chưa tới 3% nữa 3 file .bat + java cái trên do máy đang chạy nhiều thứ wa' no len tới 20% nên ko để ý'.Máy đã vậy còn chơi thêm cái FF + DXwind nữa + Maplestory hỏi sao ko lên 50%
     
  18. [D]

    [D] Mr & Ms Pac-Man

    Tham gia ngày:
    10/5/08
    Bài viết:
    271
    Lol. Chỉ riêng cái thư mục WZ đã lên tới 984mb. Vậy bạn dựa vào đâu mà nói như thế ? Hay lại bảo là server của bạn ko có cái thư mục WZ =))
     
  19. ShakeBottle

    ShakeBottle T.E.T.Я.I.S

    Tham gia ngày:
    16/1/08
    Bài viết:
    505
    kô, có khi là bạn ấy có 2gb ram + 4gb virtual memory ấy mà;))
     
  20. Truong4mat

    Truong4mat Legend of Zelda

    Tham gia ngày:
    20/7/05
    Bài viết:
    1,151
    Nơi ở:
    VietDragoon
    Mình chỉ dám ăn theo cái server của HTLL thôi, hắn summon ra chục con Zak là máy đứng im luôn, đến lúc hết đơ thì ko còn cái Arm nào... hix
     

Chia sẻ trang này