Commit graph

732 commits

Author SHA1 Message Date
vk
d027728c7f fix clue scroll drops.
There is a fairly significant bug with clue scrolls. The only npcs that drops clue scrolls right now are hellhonds (that is because their ids are hard-coded in TreasureTrailPlugin.createDrop()). All other npcs do not drop clues due to a bug in `NPCDropTables`.

`NPCDropTables` has two separate ways to access the actual table: one is though `List<WeightedChanceItem> defaultTable`, ` List<WeightedChanceItem> charmTable`, and `List<WeightedChanceItem> mainTable`; And the other is though a combined table `NPCDropTable table`. The problem is that only `NPCDropTable table` is set properly--the other 3 tables are always empty.

The reason clues were bugged was because `TreasureTrailPlugin.createDrop()` has a check for `npc.getDefinition().getDropTables().getMainTable().size() < 3`, which always fails. I really do not see the point in this check to begin with, so i am going to remove it. The hard-coded check for hellounds is pointless as well and should be removed.
I am also going to remove the 3 empty tables from `NPCDropTables` to avoid and similar bugs in the future.

Alternatively, it is possible to make changes to `DropTableParser` and keep those tables, then add post-parsing step to populate `NPCDropTable table` from them. However that would just duplicate all the data in all drops table, and since nothing else was using these individual tables, i just opted for removing them.
2021-09-28 01:44:09 -07:00
vk
6589d73ef8 pc improvement - implement priority 2021-09-26 22:21:49 +00:00
vk
b519afd1ed use item.value instead of item.maxValue as base shop price
This fixes the issue of all shop prices being 5% more than they are supposed to (like dlong/d skimmy being 105k insread of 100k, and even spirit shards being 26 ea instead of 25 ea).
2021-09-25 13:25:48 -07:00
vk
8568241cfa bugfix: make FarmingPatch.TROLL_STRONGHOLD_HERB diease-free
The original change to add FarmingPatch.TROLL_STRONGHOLD_HERB to isFlowerProtected() was introduced a few days ago in order to attempt to make the troll patch disease-free.. however, it doesnt work.
The reason is that Patch.isFlowerProtected():297 has a check for `patch.type` to be `PatchType.ALLOTMENT`. That chech will return false before the when statement is ever executed.
I moved the check for TROLL_STRONGHOLD_HERB up a level since "isFlowerProtected" didnt seem like a right place for it anyway since it is not a flower protection.
2021-09-25 01:21:18 -07:00
vk
d1404924d4 fix infinite farming yield from evil turnips (and maybe others)
Currently, a grown evil turnip has infinite yeild. This happens because of the return statemnt in the `else` calse of `chance` definition in `Patch.rollLivesDecrement()`.
Because of the return, the method exists before `cropLives` is decremented.
2021-09-24 18:01:05 -07:00
vk
2dc4ac49f4 ironman drop fix: get drop if npcs delt damage.
Currenly the check is done against the entire ImpactLog, which includes NPC damage.
This becomes very annoying when it comes to places like god wars where npcs constantly attach each other.
This change makes the loot check only look at other players, and not npcs.
The ironman player in question still has to do the most damage (including npcs) to get the drop.
2021-09-23 12:47:33 -07:00
Avi Weinstock
2af1a6c2fd Bugfixes for combat and farming:
- Uncomposted patches no longer get lives incremented as if composted.
- Pitfall NPCs use the proper machinery for being not-attackable (so aviansies are no longer meleeable).
2021-09-23 13:00:20 -04:00
Ceikry
0962af29a8 Merge branch 'farming-fixes' into 'master'
Farming fixes:

See merge request 2009scape/2009scape!268
2021-09-22 23:46:26 +00:00
Avi Weinstock
c2a6aafed8 Farming fixes:
- Compost and supercompost now properly affect minimum herb yield.
- Troll stronghold herb patch is now disease-free.
- Mushroom patch west of Canifis now allows growing bittercap mushrooms.
- White lillies now grant protection to allotments.
2021-09-22 19:36:55 -04:00
Ceikry
009fdde1c7 Merge branch 'bolts' into 'master'
Fix broad bolts on turroths and kurasks

See merge request 2009scape/2009scape!264
2021-09-22 21:09:53 +00:00
vk
a0c6522fbc Fix broad bolts on turroths and kurasks 2021-09-22 21:09:53 +00:00
Ceikry
9cdd121a8d Merge branch 'fix-multitarget-xp' into 'master'
Fix xp of multitarget attacks (like chinchompas, dragon claw/halberd spec) and...

See merge request 2009scape/2009scape!265
2021-09-22 21:09:31 +00:00
Ceikry
bf0376c4fa Merge branch 'fix-bunyip-nullderef' into 'master'
Fix null dereference in bunyip special (the cooking map is keyed by raw food, not cooked food).

See merge request 2009scape/2009scape!266
2021-09-22 21:08:54 +00:00
Avi Weinstock
91657296dd Superglass Make has a 30% chance of yielding 2 molten glass. 2021-09-22 16:11:31 -04:00
Avi Weinstock
65aa4a82c3 Fix null dereference in bunyip special (the cooking map is keyed by raw food, not cooked food). 2021-09-22 15:31:02 -04:00
Avi Weinstock
849273ecb5 Fix xp of multitarget attacks (like chinchompas, dragon claw/halberd spec) and fix chinchompa attack pattern (square instead of plus). 2021-09-22 15:10:49 -04:00
ceikry
9c18af8f8d Possible fix for needing kicks 2021-09-17 13:01:35 -05:00
Avi Weinstock
45dd084f5c Implement pitfall trapping for larupias, graahks, and kyatts. 2021-09-16 15:54:14 -04:00
Avi Weinstock
d85b7223db Special attacks now have proper types (so they no longer ignore prayer) and give experience.
Also add "::infinitespecial" admin command for testing special attacks.
2021-09-15 13:18:00 -04:00
Avi Weinstock
c1021dac4e Add the roar animation each time TDs change attack styles. 2021-09-14 21:45:18 -04:00
Ceikry
bee2d26de2 Merge branch 'thessalia-change-clothes' into 'master'
Thessalia change-clothes bug-fix option and migrate to kotlin

See merge request 2009scape/2009scape!257
2021-09-14 22:38:43 +00:00
Ceikry
c421f43aa9 Merge branch 'charm-data' into 'master'
Make charm drop rates more accurate.

See merge request 2009scape/2009scape!258
2021-09-14 22:37:27 +00:00
Avi Weinstock
4039ce65f1 Explicitly set the combat style from the NPC config instead of assuming the default is melee.
Previously, TDs would just keep their previous style when switching to a state that had melee defined.
2021-09-14 15:37:27 -04:00
Avi Weinstock
e9749e7144 Make charm drop rates more accurate. 2021-09-13 21:03:15 -04:00
Ceikry
6a3d1858d3 Merge branch 'fix-tds-retaliation' into 'master'
Tormented demons now correctly retaliate if attacked while non-aggressive.

See merge request 2009scape/2009scape!256
2021-09-13 22:14:04 +00:00
Ceikry
4ae2d74b79 Merge branch 'jsonify-empty-charms' into 'master'
Move the global 1/15 chance to not drop charms from code to data.

See merge request 2009scape/2009scape!242
2021-09-13 22:13:47 +00:00
downthecrop
0182b93bc2 Fixes right-click change-clothes option and migrate the file to kotlin 2021-09-13 15:04:05 -07:00
Avi Weinstock
24e417619e Tormented demons now correctly retaliate if attacked while non-aggressive. 2021-09-13 16:56:17 -04:00
Avi Weinstock
e9f7b4e515 Improve NPC usage of protection prayers.
- `NPC.hasProtectionPrayer` now accurately reflects protection prayers defined in `npc_configs.json`.
- NPC protection prayers now block 100% of the damage when attacked by a player in `Entity.getFormattedHit` instead of only blocking 40%.
2021-09-12 21:21:36 -04:00
Avi Weinstock
b4bd9d7f08 Fix bunyip health formula and NPC id. 2021-09-11 19:43:05 -04:00
Ceikry
2849f55087 Merge branch 'more-tds-fixes' into 'master'
Increase tds aggro range and add proper music for the Ancient Guthix Temple.

See merge request 2009scape/2009scape!253
2021-09-11 01:52:05 +00:00
Avi Weinstock
07a7541a26 More TDs fixes:
- Increase TDs aggro range
- Add proper music for the Ancient Guthix Temple.
- Add a kill counter for TDs, and replace Bork with it in `::stats`.
2021-09-10 21:28:49 -04:00
Avi Weinstock
0c818ba752 Fly fishing rainbow fish now consumes stripy feathers instead of normal feathers. 2021-09-09 23:41:46 -04:00
Ceikry
34053f7078 Merge branch 'red-topaz-machete' into 'master'
Red Topaz Machete Animations

