Skip to content

Open-source clone of the original X-Com 👽

License

Notifications You must be signed in to change notification settings

Northfear/OpenXcom-vita

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenXcom port for PS Vita

Install

Download openxcom.vpk from https://github.com/Northfear/OpenXcom-vita/releases and install it to your PS Vita.

Download openxcom-data.zip from https://github.com/Northfear/OpenXcom-vita/releases, extract it and copy OpenXcom folder into ux0:data/.

Copy content of installed Enemy Unknown folder into ux0:data/OpenXcom/UFO or/and installed Terror From The Deep into ux0:data/OpenXcom/TFTD. Check README.txt UFO/TFTD for details about exact game folders that need to be copied.

rePatch reDux0 OR FdFix plugin may be required for proper suspend/resume support (only use one at a time).

Building

Prerequisites

  • VitaSDK
  • SDL 1.2
  • SDL_mixer
  • SDL_gfx
  • SDL_image
  • yaml-cpp

Build

mkdir build && cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=$VITASDK/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=None
make

Debug output can be previewed with psp2shell.

https://github.com/Cpasjuste/psp2shell

Port info

Controls

  • Left analog stick - Cursor movement
  • Right analog stick - Map/Globe scrolling
  • CROSS - Left mouse button
  • CIRCLE - Right mouse button
  • SQUARE - Open Map
  • TRIANGLE - Inventory
  • D-Pad Up/Down - Switch between floors
  • D-Pad Right/Left - Use item in right/left hand
  • R1 - Select Previous Unit
  • L1 - Select Next Unit
  • SELECT - Esc
  • START - End turn
  • R1 + L1 - Ctrl emulation (force fire, strafe with alternative movement on)

Buttons can be remapped in the "Controls" options menu.

Cursor movement speed can be changed by editing the controllerPointerSpeed option in ux0:data/OpenXcom/options.cfg.

Mod support

RAM is pretty limited on Vita, so there's a chance that game would just crash with heavy mods installed.

Other

You can change game resolution in the "Video" options menu.

320x200 provides the best performance. 480x272 with Display Mode set to "Fullscreen" and Geoscape Scale/Battlescape Scale set to "Full Display" provides great visuals (x2 pixel scaling) while still having good performance.

"Fullscreen" display mode scales game surface to fullscreen. "Windowed" mode centers the game area w/o scaling it.

You can skip intros by tapping on screen.

OpenXcom Workflow Status

OpenXcom is an open-source clone of the popular "UFO: Enemy Unknown" ("X-COM: UFO Defense" in the USA release) and "X-COM: Terror From the Deep" videogames by Microprose, licensed under the GPL and written in C++ / SDL.

See more info at the website and the wiki.

Uses modified code from SDL_gfx (LGPL) with permission from author.

Installation

OpenXcom requires a vanilla copy of the X-COM resources -- from either or both of the original games. If you own the games on Steam, the Windows installer will automatically detect it and copy the resources over for you.

If you want to copy things over manually, you can find the Steam game folders at:

UFO: "Steam\SteamApps\common\XCom UFO Defense\XCOM"
TFTD: "Steam\SteamApps\common\X-COM Terror from the Deep\TFD"

Do not use modded versions (e.g. with XcomUtil) as they may cause bugs and crashes. Copy the UFO subfolders to the UFO subdirectory in OpenXcom's data or user folder and/or the TFTD subfolders to the TFTD subdirectory in OpenXcom's data or user folder (see below for folder locations).

Mods

Mods are an important and exciting part of the game. OpenXcom comes with a set of standard mods based on traditional XcomUtil and UFOExtender functionality. There is also a mod portal website with a thriving mod community with hundreds of innovative mods to choose from.

To install a mod, go to the mods subdirectory in your user directory (see below for folder locations). Extract the mod into a new subdirectory. WinZip has an "Extract to" option that creates a directory whose name is based on the archive name. It doesn't really matter what the directory name is as long as it is unique. Some mods are packed with extra directories at the top, so you may need to move files around inside the new mod directory to get things straighted out. For example, if you extract a mod to mods/LulzMod and you see something like:

