Jump to content
  • 0

Server is lagging without reason


Question

Posted

Hello guys.

i got a server with 150online i am running l2jfrozen

i got 16GB Ram i7 250mbps up 200 down windows 2008 R2 and server sometimes lagging as hell.

i have see when a new character do 1-2-3class and system try to update his stats/skills server got lags.

i thing something going with java speed settings or mysql or hard disk.

someone can help me to fix them? or any sulotion?

 

i wanna do my sql running faster what i should change to make it work faster?


# MySQL Server Instance Configuration File
# ----------------------------------------------------------------------
# Generated by the MySQL Server Instance Configuration Wizard
#
#
# Installation Instructions
# ----------------------------------------------------------------------
#
# On Linux you can copy this file to /etc/my.cnf to set global options,
# mysql-data-dir/my.cnf to set server-specific options
# (@localstatedir@ for this installation) or to
# ~/.my.cnf to set user-specific options.
#
# On Windows you should keep this file in the installation directory 
# of your server (e.g. C:\Program Files\MySQL\MySQL Server X.Y). To
# make sure the server reads the config file use the startup option 
# "--defaults-file". 
#
# To run run the server from the command line, execute this in a 
# command line shell, e.g.
# mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server X.Y\my.ini"
#
# To install the server as a Windows service manually, execute this in a 
# command line shell, e.g.
# mysqld --install MySQLXY --defaults-file="C:\Program Files\MySQL\MySQL Server X.Y\my.ini"
#
# And then execute this in a command line shell to start the server, e.g.
# net start MySQLXY
#
#
# Guildlines for editing this file
# ----------------------------------------------------------------------
#
# In this file, you can use all long options that the program supports.
# If you want to know the options a program supports, start the program
# with the "--help" option.
#
# More detailed information about the individual options can also be
# found in the manual.
#
#
# CLIENT SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by MySQL client applications.
# Note that only client applications shipped by MySQL are guaranteed
# to read this section. If you want your own MySQL client program to
# honor these values, you need to specify it as an option during the
# MySQL client library initialization.
#
[client]

port=3306

[mysql]

default-character-set=latin1


# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this 
# file.
#
[mysqld]

# The TCP/IP Port the MySQL Server will listen on
port=3306


#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"

#Path to the database root
datadir="C:/ProgramData/MySQL/MySQL Server 5.1/Data/"

# The default character set that will be used when a new schema or table is
# created and no character set is defined
character-set-server=latin1

# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB

# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

# The maximum amount of concurrent sessions the MySQL server will
# allow. One of these connections will be reserved for a user with
# SUPER privileges to allow the administrator to login even if the
# connection limit has been reached.
max_connections=5000

# Query cache is used to cache SELECT results and later return them
# without actual executing the same query once again. Having the query
# cache enabled may result in significant speed improvements, if your
# have a lot of identical queries and rarely changing tables. See the
# "Qcache_lowmem_prunes" status variable to check if the current value
# is high enough for your load.
# Note: In case your tables change very often or if your queries are
# textually different every time, the query cache may result in a
# slowdown instead of a performance improvement.
query_cache_size=0

# The number of open tables for all threads. Increasing this value
# increases the number of file descriptors that mysqld requires.
# Therefore you have to make sure to set the amount of open files
# allowed to at least 4096 in the variable "open-files-limit" in
# section [mysqld_safe]
table_cache=256

# Maximum size for internal (in-memory) temporary tables. If a table
# grows larger than this value, it is automatically converted to disk
# based table This limitation is for a single table. There can be many
# of them.
tmp_table_size=205M


# How many threads we should keep in a cache for reuse. When a client
# disconnects, the client's threads are put in the cache if there aren't
# more than thread_cache_size threads from before.  This greatly reduces
# the amount of thread creations needed if you have a lot of new
# connections. (Normally this doesn't give a notable performance
# improvement if you have a good thread implementation.)
thread_cache_size=8

#*** MyISAM Specific options

# The maximum size of the temporary file MySQL is allowed to use while
# recreating the index (during REPAIR, ALTER TABLE or LOAD DATA INFILE.
# If the file-size would be bigger than this, the index will be created
# through the key cache (which is slower).
myisam_max_sort_file_size=100G

# If the temporary file used for fast index creation would be bigger
# than using the key cache by the amount specified here, then prefer the
# key cache method.  This is mainly used to force long character keys in
# large tables to use the slower key cache method to create the index.
myisam_sort_buffer_size=410M

# Size of the Key Buffer, used to cache index blocks for MyISAM tables.
# Do not set it larger than 30% of your available memory, as some memory
# is also required by the OS to cache rows. Even if you're not using
# MyISAM tables, you should still set it to 8-64M as it will also be
# used for internal temporary disk tables.
key_buffer_size=354M

# Size of the buffer used for doing full table scans of MyISAM tables.
# Allocated per thread, if a full scan is needed.
read_buffer_size=64K
read_rnd_buffer_size=256K

# This buffer is allocated when MySQL needs to rebuild the index in
# REPAIR, OPTIMZE, ALTER table statements as well as in LOAD DATA INFILE
# into an empty table. It is allocated per thread so be careful with
# large settings.
sort_buffer_size=256K


#*** INNODB Specific options ***


