Naev 0.6.1 Release

It’s been a while, but we’re proud to announce Naev 0.6.1. This is a minor release that has a slew of fixes, improvements and missions. It fixes some important issues that cropped up in the previous release and thus we highly encourage everyone to update to 0.6.1.

This release would have not been possible without the help of both onpon4, nenau, and Ian D. Scott who have been very active of late. We would like to once again thank all contributors for making this release possible.

Download: https://sourceforge.net/projects/naev/files/naev-0.6.1
Blog: http://blog.naev.org/
Forums: http://forum.naev.org/

Changes since 0.6.0:

Naev 0.6.0 Release

The Naev development team is proud to announce the release of Naev 0.6.0, our first stable release in nearly three years.

This release features over 1600 commits from some 38 contributors, as well as small fixes from many more. Its main features are the core slots system, which allows ships to be more heavily customized, as well as full SDL2 support, which greatly improves Naev’s fullscreen behaviour among other things.

Download: https://sourceforge.net/projects/naev/files/naev-0.6.0
Blog: http://blog.naev.org/
Forums: http://forum.naev.org/

Changes since 0.5.3:


  • Core slots system
    • Ships must have a core system, engine, and hull equipped to take off
    • Ships’ attributes are mostly defined by their cores
    • Total of 95 core outfits
  • Naev’s data is now stored in a zip file, making contributing easier than ever
  • Greatly improved SDL2 support (now default)
    • Support for window resizing and toggling fullscreen without restarting
    • Drag-and-drop ndata loading when ndata can’t be found
    • Fake fullscreen is used by default to avoid turning off other monitors
    • Fullscreen toggling via keybind (F11 by default)
  • Improved keyboard-and-mouse gameplay, with an optional WASD layout
  • Autonav improvements
    • Autonav resets time accel instead of aborting (onpon4)
    • Improved autonav behaviour when pushed off of jump points
  • Activated outfits get hotkeys by default
  • Fuel is now provided for free at spaceports
  • Auto-braking (Ctrl-S by default) in lieu of a dedicated Active Cooldown key
  • Ships only need to be spaceworthy when taking off (Avihay)
  • Added on-screen “PAUSED” indicator (can be disabled in conf.lua)
  • Local system maps can be bought from the landing screen


  • Greatly expanded galaxy
    • 150+ new systems and 500+ new planets
    • Za’lek faction added (Viruk and Lineth)
    • Expanded pirate space (Lukc)
  • New missions
    • Added 6 repeatable missions
    • Added 10 scripted missions
    • Greater mission availability in Soromid space (BSoD-naev)
    • New Sirius mission string, “Heretic” (l0k1)
    • Several repeatable pirate missions (Lukc)
    • New FLF mission and two neutral missions by brognam
  • 3 new songs by Askyel and saturn6
  • Innumerable typo and content fixes by PhoenixRiver, perey, m1foley, ids1024, and others
  • Cargo missions are longer-range (up to 6 jumps)
  • Added hidden jumps, currently only discoverable via special maps


  • Error logs are now stored to help with issue reporting
    • Windows: %APPDATA\naev\logs\
    • OS X: ~/Library/Application Support/naev/logs/
    • Linux: ~/.local/share/naev/logs/
  • Fixed save corruption issues on Windows
  • Dynamic news support for missions and events (BariumBlue)
  • See the news Lua API module for more information

GitHub & Issue Tracker Changes

We’ve been gradually migrating away from Google Code for a long time now — First we switched to Git and migrated our repositories to GitHub, then we moved the wiki to wiki.naev.org, and lastly downloads moved to SourceForge due to ndata’s size growing.

The only Google Code service we’ve been making use of these past few years has been the issue tracker, and with the recently-announced impending shutdown of Google Code, now seems as good a time as any to finish our migration.

We’ve also decided to shuffle our repositories around a bit to make Naev’s GitHub presence more cohesive. To that end, Naev’s main repository is now github.com/naev/naev instead of bobbens/naev. If you’re a contributor or have a fork of Naev, don’t worry — bobbens/naev remains as a redirect to naev/naev, so you don’t need to update your Git configuration.

Secondly, all issues have been migrated to github.com/naev/naev/issues, and that’s where new issues should be submitted. All issues and their comments have been preserved, but if you have an open bug and want to be notified when it’s updated, please subscribe to it on GitHub.

