Source Code Ragnarok Origin[Full] Source 

But don't get too excited, it's missing a lot of things.

How to make a program update
How to make a HotUpdate
How to register an account
How to login for authentication

There is no documentation at all.

Of course, I seem to have read that it's possible to pass parameters to an idipserver.

Because I've actually collected private server packets.
Send HTTP GET from client
The server then responds with JSON
1716302809215.webp

Can you suggest a way to solve this problem? I can't install it at all.
 
You can use simpler method

##################################
###### Build GCC 9.2.0
##################################
# Install Build Depends

sudo apt-get install gcc g++ gawk m4 gcc-multilib binutils lzip patch texinfo flex

GCCROOT=/usr/local/gcc-9.2.0
BUILD_HOST=x86_64-linux-gnu

wget
tar zxvf gcc-9.2.0.tar.gz
cd gcc-9.2.0

./contrib/download_prerequisites

mkdir build
cd build

../configure \
--prefix=${GCCROOT} \
--build=${BUILD_HOST} --host=${BUILD_HOST} --target=${BUILD_HOST} \
--enable-bootstrap \
--enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-gnu-unique-object \
--enable-linker-build-id \
--enable-plugin \
--enable-libmpx \
--enable-clocale=gnu \
--enable-lto \
--enable-version-specific-runtime-libs \
--enable-gnu-indirect-function \
--enable-initfini-array \
--enable-checking=release \
--with-system-zlib \
--with-linker-hash-style=gnu \
--with-tune=generic \
--with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib \
--disable-libunwind-exceptions \
--disable-libgcj

make -j$(nproc)

sudo make install
 
Linux servers are relatively cheap
Win Server is too expensive
Windows Server is just for testing purposes.
 
I still have the same problem. Does the os seem to have a problem? I am using tencent cloud vps to test the installation.

1716309047028.png

You can use simpler method

##################################
###### Build GCC 9.2.0
##################################
# Install Build Depends

sudo apt-get install gcc g++ gawk m4 gcc-multilib binutils lzip patch texinfo flex

GCCROOT=/usr/local/gcc-9.2.0
BUILD_HOST=x86_64-linux-gnu

wget
tar zxvf gcc-9.2.0.tar.gz
cd gcc-9.2.0

./contrib/download_prerequisites

mkdir build
cd build

../configure \
--prefix=${GCCROOT} \
--build=${BUILD_HOST} --host=${BUILD_HOST} --target=${BUILD_HOST} \
--enable-bootstrap \
--enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-gnu-unique-object \
--enable-linker-build-id \
--enable-plugin \
--enable-libmpx \
--enable-clocale=gnu \
--enable-lto \
--enable-version-specific-runtime-libs \
--enable-gnu-indirect-function \
--enable-initfini-array \
--enable-checking=release \
--with-system-zlib \
--with-linker-hash-style=gnu \
--with-tune=generic \
--with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib \
--disable-libunwind-exceptions \
--disable-libgcj

make -j$(nproc)

sudo make install
 
#####################################
### Build Server on Debian 10
#####################################
## Build GCC 9.2.0


## Build MySQL 5.6


## Build Server Linrary


## Clear Devel Library Package
sudo apt-get --purge remove libevent-dev libevhtp-dev

## Install Build Dependencies
sudo apt-get install screen libssl-dev libcurl4-nss-dev liboauth-dev