# Use this option if you have a MySQL server with InnoDB support enabled
# but you do not plan to use it. This will save memory and disk space
# and speed up some things.
#skip-innodb

# Additional memory pool that is used by InnoDB to store metadata
# information.  If InnoDB requires more memory for this purpose it will
# start to allocate it from the OS.  As this is fast enough on most
# recent operating systems, you normally do not need to change this
# value. SHOW INNODB STATUS will display the current amount used.
innodb_additional_mem_pool_size=15M

# If set to 1, InnoDB will flush (fsync) the transaction logs to the
# disk at each commit, which offers full ACID behavior. If you are
# willing to compromise this safety, and you are running small
# transactions, you may set this to 0 or 2 to reduce disk I/O to the
# logs. Value 0 means that the log is only written to the log file and
# the log file flushed to disk approximately once per second. Value 2
# means the log is written to the log file at each commit, but the log
# file is only flushed to disk approximately once per second.
innodb_flush_log_at_trx_commit=1

# The size of the buffer InnoDB uses for buffering log data. As soon as
# it is full, InnoDB will have to flush it to disk. As it is flushed
# once per second anyway, it does not make sense to have it very large
# (even with long transactions).
innodb_log_buffer_size=7M

# InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and
# row data. The bigger you set this the less disk I/O is needed to
# access data in tables. On a dedicated database server you may set this
# parameter up to 80% of the machine physical memory size. Do not set it
# too large, though, because competition of the physical memory may
# cause paging in the operating system.  Note that on 32bit systems you
# might be limited to 2-3.5G of user level memory per process, so do not
# set it too high.
innodb_buffer_pool_size=686M

# Size of each log file in a log group. You should set the combined size
# of log files to about 25%-100% of your buffer pool size to avoid
# unneeded buffer pool flush activity on log file overwrite. However,
# note that a larger logfile size will increase the time needed for the
# recovery process.
innodb_log_file_size=343M

# Number of threads allowed inside the InnoDB kernel. The optimal value
# depends highly on the application, hardware as well as the OS
# scheduler properties. A too high value may lead to thread thrashing.
innodb_thread_concurrency=18

Recommended Posts

  • 0
Posted

there can be a looooooooot reasons of that, try to find out when it starts lagging, as u said it may be while updating skill/stats, try to take a look how they are made.

  • 0
Posted

there can be a looooooooot reasons of that, try to find out when it starts lagging, as u said it may be while updating skill/stats, try to take a look how they are made.

some of l2jfrozen told me that i must change to linux, it can be from windows?
  • 0
Posted

Well linux are better for l2jserver.

But i dont think there is problem if you have windows,many l2j servers runs windows and no lagging.

  • 0
Posted

some of l2jfrozen told me that i must change to linux, it can be from windows?

Linux are more stable than windows but anyway, do you have enough free memory on your disk?
  • 0
Posted

Linux are more stable than windows but anyway, do you have enough free memory on your disk?

2.69TB free from 2.72TB

 

i thing something gone wrong with mysql couse in the past my servers do restart in 40seconds now it do 4-5minutes to save tables

  • 0
Posted

giveSkills() is known to be completely broken, and that exists since L2J exists. Verify ingame with L2PHX, if you got a mass flood of packets it comes from here (lag for 3 to 5sec depending the class you offer skills). PS : only the guy who is rewarded lags like a bitch.

 

If you got random lags, verify your -xmx parameters are correctly configured. If you activate geodata for example, you need at least 2g for that parameter.

 

Verify also floodprotectors parameters, there is notably one parameter which limit number of packets sent following one config value which is 100 by default, and by default all those values are bad configured for PvP/siege.

  • 0
Posted

giveSkills() is known to be completely broken, and that exists since L2J exists. Verify ingame with L2PHX, if you got a mass flood of packets it comes from here (lag for 3 to 5sec depending the class you offer skills). PS : only the guy who is rewarded lags like a bitch.

 

If you got random lags, verify your -xmx parameters are correctly configured. If you activate geodata for example, you need at least 2g for that parameter.

 

Verify also floodprotectors parameters, there is notably one parameter which limit number of packets sent following one config value which is 100 by default, and by default all those values are bad configured for PvP/siege.

 

i am getting lag for example when 3new characters join in the game and do the 3th class

server start lagging, if 1new character join server lag for 1sec

my floodprotection settings:

#============================================================#
#                       Flood Protectors                     #
#============================================================#

# ---------------------------------------------------------------------------
# Floodprotector Options
# ---------------------------------------------------------------------------
# The following settings can be applied to each feature:
# Interval - interval in gameserver ticks (1 tick = 100ms) in which only one request is allowed
# LogFlooding - whether flooding should be logged (only first ocurrance of flooding and total count of flood requests is logged)
# PunishmentLimit - if number of requests within single interval exceeds specified number then the specified punishment is applied (0 = disables punishment feature)
# PunishmentType - type of the punishment ('none', 'kick', 'ban', 'jail'), valid only if PunishmentLimit is greater than 0
# PunishmentTime - for how many minutes should the player(jail)/account(ban) be punished (0 = forever), valid only for PunishmentType 'jail' or 'ban'