mods/LulzMod/data/TERRAIN/
mods/LulzMod/data/Rulesets/

and so on, just move everything up a level so it looks like:

mods/LulzMod/TERRAIN/
mods/LulzMod/Rulesets/

and you're good to go! Enable your new mod on the Options -> Mods page in-game.

Directory Locations

OpenXcom has three directory locations that it searches for user and game files:

Folder Type Folder Contents
user mods, savegames, screenshots
config game configuration
data UFO and TFTD data files, standard mods, common resources

Each of these default to different paths on different operating systems (shown below). For the user and config directories, OpenXcom will search a list of directories and use the first one that already exists. If none exist, it will create a directory and use that. When searching for files in the data directory, OpenXcom will search through all of the named directories, so some files can be installed in one directory and others in another. This gives you some flexibility in case you can't copy UFO or TFTD resource files to some system locations. You can also specify your own path for each of these by passing a commandline argument when running OpenXcom. For example:

openxcom -data "$HOME/bin/OpenXcom/usr/share/openxcom"

or, if you have a fully self-contained installation:

openxcom -data "$HOME/games/openxcom/data" -user "$HOME/games/openxcom/user" -config "$HOME/games/openxcom/config"

Windows

User and Config folder:

  • C:\Documents and Settings\<user>\My Documents\OpenXcom (Windows 2000/XP)
  • C:\Users\<user>\Documents\OpenXcom (Windows Vista/7)
  • <game directory>\user
  • .\user

Data folders:

  • C:\Documents and Settings\<user>\My Documents\OpenXcom\data (Windows 2000/XP)
  • C:\Users\<user>\Documents\OpenXcom\data (Windows Vista/7/8)
  • <game directory>
  • . (the current directory)

Mac OS X

User and Config folder:

  • $XDG_DATA_HOME/openxcom (if $XDG_DATA_HOME is defined)
  • $HOME/Library/Application Support/OpenXcom
  • $HOME/.openxcom
  • ./user

Data folders:

  • $XDG_DATA_HOME/openxcom (if $XDG_DATA_HOME is defined)
  • $HOME/Library/Application Support/OpenXcom (if $XDG_DATA_HOME is not defined)
  • $XDG_DATA_DIRS/openxcom (for each directory in $XDG_DATA_DIRS if $XDG_DATA_DIRS is defined)
  • /Users/Shared/OpenXcom
  • . (the current directory)

Linux

User folder:

  • $XDG_DATA_HOME/openxcom (if $XDG_DATA_HOME is defined)
  • $HOME/.local/share/openxcom (if $XDG_DATA_HOME is not defined)
  • $HOME/.openxcom
  • ./user

Config folder:

  • $XDG_CONFIG_HOME/openxcom (if $XDG_CONFIG_HOME is defined)
  • $HOME/.config/openxcom (if $XDG_CONFIG_HOME is not defined)

Data folders:

  • $XDG_DATA_HOME/openxcom (if $XDG_DATA_HOME is defined)
  • $HOME/.local/share/openxcom (if $XDG_DATA_HOME is not defined)
  • $XDG_DATA_DIRS/openxcom (for each directory in $XDG_DATA_DIRS if $XDG_DATA_DIRS is defined)
  • /usr/local/share/openxcom
  • /usr/share/openxcom
  • . (the current directory)

Configuration

OpenXcom has a variety of game settings and extras that can be customized, both in-game and out-game. These options are global and affect any old or new savegame.

For more details please check the wiki.

Development

OpenXcom requires the following developer libraries:

The source code includes files for the following build tools:

  • Microsoft Visual C++ 2010 or newer
  • Xcode
  • Make (see Makefile.simple)
  • CMake

It's also been tested on a variety of other tools on Windows/Mac/Linux. More detailed compiling instructions are available at the wiki, along with pre-compiled dependency packages.

About

Open-source clone of the original X-Com 👽

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 94.7%
  • GLSL 2.7%
  • C 1.0%
  • CMake 0.9%
  • NSIS 0.4%
  • Objective-C 0.2%
  • Other 0.1%