StarFarming is a farming-focused plugin that I've designed to bring a customizable and interactive experience to Minecraft. It's directly inspired by games like Hay Day and Stardew valley, and aims to provide a fully robust gameplay loop where players can cultivate crops. In the future updates I plan to implement fishing, animal husbandry, exploring, and more!
The rewrite has changed and removed a lot, so for the sake of simplicity refer to the github and discord for the full list of features that were removed, adjusted, or added to this version of the resource.
Here's a list of what the plugin currently offers:
Fully configurable crops The plugin gives you full control over the crops that exist, their names, growth times, value, random drops, and more. All configuration for crops is done in the main config.yml file.
Season based The plugin itself has game code logic for season change, allowing for a Stardew like system in which players have to plan their crop plant times around. The time seasons last for is configurable per the config.
Relational databasing v2.0.0 moves from a YAML storage system to a relational database. If you want to use a dedicated MySQL server you can, otherwise the plugin defaults to a sqlite file in the plugin's home directory. This is all configurable per the config.
Persistent Crops Previously when the server was reloaded, stopped, or restarted, crops would not be saved. In v2.0.0 this is not the case! A system has been put in place to serialize and de-serialize crop data to prevent this from occuring.
StarCrops The core feature of v2.0.0 is the StarCrop, which is the crop that the player occurs.
Currently, when a player plants a crop that crop is directly tied in ownership to that player.
Crops must meet the following conditions: - Seed is able to grow in the current season - Block below is a field - Planting block is an Ageable, meaning it's an actual plant type in spigot logic - 1/4 sides of the field directly touches water.
If these conditions are not met, the player will not be able to plant the crop.
In order to prevent destruction of a crop block the plugin blocks: - Trampling - Block updates from lava / water - Pre harvesting
If a player tries to break the block before it is ready, an intuitive GUI will be displayed. The time will tick down in the GUI, and some more information will be displayed.
Upon harvesting, players will be rewarded a random reward based on base/spread values in the config, as well as experience.
In the future I have plans to implement a teams / commune feature, but for now only the planting player may harvest.
Commands As of version 2.0.0 these are the commands
/level, lvl <required/view> <level/type> Required will show the player an in-game message indicating the required experience for the level.
View will show an intuitive GUI going over the players experience values, from level one to ten. As of right now, the only supported type is farming.
Permission: starfarming.general.levels
/profile, pf Opens an intuitive GUI showing player information, as well as a settings tab.
The settings tab currently allows players to edit settings, refer to the settings section of this for more info.
Permission: starfarming.general.profile
/setexperience, setexp, setxp <action> <target> <amount> Action - add, remove, set Target - A starplayer's name. So works for offline players as well. Amount - The experience value
Permission: starfarming.admin.setexp
/giveseed, gs <player> <seed_name> <amount> Player - must be an online player to give the seed to Seed name - internalized name of the seed to give Amount - Amount to give
Permission: starfarming.admin.giveseed
/sellall, sa Opens an intuitive GUI that allows players to sell all of their sellable items. Non-sellable items will be returned to inventory on sell. If the inventory is prematurely closed, the items will be returned to their inventory.
permission: starfarming.general.sellall
Tab Completion All commands that have multiple arguments have tab completion, that intuitively tries to suggest the closest value.
With seed names, command senders will get a list of all seeds available.
With players, they'll get a limited list of names, and so on.
Settings Add full logic for player settings.
As of right now, the primary setting is the ability to toggle the in-game scoreboard from showing.
In-game Information Scoreboard There is an in-game information scoreboard, that is toggleable on a server and player level. It gives intuitive information about the current season, time until next season, progress to the next level, and balance.
The future for StarFarming? I have a lot of plans for StarFarming in the future. Please join the discord if you want to see full play tests of updates, communicate with me about suggestions, and more. Refer to my github for updates as I make them, as well as to report a bug.