Epilepsy Warning
If you are suffering from epilepsy, this game is probably not for you. This is due to the huge amount of bright stars, which can flicker and rotate around you.
Description
'A Hole In Space' is a slow-paced space simulation game. You take control of a small black hole, which roams through an universe created by parameters you choose.
The movement is slow and sluggish, because everything moves by forces. The time you need to accelerate is the same time you need to decelerate. Therefore, it is not advisable to try to fly with max speed.
The amount of time you need to absorb the whole universe depends on how many stars you want in your universe. Your universe can have from 100 up to 10 million stars, but only if your PC can handle it.
Goal
The goal is to absorb the whole universe.
1. Absorb nearby suns to grow in mass.
2. Absorb other black holes in the universe, if you are greater in mass.
3. Absorb the rest of the universe through your new added huge mass.
4. Enjoy the Big Bang!
You lost the game, if any black hole absorbs you. This will happen if you get to close to them with a lesser mass.
Features
- Every universe is unique due to procedural generation.
- Nevertheless, use the seed to share your universe with others.
- You can create up to 100 galaxies in your universe and therefore up to 100 supermassive black holes in their center.
- The galaxies can either be static or dynamic, which means they either stay in place or attracting each other.
- The whole universe can contain up to 10 million stars, but only if your PC can handle it.
- You can turn the gravity of stars on or off. If this is off, the performance will drop linear with the amount of stars. Otherwise it will drop squared. Therefore the max amount of stars will be reduced to 100K.
- The stars can either start with zero velocity or with the first cosmic velocity, which means they will fly in an orbit around the center black hole.
- You can enable "Spaghettification" to tear stars into smaller pieces.
- There are 7 Nebula backgrounds to choose from, which don't affect the simulation.
- There are 9 different galaxy forms to explore: Random, Circle, Cube, Octahedron, Sphere, Spiral-2-Arms, Spiral-4-Arms, Spiral-8-Arms, Star
- Switch between the player black hole and galaxy camera to get a greater view of the universe.
Technical Aspect
For this game I used Unity's Data Oriented Technology Stack (DOTS) and with it the Entity Component System (ECS), the C# Job System and the Burst compiler.
However I did not use Unity physics. Instead I created my own, based on classical Newton mechanics, center of mass model, vector mathematics and the superposition principle. The more advanced Schwarzschild Metric is not implemented.
For a stable collision detection and to avoid infinities, a maximum speed for all objects and a space boundary were implemented. So no star can be slingshotted into oblivion, which would otherwise lead to an unfinishable game.
Epilog
If you have any ideas, criticism, feedback or just found some bugs, let me know in the Steam forum.
Last but not least, have fun and delight yourself in void!