Skip to content
Jack Greiner edited this page Jan 25, 2024 · 28 revisions

Installing and Troubleshooting

I want to live on the bleeding edge!

Well.. that's more of a statement than a question but, you can grab nightly releases on the nightly release page, on Steam and on itch.io.

On Steam this is accessible in the Properties dialog: Navigate to the "BETAS" tab, and select nightly - Nightly Builds from the dropdown.

The game does nothing when I try to run it!

If you are running on Linux, you may be missing some dependencies. You can find the list of dependencies on the Compiling on *nix page. On Linux, you can run your distribution's package manager (e.g. Synaptic on Ubuntu, and apt-get from the command line of any Debian-derived distributions).

If you're running on Linux through Steam, try running Naev using the Steam Linux Runtime. This is accessible in the Properties dialog. Check "Force the use of a specific Steam Play compatibility tool", and select "Steam Linux Runtime" from the dropdown.

If problems persist and you're on Linux or MacOS, start Naev from a terminal and open a new bug report, including Naev's output.

On Windows, please do the same, but attach the files "stdout.txt" and "stderr.txt", which can be found in the directory where you installed Naev, commonly C:\Program Files\Naev.

I see a warning message and can’t run Naev on MacOS!

As Naev is not digitally signed and notarized, or on the Mac App Store you will receive this error.

Please refer to the following Apple Support Article (HT202491) to allow you to run Naev.

For more specific help installing Naev on your system, please ask your question on Discord or the Steam Community discussions forum.

Sound doesn't work on Windows.

Some Windows sound drivers don't provide OpenAL. If you have no sound, download and install OpenAL from here. If you're running through Steam, It will be installed for you.

When I accelerate or fire certain weapons, Naev crashes. (Windows)

The software implementation of OpenGL on Windows supports multi-texturing incorrectly, and when interpolation starts, Naev will crash.

To remedy this, you can install the official drivers for your graphics hardware, or you can disable interpolation and engine glow in the video tab of the options menu.

General

Will there be multiplayer?

Naev's primary objective is to make a solid singleplayer game with an immersive plot and a dynamic, lively universe. While this could be translated into multiplayer, there are a substantial number of issues in the way, particularly mechanics that make time progress non-linearly. While preserving gameplay in a persistent-world multiplayer game mode is highly difficult, a simpler deathmatch would be feasible. However, this is not a concrete goal, and it will very likely not be a focus until after Naev 1.0 - the release where Naev's singleplayer is considered to be more or less complete.

Will the game ever be done in 3D?

This is planned for the future. All ships are currently renders of 3D models, but with large sprites (to ensure smooth turning animations) and an increasing number of ships, memory use is increasing with every release.

Currently, a proof-of-concept 3D ship branch exists, though the developer responsible for it is absent. Contributors are welcome.

Why is it written in C? C++ is omfgwtfbbq times better!

I believe that C is superior in the fact that it is much simpler. There are few basic rules, yet with them you can do everything. It's basically portable assembly. If you want to contribute and don't want to touch C, there is a lot done in Lua to add to. An increasing number of things are done in Lua, including all missions and events, the spawning and equipping of ships, and ship AI.

Where is the source?

The source is hosted on GitHub. You can view the source online, or download nightly builds with the Git Version Control System. On the wiki, we have step by step instructions for getting Naev code from the Git repository.

Alternately you can grab the source tarball from the download section. It's purely code, however: It doesn't include any of the media included in ndata. See the Simple Development Guide for instructions on acquiring the unpacked contents of the ndata.

Launch Options

These are all known launch options for Naev when run from the commandline:

Launch Option Description of Usage
-f, --fullscreen activate fullscreen
-F n, --fps n limit frames per second to n
-V, --vsync enable vsync
-W n set width to n
-H n set height to n
-j n, --joystick n use joystick n
-J s, --Joystick s use joystick whose name contains s
-M, --mute disables sound
-S, --sound forces sound
-m f, --mvol f sets the music volume to f
-s f, --svol f sets the sound volume to f
-G, --generate regenerates the nebula (slow)
-d, --datapath specifies a custom path for all user data (saves, screenshots, etc.)
-X, --scale defines the scale factor
-h, --help display this message and exit
-v, --version print the version and exit

Where are saves and screenshots stored?

OS Path
Windows %APPDATA%\naev\
macOS ~/Library/Application Support/org.naev.Naev/
Linux ~/.local/share/naev/
Portable install dir/naev-data/

Saves and screenshots can be found in the saves and screenshots directories, respectively.

Where is conf.lua stored?

OS Path
Windows %APPDATA%\naev\conf.lua
macOS ~/Library/Preferences/org.naev.Naev/conf.lua
Linux ~/.config/naev/conf.lua
Portable install dir/naev-data/conf.lua

Gameplay

How do I save?

Every time you land on a planet the game automatically saves. There's no need to actively save.

How do I change the key bindings?

As of 0.4.0 the keybindings window within the game is able to reassign keys in a rather intuitive manner.

While still useful, the below information is no longer necessary for most players:

Linux users can edit the file at ~/.config/naev/conf.lua, macOS users can edit the file at ~/Library/Preferences/org.naev.Naev/conf.lua and Windows users can ed it the file at %APPDATA%\naev\conf.lua. At the bottom of the file, you can find the keybindings. Each line will look something like this:

--accel          = { type = "keyboard", key = "up", mod = "any" }

With each key assigned to the default setting. To change the key binding, change quoted string after 'key=' and uncomment the line. For example, if you wanted to change the accelleration key from the default up arrow to the 'i' key, you would modify the first line of the keyboard binding to look like this:

accel          = { type = "keyboard", key = "i", mod = "any" }

Make sure there is no '--' at the beginning of the line, as that will cause Naev to ignore the line.

How do I make Naev run full screen, or windowed?

With recent versions of Naev, it's possible to set this in-game. Enter the Options menu, open the Video tab and toggle the Fullscreen button. Save the setting and restart the game.

While still useful, the below information is no longer necessary for most players:

Full screen mode, like all user configuration, is determined by the file at ~/.config/naev/conf.lua on Linux or macOS or %APPDATA%\naev\conf.lua on Windows. To enable full screen mode, when Naev is configured to run in a window edit the line in the config file that reads

fullscreen = 0

to read

fullscreen = 1

To disable full screen mode, do the reverse.

How do I get a Heavy Weapon / Heavy Combat Vessel License?

These licenses are mainly granted through missions. You can currently get them from doing missions for the Za'lek, Empire, or Dvaered. Furthermore, there is another way to get them, but we leave that up to the player to find.

Are there any mods / plugins?

Yes, some are available at https://github.com/naev/naev-plugins . However, there is not yet an easy to use interface to add, remove, or search them.

Are there any cheats?

Not as such. However, the Lua console (accessible with F2) allows you to modify many things, including adding credits, refuelling or adding outfits.

Two simple examples:

player.pay( 1000 ) -- This will give you 1000 credits.
player.refuel() -- This will fully refuel your ship.

... And a slightly more complex set:

player.pilot():setInvincible() -- Makes you invulnerable until you next reload.
player.pilot():setInvincible(false) -- Makes you vulnerable again.
Potential end-game spoiler: The game also contains a debug system where all outfits and ships are for sale. As of Naev 0.10-alpha, no legitimate method will get you there, but this command will:
player.teleport("Zied")

For (much) more, see the full Lua API documentation.

Development

How can I translate Naev to my language?

Naev uses Gettext for translation. The translation files are found in the po subdirectory.

(NOTE: More to be written …)

Clone this wiki locally