A tool to calculate and visualise the profitability of crops in Stardew Valley
- The current in-game date
- The ratio of gold:silver:regular quality crops, as determined by farming level and fertilizer used
- The 'Tiller' and 'Agriculturist' professions
- The growth speed of a crop, as determined by fertilizer and 'Agriculturist' profession
- Which shops the player chooses to buy from, and the cost of seeds only from the players chosen shops
- The minimum yield for each crop, and the chance for extra crops when harvesting
- Whether the player buys seeds, or uses the Seed Maker
- Whether seeds are planted on the farm or in the greenhouse
- The cost of fertilizer, including how long it remains for
- Selling harvested produce as Artisan Goods, by using Kegs, Preserves Jars and Casks
- Daily luck levels
- Giant crops
Different calculations are used depending on which 'Show profit as' option is chosen: minimum profit, or average profit.
This is the absolute minimum profit possible to be made, assuming that no quality crops are harvested, and only the minimum yield for each crop is harvested (no extra crops):
( Harvests βοΈ Yield βοΈ Sell price ) β Seed price
This calculation is identical to that on the Stardew Valley Wiki.
( Harvests βοΈ ( Yield β Chance for extra crops ) βοΈ ( ( Normal quality sell price βοΈ Chance for normal quality ) β ( Silver quality sell price βοΈ Chance for silver quality ) β ( Gold quality sell price βοΈ Chance for gold quality ) ) ) β Seed price
This project has only been tested with the above requirements, but there is a good chance that it will work with earlier versions
-
Clone this repository
git clone https://github.com/polarstoat/stardew-crop-profits.git
-
Change into the new folder
cd stardew-crop-profits/
-
Install dependencies
npm install
-
Run the default gulp task (an alias for the
serve
task) for development to watch files in theapp/
folder and live reload/inject changes with Browsersyncgulp
-
Run the
serve:dist
task to preview a full build before deployinggulp serve:dist
-
Run the
deploy
task to publish to GitHub Pagesgulp deploy
.
βββ .tmp/
βΒ Β βββ css/
βΒ Β βββ js/
βββ app/
βΒ Β βββ img/
βΒ Β βββ js/
βΒ Β βββ scss/
βΒ Β βββ index.html
βββ dist/
βΒ Β βββ css/
βΒ Β βββ img/
βΒ Β βββ js/
βΒ Β βββ index.html
βββ .eslintrc.js
βββ .gitignore
βββ LICENSE.md
βββ README.md
βββ gulpfile.js
βββ package-lock.json
βββ package.json
βββ stardew-crop-profits.sublime-project
File | Purpose |
---|---|
.tmp/ |
A temporary folder automatically created during development with the serve gulp task. Contains compiled Sass and JavaScript |
app/ |
Source code of the application. The contents of this folder are compiled and minified by gulp, and then copied to dist/ |
dist/ |
Compiled and minified, distribution code. The contents of this folder are pushed to GitHub Pages. As this contains entirely 'built' code, this folder is ignored by Git |
.eslintrc.js |
Configuration for the ESLint JS linter |
.gitignore |
Specifies what files Git should ignore (documentation) |
LICENSE.md |
License information about the project |
README.md |
Information about the project |
gulpfile.js |
Tasks to be run by gulp for automating Sass compilation, JS minification, GitHub Pages deployment, etc. |
package-lock.json |
Automatically generated by npm to manage the node_modules/ tree (documentation) |
package.json |
Manages project dependencies (documentation) |
stardew-crop-profits.sublime-project |
Project file for Sublime Text (documentation) |
Contributions to the project are very much welcome. Please open issues to discuss features and report bugs. If you would like to submit a pull request, please do so, but adhere to the conventions of the project.