游客您好
  • 点击联系客服

    在线时间:8:30-18:00

    客服微信

    Wkr-3000y-kf

    电子邮件

    3000y@wenkeruan.com
  • 手机版

    随时掌握游戏动态

  • 扫一扫二维码

    添加微信客服

Lv.7 版主
8号会员,9活跃值,2022.09.01 加入
  • 127发帖
  • 123主题
  • 0关注
  • 0粉丝
这个人很懒,什么也没有留下。
独家推荐 更多>

[服务端相关] 服务端参数配置和功能讲解

[复制链接]
异仟年认证商人 发表于 2022-9-5 18:43:15 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
千年服务端主要分5个程序,本文详细介绍了服务端各类重要参数的含义,方便新手GM提高对服务端参数配置和功能的认知!
! o  E8 e/ X( q
3 E& e( r% r; t3 R+ d$ P: I1Balance 网络均衡服务器。
3 J5 h* G( H0 N/ L+ H2DB 人物数据服务器.注意:这里不包含福袋数据和门派数据等.
# O! ]* e% {; T6 d& F  _3: GATE 网关服务器.
: u0 ?9 d$ _- f, ^. _4: login 登陆服务器. 帐号密码等数据在这里.
7 @6 y2 ^3 Y# s: M$ F8 t5: TGS 游戏主服务器. 游戏大部分设置均在这里.
1 w8 M' K# P$ T  b, j
/ C7 W" e. p  g& @, n下面讲下他们的工作原理.4 h- X- b7 f2 Y+ x- L: H

; m( d  a) i, Z# M# \. z+ F首先,玩家通过TCP协议3053端口连接到Balance服务器,Balance接到连接命令后,) R7 ?. q* ?( K6 B4 d- h, F& d/ X# s
将连接信息转化为UDP协议通过3030端口转到GATE服务器.简单的说Balance只是负责
. n& t- O+ Y# u8 L* E. q. x1 _中转.然后GATE服务器在使用TCP协议连接TGS服务器的3052端口,TGS端口连接正常,
% h! c! s/ C( [3 P) q  q4 l$ i' K% ]则返回信息到GATE,GATE再验证DBlogin服务器,若连接正常,则发送信息连接成功到
6 g) [; S( B' D1 m, T! H% E客户端.
" A; B4 i1 _: j/ V7 u9 n3 H0 Z6 A& D$ `, q- K
再说服务器所牵扯的端口. (以下端口均为未修改的默认端口)
3 Y- I/ @. }4 C9 Q
6 l; [2 P/ c$ @4 o6 P) s/ XBalance服务器 对外TCP协议3053 连接GATE-UDP协议3030." e8 h( }$ H$ _3 s  X
DB服务器 TCP协议3051连接GATE.
! r2 X. p& i6 Z+ {# V0 RGATE服务器 对外端口3054-TCP协议.注意,虽然3054对外,但是直接连接3054会出现版本错误的提示.% i3 C4 z: ?* V) @' z6 a, r
UDP协议连接balance3030.TCP协议连接TGS服务器的3052 TCP协议连接DB3051 TCP协议连接login
+ Z& U0 `& X2 ~5 ?+ ?3050 这里最重要的一个,也是很多朋友不明白的地方,那就是paid服务器的端口,paid服务器为冲卡( ~: p! L. U) p
验证服务器,通常做私服只需将其删除即可,也就是说并不是GATE服务器要亮4个灯才正常,这是很多朋友; _" Q2 O- O. _, r4 C# I, T
的误区.- v+ D. l$ q' R, t9 i5 |6 D
login服务器 TCP协议连接GATE3050
6 H% Y) l. W. o. QTGS服务器 TCP协议连接DB3051 其中还有一些物品记录服务器等.
- I; Y& e. r. Q7 q$ d5 j$ t6 X
: ]& |. G; J$ V  N6 [+ _  A6 u# E
' o3 @2 Y& w9 Y- o) z再讲每个服务器中的配置.
. S4 l  s& ^" }! m. J9 Z/ R7 {6 \' f
Balance服务器 目录中的balance.ini中配置' X( v) I" K& g- e$ I! \: F, Z# ~
[BALANCE]
  Y$ O, [( N9 U; }5 E/ C% B6 kTCPLOCALPORT=3053
7 s6 L# L$ Q! z# [6 OUDPLOCALPORT=3030: M$ h. i4 n) l6 E2 r+ S
基本不需要修改,若你想开启一机双线,那就要双开balanceGATE,3 q- R& O$ h: @! g, C' X4 d
若需要一机多区,就要双开balanceGATETGS' E& |2 u; c, x' j" r% X- t) z
这也就是克星一机多区的工作原理.4 C+ b6 A6 D9 F
但是官方原版的balance服务器并不读取balance中的TCP协议中设置的端口,也就是你即使设置40538 U1 m" B" d# R' k0 M1 ?/ }8 F
他一样是在3053工作.但是UDP协议中的3030是读取的,克星就是改写了balance服务器,让他可以从
* o! m3 r& @% ^8 I/ s3 E配置文件中读取用户所设置的端口来实现一机多区的.
$ {7 U0 w2 t4 S2 K0 O, j" j  W! w7 @如果你想不使用克星工具实现一机多区,应该做以下设置.3 J3 j0 }' h6 U7 \7 h
复制另一份balance出来,打开balance.ini修改
) v- N/ j) q) _1 E3 U. d* T& r6 }[BALANCE]
% D) y. _  d. z# |" I7 bTCPLOCALPORT=4053
4 f( l. a+ j" f! s6 {UDPLOCALPORT=4030: @" n& [* ?) u$ A& X# p
这里修改后注意GATE.iniUDP协议3030端口为4030# v) o5 P  J, H; A3 m
然后打开UE,查找ED0B修改为D50F.注意,有很多个,修改最后一个就可以了.这样他就在4053端口监听了.
5 I% y: B+ i$ K/ ]9 [9 q& C" ?& |
) d; s9 a* A( f题外话:很多朋友很不理解16进制编辑.这里我给大家稍微讲一下.0 L  }$ T; n. r+ {
打开windows自带的计算器,选择查看-科学型,然后选择10进制
3 k' m8 b. [$ v" t按下3053,再选择为16进制,你会发现305316进制中显示为BED- G2 i1 x  O, k1 s
但是为什么要查找ED0B,因为在程序中这些东西都是反写的,
, j2 @( C# k) I  }; {7 j以两个字母为一个单位,也就是说假如为6D2E,你在查找是应该找2E6D
, W. W; I* D' E* j9 U7 @若是奇数就要加一个0来补齐.
: B0 |0 O$ v* G0 W2 Z! W5 H$ l3 y$ F* M: W9 }! j' ~
再来看看DB服务器。
; c8 _( }! m% P+ s, v5 k% `" x7 P+ h. p# T& g- v+ E2 k
DB服务器下目录比较多,我们一个个来讲( R% p; S6 r$ {. y1 H
backup目录本身DB服务器不产生,也不在他的目录下增加任何文件,1 o* `3 {$ v  t6 W; O( r, D
根据笔者猜测,他应该官方工作人员用来备份服务器资料的一个目录.删除也没什么关系.! Z' S7 j& T0 y! e# S- l4 @
log目录,web目录,均是记录玩家的情况6 g% S* V* R( B, x$ q
userdata下是记录当天上线所有玩家的资料,同时,当你点击DB服务器中的backup按钮时7 B8 ]: n/ d5 K2 S" p1 n9 A5 j* c
他会在这个目录中产生一个备份文件,但是这个备份文件不要当作人物资料来用,具体原因
1 d- H# T) u! R; |* \还不太明白,只知道会导致玩家元气永远比原来差一些的问题.& H1 A5 {8 K) \/ P+ e
( |: B4 w8 B$ h6 ~/ [
DB.exe,这个文件是DB服务器文件,没什么好讲的,说说他的按钮吧.$ ^7 ]4 L  _0 Y4 `- P
reload,字面意思是重新读取,具体作用未做测试.
  Q; ]2 A( o7 E: P4 M; n- {& Aaddrecord,增加用户数量.也就是DB默认的建立最大人物资料为10000,若你服务器人气很高,9 w- r, W( o5 J, D
到最后玩家无法建立新角色的时候,点击这个按钮,增加数据库容量就可以了.
: q# w# i  e  s3 @5 W$ ~: Tsave today.sdb,存盘当天玩家上线记录.) W- |2 J& f# l0 x) w: H( y
back up,备份数据库,备份的数据库会产生在userdata目录下.4 [0 H+ G, z% }" t+ {. I$ b; u

+ [4 l# x! ]* U$ a7 Y/ G6 N8 }8 q; ~( H  |$ q* E
DB.ini,DB服务器配置文件.& G6 x( _6 b# o" A
[DB_SERVER] 明确服务器名称.$ {2 _; m; m& |' S% Q; _- y5 K' D
FileName=testdb.fdb 数据库名称.运行DB服务器后会产生一个以这个为名的数据库,但以数字区别.; r8 G# d: I3 Q# s% l* b% E
BufferSizeS2S=1048576 数据库的规格
& j; T% m3 ?( g0 Y9 J: _* R; T) [GateAcceptPort=3051 DBGATE连接的端口.TCP协议.6 f& E7 v+ h( E. Z0 n
RemotePort=1024 接收端口.应该是玩家下线后TGSDB连接的端口.
9 I6 B: Z7 w3 C7 DItemRemotePort=1020 似乎是物品记录端口,但是实际上物品记录端口在TGS.0 q$ c$ A+ n6 Q" d: S+ k9 H

  m5 l* z& T" W- ~
6 `( s2 V5 z& a8 r' T. U# v( K- |IPList.txt文件.: u4 R. A( V9 n* m. o
记录远程GATE连接的IP.一般设置为127.0.0.1; w1 x7 `  K: Y1 ?/ P  `' l

: z" I" x0 Y0 P' s2 Tremoteip.txt文件.
% q" }" t+ Q7 j: r/ T记录远程TGS连接的IP.一般设置为127.0.0.1
+ f" A* Q0 A  ?; D" p8 D
1 \- s" |  S) w  ~ModifyMagic.txt文件." k6 s3 Q7 g0 w
感觉目前似乎没有用到.具体作用有待补充.
) A% |8 _( y3 v! a: Z+ I2 f+ M& s/ t9 B! t/ g/ s
0 _/ ]" N! ?3 }4 ?& `, g
; a- `7 v0 t' J
GATE服务器.
* S* ^6 {9 I/ g$ r$ }2 O5 f
3 z5 {7 W8 h  u$ Olog目录,记录目录.! y- b8 l0 Y/ B
0 S2 u& I. r" H: S! F6 n0 e
CreateChar.txt文件,定义新手出生身上所带物品,但不可定义段位,不可定义数量.. [( l5 l, J: D4 u& a. [- \+ {
[CLOTHES]6 b. I, Z% O+ m2 Y2 o/ r
CLOTHES_COAT_MAN=男子上衣 男子新手出生后所拥有上衣.
" j* {( u% C  x( ICLOTHES_PANTS_MAN=男子短裤 男子新手出生后所拥有的裤子.8 B2 z% c" Z  [+ @& m# B* |4 G
CLOTHES_COAT_WOMAN=女子上衣 女子新手出生后所拥有上衣.
; ?$ E9 Q% W0 b, \* VCLOTHES_PANTS_WOMAN=女子短裤 女子新手出生后所拥有的裤子
' j$ }' q1 J9 `6 `- G* @: a2 F6 d& e
) I, V5 }6 Y4 B+ b[WEAPON]
& y' P  s* ^- @$ n* j3 \WEAPON_SWORD=长剑 出生后拥有的剑 实际上即使不是此类物品也可以+ [( J  A: e1 w
WEAPON_KNIFE=长刀 出生后拥有的刀 实际上即使不是此类物品也可以# u7 s$ }7 I, u& P
WEAPON_SPEAR=长枪 出生后拥有的枪 实际上即使不是此类物品也可以
( ?7 _9 q+ [; C( r8 H: _WEAPON_AX=斧头 出生后拥有的斧 实际上即使不是此类物品也可以( b  I9 u% f3 h. }5 z

4 Y* r: Y4 e# Q* F1 F7 Q& f* |: a[ETC]
' ?+ M; u! P1 E9 u* n- V8 lETC_01=五色药水 新手出生后拥有的物品1.这里要说一下  H. {/ t3 `" @$ A1 a# S7 O; x5 S

$ a0 [# H: \( u- z即使你定义为没有耐久的物品,他出生后还是会有耐久的.( h1 G/ T' W+ F, W9 ~' ~3 D7 u
即使你设置了ETC_0203或着N+1都是不读取的.如果想要他读取除非去修改GATE主程序.
" X+ |9 }6 D# k/ Z! y6 ?8 x* y2 U9 e; E4 {6 L* }

+ d( q' l" O. A; w4 cDontChar.txt 定义不允许建立的角色名.
% l3 \5 K" n6 W- |
4 t4 `; k: d% M, ^  b( h# w4 x/ ^( ^5 m
gate.ini文件,GATE服务器配置文件.这里详细说一下.
# C' R5 P  `* c0 V1 j% |/ n7 F- k3 {6 }% Q
[GATE_SERVER] 定义服务器名称
! M8 Q/ O, m. ULOCALIP=127.0.0.1 定义对外IP
, q- K" l' n. h6 rLOCALPORT=3054 定义与balance连接的端口
) d0 a/ U6 s1 g, n# Z4 p1 B) KLIMITUSERCOUNT=500 定义玩家最大上线允许 0为不限制.
: Y/ {4 ~  y" i7 s" F+ |- B! F& vCHECKPAIDINFO=FALSE 是否收费服务器.
. H5 e, A+ p* ?6 f9 i# e* w7 m- GBALANCEIP=127.0.0.1 定义balance服务器IP
4 H; }1 u) G1 ]2 f. s5 _BALANCEPORT=3030 定义balance服务器端口.UDP协议./ w' _. j( _8 c( O2 J+ h; [
SERVERNAME=test 定义服务器名, d; ~4 c( e7 R9 U7 l$ h' s
BUFFERSIZES2S=1048576 服务器缓冲.应该是这样,若讲错请指正,不胜感激9 e! Q, L3 j$ h$ p) W+ [9 Z
BUFFERSIZES2C=8192 新手村缓冲.应该是这样,若讲错请指正,不胜感激
/ V/ J* p7 }7 y: X- P
9 e9 c1 d5 Z6 j9 x6 }( W[GAME_SERVER] 定义服务器名称
) }( Z2 e+ R% m+ kREMOTEIP=127.0.0.1 游戏主服务器IP地址,也就是TGSIP地址.经典的3052漏洞就是这个.9 I/ i* V: a) h
REMOTEPORT=3052 游戏主服务器端口.一定要封.# f, S- [6 {1 L) N! H

. L4 D, x% y) x9 I[DB_SERVER] 定义服务器名称& E/ n' O7 i% A' o1 u. i" |
REMOTEIP=127.0.0.1 人物资料服务器IP地址,也就是DB服务器的IP地址.# }3 H. {; f3 K" ~" I. `5 x/ p
REMOTEPORT=3051 人物资料服务器端口,一定要封.$ V4 ^/ Y0 y7 T3 k1 d, m3 N
1 a0 l  l; l/ B0 M0 Z; r, u
[LOGIN_SERVER] 定义服务器名称, G! ]4 j$ |3 u" `: H1 E$ F
REMOTEIP=127.0.0.1 登陆服务器IP地址.% L: J# p3 z% V0 i  A. A' ]
REMOTEPORT=3050 登陆服务器端口$ c8 K/ z& T) e+ i" K2 n+ g

$ n$ J6 V4 @9 R# H- a& F4 U[PAID_SERVER] 定义服务器名称 (通常删除)
% t& o9 A* g. t) a, r: n5 dREMOTEIP=127.0.0.1 定义冲卡验证服务器IP地址 (通常删除)
  y  T8 J. ~+ a3 q- N( I8 i* W7 CREMOTEPORT=80 定义冲卡验证服务器端口 (通常删除)
: ]. ~8 i$ I5 H7 t$ q# @
% `8 Y6 s' M7 H
/ \# W" \# t5 ]5 etgs1000.acs文件。GATE的语言库。
1 ~/ ?1 S# W& b4 P4 m5 P* i4 v2 n8 R' `$ d+ }2 c7 X
Village.Ini文件。定义新手出生地图。这里讲一下。
0 \4 I! |. \$ d. l" X* s$ f
" r5 q. V* `/ t9 I[VILLAGE] 定义配置文件名* X: O% v  _) R, t( b6 x
$ h& X4 [$ u# ~- o1 H
COUNT=1 定义新手村可选择的数量
. I$ a, B* S/ {- h$ s' e. W( D' K. ]/ v* R4 X' n) O
NAME0=新手村 定义第一个新手村名称,其实并不读取,只是让技术员用来区别。
0 x; J# u! A9 DX0=178 第一个新手村X坐标
" _, a  X$ K5 fY0=238 第一个新手村Y坐标
2 S* v' E2 x% L7 {, i; O0 xSERVERID0=0 第一个新手村的地图编号,对应TGS\INIT\MAP.SDB中的编号.
0 n6 Y8 C, n' W' D
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

三千游戏官方客服

扫一扫二维码

添加qq客服

Powered by Discuz!X3.4 ©2001-2013 Comsenz Inc.闽公网安备 35099902000100号增值电信业务经营许可证 闽B2-20220593 闽ICP备2023014375号