Want to Get Started in the Cloud?
Configure Helix Core
Use the following instructions to create a superuser account, configure Helix Core, create a workspace, and set up file mappings for your game engine.
Create a Superuser Account
To start setting up your account to work with a game engine, you need to be a super user.
- Open a connection to the Helix Core server. Enter in an IP address or hostname. This will create a reachable connection to your client machine.
- Enter your server's hostname or IP address in the server field. Include your port number (default:1666) to connect to your client.
- Click New to create your user account.
- Enter your new user details. Click Save.
- The new username should populate in the user field. If not, type it in. Enter a password and click OK.
- If you are prompted with a wizard, close it by selecting Do Not Use Wizard or Close Wizard.
- Now you should be in P4V. Navigate to Tools > Administration to login as a superuser. Click Yes to confirm.
Configure Security For Helix Core
You need to configure your server to ensure that no one else can create a user account.
- To reinforce your security, open P4Admin and navigate to Administration > Password Security Level. Select Security Level 3. Click OK.
- If you get errors, your password is not strong enough. Navigate to the User & Groups tab. Right-click on the user and choose Change Password.
- Next you need to disable public user account creation. Navigate to the command line. Click to open. Alternatively, use the Windows Key + R, type in cmd, then click enter.
- In the new command line prompt, type the following and click enter.
p4 configure set dm.user.noautocreate=2
The following text should display:
For server 'any', configuration variable 'dm.user.noautocreate'set to '2'
If you do not see this text, check your spelling and try again.
- Run the following command to disable unauthorized viewing of your Perforce user list:
p4 configure set run.users.authorize=1
The following text should display:
For server 'any', configuration variable 'run.users.authorize'set to '1'
If you do not see this text, check your spelling and try again.
- Run the following command to disable unauthorized viewing of your Perforce config settings:
p4 configure set dm.keys.hide=2
The following text should display:
For server 'any', configuration variable 'dm.keys.hide'set to '2'
- You are done configuring Helix Core. If you do not see this text, check your spelling and try again.
Create a Workspace
Workspaces in Helix Core create a local copy of your project that you can work on. Then you can pull and push changes from your Helix Core server.
- Open P4V, select New Workspace from the Workspace drop-down. You need to adjust the settings to work with your game engine. Note: Your workspace can be used with either Unreal or Unity. You will need to create a folder and file mapping specific to your game engine — but this will happen later.
- In the New Workspace window, create a workspace name. You want it to be short and simple.
- Create a Workspace Root. This should also be short and map to a depot. Your default depot will be name “depot”.
- Click the Advanced Tab.
- Leave all settings as default but make sure to select the following:
- Modtime: set file modification times to what they were in the submitter’s workdpace
- Rmdir: delete workspace directories when empty
- On submit: Revert unchanged files
- Click Okay.
- In the Add Files Wizard, click Cancel. This will come later.
Set Up File Mappings
In Helix Core, files are treated differently based on their extension. For example, code files that are marked as text files and any files Helix Core does not recognize are usually treated as binary files. Only one person can check out and modify these files a time.
To work with either Unreal or Unity, you need to set up file mappings so that Helix Core knows how to handle them correctly. File mappings are unique to the game engine, so ensure you are using the right file mapping for your game engine.
- Click the Start Icon and navigate to the command line. Click to open. Alternatively, use the Windows Key + R, type in cmd, then click enter.
- In the new command line prompt, type the following and click enter.
p4 typemap
The text editor should load with a file.
- Replace the contents of that file with the correct file mappings for your game engine. If you set up your Helix Core server with a different depot name, replace dept references with your depot name.
- For Unity:
TypeMap: text //....js text //....cs text //...shader text //....meta text+l //....cm text+l //....proc text+l //....md5mesh text+l //....md5anim text+l //....ma binary //....dll binary //....exe binary //....response binary //....lib binary //....pdb binary //....u binary //....ini binary //....stub binary //....ip binary+l //....prefab binary+l //....mb binary+l //....mat binary+l //....psb binary+l //....mp3 binary+l //....fbx binary+l //....unity binary+l //....asset binary+l //....aas binary+l //....tga binary+l //....jpg binary+l //....lwo binary+l //....wav binary+l //....ogg binary+l //....demo binary+l //....roq binary+l //....doc binary+l //....xls binary+l //....celtx binary+l //....pdf binary+l //....odt binary+l //....ods binary+l //....ppt binary+l //....skp binary+lS //....dds binary+lS //....bnk binary+lS //....light binary+lS //....shadow binary+lS //....ibl binary+lS //....bik binary+lS //....upk
- For Unreal:
TypeMap: binary+w //....exe binary+w //....dll binary+w //....lib binary+w //....app binary+w //....dylib binary+w //....stub binary+w //....ipa binary //....bmp text //....ini text //....config text //....cpp text //....h text //....c text //....cs text //....m text //....mm text //....py binary+l //....uasset binary+l //....umap binary+l //....upk binary+l //....udk binary+l //....ubulk
- You should see TypeMap Saved. Close the text file.
Set Up Helix Core to Ignore Files
By default, Helix Core wants to version all of your files. But for game engine builds, you need Helix Core to ignore some of the files. Use the following instructions to create the ignore file, set up Helix Core to ignore files, and then submit the ignore file.
Create the Ignore File
- To create a .p4ignore file, open up your notepad and save a blank file with name .p4ignore inside your workspace root folder. For example:
C:\Users\Administrator\Perforce\root_EXAMPLE
- In the notepad, copy and paste the following text and save it:
Saved/ Intermediate/ DerivedDataCache/ *.pbd obj/ *.vcxproj *.sln *-Debug.* FileOpenOrder/
- If you know you would like to keep .pdb files in Helix Core, remove *.pdb from the ignore text above.
Set Up Helix Core to Ignore Files
- Click the Start Icon and navigate to the command line.
- In the new command line prompt, navigate to your workspace root. For example, enter the following command:
cd D:\depot
- Replace D:\depot with the full path to your depot.
- Run the following command:
p4 set P4IGNORE=.p4ignore
If successful, there will be no output. If you receive an error, review and try again.
Submit the Ignore File
- Open P4V. Right-click on file in your workspace and select Mark for Add... This will add this ignore file to a default changelist.
Note: In Helix Core, changelists include a list of changes that are made locally that have not been submitted to the Helix Core server yet. - Locate the default changelist in the Pending Changelists tab. If you do not see the Pending Changelists tab, navigate to View > Pending Changelists.
- Right-click on the changelist and click Submit.
- Enter a changelist description. For example, 'Submitting Ignore File.' Click Submit. This ignore file is now in Helix Core.
Build With Helix Core + Game Engine
Submit Builds to Helix Core
- In P4V, move your game engine project to your workspace.
- Test your ignore file. Right-click on the Engine\Saved folder in your workspace. Click Reconcile Offline Work...
- A prompt should display that no files need to be reconciled. This means your ignore file is working properly. If you have files that need to be reconciled, go back and try setting up the ignore file again. Click OK to continue.
- To submit a file, right-click your workspace root and click Mark for Add.
Note: Game engine files are large and can take a lot of time to add them to your changelist. If the Ignored Files Warning displays, dismiss it. This ensures your ignore file is working properly. - There are several files in a build that contain wildcards. You want to Add Files With Wildcards. Then, click Continue.
- Once the files are added, right-click on the default changelist.
- Add in a changelist description. For example, ‘Add engine files.'
- Click Submit to push all of the engine files to Helix Core. Depending on your connection and Helix Core setup, this could take some time.
Connect Your Game Engine to Helix Core
Now you are ready to connect to Helix Core with your game engine.
- Open up Unreal or Unity. Example screenshots are using Unreal. Navigate to Source Control. Click Connect.
- Enter in your workspace information. Click Accept.
- For this example, we are changing the color of the environment.
- Navigate to Source Control and select Submit to Source Control.
- Check out the assets from source control.
- Enter in a change description. Click Submit.
- Open P4V. You should be able to see your newly submitted changelist.