mirror of
https://github.com/2009scape/2009scape.github.io.git
synced 2024-11-20 01:42:41 +01:00
fd731e9c4d
This reverts commit b645959417
.
175 lines
11 KiB
HTML
175 lines
11 KiB
HTML
---
|
|
title: More changes in Gielinor
|
|
tags: news
|
|
layout: newspost
|
|
collection: Game Updates
|
|
date: 2022-07-09 00:00:00 +0000
|
|
authors: ryannathans
|
|
excerpt: "Achievement diary rework, many bug and stability fixes, slayer expansion, optimisations and more."
|
|
modtype: "Lead Developer"
|
|
---
|
|
<p>Greetings Explorers</p>
|
|
<p>Highlights of this release include achievement diary reworks, many bug and stability fixes, slayer expansion, optimisations and more.</p>
|
|
<p>Full list of changes in Gielinor:</p>
|
|
<ul>
|
|
<li>Part 1 of achievement diary rewrite, the following diaries have been partially or totally rewritten<br />
|
|
<br />
|
|
Lumbridge Beginner<br />
|
|
Lumbridge Easy<br />
|
|
Lumbridge Medium<br />
|
|
Falador Easy<br />
|
|
Falador Hard<br />
|
|
Fremennik Easy<br />
|
|
Fremennik Medium<br />
|
|
Karamja Easy<br />
|
|
Karamja Medium<br />
|
|
Karamja Hard<br />
|
|
Seers' Village Easy<br />
|
|
Seers' Village Medium<br />
|
|
Varrock Easy<br />
|
|
Varrock Medium</li>
|
|
<li>Items with destroy option can no longer be sold to stores<br />
|
|
Items that cannot be traded can no longer be sold to stores</li>
|
|
<li>Results of ::ge command now sorted by item name</li>
|
|
<li>Converted clue scroll rewards to JSON weighted tables</li>
|
|
<li>Fixed the duplicated sound effects when cutting trees</li>
|
|
<li>Improved POH lecterns<br />
|
|
<br />
|
|
More authentic animations<br />
|
|
More authentic tick timing<br />
|
|
Fixed off-by-one that resulted in spurious full inventory errors<br />
|
|
Made lecterns take rune-providing staves into account<br />
|
|
Made the buttons light up based on the lectern tier<br />
|
|
Converted TeleTabInterface from a Plugin to a Listener</li>
|
|
<li>Build process now fetches latest const lib when required</li>
|
|
<li>Changed guard NPCs in Yanille watchtower to the authentic watchmen NPCs</li>
|
|
<li>Refactored mining<br />
|
|
<br />
|
|
Converted to content API<br />
|
|
Corrected the prospecting text of gem rocks<br />
|
|
Corrected the full-inventory text when mining gem rocks</li>
|
|
<li>Converted SummoningTabPlugin to SummoningTabListener<br />
|
|
Implemented "Dismiss now" for familiars</li>
|
|
<li>Equipping an item into an occupied equipment slot now places the swapped item into the inventory slot of the item being equipped</li>
|
|
<li>Added ability to define custom varbits via JSON<br />
|
|
Fixed the bank note/unnote and insert/swap toggle buttons not persisting between logins</li>
|
|
<li>Fixed hardcoded database credentials in unit tests</li>
|
|
<li>Reworked commands<br />
|
|
<br />
|
|
::commands now very pretty, paged and documents each command user has access to including privilege required<br />
|
|
Command definitions now support adding documentation in-place.<br />
|
|
Adds new command to hot-reload JSON while server is running (::reloadjson)</li>
|
|
<li>Added additional safety when cleaning up cutscene attributes</li>
|
|
<li>Moved demon slayer cutscene trigger to its own MapArea</li>
|
|
<li>Fixed bug that could cause bank to throw index out of bounds and vanish items when rearranging tabs with completely full bank</li>
|
|
<li>Fixed seemingly random server crashes caused by ArrayIndexOutOfBoundsException on unsafe type during threaded operations by synchronizing add/remove logic for PulseRunner.TASKS</li>
|
|
<li>Added the missing sound effect for when a tree is felled after a successful woodcutting attempt<br />
|
|
<br />
|
|
Sound can be heard by other players nearby</li>
|
|
<li>Fixed the long missing Lumbridge Achivement Diary store-browsing task</li>
|
|
<li>Fixed an exception thrown by the equipment interface</li>
|
|
<li>Converted EnchantedGemPlugin to Listener<br />
|
|
Converted EnchantedGemDialogue to DialogueFile</li>
|
|
<li>Reworked grand exchange offer processing<br />
|
|
<br />
|
|
Now much more efficient<br />
|
|
Offers will appear to complete almost instantaneously<br />
|
|
Players can no longer hoard bot offers as they will only be allocated at time of offer placement</li>
|
|
<li>Fixed incorrect banker NPC look-up behavior for bank booths<br />
|
|
Banker interactions are now properly restricted for Ultimate Ironmen<br />
|
|
Added theme-appropriate banker NPCs to booths at Void Knights' Outpost Island<br />
|
|
Added missing Canifis banker NPCs<br />
|
|
Fixed incorrect handling of Arnold Lydspor banking-related logic<br />
|
|
Added Arnold Lydspor dialogue<br />
|
|
Consolidated banker NPC listener logic into BankerNPC class itself<br />
|
|
Added ContentAPI call to check if a node offers an interaction option</li>
|
|
<li>Fixed exception thrown by an interaction with Ahab's beer</li>
|
|
<li>Fixed exception occurring when an NPC has no jobs that can be assigned to the player<br />
|
|
Fixed an issue that caused killing jobs not to work without relogging first</li>
|
|
<li>Fixed a bug where an NPC could not attack an entity that was already set as their target<br />
|
|
Fixed a regression that prevents some NPCs from walking back to their spawn point<br />
|
|
Fixed a longstanding issue that didn't properly reset NPCs who wandered too far out of their natural movement radius (now disables combat + walks them back to their spawn point + fully heals them)</li>
|
|
<li>Fixed bug where trying to buy-x too many items from a shop would not fill available inventory slots</li>
|
|
<li>Rewrote animal magnetism cutscene in the new cutscene system<br />
|
|
<br />
|
|
Fixes bug where the player could not progress</li>
|
|
<li>Fixed Rock Golem random event not spawning for low level players</li>
|
|
<li>Fixed an issue where lighting a lantern (or other light source) inside a dark area wouldn't be recognised</li>
|
|
<li>Rewrote enchanted jewellery<br />
|
|
<br />
|
|
Fixes the funny bug that gets you stuck as a tiny person when teleporting sometimes</li>
|
|
<li>Fixed exception thrown when invalid fairy ring codes are entered<br />
|
|
Fixed unhandled hairdresser button that lead to OOB exception<br />
|
|
Fixed oversight in ::loc that causes exceptions to be thrown in headless environments</li>
|
|
<li>Increased server stability<br />
|
|
Fixed NPE in IoEventHandler<br />
|
|
Fixed NPEs in PacketWriteQueue<br />
|
|
Reworked PacketWriteQueue slightly so that instead of breaking at first null packet we continue past it and pop the whole queue along the way</li>
|
|
<li>Refactored item note/unnote on bank booth handling<br />
|
|
QoL - only applies to bank booth, not banker NPCs<br />
|
|
Added server config world.bank_booth_note_enabled (enabled by default) to toggle the QoL globally<br />
|
|
Added server config world.bank_booth_note_uim (enabled by default) to toggle the QoL on ultimate ironmen only</li>
|
|
<li>ContentAPI methods now all take 2nd bank into account</li>
|
|
<li>Fixed a bug where NPCs couldn't be attacked against walls</li>
|
|
<li>Made wilderness NPCs immune to aggression tolerance<br />
|
|
Unified wilderness and standard death code, wilderness death code now only rolls the extra loot drops<br />
|
|
Fixed a bug that would cause revenant/player combat levels to sometimes be calculated incorrectly</li>
|
|
<li>Set user join date in database again on account creation</li>
|
|
<li>Fixed shield of arrav progression getting stuck, can now talk to tramp if you haven't joined a gang</li>
|
|
<li>Fremennik Easy Diary is now completable and Fremennik sea boots 1 can now be obtained<br />
|
|
PickUpEvent Event Hook created, for events that need to fire when player picks up a specific item<br />
|
|
All currently implemented Diary tasks where the player must pick up items have been converted to use the new PickUpEvent event hook<br />
|
|
New zone created for the windswept tree (highest tree in the Fremennik area task) for its diary task<br />
|
|
Rough dialogue created for obtaining your completed diary reward from Council Worker</li>
|
|
<li>Slayer expansion<br />
|
|
Sumona (NPC ID 7880) now implemented as a Slayer Master<br />
|
|
Sumona slayer task pool created, 1:1 with the task weights on the RSWiki<br />
|
|
Sumona NPC spawn added<br />
|
|
All slayer master task pools have been re-ordered alphabetically to match both live game wiki's task ordering<br />
|
|
Slayer task pools have been audited to ensure weights are correct<br />
|
|
Unimplemented tasks added to task tables but disabled<br />
|
|
Elves now added as a Slayer task, players can find them at Elf Camp and Lletya<br />
|
|
Elf slayer task added to task pool of Chaeldar and Duradel (as well as the new Sumona pool)<br />
|
|
Added Fremennik easy diary NPCs</li>
|
|
<li>Disabled aggression tolerance for GWD minion NPCs</li>
|
|
<li>New server config option to preload the world map on boot, removes lag caused by lazy loading (server.preload_map = true)<br />
|
|
Cached region clipping flags for faster lookups<br />
|
|
Minor optimizations to setAttribute codepath which avoids unnecessary checks<br />
|
|
Fixed a bug that would allow entities to attack through walls<br />
|
|
Fixed two separate bugs that would cause odd behavior attacking large entities from certain angles<br />
|
|
Removed unnecessary schema from global.sql<br />
|
|
Ensured that all but the `members` and `worlds` tables could be safely dropped out of the DB<br />
|
|
Better automatic handling for creating the default server account and creating the default server clan<br />
|
|
Fixed bugs related to interfaces flagged as uncloseable that would cause stack overflows<br />
|
|
Fixed premature home teleport while in tutorial<br />
|
|
Fixed getting stuck by going back up ladder in tutorial<br />
|
|
Fixed bug that prevented bots from taking damage<br />
|
|
Fixed a bug where players would not be in the default clan after completion of the tutorial<br />
|
|
Green Dragon bots reintroduced, no longer buy any items (these bots sell loot from green dragons in the wilderness on the GE)</li>
|
|
<li>Teleblock now persists across login sessions</li>
|
|
<li>Added support for many common variations of the jagex coordinate format for admin command ::tele, including:<br />
|
|
regionX_regionY<br />
|
|
plane_regionX_regionY<br />
|
|
regionX_regionY_localX_localY<br />
|
|
plane_regionX_regionY_localX_localY</li>
|
|
<li>Fixed tree spirit random event not spawning for some players</li>
|
|
<li>::rolldrops admin/testing command now clears container between invocations</li>
|
|
<li>Implemented pelting of rotten tomatoes<br />
|
|
Added ability to define listeners for Player interactions and usewith interactions<br />
|
|
Added ability to flag listeners instant (no path walking) execution</li>
|
|
<li>Add slayer task content API functions in preparation for coming work</li>
|
|
<li>Rewrote entire banking system (aside from dialogue), converted to listener system</li>
|
|
<li>Fixed many issues with login<br />
|
|
Reconnecting to an existing session can no longer cause an account wipe<br />
|
|
Player saves can no longer be saved unless they've already been parsed<br />
|
|
Sessions now have their most recent ping properly set<br />
|
|
Sessions can now recover from a hypothetical scenario where the session's player reference becomes null but the player is still in-game<br />
|
|
Players now disconnected properly if no packets have been received from the client in the last 20 seconds</li>
|
|
<li>Reduced revenant spawn burst size to stop them getting stuck<br />
|
|
Fixed unit test NPE<br />
|
|
New admin command clearrevs to clear revenants</li>
|
|
<li>GE offer notification system now supports opt-in privacy to remove username from messages<br />
|
|
Opt-in to GE privacy with new in-game command ::geprivacy on<br />
|
|
Removed discord GE offer update notifications (only new buy/sell offers shown)<br />
|
|
Limited in-game GE notifications to player offers only</li>
|
|
</ul> |