From 363c8f7f02c25f90255b28a5e2eaea784b2a502f Mon Sep 17 00:00:00 2001 From: Nathan Fulton Date: Wed, 31 Aug 2016 23:56:22 -0400 Subject: [PATCH] Update readme --- README.md | 44 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 052a940..c8b27fe 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ## About -*Hostile Takeover* is the open source release of the wildly popular mobile Real Time Strategy game *Warfare Incorporated*. Warfare Incorporated's developers, grateful for all the contributions of the open source community, are delighted to give something back. +*Hostile Takeover* is the open source release of the wildly popular mobile Real Time Strategy game [*Warfare Incorporated*](http://www.warfareincorporated.com/). Warfare Incorporated's developers, grateful for all the contributions of the open source community, are delighted to give something back. #### Legal Stuff *Hostile Takeover* and *Warfare Incorporated* are registered trademarks of *Spiffcode, Inc* the developers of Warfare Incorporated. *Hostile Takeover* is copyrighted 2004-2014 by Spiffcode, Inc. The Hostile Takeover source code is made available under the [BSD open source license](LICENSE.txt). @@ -8,11 +8,20 @@ ## Building ### Prerequisites +**macOS and iOS Ports:** - Mac OS X -- Xcode 5 (or later) with *Command Line Tools* installed +- [Xcode 5 (or later)](https://itunes.apple.com/us/app/xcode/id497799835?mt=12) with *Command Line Tools* installed - Install *Command Line Tools* from Xcode *Preferences... Downloads*. +**Android Port:** +- [Eclipse](https://eclipse.org) +- [Eclipse ADT Plugin](https://dl-ssl.google.com/android/eclipse/) +- [Android NDK](https://developer.android.com/ndk/) +- [Android SDK](https://developer.android.com/studio/) Command Line Tools + ### Building the Hostile Takeover Executable + +**iPhone Port:** 1. Within Xcode, open `game/wi.xcodeproj`. - Select a Build Configuration via *Edit Scheme...Info* - **Debug (default)**. Has extra runtime checks and is typically used during development. Displays "DEV BUILD" and date on Hostile Takeover startup screen. The Debug version requires a local server to be running for multiplayer testing. @@ -23,6 +32,33 @@ - Build and run! - On your device or in the iOS Simulator. +**SDL macOS and iOS Ports:** +- Within Xcode, open `game/sdl/htsdl.xcodeproj`. +- Select a Build Configuration via *Edit Scheme...Info* + - **Debug (default)** for development, has extra runtime cheacks and displays "DEV BUILD" and date on the game startup screen. + - **Release** W/o extra runtime checks and displays game database version number on the game startup screen. +- Select a Build Target: + - **HT - Desktop** for building for macOS. + - **HT Mobile** for building for iOS device or iOS simulator. +- Build, and run on your target device! + +**Android Port:** +- Set desired app ABI in `game/sdl/android/jni/Application.mk` (default ABI is: all). +- Add your NDK path to your environment variables `export PATH=$PATH:[YOUR NDK PATH]`. +- `cd game/sdl/android`. +- For debug build: `ndk-build`. For release build: `ndk-build REL=1`. +- Import the project into Eclipse if you have not already done so. + - File > New > Other... > Android Project from Existing Code + - Browse to the HT project at `game/sdl/android` and click finish. +- Build and run! + - To run on connected device in Eclipse: Hostile Takeover > Run As > Android Application + - To build an .apk in Eclipse: File > Export... > Export Android Application > Hostile Takeover > [Developer Keystore](https://developer.android.com/training/articles/keystore.html) > Finish + +**Linux Port (WIP)** + +- Run `game/sdl/linux/install.sh` to create the necessary directories and install the necessary packages. +- `cd game/sdl/linux/` and `make` or `make REL=1`. + ### Building the Hostile Takeover Data File The Hostile Takeover iOS executable incorporates a data file, **htdata832.pdb**, which includes all the art, audio, and levels for the game. A prebuilt version of this data file is already in the source tree so you don't need to build it unless you are modifying assets it contains. @@ -34,8 +70,8 @@ Originally all of Hostile Takeover was developed on Windows using Windows tools - `make IPHONE=1 MULTIPLAYER=1 clean all` - some harmless warnings will be displayed - Mark the data file with a version number. - - `cd ..` - - `bin/markversion 1.6` + - `cd ../game` + - `../bin/markversion.exe 1 htdata832.pdb "+++VERSION+++" 1.6` ### Building and running the Hostile Takeover Multiplayer Server Hostile Takeover supports single player and multiplayer play. Multiplayer is supported by two server components: a TCP based game server located in the **server** directory, and an HTTP based server located in the **stats** directory used for accounts, leaderboard, game history and game stats.