Open Source remake of a classic match 3 arcade game.
The original game was named Swing Plus -Total Mind Control (Marble Master) and was developed by Software 2000 a German game developer and publisher. It was released in 1997 for PC, PlayStation and Game Boy Color.
My goal was to bring this masterpiece of arcade action back to life. I wanted to recreate the original graphics and game mechanics as accurately as possible. The game is written in Java and runs on Windows, Linux, Mac and Android.
⭐ Spiffy addictive gameplay
⭐ Hot Seat multiplayer mode
⭐ 45 Challenging Levels
⭐ Offline and online highscore
⭐ Particle and sound effects
⭐ Multilingual (German and English)
Windows Setup XSwing_Plus_windows-x64.exe
82MB
Linux Setup XSwing_Plus_unix.sh
88MB
Mac Setup XSwing_Plus_macos.dmg
83MB
The objective is to simultaneously disband as many heavy balls as possible. To do this, simply place three balls with the same color in a horizontal row. Now these and all adjoining balls of this color will disappear. Five balls of the same color in a column will shrink to one heavy ball. Every 50 balls you reach the next level and a new color will be added. Pay attention: One stack can only take up to eight balls.
←/→: Move the crane
↓: Drop a ball
N: New Game
B: Change the ball set
E: Disable particle effects
ESC: Exit the game
F2: Toggle Fullscreen
S: Change game size (experimental)
If you do not like the setup, you can use the portable zipped version.
Then you have to install Java by your own, which is bundles with the setup.
⚠ Cross Platform Zip - Java JRE not included! XSwingPlus.zip
32MB
💡 Choose the setup for your platform, which is the preferred installation option.
Only advanced users should choose the Download Zip, wich needs ab installed Java JRE.
The game needs an installed Java runtime environment (JRE) with at least 8.
You can get it for any platform here.
For example on Windows choose:
- Operating System:
Windows
- Architecture:
x64
- Package Type:
JRE
- Version:
8 - LTS
And download the.msi
installer.
If the .jar
wile type is linked with the java
, you can simply start the game by opening the XSwingPlus.jar
.
Otherwise, start the game with console:
java -jar XSwingPlus.jar
To start developing, import the workspace als Gradle project in your IDE.
All dependencies are included in the lib
folder. They should be automatically referenced by Gradle.
To start the game simply run the Gradle task:
gradle run
This will compile the game and start the game with splash Screen (class xswing.start.XSwingWithOptions
).
If you use IntelliJ IDEA you can also use the predefined run configurations:
- ▶
XSwing
- ▶
XSwingNoSplash
You can build the game for distribution wich wil generate a runnable jar which includes all dependencies, resources and natives.
gradle shadowJar
This will packe the game to the output folder: build\libs\
.
💡 Keep in mind, that the game not only needs the resources in the
res
folder, but also the native LWJGL bindings for your platform (.ddl
for Windows,.so
Linux and.jnilib
for Mac). TheshadowJar
will copy all natives for all platforms to the build dir for you!
This remake is a free fan project. Software 2000 is not involved in any way.
The company Software 2000 filed for bankruptcy in 2002. But the Swing brand, graphics and sounds
may still be licenced by others. I tried to contact someone from the original team to get permission
to use the original theme - but without success. Another clone of the game for Android and IOS was
also available under the name Color-X-Plode.
The code is licenced under MIT License.
I started the development in 2007 - A time when git took its first steps and version control wasn't the first thing to do. This repository was restored from zipped code backups between 2007 and 2013.
Thank you, Michael Motschmann (MiMo57m), for the great background music tracks.
- Slick2D - 2D Java game library based on LWJGL.
- LWJGL - Lightweight Java Game Library.
- Nifty GUI - Open Source Java OpenGL GUI.
- Java 8 - Programming Language and SDK.
The game has several command line arguments wich can be overwritten. This may be helpful for development or troubleshooting.
# Game
resolution = 1024 x 768
fullscreen = false
musicVolume = 20
fxVolume = 100
# Startup
showOptionPanelOnStart = true
checkForUpdates = false
uploadHighScore = false
# Debugging
debug = true
configFile = somePath/config.json
# Advanced
useNativeMouseCursor = false
Is easy to change graphics ot sounds. Just replace them in the res
folder.
For the balls, there is second theme /res/balls2.png
which can be activated by the key B.
For theming there is a JSON configuration which stores all UI based settings: config.json
.
Here you can change sounds and images and change settings like their position.
This configuration can even store multiple configurations at one.
Just change the "configSetIndex": 1
(starting with 0
) to switch to a HD version with 16:9 aspect ratio
with a higher resolution.