Giter Club home page Giter Club logo

openxcom / openxcom Goto Github PK

View Code? Open in Web Editor NEW
1.8K 116.0 473.0 29.81 MB

Open-source clone of the original X-Com 👽

Home Page: https://openxcom.org

License: GNU General Public License v3.0

Shell 0.11% CMake 0.85% NSIS 0.37% C++ 94.64% C 1.02% Objective-C 0.22% GLSL 2.74% Makefile 0.01% Batchfile 0.01% Python 0.04%
c-plus-plus sdl xcom video-game openxcom-game strategy-game-engine xcom-ufo-defense xcom-terror-from-the-deep turn-based-combat ufo-defense

openxcom's Introduction

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.

openxcom's People

Contributors

54x avatar ajschult avatar ando3131 avatar boozedog avatar cfailde avatar cornels avatar d2uriel avatar fenyo1 avatar gixg avatar hmaon avatar ivandogovich avatar jdarthenay avatar karvanit avatar madand avatar meridianoxc avatar myk002 avatar nhorus avatar nilekurt avatar pmprog avatar r1do avatar radius75 avatar redv avatar shoes01 avatar supsuper avatar tomvd avatar uqs avatar volutar avatar warboy1982 avatar winterheart avatar yankes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openxcom's Issues

Segmentation fault (core dumped)

Platform: Linux 64 bits, Fedora
Running Fullscreen.
To reproduce the error I can't at the moment identify any particular action to hit the bug.
How can I get a more elaborate log to send you ?

./openxcom
Starting OpenXcom...

Loading options...
Data folder is:
User folder is: /home/diego/.local/share/openxcom/
Config folder is: /home/diego/.config/openxcom/
Options loaded successfully.
Initializing engine...
SDL initialized successfully.
SDL_mixer initialized successfully.
Attempting to initialize display to 320x200x8...
Display initialized to 320x200x8.
Engine initialization completed.
Attempting to change display to 640x400...
Display changed to 640x400x8.
Loading resources...
Resources loaded successfully.
Loading ruleset...
Ruleset loaded successfully.

OpenXcom started successfully. Enjoy!
Attempting to change display to 1024x768...
Display changed to 1024x768x8.
Attempting to change display to 1024x768...
Display changed to 1024x768x8.

12 minutes playing the game ...

Segmentation fault (core dumped)

Build Warnings on OSX

Trying the clang compiler on OSX gave this warning

clang -Wall -O2 pkg-config --cflags sdl yaml-cpp -c -o ../obj/Projectile.o Battlescape/Projectile.cpp
Battlescape/Projectile.cpp:295:25: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
if (_position + offset >= 0 && _position + offset < _trajectory.size())

Also, lots of warnings regarding overloaded virtual (these can also be seen with g++, using -Woverloaded-virtual explicitly)

Battlescape/../Savegame/Craft.h:59:7: warning: 'OpenXcom::Craft::load' hides overloaded virtual function [-Woverloaded-virtual]
void load(const YAML::Node& node, const Ruleset *rule);
^
Battlescape/../Savegame/MovingTarget.h:48:15: note: hidden overloaded virtual function 'OpenXcom::MovingTarget::load' declared here
virtual void load(const YAML::Node& node);
^

Some buttons are active during Aliens' turn.

In the battlescape, at least the Next Soldier and Abort Mission are active during the Aliens' turn, if the actual battlescape is visible (ie NOT on Hidden Movement screen).
To see it you must be running with extremely low FPS (running at 2 - 10 here).

They are active with fast FPS too, but it's more difficult to use them.

game crashed when I try to open a map during the battle

I don't know if map is implemented or not, but I wasn't able to open it during the mission.
The game just crashed and I got the following log

wine openxcom_git_master_2012_04_26_1714.exe
fixme:keyboard:X11DRV_LoadKeyboardLayout L"00000409", 0080: stub!
fixme:keyboard:X11DRV_LoadKeyboardLayout L"00000409", 0001: stub!
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 10000 channels, pretending there's only 2 channels
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 8 channels, pretending there's only 2 channels
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 8 channels, pretending there's only 2 channels
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 8 channels, pretending there's only 2 channels
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 8 channels, pretending there's only 2 channels
fixme:alsa:AudioClient_GetMixFormat Don't know what to do with 10000 channels, pretending there's only 2 channels
fixme:mixer:ALSA_MixerInit No master control found on HDA NVidia, disabling mixer
fixme:mixer:ALSA_MixerInit No master control found on ThinkPad Console Audio Control, disabling mixer
fixme:dsalsa:IDsDriverBufferImpl_SetVolumePan (0x149558,0x1493dc): stub
fixme:winmm:MMDRV_Exit Closing while ll-driver open
fixme:winmm:MMDRV_Exit Closing while ll-driver open