## Download Build Library
tar zxvf libevhtp.tar.gz
copy libevhtp/include/* to roserver/common/include/
copy libevhtp/lib-debian-openssl-1.1/libevhtp.a to roserver/lib/

## 9.2.0 Environment Variable
sudo ln -sf ../bin/cpp /usr/local/gcc-9.2.0/lib/cpp
sudo ln -sf ../lib/gcc/x86_64-linux-gnu/lib64/libgcc_s.so.1 /usr/local/gcc-9.2.0/lib64/libgcc_s.so.1
sudo ln -sf libgcc_s.so.1 /usr/local/gcc-9.2.0/lib64/libgcc_s.so
sudo ln -sf /usr/local/gcc-9.2.0/lib/gcc/x86_64-linux-gnu/9.2.0/libstdc++.so.6.0.27 /usr/local/gcc-9.2.0/lib64/libstdc++.so.6.0.27
sudo ln -sf libstdc++.so.6.0.27 /usr/local/gcc-9.2.0/lib64/libstdc++.so.6
sudo ln -sf libstdc++.so.6 /usr/local/gcc-9.2.0/lib64/libstdc++.so

GCC_VER=9.2.0
GCC_ROOT=/usr/local/gcc-9.2.0
GCC_PATH=${GCC_ROOT}/bin
GCC_MANPATH=${GCC_ROOT}/share/man
GCC_INFOPATH=${GCC_ROOT}/share/info

export PATH=${GCC_PATH}:${PATH}
export MANPATH=${GCC_MANPATH}:${MANPATH}
export INFOPATH=${GCC_MANPATH}:${INFOPATH}
export PCP_DIR=${GCC_ROOT}
export PKG_CONFIG_PATH=${GCC_ROOT}/lib64/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}
export LD_LIBRARY_PATH=${GCC_ROOT}/lib64:${GCC_ROOT}/lib:${LD_LIBRARY_PATH}

#####################################
### Build Release ServerFile
#####################################
ln -sf ../rogamelibs rogamelibs
ln -sf ../rogamelibs/buildtool/Server/lib/librogamelibs.a lib/librogamelibs.a
ln -sf ../rogamelibs/buildtool/Server/lib/librogamelibs_release.a lib/librogamelibs_release.a
ln -sf ../rogamelibs/table/buildtool/Server/lib/libconfiglib.a lib/libconfiglib.a

rm -rf Build
mkdir -p Build/Release/bin

install -D -m644 /usr/local/gcc-9.2.0/lib64/libstdc++.so.6 Build/Release/bin/lib/libstdc++.so.6
install -D -m644 /usr/local/gcc-9.2.0/lib64/libgcc_s.so.1 Build/Release/bin/lib/libgcc_s.so.1
install -D -m644 /usr/lib/x86_64-linux-gnu/libcurl-nss.so.4 Build/Release/bin/lib/libcurl-nss.so.4
install -D -m644 /usr/lib/x86_64-linux-gnu/libssl.so.1.1 Build/Release/bin/lib/libssl.so.1.1
install -D -m644 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 Build/Release/bin/lib/libcrypto.so.1.1

cp exe/server.xml Build/Release/bin/
cp exe/conf_create.py Build/Release/bin/
cp exe/dropdb.py Build/Release/bin/

cp -r exe/conf Build/Release/bin/
cp -r exe/loginconf Build/Release/bin/
cp -r exe/dbconf Build/Release/bin/
cp -r exe/gateconf Build/Release/bin/
cp -r exe/gsconf Build/Release/bin/
cp -r exe/audioconf Build/Release/bin/
cp -r exe/versionconf Build/Release/bin/

cd Build/Release

# cmake config
cmake -DCMAKE_BUILD_TYPE=Release \
-DASAN=Off -DUSE_POOL=Off -DUSE_TCMALLOC=Off \
-DGCC=${GCC_VER} -DCMAKE_C_COMPILER=$GCC_PATH/gcc -DCMAKE_CXX_COMPILER=$GCC_PATH/g++ \
-DCMAKE_CXX_FLAGS='-D_GLIBCXX_USE_CXX11_ABI=1' \
../..

# Build Server File
DIRNAME=("payserver" "gameserver" "gateserver" "controlserver" "dbserver" "masterserver" "loginserver" "tradeserver" "audioserver" "battleserver" "idipserver" "rankserver" "authserver" "fmserver")
for DIRS in ${DIRNAME[@]}
do
cd ${DIRS}
make -j$(nproc)
strip --strip-debug ../bin/${DIRS}
cd ..
done

mv bin ../../ServerFile
cd ../../

3DgRlTq.png
Just want to ask, you are using 20GB server files or 98GB?
 
Just summarize what I have done so far.
1. basic username and password login
2. register account
3. admin website
4. app force update
5. hotfix update
6. new fashion, equipment, mount
7. switch language in game
8. NPC voice
9. Voice message
10. other game modifications, like exp, drop rate, more mercenaies ...

Happy to answer questions.

QQ截图20240523091539.png

QQ截图20240523091831.png

QQ截图20240523091851.png

QQ截图20240523091743.png

QQ截图20240523092206.png
 
Last edited:
FIXED:

CentOS 7 has a very old suite and poor memory management. The Live system doesn't work at all.
It's still use GCC 4 , Linux3.
A lot of people like to develop applications on CentOS. They think it's stable. In fact, it's not because it's stable. In fact, but because it has a long maintenance cycle, up to 10 years. That's why many developers choose it.
Linux We are used to using APT package management system. The kernel of Linux 4 is also more stable now.

tss_sdk should be useless. It keeps generating log files which is very annoying.
It is just a tool used by Chinese people to filter words because they are afraid of freedom of speech.
I think can remove it, but I don't know how to turn it off.
good job!
 
Back