Skip to content

MisterNooblet/weekend_assigment_6_2d_minecraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AppleSeeds Weekend Assigment 6 - 2D "Minecraft"

This is a minecraft like game with 2 game modes , where a player selects a grid size with a minimum of 10x10 and a maximum of 40x40 , and the engine generates a randomized world , or a blank one in sandbox mode.

Demo

https://ar-2d-mc.netlify.app/

Game Explanation

You start in a randomly generated or blank world with an empty/full inventory.

You can gather any resource from the map using the tools youre provided , using tools accordingly a hatchet will gather wood and leaves , a spade will gather soild , and the pickaxe will gather anything below the soil

you can also place the materials you have gathered back on the map by choosing the according material from your inventory and placing it on a empty tile.

Project Phases of development Roadmap

  • Design , Deisign custom cursors , adding SFX

  • Implement basic HTML "Skeleton"

  • Basic styling with CSS

  • Developing Game Engine step by step

    • Implementing map generation algorithm
    • Implementing grid generator
    • Implementing basic tile harvesting
    • Implementing tile laying function
    • Implementing a feature to allow the player to gather only tiles with nothing above them (realistic feature)
    • Implementing a game reset function
  • Declaring and targeting all DOM elements from game engine's script.

  • Adding a game tutorial element on the main screen

  • Making custom cursors functional

  • Adding hover animations , and various transitions and effects

  • Refactoring and commenting code.

🛠 Resources Breakdown

Game Engine: JavaScript

UI: HTML , CSS

ART: Taken from Minecraft wiki

Lessons Learned

  • Sharpened my algorithmic thinking

  • Sharpened my grid skills as well as deeper understanding of how to use 2D arrays for my purposes and advantages

  • Using exports and imports to break down my Engine to smaller moving parts

  • Using localStorage better for my advantage

Authors

🚀 About Me

I'm a full stack development student.

PS

Feel free to use the code and art as you wish and don't forget to Star ⭐ the repository.

Releases

No releases published

Packages

No packages published