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é . 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 root là root. 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 . 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 . 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 . 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 . 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 . 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 . Nếu ở bước 2 bạn ko muốn đặt pass là root thì ok, cứ đặt . 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
Ừ 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à
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
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 à .
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
Ừ. 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í
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
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%
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
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