Commit Graph

97 Commits

Author SHA1 Message Date
Player Name b34e99d156 Fixed inappropriate inventory full message when woodcutting 2023-08-04 07:22:37 +00:00
Ceikry 0ca2b8d99c Fixed wilderness teleblock bug 2023-08-03 13:36:07 +00:00
Player Name 255fc9eca6 Fixed Teleport to House to teleport the player inside the house, rather than outside the entrance portal
Removed HouseTeleportPlugin.java deadcode
2023-08-02 07:39:45 +00:00
Ceikry fd5998453d Fixed infinite lunar cast range 2023-08-02 00:52:19 +00:00
Ceikry 6d23ec5234 Added farming patch safety checks 2023-08-02 00:39:04 +00:00
Ceikry 105f7d5b86 Made familiar code more testable
Fixed an issue with the bloated leech "blood drain" ability
2023-07-31 15:08:47 +00:00
Ceikry ac0da92a58 Fixed desert wyrm node search 2023-07-31 03:58:09 +00:00
Zerken 9b08f2175b Implemented Freaky Forester random event
Added admin ::freak command to trigger Freaky Forester
2023-07-30 02:52:45 +00:00
Zerken 686a2c9141 Immersive sound update
Fixed all skills to play their correct level up jingles
All skills except agility have 2 level up jingles
Most skills play a different jingle for new unlocks
Some skills have specific jingles based on level/range (Strength, Hitpoints, Hunter, Construction, Summoning)
Implemented furnace sound when crafting silver and gold jewelry at a furnace using moulds
Implemented emptying sound for fishbowls
Fixed cow milking sound so it plays for more than one bucket
Implemented sound when pushing a canoe into the water from a canoe station
Fixed quest complete jingles to play a random 1 of 3 quest jingles
Implemented jingle that plays when changing clothes at Thessalia in Varrock
Implemented jingle that plays when spying on a penguin
Implemented jingle that plays on login with completed grand exchange offers
Implemented sound when spinning items at a spinning wheel
2023-07-29 05:14:11 +00:00
Ceikry 661390e66f Implemented timer subsystem to eventually replace pulses
Authentic subsystem supports saving/loading arbitrary data and resuming timer countdowns
Lots of documented CAPI functions for working with these new timers
Converted poison to new timers
Converted disease to new timers
Converted farming to new timers (CropGrowth and Compost)
Farming now syncs with 5 minute intervals on realtime clocks (authentic)
Converted seedling growth to new timers
Converted shooting star mining bonus to new timers
Converted entity freezing to new timers
Converted incubation to new timers
Incubation now supports using both incubators (so 2 eggs at once)
Converted miasmic states to the new timers
Converted god spell charged state to new timers
Converted teleblock to new timers
Converted skulled state to new timers
Converted Enhanced Excalibur special attack effect to new timers
Converted passive stat restoration to timers
Converted multicannon firing and decay to a timer
2023-07-29 04:51:06 +00:00
Zerken defe780c39 Agility Pyramid Fixes
Can now properly fail the jump and cross gap obstacles
Fixed an issue when failing the the 2nd level north cross gap obstacle when going west causing the player to get stuck inside the pyramid
Fixed jump/cross gap obstacle sounds
Fixed moving block obstacle audio so the sliding sound plays for all players within 3-4 tiles of the block when it moves
Implemented music/jingle that plays when you get the pyramid top
Updated all agility pyramid sounds to use the new playAudio ContentAPI function and constlib
Added inauthentic gold reward from selling pyramid tops to Simon Templeton based on agility level. GP reward = 1000 + ((agility level / 99) * 9000). Can be toggled with server config option better_agility_pyramid_gp
2023-07-23 14:40:08 +00:00
Ceikry 36dc23ae38 Implemented safer fallback woodcutting rates 2023-07-23 14:26:03 +00:00
Ceikry 845d8b383b Exception fixes
Fixed a bug that could occasionally cause the sandwich lady interface to become unresponsive
Fixed an issue that could cause shade random events to not spawn for max-level players
Fixed an issue that could cause zombie random events to not spawn for max-level players
Fixed a widespread book issue that resulted from not resetting the current page index when closing a book, and then trying to open another book with less pages.
Converted bogrog pouch swap to the generic item select interface, and removed relevant code from the grand exchange code
Fixed an issue that could occasionally prevent exchange of item sets
Fixed an issue with Diango's reclaim interface that could result in items other than the ones you clicked being claimed
Made incubation moderately more reliable, and incubation timers now pass even while offline
Fixed an issue that prevented the leather crafting dialogue from accepting tokenized amounts (e.g. 100k)
Fixed an issue that prevented the tool leprechaun interface from allowing tokenized amounts
Fixed an issue that prevented players from using tokenized amounts in the ogleroot purchase dialogue for vinesweeper
Fixed an issue that prevented Zaff's batttlestaff dialogue from accepting tokenized amounts
Fixed an issue that prevented shop buy-x options from accepting tokenized amounts
Various shop-related exception fixes
Added some ingame player messages for when a Hunter "catch" option isn't being handled properly
Fixed some exceptions being thrown by lunar spells
Pyramid Plunder is now better at detecting when a player is in the minigame erroneously and kicking them out
Fixed an issue that would lead to incorrect Kalphite Queen behavior when killing her with multiple players in the room
Fixed an issue that could cause the Bedabin Nomad's dialogue to hang during Tourist Trap
Fixed several more issues with Fight Arena cutscenes
Fixed an issue that could prevent the dwarf dialogue from opening while trying to enter the mountain shortcut before finishing Fishing Contest
Fixed an issue that could cause dialogue option hangs in certain unusual circumstances
Fixed an issue that could result in non-movement for interactions where the override location was the same as the target node's location and there was no destination flag set
Fixed an issue where setting invalid node data could cause issues with NPC rendering
Server can now detect when a session is sending up multiple invalid packets and automatically disconnect the player
Fixed an issue that could lead to unintended saving of varps/varbits
Fixed an issue that could cause some interactions in shops to silently fail. The user will now receive a relevant message when these situations occur
Users may now find they could occasionally receive a very snarky response when incorrectly using commands
Users now receive messages when they try to make use of unimplemented friends/clan/etc features.
Errors in string parsing will no longer result in "dead" inputs when attempting to add friends/update clan ranks/etc
Fixed an issue that could lead to loss of some alerts in the Discord integration. Discord integration will now detect problems and queue the failed messages to be resent later.
Added more safety checks to item-on-grounditem packet handling to prevent throwing exceptions
Exceptions in string parsing for command packets will now inform the user that something went wrong, and ask them to try again.
Improved drop table parsing and fixed incorrect drop tables
2023-07-17 08:12:57 +00:00
Ceikry fa1f7296f2 Implemented the herblore skill cape perk as described on the website - 15% chance to make a 4-dose potion 2023-07-14 09:42:11 +00:00
bushtail 6d96611d69 Removed erroneous print line in server startup 2023-07-09 04:25:37 +00:00
zsrv 417db14d5c Implemented split combat levels
A split combat level (e.g. 50+5) will be displayed for a player when the player is on a PvP world and does not have a summoning pouch or a familiar summoned.
A split combat level will also be shown if the player is on a world with wilderness PvP enabled, the player is in the wilderness, and does not have a summoning pouch or a familiar summoned.
If the world is a PvP world, display other players' combat levels in white if they are outside of combat range, or shades of green/yellow/orange/red if they are within combat range.
If the world is not a PvP world, always display other players' combat levels in shades of green/yellow/orange/red.
2023-07-09 03:54:31 +00:00
Ceikry 06e8279f2a Refactored movement pulse
Fixed bug with Vinesweeper gnomes not checking flags
Fixed hunter tracking
2023-06-29 01:46:00 +00:00
Zerken da33c89a70 Implemented summoning skillcape perk
Pet Mastery: With your mastery of summoning familiars you have also learned the ability to teach pets to fend for themselves - they no longer rely on you for food. While the summoning cape is equipped your pet's hunger no longer increases (applies to all pets).
2023-06-28 07:31:42 +00:00
szumaster a09a35ed5c Locked moss giant pipe achievement behind requirements 2023-06-25 14:01:58 +00:00
Zerken cef956722a Implemented water filling sounds for filling water vessels from all water sources
Implemented specific bucket water filling sound when filling from a well
Implemented emptying sounds for emptying vessels
Implemented cow milking sound
Implemented sound when smelting at a furnace
Implemented sound when smelting cannonballs at a furnace
Implemented sound when glassblowing
Fixed herb cleaning sound
Fixed regular wood door opening and closing sounds
Implemented metal door/gate opening and closing sounds
Implemented fence opening and closing sounds
Added Camelot castle main gate in door_configs.json
Fixed Sinclair mansion main gate to be a metal type door in door_configs.json
Implemented drinking sound when drinking from a waterskin in the desert
Implemented desert magic carpet travel take off and landing sound
Implemented desert magic carpet travel jingle/music
Fence around Falador cow farm is now properly identified as a fence and opens correctly
Fence id 34780 is now properly identified as a fence in door_configs.json so it opens correctly
Fence id 8810 is now properly identified as a fence in door_configs.json so it opens correctly
Fence id 2050-2051 is now properly identified as a fence in door_configs.json so it opens correctly
Fence id 1553 now has the correct open id in door_configs.json so it opens correctly
Fixed music tracks Relleka(289), Saga(290), and Borderlands(291) so they now play in their correct locations
Implemented jingle/music for sailing/chartering a ship(Trader crewmembers)
Implemented jingle/music for sailing/chartering a ship from/to Port Sarim/Karamja
Implemented jingle/music for sailing/chartering a ship from/to Port Sarim/Entrana
Implemented jingle/music for sailing/chartering a ship from/to Relleka/Neitiznot
Implemented jingle/music for sailing/chartering a ship from/to Relleka/Jatizso
Implemented jingle/music for sailing/chartering a ship from/to Ardougne/Brimmhaven
Implemented jingle/music for sailing/chartering a ship from/to Port Sarim/Pest control
Fixed the music player to be more authentic. Now when songs end they will repeat instead of playing a random inauthentic song. The loop function now works correctly so the currently playing song will play endlessly without changing as the player moves.
Implemented playJingle function in contentAPI.kt
2023-06-21 14:57:01 +00:00
Zerken d04302c99f Hunter sound improvements
Implemented setup, dismantle, and catching sound for bird snares
Implemented setup, dismantle, and catching sound for box traps
Implemented setup, dismantle, and catching sound for net traps
Implemented setup, dismantle, and catching sound for dead falls
Implemented setup and dismantle sound for rabbit snares
Implemented butterfly net swing sound
Implemented falconry fly and catch sound
Implemented noose sound when catching kebbits
Implemented setup, dismantle, catching, teasing, jumping over, and npc jumping over pitfall sound to pitfalls
Implemented appropriate player lock time to setting up net traps and deadfalls to avoid players from interrupting the action
Implemented appropriate player lock time to dismantling bird snares, box traps, net traps, rabbit snares and deadfalls to avoid players from interrupting the action
Implemented a new function to play sound at a location
2023-06-16 06:28:40 +00:00
Zerken 22776e7bb3 Unicorn stallion pouches now cost 140 shards instead of 203
Hydra, Spirit Dagannoth, Unicorn Stallion, Wolpertinger, and Pack Yak pouches now consume pouches when created at an obelisk
Implemented the song Animal Apogee to play at Taverly summoning obelisk, Piscatoris summoning obelisk, Natures Grotto obelisk
2023-06-16 05:58:46 +00:00
Oven Bread 7997fbb0b0 Implemented the thieving skillcape
Removed inauthentic HAM robes pickpocket buff
2023-06-11 08:05:16 +00:00
Ceikry bd12800cca Fixed some issues with incorrectly reading varbit values
Fixed Dwarf Cannon quest
Improved varp/varbit interface and handling
2023-06-06 09:31:16 +00:00
Ceikry f5711fcf8f Fixed plank make without sufficient funds
Fixed potions not taking doses in some cases
2023-06-06 08:02:55 +00:00
Ceikry b6d02cce17 Fixed bug causing Puro Puro implings to cluster in the north east corner 2023-06-06 03:11:15 +00:00
bushtail 817d2f0ec2 Fixed a bug where farming assistant Githan would spawn for bots 2023-06-01 01:21:33 +00:00
Ceikry cb630e7043 Requirements Audit
Added a new quest requirement system
Ensured that all implemented rewards are obtainable, even if all requirements are not implemented
Rewards that should have higher requirements than what is currently obtainable will have those requirements automatically increase as more quests are added
The requirements for any quest can be viewed at any time by clicking it in the quest list
Things that were previously locked/unavailable but are now available (with prereqs) are:
- It is now possible to obtain and equip Barrow's Gloves with the Recipe for Disaster prereqs
- It is now possible to obtain and equip an Ancient Staff with the Desert Treasure prereqs
- It is now possible to enchant your secateurs into Magic Secateurs with the Fairy Tale I - Growing Pains prereqs and 40k gold
- It is now possible to equip the Ancient Mace with the Another Slice of H.A.M prereqs
- It is now possible to get Suqahs as a task from Duradel with the Lunar Diplomacy prereqs
- It is now possible to obtain a Seal of Passage by speaking with Chieftan Brundt after meeting the Lunar Diplomacy prereqs
- It is now possible to obtain Ancient Staves by killing the level 96 and 103 mummies in the Ancient Pyramid (1/500)
Things that were freely available but are now locked include:
- Sophanem now requires/requires the prereqs of Icthlarin's Little Helper
- Pharaoh's Sceptre requires the same^
- Equipping god books now requires Horror from the Deep/its prereqs
- Neitiznot helmet now requires the Fremennik Isles prereqs rather than just Fremennik Trials
- Cape of Legends now correctly requires the full possible prereqs for Legend's Quest rather than just 55 QP
- Dragon Scimitar now correctly requires the Monkey Madness prereqs
- Ape Atoll teleport now correctly requires the Monkey Madness prereqs
- Slayer Helmet and the Slayer Rewards Shop in general now correctly require the Smoking Kills prereqs (not high)
- Dragon Halberd now requires the Regicide prereqs
- Climbing Boots now require the Death Plateau prereqs
- Dragon SQ Shield now requires the Legend's Quest prereqs to equip (source available in sourcecode)
- Initiate Armour now requires the Recruitment Drive prereqs
- Proselyte Armour now requires the Slug Menace prereqs
- Access to Piscatoris now requires the Swan Song prereqs (effectively Quest Cape here.)
- The disease-free herb patch in Trollheim now requires the My Arm's Big Adventure prereqs.
- Ardougne Teleport now requires the Plague City prereqs
- Watchtower Teleport now requires the Watchtower prereqs
- Trollheim Teleport now requires the Eadgar's Ruse prereqs
- The Lunar spellbook now requires the Lunar Diplomacy prereqs
- The Ancient spellbook now requires the Desert Treasure prereqs
- Crafting Astral Runes now requires the Lunar Diplomacy prereqs
- Crafting Death Runes now requires the Mourning's End Part II prereqs
- Crafting Blood Runes now requires the Legacy of Seergaze prereqs
- Access to Cave Horrors now requires the Cabin Fever prereqs
- Sorceress' Garden now requires Prince Ali Rescue
- Access to the Heroes' Guild now requires the Heroes' Quest prereqs
- Access to GWD now requires the Troll Stronghold prereqs
- Access to Neitiznot and Jatizso now requires Fremennik Trials
- Access to Shilo Villa now requires the Shilo Village prereqs
- The Keldagrim cart system now requires The Giant Dwarf prereqs
- Fairy Rings now require the full Fairy Tale I - Growing Pains prereqs
- Ectophial now requires the Ghosts Ahoy prereqs
- Access to Tormented Demons now requires the While Guthix Sleeps prereqs
- Access to the Halberd Shop and the ability to equip Dragon Halberds now requires the Regicide prereqs
- Access to Lletya now requires the Mourning's End Part I prereqs
- Access to Corporeal Beast now requires the Summer's End prereqs
- Chivalry and Piety prayers now require the King's Ransom prereqs
- Ali Morrisane's rune shop now requires the The Feud prereqs
- Armoured Zombies now require the Defender of Varrock prereqs
- Experiments now require the Creature of Fenkenstrain prereqs
- The carpet to Sophanem now requires the Icthlarin's Little Helper prereqs
- The carpet to Uzer now requires The Golem
- The carpet to Bedabin Camp now requires The Tourist Trap
- The bank in Sophanem now requires the Contact! prereqs
- The Dragon Battleaxe now requires the prereqs of Heroes' Quest to equip.
- The Dragon Mace now requires the prereqs of Heroes' Quest to equip.
- Spirit shields of all varieties (improved, blessed, unblessed) now require the prereqs of Summer's End to equip.
- Bork access now requires What Lies Below
2023-05-30 09:03:05 +00:00
Trident101 c3c836de4d Added new field to item configs for overriding alchemy flag
Fixed alchemy for Fremennik items
2023-05-27 12:57:04 +00:00
Ceikry 2cb8d82648 Rewrote all the logic, encoding, etc for player/npc rendering masks (Animations, force movements, etc.)
Groundwork for modular 578 support has now been laid (at least in regards to render masks)
Introduced an improved and more accurate API for using force movement (the old API is still around, all of its methods marked as deprecated)
Converted a couple example cases to using the new force movement API just as a proof of concept
Added a method to tick/time conversion methods to convert between client cycles and ticks
Added all authentically-named buffer read/write methods to the buffer class
2023-05-25 14:58:40 +00:00
RiL b995436ea4 Removed unkillable dogs from slayer task 2023-05-22 05:02:45 +00:00
Ceikry f7b707c3da Fixed an issue that was leading to unreliable respawn mechanics on multi-behavior NPCs 2023-05-16 12:42:22 +00:00
RiL c04ee0f821 Improved handling of skewered food 2023-05-16 12:22:07 +00:00
Ceikry 767117f54e Implemented the proper interaction for low-alchemy option on the Explorer's Ring
Implemented a generic item selection ContentAPI method
Added ContentAPI method for running CS2 scripts
Added development command for running CS2 scripts
2023-05-16 12:08:32 +00:00
Ceikry e7ccab2ad9 Fixed construction issue that would cause objects to become inaccessible (note this does not fix a similar issue related to rotation)
Simplified the region contract for construction
2023-05-09 14:31:43 +00:00
RiL 52633544ff Implemented ::addxp command (admin), add xp to a skill
Implemented ::charge command (admin), get and set the charge of an item
Implemented ::setslayertask command (admin), set the slayer task npc with optional quantity
2023-05-09 00:02:51 +00:00
szumaster 69f4f11bc7 Can no longer water scarecrows 2023-05-07 07:22:34 +00:00
bushtail 6bebd1d53a Teleport fishing spots properly 2023-05-07 03:30:28 +00:00
Avi Weinstock 572ebeef84 Fixed regression preventing potion decanting 2023-05-04 11:41:10 +00:00
RiL 05da44aa52 Optimised, fixed and refactored container (bank/inventory/equipment) checks 2023-04-25 14:21:00 +00:00
Oven Bread 323c653275 Implemented a generic book interface
Converted all books to new book interface
Converted stats command to use the new book interface
2023-04-24 14:32:52 +00:00
szumaster 24ff23b148 Implemented many medium and hard Fremennik diary tasks
Added catch messages for pitfall trap
Added Fremmenik milk bucket spawn
Implemented sea boots effect when recharging lyre
2023-04-23 08:26:59 +00:00
Ceikry 9619f5b3a7 Improved pathfinding to stationary targets to not unnecessarily recalculate the path
Fixed an issue where end-of-movement was not being considered properly
Added admin command for drawing chunk boundaries ::drawchunks
Added admin command for drawing region boundaries ::drawregions
Added admin command for drawing the current route ::drawroute
Fixed impling IndexOutOfBoundsException
2023-04-21 16:19:23 +00:00
Ceikry f6096e3020 Rewrote impling system
Fixed static impling spawns
Fixed impling spawn ratio
Reworked Puro-Puro, much more authentic
Imp defenders now work properly
Crop circles now appear
Added admin command ::implings to list active implings (excludes implings from Puro-Puro)
Fixed bug where you could add to a finished compost bin
2023-04-20 12:16:21 +00:00
RiL 41c970efd4 Authenticity improvement for cooking burn rates 2023-04-20 01:57:18 +00:00
xmomoz 642d946c17 Fixed Inferno Adze not awarding xp 2023-04-19 08:44:40 +00:00
Ceikry d4565fd728 Added back the missing success message when fishing 2023-04-19 00:44:15 +00:00
Ceikry cb92ad0577 Unified dragonfire protection logic
Fixed KBD's attack range resulting in only certain spots allowing him to melee
2023-04-18 08:44:03 +00:00
RiL 957540c362 Implemented all Fist of Guthix glove effects
Fixed inaccurate salve amulets boost, bonus for enchanted version now implemented
Fixed inaccurate black/slayer mask + slayer cape interaction, now always gives the highest bonus when wearing mask + cape
2023-04-17 00:59:54 +00:00
RiL dd3c957f8b Fixed hardleather crafting typo 2023-04-09 16:12:43 +00:00