https://github.com/miguelcock/lua_space
Lua Space is a tiny solar system of classic-inspired video games built with LÖVE2D . Each planet hosts a different game you can play with a friend in a cooperative experience. Currently, the system includes three games: 🛸 Space Invaders, 🚀 Tanks, 🏓 Pong
https://github.com/miguelcock/lua_space
love2d lua video-game
Last synced: 2 months ago
JSON representation
Lua Space is a tiny solar system of classic-inspired video games built with LÖVE2D . Each planet hosts a different game you can play with a friend in a cooperative experience. Currently, the system includes three games: 🛸 Space Invaders, 🚀 Tanks, 🏓 Pong
- Host: GitHub
- URL: https://github.com/miguelcock/lua_space
- Owner: MiguelCock
- Created: 2025-08-25T20:50:41.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-09-10T22:58:10.000Z (10 months ago)
- Last Synced: 2025-09-11T01:21:44.388Z (10 months ago)
- Topics: love2d, lua, video-game
- Language: Lua
- Homepage:
- Size: 169 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🌌 Lua Space
Lua Space is a tiny solar system of classic-inspired video games built in Lua. Each planet hosts a different game you can play with a friend in a cooperative experience.
Currently, the system includes three games:
- 🛸 Space Invaders
- 💀 Thanks
- 🏓 Pong
## 🚀 Getting Started
### Requirements
- LÖVE2D
### Run the game
Clone the repository and launch it with LÖVE2D:
~~~ powershell
git clone
love lua-space
~~~
~~~ powershell
📂 Project Structure
lua-space/
│── assets/ # Fonts and other reusable resources
│── images/ # All image files (sprites, textures, backgrounds, etc.)
│── shaders/ # GLSL shader code
│── minigames/ # Each minigame is a Lua table with update(dt) and draw()
│── main_hub.lua # The hub world where you choose planets (minigames)
│── planets.lua # Planet creation logic
│── particles.lua # Particle system code
│── player.lua # Player logic for the hub
│── shader.lua # Core shader handling
│── controls.lua # Drawing and handling controls
│── conf.lua # LÖVE2D configuration file
│── main.lua # Main entry point
~~~
## 🕹️ How It Works
- Main Hub: The starting area where you control your player and choose planets.
- Planets: Each planet represents a different minigame.
- Minigames: Implemented as Lua tables exposing two functions:
- update(dt) → updates game logic
- draw() → renders the game
The hub calls these functions to run the selected minigame seamlessly.
# ✨ Future Plans
Add more planets (minigames)
Expand shaders and visual effects
New assets (fonts, music, etc.)