Crystal Match is an Android match-3 game built with Kotlin.
The player combines three or more matching crystals, scores points, unlocks levels, and progresses through a city map. The project was created as an Android game prototype with animated transitions, saved progress, and several planned expansion points.
-
Clone the repository.
git clone <repository-url> cd ThreeInRowWithHistory
-
Open the project in Android Studio.
- Start Android Studio.
- Select "Open an existing project".
- Choose the project folder.
-
Run the game.
- Connect an Android device or start an emulator.
- Press Run in Android Studio.
- Select a target device.
- Classic match-3 mechanics.
- Psychedelic visual effects.
- Level system with increasing difficulty.
- Timer for each level.
- Animated transitions.
- Progress saving.
- City map navigation.
- Inventory with a crystal collection.
- Match three or more identical crystals.
- Score points and complete levels.
- Unlock new locations on the city map.
- Collect unique crystals in the inventory.
- Kotlin.
- Android SDK.
- Material Design.
- SharedPreferences for progress saving.
app/
|-- src/
| |-- main/
| | |-- java/
| | | +-- com/example/threeinrowwithhistory/
| | | |-- MainActivity.kt
| | | |-- GameActivity.kt
| | | |-- LevelMapActivity.kt
| | | +-- CityMapActivity.kt
| | +-- res/
| | |-- layout/
| | |-- drawable/
| | +-- anim/
-
Main menu.
- Start the game.
- Choose a mode:
- Crystal Farm - main mode.
- Inventory - crystal collection, in development.
- City Map - location navigation, in development.
-
Gameplay.
- Select a level on the map.
- Solve the match-3 puzzle.
- Match crystals.
- Score points and unlock new levels.
-
Progress system.
- Save achievements.
- Unlock new locations.
- Collect crystals.
- Improve player progress.
The main idea is to create an entertaining game that trains logical thinking, has a colorful visual style, and saves player progress.
- Android 6.0 or newer.
- At least 2 GB RAM.
- 100 MB of free storage.
MIT License. Free use and modification.
Roman Shably, ShablySoft.