# UseItem - item usage flooding
FloodProtectorUseItemInterval = 4
FloodProtectorUseItemLogFlooding = False
FloodProtectorUseItemPunishmentLimit = 0
FloodProtectorUseItemPunishmentType = none
FloodProtectorUseItemPunishmentTime = 0

# RollDice - rolling dice flooding
FloodProtectorRollDiceInterval = 42
FloodProtectorRollDiceLogFlooding = False
FloodProtectorRollDicePunishmentLimit = 0
FloodProtectorRollDicePunishmentType = none
FloodProtectorRollDicePunishmentTime = 0

# Firework - firework flooding
FloodProtectorFireworkInterval = 42
FloodProtectorFireworkLogFlooding = False
FloodProtectorFireworkPunishmentLimit = 0
FloodProtectorFireworkPunishmentType = none
FloodProtectorFireworkPunishmentTime = 0

# ItemPetSummon - item summonning and pet -beep-ting flooding
FloodProtectorItemPetSummonInterval = 16
FloodProtectorItemPetSummonLogFlooding = False
FloodProtectorItemPetSummonPunishmentLimit = 0
FloodProtectorItemPetSummonPunishmentType = none
FloodProtectorItemPetSummonPunishmentTime = 0

# HeroVoice - hero voice flooding
FloodProtectorHeroVoiceInterval = 100
FloodProtectorHeroVoiceLogFlooding = False
FloodProtectorHeroVoicePunishmentLimit = 0
FloodProtectorHeroVoicePunishmentType = none
FloodProtectorHeroVoicePunishmentTime = 0

# GlobalChat - global chat flooding
FloodProtectorGlobalChatInterval = 5
FloodProtectorGlobalChatLogFlooding = False
FloodProtectorGlobalChatPunishmentLimit = 0
FloodProtectorGlobalChatPunishmentType = none
FloodProtectorGlobalChatPunishmentTime = 0

# Subclass - subclass flooding
FloodProtectorSubclassInterval = 20
FloodProtectorSubclassLogFlooding = False
FloodProtectorSubclassPunishmentLimit = 5
FloodProtectorSubclassPunishmentType = kick
FloodProtectorSubclassPunishmentTime = 0

# DropItem - drop item flooding
FloodProtectorDropItemInterval = 5
FloodProtectorDropItemLogFlooding = False
FloodProtectorDropItemPunishmentLimit = 0
FloodProtectorDropItemPunishmentType = none
FloodProtectorDropItemPunishmentTime = 0

# ServerBypass - server bypass flooding
FloodProtectorServerBypassInterval = 5
FloodProtectorServerBypassLogFlooding = False
FloodProtectorServerBypassPunishmentLimit = 10
FloodProtectorServerBypassPunishmentType = kick
FloodProtectorServerBypassPunishmentTime = 0

# ServerBypass - multisell list request flooding
FloodProtectorMultiSellInterval = 2
FloodProtectorMultiSellLogFlooding = False
FloodProtectorMultiSellPunishmentLimit = 5
FloodProtectorMultiSellPunishmentType = kick
FloodProtectorMultiSellPunishmentTime = 0

# All kind of other transactions - to/from pet, private store, warehouse, destroy
FloodProtectorTransactionInterval = 10
FloodProtectorTransactionLogFlooding = False
FloodProtectorTransactionPunishmentLimit = 10
FloodProtectorTransactionPunishmentType = kick
FloodProtectorTransactionPunishmentTime = 0

# Manufacture
FloodProtectorManufactureInterval = 0
FloodProtectorManufactureLogFlooding = False
FloodProtectorManufacturePunishmentLimit = 0
FloodProtectorManufacturePunishmentType = none
FloodProtectorManufacturePunishmentTime = 0

# Manor
FloodProtectorManorInterval = 30
FloodProtectorManorLogFlooding = False
FloodProtectorManorPunishmentLimit = 0
FloodProtectorManorPunishmentType = none
FloodProtectorManorPunishmentTime = 0

# SendMail - sending mail interval, 10s on retail
FloodProtectorSendMailInterval = 100
FloodProtectorSendMailLogFlooding = False
FloodProtectorSendMailPunishmentLimit = 0
FloodProtectorSendMailPunishmentType = none
FloodProtectorSendMailPunishmentTime = 0

# CharacterSelect - attempts to load character
FloodProtectorCharacterSelectInterval = 30
FloodProtectorCharacterSelectLogFlooding = False
FloodProtectorCharacterSelectPunishmentLimit = 0
FloodProtectorCharacterSelectPunishmentType = none
FloodProtectorCharacterSelectPunishmentTime = 0

#### L2j Frozen Addons

# PacketUnknown - attempts to send unknown packets
FloodProtectorUnknownPacketsInterval = 5
FloodProtectorUnknownPacketsLogFlooding = False
FloodProtectorUnknownPacketsPunishmentLimit = 3
FloodProtectorUnknownPacketsPunishmentType = kick
FloodProtectorUnknownPacketsPunishmentTime = 0

# Party Invitation - attempts to invite into party
FloodProtectorPartyInvitationInterval = 5
FloodProtectorPartyInvitationLogFlooding = False
FloodProtectorPartyInvitationPunishmentLimit = 0
FloodProtectorPartyInvitationPunishmentType = none
FloodProtectorPartyInvitationPunishmentTime = 0

