A lightweight pseudo-3D sandbox survival game written in Java using LibGDX framework for rendering, input handling, and audio playback.
TinyBlox focuses on atmospheric exploration, topology-aware terrain, modular architecture, procedural generation, and lightweight sandbox gameplay systems.
TinyBlox is currently focused on:
- Sandbox interaction systems
- Terrain/topology experimentation
- Atmospheric pseudo-3D rendering
- Procedural terrain generation
- Lightweight gameplay architecture
- Exploration and progression systems
TinyBlox is built around layered terrain instead of voxels.
The world is composed of TileStacks that create pseudo-3D traversal, allowing caves, cliffs, ladders, elevation changes, and terrain-driven exploration without using a traditional voxel engine.
The focus is on:
- Exploration
- Traversal
- Atmosphere
- Terrain interaction
- Lightweight architecture
- Layered pseudo-3D terrain system
- Chunk-based world architecture
- Procedural terrain generation
- Terrain depth/topology rendering
- Procedural tree generation
- Player and enemy entities
- Health and stamina systems
- Inventory and item systems
- Item drops and pickups
- Tool progression system
- Basic crafting system
- Ore generation
- Camera follow system
- Keyboard and mouse input handling
- Audio playback system
- Block placing and destroying
- Directional selector system
- Day/night cycle
- Atmospheric ambient/local lighting
- Modular engine structure
TinyBlox is structured into modular systems including:
EngineRendererCameraTerrainChunkTileTileStackControllerEntityMobEntityPlayerEnemyInventory
TinyBlox is an actively developed sandbox survival game focused on exploration, traversal, atmosphere, and terrain interaction.
The world uses lightweight layered terrain instead of voxel rendering, focusing on topology, traversal, silhouettes, and atmospheric exploration.
Important
TinyBlox is currently in active development.
This is NOT a finished game.
Systems, mechanics, rendering, terrain generation, saves, and architecture may change frequently between versions.
- Player movement
- Terrain system
- Chunk system
- Layered TileStack terrain
- Procedural terrain generation
- Procedural tree generation
- Inventory system
- Item entities and pickups
- Tool progression
- Basic crafting
- Ore generation
- Block placing
- Block destroying
- Basic enemy AI
- Combat system
- Menu system
- Sound system
- Camera follow
- Entity system
- Day/night cycle
- Ladder (partial)
- Lighting (simple)
- Cave generation (Prototype)
- RNG improvements
- Stats system
- Dialogues
- Helper NPCs
- Biomes
- World saving/loading
- Boss fights
- Java 17+
- Gradle 9.3.1+
- Desktop OS (Windows/Linux/macOS)
git clone https://github.com/Kyrixen/TinyBlox.git
cd TinyBloxJava./gradlew build./gradlew run| Key | Action |
|---|---|
W |
Move Up |
A |
Move Left |
S |
Move Down |
D |
Move Right |
I |
Show / Hide Inventory |
C |
Toggle Crafting Menu |
Q |
Drop Item |
Left Control |
Sprint |
Space + WASD |
Step Up |
Left Shift + WASD |
Step Down |
Space |
Climb Up |
Left Shift |
Climb Down |
Left Mouse Button |
Destroy Block / Hit Entity |
Right Mouse Button |
Place Block |
Scroll Up |
Previous Inventory Slot |
Scroll Down |
Next Inventory Slot |
- The world uses layered TileStacks for pseudo-3D topology rendering.
- Textures currently use a 16x16 pixel-art style.
- Systems are still experimental and may evolve significantly.
- Performance optimization is ongoing.
- Terrain/world generation is under active development.
- Some systems currently use temporary or debug implementations.
- Cave expansion
- Underground progression
- More structures
- More enemies
- Save/load system
- World persistence
- Biome expansion
- Better UI
Contributions, suggestions, bug reports, and experiments are welcome.
You may:
- Fork the repository
- Modify the source code
- Submit pull requests
- Create experimental branches
- Improve systems and architecture
Please keep contributions clean, documented, and compatible with the existing project structure when possible.
TinyBlox uses a custom non-commercial source-available license.
The source code of this project is licensed under the TinyBlox Source License.
You are allowed to:
- View and study the source code
- Modify the project
- Create forks and derivative works
- Redistribute modified or unmodified versions
You are NOT allowed to:
- Use the project commercially
- Sell the project or derivative works
- Monetize forks or distributions
- Use TinyBlox code inside commercial products or services
All redistributed versions must include the original license and copyright notices.
See the LICENSE file for full terms.
All assets inside the assets/ directory are proprietary unless stated otherwise.
This includes, but is not limited to:
- Textures
- Sprites
- Audio
- Music
- UI elements
- Logos
- Artwork
Assets may NOT be:
- Reused in other projects
- Redistributed separately
- Sold or monetized
- Claimed as original work
without explicit permission from the author.
See ASSET_LICENSE.md for full terms.
By contributing code or assets to TinyBlox, you agree that your contributions may be used, modified, and distributed as part of the project under its licensing terms.
Created by Kyrixen
Built using:
- LibGDX
- FastNoiseLite
- Java
- Gradle
Copyright (c) 2026 Kyrixen