See merge request 2009scape/2009scape!248
2021-09-10 01:54:15 +00:00
Ceikry
fde5c42fc6 Merge branch 'master' into 'master'
Fix: Taverley Dungeon QA Pass 6

See merge request 2009scape/2009scape!249
2021-09-10 01:53:54 +00:00
skelsoft
1cfd58528b Fix: Taverley Dungeon QA Pass 6 2021-09-10 01:53:53 +00:00
Avi Weinstock
e4419a4951 Improve mechanics relating to Tormented Demons. 2021-09-10 01:52:49 +00:00
downthecrop
6853210ceb Animations 2021-09-06 17:00:27 -07:00
skelsoft
42bac3233b Fix: Taverley Dungeon QA Pass 5 2021-09-06 13:30:44 +00:00
ceikry
7dc6862395 Merge branch 'skelsoft/2009scape-master' 2021-09-04 16:30:12 -05:00
skelsoft
e2a1ca7712 Fix: Taverley Dungeon QA Pass 4
- Corrected all Tormented Demon spawns inside the AGT (6 Tormented Demons)
- The gnarlier WGS model variant of Tormented Demon will also be able to spawn in the AGT (ID 8358)
- Fixed punctuation error in lantern making dialogue (LanternCrafting.kt)
- Coffin (ID 32290) and Altar Slab (ID 32289) object examines added
- Added all Poison Spider spawns to Taverley Dungeon (8 Poison Spiders)
- Added all lvl-45 Monk of Zamorak spawns to Taverley Dungeon (6 Monks of Zamorak)
- Corrected both Black Dragon spawns in Taverley Dungeon with their correct model variants
- Fernahei's Fishing Hut shop stock correction
2021-09-03 11:44:02 +10:00
downthecrop
75e8930e9b blocked teleports still using runes while spam clicking 2021-09-02 13:38:14 -07:00
skelsoft
56a2be9aec Fix: Wizards' Guild Portals and more Taverley Dungeon work 2021-09-02 11:38:51 +00:00
skelsoft
1951aa1739 Fix: Wizards' Guild Portals, more Taverley Dungeon, misc
- Corrected the exact teleport coordinates for all 3 Wizards' Guild portals (WizardGuildPortals.kt)
- Correct text printed in the chatbox when using one of the Wizards' Guild portals
- added knife ground item spawn inside Sorceror's Tower
- Thormac (ID 389) NPC examine added.
- spawned Zandar Horfyre NPC (ID 3308) in his correct location at the top of Dark Wizards' Tower
- Added all correct Hellhound spawns in Taverley Dungeon (13 Hellhounds!)
2021-09-02 12:54:05 +10:00
skelsoft
02b2ff6d38 Fix: Taverley Dungeon QA Pass 3 2021-08-30 15:28:43 +00:00
skelsoft
4760725b0f Fix: Taverley Dungeon QA Pass 3
- Fishing Guild Shop stock corrections
- Fishing Guild Shop name correction
- Shantay Pass Shop stock corrections
- Grud's Herblore stall name correction
- Frincos' Fabulous Herb Store name correction
- Frincos' Fabulous Herb Store stock corrections
- level-19 Ghost examine text corrected
- Correct respawn rate of lvl-22 Skeletons at 70 ticks
- Correct respawn rate of lvl-25 Skeleton at 60 ticks
- Sapphire lantern (unfilled), Sapphire lantern (unlit) and Sapphire lantern (lit) now have correct examine text.
- Fishing spot (Barbarian fishing) and the Small Net/Bait Fishing spot near Barbarian Outpost now have correct examine text.
- Added all correct Hill Giant spawns to Taverley Dungeon (5 Hill Giants)
- Added all correct Giant Bat spawns to Taverley Dungeon (9 Giant Bats)
- Added all correct Ghost spawns to Taverley Dungeon (14 Ghosts)
- Added all correct Skeleton spawns to Taverley Dungeon (7 Skeletons)
- All monsters in the first half of Taverley Dungeon that have variant models, can now correctly spawn as variants (Lesser Demon, Hill Giant, Ghost, Skeleton)
2021-08-30 12:26:09 +10:00
ceikry
711d2b25ab Refactor more old object naming to scenery 2021-08-28 21:56:33 -05:00
ceikry
72c426a466 Refactor more old object naming to scenery 2021-08-28 21:53:12 -05:00
Avi Weinstock
e213e30d96 Move the global 1/15 chance to not drop charms from code to data. 2021-08-28 17:26:39 -04:00
ceikry
0f83943d4f Charm table population no longer uses heuristics 2021-08-28 16:19:03 -05:00