Farming System Plugin For RPG maker MV
A downloadable script
π Overview
The Farming System Plugin allows players to plant, water, and harvest crops based on a seasonal system. Crops require daily watering, have different growth rates, and cannot grow outside their designated season.
π Key Features
β
Seasonal Crops β Certain crops can only be planted in specific seasons.
β
Growth System β Crops grow daily when watered.
β
Watering System β Crops require daily watering, or they will wither.
β
Harvesting System β Fully grown crops can be harvested for items.
β
Season Tracking β The game transitions between Spring, Summer, and Fall every 28 days.
β
Quality System β Crop quality is affected by watering and missed days.
π§ How to Use
π± Planting a Crop
-
Set up an event on a farm tile.
-
Add this script call in an event to plant a crop:
FarmingSystem.plantCrop("tomato", this.eventId());
-
Ensure the crop type is allowed in the current season, or the planting will fail.
π Watering a Crop
-
Set up a watering event.
-
Add this script call inside an event to water a crop:
FarmingSystem.waterField(this.eventId());
-
If the crop is already watered today, it wonβt receive additional water.
π Harvesting a Crop
-
Check if a crop is fully grown.
-
Add this script call in an event to harvest the crop:
FarmingSystem.harvestCrop(this.eventId());
-
The crop will be removed, and the player will gain a harvestable item.
π Daily Crop Growth and Reset
To advance crop growth at the start of each day, call:
FarmingSystem.advanceGrowth();
To reset watering each day, call this in a Common Event:
let fieldData = FarmingSystem.getFieldData(); for (let eventID in fieldData) { fieldData[eventID].wateredCount = 0; } $gameMessage.add("A new day begins. All crops need water again!");
π¦ Seasonal System
Every 28 days, the season will automatically change.
To force a season change, use:
FarmingSystem.changeSeason();
Current Seasons:
-
Spring π±: Turnip, Potato, Cucumber, Strawberry
-
Summer β: Corn, Onion, Pepper, Tomato
-
Fall π: Carrot, Potato, Corn, Yam
Crops cannot grow outside their designated season.
π‘ Troubleshooting
Problem: "Field is already occupied."
Fix: Remove the old crop before planting a new one.
Problem: "This crop cannot be planted in this season."
Fix: Check if the crop is allowed in the current season.
Problem: Crops are not growing
Fix: Ensure daily watering is applied.
Problem: Crops disappear before harvesting
Fix: Avoid missing too many watering days.
π Summary of Key Script Calls
Functionality | Script Call |
---|---|
Plant a crop | FarmingSystem.plantCrop("cropType", eventID); |
Water a crop | FarmingSystem.waterField(eventID); |
Harvest a crop | FarmingSystem.harvestCrop(eventID); |
Advance crop growth | FarmingSystem.advanceGrowth(); |
Change the season | FarmingSystem.changeSeason(); |
NOTE: You will need to make your own time system via common events to make the daily growth work, and also make sure where this._eventId is please put the number of the event ID of the field tile you are eventing!! If you have any questions, please contact me directly before rating and leaving bad comments! Thank you.
Please credit me as "PoniSama," "Ponimeimei," or "PoniSan".
This is a pay-to-use plugin for RPG Maker MV using events mixed with script calls. I cannot provide visual assets, so please make your own or buy them from the Gotcha Gotcha Games store or on Steam! or even from others here on itch!
It is a plug-and-play plugin, so again, if anyone has questions, please reach out without hesitation !
Purchase
In order to download this script you must purchase it at or above the minimum price of $2.50 USD. You will get access to the following files:
Leave a comment
Log in with itch.io to leave a comment.