OsRose Dev Rev Install Guide

Page 1 of 5 12345 LastLast
Results 1 to 15 of 66
  1. #1
    Valued Member Hazuki is offline
    MemberRank
    Nov 2004 Join Date
    UKLocation
    123Posts

    OsRose Dev Rev Install Guide

    Full guide to installing the latest OsRose Source, credits to lmame of OsRose.

    I°) Download Tortoise SVN:
    To get the source code from SVN, you can use Tortoise SVN, go get it and install it:
    tortoisesvn.tigris.org


    II°) Download source code:
    The source code is available through SVN.
    Create a folder somewhere, right click on it and choose "SVN checkout".


    Enter the URL address of the SVN (see this thread):
    Code:
    https://osrose-svn.cvsdude.com/trunk
    Login / password: beta81/beta81


    If asked, enter next the login / password (beta81/beta81) and wait for the source code to be downloaded.



    III°) Download CodeBlocks and its plugins:
    1°) Codeblocks:
    To build the server, you need a "compiler", we'll use Codeblocks.
    You can get it from here:
    Download older binaries

    Note:
    Don't download version 10.x, it's not compatible! Use the 8.02!


    Take the "codeblocks-8.02mingw-setup.exe", always with the "mingw".

    You can use Codeblocks 8.02 or the nightly builds which are more recent but harder to install.

    Anyway, install Codeblocks, for example to c:\codeblocks.


    2°) the plugins:
    In order to build the server, you need plugins here.

    Unrar them into the "plugins" folder of codeblocks, for example "c:\codeblocks\plugins". If the folder doesn't exist, create it.


    Once it's done, open Codeblocks, then go to menu:
    Settings->Compiler and debugger


    Then goto tab "Search directories" and:
    For tab "Compiler", add:
    c:\codeblocks\plugins\include
    For tab "Linker", add:
    c:\codeblocks\plugins\lib



    In my captures I installed codeblocks in d:\CBN so use your imagination and choose your "good" installation folder of course...


    IV°) build the source code:
    1°) open:
    There are three servers as source code, login server, char server and world server. Each one has its own "project file" which are in "binary" folder:
    loginserver.cbp, charserver.cbp, worldserver.cbp.


    To open one of those servers in Codeblocks, just double click on those files or open them in Codeblocks (File->Open).


    2°) build:
    It's simple, once a server is loaded into codeblocks, go in menu "build" and choose "rebuild".


    The exe are into the "binary" folder.

    Note:
    Don't build a server if the exe is already launched. Stop the server first.

    Note 2:
    Every time you change a single line of code, rebuild the server to update the executable.
    Attached Files Attached Files


  2. #2
    Valued Member Hazuki is offline
    MemberRank
    Nov 2004 Join Date
    UKLocation
    123Posts

    Re: OsRose Dev Rev Install Guide

    V°) Install the database and setup your server .conf files and IPs:
    1°) Install Mysql:
    Install Mysql server, the recommanded version is 5.0.x but use 5.1 or 6 if you want...
    MySQL :: Download MySQL Community Server


    Note:
    You can download the tools as well:
    MySQL :: MySQL GUI Tools Bundle: Archived Downloads


    2°) Navicat:
    Navicat is a software to easily manage your databases. You're free to use another software, I'll use it for demonstration purposes.

    3°) create the database:
    You must create a database in order to use the server.
    For that, you can use navicat.

    a°) create a connexion to your mysql server:
    Click on "connection" the enter the informations that are needed and save.


    The root password is the one you chose when installing Mysql server.

    b°) create a database:
    Launch the connection (simply double click on it), then right click on it and choose "new database". Enter a new name (like "roseon") and it's ok.


    c°) create an user to access it:
    It's better to create an user (mysql user) to access this database. Click on "user" and then on "add user".


    Enter its name and password (here "test").


    Then select him on the list, and the database you want to give access rights "roseon".


    Click on "select all" to give all rights and save.



    4°) Install the database:
    Open the file "Database/database_installer.bat" which is your server.
    Inside, you have to change some of the data according to YOUR specifications:

    Code:
    REM MYSQL BIN PATH
    set mysqlBinPath=C:\Program Files\MySQL\MySQL Server 5.0\bin
     
    set user=root
    set pass=
    set db=roseon
    set host=localhost
    Look where your mysql server is installed for:
    Code:
    set mysqlBinPath=C:\Program Files\MySQL\MySQL Server 5.0\bin
    and change if necessary.

    The other data is the informations to access your database we created. We need to give the database name (roseon) and the login / password of the user we created as well (test / your_password).
    So update the data accordingly and save the file.

    Then just double click on "database_installer.bat" and wait until it's done.

    Note:
    If you want to run the installer again, delete first the tables in your database... Use Navicat for that (launch navicat, open the database, right click on a table and hit delete).

    5°) Update the .conf files:
    Each server (loginserver, charserver, worldserver) has his own config file, loginserver.conf, charserver.conf, worldserver.conf.

    In all the three .conf files, a block is the same it's the one used for the MySQL database access, you need to put in there your own values:
    [DATABASE]
    mysql_host=localhost
    mysql_user=root
    mysql_pass=password
    mysql_database=database
    mysql_port=3306
    AutoQueryTime=600
    So in my example it would do:
    [DATABASE]
    mysql_host=localhost
    mysql_user=test
    mysql_pass=password
    mysql_database=roseon
    mysql_port=3306
    AutoQueryTime=600
    Then each .conf file has his own details:

    a°) loginserver.conf:
    You need to set the IP's values for your servers, please check this guide for more details:
    [SERVERDATA]
    serverid=0
    servertype=0
    serverip=IP
    serverport=29000
    servername=LoginServer
    connection=2
    lanip=IP
    lansubmask=IP

    Other interesting stuff:
    [LOGINSERVER]
    accesslevel=100
    CreateLoginAccount=0
    checkGameGuard=0
    usethreads=0
    acceslevel means the minimum rights people must have to access your server. Players have level 100.
    CreateLoginAccount means that, the first time an unknown player will try to login on your server, he will be rejected BUT an account will be created server side in your MySQL database. So if he tries to login again, it will work. It is NOT recommended, use rather a CMS to create account than this way. 0 means disable, 1 means enable.
    checkGameGuard means that server should check if the player has GameGuard or not. It should be let to 0 (disabled). 0 is highly RECOMMENDED.


    b°) charserver.conf:
    You need to set the IP's values for your servers, please check this guide for more details:

    [SERVERDATA]
    serverid=1
    servertype=1
    serverip=IP
    serverport=29100
    servername=Server1
    parentid=0
    accesslevel=100
    connection=2
    lanip=IP
    lansubmask=IP
    acceslevel means the minimum rights people must have to access your server. Players have level 100.
    servername is the server name that will be displayed after the player logs in.


    c°) worldserver.conf:
    You need to set the IP's values for your servers, please check this guide for more details:

    [SERVERDATA]
    serverid=1
    servertype=2
    serverip=IP
    serverport=29200
    servername=Channel1
    maxconnections=500
    parentid=1
    connection=2
    lanip=IP
    lansubmask=IP[/quote]
    servername is the channel name that will be displayed after the player logs in and when he selects a world.


    Other interesting stuff:
    [WORLDSERVER]
    accesslevel=100
    welcome_msg=Welcome to Open Source Rose Online EVO
    acceslevel means the minimum rights people must have to access your server. Players have level 100.
    welcome_msg is the message the player will have when he joins the game (after beeing logged and choosing his avatar).


    6°) configure your server's IPs:
    See 5°) above and check this guide for more details.


    VI°) Update your data files to match your client:
    1°) extract data from the client:
    You need several files taken from the client so the server has the exact same informations. This way the server will know what items are in your client, what skills can be learned and so on.
    So the client and server informations MUST match.

    To do this, use a vfs extract tool, for example this one.
    Unzip it where you installed Rose Online, next to the .vfs files.


    Launch the software and choose "File->extract all" and choose a folder where all the data will go.


    Now wait.

  3. #3
    Valued Member Hazuki is offline
    MemberRank
    Nov 2004 Join Date
    UKLocation
    123Posts

    Re: OsRose Dev Rev Install Guide

    2°) what is needed?:
    Your server needs that you copy ALL the content of the folders from your client (the one you just extracted):
    3DDATA/QUESTDATA
    3DDATA/AI
    3DDATA/STB

    To your server. Copy those three folders into:





    Binary/3DData/

    That's all, it's good now.


    3°) .csv and .sql files:
    Sometimes STB, AIP and QSD aren't enough. Especially when something changes on a NPC or spawns or telegates...
    You'll have to update those .sql files using the tools that are in this thread: [rev80 / dev rev] extracters and converters (.sql, .csv).
    Once you got the necessary files (see the thread for the few ones you need), IMPORT them into your database using Navicat or whatever.
    If there is a mysql error, perhaps you'll have to DELETE the according table before importing the new data.
    See the thread [rev80 / dev rev] extracters and converters (.sql, .csv) for an "how to".


    VII°) tips/tricks:
    Most of the informations are on the other "rev 80" tutorial, I'll tell here only other stuff...

    1°) client version:
    You MUST use the "Trose.exe" from the game, no need anymore for "gameguard patch". DON'T USE THE GAMEGUARD PATCH.


    2°) GameGuard server:
    You'll need to setup one, check this thread for files and instructions.
    Or you can use a Trose.Exe without Gameguard:
    osROSE Forums • View topic - narose trose.exe without gameguard

    Note:
    Since their client 212, naRose REMOVED Gameguard so if you're using naRose client 212 and above, you DON'T need to setup a Gameguard server anymore.
    So you can use the naRose client, with naRose's Trose.exe, without Gameguard server.



    2°) launching servers:
    You have to launch in order: loginserver.exe, then charserver.exe, then worldserver.exe.

    3°) config tricks:
    a°)In loginserver.conf:
    Code:
    CreateLoginAccount=0
    set this to 1 if you want to create automatically an account. First time it'll fail, next time the guy will be able to login.
    Code:
    checkGameGuard=0
    it's supposed to check if Gameguard is installed or not. 0 is RECOMMENDED.

    b°) where are the other config?:
    Most of them have been moved to the mysql table "list_config", go see there.


    4°) how to have log files?:
    You simply have to create a folder "log" into your "binary" folder to get your servers logs.



    To get packets as well, create a folder "plog" into your "binary" folder.


    5°) Running a server in debug mode:
    It's very useful if you got a crash and want to report something.

    Open the server you want to run in debug mode, let's say "loginserver.cbp".
    Then hit "Debug"->"Start" and the server should launch itself.


  4. #4
    Valued Member Hazuki is offline
    MemberRank
    Nov 2004 Join Date
    UKLocation
    123Posts

    Re: OsRose Dev Rev Install Guide

    Note:
    In some rare occasions you'll have messages like that:

    Hit "Control+F7" to pass that until the server is launched.


    When a crash occurs, Codeblocks will trap it and will tell you where it happened:
    http://i28.tinypic.com/10n829k.png

    Be sure to have the "call stack" window opened:



    To have all the interesting informations like line numbers and so on, make a screenshot of it.


    See this thread to know what watches are (seeing variables values while debugging).

    Press the stop to stop debug mode:



    6°) Update the server (SVN):
    It's easy. First stop all the servers, else you would have troubles.
    Then right click on the folder where is your source code, then select "SVN Update":


    And wait...


    Now, of course if some code changed in the server, REBUILD them before launching them again.



    7°) See the SVN Logs:
    For each rev, the devs tell what changed. It's QUITE important you READ them!
    To do this, simply right click on the folder where you source code is, then "properties":


    ---------- Post added at 01:58 PM ---------- Previous post was at 01:57 PM ----------

    Then tab "subversion" and "show log".


    Wait a bit and you'll have the history.



    8°) Dev rev updates:
    Sometimes from one rev to another some files are updated, like STB, AIP and QSD files. Those files don't need special handling.
    Though sometimes some databases files (.sql) are changed, you NEED to import back those files into your mysql database, with Navicat for example.
    The best way is FIRST to delete the according database table BEFORE importing the new one.
    For example if you "list_npcs.sql" changed, delete the table "list_npcs" and import after the file "list_npcs.sql".

    9°) How to post a bug, how to export data from an avatar:
    See this thread in bug forum:
    osROSE Forums • View topic - New topic icons for bugs, please use them. (and rules)

    10°) how to launch the game?:
    Make a batch file (like "rose.bat") near Trose.Exe with this command line:
    Code:
    TRose.exe @TRIGGER_SOFT@ _server your_server_ip
    so for example:
    Code:
    TRose.exe @TRIGGER_SOFT@ _server 127.0.0.1

    11°) GM commands:
    Most of the time GM Commands needs at least a 300 level AND the "isgm" flag set to 1 for a player.
    You can set the player's "level" into the "account" mysql table, it will apply for ALL his avatars (characters).
    You can set the "isgm" to 1 into the "characters" mysql table, for each of his avatar (one can have this, one don't...).

    If you want to give your players access to some GM commands, you must set the access level for this command so they can use them. It's in file "commands.ini". By default it's GM (level 300) only, for example /go:
    Go=299
    If you want players (who are only level 100) to access it you need to change the value by:
    Go=99

    Notes:
    -> For your GMs it's better than you give them 300 level AND the isGM set to 1,
    -> Some GM commands check that the "isgm" flag is set to 1 for example:
    Code:
    if(Config.Command_Ban > thisclient->Session->accesslevel || thisclient->CharInfo->isGM == false)
    So this command wouldn't be accessible to players, even if you lower its access to "99" in commands.ini.


    Once again thanks to lmame of OsRose for this guide and his continued work on the OsRose project.
    Last edited by Hazuki; 16-07-10 at 03:02 PM.

  5. #5
    Apprentice zapaza is offline
    MemberRank
    Sep 2009 Join Date
    UkraineLocation
    14Posts

    Re: OsRose Dev Rev Install Guide

    I will create one as written here, and after compiling (without errors) I get the files ******.o
    All of them where and need to be but what is wrong?

  6. #6
    Last of the OsRose Devs Purpleyouko is offline
    MemberRank
    Oct 2006 Join Date
    Missouri USALocation
    2,161Posts

    Re: OsRose Dev Rev Install Guide

    COuld have just linked to lmame's post in dev-osrose Haz

  7. #7
    Apprentice merlon is offline
    MemberRank
    Aug 2010 Join Date
    10Posts

    Re: OsRose Dev Rev Install Guide

    This was stolen from lmame. but nice job.... lol

    BTW why did you post multiple times?

  8. #8
    Account Upgraded | Title Enabled! lmame is offline
    MemberRank
    Jun 2007 Join Date
    441Posts

    Re: OsRose Dev Rev Install Guide

    Quote Originally Posted by merlon View Post
    This was stolen from lmame. but nice job.... lol

    BTW why did you post multiple times?
    Hazuki asked if it was ok first and look at the first line of his first post before saying stuff like that.

  9. #9
    Last of the OsRose Devs Purpleyouko is offline
    MemberRank
    Oct 2006 Join Date
    Missouri USALocation
    2,161Posts

    Re: OsRose Dev Rev Install Guide

    Quote Originally Posted by merlon View Post
    This was stolen from lmame. but nice job.... lol

    BTW why did you post multiple times?
    It wasn't stolen.
    It was copied with lmame's permission.
    Haz also gave credits to the original source at the top of the first post.

    It wasn't posted multiple times.
    It was broken up into 3 parts because RZ has a post size limit that prevents it being put into one post.

  10. #10
    Apprentice gama999 is offline
    MemberRank
    Sep 2010 Join Date
    13Posts

    Re: OsRose Dev Rev Install Guide

    Who can explain with Screen Shots? how to do gm

  11. #11
    Last of the OsRose Devs Purpleyouko is offline
    MemberRank
    Oct 2006 Join Date
    Missouri USALocation
    2,161Posts

    Re: OsRose Dev Rev Install Guide

    Quote Originally Posted by gama999 View Post
    Who can explain with Screen Shots? how to do gm
    are you serious?

    You need screen shots to modify a single value in your database???

    This isn't rocket science you know. All you have to do is open your accounts table and find the account that you want to modify then set the "accesslevel" value to 300

    You might also need to open your characters table and change a value called "isgm" to 1 for any GM characters. (depends on your server type. this isn't in all of them)

  12. #12
    Apprentice sunderXKR is offline
    MemberRank
    Dec 2008 Join Date
    6Posts

    Re: OsRose Dev Rev Install Guide

    lmame, hazuki, nice work with the compiling the server, it's been long since anyone posts a step-by-step compiling process since these days they always ask in non-english "how to gm, please server please" and all that stuff...
    Well i folowed your steps Hazuki since it's the first time i'm acctually compiling a server thanks to you, there's seems to be a problem with the rebuilding manager...
    For all the three svn char login and world it won't rebuild it

    for example for the char svn...


    "CharServer - default" uses an invalid compiler. Skipping...
    Nothing to be done.

    Nothing to be done.

  13. #13
    Account Upgraded | Title Enabled! lmame is offline
    MemberRank
    Jun 2007 Join Date
    441Posts

    Re: OsRose Dev Rev Install Guide


  14. #14
    Last of the OsRose Devs Purpleyouko is offline
    MemberRank
    Oct 2006 Join Date
    Missouri USALocation
    2,161Posts

    Re: OsRose Dev Rev Install Guide

    You could also try compiling with dev c++
    The server is compatible with that too. In fact it's still the one i use most of the time.
    Either way you have to make sure you use mingw. Codeblocks comes in two versions, one with mingw and one without.

  15. #15
    Apprentice sunderXKR is offline
    MemberRank
    Dec 2008 Join Date
    6Posts

    Re: OsRose Dev Rev Install Guide

    Quote Originally Posted by Purpleyouko View Post
    You could also try compiling with dev c++
    The server is compatible with that too. In fact it's still the one i use most of the time.
    Either way you have to make sure you use mingw. Codeblocks comes in two versions, one with mingw and one without.
    i know that it's on the main download site of CB, it's just that the normal version works with Vista the mingw is incompatible... also tryed to change rights and compatibility and Still no use Lamem... it's still kipping it and says nothing to rebuild...



Page 1 of 5 12345 LastLast

Advertisement