unused parameter ‘action’

There are many functions that have the parameter "action" but do not use it, there is a good reason for that or I can proceed with the removal?

Game crashes on start

terminate called after throwing an instance of 'YAML::TypedKeyNotFound<std::string>'
  what():  yaml-cpp: error at line 5395, column 9: key not found: inDogfight

bug in Language.cpp

OpenXcom/src$ make
g++ -Wall -O2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -c -o ../obj/Language.o Engine/Language.cpp
Engine/Language.cpp: In static member function ‘static std::wstring OpenXcom::Language::cpToWstr(const string&)’:
Engine/Language.cpp:189:33: error: ‘CP_ACP’ was not declared in this scope
Engine/Language.cpp:189:77: error: ‘MultiByteToWideChar’ was not declared in this scope
Engine/Language.cpp:191:25: error: ‘CP_UTF8’ was not declared in this scope
make: *** [../obj/Language.o] Errore 1


xan@GA-970A-D3:~$ g++ --version
g++ (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

xan@GA-970A-D3:~$ uname -a
Linux GA-970A-D3 3.5.0-18-generic #29-Ubuntu SMP Fri Oct 19 10:26:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

SIGSEGV when starting Battlescape mission

Since a few weeks every time I start a downed-UFO mission (just when I click on the OK button and the load out screen is supposed to be shown) I get a segfault and the game crashes.

I tried to use GDB to track down the problem (on Arch Linux using Linux 3.2.1-1-ARCH) which gives me the following stack trace:

Starting program: ~/build/OpenXcom/bin/openxcom
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
[New Thread 0x7fffeef92700 (LWP 4717)]
[Thread 0x7fffeef92700 (LWP 4717) exited]
[New Thread 0x7fffeef92700 (LWP 4718)]

Program received signal SIGSEGV, Segmentation fault.
0x00000000005c4ed2 in OpenXcom::Surface::getWidth() const ()
(gdb) bt
#0 0x00000000005c4ed2 in OpenXcom::Surface::getWidth() const ()
#1 0x00000000005c51f1 in OpenXcom::Surface::blitNShade(OpenXcom::Surface*, int, int, int, bool, int) ()
#2 0x000000000056e962 in OpenXcom::Map::drawTerrain(OpenXcom::Surface*) ()
#3 0x000000000056cf6c in OpenXcom::Map::draw() ()
#4 0x000000000058d716 in OpenXcom::Camera::centerOnPosition(OpenXcom::Position const&, bool) ()
#5 0x00000000005806b9 in OpenXcom::BattlescapeState::BattlescapeState(OpenXcom::Game*) ()
#6 0x0000000000577b27 in OpenXcom::BriefingCrashState::btnOkClick(OpenXcom::Action*) ()
#7 0x00000000005c3a3f in OpenXcom::InteractiveSurface::mouseClick(OpenXcom::Action_, OpenXcom::State_) ()
#8 0x00000000005c3792 in OpenXcom::InteractiveSurface::handle(OpenXcom::Action_, OpenXcom::State_) ()
#9 0x00000000005b9485 in OpenXcom::State::handle(OpenXcom::Action*) ()
#10 0x00000000005bec23 in OpenXcom::Game::run() ()
#11 0x0000000000524747 in main ()

I had a look at the Surface::getWidth function but to pinpoint the problem I would need to find the place where the Surface class is being instantiated. I have not gotten around that yet so I just throw this stack trace at you... :-) If you need more debugging information just tell me how to get it for you.

Compilation Warnings on ubuntu 10.10

Probably, you are aware of this, but this a the compilation warning on a ubuntu 10.10 system.

Battlescape/AggroBAIState.cpp: In member function ‘virtual void OpenXcom::AggroBAIState::think(OpenXcom::BattleAction*)’:
Battlescape/AggroBAIState.cpp:113: warning: unused variable ‘tu’

Savegame/SavedBattleGame.cpp: In member function ‘void OpenXcom::SavedBattleGame::load(const YAML::Node&)’:
Savegame/SavedBattleGame.cpp:114: warning: operation on ‘dp’ may be undefined

Ufopaedia/ArticleStateItem.cpp:171: warning: enumeration value ‘BT_NONE’ not handled in switch
Ufopaedia/ArticleStateItem.cpp:171: warning: enumeration value ‘BT_MELEE’ not handled in switch
Ufopaedia/ArticleStateItem.cpp:171: warning: enumeration value ‘BT_PROXIMITYGRENADE’ not handled in switch
Ufopaedia/ArticleStateItem.cpp:171: warning: enumeration value ‘BT_MEDIKIT’ not handled in switch
Ufopaedia/ArticleStateItem.cpp:171: warning: enumeration value ‘BT_SCANNER’ not handled in switch

