Skip to content

marcojalenyu/myfarm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

129 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyFarm: A basic Java farming game

image image

MyFarm is a basic JavaFX-based farming simulation game where players manage a farm, plant crops, and progress through days.

A release version can be downloaded and played via the tags in the Release section.

Features:

  • Farm Management: Plow, plant, water, fertilize, and harvest crops on dirt tiles
  • Tool System: Use various tools including hoe, watering can, shovel, sickle, and fertilizer
  • Crop Growing: Plant different seed types (root crops, flowers, fruits, trees) with varying growth times and yields
  • Inventory System: Manage stackable and non-stackable items with a visual hotbar and inventory menu
  • Day/Night Cycle: Experience time progression with day transitions and in-game time display
  • Shop System: Buy and sell items to progress your farm
  • Player Progression: Gain experience and level up as you work your farm
  • Audio: Sound effects and music support for immersive gameplay

Prerequisites

  1. Java 21 or higher
  2. Gradle (included via wrapper)
  3. Building the Project: ./gradlew build

Run the application

To run it using a code editor: ./gradlew run

Technologies Used

  • JavaFX 21: UI framework
  • Jackson: JSON parsing for data files
  • JUnit 5: Testing framework
  • Gradle: Build automation

Game Data

The following items and configurations are loaded from JSON files:

  • tools.json: Tool definitions and properties
  • seeds.json: Seed types, crop data, and growth parameters

Maps are defined in XML format based on Tiled map editor conventions.

About

A farming simulation game built in Java

Topics

Resources

Stars

Watchers

Forks

Contributors