As we were only using Google Code for issue tracking and it was otherwise chock full of outdated information, we’ve shuttered the site and it now redirects to the blog.

Naev 0.6.0-beta2 Release

The Naev development team is proud to announce the release of Naev 0.6.0-beta2, which will hopefully be the final beta release before 0.6.0 stable. This release brings a few minor features, a slew of bugfixes, and improved SDL2 support.

The most notable features mostly relate to the SDL2 improvements: Naev’s resolution can now be changed on the fly, and it can be made fullscreen or windowed without restarting. It also uses “fake” fullscreen by default (as many modern games do) to avoid turning off other screens.

Download: https://sourceforge.net/projects/naev/files/naev-0.6.0
Blog: http://blog.naev.org/
Forums: http://forum.naev.org/

This release’s highlights include:

  • Greatly improved SDL2 support (now default)
    • Support for window resizing and toggling fullscreen without restarting
    • Drag-and-drop ndata loading when ndata can’t be found
    • Fake fullscreen is used by default to avoid turning off other monitors
    • Fullscreen toggling via keybind (F11 by default)
  • Error logs are now stored to help with issue reporting
    • Windows: %APPDATA\naev\logs\
    • OS X: ~/Library/Application Support/naev/logs/
    • Linux: ~/.local/share/naev/logs/
  • Added on-screen “PAUSED” indicator (can be disabled in conf.lua)
  • Local system maps can be bought from the landing screen
  • Fixed save corruption issues on Windows
  • Fixed emergency shield booster energy consumption
  • Improved autonav behaviour when pushed off of jump points
  • Various mission bug and typo fixes
  • Cargo missions are longer-range (up to 6 jumps)

As this is a beta release, we’re hoping to iron out any remaining issues, particularly with missions and other scripted content. If you run into any issues while playing, please report bugs and issues at our issue tracker or drop by our IRC channel.

One small note regarding the change to SDL 2: A number of key names have changed, mostly on the numpad. Any controls with unrecognized keys will be reset to their defaults on first run.

Right now we have Windows, Mac OS X, and Linux binaries available, both 32-bit and 64-bit.

0.6.0-beta1 Hotfix for Windows

We’ve just released updated Windows installers to remedy save corruption and a related crash.

Simply download and re-run the installer. It’s fine to run over top of the existing install, and you do not need to re-download ndata.

Windows (32-bit)
Windows (64-bit)

The issue affects all versions of Windows, as long as save compression is enabled (which is the default). You may also want to delete all backup saves, located in %APPDATA\naev\saves\ with the extension .ns.backup, though this isn’t required.

0.6.0-beta1 Release

Our last release was 0.5.3, way back in April 2012. Two years, ten months and some 1400 commits later, we’ve finally prepared another release.

We are proud to announce the 0.6.0-beta1 release today, and with any luck the final 0.6.0 stable version will be released before March.

Download: https://sourceforge.net/projects/naev/files/naev-0.6.0
Blog: http://blog.naev.org/
Forums: http://forum.naev.org/

A full changelog will accompany the stable release, but a few of the highlights include:

Additionally there’s a slew of minor improvements, tweaks, new missions and the like for your enjoyment. As this is a beta release, we’re hoping to iron out any remaining issues, particularly with missions and other scripted content. If you run into any issues while playing, please report bugs and issues at our issue tracker or drop by our IRC channel.

Right now, we have builds available for Windows, Mac OS X and Linux, both 32-bit and 64-bit.

Lastly, one small note for those compiling from source: While Naev nominally supports SDL 2, several important things don’t function properly, like modifier keys and the mouse wheel, and error logging on Windows. We’re aiming to sort this out before 0.6.0 stable, but we advise players to stick with SDL 1.2 for the time being.

ndata is dead, long live ndata

So here’s a recent development that may interest some of you out there. As you may know, Naev’s game data (sounds, images, script files, etc) comes packaged in an archive called ndata when you download a stable version. It’s a simple thing, little more than a concatenation of the files, but the trouble with it was that we were using our own format. This made it rather annoying to do anything with it other than just play the game.

As of today, ndata’s format has changed, thanks to nloewen. It is now an uncompressed zip archive. This format is ubiquitous and supported by everything and its uncle, so it is now much easier to get at the data files themselves when downloading a stable release. The main upside to this is that people who are interested in how the game works, or in changing parts of the game can directly start tinkering without the need to re-download the data files from git.

It’s a small change that doesn’t affect the game itself, but I’m happy to see the switch finally made.


