Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Difference between revisions of "Vessel"

From PCGamingWiki, the wiki about fixing PC games
(→‎Game Saves: per this [http://www.reddit.com/r/linux_gaming/comments/10zana/vessel_information_search_indie_humble_bundle/c6i4e8n comment] on reddit (by the porter))
(Updated Mac/Linux save directories.)
Line 14: Line 14:
 
[[File:Vessel_Windows_optionsmenu.png|300px|right|thumb|Options menu.]]
 
[[File:Vessel_Windows_optionsmenu.png|300px|right|thumb|Options menu.]]
  
To edit the configurations outside of Vessel, edit '''VesselConfig.ini'''. For Windows this is in ''"%APPDATA%\Vessel\VesselConfig.ini"'', for Mac and Linux this is in ''"~/.vessel/VesselConfig.ini"''.
+
To edit the configurations outside of Vessel, edit '''VesselConfig.ini'''. For Windows this is in ''"%APPDATA%\Vessel\VesselConfig.ini"'', for Mac this is in ''"~/Library/Application Support/Vessel/"'' and for Linux this is in ''"~/.local/share/Vessel/VesselConfig.ini"''.
  
 
A noteworthy setting in this file is ''SuperSample'', an anti-aliasing setting not present in the options menu. This can be ''1X'', ''2X'', ''4X'', ''8X'' and ''16X''. The higher the value, the higher the video memory requirement.
 
A noteworthy setting in this file is ''SuperSample'', an anti-aliasing setting not present in the options menu. This can be ''1X'', ''2X'', ''4X'', ''8X'' and ''16X''. The higher the value, the higher the video memory requirement.
Line 24: Line 24:
 
== Game Saves ==
 
== Game Saves ==
  
It is expected that the game saves for Vessel are cross-platform. For Windows they should be located in ''"%APPDATA%\Vessel\"'', for Linux they should be in ''"~/.local/share/.Vessel/"'' and for Mac under ''"~/Library/Application Support/Vessel''. Just poke your saves into those directories and you should be all set!
+
It is expected that the game saves for Vessel are cross-platform. For Windows they should be located in ''"%APPDATA%\Vessel\"'', for Mac they should be in ''"~/Library/Application Support/Vessel/"'' and for Linux they should be in ''"~/.local/share/.Vessel/"''. Just poke your saves into those directories and you should be all set!
  
 
= Mac OSX, Linux =
 
= Mac OSX, Linux =
Line 39: Line 39:
  
 
'''The Solution:''' Edit them in the config:
 
'''The Solution:''' Edit them in the config:
* Open up ''"~/.vessel/VesselConfig.ini"'' with your text editor of choice.
+
* Open up ''"VesselConfig.ini"'' with your text editor of choice.
 
* Edit ''ForcePixelResolutionX'' for screen width, ''ForcePixelResolutionY'' for screen height, ''VSync'' for v-sync, and ''FullScreen'' for fullscreen.
 
* Edit ''ForcePixelResolutionX'' for screen width, ''ForcePixelResolutionY'' for screen height, ''VSync'' for v-sync, and ''FullScreen'' for fullscreen.
  

Revision as of 18:24, 5 October 2012

Template:Infobox

Windows, Mac OSX, Linux

Configuration

Options menu.

To edit the configurations outside of Vessel, edit VesselConfig.ini. For Windows this is in "%APPDATA%\Vessel\VesselConfig.ini", for Mac this is in "~/Library/Application Support/Vessel/" and for Linux this is in "~/.local/share/Vessel/VesselConfig.ini".

A noteworthy setting in this file is SuperSample, an anti-aliasing setting not present in the options menu. This can be 1X, 2X, 4X, 8X and 16X. The higher the value, the higher the video memory requirement.

Keyboard Input

To change the key bindings, edit VesselKeys.ini, found in Vessel's root folder. For Mac, this is in "Vessel.app/Contents/MacOS/VesselKeys.ini".

Game Saves

It is expected that the game saves for Vessel are cross-platform. For Windows they should be located in "%APPDATA%\Vessel\", for Mac they should be in "~/Library/Application Support/Vessel/" and for Linux they should be in "~/.local/share/.Vessel/". Just poke your saves into those directories and you should be all set!

Mac OSX, Linux

MASSIVE DISCLAIMER! The Mac/Linux versions of Vessel are still in development and this section is subject to change prior to/on/after release. Consider this a preparation guide for now!

Known Issues

Note: The following section was originally written by Vessel's primary Mac/Linux developer, Ethan Lee, but may have been edited after the original post by other contributors.

Resolution Settings

The Problem: Resolution settings do not change after applying them in-game.

The Solution: Edit them in the config:

  • Open up "VesselConfig.ini" with your text editor of choice.
  • Edit ForcePixelResolutionX for screen width, ForcePixelResolutionY for screen height, VSync for v-sync, and FullScreen for fullscreen.

Why? The renderer, being designed around Direct3D, set display resolutions in a way that SDL/OpenGL was not entirely comfortable with. As a quick fix, I made the engine initialization read the config inputs first, then initialize the display with those settings. I will look at fixing this in-game, however.

Gamepad Bindings

The Problem: I can't set my gamepad bindings in-game!

The Solution: Edit VesselGamepad.ini with your text editor of choice to configure your gamepad. The directions are located in the file. For Mac this will be in "Vessel.app/Contents/MacOS/VesselGamepad.ini", and for Linux this will be in "/path/to/Vessel/VesselGamepad.ini".

Why? The original Win32 version of the game uses XInput and stores configurations for various controllers into the engine itself. For the SDL port, I designed this SDL joystick config system to quickly enable controller support while supporting as many controllers as possible.

Additionally: If you've got a compiler handy, you can use this C file to determine your controller's config values. Note: Requires SDL headers/libs!

Controller Input

The INI File

From the ini file...

-------------------------------------------------------------------------------
-- This is the config file for SDL joystick input.
-- We map joysticks in a somewhat obtuse way in order make Vessel compatible
-- with as many controllers as possible. Here's how it works:
--
-- Let's say I've connected my Classic Controller Pro. Here's what will show up
-- In the terminal output:
-- Gamepad #0: Nintendo Wiimote
-- 	Number of axes: 4
-- 	Number of hats: 1
-- 	Number of buttons: 11
--
-- We bind joystick values from 0 up, and we bind the axes, hats, and buttons
-- in that order.
-- 	1 axis = 1 value. Example: The left thumbstick's x axis is 1 axis.
-- 	1 hat = 4 values: Up, Down, Left, Right in that exact order.
-- 	1 button = 1 value. Yeah.
--
-- So let's look at the Classic Controller again. We have four axes, so we will
-- use 0-3 as our axes keys. We have one hat after that, so values 4-7 will be
-- that hat value's Down, Up, Left and Right keys (the CCP hat is upside down).
-- The buttons will simply be 8-18 after that.
--
-- If you don't want to bind a button value, just use -1.
--
-- Unfortunately there is an element of trial-and-error due to controllers
-- having no real standard, so you are highly encouraged to share your
-- controller configurations with the community. I recommend making a database
-- at the PCGamingWiki: http://www.pcgamingwiki.com/
--
-- Below is my set of bindings for the Classic Controller Pro, mounted with
-- wminput and using this config:
--
-- http://www.flibitijibibo.com/wminput/gamepad.wminput
--
-- Love, flibit
--
-------------------------------------------------------------------------------

The bindings that follow are named after the buttons found on the Xbox 360 controller. Simply bind the values described above to the equivalent 360 controller value.

Configurations

Below is a list of configurations for various controllers, contributed by the community.

Nintendo Wii Classic Controller Pro

This uses the wminput configuration found here: http://www.flibitijibibo.com/wminput/gamepad.wminput

[Binds]
Button_A=9
Button_B=8
Button_X=11
Button_Y=10
Button_Black=13
Button_White=12
Button_LeftTrigger=14
Button_RightTrigger=15
Button_Start=17
Button_Back=16
Button_LeftThumb=18
Button_RightThumb=-1
DPad_Up=5
DPad_Down=4
DPad_Left=6
DPad_Right=7
Axis_LX=0
Axis_LY=1
Axis_RX=2
Axis_RY=3