Ufopaedia/Ufopaedia.cpp:72: warning: enumeration value ‘UFOPAEDIA_TYPE_UNKNOWN’ not handled in switch
Ufopaedia/Ufopaedia.cpp:72: warning: enumeration value ‘UFOPAEDIA_TYPE_HWP’ not handled in switch
Ufopaedia/Ufopaedia.cpp:72: warning: enumeration value ‘UFOPAEDIA_TYPE_ARMOR’ not handled in switch

I am running the new version, the make command finish without error.

regards

autoshot refunded TUs after warning message

Autoshooting an alien with HE autocannon ammo, I've twice gotten shots off for no TU cost. The first time, the second projectile killed the alien and devastated some of the area and I got a "no line of fire" message and no third shot went off. The second time, a "not enough time units" message popped up somewhere during the shooting and my guy had full TUs after he was done shooting.

Bug in Text.cpp

g++ -Wall -O2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -c -o ../obj/Text.o Interface/Text.cpp
Interface/Text.cpp: In member function ‘void OpenXcom::Text:etText(const wstring&)’: Interface/Text.cpp:132:60: error: ‘std::wstring’ has no member named ‘back’
make: *** [../obj/Text.o] Errore 1

uname -a: Linux GA-970A-D3 3.5.0-18-generic #29-Ubuntu SMP Fri Oct 19 10:26:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Few warnings that should be fixed

src/Basescape/ProductionState.h: In constructor ‘OpenXcom::ProductionState::ProductionState(OpenXcom::Game_, OpenXcom::Base_, OpenXcom::RuleManufactureInfo_)’:
src/Basescape/ProductionState.h:43:9: warning: ‘OpenXcom::ProductionState::base’ will be initialized after [-Wreorder]
src/Basescape/ProductionState.h:42:24: warning: ‘OpenXcom::RuleManufactureInfo
OpenXcom::ProductionState::_item’ [-Wreorder]
src/Basescape/ProductionState.cpp:42:1: warning: when initialized here [-Wreorder]
src/Basescape/ProductionState.h:42:24: warning: ‘OpenXcom::ProductionState::_item’ will be initialized after [-Wreorder]
src/Basescape/ProductionState.h:41:15: warning: ‘OpenXcom::Production* OpenXcom::ProductionState::_production’ [-Wreorder]
src/Basescape/ProductionState.cpp:42:1: warning: when initialized here [-Wreorder]

src/Savegame/BattleItem.h: In constructor ‘OpenXcom::BattleItem::BattleItem(OpenXcom::RuleItem_, int_)’:
src/Savegame/BattleItem.h:51:20: warning: ‘OpenXcom::BattleItem::_ammoQuantity’ will be initialized after [-Wreorder]
src/Savegame/BattleItem.h:47:8: warning: ‘OpenXcom::Tile* OpenXcom::BattleItem::_tile’ [-Wreorder]
src/Savegame/BattleItem.cpp:32:1: warning: when initialized here [-Wreorder]
src/Savegame/BattleItem.h:47:8: warning: ‘OpenXcom::BattleItem::_tile’ will be initialized after [-Wreorder]
src/Savegame/BattleItem.h:46:14: warning: ‘OpenXcom::BattleUnit* OpenXcom::BattleItem::_unit’ [-Wreorder]
src/Savegame/BattleItem.cpp:32:1: warning: when initialized here [-Wreorder]

src/Savegame/SavedGame.h: In constructor ‘OpenXcom::SavedGame::SavedGame(OpenXcom::GameDifficulty)’:
src/Savegame/SavedGame.h:68:19: warning: ‘OpenXcom::SavedGame::battleGame’ will be initialized after [-Wreorder]
src/Savegame/SavedGame.h:67:27: warning: ‘int OpenXcom::SavedGame::soldierId’ [-Wreorder]
src/Savegame/SavedGame.cpp:87:1: warning: when initialized here [-Wreorder]
src/Savegame/Soldier.h: In constructor ‘OpenXcom::Soldier::Soldier(OpenXcom::RuleSoldier
, OpenXcom::RuleArmor
, const std::vectorOpenXcom::SoldierNamePool*, int)’:
src/Savegame/Soldier.h:53:17: warning: ‘OpenXcom::Soldier::_kills’ will be initialized after [-Wreorder]
src/Savegame/Soldier.h:46:6: warning: ‘int OpenXcom::Soldier::_id’ [-Wreorder]
src/Savegame/Soldier.cpp:58:1: warning: when initialized here [-Wreorder]

src/Savegame/SavedBattleGame.cpp:84:15: warning: unused variable ‘size’ [-Wunused-variable]

src/Savegame/SavedBattleGame.cpp:161:29: warning: ‘aiState’ may be used uninitialized in this function [-Wuninitialized]

src/Ruleset/XcomRuleset.cpp: In constructor ‘OpenXcom::XcomRuleset::XcomRuleset()’:
src/Ruleset/XcomRuleset.cpp:66:1: note: variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without

src/Battlescape/Camera.h: In constructor ‘OpenXcom::Camera::Camera(int, int, int, int, int, OpenXcom::Map*, int)’:
src/Battlescape/Camera.h:48:7: warning: ‘OpenXcom::Camera::_RMBDragging’ will be initialized after [-Wreorder]
src/Battlescape/Camera.h:42:6: warning: ‘int OpenXcom::Camera::_spriteWidth’ [-Wreorder]
src/Battlescape/Camera.cpp:35:1: warning: when initialized here [-Wreorder]
src/Battlescape/Camera.h:53:7: warning: ‘OpenXcom::Camera::_map’ will be initialized after [-Wreorder]
src/Battlescape/Camera.h:51:6: warning: ‘int OpenXcom::Camera::_visibleMapHeight’ [-Wreorder]
src/Battlescape/Camera.cpp:35:1: warning: when initialized here [-Wreorder]

comparison is always true due to limited range of data type

Battlescape/MiniMapView.cpp: In member function ‘virtual void OpenXcom::MiniMapView::mousePress(OpenXcom::Action_, OpenXcom::State_)’:
Battlescape/MiniMapView.cpp:183:39: warning: comparison is always true due to limited range of data type [-Wtype-limits]

Menu/DeleteGameState.cpp: In constructor ‘OpenXcom::DeleteGameState::DeleteGameState(OpenXcom::Game_, const wstring&, Uint8, std::string, Uint8, OpenXcom::SavedGameState_)’:
Menu/DeleteGameState.cpp:63:18: warning: comparison is always true due to limited range of data type [-Wtype-limits]

Menu/ErrorMessageState.cpp: In member function ‘void OpenXcom::ErrorMessageState::create(const string&, const wstring&, Uint8, std::string, Uint8)’:
Menu/ErrorMessageState.cpp:77:18: warning: comparison is always true due to limited range of data type [-Wtype-limits]
Menu/ErrorMessageState.cpp:104:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]

Update for autotools build system

Hi,
I found out that some source files are missing from the autotools build system so i decided to update the situation.

For starters script that gives you list of the not included ones (executed from project root dir):

find ./src/ -name *.cpp |sed -e 's:./::' |while read line; do if [[ grep $line ../Makefile.am |wc -l < 1 ]]; then echo $line; fi ;done

I also fixed the tarball creation with make dist, which now includes also cmake files, so people can decide which build system to use.

http://dev.gentooexperimental.org/~scarabeus/0001-Update-autotools-add-cmake-to-externs-during-tarball.patch

Oh and if you try to build with autotools there are quite few warnings to be fixed, should help you to find some bugs :)

compilation error on ubuntu

xan@GA-970A-D3:/OpenXcom/src$ uname -a
Linux GA-970A-D3 3.5.0-18-generic #29-Ubuntu SMP Fri Oct 19 10:26:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
xan@GA-970A-D3:
/OpenXcom/src$ gcc --version
gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2

xan@GA-970A-D3:~/OpenXcom/src$ make
g++ ../obj/lodepng.o ../obj/main.o ../obj/BaseInfoState.o ../obj/BasescapeState.o ../obj/BaseView.o ../obj/BuildFacilitiesState.o ../obj/CraftArmorState.o ../obj/CraftEquipmentState.o ../obj/CraftInfoState.o ../obj/CraftSoldiersState.o ../obj/CraftsState.o ../obj/CraftWeaponsState.o ../obj/DismantleFacilityState.o ../obj/ManufactureInfoState.o ../obj/ManufactureStartState.o ../obj/ManufactureState.o ../obj/MiniBaseView.o ../obj/MonthlyCostsState.o ../obj/NewManufactureListState.o ../obj/NewResearchListState.o ../obj/PlaceFacilityState.o ../obj/PlaceLiftState.o ../obj/PlaceStartFacilityState.o ../obj/PurchaseState.o ../obj/ResearchInfoState.o ../obj/ResearchState.o ../obj/SelectStartFacilityState.o ../obj/SellState.o ../obj/SoldierArmorState.o ../obj/SoldierInfoState.o ../obj/SoldiersState.o ../obj/StoresState.o ../obj/TransferBaseState.o ../obj/TransferConfirmState.o ../obj/TransferItemsState.o ../obj/TransfersState.o ../obj/AbortMissionState.o ../obj/ActionMenuItem.o ../obj/ActionMenuState.o ../obj/AggroBAIState.o ../obj/BattleAIState.o ../obj/BattlescapeGame.o ../obj/BattlescapeGenerator.o ../obj/BattlescapeMessage.o ../obj/BattlescapeOptionsState.o ../obj/BattlescapeState.o ../obj/BattleState.o ../obj/BriefingState.o ../obj/BulletSprite.o ../obj/Camera.o ../obj/CannotReequipState.o ../obj/DebriefingState.o ../obj/ExplosionBState.o ../obj/Explosion.o ../obj/InfoboxOKState.o ../obj/InfoboxState.o ../obj/Inventory.o ../obj/InventoryState.o ../obj/Map.o ../obj/MedikitState.o ../obj/MedikitView.o ../obj/MiniMapState.o ../obj/MiniMapView.o ../obj/NextTurnState.o ../obj/Pathfinding.o ../obj/PathfindingNode.o ../obj/PathfindingOpenSet.o ../obj/PatrolBAIState.o ../obj/Position.o ../obj/PrimeGrenadeState.o ../obj/Projectile.o ../obj/ProjectileFlyBState.o ../obj/PromotionsState.o ../obj/ScannerState.o ../obj/ScannerView.o ../obj/TileEngine.o ../obj/UnitDieBState.o ../obj/UnitInfoState.o ../obj/UnitSprite.o ../obj/UnitTurnBState.o ../obj/UnitWalkBState.o ../obj/WarningMessage.o ../obj/Action.o ../obj/CatFile.o ../obj/CrossPlatform.o ../obj/Exception.o ../obj/Font.o ../obj/Game.o ../obj/GMCat.o ../obj/InteractiveSurface.o ../obj/Language.o ../obj/Music.o ../obj/Options.o ../obj/Palette.o ../obj/RNG.o ../obj/Screen.o ../obj/Sound.o ../obj/SoundSet.o ../obj/State.o ../obj/Surface.o ../obj/SurfaceSet.o ../obj/Timer.o ../obj/AbandonGameState.o ../obj/AlienTerrorState.o ../obj/BaseNameState.o ../obj/BuildNewBaseState.o ../obj/ConfirmDestinationState.o ../obj/ConfirmLandingState.o ../obj/ConfirmNewBaseState.o ../obj/CraftErrorState.o ../obj/CraftPatrolState.o ../obj/DogfightState.o ../obj/FundingState.o ../obj/GeoscapeCraftState.o ../obj/GeoscapeOptionsState.o ../obj/GeoscapeState.o ../obj/Globe.o ../obj/GraphsState.o ../obj/InterceptState.o ../obj/ItemsArrivingState.o ../obj/LowFuelState.o ../obj/MonthlyReportState.o ../obj/MultipleTargetsState.o ../obj/NewPossibleManufactureState.o ../obj/NewPossibleResearchState.o ../obj/Polygon.o ../obj/Polyline.o ../obj/ProductionCompleteState.o ../obj/ResearchCompleteState.o ../obj/SelectDestinationState.o ../obj/TargetInfoState.o ../obj/UfoDetectedState.o ../obj/UfoLostState.o ../obj/ArrowButton.o ../obj/Bar.o ../obj/Cursor.o ../obj/FpsCounter.o ../obj/ImageButton.o ../obj/NumberText.o ../obj/TextButton.o ../obj/Text.o ../obj/TextEdit.o ../obj/TextList.o ../obj/Window.o ../obj/ErrorMessageState.o ../obj/LanguageState.o ../obj/LoadState.o ../obj/MainMenuState.o ../obj/NewBattleState.o ../obj/NewGameState.o ../obj/NoteState.o ../obj/OptionsState.o ../obj/SavedGameState.o ../obj/SaveState.o ../obj/StartState.o ../obj/TestState.o ../obj/ResourcePack.o ../obj/XcomResourcePack.o ../obj/AlienDeployment.o ../obj/AlienRace.o ../obj/Armor.o ../obj/ArticleDefinition.o ../obj/City.o ../obj/MapBlock.o ../obj/MapData.o ../obj/MapDataSet.o ../obj/RuleBaseFacility.o ../obj/RuleCountry.o ../obj/RuleCraft.o ../obj/RuleCraftWeapon.o ../obj/RuleInventory.o ../obj/RuleItem.o ../obj/RuleManufacture.o ../obj/RuleRegion.o ../obj/RuleResearch.o ../obj/Ruleset.o ../obj/RuleSoldier.o ../obj/RuleTerrain.o ../obj/RuleUfo.o ../obj/SoldierNamePool.o ../obj/Unit.o ../obj/Base.o ../obj/BaseFacility.o ../obj/BattleItem.o ../obj/BattleUnit.o ../obj/Country.o ../obj/Craft.o ../obj/CraftWeapon.o ../obj/CraftWeaponProjectile.o ../obj/GameTime.o ../obj/ItemContainer.o ../obj/MovingTarget.o ../obj/Node.o ../obj/NodeLink.o ../obj/Production.o ../obj/Region.o ../obj/ResearchProject.o ../obj/SavedBattleGame.o ../obj/SavedGame.o ../obj/Soldier.o ../obj/Target.o ../obj/TerrorSite.o ../obj/Tile.o ../obj/Transfer.o ../obj/Ufo.o ../obj/Vehicle.o ../obj/Waypoint.o ../obj/ArticleStateArmor.o ../obj/ArticleStateBaseFacility.o ../obj/ArticleState.o ../obj/ArticleStateCraft.o ../obj/ArticleStateCraftWeapon.o ../obj/ArticleStateItem.o ../obj/ArticleStateText.o ../obj/ArticleStateTextImage.o ../obj/ArticleStateUfo.o ../obj/ArticleStateVehicle.o ../obj/Ufopaedia.o ../obj/UfopaediaSelectState.o ../obj/UfopaediaStartState.o -lSDL -lyaml-cpp -lSDL_gfx -lSDL_mixer -o ../bin/openxcom
../obj/BattlescapeState.o: nella funzione "OpenXcom::BattlescapeState::btnUnitDownClick(OpenXcom::Action_)":
BattlescapeState.cpp:(.text+0x961): riferimento non definito a "OpenXcom::BattlescapeGame::cancelCurrentAction()"
../obj/BattlescapeState.o: nella funzione "OpenXcom::BattlescapeState::btnUnitUpClick(OpenXcom::Action_)":
BattlescapeState.cpp:(.text+0xa31): riferimento non definito a "OpenXcom::BattlescapeGame::cancelCurrentAction()"
../obj/BattlescapeState.o: nella funzione "OpenXcom::BattlescapeState::mapClick(OpenXcom::Action_)":
BattlescapeState.cpp:(.text+0xbe8): riferimento non definito a "OpenXcom::BattlescapeGame::cancelCurrentAction()"
../obj/BattlescapeState.o: nella funzione "OpenXcom::BattlescapeState::selectNextPlayerUnit(bool)":
BattlescapeState.cpp:(.text+0x15ac): riferimento non definito a "OpenXcom::BattlescapeGame::cancelCurrentAction()"
collect2: error: ld returned 1 exit status
make: *_* [../bin/openxcom] Errore 1

SDL_GFX links compilation error

Hi,
for compiling the project without link errors:

include <SDL/SDL_rotozoom.h>

instead of

include "rotozoom.h"

in file Engine/Screen.cpp

include <SDL/SDL_gfxPrimitives.h>

instead of

include "SDL_gfxPrimitives.h"

in file Engine/Surface.cpp

I don't know how it works with a SDL_GFX package, I compile it from source before compile openxcom.

Battle: I wasn't able to see an alien even though it was on a battle field

I'm not sure if it's a bug - don't remember how was it in the orginal game, but while I was comming closer to the alien and it was still in the shadow suddenly it's noticed me and fired. I came closer with another guy and the alien shoot again. I was able to see it's conture and aimed to it even though my crew didn't noticed it. I'm not sure if's a bug or not. Just close this issue if it isn't one.

Paths are handled unsafely

The path handling currently is just two strings joining without any safeguards.

I spent 20 minutes figuring out why the app does not find its files and it was because i was not passing the path with trailing / which resulted into:

/usr/share/openxcomBLABLALBA/BLA.DAT instead of /usr/share/openxcom/BLABLALBA/BLA.DAT

My go would be with Boost::Filesystem, but I don't know if you guys want to use boost so some safeguards might be required there to ensure that the dir always ends with that slash.

Feature request: Use keyboard in lists

I'm not sure if this is the right place for feature requests, but if so, the I would like to suggest adding keyboard bindings to any list views: [up] and [down] move the list selection, and [left] and [right] enact the "quantity up/down" buttons. That would make lots of things easier to operate!

type qualifiers ignored on function return type

In file included from Ruleset/RuleAlienMission.cpp:19:0:
Ruleset/RuleAlienMission.h:84:24: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
Ruleset/RuleAlienMission.cpp:143:41: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]

In file included from Ruleset/Ruleset.cpp:52:0:
Ruleset/RuleAlienMission.h:84:24: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]

In file included from Savegame/AlienMission.cpp:27:0:
Savegame/../Ruleset/RuleAlienMission.h:84:24: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]

I do not know whether to consider this warning or not

Fog of war issue

gnurg

Something's not quite right about the fog of war - I see the sectoid, but not the walls or floor. From the corner I should see the opposing door. Firing LOS looks right, but fog of war reveals too little terrain.

Compare to the original, just having opened the door:

gnurg

Time units corner case

If you have enough TUs to take a shot, but not enough TUs to turn and shoot ... but try to shoot at an angle where you will need to turn automatically - you turn, shoot, and still have all your TUs after the shot. Fun little exploit. Doesn't work like that in the original :)

I can navigate my mouse only in limited area of openxcom window

Hi,

I've just complied open xcom on my Ubuntu 11.10 and after I run the binary the OpenXcom window appears.
When I hover my mouse on the window my coursor changed to the yellow one (like in the original game)
and I was able to move it but only in the limited area (from the beginning of the window (left-top corner) to about 50% of it's width and 50% of it's hight). I wasn't even able to press the button on the first screen.

Hopefully it is something easy to fix.
If you need more info about the issue or want to see some screenshots, etc. just email me back please (ruppertus (at) o2 (dot) pl

Regards
R.

Misleading error message in getFolderContents

In CrossPlatform.cpp there's a method called getFolderContents which, in case of failure opening the directory requested, throws the exception "Failed to open saves directory".

This is very misleading. In my case this error occured because I had the RuleSet/ file in /usr/share while having the XCOM Data in ~/.local/share
openXCom therefore couldn't load the ruleset and quit with the error "Failed to open saves directory".

This should be changed to "Failed to open directory: theactualpath"

Use xdg to search for data / store saves and configs

It would be cool if you would implement usage of xdg locations to search for data files and to store the configs and saves.

It is suppsed to be the new approach to this data and mostly it is utilized on linux and mac, but it works on windows too.

Reading: http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html

This is more of long-term feature request i would like to see in, altho it is not so cool&shiny like adding new features into the game itself.

bug in RNG.cpp

xan@GA-970A-D3:~/OpenXcom/src$ make
g++ -Wall -O2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -c -o ../obj/RNG.o Engine/RNG.cpp
Engine/RNG.cpp:62:38: error: explicit qualification in declaration of ‘void OpenXcom::RNG::load(const YAML::Node&)’
Engine/RNG.cpp:77:34: error: explicit qualification in declaration of ‘void OpenXcom::RNG::save(YAML::Emitter&)’
make: *** [../obj/RNG.o] Errore 1

xan@GA-970A-D3:~/OpenXcom/src$ uname -a
Linux GA-970A-D3 3.5.0-18-generic #29-Ubuntu SMP Fri Oct 19 10:26:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

xan@GA-970A-D3:~/OpenXcom/src$ g++ --version
g++ (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Build error on Fedora/Linux

I was attempting to build OpenXcom on Fedora 16, 64-bit, and autoconf.sh failed with the following output:

./autogen.sh
mkdir: created directory m4' aclocal: installingm4/pkg.m4' from /usr/share/aclocal/pkg.m4' autoreconf: Entering directory.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --force-missing
configure.ac:17: installing ./install-sh' configure.ac:17: installing./missing'
Makefile.am: object openxcom-Unit.$(OBJEXT)' created bysrc/Savegame/Unit.cpp' and src/Ruleset/Unit.cpp' Makefile.am: installing./depcomp'
autoreconf: automake failed with exit status: 1

I'm not entirely sure what the error is, but I'm happy to debug.

SIGSEGV when starting Battlescape mission, Nr. 2

Hi

I got another SIGSEGV when trying to start a Battlescape mission (on Linux using the 3.2.12-1-ARCH Kernel amd64 and libstdc++5 3.3.6-4 with the newest OpenXcom commit 9e8e1eb ) . Gdb gives me the following stack trace:

Program received signal SIGSEGV, Segmentation fault.
0x00000000005a8676 in __gnu_cxx::__normal_iterator<OpenXcom::MapBlock**, std::vector<OpenXcom::MapBlock*, std::allocator<OpenXcom::MapBlock*> > >::__normal_iterator(OpenXcom::MapBlock** const&) ()
(gdb) bt
#0  0x00000000005a8676 in __gnu_cxx::__normal_iterator<OpenXcom::MapBlock**, std::vector<OpenXcom::MapBlock*, std::allocator<OpenXcom::MapBlock*> > >::__normal_iterator(OpenXcom::MapBlock** const&) ()
#1  0x00000000005a7e0d in std::vector<OpenXcom::MapBlock*, std::allocator<OpenXcom::MapBlock*> >::begin() ()
#2  0x0000000000690f1d in OpenXcom::RuleTerrain::getRandomMapBlock(int, OpenXcom::MapBlockType) ()
#3  0x000000000059bcac in OpenXcom::BattlescapeGenerator::generateMap() ()
#4  0x0000000000598900 in OpenXcom::BattlescapeGenerator::run() ()
#5  0x000000000060f36a in OpenXcom::ConfirmLandingState::btnYesClick(OpenXcom::Action*) ()
#6  0x00000000005e1e3b in OpenXcom::InteractiveSurface::mouseClick(OpenXcom::Action*, OpenXcom::State*) ()
#7  0x00000000005e1b8e in OpenXcom::InteractiveSurface::handle(OpenXcom::Action*, OpenXcom::State*) ()
#8  0x00000000005d7551 in OpenXcom::State::handle(OpenXcom::Action*) ()
#9  0x00000000005dcfff in OpenXcom::Game::run() ()
#10 0x00000000005391a7 in main ()

I may try to look into it some more myself if I find the time. If you would like to have more specific information about the error just ask me.

ufopaedia is wonky

When I first checked the ufopaedia on the geoscape after a few minutes into a new game, it showed an assortment of entries including xcom gear I had been using and alien technology I had never even seen, let one looted and researched.

When I checked it again an hour later, the ufopaedia was completely empty.

Minimize planes battle button doesn't work or it's not implemented

Imagine a situation that the new craft appears. It's quite big one so you sent there 2 planes. When the first get to the target the plane battle begins. Usually I minimize a battle and wait until the second craft come. It's impossible because the minimize button doesn't work.

missing initializer for member ‘SDL_Color::unused’

Battlescape/BattlescapeState.cpp: In constructor ‘OpenXcom::BattlescapeState::BattlescapeState(OpenXcom::Game*)’:
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]
Battlescape/BattlescapeState.cpp:174:17: warning: missing initializer for member ‘SDL_Color::unused’ [-Wmissing-field-initializers]

I do not know whether to consider this warning or not

Battle: Wine: The game crashed when I clicked on my tank

While I was playing the battle, I moved the cursor from one crew to the tank.
When I did that the game has crashed. It doesn't happen all the time.
I think that it may be difficult to catch the root case.

Console log:
fixme:storage:create_storagefile Storage share mode not implemented.
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
fixme:seh:RtlAddFunctionTable 0x61e45620 1 61e40000: stub
fixme:seh:RtlAddFunctionTable 0x61776ba0 1 61700000: stub
fixme:seh:RtlAddFunctionTable 0x64f69540 1 64f40000: stub
fixme:seh:RtlAddFunctionTable 0x622c6620 1 622c0000: stub
fixme:seh:RtlAddFunctionTable 0x6ce47620 1 6ce40000: stub
fixme:seh:RtlAddFunctionTable 0x682d4b20 1 682c0000: stub
fixme:seh:RtlAddFunctionTable 0x638d1dc0 1 63800000: stub
fixme:seh:RtlAddFunctionTable 0x3b6ea0 1 390000: stub
fixme:seh:RtlAddFunctionTable 0x68f5b6a0 1 68f40000: stub
fixme:seh:RtlAddFunctionTable 0x6b431bc0 1 69c40000: stub
fixme:iphlpapi:NotifyAddrChange (Handle 0xdbe2f8, overlapped 0xdbe2c0): stub
p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory
p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory
fixme:storage:create_storagefile Storage share mode not implemented.
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
fixme:iphlpapi:NotifyAddrChange (Handle 0xe9e8cc, overlapped 0xe9e8b0): stub
p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory
wine: configuration in '/home/ruppertus/.wine' has been updated.
fixme:keyboard:X11DRV_LoadKeyboardLayout L"00000409", 0080: stub!
fixme:keyboard:X11DRV_LoadKeyboardLayout L"00000409", 0001: stub!
ALSA lib conf.c:3314:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default
err:heap:validate_block_pointer Heap 0x110000: bad size 00148d18 for in-use arena 0x148b30
err:heap:validate_block_pointer Heap 0x110000: bad size 00148ce8 for in-use arena 0x148b18
fixme:winmm:MMDRV_Exit Closing while ll-driver open
fixme:winmm:MMDRV_Exit Closing while ll-driver open

Compilation fails --- BattlescapeGame.cpp not mentioned in Makefile

I'm trying to compile the current (as of today) codebase, but when linking I end up with numerous undefined references to symbols in OpenXcom::BattlescapeGame. Looking through the compile stage and the Makefile, there is no reference to the source file BattlescapeGame, although the file is there in the src directory.

Any ideas? My system is Debian Wheezy amd64, automake 1.11.2.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.