Space Modules Inc is a spaceship parts call center service agent simulator.
It is part of the RAGE project.
See the LICENCE file included in this project.
- When the project is cloned you will need to run the CreateLibJunctions.bat (on Windows) or MakeSymLinks.sh (on MacOS) file in order to set up the three SymLinks required for the project structure to be set up correctly. The sym links are:
Key Project Structure
- Unity Project: Project to be opened in the Unity Editor.
- ExcelToJson: Included Assets
- FATiMAImporter: Utility to parse the scenario content files into a Unity readable format.
- DeepLink: Included Assets
- Evaluation Asset: Included Assets - An asset which helps evaluate the pedagogical efficiency of a game.
- RAGE Analytics: Included Assets - An asset to log to the RAGE analytics server.
- levelconfig.json: Configuration file for levels.
- modules-en.json: Space modules data in English.
- modules-nl.json: Space modules data in Dutch.
- ScenariosRelated: Files used by the scenarios.
- Scenarios: The scenarios in game.
- SUGAR: Included Assets - An asset which adds social gamification features, including account management, achievements and leaderboards.
- lib: Included Assets - Precompiled libraries.
- GameWork: Game Development Framework.
- IntegratedAuthoringTool: An asset collection related to NPC conversations and emotions.
- PlayGenUtilities: A collection of simple Unity Utilities.
- space-modules-inc-setup: Installer project
- Tools: Setup scripts.
- Integrated Authoring Tool
- Role-Play Character
- Emotional Appraisal Asset
- Emotional Decision Making Asset
- Social Importance Dynamics
- Client-Side Tracker
- Server-Side Interaction Storage and Analytics
- Server-Side Dashboard and Analysis
- Evaluation Component
- PlayGen FAtiMA Toolkit Fork
- PlayGen Unity Utilities - a collection of simple Unity utilities.
- GameWork - a game development framework.
- ExcelToJsonConverter - used to convert Excel Localization files to JSON.
- Git LFS
- Visual Studio 2017
- Unity Editor
Run CreateLibJunctions.bat/MakeSymLinks.sh to create the required SymLinks.
In Unity's Project View, select the ScenarioRelated and Scenarios folders, right-click and select Reimport. This will cause the FATiMAImporter to generate the .txt versions and place them into the Resources folder.
a. Note that while this process will overwrite existing files and add new files, it does not currently delete files when their counterpart in the Scenarios or ScenarioRelated folder is removed from the project.
To run the game with SUGAR functionality, please refer to the SUGAR Unity Documentation.
To run the game with RAGE Analytics functionality, please refer to the RAGE Analytics Documentation.
To run the game with Evaluation Asset functionality, please refer to the Evaluation Asset Documentation.
SUGAR Custom Args
|round||1, 2, 3...||Which round of scenarios to play.|
|feedback||0, 1, 2||The level of feedback provided to the player, ranging from end game only to throughout live conversations.|
|ingameq||true, false||Should the in game questionnaire be shown.|
|lockafterq||true, false||Should the game be locked after all scenarios have been completed.|
|tstamp||yyyy-MM-ddTHH:mm||Timestamp related to when the game should be accessible.|
|forcelaunch||For debug purposes only. If the game should launch regardless of the validity of the timestamp. Any value will enable this functionality.|
|wipeprogress||For debug purposes only. Wipes the current progress in a round when playing over different sessions.|
Using PlayGen's forked version of the FAtiMA Toolkit, build solution and place new DLLs (found in FAtiMA-Toolkit\Assets\IntegratedAuthoringTool\bin\Debug) into lib\IntegratedAuthoringTool folder. Note that code changes could be needed as a result of updates to this asset.
Commit hash: 66bc9cfba528f8cbdeee2bb4c67b4ee77afc4b6a
Build solution and place new DLLs (found in GameWork.Unity\bin) into lib\GameWork folder. Note that code changes could be needed as a result of updates to this asset.
Commit hash: 37b623daf815667d6f523c38ab47304bfac82b22
PlayGen Unity Utilities
Build solution and place new DLLs (found in various folders in this project) into lib\PlayGenUtilities folder. Note that code changes could be needed as a result of updates to this asset. New prefabs may also need copying, although take care not to overwrite customised versions of previous prefabs.
New DLLs should also be copied into the lib\PlayGen Utilities folder in the SUGAR Unity project.
Commit hash: 99d0daaa429430b36807bc5c28e567a61fc75e7d
SUGAR Unity Asset
Build solution and place new DLLs (found in SUGAR-Unity\Assets\SUGAR\Plugins) into Assets\SUGAR\Plugins folder. Note that code changes could be needed as a result of updates to this asset. It is advised that you do not remove the prefabs for SUGAR, as these have been edited to match the styling of Space Modules Inc. Only replace these assets if they are no longer compatible with the latest version of the SUGAR Unity asset, and even then be aware that you will need to recreate the previous styling.
Commit hash: 51bbdcd3658af28823471a09f3be89dff0b641f9
Follow the instructions provided in the RAGE Analytics Documentation.
Commit hash: 652a562c11d3b2ddb85bae509a719d30ed6ecd0c
Follow the instructions provided in the Evaluation Asset Documentation.
Commit hash: 6c4551df61ac1a1829ed0cbf7b9788362ee1342a
Standalone, Android and iOS are currently supported using the default Unity build system.
Wix is used to create the Windows installer.
Using the game-launcher repository, games can be launched using a url.
- Wix Toolset
- Visual Studio 2017
- Wix Visual Studio Extension
- Game Launcher project
The process for setting up a game installer is detailed within the Game Launcher documentation.
See the Developer Guide for further details about the game.
Unity Project Structure
See the Unity Project Structure documentation for further details about the folders contained within the project.