[Tut]The Everything About Worlds! [Update: Test if multi-host world work!]

Page 1 of 4 1234 LastLast
Results 1 to 15 of 60
  1. #1
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    [Tut]The Everything About Worlds! [Update: Test if multi-host world work!]

    Changing World's Name:



    First, go to: odinms>src>net>sf>odinms>net>login>handler>Serverlistrequest.java

    Second, look for this:
    Code:
    c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getLoad()));
      //c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(2, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(3, "Zenith", LoginServer.getInstance().getChannels(), 1200));
    	c.getSession().write(MaplePacketCreator.getEndOfServerList());
    Change the first Zenith to your desired name and compile it.


    Changing the world's pictures:

    First, go to: odinms>src>net>sf>odinms>net>login>handler>Serverlistrequest.java

    Second, look for this:
    Code:
    c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getLoad()));
      //c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(2, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(3, "Zenith", LoginServer.getInstance().getChannels(), 1200));
    	c.getSession().write(MaplePacketCreator.getEndOfServerList());
    Under the first 1, which I bold it, change it to another number that recognized the picture of another world:

    * 0 = Scania
    * 1 = Bera
    * 2 = Broa
    * 3 = Windia
    * 4 = Khania
    * 5 = Bellocan
    * 6 = Mardia
    * 7 = Kradia
    * 8 = Yellonde
    * 9 = Demethos
    * 10 (hex 0A) = Elnido
    * 11 (hex 0B) = Kastia
    * 12 (hex 0C) = Judis
    * 13 (hex 0D) = Arkenia
    * 14 (hex 0E) = Plana
    * 15 (hex 0F) = Galicia
    * 16 (hex 10) = Kalluna
    * 17 (hex 11) = Stius
    * 18 (hex 12) = Croa
    * 19 (hex 13) = Zenith
    * 20 (hex 14) = Medere (Korean)
    Go to MySQL, and under the character>world, change 0 to the number that you change it in Serverlistrequest.java.

    There, you are done =P


    Adding a Second world:

    This is quite simple. Just go to:

    odinms>src>net>sf>odinms>net>login>handler>Serverlistrequest.java and add this line before the "}"s

    Code:
    c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getLoad()));
      //c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(2, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(3, "Zenith", LoginServer.getInstance().getChannels(), 1200));
    	c.getSession().write(MaplePacketCreator.getEndOfServerList());

    So, after you have added your second world, your ServerListRequest.java should look like this:

    Code:
    /*
    	This file is part of the OdinMS Maple Story Server
    	Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc> 
    					   Matthias Butz <matze@odinms.de>
    					   Jan Christian Meyer <vimes@odinms.de>
    
    	This program is free software: you can redistribute it and/or modify
    	it under the terms of the GNU Affero General Public License version 3
    	as published by the Free Software Foundation. You may not use, modify
    	or distribute this program under any other version of the
    	GNU Affero General Public License.
    
    	This program is distributed in the hope that it will be useful,
    	but WITHOUT ANY WARRANTY; without even the implied warranty of
    	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    	GNU Affero General Public License for more details.
    
    	You should have received a copy of the GNU Affero General Public License
    	along with this program.  If not, see <http://www.gnu.org/licenses/>.
    */
    
    package net.sf.odinms.net.login.handler;
    
    import net.sf.odinms.client.MapleClient;
    import net.sf.odinms.net.AbstractMaplePacketHandler;
    import net.sf.odinms.net.login.LoginServer;
    import net.sf.odinms.tools.MaplePacketCreator;
    import net.sf.odinms.tools.data.input.SeekableLittleEndianAccessor;
    
    public class ServerlistRequestHandler extends AbstractMaplePacketHandler {
    	@Override
     public void handlePacket(SeekableLittleEndianAccessor slea, MapleClient c) {
      c.getSession().write(MaplePacketCreator.getServerList(0, "Zenith", LoginServer.getInstance().getLoad()));
      //c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(2, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(3, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      c.getSession().write(MaplePacketCreator.getEndOfServerList());
      c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getLoad()));
      //c.getSession().write(MaplePacketCreator.getServerList(1, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(2, "Zenith", LoginServer.getInstance().getChannels(), 1200));
      //c.getSession().write(MaplePacketCreator.getServerList(3, "Zenith", LoginServer.getInstance().getChannels(), 1200));
    	c.getSession().write(MaplePacketCreator.getEndOfServerList());
    }
    }
    And then, all you got to do is to compile it.

    Double Hosting for multiple world
    Not sure if this works, but you can give it a try =D

    Go to MySQL Adminstrator -> User Adminstration ->Right click ROOT ->Add host in which user can connect ->Host name type your hoster's IP address.

    Next, enable all schema privilege of your database.

    Now, go to channel in MySQL QUery Browser. Type in the any channel ID, any number, SHA1 for release, and for the world, type in your 2nd world's picture number. (eg: Bera is 1.)

    After that, go to channelconfig. Put any number for channelconfig, channel ID is the previous you have typed, and under name, put "net.sf.odinms.channel.net.interface" and under value, put your hoster's IP.

    Now, send your pack to your hoster. All they got to do is to run world and channel.bat.

    Please tell me if it work, or should there be any other configuration. thx =D

    p/s: I am currently discovering if it is possible to have 2 different world with 2 different channels using MySQL and channel.properties

    Credits:
    juju987 for his file for adding another world =P

    Some Question pondering you:

    Q: How did my second world got its channels from?
    A: The second world, if correctly from the script, get from your first world. So, it means that both world are sharing the same channel ports.

    Q: How do I know which world did my characters was in?
    A: Go to MySQL, and under character, world, you can see the number. Each number represents a world.


    Please post any question here =P
    Another project of The Amazing Odin's Dev Distribution!
    Last edited by frantier123; 06-07-08 at 12:44 PM.


  2. #2
    Member juju987 is offline
    MemberRank
    Mar 2008 Join Date
    58Posts

    Re: All about worlds!

    oh my id !! ty ~ hh

  3. #3
    Member juju987 is offline
    MemberRank
    Mar 2008 Join Date
    58Posts

    Re: All about worlds!

    juju978 << no 987

    ok??

  4. #4
    Pikachu! r1c31shg00d is offline
    MemberRank
    Apr 2008 Join Date
    JupiterLocation
    349Posts

    Re: All about worlds!

    I get Stuck At Character Select And It Gives Me Thiss Error On The Channels .bat cyaing sumthing bout maple monster spawnpoint blah blah

  5. #5
    Account Upgraded | Title Enabled! xiaojintai is offline
    MemberRank
    May 2008 Join Date
    behind U!!!Location
    512Posts

    Re: All about worlds!

    1 error C:\Documents and Settings\user\Desktop\CioRepack v1 Beta\src\net\sf\odinms\net\login\handler\ServerlistRequestHandler.java:37: reached end of file while parsing
    c.getSession().write(MaplePacketCreator.getEndOfServerList()); how?

  6. #6
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    Re: All about worlds!

    Did you compile it?

  7. #7
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    Re: All about worlds!

    Quote Originally Posted by r1c31shg00d View Post
    I get Stuck At Character Select And It Gives Me Thiss Error On The Channels .bat cyaing sumthing bout maple monster spawnpoint blah blah
    Did you change your MySQL character>world?

  8. #8
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    Re: All about worlds!

    Quote Originally Posted by juju987 View Post
    juju978 << no 987

    ok??
    Srry>.<

  9. #9
    Account Upgraded | Title Enabled! darkXmatt is offline
    MemberRank
    Jun 2008 Join Date
    Hong KongLocation
    327Posts

    Re: All about worlds!

    working perfectly, thanks : ) ~
    btw you can change 'Zenith' to something else, eg, 'Barney'
    before:
    when you type /find username, it will show as 'username is at Zenith-1'

    now:
    when you type /find username, it will show as 'username is at Barney-1'

    have fun : )

    ~dXm

  10. #10
    Account Upgraded | Title Enabled! xiaojintai is offline
    MemberRank
    May 2008 Join Date
    behind U!!!Location
    512Posts

    Re: All about worlds!

    Quote Originally Posted by frantier123 View Post
    Did you compile it?
    hmm i don know y when i compile i get error any helps?

  11. #11
    Member coooby is offline
    MemberRank
    Apr 2008 Join Date
    behind my laptopLocation
    55Posts

    Re: [Guide]Changing the world's pictures

    how to compile ? please tell me thx.

    Sick0w.

  12. #12
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    Re: All about worlds!

    Quote Originally Posted by xiaojintai View Post
    hmm i don know y when i compile i get error any helps?
    You use wad to compile? I suggest you to use eclipse as Netbeans always have symbol errors when compiling to me >.>

  13. #13
    Account Upgraded | Title Enabled! frantier123 is offline
    MemberRank
    May 2008 Join Date
    659Posts

    Re: [Guide]Changing the world's pictures

    Quote Originally Posted by coooby View Post
    how to compile ? please tell me thx.

    Sick0w.
    Search around the forum dude...


    p/s: Wad u mean sick0w? >.>

  14. #14
    Enthusiast zarnick is offline
    MemberRank
    May 2008 Join Date
    28Posts

    Re: [Guide]The Everything About Worlds!

    is there anyway to have two worlds Like Broa And Bera But have diff exp rates?

    Bera = x1
    Broa = x20

  15. #15
    Account Upgraded | Title Enabled! brainbracker is offline
    MemberRank
    Apr 2008 Join Date
    The NetherlandsLocation
    275Posts

    Re: [Guide]The Everything About Worlds!

    Nice guide. It Helped. ;)



Page 1 of 4 1234 LastLast

Advertisement