Hello everyone, here’s an update about the state of affairs surrounding Naev. I know, right? Yes, it’s been almost two years since our last post. You might think that that means little or nothing has been happening with the project, and mostly this is true, but not entirely.

Let’s start with the thing that prompted this post in the first place. A great man once said:

Hello there, old Bean.

“One does not simply get greenlit on Steam.”

But, as we all know, Sean tends to be wrong about these things. As a matter of fact, Naev has been officially greenlit. This came as something as a surprise, since although people did occasionally comment and vote on the Greenlight page it was by no means a hive of activity. But there you have it. Needless to say this is good news indeed.

In other news, work has been going into the core slots system that currently only exists in the development version. The system is described in earlier posts, and Deiz has been improving the core outfit definitions. You can view his notes on the wiki. Once that is finished we’re hoping to get the game ready for a new release numbered 0.6.0. We may yet run into issues that have to be resolved first, but we’d really like to get a new release out the door in hopes of rekindling interest in the project. Fingers crossed!

There has also been some discussion recently about the relationship between armour and shields within the game. There is some writing about that on the wiki as well. It should be noted that this is not a proposal or anything we plan to do, at this point we haven’t decided on any course of action and the floor remains open for debate.

Other than that a whole slew of minor corrections and content has also been constantly creeping in from a lot of different people. We hope this will make the experience smoother and more enjoyable for everyone.

That’s it for now. Let’s hope there won’t be too much time until the next blog post.

Naev on Steam Greenlight

We have added an entry on Steam Greenlight for Naev, in hopes of reaching a larger audience for the game. Whether the game accrues enough upvotes to be published on Steam is of secondary importance – every extra pair of eyes that sees our entry is good for us.

Slots branch merged

Hello readers, it’s been a long time since our last post. I hope you’re both doing well.

Development has been pretty slow in the last months. It hasn’t entirely ceased though, and today I can tell you that a pretty major change to the game has been finalized and is now in the master git branch. The way ships work has been changed, and that’s what most of this post is going to be about. There have also been some other changes I’ll briefly mention at the end. Hang tight, it’s going to be a long one.

Slots refinement

The basis of the new system is a refinement of the ship slots. Up until now, ships had three types of slots: utility, structure and weapons. This is true even now, but it is now also possible for slots to be specialized. We can demand an outfit be installed in a certain specialized slot, and we can enforce that specialized slots can only take certain outfits. This allows us to gear certain ships to certain roles, and that will be important later when we deal with fleets.

For example, imagine a Carrier class ship. This ship might have a number of specialized slots that will only take fighter bays. We can also create special fighter bay outfits to go in these slots that are better (lighter, higher capacity, less CPU, etc) than the fighter bays you can install in any slot. This means that a Carrier has much greater potential for carrying fighters than a Cruiser of equivalent size.

One size will no longer fit all, in the future.

Ship core equipment

Currently our most important (in fact only) use of the new slot system is found in every ship in the game.

Up until now, you’ve known your ships by their abilities. Some ships were faster, some slower, some had more energy in the tank, some had more CPU to spend. With this new mechanic, that has changed completely. With a few exceptions, ships have been stripped of all their numbers. Instead, these numbers are granted by certain special equipment installed on the ship. This special equipment we call “core outfits”, or more briefly, cores.

Each ship has three “core slots”: one for its engines, one for its core systems, and one for its hull mod. Every ship can only equip one single outfit of each kind, and each ship MUST have one of each kind installed, or the ship will not fly! The interpretation of each core outfit type is as follows:

Core slots

A ship with its core slots installed. The orange text in the tool tip indicates the slot specialization.

  • Engine core slots are just that, the ship’s engines. Engines determine how fast a ship can accelerate, the ship’s maximum speed, the base fuel capacity, and the mass limit (more on this one below).
  • System core slots can be thought of as the heart of the ship. Systems determine energy generation and capacity, shield generation and capacity, as well as CPU capacity.
  • Hull core slots represent the structural configuration of the entire ship. Most importantly hull cores affect armour, damage absorption and cargo space, but some hulls can do other things as well, such as make a ship more stealthy or increase energy regeneration. Hull mods also greatly contribute to a ship’s mass.

Of course, there is a healthy variety of all core types available. When you buy a ship it will come with very low end cores, so you’ll have to invest to increase your ship’s performance!

Ship stats

