fish

Privateunrated

Content

320 lines
{=(COMMENT):Puts user roleids inside a shorter variable to reuse. Also sets the embed color as the user's color.}
{=(urid):{user(roleids)}} {embed(color):{user(color)}}

{=():}

{=(COMMENT):The current place the player is at. Determines the fishes they will be able to catch.}
{=(place.Name):Sea,Lake}
{=(place.ID):677866878214995968 677866896497836082}

{=(COMMENT):Checks for the current place. Needs as many variables as the number of places.}
{=(check.{place.Name(1):,}):{if({contains({place.ID(1)}):{urid}}==true):true|false}}
{=(check.{place.Name(2):,}):{if({contains({place.ID(2)}):{urid}}==true):true|false}}
{=(COMMENT):Returns the name of the current place.}
{=(check.Place):{if({check.{place.Name(1):,}}==true):{place.Name(1):,}|{place.Name(2):,}}}
{=(COMMENT):Returns the role ID of the current place.}
{=(check.Place.role):{if({check.{place.Name(1):,}}==true):{place.ID(1)}|{place.ID(2)}}}
{=(COMMENT):Just a short alias or the previous variable.}
{=(place):{check.Place}}

{=(COMMENT):Baits/Lures names, roles and __catch rate__ values. (Also known as Bite Success)}
{=(bait.Name):Worms,Lure}
{=(bait.ID):678642112903905321 678642154482171914}

{=(COMMENT):Checks for the current bait/lure to apply certain catch rates to certain fishes. Needs as many variables as the number of tools.}
{=(check.Bait1):{if({contains({bait.ID(1)}):{urid}}==true):true|false}}
{=(check.Bait2):{if({contains({bait.ID(2)}):{urid}}==true):true|false}}
{=(check.bait.Name):{if({check.Bait1}==true):{bait.Name(1):,}|{bait.Name(2):,}}}
{=(check.bait.Role):{if({check.Bait1}==true):{bait.ID(1)}|{if({check.Bait2}==true):{bait.ID(2)}}}}

{=(COMMENT):Reels names, roles and __% chance to reel in the fish.}
{=(reel.Name):[Common] Starter Spinning Reel,[Rare] Steel Spinning Reel,[Unique] Spinning Reel,[Legendary] Spinning Reel}
{=(reel.ID):678644787829669898 678644830808571905}
{=(COMMENT):Rod Roles ID per Rarity. Common - Rare - Unique - Legendary.}
{=(reel.Common.ID):678644787829669898}
{=(reel.Common.Name):{reed.Name(1):,}}
{=(reel.Rare.ID):678644830808571905}
{=(reel.Rare.Name):{reed.Name(2):,}}
{=(reel.Unique.ID):683382666396958736}
{=(reel.Unique.Name):{reed.Name(3):,}}
{=(reel.Legendary.ID):683382938892894264}
{=(reel.Legendary.Name):{reed.Name(4):,}}
{=(COMMENT):[NEW] Checks for the current fishing Reel rarity. Common - Rare - Unique - Legendary.}
{=(check.reel.Common):{if({in({reel.Common.ID}):{urid}}==true):true|false}}
{=(check.reel.Rare):{if({in({reel.Rare.ID}):{urid}}==true):true|false}}
{=(check.reel.Unique):{if({in({reel.Unique.ID}):{urid}}==true):true|false}}
{=(check.reel.Legendary):{if({in({reel.Legendary.ID}):{urid}}==true):true|false}}

{=(check.reel.role):{if({check.reel.Common}==true):{reel.Common.ID}|{if({check.reel.Rare}==true):{reel.Rare.ID}|{if({check.reel.Unique}==true):{reel.Unique.ID}|{if({check.reel.Legendary}==true):{reel.Legendary.ID}}}}}}

{=(check.reel.name):{if({check.reel.Common}==true):{reel.Common.Name}|{if({check.reel.Rare}==true):{reel.Rare.Name}|{if({check.reel.Unique}==true):{reel.Unique.Name}|{if({check.reel.Legendary}==true):{reel.Legendary.Name}}}}}}

{=(COMMENT):Rods names and corresponding roles.}
{=(rod.Name):[Common] Light Fishing Rod,[Rare] Sturdy Fishing Rod,[Unique] Fishing Rod,[Legendary] Fishing Rod}
{=(COMMENT):Rod Roles ID per Rarity. Common - Rare - Unique - Legendary.}
{=(rod.Common.ID):677637507810197548}
{=(rod.Common.name):{rod.Name(1):,}}
{=(rod.Rare.ID):677637549690191940}
{=(rod.Rare.name):{rod.Name(2):,}}
{=(rod.Unique.ID):683382165001601098}
{=(rod.Unique.name):{rod.Name(3):,}}
{=(rod.Legendary.ID):683382248921497670}
{=(rod.Legendary.name):{rod.Name(4):,}}
{=(COMMENT):[NEW] Checks for the current fishing Rod rarity. Common - Rare - Unique - Legendary.}
{=(check.rod.Common):{if({in({rod.Common.ID}):{urid}}==true):true|false}}
{=(check.rod.Rare):{if({in({rod.Rare.ID}):{urid}}==true):true|false}}
{=(check.rod.Unique):{if({in({rod.Unique.ID}):{urid}}==true):true|false}}
{=(check.rod.Legendary):{if({in({rod.Legendary.ID}):{urid}}==true):true|false}}

{=(check.rod.role):{if({check.rod.Common}==true):{rod.Common.ID}|{if({check.rod.Rare}==true):{rod.Rare.ID}|{if({check.rod.Unique}==true):{rod.Unique.ID}|{if({check.rod.Legendary}==true):{rod.Legendary.ID}}}}}}

{=(check.rod.name):{if({check.rod.Common}==true):{rod.Common.Name}|{if({check.rod.Rare}==true):{rod.Rare.Name}|{if({check.rod.Unique}==true):{rod.Unique.Name}|{if({check.rod.Legendary}==true):{rod.Legendary.Name}}}}}}



{=(COMMENT):Names of all the fishes per places.}
{=(Sea.Fish):Octopus-Carp-Bass-Gudgeon-Seaweed}
{=(Lake.Fish):Walleye-Sturgeon-Smelt-Perch-Mud}

{=(COMMENT):Fishes Stats for Sea and Lake. From left to right.}
{=(COMMENT):Octopus Stats.}
{=(Sea.Fish0.Speed):Fast}
{=(Sea.Fish0.Size):Giant}
{=(COMMENT):Carp Stats.}
{=(Sea.Fish1.Speed):Medium}
{=(Sea.Fish1.Size):Big}
{=(COMMENT):Bass Stats.}
{=(Sea.Fish2.Speed):Medium}
{=(Sea.Fish2.Size):Big}
{=(COMMENT):Gudgeon Stats.}
{=(Sea.Fish3.Speed):Medium}
{=(Sea.Fish3.Size):Medium}
{=(COMMENT):Seaweed Stats.}
{=(Sea.Fish4.Speed):Slow}
{=(Sea.Fish4.Size):Small}

{=(COMMENT):Walleye Stats.}
{=(Lake.Fish0.Speed):Fast}
{=(Lake.Fish0.Size):Giant}
{=(COMMENT):Sturgeon Stats.}
{=(Lake.Fish1.Speed):Medium}
{=(Lake.Fish1.Size):Big}
{=(COMMENT):Smelt Stats.}
{=(Lake.Fish2.Speed):Medium}
{=(Lake.Fish2.Size):Big}
{=(COMMENT):Perch Stats.}
{=(Lake.Fish3.Speed):Medium}
{=(Lake.Fish3.Size):Medium}
{=(COMMENT):Mud Stats.}
{=(Lake.Fish4.Speed):Slow}
{=(Lake.Fish4.Size):Small}


{=(fn):{if({check.Sea}==true):{Sea.Fish}|{if({check.Lake}==true):{Lake.Fish}}}}

{=(COMMENT):"fns" spaces the fishes names, while "fnc" and "fnc2" puts a comma between each of them.}
{=(fns):{replace(-, ):{fn}}}
{=(fnc):{replace(-,,):{fn}}}
{=(fnc2):{join(,):{fns}}}

{=(COMMENT):Fish roles ID per place. Each of them has the same index value as their corresponding fish name in fn.}
{=(Sea.Fish.ID):677641065012002826 677641330859704361 677641370378305568 677641473579155485 677641490536595456}
{=(Lake.Fish.ID):677864465374511105 677864425390080047 677864274835668995 677864238928232459 677864189687103489}
{=(Fish.ID):{if({check.Sea}==true):{Sea.Fish.ID}|{if({check.Lake}==true):{Lake.Fish.ID}}}}

{=(COMMENT):Each bait's rate per fish. From the rarest to the most common.}
{=(COMMENT):If the current bait is Worms, then: 0,1%, 0,9%, 9%, 20% and 60%}
{=(b1r):1 9 90 200 600}
{=(b2r):1 9 20 30 40}

{=(COMMENT):Returns the catch rate corresponding to its bait.}
{=(trate):{if({check.Bait1}==true):{b1r}|{if({check.Bait2}==true):{b2r}}}}

{=(rates):{trate}}

{=(COMMENT):Au lieu de randomiser nom de poisson, randomiser l'index qui correspond à leur nom ?
Picks a weighted index to then use it when needed.}
{=(frindex):{rates(1)}|0,{rates(2)}|1,{rates(3)}|2,{rates(4)}|3,{rates(5)}|4}
{=(findex):{random:{frindex}}}
{=(fish):{list({findex}):{fnc}}}


{=(rate.CurrentFishPre):{m:{list({findex}):{join(,):{rates}}}/10}}
{=(rate.CurrentFish):{if({rate.CurrentFishPre(2):.}==0):{m:trunc({rate.CurrentFishPre})}|{rate.CurrentFishPre}}}

{=(RoleToAdd):{list({findex}):{join(,):{Fish.ID}}}}

{=(COMMENT):-----GOOGLE SHEETS VALUES-----}
{=(COMMENT):All the values at which we take a value/percentage.}
{=(pr):1 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75}

{=(COMMENT):Number by which we add the function. In that case: 2*(1-100)+"100"}
{=(sum):100}

{=(COMMENT):Total. Currently 300.}
{=(tot):{m:trunc(2*100+{sum})}}

{=(COMMENT):Percentages per Rod per Fish Speed. Not Flee.
Format: Rod.RaritySpeed. Example: rod.cvf is Rod.CommonVeryFast}
{=(COMMENT):Rod - Common - All Speed - 34% - 43%}
{=(rod.cvf):{m:round(((2*{pr(1)}+{sum})/{tot})*100)}}
{=(rod.cf):{m:round(((2*{pr(2)}+{sum})/{tot})*100)}}
{=(rod.cn):{m:round(((2*{pr(3)}+{sum})/{tot})*100)}}
{=(rod.cs):{m:round(((2*{pr(4)}+{sum})/{tot})*100)}}

{=(COMMENT):Rod - Rare - All Speed - 47% - 57%}
{=(rod.rvf):{m:round(((2*{pr(5)}+{sum})/{tot})*100)}}
{=(rod.rf):{m:round(((2*{pr(6)}+{sum})/{tot})*100)}}
{=(rod.rn):{m:round(((2*{pr(7)}+{sum})/{tot})*100)}}
{=(rod.rs):{m:round(((2*{pr(8)}+{sum})/{tot})*100)}}

{=(COMMENT):Rod - Unique - All Speed - 60% - 70%}
{=(rod.uvf):{m:round(((2*{pr(9)}+{sum})/{tot})*100)}}
{=(rod.uf):{m:round(((2*{pr(10)}+{sum})/{tot})*100)}}
{=(rod.un):{m:round(((2*{pr(11)}+{sum})/{tot})*100)}}
{=(rod.us):{m:round(((2*{pr(12)}+{sum})/{tot})*100)}}

{=(COMMENT):Rod - Unique - All Speed - 73% - 83%}
{=(rod.lvf):{m:round(((2*{pr(13)}+{sum})/{tot})*100)}}
{=(rod.lf):{m:round(((2*{pr(14)}+{sum})/{tot})*100)}}
{=(rod.ln):{m:round(((2*{pr(15)}+{sum})/{tot})*100)}}
{=(rod.ls):{m:round(((2*{pr(16)}+{sum})/{tot})*100)}}


{=(COMMENT):Percentages per Reel per Fish Size. Reel In.}
{=(COMMENT):Reel - Common - All Size - 34% - 43%}
{=(reel.cvf):{m:round(((2*{pr(1)}+{sum})/{tot})*100)}}
{=(reel.cf):{m:round(((2*{pr(2)}+{sum})/{tot})*100)}}
{=(reel.cn):{m:round(((2*{pr(3)}+{sum})/{tot})*100)}}
{=(reel.cs):{m:round(((2*{pr(4)}+{sum})/{tot})*100)}}

{=(COMMENT):Reel - Rare - All Size - 47% - 57%}
{=(reel.rvf):{m:round(((2*{pr(5)}+{sum})/{tot})*100)}}
{=(reel.rf):{m:round(((2*{pr(6)}+{sum})/{tot})*100)}}
{=(reel.rn):{m:round(((2*{pr(7)}+{sum})/{tot})*100)}}
{=(reel.rs):{m:round(((2*{pr(8)}+{sum})/{tot})*100)}}

{=(COMMENT):Reel - Unique - All Size - 60% - 70%}
{=(reel.uvf):{m:round(((2*{pr(9)}+{sum})/{tot})*100)}}
{=(reel.uf):{m:round(((2*{pr(10)}+{sum})/{tot})*100)}}
{=(reel.un):{m:round(((2*{pr(11)}+{sum})/{tot})*100)}}
{=(reel.us):{m:round(((2*{pr(12)}+{sum})/{tot})*100)}}

{=(COMMENT):Reel - Unique - All Size - 73% - 83%}
{=(reel.lvf):{m:round(((2*{pr(13)}+{sum})/{tot})*100)}}
{=(reel.lf):{m:round(((2*{pr(14)}+{sum})/{tot})*100)}}
{=(reel.ln):{m:round(((2*{pr(15)}+{sum})/{tot})*100)}}
{=(reel.ls):{m:round(((2*{pr(16)}+{sum})/{tot})*100)}}


{=(COMMENT):Current Speed and Size of the caught fish.}
{=(fish.Speed):{{place}.Fish{findex}.Speed}}
{=(fish.Speed.var):{if({fish.Speed}==Very Fast):vf|{if({fish.Speed}==Fast):f|{if({fish.Speed}==Medium):n|{if({fish.Speed}==Slow):s}}}}}

{=(fish.Size):{{place}.Fish{findex}.Size}}
{=(fish.Size.var):{if({fish.Size}==Giant):vf|{if({fish.Size}==Big):f|{if({fish.Size}==Medium):n|{if({fish.Size}==Small):s}}}}}

{=(check.rod.Type):{if({check.rod.Common}==true):c|{if({check.rod.Rare}==true):r|}{if({check.rod.Unique}==true):u|}{if({check.rod.Legendary}==true):l|}}}
{=(check.reel.Type):{if({check.reel.Common}==true):c|{if({check.reel.Rare}==true):r|}{if({check.reel.Unique}==true):u|}{if({check.reel.Legendary}==true):l|}}}

{=(COMMENT):Calls the rod.[rarity][stats]}
{=(chance.Rod):{rod.{check.rod.Type}{fish.Speed.var}}}
{=(chance.Reel):{reel.{check.reel.Type}{fish.Size.var}}}

{=(chance.RodReel):{m:trunc({chance.Rod}*{chance.Reel})}}

{=(finalchance):{#:{chance.RodReel}|yes,{m:trunc(10000-{chance.RodReel})}|no}}



{=(COMMENT):Actual sentence containing the caught fish.}
{=(msg.Casting):Casting line with <@&{check.bait.Role}> as your bait...}
{=(msg.Caught):**<@&{RoleToAdd}>** appears with a **{rate.CurrentFish}%** chance, {user(mention)}!}
{=(msg.Already):{user}, you were about to catch a **{fish}** but decided to let it go, as you already have one.}
{=(msg.check):{if({contains({RoleToAdd}):{urid}}==true):{msg.Already}|{msg.Caught}}}

{=(check.Already):{contains({RoleToAdd}):{urid}}}

{=(COMMENT):Outputs.}
{=(output):{msg.Casting}

{msg.check}}
{=(msg.Footer):Type "!fish inv" to check your inventory.}
{=(img.Thumbnail):https://cdn.discordapp.com/emojis/627578406799933460.png?v=1}

{{if({channel(id)}!=677625685879291921):redirect:677625685879291921}}

{=(COMMENT):Command block part.}
{silence}{override}

{{and({args}==|{finalchance}==yes|{check.Already}==false):c:role add {user(id)} {RoleToAdd}}}

{=(spacedchance):{replace(, ):{chance.RodReel}}}
{=(decimalchance):{join():{spacedchance(+3)}.{spacedchance(-2+)}}}

{=(COMMENT):msg.Debug outputs.}
{=(msg.Debug2):{msg.Casting}
{msg.Caught}
__Speed:__ **{fish.Speed}**
__Size:__ **{fish.Size}**

**<@&{check.rod.role}>** gives you a **{chance.Rod}%** chance for the fish to not flee.
**<@&{check.reel.role}>** gives you a **{chance.Reel}%** chance of reeling the fish in.

{if({finalchance}==yes):**Success**! You caught **<@&{RoleToAdd}>** with a **{decimalchance}%** chance!|{if({finalchance}==no):**Better luck next time!** You didn't catch **<@&{RoleToAdd}>** with a **{decimalchance}%** chance.}}

Available Fishes at the <@&{check.Place.role}>:
`{join(, ):{fns}}`}






{=(msg.Debug):{rod.cvf}%: Rod - Common - Very Fast
{rod.cf}%: Rod - Common - Fast
{rod.cn}%: Rod - Common - Medium
{rod.cs}%: Rod - Common - Slow

{rod.rvf}%: Rod - Rare - Very Fast
{rod.rf}%: Rod - Rare - Fast
{rod.rn}%: Rod - Rare - Medium
{rod.rs}%: Rod - Rare - Slow

{rod.uvf}%: Rod - Unique - Very Fast
{rod.uf}%: Rod - Unique - Fast
{rod.un}%: Rod - Unique - Medium
{rod.us}%: Rod - Unique - Slow

{rod.lvf}%: Rod - Legendary - Very Fast
{rod.lf}%: Rod - Legendary - Fast
{rod.ln}%: Rod - Legendary - Medium
{rod.ls}%: Rod - Legendary - Slow
}


{=(COMMENT):IGNORE. MAY NOT USE.
-----------------------------------------------------------}

{=(COMMENT):[OUTDATED] Checks for the current fishing Rod to apply the overall chance to pull/reel in the fish. Needs as many variables as the number of tools.}
{=(check.rod1):{if({contains({rod.ID(1)}):{urid}}==true):true|false}}
{=(check.rod2):{if({contains({rod.ID(2)}):{urid}}==true):true|false}}

{=(COMMENT):[OUTDATED] Checks for the current fishing Reel to apply the overall chance to pull/reel in the fish. Needs as many variables as the number of tools.}
{=(check.Reel1):{if({contains({reel.ID(1)}):{urid}}==true):true|false}}
{=(check.Reel2):{if({contains({reel.ID(2)}):{urid}}==true):true|false}}

{=(COMMENT):[OUTDATED] Selecting each fish's corresponding rate in lists and variables.}
{=(r1):{list(0):{rates}}|}
{=(r2):{list(1):{rates}}|}
{=(r3):{list(2):{rates}}|}
{=(r4):{list(3):{rates}}|}
{=(r5):{list(4):{rates}}|}

{=(COMMENT):[OUTDATED] Formats each fish name along with their catch rate.}
{=(fishes):{r1}{fnc(1):,},{r2}{fnc(2):,},{r3}{fnc(3):,},{r4}{fnc(4):,},{r5}{fnc(5):,}}
{=(fishout):{random:{fishes}}}

{=(COMMENT):[OUTDATED] Grabs the index of the fish role to apply depending on the msg.Caught fish, then returns the role ID.}
{=(cfish):{index({fish}):{fns}}}
{=(RoleToAdd2):{list({cfish}):{replace( ,,):{Fish.ID}}}}

Embed

1 line
{"color": 5198940, "footer": {"text": "{msg.Footer}"}, "description": "{msg.Debug2}"}
Raw JSON
{
  "id": 81926,
  "created_at": "2019-10-20T23:57:38.000Z",
  "tag_name": "fish",
  "nsfw": false,
  "owner_id": "149926720114262016",
  "uses": 996,
  "description": null,
  "restricted": false,
  "shared": false,
  "deleted": false,
  "safe": "unrated",
  "hidden": false,
  "guild_id": "314660900302749696",
  "sharer": "149926720114262016",
  "content": "{=(COMMENT):Puts user roleids inside a shorter variable to reuse. Also sets the embed color as the user's color.}\n{=(urid):{user(roleids)}} {embed(color):{user(color)}}\n\n{=():}\n\n{=(COMMENT):The current place the player is at. Determines the fishes they will be able to catch.}\n{=(place.Name):Sea,Lake}\n{=(place.ID):677866878214995968 677866896497836082}\n\n{=(COMMENT):Checks for the current place. Needs as many variables as the number of places.}\n{=(check.{place.Name(1):,}):{if({contains({place.ID(1)}):{urid}}==true):true|false}}\n{=(check.{place.Name(2):,}):{if({contains({place.ID(2)}):{urid}}==true):true|false}}\n{=(COMMENT):Returns the name of the current place.}\n{=(check.Place):{if({check.{place.Name(1):,}}==true):{place.Name(1):,}|{place.Name(2):,}}}\n{=(COMMENT):Returns the role ID of the current place.}\n{=(check.Place.role):{if({check.{place.Name(1):,}}==true):{place.ID(1)}|{place.ID(2)}}}\n{=(COMMENT):Just a short alias or the previous variable.}\n{=(place):{check.Place}}\n\n{=(COMMENT):Baits/Lures names, roles and __catch rate__ values. (Also known as Bite Success)}\n{=(bait.Name):Worms,Lure}\n{=(bait.ID):678642112903905321 678642154482171914}\n\n{=(COMMENT):Checks for the current bait/lure to apply certain catch rates to certain fishes. Needs as many variables as the number of tools.}\n{=(check.Bait1):{if({contains({bait.ID(1)}):{urid}}==true):true|false}}\n{=(check.Bait2):{if({contains({bait.ID(2)}):{urid}}==true):true|false}}\n{=(check.bait.Name):{if({check.Bait1}==true):{bait.Name(1):,}|{bait.Name(2):,}}}\n{=(check.bait.Role):{if({check.Bait1}==true):{bait.ID(1)}|{if({check.Bait2}==true):{bait.ID(2)}}}}\n\n{=(COMMENT):Reels names, roles and __% chance to reel in the fish.}\n{=(reel.Name):[Common] Starter Spinning Reel,[Rare] Steel Spinning Reel,[Unique] Spinning Reel,[Legendary] Spinning Reel}\n{=(reel.ID):678644787829669898 678644830808571905}\n{=(COMMENT):Rod Roles ID per Rarity. Common - Rare - Unique - Legendary.}\n{=(reel.Common.ID):678644787829669898}\n{=(reel.Common.Name):{reed.Name(1):,}}\n{=(reel.Rare.ID):678644830808571905}\n{=(reel.Rare.Name):{reed.Name(2):,}}\n{=(reel.Unique.ID):683382666396958736}\n{=(reel.Unique.Name):{reed.Name(3):,}}\n{=(reel.Legendary.ID):683382938892894264}\n{=(reel.Legendary.Name):{reed.Name(4):,}}\n{=(COMMENT):[NEW] Checks for the current fishing Reel rarity. Common - Rare - Unique - Legendary.}\n{=(check.reel.Common):{if({in({reel.Common.ID}):{urid}}==true):true|false}}\n{=(check.reel.Rare):{if({in({reel.Rare.ID}):{urid}}==true):true|false}}\n{=(check.reel.Unique):{if({in({reel.Unique.ID}):{urid}}==true):true|false}}\n{=(check.reel.Legendary):{if({in({reel.Legendary.ID}):{urid}}==true):true|false}}\n\n{=(check.reel.role):{if({check.reel.Common}==true):{reel.Common.ID}|{if({check.reel.Rare}==true):{reel.Rare.ID}|{if({check.reel.Unique}==true):{reel.Unique.ID}|{if({check.reel.Legendary}==true):{reel.Legendary.ID}}}}}}\n\n{=(check.reel.name):{if({check.reel.Common}==true):{reel.Common.Name}|{if({check.reel.Rare}==true):{reel.Rare.Name}|{if({check.reel.Unique}==true):{reel.Unique.Name}|{if({check.reel.Legendary}==true):{reel.Legendary.Name}}}}}}\n\n{=(COMMENT):Rods names and corresponding roles.}\n{=(rod.Name):[Common] Light Fishing Rod,[Rare] Sturdy Fishing Rod,[Unique] Fishing Rod,[Legendary] Fishing Rod}\n{=(COMMENT):Rod Roles ID per Rarity. Common - Rare - Unique - Legendary.}\n{=(rod.Common.ID):677637507810197548}\n{=(rod.Common.name):{rod.Name(1):,}}\n{=(rod.Rare.ID):677637549690191940}\n{=(rod.Rare.name):{rod.Name(2):,}}\n{=(rod.Unique.ID):683382165001601098}\n{=(rod.Unique.name):{rod.Name(3):,}}\n{=(rod.Legendary.ID):683382248921497670}\n{=(rod.Legendary.name):{rod.Name(4):,}}\n{=(COMMENT):[NEW] Checks for the current fishing Rod rarity. Common - Rare - Unique - Legendary.}\n{=(check.rod.Common):{if({in({rod.Common.ID}):{urid}}==true):true|false}}\n{=(check.rod.Rare):{if({in({rod.Rare.ID}):{urid}}==true):true|false}}\n{=(check.rod.Unique):{if({in({rod.Unique.ID}):{urid}}==true):true|false}}\n{=(check.rod.Legendary):{if({in({rod.Legendary.ID}):{urid}}==true):true|false}}\n\n{=(check.rod.role):{if({check.rod.Common}==true):{rod.Common.ID}|{if({check.rod.Rare}==true):{rod.Rare.ID}|{if({check.rod.Unique}==true):{rod.Unique.ID}|{if({check.rod.Legendary}==true):{rod.Legendary.ID}}}}}}\n\n{=(check.rod.name):{if({check.rod.Common}==true):{rod.Common.Name}|{if({check.rod.Rare}==true):{rod.Rare.Name}|{if({check.rod.Unique}==true):{rod.Unique.Name}|{if({check.rod.Legendary}==true):{rod.Legendary.Name}}}}}}\n\n\n\n{=(COMMENT):Names of all the fishes per places.}\n{=(Sea.Fish):Octopus-Carp-Bass-Gudgeon-Seaweed}\n{=(Lake.Fish):Walleye-Sturgeon-Smelt-Perch-Mud}\n\n{=(COMMENT):Fishes Stats for Sea and Lake. From left to right.}\n{=(COMMENT):Octopus Stats.}\n{=(Sea.Fish0.Speed):Fast}\n{=(Sea.Fish0.Size):Giant}\n{=(COMMENT):Carp Stats.}\n{=(Sea.Fish1.Speed):Medium}\n{=(Sea.Fish1.Size):Big}\n{=(COMMENT):Bass Stats.}\n{=(Sea.Fish2.Speed):Medium}\n{=(Sea.Fish2.Size):Big}\n{=(COMMENT):Gudgeon Stats.}\n{=(Sea.Fish3.Speed):Medium}\n{=(Sea.Fish3.Size):Medium}\n{=(COMMENT):Seaweed Stats.}\n{=(Sea.Fish4.Speed):Slow}\n{=(Sea.Fish4.Size):Small}\n\n{=(COMMENT):Walleye Stats.}\n{=(Lake.Fish0.Speed):Fast}\n{=(Lake.Fish0.Size):Giant}\n{=(COMMENT):Sturgeon Stats.}\n{=(Lake.Fish1.Speed):Medium}\n{=(Lake.Fish1.Size):Big}\n{=(COMMENT):Smelt Stats.}\n{=(Lake.Fish2.Speed):Medium}\n{=(Lake.Fish2.Size):Big}\n{=(COMMENT):Perch Stats.}\n{=(Lake.Fish3.Speed):Medium}\n{=(Lake.Fish3.Size):Medium}\n{=(COMMENT):Mud Stats.}\n{=(Lake.Fish4.Speed):Slow}\n{=(Lake.Fish4.Size):Small}\n\n\n{=(fn):{if({check.Sea}==true):{Sea.Fish}|{if({check.Lake}==true):{Lake.Fish}}}}\n\n{=(COMMENT):\"fns\" spaces the fishes names, while \"fnc\" and \"fnc2\" puts a comma between each of them.}\n{=(fns):{replace(-, ):{fn}}}\n{=(fnc):{replace(-,,):{fn}}}\n{=(fnc2):{join(,):{fns}}}\n\n{=(COMMENT):Fish roles ID per place. Each of them has the same index value as their corresponding fish name in fn.}\n{=(Sea.Fish.ID):677641065012002826 677641330859704361 677641370378305568 677641473579155485 677641490536595456}\n{=(Lake.Fish.ID):677864465374511105 677864425390080047 677864274835668995 677864238928232459 677864189687103489}\n{=(Fish.ID):{if({check.Sea}==true):{Sea.Fish.ID}|{if({check.Lake}==true):{Lake.Fish.ID}}}}\n\n{=(COMMENT):Each bait's rate per fish. From the rarest to the most common.}\n{=(COMMENT):If the current bait is Worms, then: 0,1%, 0,9%, 9%, 20% and 60%}\n{=(b1r):1 9 90 200 600}\n{=(b2r):1 9 20 30 40}\n\n{=(COMMENT):Returns the catch rate corresponding to its bait.}\n{=(trate):{if({check.Bait1}==true):{b1r}|{if({check.Bait2}==true):{b2r}}}}\n\n{=(rates):{trate}}\n\n{=(COMMENT):Au lieu de randomiser nom de poisson, randomiser l'index qui correspond à leur nom ?\nPicks a weighted index to then use it when needed.}\n{=(frindex):{rates(1)}|0,{rates(2)}|1,{rates(3)}|2,{rates(4)}|3,{rates(5)}|4}\n{=(findex):{random:{frindex}}}\n{=(fish):{list({findex}):{fnc}}}\n\n\n{=(rate.CurrentFishPre):{m:{list({findex}):{join(,):{rates}}}/10}}\n{=(rate.CurrentFish):{if({rate.CurrentFishPre(2):.}==0):{m:trunc({rate.CurrentFishPre})}|{rate.CurrentFishPre}}}\n\n{=(RoleToAdd):{list({findex}):{join(,):{Fish.ID}}}}\n\n{=(COMMENT):-----GOOGLE SHEETS VALUES-----}\n{=(COMMENT):All the values at which we take a value/percentage.}\n{=(pr):1 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75}\n\n{=(COMMENT):Number by which we add the function. In that case: 2*(1-100)+\"100\"}\n{=(sum):100}\n\n{=(COMMENT):Total. Currently 300.}\n{=(tot):{m:trunc(2*100+{sum})}}\n\n{=(COMMENT):Percentages per Rod per Fish Speed. Not Flee.\nFormat: Rod.RaritySpeed. Example: rod.cvf is Rod.CommonVeryFast}\n{=(COMMENT):Rod - Common - All Speed - 34% - 43%}\n{=(rod.cvf):{m:round(((2*{pr(1)}+{sum})/{tot})*100)}}\n{=(rod.cf):{m:round(((2*{pr(2)}+{sum})/{tot})*100)}}\n{=(rod.cn):{m:round(((2*{pr(3)}+{sum})/{tot})*100)}}\n{=(rod.cs):{m:round(((2*{pr(4)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Rod - Rare - All Speed - 47% - 57%}\n{=(rod.rvf):{m:round(((2*{pr(5)}+{sum})/{tot})*100)}}\n{=(rod.rf):{m:round(((2*{pr(6)}+{sum})/{tot})*100)}}\n{=(rod.rn):{m:round(((2*{pr(7)}+{sum})/{tot})*100)}}\n{=(rod.rs):{m:round(((2*{pr(8)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Rod - Unique - All Speed - 60% - 70%}\n{=(rod.uvf):{m:round(((2*{pr(9)}+{sum})/{tot})*100)}}\n{=(rod.uf):{m:round(((2*{pr(10)}+{sum})/{tot})*100)}}\n{=(rod.un):{m:round(((2*{pr(11)}+{sum})/{tot})*100)}}\n{=(rod.us):{m:round(((2*{pr(12)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Rod - Unique - All Speed - 73% - 83%}\n{=(rod.lvf):{m:round(((2*{pr(13)}+{sum})/{tot})*100)}}\n{=(rod.lf):{m:round(((2*{pr(14)}+{sum})/{tot})*100)}}\n{=(rod.ln):{m:round(((2*{pr(15)}+{sum})/{tot})*100)}}\n{=(rod.ls):{m:round(((2*{pr(16)}+{sum})/{tot})*100)}}\n\n\n{=(COMMENT):Percentages per Reel per Fish Size. Reel In.}\n{=(COMMENT):Reel - Common - All Size - 34% - 43%}\n{=(reel.cvf):{m:round(((2*{pr(1)}+{sum})/{tot})*100)}}\n{=(reel.cf):{m:round(((2*{pr(2)}+{sum})/{tot})*100)}}\n{=(reel.cn):{m:round(((2*{pr(3)}+{sum})/{tot})*100)}}\n{=(reel.cs):{m:round(((2*{pr(4)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Reel - Rare - All Size - 47% - 57%}\n{=(reel.rvf):{m:round(((2*{pr(5)}+{sum})/{tot})*100)}}\n{=(reel.rf):{m:round(((2*{pr(6)}+{sum})/{tot})*100)}}\n{=(reel.rn):{m:round(((2*{pr(7)}+{sum})/{tot})*100)}}\n{=(reel.rs):{m:round(((2*{pr(8)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Reel - Unique - All Size - 60% - 70%}\n{=(reel.uvf):{m:round(((2*{pr(9)}+{sum})/{tot})*100)}}\n{=(reel.uf):{m:round(((2*{pr(10)}+{sum})/{tot})*100)}}\n{=(reel.un):{m:round(((2*{pr(11)}+{sum})/{tot})*100)}}\n{=(reel.us):{m:round(((2*{pr(12)}+{sum})/{tot})*100)}}\n\n{=(COMMENT):Reel - Unique - All Size - 73% - 83%}\n{=(reel.lvf):{m:round(((2*{pr(13)}+{sum})/{tot})*100)}}\n{=(reel.lf):{m:round(((2*{pr(14)}+{sum})/{tot})*100)}}\n{=(reel.ln):{m:round(((2*{pr(15)}+{sum})/{tot})*100)}}\n{=(reel.ls):{m:round(((2*{pr(16)}+{sum})/{tot})*100)}}\n\n\n{=(COMMENT):Current Speed and Size of the caught fish.}\n{=(fish.Speed):{{place}.Fish{findex}.Speed}}\n{=(fish.Speed.var):{if({fish.Speed}==Very Fast):vf|{if({fish.Speed}==Fast):f|{if({fish.Speed}==Medium):n|{if({fish.Speed}==Slow):s}}}}}\n\n{=(fish.Size):{{place}.Fish{findex}.Size}}\n{=(fish.Size.var):{if({fish.Size}==Giant):vf|{if({fish.Size}==Big):f|{if({fish.Size}==Medium):n|{if({fish.Size}==Small):s}}}}}\n\n{=(check.rod.Type):{if({check.rod.Common}==true):c|{if({check.rod.Rare}==true):r|}{if({check.rod.Unique}==true):u|}{if({check.rod.Legendary}==true):l|}}}\n{=(check.reel.Type):{if({check.reel.Common}==true):c|{if({check.reel.Rare}==true):r|}{if({check.reel.Unique}==true):u|}{if({check.reel.Legendary}==true):l|}}}\n\n{=(COMMENT):Calls the rod.[rarity][stats]}\n{=(chance.Rod):{rod.{check.rod.Type}{fish.Speed.var}}}\n{=(chance.Reel):{reel.{check.reel.Type}{fish.Size.var}}}\n\n{=(chance.RodReel):{m:trunc({chance.Rod}*{chance.Reel})}}\n\n{=(finalchance):{#:{chance.RodReel}|yes,{m:trunc(10000-{chance.RodReel})}|no}}\n\n\n\n{=(COMMENT):Actual sentence containing the caught fish.}\n{=(msg.Casting):Casting line with <@&{check.bait.Role}> as your bait...}\n{=(msg.Caught):**<@&{RoleToAdd}>** appears with a **{rate.CurrentFish}%** chance, {user(mention)}!}\n{=(msg.Already):{user}, you were about to catch a **{fish}** but decided to let it go, as you already have one.}\n{=(msg.check):{if({contains({RoleToAdd}):{urid}}==true):{msg.Already}|{msg.Caught}}}\n\n{=(check.Already):{contains({RoleToAdd}):{urid}}}\n\n{=(COMMENT):Outputs.}\n{=(output):{msg.Casting}\n\n{msg.check}}\n{=(msg.Footer):Type \"!fish inv\" to check your inventory.}\n{=(img.Thumbnail):https://cdn.discordapp.com/emojis/627578406799933460.png?v=1}\n\n{{if({channel(id)}!=677625685879291921):redirect:677625685879291921}}\n\n{=(COMMENT):Command block part.}\n{silence}{override}\n\n{{and({args}==|{finalchance}==yes|{check.Already}==false):c:role add {user(id)} {RoleToAdd}}}\n\n{=(spacedchance):{replace(, ):{chance.RodReel}}}\n{=(decimalchance):{join():{spacedchance(+3)}.{spacedchance(-2+)}}}\n\n{=(COMMENT):msg.Debug outputs.}\n{=(msg.Debug2):{msg.Casting}\n{msg.Caught}\n__Speed:__ **{fish.Speed}**\n__Size:__ **{fish.Size}**\n\n**<@&{check.rod.role}>** gives you a **{chance.Rod}%** chance for the fish to not flee.\n**<@&{check.reel.role}>** gives you a **{chance.Reel}%** chance of reeling the fish in.\n\n{if({finalchance}==yes):**Success**! You caught **<@&{RoleToAdd}>** with a **{decimalchance}%** chance!|{if({finalchance}==no):**Better luck next time!** You didn't catch **<@&{RoleToAdd}>** with a **{decimalchance}%** chance.}}\n\nAvailable Fishes at the <@&{check.Place.role}>:\n`{join(, ):{fns}}`}\n\n\n\n\n\n\n{=(msg.Debug):{rod.cvf}%: Rod - Common - Very Fast\n{rod.cf}%: Rod - Common - Fast\n{rod.cn}%: Rod - Common - Medium\n{rod.cs}%: Rod - Common - Slow\n\n{rod.rvf}%: Rod - Rare - Very Fast\n{rod.rf}%: Rod - Rare - Fast\n{rod.rn}%: Rod - Rare - Medium\n{rod.rs}%: Rod - Rare - Slow\n\n{rod.uvf}%: Rod - Unique - Very Fast\n{rod.uf}%: Rod - Unique - Fast\n{rod.un}%: Rod - Unique - Medium\n{rod.us}%: Rod - Unique - Slow\n\n{rod.lvf}%: Rod - Legendary - Very Fast\n{rod.lf}%: Rod - Legendary - Fast\n{rod.ln}%: Rod - Legendary - Medium\n{rod.ls}%: Rod - Legendary - Slow\n}\n\n\n{=(COMMENT):IGNORE. MAY NOT USE.\n-----------------------------------------------------------}\n\n{=(COMMENT):[OUTDATED] Checks for the current fishing Rod to apply the overall chance to pull/reel in the fish. Needs as many variables as the number of tools.}\n{=(check.rod1):{if({contains({rod.ID(1)}):{urid}}==true):true|false}}\n{=(check.rod2):{if({contains({rod.ID(2)}):{urid}}==true):true|false}}\n\n{=(COMMENT):[OUTDATED] Checks for the current fishing Reel to apply the overall chance to pull/reel in the fish. Needs as many variables as the number of tools.}\n{=(check.Reel1):{if({contains({reel.ID(1)}):{urid}}==true):true|false}}\n{=(check.Reel2):{if({contains({reel.ID(2)}):{urid}}==true):true|false}}\n\n{=(COMMENT):[OUTDATED] Selecting each fish's corresponding rate in lists and variables.}\n{=(r1):{list(0):{rates}}|}\n{=(r2):{list(1):{rates}}|}\n{=(r3):{list(2):{rates}}|}\n{=(r4):{list(3):{rates}}|}\n{=(r5):{list(4):{rates}}|}\n\n{=(COMMENT):[OUTDATED] Formats each fish name along with their catch rate.}\n{=(fishes):{r1}{fnc(1):,},{r2}{fnc(2):,},{r3}{fnc(3):,},{r4}{fnc(4):,},{r5}{fnc(5):,}}\n{=(fishout):{random:{fishes}}}\n\n{=(COMMENT):[OUTDATED] Grabs the index of the fish role to apply depending on the msg.Caught fish, then returns the role ID.}\n{=(cfish):{index({fish}):{fns}}}\n{=(RoleToAdd2):{list({cfish}):{replace( ,,):{Fish.ID}}}}",
  "embed": "{\"color\": 5198940, \"footer\": {\"text\": \"{msg.Footer}\"}, \"description\": \"{msg.Debug2}\"}",
  "last_fetched": "2026-10-20T20:40:31.366Z"
}