Junior Pathway Course 2.5D Game

Farming Game

Autumn 2023

In this project, my primary goal was to learn Rust and gain the ability to apply its advantages when working with C++ in the future. I opted for the Bevy game engine as I aimed to explore a more comprehensive implementation of the Entity-Component-System (ECS) architecture. Additionally, in this project, I aimed to delve into complex AI and optimizations, including techniques like chunk loading.

Rust
Bevy
Chunk Loading
Tilemap
AI

Key Features

Challenges, solutions and lessons learnt

To enable chunk loading while separating entity visuals from the tilemap, I faced the challenge of storing all data within the tilemap while accommodating various types of plants. To address this, I leveraged Rust's enums, which not only facilitated straightforward comparisons of tile types but also enabled the storage of structs. These enums allowed for the storage of additional data specific to different tile objects.

Trello