Hang on, I hear you saying. If all ships now take their performance values from cores, doesn’t that mean all ships are the same if you install the same cores in them? Why yes, that would be the case if we just kept it at this. But no, there’s more.

Where every ship was the sum of its values before, it now is (mostly) the sum of its ship stats. Ship stats are modifiers specific to that ship. For example, a ship might have a 15% bonus to energy generation. This means that whatever energy regeneration is granted by its outfits will be multiplied by 1.15. This makes it attractive to install a good system core, and maybe extra energy generators as well. On the other hand, a ship might have a penalty to its maximum speed. This means that engines you mount on the ship will have reduced performance. So, even if you use the same core outfits, two different ships might well behave very differently.

Ship stats are usually scalars like that, but they can do other things as well. For example, there is a ship stat that enables a ship to jump through a jump point without having to brake and charge up its hyperdrive first! A ship with

Ship Stats

This is clearly not a good cargo ship, but it has a bonus to shields.

this ship stat will make hyperjumps a lot easier.

Now, perhaps confusingly, it is possible for outfits to grant ship stats to a ship. This seems illogical (they are called SHIP stats, after all), but it is very useful because it allows us to make outfits that grant ships special abilities, while ALSO allowing ships to come with those special abilities out of the box. For example, there is a “Reverse Thrusters” ship stat that allows ships to thrust backwards – when you press the reverse key, the ship will slow down instead of turning around, and eventually fly backwards. This ability might be standard on a certain class of fighters, but it’s also possible for pilots to mount an outfit on their ship that gives them the same thing, if they’re willing to spend a slot on it.

Mass limit

I’ve written up the basics of the new slots system now, but this is one thing I want to explain in more detail.

First, let’s examine this “mass limit” that I mentioned earlier in this post. It’s a new concept that didn’t exist in the game before. Every engine has a mass limit value, for example 100. This value determines the maximum mass the engine can support at maximum efficiency. If the ship becomes heavier than this limit, the engine isn’t capable of pulling all that weight anymore and the ship will become slower and more sluggish. The mass acts as a divisor for the engine’s efficiency, such that when the ship is twice as heavy as the mass limit, the engine will only function half as well.

Now, you might feel that this mass limit thing is an arbitrary limitation, and it is. Let me explain why it exists. You see, it leads back to the issue of ships behaving the same if the same outfits are installed. It is entirely possible for capital ships to install fighter engines, because the slot system allows you to install outfits into any slot that is at least big enough. Obviously, we don’t want capital ships to race around like fighters though! So we need to make sure that capital ships benefit most from capital ship engines. The way to do it is, of course, by adding mass to the equation. At the same time, we want to make sure that the BIG engines are capable of pushing the big ships around, which raises the question of how to balance that. You can just give big engines a lot of output to compensate for the ship’s mass, but that would mean the engine is always a lot worse than it says on the tin, and that’s not fun for the player. So instead, I chose to arbitrarily define a maximum mass at which the engine is guaranteed to perform optimally. This is easier to work with on the balancing side of things.

Other changes

The following is a list of changes made that don’t directly relate to the slots system. I probably forgot a few things, though.

  • Fuel consumption has been changed so small ships use 100 fuel per jump, medium ships use 200, and large ships use 400. This is done to counteract the fact that larger ships have more slots, and can therefore equip more fuel tanks. This gave large ships a much greater operational range than small ones. The flipside of this is that buying fuel off NPC ships is going to be more tedious, but we have some ideas about easing that.
  • The Auxiliary Processing Unit outfits no longer exist. Sorry! The only way to increase your CPU capacity is by upgrading your core system.
    Outfit Tabs

    The tabbed interface for outfits.

  • The galaxy now contains secret shortcut jumps. You can’t find these jumps unless you have a special scanner, and even then you probably need some hints to find them. Note that the scanner isn’t sold anywhere yet, and there are also no hints to be had yet. But this is a work-in-progress.
  • Some work has gone into the equipment screen. The outfit list is now tabbed, each tab corresponding to a class of outfits. The tab letters, as seen on the right, stand for Weapons, Utility, Structure, Core and Xeverything. Hopefully, this can be further improved and applied to the outfitter screen as well.
  • For developers: All game data is now found under the dat/ subdirectory. This was done to make the relationship between the game data and the ndata file more apparent.
  • For developers: Lua scripts from the dat/scripts/ subdirectory can now be included into other scripts by only their name. The game will look in this directory for includes.