P0nk
7661cd0f75
Redo ip bans - reduce amount of db queries on login
...
Works by loading all ip bans on startup and querying the collection in memory
rather than making calls on every login.
2024-09-30 19:31:21 +02:00
P0nk
167937bb88
Check banned hwid on login
2024-09-29 22:22:23 +02:00
P0nk
c0ee1f8ffe
Encapsulate account creation in AccountService
2024-09-29 19:33:20 +02:00
P0nk
a307afae3c
Unify ban handling on login
2024-09-29 17:55:51 +02:00
P0nk
50524a7740
Show correct ban reason
2024-09-29 17:30:09 +02:00
P0nk
b45620154c
LoginState enum
2024-09-29 16:22:32 +02:00
P0nk
5450c29178
Reduce login state updates, fix multi-login on same acc
2024-09-29 15:55:25 +02:00
P0nk
fa666c98e6
Rename loginattempt
2024-09-29 14:24:56 +02:00
P0nk
4e1aa1eb1a
Rename NOT_LOGGED_IN -> LOGGED_OUT
2024-09-29 09:15:01 +02:00
P0nk
a580e44bc9
Rename AccountService methods
2024-09-29 09:14:32 +02:00
P0nk
da4a467453
Set in transition on log in, now able to enter the game
...
The state is not set properly on logout though, so once you log out you can't log back in
2024-09-29 08:22:26 +02:00
P0nk
5595f5763b
Log in through AccountService
2024-09-28 18:30:41 +02:00
P0nk
55c9d4abbb
Log out through AccountService
2024-09-28 18:26:23 +02:00
P0nk
93bbe868cb
Use LoginState everywhere
2024-09-28 07:02:05 +02:00
P0nk
ec39f0fa06
Avoid additional db query to get login state during login
2024-09-28 06:55:45 +02:00
P0nk
439280947c
Save gender to PG
2024-09-27 23:20:02 +02:00
P0nk
5abae50be5
Rework login, get account from PG
2024-09-27 22:52:12 +02:00
P0nk
2044166967
Save pic to PG
2024-09-27 17:34:36 +02:00
P0nk
f33d4fbc1c
Save pin to PG
2024-09-27 06:50:07 +02:00
P0nk
0f2ef341ce
Save accepted ToS to PG
2024-09-26 21:14:52 +02:00
P0nk
647e67f6e8
Auto-create account in both MySQL and PG
2024-09-26 07:59:27 +02:00
P0nk
1d5c26e67c
Remove SHA-512 password migration
2024-09-26 06:48:13 +02:00
P0nk
767c4402e7
Route chr creation to dummy CharacterCreator
2024-09-25 07:21:27 +02:00
P0nk
00fc3ed1a1
Handle created chr with spec
2024-09-25 06:33:03 +02:00
P0nk
98d76ad45e
Prepare centralized chr creation
2024-09-25 06:32:43 +02:00
P0nk
719b079cbc
Refactor unnecessary wrapper boolean
2024-09-13 21:47:52 +02:00
P0nk
559fe2d550
Merge branch 'refs/heads/master' into feat/postgresql-database
...
# Conflicts:
# config.yaml
# docker-compose.yml
# pom.xml
# src/main/java/client/Character.java
# src/main/java/client/Client.java
# src/main/java/client/MonsterBook.java
# src/main/java/client/command/commands/gm0/BuyBackCommand.java
# src/main/java/client/processor/stat/AssignAPProcessor.java
# src/main/java/config/ServerConfig.java
# src/main/java/net/server/channel/Channel.java
# src/main/java/net/server/channel/handlers/AbstractDealDamageHandler.java
# src/main/java/net/server/channel/handlers/BuddylistModifyHandler.java
# src/main/java/net/server/channel/handlers/CloseRangeDamageHandler.java
# src/main/java/net/server/channel/handlers/EnterMTSHandler.java
# src/main/java/net/server/channel/handlers/NPCTalkHandler.java
# src/main/java/net/server/channel/handlers/RangedAttackHandler.java
# src/main/java/net/server/channel/handlers/SummonDamageHandler.java
# src/main/java/net/server/channel/handlers/UseCashItemHandler.java
# src/main/java/net/server/handlers/login/CreateCharHandler.java
# src/main/java/net/server/world/World.java
# src/main/java/scripting/npc/NPCConversationManager.java
# src/main/java/server/ItemInformationProvider.java
# src/main/java/server/life/Monster.java
# src/main/java/server/life/MonsterInformationProvider.java
# src/main/java/server/maps/MapleMap.java
# src/main/java/tools/PacketCreator.java
# src/test/java/service/NoteServiceTest.java
# src/test/java/testutil/Any.java
2024-09-02 20:43:55 +02:00
P0nk
4e743128e9
Remove all wildcard imports
2024-05-22 08:33:44 +02:00
Silwhoon
a7931c3e4d
New characters now utilise the MakeCharInfo.img data in the WZ files
2024-02-05 16:03:41 +00:00
P0nk
f33df59f49
Move some Client#forceDisconnect calls to TransitionService
2023-08-11 22:00:33 +02:00
P0nk
f6d06ba82a
Extract "char list" from Client to handler
2023-08-06 21:14:32 +02:00
P0nk
48d9aaa871
Clean up Client - visibleWorlds & canRequestCharlist
...
canRequestCharlist is a relic from the past when "View all char"
functionality was hacked together with wrong packets.
visibleWorlds I'm less sure about. I suppose it's useful if you add world
(via command) while someone is still on the login screen.
But the functionality of adding/removing worlds live is a recipe for disaster
and will eventually (likely) be removed.
2023-08-06 20:02:39 +02:00
P0nk
f44083aeba
Refactor Client#finishLogin
2023-08-06 17:26:34 +02:00
P0nk
2686b2b02d
Disconnect client by throwing exception in handler
...
This makes it easier to add checks in handlers, which should improve security over time.
I think this approach is more readable and testable than calling Client#disconnect straight up,
while it also decentralizes the handling.
2023-08-06 15:48:49 +02:00
Đạt Nhân Trương
0ef3e69638
Clean up code, replace switch and try-with-resource where possible.
2022-08-07 21:51:10 +07:00
P0nk
513c9b615d
Rework View all characters - fix packet and limit max chrs
...
Thanks to Lehava#4668 for finding the packet structure
2022-03-26 15:51:16 +01:00
P0nk
084e7b22fa
Consolidate HexTool methods and add more tests
2022-02-14 19:48:21 +01:00
P0nk
c879e36a9c
Migrate last set of calls to FilePrinter, delete FilePrinter
2022-02-10 19:53:22 +01:00
P0nk
0c60606b4e
Migrate another batch of FilePrinter users to slf4j.Logger
...
Another FilePrinter method removed.
2022-02-08 21:08:59 +01:00
P0nk
4efd356cbf
Turn item id magic numbers into constants
2021-11-07 11:39:09 +01:00
P0nk
6be6ea9927
Reformat and clean up "net" package
2021-09-09 23:26:02 +02:00
P0nk
3370152d58
Rename and clean up MapleFamily
2021-09-09 21:16:56 +02:00
P0nk
b07e6799dc
Rename and clean up MapleClient
2021-09-09 21:13:48 +02:00
P0nk
7dc3a2159a
Rename and clean up MapleCharacter
2021-09-09 21:09:45 +02:00
P0nk
1532f66bdf
Remove "Maple" prefix from packet handler names
2021-09-06 20:50:35 +02:00
P0nk
da2d8abc56
Handlers read from InPacket instead of SeekableLittleEndianAccessor
2021-08-22 22:10:19 +02:00
P0nk
8f6860d7d7
All packet creating methods now create Packet instead of byte[]
...
This commit got way too big...
- Remove deprecated methods for sending packets
- Favor OutPacket & Packet over MaplePacketLittleEndianWriter, LittleEndianWriter, and byte array
- Split up some packet creating methods into separate classes
2021-08-21 01:36:51 +02:00
P0nk
e184f25184
Remove "Maple" prefix from MaplePacketCreator name
2021-08-19 21:31:57 +02:00
P0nk
8c4d3092a7
Remove "Maple" prefix from MapleSessionCoordinator name
2021-08-18 15:47:01 +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