Commit Graph

829 Commits

Author SHA1 Message Date
Ryan efbe754654 fixed Family Crest bug where Dimintheis would not replace gauntlets if you lost them (fixes #312)
fixed Family Crest bug where Dimintheis would give you infinite gauntlets (fixes #257)
fixed Family Crest bug where Dimintheis didn't check equipped gloves or second bank
fixed Family Crest bug where Dimintheis didn't remember which gauntlets you had
changing gauntlet enchantment now authentically costs 25k GP (and free the first time)
added content API function for checking if a player possesses any particular items anywhere
added content API functions for starting and finishing quests
2022-05-14 10:48:35 +00:00
Ryan d5bb44230c implemented seaweed nets at fishing colony, but also locked it behind the appropriate quest (which isn't implemented yet, so no real change for players yet)
fixed NPE in quest getStage code when getting stage of quests that haven't been implemented yet
2022-05-14 10:42:00 +00:00
Ceikry 90060fde21 Item sets now appear and can be unpacked at the GE
Added a proper mock session that gets used for mock players in unit tests. Allows verifying that certain packets made it to the IoSession (the stage right before sending it to the client)
2022-05-14 10:24:47 +00:00
Ceikry 7478f68d40 fixed a bug that allowed purchasing 0-stock items (you would only lose gold without getting an item) 2022-05-14 06:24:47 +00:00
bushtail fee3b02e3d Improved handling of buying Dragon Scimitars from Daga in dialogue and declining the Fremennik Trials quest from Brundt 2022-05-14 06:14:07 +00:00
bushtail 13088762d1 Implemented turning kebabs into super kebabs with red hot sauce 2022-05-14 06:07:23 +00:00
downthecrop a5a0e9c9b4 Beer item ID Council Workman interaction changed from normal beer to the beer from Fremennik longhall
Koschei boss fight sessions are now World Pulses instead of player pulses
Refactor TFTInteractionListener to use ContentAPI
Allow Neitiznot items to be equiped after Frem trials
2022-05-14 05:31:26 +00:00
Ryan d91396d0ea adjusted price calculation formula used when selling items to shops 2022-05-06 22:54:32 +00:00
ryannathans 2b0c35a420 fixed bug preventing awards for Witch's House and Roving Elves quests 2022-05-05 01:52:55 +00:00
Ceikry a5f9c64dbb New dynamic region abstraction, consumed in construction 2022-05-03 23:18:11 +00:00
Ceikry 8438ecdbd7 Fixed an exception thrown when buying from player stock
Fix issue where malformed stock could shift following shop items
2022-05-02 10:22:36 +00:00
enosich a5f3f93048 Make ::setvarbit take the first and second args instead of first and third 2022-05-02 04:00:00 +00:00
Ceikry b5a78fe18a Add more unit tests for shops and quest related architecture
Fixed bug where quests could be repeatedly finished
Fixed bug where ironman status wasn't checked when buying overstocked items
Fixed bug where selling multiple items at a time that weren't listed in a shop would not succeed
Fixed bug where shop restocking would sometimes interrupt if a shop stock item was in a null slot
2022-04-26 03:48:20 +00:00
Ceikry 96abfe6ab1 Add symlink for unit test cache access 2022-04-25 12:41:59 +00:00
Ceikry fb98015536 Added unit tests for the GE
GE should now favor the buy offer if it's newer than the paired sell offer (buyer gets GP back)
GE should now favor the sell offer if it's newer than the paired buy offer (buyer does NOT get gp back)
GE should now always award bot offers to the highest bidder
2022-04-25 12:35:51 +00:00
Ceikry 933dc72a48 Added unit tests for regions (now requires cache at Server/src/resources/cache)
Reverted some really old changes (2019) to house loading code (Might fix construction? Probably not.)
2022-04-25 12:15:56 +00:00
Ceikry eab32ccef8 Add unit tests for slayer
Kill server networking as soon as shutdown process starts
2022-04-24 15:08:08 +00:00
Ceikry 4979c8438a Show standard offer text when reopening already-made offers
Fixed grand exchange offers disappearing on login
Don't show withdraw items with amount 0
2022-04-23 14:11:48 +00:00
downthecrop 0812cfa0c7 Fixes for 'perfect gold' smelting, mining and a prospecting bug for depleted rocks 2022-04-23 12:55:33 +00:00
Ryan 7c164430ee fixed memleak in ge sqlite connection 2022-04-19 11:58:11 +00:00
ceikry d4082c60f7 Add npc configs entry for ignoring tolerance 2022-04-18 13:38:03 +00:00
Ceikry 9f05db7e6c NPCs can no longer teleport you out of bounds 2022-04-18 13:35:08 +00:00
ceikry bf60a0a658 NPCs should no longer be able to kill you with a projectile fired shortly before or during death 2022-04-18 13:27:50 +00:00
Ceikry 6e804d4e99 Locked some cells in port sarim jail, can no longer just walk into wormbrain's cell 2022-04-18 13:07:35 +00:00
Ceikry 4d95ad1b09 Implemented charter cost reduction for karamja gloves 2022-04-18 13:04:54 +00:00
Pazaz 841318620b thieving: Pickpocket sound, hit sounds, fixed stun 2022-04-18 13:03:46 +00:00
Ceikry fbe78055cf Pets now run off when starving 2022-04-18 12:59:14 +00:00
Ceikry f454712c58 MapAreas can now reference their associated zones to dynamically add/remove borders
Random Events can no longer spawn in fishing trawler
Players can no longer have multiple random events spawned in/active at a time
2022-04-18 12:17:18 +00:00
Ceikry 202775f150 Plugin interactions can now dispatch interaction events, fixes varrock easy diary tasks not counting 2022-04-18 08:22:51 +00:00
Ceikry 66f51ca043 Convert skillcape perk activation to an interaction listener, fixes HP cape giving perm boost 2022-04-18 08:21:30 +00:00
Ceikry bd7d8eb276 Fixed agility interruptible obstacles and repeating low walls 2022-04-18 08:12:03 +00:00
Ceikry e9c23a845b Implemented the varrock teleport destination swap reward for easy diary completion
Fixed the bug with accessing ned's achievement dialogue while one of his quests was in progress
2022-04-18 07:55:42 +00:00
Ceikry 1b9e330f68 Added unit testing framework 2022-04-18 06:23:41 +00:00
Ceikry c50d51c22a fixed erroneous pyramid plunder locks 2022-04-12 09:04:10 +00:00
Ceikry e958b8d255 Completely rewrote the shop system.
Shop restocking now works properly, with per-item-in-shop granularity as well. (Thanos tool update released that allows defining this)
Shops properly restrict ironmen from buying from player stock/overstocked items
Fully functioning individualized player stock support (need to set a server config variable to enable, disabled by default. Specifically, set personalized_shops = true in the world section of the config.)
The shop pricing formula now scales up/down with the authentic ratios based on stock quantity.
Buying or selling, for example, 1000 of an item, now does the proper calculation for each individual item in the purchase/sale rather than exchanging the full 1000 for the initial price at the time. (For example, in the old shops, feather price at full stock was, say, 6gp. You could buy 1000 feathers at once for 6000gp. Authentically, the pricing for each feather should scale as the stock goes down. Now 1000 feathers at once costs a bit over 7k gp, despite the initial price remaining 6gp.)
General store player stock is now shared between all general stores
2022-04-12 08:46:21 +00:00
bushtail f9aea18497 Fix Tribal Totem bug where you could repeatedly claim quest rewards 2022-04-12 03:02:55 +00:00
Ceikry d7e7ee348d Better cache parsing, reading more data from cache instead of code/config defined values 2022-04-09 02:25:16 +00:00
Ceikry 11abc4bbab Fixed a bug with Gertrude's Cat where it would give you the wrong bucket back when feeding the cat 2022-04-09 02:22:35 +00:00
Ryan 592be2d79b fixed penguin spying errors 2022-04-09 02:20:06 +00:00
Ceikry e8ed23d04f Fix weird integer casting bug with pyramid plunder affecting drop rates 2022-04-09 02:19:03 +00:00
Ceikry c4e41f4ab7 Added region specific teleport commands for admins 2022-04-08 10:21:54 +00:00
Ceikry 1f68dbaed0 Rewrote Pyramid Plunder Minigame, features improved authenticity amongst other improvements 2022-04-05 03:12:28 +00:00
Ceikry 24b28d84fd Converted some content to the new event hooks and listeners systems in order to clean up code a bit
Added interfaces for standardizing the saving/loading process for data, and allowing it to be declared independently of an entry in PlayerSaver/PlayerSaveParser
2022-04-04 07:12:54 +00:00
Ceikry 6a7ccc1102 Fixed getting stuck in GE item set interface 2022-03-31 14:18:07 +00:00
Ceikry 13f490c42b Reimplemented the Culinomancer chest 2022-03-31 13:55:03 +00:00
Ceikry db7b9d06b2 Add LogoutListener interface - allows a class to call some code on player logout - improved version of logout listeners.
Add StartupListener interface - allows a class to call some code on server startup without adding messy code elsewhere
Add ShutdownListener interface - allows a class to call some code on server shutdown without adding messy code elsewhere
Add TickListener interface - allows a class to call some code on each tick without adding messy code elsewhere
Converted all applicable content over to using these new interfaces
2022-03-31 13:52:19 +00:00
Ceikry 3f499d1244 Corrected XP rate options
Fixed some minor tutorial island bugs
2022-03-30 23:56:01 +00:00
Logg abdcc34702 Added a practice mode on Jad, so that Noobs can practice Jad without being in the cave for an hour. Costs 8000 TokKul + supplies. 8000 TokKul is given back if the Noob is successful at defeating Jad. Video of dialogue/functionality: https://www.youtube.com/watch?v=ZESnT0278gI 2022-03-30 23:03:34 +00:00
Ceikry fec2fe5a28 Fixed a bug with random events where untradeables in inventory would be deleted 2022-03-30 22:46:42 +00:00
bushtail 4a022d1d78 fixed cooking make-x UI issues introduced by !464 2022-03-29 13:18:55 +00:00