Stardew Valley
0 of 0

File information

Last updated

Original upload

Created by

KarratKake

Uploaded by

KarratKake

Virus scan

Safe to use

About this mod

A brand new taxes and bills mod for the modern modder! Taxes, bills and debt!

Requirements
Permissions and credits
Changelogs
Important: The 1.0 version of the mod is BROKEN. Please update to version 1.1

Ferngill Revenue Service is a taxes/bills mod built for Stardew 1.5+. On the 2nd of every month, players will receive an invoice from the FRS for a variety of configurable bills.

Taxes: Players will be taxed based on their income earned. Earning more money will put you in a higher tax bracket, and increase the percentage of your income that is taken each month.
Water Bill: Players will be charged for the number of sprinklers they've used on their farm. The system keeps track of how many sprinklers you've deployed over the course of the month, so you can't cheat the system by breaking all your sprinklers on the 1st!
Electric Bill: Players will be charged for the number of buildings they own, the level of your farmhouse, and how many machines are on your property, as well as for a completed Greenhouse. If you have PathosChild's Tractor Mod, you will be billed for your tractor as well. Silos, Wells, and Shipping Bins are not counted for the purposes of this bill.

Your balance will be automatically deducted from your money. If you can't afford it, you will go into debt. While you are in debt, the FRS will seize your Shipping Bin revenue until you're settled up. You will get a letter in the morning with the amount the FRS have taken, and your outstanding balance. This only applies to Shipping Bin revenue, so you can still make money by selling to Pierre and Willy and the like. Be warned, though: If you leave your debt unpaid for more than 2 weeks, the FRS will shut your water off, and your sprinklers will stop working until you pay up!

Most of the values in the mod are configurable to customize your experience! The default numbers should offer players a challenging but fair experience, but feel free to tune them to your liking, and share your favorite configurations in the comments!

Modded Machines:
FRS is compatible with machines from Artisan Valley, Industrialization, Baker's Life, Artisanal Soda Makers, and Shaved Ice and Frozen Treats. If you are a modder and would like to add FRS compatibility to your mod, see below. Users can also add machines by directly editing data.json.


Config:

DoTaxes: Whether or not the player is charged Taxes. Defaults to true.
DoWater: Whether or not the player is charged for Water. Defaults to true.
DoElectric: Whether or not the player is charged for Electric. Defaults to true.
TaxBracketSize: The size of the tax brackets. When your monthly income enters a new tax bracket, the percentage taxed of your income will increase. Tax bracket is calculated each month, so it is possible to decrease your tax bracket. Defaults to 50000.
MaximumTax: No matter how high your tax bracket becomes, you will never be taxed more than this. Defaults to .7, or 70%.
TaxHandicap: Increase this to decrease your tax bracket and make your experience easier. Make it negative to bump your tax bracket up, and make your game more difficult. Defaults to 0.
SprinklerBase: The base cost for each sprinkler. Note: Regular sprinklers count as 1 sprinkler, but Quality Sprinklers count as 3, and Iridium Sprinklers count as 9. If your water bill is way higher than you're expecting, this is likely why. Defaults to 20.
SprinklerMargin: A scaling percentage of the Sprinkler's base cost that is added to the bill. See equations below for more details. Defaults to .1
BuildingsBase: The base cost for each Farm building. Defaults to 500.
BuildingsMargin: A scaling percentage of the Building's base cost that is added to the bill. See equations below for more details.
HouseMultiplier: What your upgrade level is multiplied by before being cubed. Your first house upgrade is not billed. See equations below for more details. Defaults to 10.
DoMachines: Whether or not the player is charged for machines. Defaults to true.
WonkyMachines: Whether or not the mod uses 1.0 machine detection or not. This will override the default machine detection. Some people may prefer it as it lends a little bit of a dynamic twist to the Electric Bill, but it isn't compatible with automate. See below for more details. Defaults to false.
KegsUseElectricity: Whether or not 'analogue' machines like Kegs, Casks, and Preserves Jars are counted towards the electric bill. Turn this off to preserve the flavor of the mod, but keep it on for a far more balanced experience. Defaults to true.
MachinesBase: The base cost for each Machine (more or less). See below for more details. Defaults to 10.
MachinesMargin:
A scaling percentage of the Machine's base cost that is added to the bill. See equations below for more details.
GreenhouseCost: How much is added to your electric bill if you have a working Greenhouse. Defaults to 10000.
TractorCost: How much is added to your electric bill if you have a Tractor. Defaults to 20000.


Equations:
Taxes =  = moneyEarned * (MaximumTax / (1 + Math.Pow(1.7, -1 * (TaxBracket - 4 - TaxHandicap))))
This produces a sigmod (S-shaped) curve that approches MaximumTax.

WaterBill = (Sprinklers * SprinklerBase) + ((Sprinklers * SprinklerBase) * (SprinklerMargin * Sprinklers))
For example, at default values, 1 Sprinkler would cost you 20 base plus 2 (Margin of 10% * 1 sprinkler), for a total of 22. However, 2 Sprinklers would cost 48: 2 * 20 (base) plus 20% (Margin * 2). This way, the cost of many sprinklers is much greater than the cost of those sprinklers individually. This allows smaller farms a lot of room to grow but quickly becomes punishing towards industrial sized farms that use a lot of sprinklers. Remember that Quality Sprinklers count as 3, and Iridium Sprinklers count as 9.

ElectricBill = (Buildings* BuildingsBase) + ((Buildings * BuildingsBase) * (BuildingsMargin * Buildings))
PLUS (Machines * MachinesBase) + ((Machines * MachinesBase) * (MachinesMargin * Machines))
PLUS (houseUpgradeLevel * HouseMultiplier)^3
PLUS GreenhouseCost (if you have the greenhouse).

Update as of 1.1: This note now only applies to the WonkyMachines calculation.
A note about machines: Machines are actually very hard to count, because in the code they are basically treated like furniture with functions. The code does, however, have a way to get the number of machines that are currently ready to harvest. My workaround has been to keep track of how many machines are ready to harvest at one time, and basically assuming that that number is roughly how many machines you have/are using. Obviously not all machines will be reflected this way, and this may have some strange interactions with Automate. This is why I have included a toggle specifically for machines, if this way of counting is not to your liking. Still, the end result will be that the more machines you have, the more you should be charged, so I've left it defaulted to true.

Note to modders:
As mentioned above, a number of modded machines have been hardcoded into FRS. If your mod is not included, and you'd like to make it compatible with FRS, you can call the public methods addToMachineWhitelist(List<string>) and addToKegWhitelist(List<string>). By passing a List of the names of your modded machines, FRS will include those machines in the Electric Bill calculations.

Install
  1. Install the latest version of SMAPI.
  2. Install the latest version of Content Patcher.
  3. Download this mod and unzip it into Stardew Valley/Mods.
  4. Run the game using SMAPI.

Compatibility
  • Works with Stardew Valley 1.5 on Linux/Mac/Windows
  • Works in single player. Untested in multiplayer, may have some strange interactions.