|
| 1 | +# MyIslandGame Release Notes |
| 2 | + |
| 3 | +## v0.0.3-alpha (March 2, 2025) |
| 4 | + |
| 5 | +### New Features |
| 6 | + |
| 7 | +#### Resource System |
| 8 | +- Added `Resource` class with ID, name, description, category, and properties |
| 9 | +- Implemented `ResourceManager` for managing resource definitions |
| 10 | +- Created resource categories: Organic, Mineral, and Environmental |
| 11 | +- Added 12 initial resource types including wood, stone, berries, seeds, etc. |
| 12 | +- Created placeholder textures for all resources |
| 13 | + |
| 14 | +#### Environmental Objects |
| 15 | +- Added `EnvironmentalObjectComponent` for interactive world objects |
| 16 | +- Created object types: trees, rocks, and bushes with unique behaviors |
| 17 | +- Implemented growth stages and visual changes based on harvesting |
| 18 | +- Added resource regrowth over time based on in-game time |
| 19 | +- Integrated environmental objects with world generation |
| 20 | + |
| 21 | +#### Inventory System |
| 22 | +- Implemented `Inventory` and `InventorySlot` classes for item storage |
| 23 | +- Added `InventoryComponent` for player inventory management |
| 24 | +- Created hotbar selection system with number keys and scrolling |
| 25 | +- Implemented item stacking and management |
| 26 | +- Added basic item types (Resource, Tool) with inheritance |
| 27 | + |
| 28 | +#### Resource Gathering |
| 29 | +- Created `GatheringSystem` for handling resource collection |
| 30 | +- Implemented tool-specific gathering (axe for trees, pickaxe for rocks) |
| 31 | +- Added tool durability system |
| 32 | +- Created visual feedback when resources are gathered |
| 33 | +- Integrated gathering with the inventory system |
| 34 | + |
| 35 | +### UI Improvements |
| 36 | +- Added inventory UI with hotbar display |
| 37 | +- Implemented inventory toggle (E key) |
| 38 | +- Created item display with quantity indicators |
| 39 | +- Added selection highlighting for current hotbar slot |
| 40 | + |
| 41 | +### Technical Improvements |
| 42 | +- Extended ECS with new components and systems |
| 43 | +- Added `PlayerComponent` to identify the player entity |
| 44 | +- Created `EnvironmentalObjectFactory` for easily creating world objects |
| 45 | +- Improved input handling for inventory management |
| 46 | +- Added integration between multiple systems |
| 47 | + |
| 48 | +### Known Issues |
| 49 | +- Tool acquisition is limited (will be addressed in v0.0.4) |
| 50 | +- No crafting system yet to utilize gathered resources |
| 51 | +- Art assets are simple placeholder shapes |
| 52 | +- No visual confirmation when something can be interacted with |
| 53 | +- Limited feedback when inventory is full |
| 54 | +- Some environmental objects might spawn in inaccessible locations |
| 55 | + |
| 56 | +### Controls |
| 57 | +- **WASD/Arrows**: Move player |
| 58 | +- **E**: Toggle inventory |
| 59 | +- **1-9**: Select hotbar slot |
| 60 | +- **Mouse Wheel**: Cycle through hotbar |
| 61 | +- **Left-Click**: Gather resources / Use selected item |
| 62 | +- **+/-**: Zoom camera |
| 63 | +- **T**: Fast-forward time |
| 64 | +- **R**: Reset time to 8:00 AM |
| 65 | +- **ESC**: Quit game |
| 66 | + |
| 67 | +## v0.0.2-alpha (February 15, 2025) |
| 68 | + |
| 69 | +### New Features |
| 70 | + |
| 71 | +#### Camera System |
| 72 | +- Implemented camera following with smooth tracking |
| 73 | +- Added zoom functionality using +/- keys |
| 74 | +- Added screen clamping to world boundaries |
| 75 | +- Created camera transformation for proper rendering |
| 76 | + |
| 77 | +#### World Generation |
| 78 | +- Added tile-based map system |
| 79 | +- Implemented procedural generation for maps |
| 80 | +- Created different tile types (grass, water, sand, stone) |
| 81 | +- Added properties for passable/impassable tiles |
| 82 | + |
| 83 | +#### Day/Night Cycle |
| 84 | +- Created time management system |
| 85 | +- Implemented day/night visual transitions |
| 86 | +- Added ambient light color changes |
| 87 | +- Created time display and controls |
| 88 | + |
| 89 | +### Technical Improvements |
| 90 | +- Fixed collision detection precision |
| 91 | +- Added boundary checks for player movement |
| 92 | +- Improved entity rendering with depth sorting |
| 93 | +- Fixed Vector2 modification issues |
| 94 | + |
| 95 | +### Controls |
| 96 | +- **WASD/Arrows**: Move player |
| 97 | +- **+/-**: Zoom camera in/out |
| 98 | +- **T**: Speed up time (5x) |
| 99 | +- **R**: Reset time to 8:00 AM |
| 100 | +- **ESC**: Quit game |
| 101 | + |
| 102 | +## v0.0.1-alpha (January 20, 2025) |
| 103 | + |
| 104 | +### Initial Features |
| 105 | + |
| 106 | +#### Technical Foundation |
| 107 | +- Set up MonoGame with .NET 8.0 |
| 108 | +- Created basic game loop |
| 109 | +- Implemented window and graphics initialization |
| 110 | + |
| 111 | +#### Core Systems |
| 112 | +- Entity Component System (ECS) architecture |
| 113 | +- Game state management |
| 114 | +- Input handling system with action mapping |
| 115 | + |
| 116 | +#### Basic Gameplay |
| 117 | +- Simple player movement with WASD/arrow keys |
| 118 | +- Collision detection |
| 119 | +- Obstacle creation for testing |
| 120 | + |
| 121 | +### Technical Notes |
| 122 | +- Requires MonoGame 3.8.1 or later |
| 123 | +- Built with .NET 8.0 |
| 124 | +- Mac users need to install freetype6 library |
0 commit comments