A dead simple puzzle game based on Bevy Engine 0.13.2, move cubes to cover all targets as shown in the picture below.
Try the online version at my GitHub Pages!
- Move:
Arrow Keys
orW
/A
/S
/D
. - Restart:
R
- Skip current level:
N
. - Return to the previous level:
L
. - Reset the game:
ESC
.
- You move ALL green cubes.
- Make cubes to cover all target points to enter the next level.
- Cubes may absorb each others.
- Red + Green -> Red
- Green + Blue -> Green
- Blue + Red -> Blue
- Red + Green + Blue -> nothing happens
- Cubes with the same kind (except white) merge when hitting each other.
- Clone this repository:
git clone https://github.com/wiryls/cube-collection.git
- Compile and run:
cargo run --release cube-collection
Levels are represented by TOML files. e.g.
[map]
raw = '''
GGGGGGGGGGGGG
G GG GG G
G G
G R R G
G G
G G
G x G
G G
W------------
'''
[info]
author = "w"
title = "Haircut"
map.raw
is an ASCII drawing containing the following characters:- cube (place a cube here):
W
: a white cube.R
: a red cube.G
: a green cube.B
: a blue cube.
- link (place a cube and link it to):
|
: the upper cube.-
: the left cube./
: both the upper and left cubes.
- other:
x
: target point.
- cube (place a cube here):
info
contains some metadata.
Note: if any level file is invalid, game will stop loading and log the error.
If you want to add custom levels:
- Create a TOML file like the one above.
- Add you custom level files into
./cube-collection/assets/level/
. - Add file name into
name_list
of./cube-collection/assets/level/index.toml
.
This repository use two licenses:
./cube-core
is under LGPL 3.0, and./cube-collection
uses MIT license.
- Color pattern may not friendly to some color blindness.