Arthur Charlton
cfb5fc25c3
Calling code assumes the pair never null and uses -1 to signify not found.
2023-07-05 14:12:42 -04:00
Arthur Charlton
3816e1c5bd
Add the warp party function that the scripts use
2023-07-03 18:25:14 -04:00
P0nk
46f767d79c
Merge branch 'master' into feat/postgresql-database
2023-05-29 15:56:53 +02:00
Ponk
c9d551cd39
Merge pull request #173 from MatthewHinds/gm-security #minor
...
GM security changes to prevent item/mesos abuse
2023-05-29 15:50:03 +02:00
Matthew Hinds
95bf0473f3
Adjusted based on feedback
2023-05-29 14:32:01 +12:00
Matthew Hinds
a9d92b78a2
Meso drop restricted by GM level
2023-05-29 12:57:01 +12:00
Matthew Hinds
4546fd44ff
To prevent abuse, GMs should be permission restricted (via GM level) to trade with other non GM players, use their storage (prevent transferring to their other characters), send via Duey and to drop items. GM level is configurable.
2023-05-12 18:02:08 +12:00
Matthew Hinds
216fa9341b
Removed level up messages as it is non GMS like and a bit cringey
2023-05-12 14:47:18 +12:00
Shahar6
cbc0b2707e
Fix dupe glitch with wedding
...
PoC for the glitch:
https://www.youtube.com/watch?v=EoVGQtMkJOA&ab_channel=ThirtyOneFifty
2023-04-21 20:27:59 +03:00
Sukishyou
301f65ce16
Add null check to duey packet edit check
2023-04-15 14:36:00 -05:00
Sukishyou
f1b95fe45e
Fix exploit with Duey Send Items
2023-04-14 19:43:51 -05:00
P0nk
785f74ed21
Fix HelpCommand not working without static CommandsExecutor
2023-03-31 07:59:43 +02:00
P0nk
699da37f06
Simplify NPC script start
2023-03-31 07:33:49 +02:00
P0nk
c3badba73b
Convert ShopItem to record
2023-03-30 07:07:33 +02:00
P0nk
5f0e9a355b
Move Shop stuff to own package
2023-03-30 06:47:07 +02:00
P0nk
39d759595d
Get shop as Optional
2023-03-30 06:41:13 +02:00
P0nk
fe9dd75a23
Instantiate shops in ShopFactory
2023-03-29 21:59:00 +02:00
P0nk
2139147dcd
Add getShop to DAO, preparing to refactor shop loading
2023-03-29 21:14:19 +02:00
P0nk
c71ca7f4d5
Inject ShopFactory
2023-03-29 20:51:31 +02:00
P0nk
705efb4340
Remove access to shops from scripts
2023-03-29 20:38:34 +02:00
P0nk
ec1450cec1
Rewrite Mo NPC script to be GMS-like
2023-03-29 19:54:59 +02:00
P0nk
290bf78db3
Notes about difficulties of DI for scripts
2023-03-18 16:04:01 +01:00
P0nk
a496c0f2b4
Add ShopDao
2023-03-18 14:32:21 +01:00
P0nk
f2f3abdb32
Move last pieces of monster drops to DropProvider
2023-03-16 18:55:33 +01:00
P0nk
5a35b55d7a
Cache continent drops
2023-03-16 18:03:43 +01:00
P0nk
02aa4a237f
Global monster drops are retrieved from DropProvider (postgres db)
2023-03-16 18:00:21 +01:00
P0nk
cc88d382e6
Monster drops are retrieved from DropProvider (postgres db)
...
This commit emphasizes the need for events to be reworked.
This is the chain of constructors the DropProvider has to pass through to reach MapleMap:
Channel -> EventScriptManager -> EventManager -> EventInstanceManager -> MapManager -> MapleMap
2023-03-16 08:31:38 +01:00
P0nk
a95fa2efc1
Refactor LootInventory & LootManager
2023-03-16 00:25:21 +01:00
P0nk
45e2b93724
Remove "multiple same equip drop" feature
2023-03-15 23:26:15 +01:00
P0nk
fa3481fa99
Pass CommandContext to commands
...
CommandContext is the carrier of dependencies.
Currently, it only carries a DropProvider, but
it will grow bit by bit as more static singletons
and other similar structures get refactored.
2023-03-15 23:19:04 +01:00
P0nk
eed94ec34a
Refactor CommandsExecutor - is no longer static singleton
...
Preparing for change in Command#handle,
which is going to take a CommandContext as an additional argument.
This way we can pass in command dependencies in a safe way
instead of requiring them to access static methods.
2023-03-15 22:56:40 +01:00
P0nk
a6a7a26ebc
Clean up Steal stuff in MIP
2023-03-15 22:41:36 +01:00
P0nk
7ed7b25268
Fix race condition when concurrently Stealing
2023-03-15 22:38:54 +01:00
P0nk
703ae30a27
Move "steal item" logic to DropProvider
2023-03-15 22:22:14 +01:00
P0nk
6bf8785f22
Fix error in monster_drop query
2023-03-15 22:17:42 +01:00
P0nk
53768555a2
Add table, data, and provider method for global drops
2023-03-09 20:08:20 +01:00
P0nk
a70f4e303d
Add DropProvider and dao for monster drops
2023-03-08 22:46:24 +01:00
P0nk
0be48568d7
Get MakerItemCreateEntry from new info provider
2023-03-08 21:09:47 +01:00
P0nk
1fd0963401
Fix maker disassembly fee not being applied
2023-03-04 22:53:05 +01:00
P0nk
d2d4b442d2
Maker disassembly info to MakerInfoProvider
...
MakerProcessor is such a mess...
2023-03-04 22:33:34 +01:00
P0nk
9d6574d3ba
Cache maker info with Caffeine
2023-03-04 21:27:18 +01:00
P0nk
f2ca67aba4
Add tests for MakerInfoProvider
...
These are going to be handy soon,
as I'm about to add Caffeine for caching.
2023-03-04 21:02:04 +01:00
P0nk
6073b20d65
Cache MakerRecipe, move stimulant to MakerInfoProvider
2023-03-04 17:20:16 +01:00
P0nk
932f9fc443
Merge branch 'master' into feat/postgresql-database
...
# Conflicts:
# pom.xml
2023-03-02 18:40:27 +01:00
P0nk
10945927c1
Fix writeString not fully respecting charset
...
The string would be cut short for charsets
with characters more than 1 byte.
2023-03-02 18:11:41 +01:00
P0nk
c0c0a2d2d9
Get maker reagent from PG db, rework processor (no statics)
2023-03-02 08:18:13 +01:00
P0nk
adbdb89917
Add maker_recipe table and data (formerly "makercreatedata")
2023-03-01 20:34:48 +01:00
P0nk
b7c79800eb
Fix note not showing if case mismatch in name
...
This wouldn't be a problem in the first case,
if there was a foreign key connection between
note and character tables.
Can't add that quite yet though.
2023-02-28 21:30:20 +01:00
P0nk
12745c207d
Move notes to the Postgres database
2023-02-25 00:40:36 +01:00
P0nk
f6f3c9c3e3
Initiate Postgres connection pool on startup
2023-02-25 00:11:33 +01:00