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
d00b4ed678
Rename "temp_ban_timestamp" -> "temp_banned_until"
2024-09-29 16:34:04 +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
902f1a154e
Log out in PG on exit game
...
Can nog log in, enter game, exit game and re-login successfully.
2024-09-29 09:26:55 +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
0bb14e415e
Log in through AccountService on player login
2024-09-29 07:52:42 +02:00
P0nk
0a8591aa08
Merge "serverTransition" and "inTransition" fields
...
They serve the same purpose, no point in separating
2024-09-29 07:43:47 +02:00
P0nk
813768ec47
Remove AddWorld,AddChannel,RemoveWorld,RemoveChannel cmds
...
These are incredibly error prone and hinder the database migration work.
2024-09-29 07:32:20 +02:00
P0nk
5595f5763b
Log in through AccountService
2024-09-28 18:30:41 +02:00
P0nk
1be775394e
Disable slow tests that don't provide much value
2024-09-28 18:30:31 +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
082e0c0486
Save chr slots to PG
2024-09-27 17:59:26 +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
c7f835da0d
Add DatabaseTest to easily test repositories
2024-09-26 19:51:18 +02:00
P0nk
647e67f6e8
Auto-create account in both MySQL and PG
2024-09-26 07:59:27 +02:00
P0nk
bf9c02bc16
Fix failed chr save due to null jail expiration
2024-09-26 07:59:11 +02:00
P0nk
1d5c26e67c
Remove SHA-512 password migration
2024-09-26 06:48:13 +02:00
P0nk
b85233359f
Save new chr to PG (doesn't work yet because no account)
2024-09-25 18:31:38 +02:00
P0nk
7335914695
Simplify sp saving
2024-09-25 18:07:50 +02:00
P0nk
b4e673baab
Make some chr stats nullable to ease migration to PG
2024-09-25 17:48:12 +02:00
P0nk
767c4402e7
Route chr creation to dummy CharacterCreator
2024-09-25 07:21:27 +02:00
P0nk
a9967d53b1
Fix chr loading due to "monster_card" table not found
2024-09-25 06:58:19 +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
0c9643fd7e
CharacterSaver integration test with Testcontainers
2024-09-15 11:41:03 +02:00
P0nk
ce5dee39ae
Reorder migration scripts - move acc+chr creation earlier
2024-09-14 17:48:20 +02:00
P0nk
e57d2a9ee2
Create account, chr tables & save chr to Postgres
2024-09-14 17:44:48 +02:00
P0nk
f827e23ccc
Clean up rewardpoints
2024-09-14 15:39:06 +02:00
P0nk
f8726640c3
Remove configurable language feature
2024-09-14 15:34:01 +02:00
P0nk
4778482cdd
Remove quest point feature
2024-09-14 15:02:51 +02:00
P0nk
7297cd09b6
Separate PG from MySQL chr saving
2024-09-14 14:56:15 +02:00
P0nk
08eeeb54dc
Rename ...Dao -> ...Repository
2024-09-14 12:06:09 +02:00
P0nk
abbec8120e
Restructure chr saving - gather stats in record
2024-09-14 11:57:54 +02:00
P0nk
23a8a33e5f
Move transaction handling to CharacterSaver
2024-09-13 23:59:29 +02:00
P0nk
758347f7bc
Small refactor of disconnectInternal for readability
2024-09-13 23:23:35 +02:00
P0nk
1b6c0167de
Fix buddy staying online in buddy list if dc in cash shop
2024-09-13 23:17:42 +02:00
P0nk
8bce0922d9
Fix broken global drops since merge from master
2024-09-13 23:02:12 +02:00
P0nk
f41268cdde
Handle disconnect solely in TransitionService
2024-09-13 22:59:55 +02:00
P0nk
719b079cbc
Refactor unnecessary wrapper boolean
2024-09-13 21:47:52 +02:00
P0nk
7bd5fa387d
Merge branch 'refs/heads/master' into feat/postgresql-database
2024-09-13 21:29:50 +02:00
P0nk
09a75e89c9
Merge branch 'refs/heads/master' into feat/postgresql-database
...
# Conflicts:
# src/main/java/server/life/MonsterInformationProvider.java
# src/main/java/server/maps/MapleMap.java
2024-09-03 17:45:27 +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
dbf1a1bb36
Fix global drops thread issue
...
This randomly caused global drops to stop working after a while.
Originally reported by Crabo of MapleHorizons.
2024-08-28 21:22:47 +02:00
P0nk
5064ee936a
Fix staggered exploding mesos
...
Thanks teto: "the staggering should only go up to 400ms [attack.attackDelay + (index++ % 5) * 100], and the total delay should be capped at 1000ms according to the BMS implementation"
2024-08-27 07:41:24 +02:00
P0nk
acac203e42
Scheduler free timing for reactor drops
2024-08-20 20:32:33 +02:00
P0nk
cdd1c8cb61
Proper timing on removing exploded meso
...
No longer using scheduling on server side but rather
a delay value inherent to the "remove item from map" packet.
2024-08-20 20:13:01 +02:00
P0nk
439753eb6d
Fix drop delay for Meso Explosion
2024-08-20 19:44:16 +02:00
P0nk
e30700de66
Fix drop delay from summon attack
2024-08-17 21:27:43 +02:00
P0nk
994d1723b6
Remove unnecessary "spawn loot on animation" feature
...
No longer needed since item drop timing is now dictated by the client
since two commits back.
2024-08-17 19:14:04 +02:00
P0nk
2d40a89c55
Overload damageMonster for when no delay is needed
2024-08-17 19:13:38 +02:00
P0nk
802cc2b5f5
Use delay from packets for drop timing
2024-08-17 19:13:36 +02:00
P0nk
2ffca90d29
Add attack delay to AttackInfo
...
Meant to be used in item drop packet for timing handled by the client
rather than scheduling item drop packets on the server.
2024-08-14 07:45:06 +02:00
P0nk
cad10c4d5c
Remove rebirth system
2024-07-19 17:16:14 +02:00
P0nk
3850b63cec
Add migration for <v0.14.0 to fix shop dc
2024-07-17 19:24:19 +02:00
P0nk
a7df8a4f49
Remove banish scroll from WZ files
2024-07-17 18:50:44 +02:00
P0nk
7071b13e41
Remove banish scroll from shops
2024-07-17 18:39:50 +02:00
P0nk
2324ae7f9e
Refactor BanishInfo - make it a record
2024-07-17 18:11:50 +02:00
P0nk
402163c33d
Remove "banishable town scroll" feature
2024-07-17 17:45:38 +02:00
P0nk
3356e42e71
Remove "spikes avoid banish" feature
2024-07-16 20:17:21 +02:00
P0nk
205e263255
Specify required Java version
2024-07-16 20:16:26 +02:00
P0nk
5a4bdd343c
Fix Energy charge crashing certain other players
...
Crabo in #bug-report (2024-06-10):
"(...) this will crash everyone in the map besides the bucc and 1 character, when a bucc (or TB) charges energy and a character with an ID that's a multiple of 102 is in the same map (and the energy reaches that number so if character ID is 204 it will reach that after 2 hits and DC the whole map besides the bucc and that char with id 204).
Thanks to others for helping me fix it. Thought I'd report it!"
2024-06-16 19:09:21 +02:00
P0nk
1791365e0f
Fix able to get package from Cash shop surprise
...
Packages aren't real items and crash the client.
2024-06-16 16:06:29 +02:00
P0nk
5aeed01e38
Fix not using the selected Cash shop surprise
...
If you have multiple, it would always use the first one. Now it uses whichever you select (as expected).
2024-06-16 15:08:48 +02:00
P0nk
6ab1af99da
Add tests for CashShopSurpriseHandler
2024-06-16 13:56:54 +02:00
P0nk
c7b2d218ef
Fix count not being updated after last Cash shop surprise
2024-06-16 12:59:30 +02:00
P0nk
01ae462b72
Refactor CashShop - add constants for cash types
2024-06-16 12:19:16 +02:00
P0nk
b67b29def5
Fix cash shop surprise count not properly updated on usage
...
This reverts the hacky solution made in db82cbcfae
2024-06-15 08:31:24 +02:00
P0nk
4e743128e9
Remove all wildcard imports
2024-05-22 08:33:44 +02:00
P0nk
2ed35db216
Add IntelliJ code style settings (no wildcard imports)
2024-05-22 08:06:46 +02:00
P0nk
9fe6ba4483
Add new wz files zip (reduced size by ~400mb)
...
Removed: Base.wz, Effect.wz, Morph.wz, Sound.wz, TamingMob.wz
2024-05-21 22:47:47 +02:00
P0nk
dee8651e61
Add DevtestCommand to easily test without restarting server
2024-05-21 21:36:54 +02:00
P0nk
948a9de667
Remove Spirit of Rock die sound
2024-05-21 20:23:34 +02:00
P0nk
d55437ddf3
Remove subway whistle
2024-05-21 19:56:09 +02:00
P0nk
98fd8c13d4
Remove brazil anthem
2024-05-21 19:54:30 +02:00
P0nk
04a92fe0c1
Remove buyback custom feature
2024-05-21 19:44:25 +02:00
P0nk
dc1a712f52
Re-add section about running from jar
2024-05-10 22:26:04 +02:00
P0nk
7a6d3e1b68
Add feature request issue template
2024-05-10 21:29:09 +02:00
P0nk
970fb3155f
Complement pom.xml
2024-05-09 22:29:15 +02:00
P0nk
0eb78e2d9e
Use root db user by default
2024-05-09 22:08:28 +02:00
P0nk
7d42870abd
Fix sql script not being runnable on newer versions of MySQL
2024-05-09 21:26:09 +02:00
P0nk
c7b9e0eee3
Major rewrite of README
2024-05-09 21:11:53 +02:00
P0nk
c5089881b3
Tidy pom
...
mvn tidy:pom
2024-05-09 14:24:03 +02:00
P0nk
9c1406f75d
Update pull request template
2024-05-09 12:33:50 +02:00
P0nk
92226483be
Merge branch 'refs/heads/master' into feat/project-update
2024-05-09 12:30:14 +02:00
P0nk
f61fee829a
Upgrade Java version and dependencies
2024-05-09 11:45:16 +02:00
P0nk
851b57e8ef
Fix able to gain infinite slots with clean slate scroll
...
And remove a GM config option.
Thanks Crabo for the suggested solution.
2024-02-05 08:34:36 +01:00
P0nk
a7d03cf8c0
Merge branch 'master' into feat/postgresql-database
2024-02-04 15:12:14 +01:00
P0nk
033d91ed71
Merge branch 'master' into feat/postgresql-database
...
# Conflicts:
# config.yaml
# src/main/java/config/ServerConfig.java
2023-11-08 21:21:07 +01:00
P0nk
0aee9d7c3f
Fix unable to create playernpc
...
The initialization of the running world counters depended on worlds already having been initialized, so I made that dependency more explicit.
2023-09-19 12:56:51 +02:00