P0nk
850d44d549
Minor cleanup - pom and encryption package
2021-07-18 16:05:34 +02:00
P0nk
5f149f0a27
Configure logging to be less verbose
...
Packet logging to the console is especially concise
2021-07-18 15:40:43 +02:00
P0nk
9e3f3cc036
Restructure "net" packages
2021-07-18 14:26:23 +02:00
P0nk
11e83522d6
Log packets in dedicated handlers instead of in encoder/decoder
2021-07-18 14:09:39 +02:00
P0nk
ab03dd3109
Minor cleanup
2021-07-17 11:24:11 +02:00
P0nk
6e6fbf3be7
Consistently use Hwid domain object, fix login bypass
...
Login bypass (skip pin/pic) was broken due to an
inconsistency in hwid format.
2021-07-15 23:51:01 +02:00
P0nk
cce85ea663
Use Hwid for login bypass
2021-07-15 22:08:19 +02:00
P0nk
81393392ab
Clean up Apache Mina, goodbye!
2021-07-13 22:10:01 +02:00
P0nk
94e1125eca
Move some remaining bits and pieces to netty implementation, start cleaning up
2021-07-13 21:54:07 +02:00
P0nk
fc694f1b0f
Able to log incoming and outgoing packets
2021-07-13 21:50:19 +02:00
P0nk
3de827553e
Fix idle state disconnecting regardless of received pong
2021-07-12 19:52:55 +02:00
P0nk
5a7d8e6b1f
Use MapleClient for session management
...
First working version of the Netty implementation,
but there's a lot remaining to be done.
2021-07-11 18:56:45 +02:00
P0nk
86224f5152
Merge branch 'master' into netty
2021-07-11 15:20:00 +02:00
P0nk
b8781ee209
Merge branch 'master' into fix-tools
...
# Conflicts:
# pom.xml
2021-07-11 14:53:11 +02:00
P0nk
14a405adb2
Consistent handling of wz files and their paths
2021-07-10 17:49:04 +02:00
P0nk
fcb43af8e3
Minor refactors
2021-07-10 13:52:19 +02:00
P0nk
0e98abff41
Minor renaming and refactoring
2021-06-29 20:27:32 +02:00
P0nk
828c3c5345
Add Hwid class for "nibble hwid" part of "remote host"
2021-06-29 20:26:14 +02:00
P0nk
d34798649b
Add dedicated host hwid cache, further refactor session coordinator
2021-06-29 08:35:21 +02:00
P0nk
671313ab57
Encapsulate hwid validation
2021-06-29 08:29:29 +02:00
P0nk
50e2b909f1
Use Instant instead of long for time measurement
2021-06-28 12:29:19 +02:00
P0nk
5bc2f47883
Move session init management to new class
2021-06-28 12:00:09 +02:00
P0nk
69a4dd8c6d
Factor out duplicated code that adds remote host to pool
2021-06-28 11:02:06 +02:00
P0nk
b35c4d3de8
Handle hwid assocation expiry in dedicated class
2021-06-28 10:37:06 +02:00
P0nk
2c18f7a4a8
Move the remaining session database logic
2021-06-27 21:35:43 +02:00
P0nk
8041ccd6bd
Move some session database logic to dedicated class
...
I need to clean up this class before attempting
to migrate away from IoSession for session handling.
2021-06-27 09:44:55 +02:00
P0nk
b19f65f7ee
Encapsulate ip address logic in new class
2021-06-26 23:40:59 +02:00
P0nk
f6aca2018e
Packet sending during Netty migration
2021-06-25 14:43:05 +02:00
P0nk
80cacd609a
Disconnect client if idle
...
Thanks SharpAceX for Guida,
which I used as a reference.
2021-06-24 22:09:21 +02:00
P0nk
5651bee2b5
Move client transition state and hostAddress to fields
2021-06-23 19:03:54 +02:00
P0nk
9638d5c417
Initial Netty implementation for networking
...
Split into 1 LoginServer and 1 ChannelServer per channel.
There is still a lot of cleanup and refactoring to be done.
Currently, the reliance on IoSession holding client state
is the most pressing issue to be addressed.
2021-06-23 18:20:08 +02:00
P0nk
0fa6ad0e24
Refactor PacketProcessor, split into more methods
2021-06-23 16:09:43 +02:00
P0nk
5431150362
Set up packet codec and channel initialization
2021-06-22 20:32:51 +02:00
P0nk
171215e653
Clean up old In/OutPacket
2021-06-22 17:15:19 +02:00
P0nk
442684d852
Merge branch 'master' into netty
...
# Conflicts:
# pom.xml
2021-06-21 22:15:00 +02:00
P0nk
72ff8d563b
Refactor packet string charset
2021-06-21 22:03:20 +02:00
P0nk
4fd64884f2
Simplify getBytes and add tests for it
2021-06-21 21:45:06 +02:00
P0nk
aaf4b558f3
Finish InPacket & OutPacket implementations
2021-06-20 21:27:50 +02:00
P0nk
f3faee2e16
Add OutPacket interface and ByteBuf implementation
...
Replacement for LittleEndianWriter, GenericLittleEndianWriter,
and MaplePacketLittleEndianWriter.
2021-06-20 21:20:39 +02:00
P0nk
00abbb4acd
Add InPacket interface and ByteBuf implementation
...
Replacement for LittleEndianAccessor, SeekableLittleEndianAccessor,
GenericLittleEndianAccessor, and GenericSeekableLittleEndianAccessor.
2021-06-20 21:20:38 +02:00
P0nk
23bad12f8c
Netty WIP
...
Implementing ByteBuf backed In/OutPacket first in a separate branch
2021-06-15 22:12:40 +02:00
James McDowell
e967294eb9
Add back in NPC conversation names
...
The names of the npc conversations were useful for context. Added them back in.
2021-05-26 19:41:27 +10:00
James McDowell
9128329d37
Swapped from list to set to prevent duplicates
...
Use a set instead, clone instead of adding directly to the list.
2021-05-20 19:16:22 +10:00
James McDowell
cff3d3df56
Added the ability to specify a custom rebirth npc id, which is automatically added to the list of scriptable npcs for overriding. Changed scriptable npcs to use config instead of a constants file, so that users can easily modify them without digging into the code and requiring a rebuild.
2021-05-16 14:46:38 +10:00
James McDowell
45ca7009c8
Updated to allow a generic rebirth npc id to be passed through and used for rebirthing if it's enabled.
2021-05-16 10:32:51 +10:00
RubenD96
ed8e6775df
WhisperHandler reformatting the case of target == null
2021-04-23 15:11:53 +02:00
RubenD96
ade50bad5e
Chase functionality (/c name) to warp to the exact location of the target
2021-04-22 22:03:59 +02:00
RubenD96
f6452b2320
Reformat ChangeMapHandler before editing
2021-04-22 21:55:49 +02:00
RubenD96
215abb3198
Small bugfix for WhisperHandler after testing
2021-04-22 21:55:32 +02:00
RubenD96
24cfbcce40
Untested rework of WhisperHandler
2021-04-20 17:25:52 +02:00