Deployment days are always fun, waiting for huge files to upload and videos to render, painstakingly finding good screenshots and dealing with unexpected last minute issues. But it's always worth it to bring you the latest and greatest work!
Outlier: Open Skies Alpha 2 features both bug fixes and new features, as well as some cosmetic changes to further differentiate it from High Albedo. I also took the time to make a release trailer, something I don't normally do. After all, good things are better when they're a Rarity.
This is a very special trailer for me because it is the first one I've ever done 100% on Linux. All video was recorded on Linux, and edited on Linux. I may have finally removed Windows completely from my development process!
Lets get this out of the way first: Alpha 2 is not compatible with saves from Alpha 1. In general, saves are not going to be compatible between versions because they are done with object serialization. You really should delete your old outlier directory before you play Alpha 2! It is located in your home folder and is called .outlier . Delete the whole directory. You may need to show hidden files.
When a ship is destroyed, it has a chance of dropping the contents of its cargo bay. This means you can blow up trade ships and cash in their loot! Collecting loot is as simple as flying into it with your ship.
Being able to drop loot also means you can eject stuff from your cargo bay. This gives you a method of transferring loot between ships and will play into the future contraband system (it would be mean to not let the player drop contraband when the police told them to).
Be careful with missiles though, because all missiles are both proximity fused and do area damage. This means you can blow up hard earned loot with a poorly timed missile.
Hot Keys For Targeting
Like in High Albedo, there are now hot keys to target the nearest friendly, neutral, and hostile object. This will make combat a lot easier, and will reduce the need to use the mouse and joystick at the same time.
It is now possible to remap your joystick by editing a plain text file! Currently, you can only remap the axis. However, this means that you can fix joystick problems like pitching down when yawing to the left. Also, joystick detection is better. If your joystick didn't work properly in the previous version, it probably will now!
All you have to do is edit ~/.outlier/payload.txt and change the numbers associated with each axis. When the game is restarted it will pick up the new mapping and apply it.
The missiles in Alpha 1 were better at hitting moving targets than stationary ones. This amazing guidance routine wouldn't be able to hit a station you fired directly at (the missiles would actually slow down and stop) but would be able to track down a fast moving fighter.
This is fixed, and missile guidance is significantly deadlier, because it can also hit stationary objects (which I find handy). The guidance routine doesn't work the way an air to air missile does. It actually waits until it has a good alignment and accelerates rapidly to hit its target, and if it misses it slows down, realigns, and tries again when it gets another good window. Like real world missiles they are proximity fused, so they only have to get close enough to go off to deliver damage.
Planet Collision Prevention
The guidance code in Alpha 1 did not look ahead for planets in its path. This meant that you could (rarely) face plant into a planet because the autopilot was trying to get to a station or jumphole on the other side. Now, autopilot knows how to avoid hitting planets!
I thought it would be a complex algorithm but it turned out to be really simple. When you get too close to a planet, if autopilot is running it will slow your ship to a stop. Then it will take the cross product of your position vector and the planet's position vector and fly towards the resulting vector (which is always orthogonal to the planet, getting you out of harm's way).
Once you are a sufficient distance from the planet, the original autopilot code resumes and you continue your journey.
Trade Standings Modifications
Keeping with my philosophy of giving players a hard time, trading now causes small standings changes. When you trade, you get a small standings increase with the faction you are trading with, but you also get a small standings hit to their enemies. This means that your trade habits now affect your faction standings.
The idea is that actions have consequences, and trading with a faction on a regular basis is going to make their enemies start to dislike, and eventually shoot you. The standings changes are microscopic compared to the changes you get from combat, but they'll add up over time especially if you have a fleet of trade ships.
Lots of bug fixes, of varying levels of severity. Here are the highlights.
- Jumpholes won't randomly kill you. Jumpholes are actually based on planets and had retained the planet's automatic kill mesh. This meant that sometimes flying through them would kill you (but not always because you jump when you get within a certain range).
- Main menu responds correctly. It no longer freezes when a new game is created and disappears properly. This gives you some indication the game is loading instead of just freezing.
- Jumpholes can no longer exist inside planets. There were a few jumpholes inside planets and this would be instant death when jumping through into one. This goes along with jumpholes not randomly killing you anymore.
- Weapon projectiles now have their expected point of origin at high velocities. Previously, moving really fast would cause projectiles to spawn further and further from your ship. This is corrected.
- Autopilot will no longer freeze occasionally when trying to stop your ship. This was due to a poorly set constant which meant your ship could get stuck thrusting forward and then backward and then forwards again when trying to stop.
- Weapon damage displays in market. Now when you are buying guns you can see how much shield and hull damage they do instead of simply "Damage: null".
Moving away from High Albedo's amber on gray scheme, Outlier now uses a white on blue scheme. It took a while to get the blue right, but I think it looks pretty good. I think it's easier to read too.
Besides new colors, you'll notice a new intro musical score. The previous one was used in High Albedo and was called "Success and Failure". Outlier now has its own title score "Acclimated".
Finally, you'll notice that the game now shows a quote at startup! These quotes are loaded from a quote file and can be easily changed. Most of the bundled quotes are about growth and development, which I find fitting in a wide open sandbox game.
Simplified Source Project
If you managed to get the previously released source code to build, I salute you. It was a Netbeans project that didn't include any dependencies and had references pointing to static places on my file system. Since I want this whole open source thing to be easy, I have redone the project so it is easier to get started with.
The new project file has local references and includes the required game engine libraries. Very little work will be required out of the box to get started, you'll just have to decompress the skybox textures in assets/Textures/Skybox/ (I had to 7z them because Github doesn't like files over 100MB) or the game won't start.
In other words, the source code has never been easier to build! All you need to get started is Netbeans, Java 7 or higher, and 7zip.
I am always open to feedback, you can leave it here or send me a message at firstname.lastname@example.org . I really need feedback on gameplay and any bugs you might find, it helps guide new work. After Alpha 1 I received some emails asking to become a developer on the project, I don't need another developer at this time. If you really want to help, you'll do some testing.