Skip to content

Feature/mutations command#65

Open
KoalaMauve wants to merge 12 commits intoEliteFarmers:masterfrom
KoalaMauve:feature/mutations-command
Open

Feature/mutations command#65
KoalaMauve wants to merge 12 commits intoEliteFarmers:masterfrom
KoalaMauve:feature/mutations-command

Conversation

@KoalaMauve
Copy link
Copy Markdown

Purpose
Helps players maximize coins per copper when purchasing mutations.

Usefull to max-out composter for the cheapest price

Current behavior

Uses Insta-Buy data by default
Can select between Insta-buy and Buy-order
Recalculate rates & ranking on select

Remove buttons & select after 60s / 30s since last activity.

Features

Supports Rose Dragon buff and Synthesis Chip buff (as optional parameters)

For crops that are not buyable on the Bazaar (currently only Jerryflower), displays N/A and treats the ratio as infinite

⚠️ Since farming-weight@14.0 isnt available for some reason (cannot update even manually), i've create custom types and hard-set some datas.

SC :
a
b
c
d

@ptlthg
Copy link
Copy Markdown
Collaborator

ptlthg commented Mar 12, 2026

Hi, sorry it's taken so long for me to look at this!

I generally like this idea, I do have a couple requests though:

  1. Please use EliteContainer rather than EliteEmbed
    EliteEmbed is the older Rich Embeds, while EliteContainer is the new Components v2 system from Discord. It requires a bit of code change to use, but if you look at existing uses of it in the code it shouldn't be that bad I hope. I'm trying to slowly migrate older embed based commands to the new components where I can, so I don't want to introduce a new command that uses the older system.

  2. You can use farming-weight@0.14.0 now, I didn't actually have that version published yet as I wanted to add more mutation helpers to it, but I released it now.
    You can import GREENHOUSE_MUTATIONS from farming-weight now and it has the mutations with an analysis property that has the values you need.

Sorry again about the delay

@KoalaMauve
Copy link
Copy Markdown
Author

Hi, as requested, I've replaced all EliteEmbed usages with EliteContainer.

From my testing, I haven't noticed any regressions so far, but I might have missed something.

I've also replaced my hard-coded list with the mutation list from farming-weight@0.14.0.

I also did some optimizations and reworked a some functions to make them more understandable and logical.

By the way, thanks for releasing the 0.14.0 earlier than expected, that helped a lot :)

@ptlthg
Copy link
Copy Markdown
Collaborator

ptlthg commented Apr 4, 2026

Hi sorry again for the delay. I tested it and everything seems okay, I only see one issue:

The command arguments should accept the chip level and rose dragon level rather than the percent, I don't think players know the percents off the top of their head. The only thing that complicates that is the chip rarity for levels under 15 because someone could have a legendary level 1 chip or whatever. Maybe a select option that just contains 0, level 10 rare, level 15 epic, and level 20 legendary would be fine?

(Also please run pnpm run format when you're done)

@KoalaMauve
Copy link
Copy Markdown
Author

As you said, I’ll follow the same approach you implemented for the Fortune tab on the website, meaning that once a certain level is reached, the rarity automatically upgrades to the next tier.

I also considered adding an optional parameter to manually set the rarity, but it doesn’t feel very user friendly, as they might not be aware that rarities are tied to level requirements, which could lead to confusion.

@KoalaMauve
Copy link
Copy Markdown
Author

⚠️ Do not merge before the synthesis PR on the website repository is approved, and available for the bot

I’ve replaced both synthesis and rose_dragon parameters that previously used bonus percentages with level-based values.
The calculations are now handled on our side.

For the synthesis chip rarity, we use the following logic:

Level Rarity
≥ 10 Rare
≥ 15 Epic
≥ 20 Legendary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants