Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Should compile correctly on newer cygwin now
|
|
This is so nobody gets too confused if a GM is doing @commands as
an alternate character. Since account ID is public to anyone on
the server anyway, it shouldn't be a security risk.
|
|
|
|
This reverts commit 07ac029ab049cd8fdec5f271a814c2459edeefb8.
|
|
It is acting funny and being mean to innocent users
|
|
.29.1 has a bug that spams ChangeDir packets like crazy and my checks
had some problems with this, causing players to be disconnected while
navigating through areas with large amounts of blocked tiles. Hopefully
someone remembers to re-enable this code when 1.0 is the officially
supported version.
|
|
|
|
Signed-off-by: Jared Adams <jaxad0127@gmail.com>
|
|
Also changed the degree of freedom to 0
|
|
server
|
|
Oops :(
|
|
It's now possible to run 'make' in any of the src/ subdirs and
have it build properly. Moved some tools including eathena-monitor
to src/tools - run 'make tools' to build. CFLAGS, etc are now in
the 'make.defs' file. Requires GNU make.
|
|
The limits were interfering with repetative NPCs such as Agostine
|
|
Breakdancing is fun. Spinbotting isn't..
|
|
Pre-mana clients spam this packet while walking into blocked tiles
|
|
I had forgotten to do this when I removed the functions themselves.
|
|
map string using pc_setpos()
Noted (and solution suggested) by Freeyorp
|
|
|
|
This is unused and gave false alarms about rid not being attached when it didn't need one.
|
|
|
|
This takes one parameter, an entity, and returns the id of the class associated with a mob if it is a mob, and fails otherwise.
|
|
|
|
Only flag used at the moment is registration enabled/disabled (bit 0x00000001).
|
|
|
|
|
|
map.
This patch models its behavior partly on that of movenpc and the
atcommand npcmove.
|
|
|
|
|
|
The idea behind this is to keep abusive clients from flooding the
server. Everything from over-voracious auto pick-up to exploitation
of NPC vulnerabilities is mitigated by this. It will also eventually
reduce server traffic, load, and possibly lag.
Config options in battle_athena.conf:
packet_spam_flood (default 30)
packet_spam_threshold (default 2)
packet_spam_kick (default 1)
Each packet type has a specified allowed incoming rate in milliseconds,
if this rate is exceeded the packet is ignored. If over 'flood' overruns
in 'threshold' seconds are detected, a flood is logged and a kick may be
triggered depending on the 'kick' config boolean.
The packet rates and flood thresholds have been tested and tweaked
on a live server, this should only affect abusive clients. Only
extremely abusive clients will trigger a log/kick condition.
This probably obsoletes the trade and kick spam code.
|
|
|
|
player's zeny"
This reverts commit bf400032e3e3699c71cf4dc73a22a230a27cf837.
|
|
|
|
|
|
Addresses issue introduced by d6c7054 (by me).
|
|
Prevents server whisper name from containing other trailing data as
memcpy will not check for a terminating null character in the source.
|
|
Modifies the previous fix to now cancel if an item is deleted from a
player's inventory, including items that are used/consumed.
|
|
Also changed up packet 0x0195, the client can now understand this packet
|
|
Modifies three packets to no longer transmit another player's base
level, instead reporting zero.
|
|
|
|
|
|
|
|
This fixes the issue where a player could drop/trade/store an equipped
item and still retain it's attack/def/etc buffs.
|
|
It still needs to be refactored more but this'll do for now.
|
|
|
|
I ran this by fate and he had no objections. If there are problems
with flooding/resource consumption we can put some rate limits in
the packet handlers. (That's on my TODO)
|
|
|
|
And added them to .gitignore. These three files are generated on
the fly by flex and bison during the build process and should not
be in the repository.
|
|
Writing the DB is resource intensive and should be done as little as
possible. Putting it on a timer is intended to prevent buggy/malicious
clients from consuming large amounts of resources. This patch may
cause minor inconsistancies between the login and character server
databases, as they are both doing delayed writes, probably on different
schedules. I'm unable to see any huge consequences to this.
|
|
|