{{ message }}

Switch branches/tags
Nothing to show

## Files

Failed to load latest commit information.
Type
Name
Commit time

# Overview

It is part of the RAGE project.

The project has three main areas:

• The client.
• The server.
• The shared simulation.

# Licensing

See the LICENCE file included in this project.

# Cloning

• When the project is cloned the ECS solution will need to be opened to perform a NuGet package restore, this will only need to be repeated if the ECS is updated with new package dependencies.
• If cloning via SourceTree or another graphical git tool plese ensure that the LFS content has been pulled for all of the submodules.
• Within the Unity folder you will need to run the CreateLibJunctions.bat file in order to set up the GameWork SymLink required for the project structure to be set up correctly.

# Key Project Structure

• doc: Documentation
• lib: Precompiled Included Assets used by the client and server.
• GameWork: Game Development Framework.
• High-Speed-Priority-Queue-for-C-Sharp: Used by the simulation for pathfinding.
• Photon: Used by the Photon server.
• Server: Server side code, based on the Photon server architecture.
• Simulation: Simulation source.
• Unity: IT Alert Game Client Unity project files.
• Assets
• lib: Precompiled Included Assets used by the client.
• Unity: Prequired Unity DLLs.
• Tools
• CreateLibJunctions.bat: Setup script to create SymLink to necessary lib files.

# Development

## Requirements

• Windows
• Git LFS
• Visual Studio 2017
• Unity Editor

## Environment Setup

For .pdb debugging it is expected that you work from P:\it-alert so that the source files can be resolved.

If you are going to be commiting DLLs or want to debug code inside the DLLs, you will need to do the following:

1. Open CMD.
2. We will refer to the parent folder of your IT Alert repository as your "Projects Folder".
3. Map your Projects Folder to the drive letter P:
SUBST P: [Parent dir of it-alert project]
If the path of the it-alert project is C:\Users\Bob\Projects\it-alert, the command would be:
SUBST P: C:\Users\Bob\Projects
4. Navigate to P:\it-alert to make sure the mapping has worked.
5. Remember to always use this path when working on it-alert.
6. Pull any of the repositories with source code you want to debug to your Projects Folder, leaving the cloned repository name as the default that git has defined.

## Run Process

1. This project uses Git Submodules so make sure those have been pulled too.
At the time of writing, this can be done with: git submodule update --recursive if already cloned
or to clone: git clone --recurse-submodules [it alert repository url]
Note: Make sure that Submodules have been pulled properly. SourceTree likes to ignore the Newtonsoft.Json Submodule.

5. Run Unity/Tools/CreateLibJunctions.bat to setup the required symlinks so the correct dlls are included (you need to do this before opening .Unity so Unity doesn't create the folders instead). This will create a symlink at \Unity\Assets\Gamework.

6. Open and run Unity/ in the Unity Editor.

## Updating

### GameWork.Unity

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

### RAGE Analytics

Follow the instructions provided in the RAGE Analytics Documentation.

Commit hash: 652a562c11d3b2ddb85bae509a719d30ed6ecd0c

### Evaluation Asset

Follow the instructions provided in the Evaluation Asset Documentation.

Commit hash: 6c4551df61ac1a1829ed0cbf7b9788362ee1342a

## Conventions

• Commit .pdb files when committing .dlls.

## Developer Guide

For detailed information on the project structure for the Game Logic, Server and Client, see the the Developer Guide.

## Versioning

Each main area of the IT Alert project has its own version located in:

The version is composed of:

• Major: Increment for backwards compatibility breaking changes.
• Minor: Increment for features.
• Build: Increment for bug fixes, minor changes etc that result in a new build.

# Build

## Run Instructions

To run the Photon Server as a service, see the Deployment Documenetation.

# Installer:

Wix is used to create the Windows installer.

Using the game-launcher repository, games can be launched using a url.

## Requirements:

• Wix Toolset
• Visual Studio 2017
• Wix Visual Studio Extension
• Game Launcher project

## Process

2. Once built, go to the project solution (Unity/PlayGen.ITAlert.Installer) and build the PlayGen.ITAlert.Installer project.

The process for setting up a game installer is also detailed within the Game Launcher documentation.

  {
"BaseUri": "http://api.sugarengine.org/v1/"
}

No description, website, or topics provided.

2 tags

## Packages 0

No packages published

•
•
•
•