# General Say Action (also VoiceCommands) - attempts say something
FloodProtectorSayActionInterval = 5
FloodProtectorSayActionLogFlooding = False
FloodProtectorSayActionPunishmentLimit = 0
FloodProtectorSayActionPunishmentType = none
FloodProtectorSayActionPunishmentTime = 0

# Move Action - attempts move to a location
FloodProtectorMoveActionInterval = 1
FloodProtectorMoveActionLogFlooding = False
FloodProtectorMoveActionPunishmentLimit = 0
FloodProtectorMoveActionPunishmentType = none
FloodProtectorMoveActionPunishmentTime = 0

# Macro - attempts to Macro system
FloodProtectorMacroInterval = 8
FloodProtectorMacroLogFlooding = False
FloodProtectorMacroPunishmentLimit = 6
FloodProtectorMacroPunishmentType = kick
FloodProtectorMacroPunishmentTime = 0

 

i am not running geodata,my -xmx parameters settings:

REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF8 -Xmx10240m -Xms8086m -Xmn512m -XX:PermSize=512m -XX:SurvivorRatio=16 -Xnoclassgc -XX:+AggressiveOpts -XX:+UseSerialGC -cp ./lib/*;l2jfrozen-core.jar com.l2jfrozen.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx8086m -Xms6086m -Xmn512m -XX:PermSize=512m -XX:SurvivorRatio=16 -Xnoclassgc -XX:+AggressiveOpts

  • 0
Posted

By floodprotectors, I always speak about the MMOCore floodprotector. Not that dumb floodprotectors for 5 packets.

 

Your .bat sucks aswell, use regular L2J parameters, there is no case you can use -Xmx10240m -Xms8086m (a live server uses for exemple 1,2 to 1,6 giga ram with geodata on and 340 players on). Without geodata and only 100 players use -xmx 2g, it's clearly enough.

 

Use visualVM in order to see RAM consumption / threads uses / CPU use, it's perhaps an internal issue of L2JFrozen. If all ppl are lagging for particular stuff, I would go for CPU overcharge.

 

Finally, use L2PHX to remove the "packets flood issue" track from the list.

  • 0
Posted

By floodprotectors, I always speak about the MMOCore floodprotector. Not that dumb floodprotectors for 5 packets.

 

Your .bat sucks aswell, use regular L2J parameters, there is no case you can use -Xmx10240m -Xms8086m (a live server uses for exemple 1,2 to 1,6 giga ram with geodata on and 340 players on). Without geodata and only 100 players use -xmx 2g, it's clearly enough.

 

Use visualVM in order to see RAM consumption / threads uses / CPU use, it's perhaps an internal issue of L2JFrozen. If all ppl are lagging for particular stuff, I would go for CPU overcharge.

 

Finally, use L2PHX to remove the "packets flood issue" track from the list.

Thanks for your help Tryskell i rly appreciate it i will download visualVM to see.

 

my MMOCore settings

#=========================================#
#   MMOCore Connection Settings           #
#=========================================#

# ----------------------------
#  Debug and Develop logging -
# ----------------------------
EnableMMOCoreDebug=false
EnableMMOCoreDevelop=false
EnableMMOCoreExceptions=false
PacketHandlerDebug=false
#Don't ENABLE, just for debug use
DumpCloseConnectionLogs=false

# ----------------------------
#  Config BackLog -
# ----------------------------
# Maximum length of request.
# The maximum length for incoming requests (connection request).
# Maximum number of requests, after which the requests
# Will not be accepted.
# The default is 50
# Must be equal to the estimated number of players.
# Example: Players in the game 1000 +, NetworkBackLog = 1000 
# NetworkBackLog = 500

# ----------------
#  Set TOS -
# ----------------
# Set the traffic going to a particular socket.
# Can be ignored JAVA-machine.
# Range: 0 <= tc <= 255 or a ban happens.
# Note:
# To TCP4 should be set high priority and should be RFC 1349.
# You can also create a type priorities bit, example:
# IPTOS_LOWCOST (0x02)
# IPTOS_RELIABILITY (0x04)
# IPTOS_THROUGHPUT (0x08)
# IPTOS_LOWDELAY (0x10)
# The lowest bit is ignored (0).
# Set bits in the priority may cause the collapse of the server.
# depends on the service and platform.
# Note:
# Applications can not change GameServer after connecting.
# To TCP6 value can be found in the header sin6_flowinfo.
# NetworkIpTOS = 0

# ---------------------------------------
#  Setting TCP_NODELAY -
# ---------------------------------------
# On / Off TCP_NODELAY
#NetworkTcpNoDelay = False

# -------------------------------
#  Setting KeepAlive -
# -------------------------------
# On / Off SO_KEEPALIVE
#NetworkKeepAlive = False

# ------------------------
#  Set a timeout -
# ------------------------
# Set a timeout in milliseconds.
# If set to 0, the timeout will be standard.
# Timeout must be greater than 0.
# Zero timeout is defined as an infinite timeout. 
#NetworkSoTimeOut = 0

# ---------------------------------------------------
#  Configure repetitions Adresses -
# ---------------------------------------------------
# On / Off option.
# If the connection is closed, then turn timeout.
#NetworkSoReuseAddr = True

# --------------------------------------
#  Set buffer compounds -
# --------------------------------------
# Buffer size in kbit (kilobits)
# By default (Windows) - 64KBits
# Default (* nix) - 128KBits
#NetworkReadBufferSize = 64
#NetworkWriteBufferSize = 64
#NetworkHelperBufferSize = 64

# The size of the auxiliary buffer
#NetworkHelperBufferCount = 20

# --------------------------
# Client Queue Configuration
# --------------------------
# Queue size, do not set it too low !
# Default: 14
ClientPacketQueueSize=14
# Maximum number of packets in burst.
# Execution will be aborted and thread released if more packets executed in raw.
# Default: 50
ClientPacketQueueMaxBurstSize=50
# Maximum number of packets per second.
# Flood detector will be triggered if more packets received.
# After triggering all incoming packets will be dropped until flooding stopped.
# Default: 80
ClientPacketQueueMaxPacketsPerSecond=80
# Average number of packets per second calculated during this interval.
# Using larger value decrease number of false kicks, but slower reaction to flood.
# Avoid using too low or too high values, recommended between 3 and 10.
# Default: 5
ClientPacketQueueMeasureInterval=5
# Maximum average number of packets per second during measure interval.
# Flood detector will be triggered if more packets received.
# After triggering all incoming packets will be dropped until flooding stopped.
# Default: 40
ClientPacketQueueMaxAveragePacketsPerSecond=40
# Maximum number of flood triggers per minute.
# Client will be kicked if more floods detected.
# Default: 2
ClientPacketQueueMaxFloodPerMin=2
# Maximum number of queue overflows per minute.
# After overflow all incoming packets from client are dropped until queue is flushed.
# Client will be kicked if more queue overflows detected.
# Default: 50
ClientPacketQueueOverflowsPerMin=50
# Maximum number of buffer underflows per minute.
# Client will be kicked if more underflow exceptions detected.
# Default: 1
ClientPacketQueueUnderflowsPerMin=1
# Maximum number of unknown packets per minute.
# Client will be kicked if more unknown packets received.
# Default: 5
ClientPacketQueueUnknownPerMin=5

# --------------------------
# Food Packets Protections -
# --------------------------
# Interval - interval in gameserver ticks (1 tick = 100ms) in which only one request is allowed
# LogFlooding - whether flooding should be logged (only first occurrence of flooding and total count of flood requests is logged)
# PunishmentLimit - if number of requests within single interval exceeds specified number then the specified punishment is applied (0 = disables punishment feature)
# PunishmentType - type of the punishment ('none', 'kick', 'ban'), valid only if PunishmentLimit is greater than 0

# Flood protection method: check if in given FLOOD_PROTECTION_INTERVAL 
# more then PUNISHMENT_LIMIT actions are performed: if this condition has been verified
# apply PUNISHMENT_TYPE for PUNISHMENT_TIME minutes
DisableOpCodesFloodProtector=True
FloodPacketProtectionInterval=1
LogPacketFlooding=True
PacketFloodingPunishmentLimit=20
PacketFloodingPunishmentType=kick

# -- GAME SERVER -- 
#
# OPCODE1
# --  opcode1 0x00: ProtocolVersion();
# --  opcode1 0x08: AuthLogin();
# --  opcode1 0x09: Logout();
# --  opcode1 0x0b: CharacterCreate();
# --  opcode1 0x0c: CharacterDelete();
# --  opcode1 0x0d: CharacterSelected();
# --  opcode1 0x0e: NewCharacter();
# --  opcode1 0x62: CharacterRestore();
# --  opcode1 0x68: RequestPledgeCrest();
# --  opcode1 0x01: MoveBackwardToLocation();
# --  opcode1 0x02: // Say  ... not used any more ??
# --  opcode1 0x03: EnterWorld();
# --  opcode1 0x04: Action();
# --  opcode1 0x09: Logout();
# --  opcode1 0x0a: AttackRequest();
# --  opcode1 0x0f: RequestItemList();
# --  opcode1 0x10: // RequestEquipItem ... not used any more, instead "useItem"
# --  opcode1 0x11: RequestUnEquipItem();
# --  opcode1 0x12: RequestDropItem();
# --  opcode1 0x14: UseItem();
# --  opcode1 0x15: TradeRequest();
# --  opcode1 0x16: AddTradeItem();
# --  opcode1 0x17: TradeDone();
# --  opcode1 0x1a: DummyPacket();
# --  opcode1 0x1b: RequestSocialAction();
# --  opcode1 0x1c: ChangeMoveType2();
# --  opcode1 0x1d: ChangeWaitType2();
# --  opcode1 0x1e: RequestSellItem();
# --  opcode1 0x1f: RequestBuyItem();
# --  opcode1 0x20: RequestLinkHtml();
# --  opcode1 0x21: RequestBypassToServer();
# --  opcode1 0x22: RequestBBSwrite();
# --  opcode1 0x23: DummyPacket();
# --  opcode1 0x24: RequestJoinPledge();
# --  opcode1 0x25: RequestAnswerJoinPledge();
# --  opcode1 0x26: RequestWithdrawalPledge();
# --  opcode1 0x27: RequestOustPledgeMember();
# --  opcode1 0x28: // RequestDismissPledge
# --  opcode1 0x29: RequestJoinParty();
# --  opcode1 0x2a: RequestAnswerJoinParty();
# --  opcode1 0x2b: RequestWithDrawalParty();
# --  opcode1 0x2c: RequestOustPartyMember();
# --  opcode1 0x2d: // RequestDismissParty
# --  opcode1 0x2e: DummyPacket();
# --  opcode1 0x2f: RequestMagicSkillUse();
# --  opcode1 0x30: Appearing(); //  (after death)
# --  opcode1 0x31: SendWareHouseDepositList();
# --  opcode1 0x32: SendWareHouseWithDrawList();
# --  opcode1 0x33: RequestShortCutReg();
# --  opcode1 0x34: DummyPacket();
# --  opcode1 0x35: RequestShortCutDel();
# --  opcode1 0x36: CannotMoveAnymore();
# --  opcode1 0x37: RequestTargetCanceld();
# --  opcode1 0x38: Say2();
# --  opcode1 0x3c: RequestPledgeMemberList();
# --  opcode1 0x3e: DummyPacket();
# --  opcode1 0x3f: RequestSkillList();
# --  opcode1 0x41: MoveWithDelta(); // MoveWithDelta    ... unused ?? or only on ship ??
# --  opcode1 0x42: RequestGetOnVehicle();
# --  opcode1 0x43: RequestGetOffVehicle();
# --  opcode1 0x44: AnswerTradeRequest();
# --  opcode1 0x45: RequestActionUse();
# --  opcode1 0x46: RequestRestart();
# --  opcode1 0x47: RequestSiegeInfo();
# --  opcode1 0x48: ValidatePosition();
# --  opcode1 0x49: // RequestSEKCustom
# --  opcode1 0x4a: //new StartRotating();
# --  opcode1 0x4b: //new FinishRotating();
# --  opcode1 0x4d: RequestStartPledgeWar();
# --  opcode1 0x4e: RequestReplyStartPledgeWar();
# --  opcode1 0x4f: RequestStopPledgeWar();
# --  opcode1 0x50: RequestReplyStopPledgeWar();
# --  opcode1 0x51: RequestSurrenderPledgeWar();
# --  opcode1 0x52: RequestReplySurrenderPledgeWar();
# --  opcode1 0x53: RequestSetPledgeCrest();
# --  opcode1 0x55: RequestGiveNickName();
# --  opcode1 0x57: RequestShowBoard();
# --  opcode1 0x58: RequestEnchantItem();
# --  opcode1 0x59: RequestDestroyItem();
# --  opcode1 0x5b: SendBypassBuildCmd();
# --  opcode1 0x5c: RequestMoveToLocationInVehicle();
# --  opcode1 0x5d: CannotMoveAnymoreInVehicle();
# --  opcode1 0x5e: RequestFriendInvite();
# --  opcode1 0x5f: RequestAnswerFriendInvite();
# --  opcode1 0x60: RequestFriendList();
# --  opcode1 0x61: RequestFriendDel();
# --  opcode1 0x63: RequestQuestList();
# --  opcode1 0x64: RequestQuestAbort();
# --  opcode1 0x66: RequestPledgeInfo();
# --  opcode1 0x67: RequestPledgeExtendedInfo();
# --  opcode1 0x68: RequestPledgeCrest();
# --  opcode1 0x69: RequestSurrenderPersonally();
# --  opcode1 0x6a: // Ride
# --  opcode1 0x6b: // send when talking to trainer npc, to show list of available skills, RequestAquireSkillInfo();//  --> [s] 0xa4;
# --  opcode1 0x6c: // send when a skill to be learned is selected, RequestAquireSkill();
# --  opcode1 0x6d: RequestRestartPoint();
# --  opcode1 0x6e: RequestGMCommand();
# --  opcode1 0x6f: RequestPartyMatchList();
# --  opcode1 0x70: RequestPartyMatchConfig();
# --  opcode1 0x71:  RequestPartyMatchDetail();
# --  opcode1 0x72: RequestCrystallizeItem();
# --  opcode1 0x73: RequestPrivateStoreManageSell();
# --  opcode1 0x74: SetPrivateStoreListSell();
# --  opcode1 0x75: //RequestPrivateStoreManageCancel(data, _client);
# --  opcode1 0x76: RequestPrivateStoreQuitSell();
# --  opcode1 0x77: SetPrivateStoreMsgSell();
# --  opcode1 0x78: // RequestPrivateStoreList
# --  opcode1 0x79: RequestPrivateStoreBuy();
# --  opcode1 0x7a: // ReviveReply
# --  opcode1 0x7b: RequestTutorialLinkHtml();
# --  opcode1 0x7c: RequestTutorialPassCmdToServer();
# --  opcode1 0x7d: RequestTutorialQuestionMark();
# --  opcode1 0x7e: RequestTutorialClientEvent();
# --  opcode1 0x7f: RequestPetition();
# --  opcode1 0x80: RequestPetitionCancel();
# --  opcode1 0x81: RequestGmList();
# --  opcode1 0x82: RequestJoinAlly();
# --  opcode1 0x83: RequestAnswerJoinAlly();
# --  opcode1 0x84: AllyLeave();
# --  opcode1 0x85: AllyDismiss();
# --  opcode1 0x86: RequestDismissAlly();
# --  opcode1 0x87: RequestSetAllyCrest();
# --  opcode1 0x88: RequestAllyCrest();
# --  opcode1 0x89: RequestChangePetName();
# --  opcode1 0x8a: RequestPetUseItem();
# --  opcode1 0x8b: RequestGiveItemToPet();
# --  opcode1 0x8c: RequestGetItemFromPet();
# --  opcode1 0x8e: RequestAllyInfo();
# --  opcode1 0x8f: RequestPetGetItem();
# --  opcode1 0x90: RequestPrivateStoreManageBuy();
# --  opcode1 0x91: SetPrivateStoreListBuy();
# --  opcode1 0x92: // RequestPrivateStoreBuyManageCancel
# --  opcode1 0x93: RequestPrivateStoreQuitBuy();
# --  opcode1 0x94: SetPrivateStoreMsgBuy();
# --  opcode1 0x95: // RequestPrivateStoreBuyList
# --  opcode1 0x96: RequestPrivateStoreSell();
# --  opcode1 0x97: // SendTimeCheckPacket
# --  opcode1 0x98: // RequestStartAllianceWar
# --  opcode1 0x99: // ReplyStartAllianceWar
# --  opcode1 0x9a: // RequestStopAllianceWar
# --  opcode1 0x9b: // ReplyStopAllianceWar
# --  opcode1 0x9c: // RequestSurrenderAllianceWar
# --  opcode1 0x9d: // RequestSkillCoolTime
# --  opcode1 0x9e: RequestPackageSendableItemList();
# --  opcode1 0x9f: RequestPackageSend();
# --  opcode1 0xa0: RequestBlock();
# --  opcode1 0xa1: // RequestCastleSiegeInfo
# --  opcode1 0xa2: RequestSiegeAttackerList();
# --  opcode1 0xa3: RequestSiegeDefenderList();
# --  opcode1 0xa4: RequestJoinSiege();
# --  opcode1 0xa5: RequestConfirmSiegeWaitingList();
# --  opcode1 0xa6: // RequestSetCastleSiegeTime
# --  opcode1 0xa7: MultiSellChoose();
# --  opcode1 0xa8: // NetPing
# --  opcode1 0xaa: RequestUserCommand();
# --  opcode1 0xab: SnoopQuit();
# --  opcode1 0xac: RequestRecipeBookOpen(); // we still need this packet to handle BACK button of craft dialog,
# --  opcode1 0xad: RequestRecipeBookDestroy();
# --  opcode1 0xae: RequestRecipeItemMakeInfo();
# --  opcode1 0xaf: RequestRecipeItemMakeSelf();
# --  opcode1 0xb0: // RequestRecipeShopManageList(data, client);
# --  opcode1 0xb1: RequestRecipeShopMessageSet();
# --  opcode1 0xb2: RequestRecipeShopListSet();
# --  opcode1 0xb3: RequestRecipeShopManageQuit();
# --  opcode1 0xb4: SnoopQuit();
# --  opcode1 0xb5: RequestRecipeShopMakeInfo();
# --  opcode1 0xb6: RequestRecipeShopMakeItem();
# --  opcode1 0xb7: RequestRecipeShopManagePrev();
# --  opcode1 0xb8: ObserverReturn();
# --  opcode1 0xb9: RequestEvaluate();
# --  opcode1 0xba: RequestHennaList();
# --  opcode1 0xbb: RequestHennaItemInfo();
# --  opcode1 0xbc: RequestHennaEquip();
# --  opcode1 0xc0: RequestPledgePower();
# --  opcode1 0xc1: RequestMakeMacro();
# --  opcode1 0xc2: RequestDeleteMacro();
# --  opcode1 0xc3: RequestBuyProcure();
# --  opcode1 0xc4: RequestBuySeed();
# --  opcode1 0xc5: DlgAnswer();
# --  opcode1 0xc6: RequestWearItem();
# --  opcode1 0xc7: RequestSSQStatus();
# --  opcode1 0xCA: GameGuardReply();
# --  opcode1 0xcc: RequestSendFriendMsg();
# --  opcode1 0xcd: RequestShowMiniMap();
# --  opcode1 0xce: // MSN dialogs so that you dont see them in the console.
# --  opcode1 0xcf: RequestRecordInfo();//record video
# --  opcode1 0xee:  RequestChangePartyLeader();
# --  opcode1 0xd0:
#
#	OPCODE2 (just if opcode1 == 0xd0)
#       --  opcode2 1: RequestOustFromPartyRoom();
#       --  opcode2 2: RequestDismissPartyRoom();
#       --  opcode2 3: RequestWithdrawPartyRoom();
#       --  opcode2 4: RequestChangePartyLeader();
#       --  opcode2 5: RequestAutoSoulShot();
#       --  opcode2 6: RequestExEnchantSkillInfo();
#       --  opcode2 7: RequestExEnchantSkill();
#       --  opcode2 8: RequestManorList();
#       --  opcode2 9: RequestProcureCropList();
#       --  opcode2 0x0a: RequestSetSeed();
#       --  opcode2 0x0b: RequestSetCrop();
#       --  opcode2 0x0c: RequestWriteHeroWords();
#       --  opcode2 0x0d: RequestExAskJoinMPCC();
#       --  opcode2 0x0e: RequestExAcceptJoinMPCC();
#       --  opcode2 0x0f: RequestExOustFromMPCC();
#       --  opcode2 0x10: RequestExPledgeCrestLarge();
#       --  opcode2 0x11: RequestExSetPledgeCrestLarge();
#       --  opcode2 0x12: RequestOlympiadObserverEnd();
#       --  opcode2 0x13: RequestOlympiadMatchList();
#       --  opcode2 0x14: RequestAskJoinPartyRoom();
#       --  opcode2 0x15: AnswerJoinPartyRoom();
#       --  opcode2 0x16: RequestListPartyMatchingWaitingRoom();
#       --  opcode2 0x17: RequestExitPartyMatchingWaitingRoom();
#       --  opcode2 0x18: RequestGetBossRecord();
#       --  opcode2 0x19: RequestPledgeSetAcademyMaster();
#       --  opcode2 0x1a: RequestPledgePowerGradeList();
#       --  opcode2 0x1b: RequestPledgeMemberPowerInfo();
#       --  opcode2 0x1c: RequestPledgeSetMemberPowerGrade();
#       --  opcode2 0x1d: RequestPledgeMemberInfo();
#       --  opcode2 0x1e: RequestPledgeWarList();
#       --  opcode2 0x1f: RequestExFishRanking();
#       --  opcode2 0x20: RequestPCCafeCouponUse();
#       --  opcode2 0x22: RequestCursedWeaponList();
#       --  opcode2 0x23: RequestCursedWeaponLocation();
#       --  opcode2 0x24: RequestPledgeReorganizeMember();
#       --  opcode2 0x26: RequestExMPCCShowPartyMembersInfo();
#       --  opcode2 0x27: RequestDuelStart();
#       --  opcode2 0x28: RequestDuelAnswerStart();
#       --  opcode2 0x29: RequestConfirmTargetItem();
#       --  opcode2 0x2a: RequestConfirmRefinerItem();
#       --  opcode2 0x2b: RequestConfirmGemStone();
#       --  opcode2 0x2c: RequestRefine();
#       --  opcode2 0x2d: RequestConfirmCancelItem();
#       --  opcode2 0x2e: RequestRefineCancel();
#       --  opcode2 0x2f: RequestExMagicSkillUseGround();
#       --  opcode2 0x30: RequestDuelSurrender();

# -- LOGIN SERVER -- 
# 
# OPCODE1
#
# --  opcode1  0x07: AuthGameGuard();
# --  opcode1  0x00: RequestAuthLogin();
# --  opcode1  0x05: RequestServerList();
# --  opcode1  0x02: RequestServerLogin();


# List of not checked OPCODES ---> if server receive a Packet that has 
# OpCode into this protected list, it will not be checked by Flood Protector. 
# If you want disable check on a LoginServer OpCode, just provide into the
# list values as "L,OpCodeA;L,OpCodeB;....", meanwhile if you want to disable 
# check on a Gameserver Opcode, just provide into the list values as "G,OpCode1".
# If the Gameserver OpCode1 is 0xd0, you "can" specify which OpCode2 you want to
# allow, "G,0xd0,OpCode2A,OpCode2B...". If you want make something mixed, just
# provide mixed values: 
#
# Example ListOfProtectedOpCodes1=G,0x48;G,0x04;L,0x07;G,0xd0,0x0a;
#
# This means "allow my server to be flooded by ValidationPotiion Packets, Action Packets, 
# AuthGameGuard Packets and RequestSetSeed Packets" .
ListOfProtectedOpCodes=G,0x48;G,0x01;G,0x2f;G,0x0a;G,0x45;G,0x04;G,0x4a;G,0x4b;G,0x14;G,0x37;G,0x88;G,0x68;

  • 0
Posted

visualVM is integrated to JDK... Since JDK 6.

http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/intro.html

 

MMOCore are setted up on default, and as L2JFrozen uses same core than aCis (which use same core than L2JFreya), it shouldn't be the problem.

 

Try to tweak, back to 100/150 values

# NetworkBackLog = 500

It sounds suspicious.

  • 0
Posted

visualVM is integrated to JDK... Since JDK 6.

http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/intro.html

 

MMOCore are setted up on default, and as L2JFrozen uses same core than aCis (which use same core than L2JFreya), it shouldn't be the problem.

 

Try to tweak, back to 100/150 values

# NetworkBackLog = 500

It sounds suspicious.

what about jre7?
  • 0
Posted

[gr] 2 pragmata sou laggaroun to server sou

1) h geo poy exeis sto server an einai ayth pou exoun sth selida tou frozen tote standar ftaiei h geodata bres allh geo na baleis

2) des to pososto ths cpu sou an exeis jdk 7 tote standar 8a douleuei panw apo to 10% dokimase thn jdk 6.33 kai 8a deis thn cpu sou na phgenai sto 1%

 

  • 0
Posted

you'll need to optimization your machine,read some guides on the net.

 

about linux and windows,yeah for sure linux are better than windows for l2server,but windows can't cause this problem while you got just 100 ppl online..

Guest
This topic is now closed to further replies.


×
×
  • Create New...