P0nk
a7cf7b90ce
Clean up the old MapleArrowFetcher
2021-07-10 18:12:53 +02:00
P0nk
bc6593fd81
Move MapleArrowFetcher to the main module
2021-07-10 18:12:36 +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
Ponk
7ea26bd052
Merge pull request #44 from P0nk/bytebuf-packets
...
Implement packets on top of Netty's ByteBuf
2021-06-21 22:11:21 +02:00
P0nk
72ff8d563b
Refactor packet string charset
2021-06-21 22:03:20 +02:00
P0nk
c4c5700d32
Add basic unit tests for ByteBufOutPacket
2021-06-21 21:45:30 +02:00
P0nk
4fd64884f2
Simplify getBytes and add tests for it
2021-06-21 21:45:06 +02:00
P0nk
6d02a95273
Simplify test setup for written bytes
2021-06-20 23:02:01 +02:00
P0nk
926371c9a7
Add unit tests for ByteBufInPacket
2021-06-20 22:53:20 +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
P0nk
4dc0935391
Reformat MapleClient
...
Now uses 4 space indentation
2021-06-08 19:32:06 +02:00
Ponk
eb7ee9dabe
Merge pull request #33 from wejrox/Custom-rebirth-npc
...
Custom rebirth npc ID
2021-05-31 21:13:29 +02:00
James McDowell
136ea68ab3
Updated the rebirth NPC to use GraalJS
2021-05-26 19:45:58 +10:00
James McDowell
ae744aa870
Merge remote-tracking branch 'upstream/master' into Custom-rebirth-npc
2021-05-26 19:44:58 +10: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
Ponk
2193057fce
Merge pull request #41 from P0nk/streamline-setup
...
Streamline setup
2021-05-24 21:04:50 +02:00
P0nk
ef12275f35
Move db stuff to its own directory, update README
2021-05-24 20:29:59 +02:00
P0nk
c514c303c7
Increase db init timeout
...
60 seconds might not be enough during the initial
Docker db setup, but 90 seconds should be plenty.
2021-05-24 20:26:18 +02:00
P0nk
75078a5fa1
Add sql script for basic admin account
2021-05-24 08:25:41 +02:00
Ponk
0b17725e8e
Merge pull request #35 from ronancpl7/fix-change-maps-disorder
...
Fix mob status crash & dmg from map hazard
2021-05-23 07:44:17 +02:00
Ronan Lana
3d5db5d79c
fix: incurred ambiguity import
2021-05-22 14:48:44 -03:00
Ronan Lana
d330376706
fix: missed stream import
2021-05-22 11:56:37 -03:00
Ponk
f01452dd87
Merge pull request #21 from P0nk/java-16-and-graal
...
Upgrade to Java 16 and GraalJS script engine
2021-05-21 21:23:50 +02:00
P0nk
d9d63a1b44
Refactor event max lobbies - is no longer a range
...
It's no longer a range because it:
1. Makes no sense for it to be a range
2. Makes for simpler scripts since returning a JS array is a hassle with Graal
2021-05-21 20:54:51 +02:00
P0nk
095008a20f
Fix event scripts' getEligibleParty
...
Cannot return a JavaScript array straight up
(otherwise you'll get a PolyglotMap):
it has to be converted first from inside the script.
2021-05-21 19:09:40 +02:00
P0nk
bcefd42093
Handle reactor scheduling outside of script
...
No longer need to make all invocations synchronized
2021-05-21 08:15:01 +02:00
P0nk
f9aec05779
Update GraalVM to latest version (21.1.0)
2021-05-20 22:22:26 +02:00