Hello,
Here I'll share simple SQL query to check and update "Max Plus" (with and without Adv. Elixir) of items in 2 different methods: (doesn't matter which, both has same effect)
Method 1: Real time after fusing
Method 2: On login/logout session
Why login/logout session? well as far as I tried, changing item plus from database trigger or [_AddLogItem] query without refreshing the client will cause misinformation between client and server. And might cause the client dc or crash (no idea which), because of wrong information send to/received from the server. (CMIIW)
For example, someone did +13 and you force real time query back to +12. The database already have "+12", but the client still reads "+13"... then the player fused again and succeeded the 2nd time (this time client reads +14 while server reads +12), and they start hunting/hitting/killing whatever without teleporting... not sure what will happen :P
(Update: as its.soul confirmed, nothing will happen, so I added a "real time" max plus check during equipment fusing, even though the client has to teleport to refresh the visual side)
Update notes:
Method 1. "Real time" check and update right after fusing. (Client needs to teleport to refresh visual side)
Procedure: [SRO_VT_LOG].[dbo].[_AddLogItem]
Method 2. Check and update during login/logout session for Inventory, Storage, and Guild Storage
Procedure: [SRO_VT_LOG].[dbo].[_AddLogChar]
To test, fuse some items with or without Adv Elixir to more than your Max Plus value, then teleport (to test method 1), or put those items in Inventory, Storage, and Guild Storage, then logout/login again (to test method 2). see if it works.
good luck and have fun ;)
Here I'll share simple SQL query to check and update "Max Plus" (with and without Adv. Elixir) of items in 2 different methods: (doesn't matter which, both has same effect)
Method 1: Real time after fusing
Method 2: On login/logout session
For example, someone did +13 and you force real time query back to +12. The database already have "+12", but the client still reads "+13"... then the player fused again and succeeded the 2nd time (this time client reads +14 while server reads +12), and they start hunting/hitting/killing whatever without teleporting... not sure what will happen :P
(Update: as its.soul confirmed, nothing will happen, so I added a "real time" max plus check during equipment fusing, even though the client has to teleport to refresh the visual side)
Update notes:
- This will work and might be useful if you run your server without additional 3rd party filter. But you won't need this if using filter such as K-Guard, SUPERMAN, Galullians or others, since those already have a feature for plus limit. :)
- If you use Method 1, you won't need to use Method 2 because Method 1 already update the "ItemID" itself. So it won't matter where the player put the item after fusing :)
Method 1. "Real time" check and update right after fusing. (Client needs to teleport to refresh visual side)
Procedure: [SRO_VT_LOG].[dbo].[_AddLogItem]
Method 2. Check and update during login/logout session for Inventory, Storage, and Guild Storage
Procedure: [SRO_VT_LOG].[dbo].[_AddLogChar]
To test, fuse some items with or without Adv Elixir to more than your Max Plus value, then teleport (to test method 1), or put those items in Inventory, Storage, and Guild Storage, then logout/login again (to test method 2). see if it works.
good luck and have fun ;)