Quality

From WEBFISHING Wiki
Jump to navigation Jump to search

Quality (not to be confused with Tier) is an attribute assigned to creatures and objects fished up by the player. Quality is determined by the bait the player uses and, influences the sale price of objects.

Only one fishable item does not have randomized quality; the Treasure Chest, which always has a quality of Normal.

Qualities

There are 6 qualities of fish: Normal, Shining, Glistening, Opulent, Radiant, and Alpha.

The quality of the caught fish can be determined by the number of stars displayed while reeling, and by the message displayed after catching the fish.

The likelihood of catching each quality of fish depends on the bait the player uses.

Bait quality chances
Bait Chance for Normal Chance for Shining

(★)

Chance for Glistening

(★★)

Chance for Opulent

(★★★)

Chance for Radiant

(★★★★)

Chance for Alpha

(★★★★★)

WormBait.png
Worm
100%* 0% 0% 0% 0% 0%
CricketBait.png
Cricket
95% 5% 0% 0% 0% 0%
LeechBait.png
Leech
80.75% 14.25% 5% 0% 0% 0%
MinnowBait.png
Minnow
35.62% 35.63% 23.75% 5% 0% 0%
SquidBait.png
Squid
8.88% 35.53% 36.34% 14.25% 5% 0%
NautilusBait.png
Nautilus
0.16% 7.86% 24.05% 39.19% 23.75% 5%
GildedBait.png
Gilded Worm
0.0149% 1.47% 8.42% 29.7% 48.4% 12%

*Worms are the only tier-limited bait, and are only able to catch tier 1 and 2 fish. All other bait can catch all tiers of fish. As such, if one is attempting to catch tier 3 fish of Normal quality for Journal completion, crickets should be used and not worms.


These values are calculated by multiplying the chance of succeeding the roll by the chance of failing every roll for every higher quality.

Sale price

Quality is one of the factors for a fish's sale price. After an item's base value has been calculated based on loot weight and tier, the base value is multiplied by Quality and the size of the fish relative to the "average size".

The multipliers for quality are as so:

Quality sale price multipliers
Normal Shining Glistening Opulent Radiant Alpha
x1 x1.8 x4 x6 x10 x15

Technical

In player.gd there is a dictionary containing bait data called BAIT_DATA. This dictionary contains catch_chance, max_tier, and quality.

  • For worms, the value of quality is [1.0].
  • For crickets, the value of quality is [1.0, 0.05]
  • For leeches, the value of quality is [1.0, 0.15, 0.05]
  • For minnows, the value of quality is [1.0, 0.5, 0.25, 0.05]
  • For squid, the value of quality is [1.0, 0.8, 0.45, 0.15, 0.05]
  • For nautilus, the value of quality is [1.0, 0.98, 0.75, 0.55, 0.25, 0.05]
  • For gilded worms, the value of quality is [1.0, 0.99, 0.85, 0.75, 0.55, 0.12]

To determine rolled fish quality, the game:

  1. First defaults quality to "Normal"
  2. Begins a "for" loop that iterates q for as many values as there are in the ITEM_QUALITIES list. As of v1.06, ITEM_QUALITIES contains 6 values. This iterates q with values 0 to 5.
  3. If a random float is less than the value in position q of the quality value, the quality variable is chance to the value of q.
  4. If the size of the quality value minus one is less than q, the for loop immediately breaks. This ends the for loop once all quality chances have been rolled. e.g. rolling for the quality using squid will check 5 qualities. Once q's value is 5, BAIT_DATA[casted_bait]["quality"].size() - 1 (which in this case equals 5-1 which is 4) will be less than q (which is now 5). Subtracting 1 is required since Godot is zero-indexed and the value of q starts at 0.
  5. The for loop ends and the value of the quality variable is printed.
  • A quality variable value of 0 corresponds to Normal.
  • A quality variable value of 1 corresponds to Shining.
  • A quality variable value of 2 corresponds to Glistening.
  • A quality variable value of 3 corresponds to Opulent.
  • A quality variable value of 4 corresponds to Radiant.
  • A quality variable value of 5 corresponds to Alpha.