Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 01/13/18 in Posts

  1. Hello, I have just set up my server + client and as I had some problems during the setup + I didnt really find any tutorial with working donwload links I decided to share my knowledge that I gained during setting up my server, so here we go. Requirements: OS: Debian 9 (Virtual box or VPS) with root access Some things have changed on newer debian 10+ versions: (do this instead of the below specified step 4) ) 4) apt install g++-10 libssl-dev build-essential libmysqlclient-dev Server side setup on Debian: 1) Run apt update: apt-get update 2) Install this software if you dont have it already: git make default-libmysqlclient-dev zlib1g-dev libpcre3-dev apt-get install git make default-libmysqlclient-dev zlib1g-dev libpcre3-dev 3) Add unstable sources list to apt (dont worry it wont break anything it is just dev version), after that run update again: echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" >> /etc/apt/sources.list.d/unstable.list apt-get update 4) Install GCC and G++ compilers for C/C++ (programming language in which the rAthena server software is written): (IMPORTANT USE THESE COMMANDS ONE BY ONE DO NOT COPY ALL 4 AND PASTE IT INTO TERMINAL BECAUSE U NEED TO ACCEPT THE INSTALL BEFORE EXECUTING LN COMMANDS) Do not execute all of 4 commands at the same time, copy first command, wait until it finishes after that second and so on: apt-get install -t unstable gcc-5 apt-get install -t unstable g++-5 ln -s /usr/bin/gcc-5 /usr/bin/gcc ln -s /usr/bin/g++-5 /usr/bin/g++ 5) Now its time to download rAthena: cd /home git clone https://github.com/rathena/rathena.git ~/rAthena 6) Configure it for compiling by (this command must be called in the folder where you downloaded the rAthena): ./configure 7) Now build the server (this command must be called in the folder where you downloaded the rAthena): make server ? Before you can run it, you must make all server executables executable: chmod a+x login-server && chmod a+x char-server && chmod a+x map-server MySQL Database setup (skip this if you already have MySQL, apache and phpmyadmin and continue with step 18): Database creation (skip this if you know how to create a new database): 21) Now go to your server files and find this file: /rAthena/sql-files/main.sql and upload it and import it. 22) Now you just need to setup the database to the rAthena, so go to the file: /rAthena/conf/inter_athena.conf, full in username and password from the user you created via phpmyadmin: // MySQL Login server login_server_ip: 127.0.0.1 login_server_port: 3306 login_server_id: USER_NAME login_server_pw: PASSWORD login_server_db: USER_NAME login_codepage: login_case_sensitive: no ipban_db_ip: 127.0.0.1 ipban_db_port: 3306 login_server_id: USER_NAME login_server_pw: PASSWORD login_server_db: USER_NAME ipban_codepage: // MySQL Character server char_server_ip: 127.0.0.1 char_server_port: 3306 login_server_id: USER_NAME login_server_pw: PASSWORD login_server_db: USER_NAME // MySQL Map Server map_server_ip: 127.0.0.1 map_server_port: 3306 login_server_id: USER_NAME login_server_pw: PASSWORD login_server_db: USER_NAME 23) Now we need to setup server IPs: Go to: /rAthena/conf/ Open: char_athena.conf server_name: YOUR_SERVER_NAME login_ip: 127.0.0.1 //just uncomment this line and let it like 127.0.0.1 bind_ip: 0.0.0.0 //uncoment this line and set it to 0.0.0.0 (bind to all interfaces) char_ip: XXX.XXX.XXX.XXX //set it to your WAN IP (public IP) //Find this values and set it to no: pincode_enabled: no pincode_force: no Open: map_athena.conf char_ip: 127.0.0.1 //uncoment and let it like this bind_ip: 0.0.0.0 //uncoment and set it to 0.0.0.0 map_ip: 192.168.0.119 //set it to your WAN IP (public IP) Open: login_athena.conf bind_ip: 0.0.0.0 //uncoment this and set it to 0.0.0.0 25) Now you need to setup spawn: Open /rAthena/conf/char_athena.conf And set start point like this: start_point: prontera,155,182 26) Now we need to disable packet encryption: Go to this file: /src/config/packets.h Make it look like this to disable packet encryption (obfuscation), comment out only 4 lines which I "highlighted", do not touch anything else): // Copyright (c) rAthena Dev Teams - Licensed under GNU GPL // For more information, see LICENCE in the main folder #ifndef _CONFIG_PACKETS_H_ #define _CONFIG_PACKETS_H_ /** * rAthena configuration file (http://rathena.org) * For detailed guidance on these check http://rathena.org/wiki/SRC/config/ **/ #ifndef PACKETVER /// Do NOT edit this line! To set your client version, please do this instead: /// In Windows: Add this line in your src\custom\defines_pre.h file: #define PACKETVER YYYYMMDD /// In Linux: The same as above or run the following command: ./configure --enable-packetver=YYYYMMDD /// original value: 20151104 #define PACKETVER 20151104 #endif #ifndef PACKETVER_RE /// From this point on only kRO RE clients are supported #if PACKETVER > 20170614 #define PACKETVER_RE #endif #endif #if PACKETVER >= 20110817 /// Comment to disable the official packet obfuscation support. /// This requires PACKETVER 2011-08-17 or newer. ///#ifndef PACKET_OBFUSCATION --------------------------comment out this line ///#define PACKET_OBFUSCATION --------------------------comment out this line // Define these inside src/custom/defines_pre.h or src/custom/defines_post.h //#define PACKET_OBFUSCATION_KEY1 <key1> //#define PACKET_OBFUSCATION_KEY2 <key2> //#define PACKET_OBFUSCATION_KEY3 <key3> /// Comment this to disable warnings for missing client side encryption ///#define PACKET_OBFUSCATION_WARN --------------------------comment out this line ///#endif --------------------------comment out this line #else #if defined(PACKET_OBFUSCATION) #error You enabled packet obfuscation for a version which is too old. Minimum supported client is 2011-08-17. #endif #endif #ifndef DUMP_UNKNOWN_PACKET //#define DUMP_UNKNOWN_PACKET #endif #ifndef DUMP_INVALID_PACKET //#define DUMP_INVALID_PACKET #endif /** * No settings past this point **/ /// Check if the specified packetversion supports the pincode system #define PACKETVER_SUPPORTS_PINCODE PACKETVER >= 20110309 /// Check if the client needs delete_date as remaining time and not the actual delete_date (actually it was tested for clients since 2013) #define PACKETVER_CHAR_DELETEDATE (PACKETVER > 20130000 && PACKETVER <= 20141022) || PACKETVER >= 20150513 /// Check if the specified packetvresion supports the cashshop sale system #define PACKETVER_SUPPORTS_SALES PACKETVER >= 20131223 #endif // _CONFIG_PACKETS_H_ 27) Now its time to recompile server: make clean make server 25) Now you can start the server (execute this command from the main server directory): ./athena-start start Client side setup on windows: 1) Download full kRO client from one of this links: [Link 1], [Link 2], [Link 3] 2) Unpack it to a new clear folder 3) Download NEMO: [Link 1], [Link 2] (prefer Link 1) 4) Unpack the NEMO wherever you want to 5) Download Ragexe client [Link 1], or any other Ragexe from https://rathena.org/board/forum/99-client-releases/ but 2016+ clients are not fully supported by NEMO so you might run into issue, better download 2015 client 6) Unpack the Ragexe into your ragnarok client folder 7) Download GRF Editor and install it whereever you want ? Now its time to open NEMO program - Click on browse and navigate to the Ragexe client you downloaded - Click on LOAD CLIENT button - In the search filed type "Disable packet Encryption" click on the red circle to make it green - Find "Skip licence screen" and make it green - Find "Use Ragnarok icon" and make it green - Find "Custom Window Title" here you can write name of your RO client (whatever you want) - Now just click "APPLY SELECTED" and it will create a new .exe file - this is the file you will run to start your client, but dont start it yet 9) Open GRF Editor - Click on File -> Open and open data.grf (this file is in the main folder of your unpacked client) - Now type in the serach window clientinfo.xml and open the file, now edit the <address> to the adress where your server is running. NOTE: If the file is empy and does not contain <adress> line, try other GRF files in the main client folder - After edditing the address click on save and override the file. 10) Now you just need to setup packtversion on the server to match your ragexe, so go to your server and write to terminal: In this case I put there 20151029 which is the release date of the Ragexe, if you have downloaded other, put there your number of your ragexe you downloaded, these commands must be performed from the folder of your server, stop the server if you already started it: ./rAthena stop ./configure --enable-packetver=20151029 make clean make server 11) Start the client and play! FAQ:
    2 points
  2. The files are encrypted. You cannot open them unless you use their client.
    1 point
  3. remove this || checkidle() >= .idle
    1 point
  4. rathena already support 2017/12 just edit the PACKETVER to the client version you want!
    1 point
  5. just type `/showname` in the chat or you can edit it in this file savedata/OptionInfo.lua CmdOnOffList["/showname"] = 0
    1 point
  6. You may have your /showname enabled or diffed to be default.
    1 point
  7. I think it's somewhere at battleconf/party.txt I'm not at home yet so I can't check it my self.
    1 point
  8. Try this It might lessen the your job inputting the "bonus bAllstats, 10;" to your books(weapon I guess?)
    1 point
  9. //===== Hourly Points Script ========================================= //===== By: ========================================================== //= GorthexTiger modified by Nibi //===== Current Version: ============================================= //= 1.4.1 //===== Compatible With: ============================================= //= Any eAthena Version //===== Description: ================================================= //= Get Points every successful hours of gameplay, you cannot get //= the points even if you miss a second or a minute. A player will //= get a very big bonus if they played 3 hours consecutively //= or without logging out of the game. If the player is vending //= the script will then stop. //===== Additional Comments: ========================================= //= You can modify the script to your liking. //= The default points is Free Points change it anyway if you like. //= 1.1 = Check Chatting too //= 1.2 = 5 Minute Idle Check & @at/@autotrade check. //= 1.3 = Corrected the current balance line on 12 Hours Consecutive //= 1.4 = Added command to check remaining time and updated idle check. (Skorm) //= 1.4.1 = Modified the msgs to display according to .timer. (Skorm) //==================================================================== - script hourlypoints3 -1,{ OnPointGet: //Check for idle. while(checkvending() >= 1 || checkchatting() == 1 || checkidle() >= .idle) { if( .@mes$ == "" ) { dispbottom set( .@mes$, "The hourly points event stopped because you were vending, chatting, or idle!" ); set @hourly_points_timer, 0; } sleep2 .delay; } @consecutive_timer++; .@time_string$ = Time2Str( @consecutive_timer * ( .timer / 1000 ) ); dispbottom "You received "+.points+" Free Point(s) by staying ingame for 1 hour."; #KAFRAPOINTS = #KAFRAPOINTS + .points; dispbottom "Current Balance = "+#KAFRAPOINTS+" Free Point(s)"; @consecutive_bonus++; //Check for consecutive timer. if(@consecutive_bonus == .cdelay) { @consecutive_bonus = 0; #KAFRAPOINTS = #KAFRAPOINTS + .cpoints; dispbottom "You receive a bonus "+.cpoints+" Free Point(s) by playing for minimum 3 hours consecutively!!!"; dispbottom "Current Balance = "+#KAFRAPOINTS+" Free Point(s)"; } OnPCLoginEvent: addtimer .timer,"hourlypoints3::OnPointGet"; @hourly_points_timer = gettimetick(2) + ( .timer / 1000 ); end; OnCheck: message strcharinfo(0),@hourly_points_timer ? Time2Str( @hourly_points_timer )+" Remaining.":"Something went wrong relog!"; end; OnInit: bindatcmd "check","hourlypoints3::OnCheck"; //@check to view time till next point. .timer = 1000*60*60; //Timer in milliseconds. ( Default: 1000*60*60 [ = 1 Hour ] ) .cdelay = 3; //Delay before receiving the consecutive bonus. ( Default: 3 [ { ~ 3 Hours } *Using default timer ] ) .cpoints = 10; //Points gained for consecutive time online. ( Default: 10 ) .points = 1; //Normal points gained. ( Default: 1 ) .delay = 1000; //Delay for idle re-check check. ( Default: 1000 [ = 1 Second ] ) .idle = 60*5; //Player is idle after not moving for this many seconds. ( Default: 60*5 [ = 5 Minutes ] ) } Here, you may use this hourlypoints script. i've tested and it's functioning in my server each hour (except idle or vending) you get 1 #KAFRAPOINTS or Freepoint you can change into getitem instead of #KAFRAPOINTS CMIIW
    1 point
×
×
  • Create New...