Skip to content

Commit

Permalink
Improved process of importing beamable into a customer process; Added…
Browse files Browse the repository at this point in the history
… OnlineSubsystemBeamable plugin and Beamproj_HathoraDemo; Added beam_init_repo script that must be run once after running generate project files;

- Added UBeamLevelSubsystem (a WorldSubsystem that only gets loaded in a specific level and client/server configuration)
- Fixed warnings of improper initialization in various types
- Updated RiderLink plugin
  • Loading branch information
PedroRauizBeamable committed May 1, 2024
1 parent ab9cab8 commit 451d042
Show file tree
Hide file tree
Showing 394 changed files with 15,348 additions and 1,315 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"clientPermission":{"data":{"write_self":false}},"startingAmount":{"data":0}}
2 changes: 1 addition & 1 deletion .beamable/connection-configuration.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"host": "https://dev.api.beamable.com",
"cid": "1731504735486980",
"pid": "DE_1731504735486981"
"pid": "DE_1743192982278144"
}
14 changes: 7 additions & 7 deletions .beamable/linked-projects.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
"unityProjectsPaths": [],
"unrealProjectsPaths": [
{
"CoreProjectName": "BeamableUnreal",
"BlueprintNodesProjectName": "BeamableUnrealBlueprintNodes",
"CoreProjectName": "BeamableUnrealMicroserviceClients",
"BlueprintNodesProjectName": "BeamableUnrealMicroserviceClientsBp",
"Path": "",
"SourceFilesPath": "Source/",
"MsCoreHeaderPath": "BeamableUnreal/",
"MsCoreCppPath": "BeamableUnreal/",
"MsBlueprintNodesHeaderPath": "BeamableUnrealBlueprintNodes/Public/",
"MsBlueprintNodesCppPath": "BeamableUnrealBlueprintNodes/Private/",
"SourceFilesPath": "Plugins/BeamableUnrealMicroserviceClients/",
"MsCoreHeaderPath": "Source/BeamableUnrealMicroserviceClients/Public/",
"MsCoreCppPath": "Source/BeamableUnrealMicroserviceClients/Private/",
"MsBlueprintNodesHeaderPath": "Source/BeamableUnrealMicroserviceClientsBp/Public/",
"MsBlueprintNodesCppPath": "Source/BeamableUnrealMicroserviceClientsBp/Private/",
"BeamableBackendGenerationPassFile": "Plugins/BeamableCore/Source/BeamableCore_GenerationPass.json"
}
]
Expand Down
106 changes: 106 additions & 0 deletions .beamable/scripts/utilities/xpath.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
@if (@X)==(@Y) @end /* JScript comment
@echo off

set "file=%~f1"
set "xpath=%~2"
set "option=%~3"

if "%~2" equ "" (
goto :printHelp
)

for %%# in ("-h" "-help" "/h" "/help" "") do (
if /i "%~1" equ %%# (
goto :printHelp
)
)

if exist "%file%\" (
echo file "%~1" does not exist
exit /b 3
)
if not exist "%file%" (
echo file "%~1" does not exist
exit /b 4
)


cscript //E:JScript //nologo "%~f0" /file:"%file%" /xpath:"%xpath%" /option:"%option%"

exit /b %errorlevel%

:printHelp
echo %~nx0 prints the value (or list of values)
echo of xml attribute/node in xml by given xpath expression
echo(
echo Usage:
echo(
echo call %~nx0 "filePath" "xpathExpression"
exit /b %errorlevel%

@if (@X)==(@Y) @end JScript comment */

if (WScript.Arguments.length<2)
{
WScript.Echo("Not enough arguments");
WScript.Quit(3);
}


function escapeRegExp(str) {
return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}

function replaceAll(str, find, replace) {
return str.replace(new RegExp(escapeRegExp(find), 'g'), replace);
}

var xp=WScript.Arguments.Named.Item("xpath");
xp=replaceAll(xp,"'",'"');

var option=WScript.Arguments.Named.Item("option");

var objDoc;
var objNodes;
var loaded;

try {
objDoc = WScript.CreateObject("MSXML.DOMDocument");
loaded=objDoc.load(WScript.Arguments.Named.Item("file"));
} catch (err){
WScript.Echo("Error while parsing the xml");
WScript.Echo(err.message);
WScript.Quit(1);
}

if(!loaded){
WScript.Echo("Error while parsing the xml");
WScript.Echo("");
WScript.Echo("Error Code:"+objDoc.parseError.errorCode);
WScript.Echo("");
WScript.Echo("Line:"+objDoc.parseError.line+" Posotion:"+objDoc.parseError.filepos);
WScript.Echo("");
WScript.Echo("Reason:"+objDoc.parseError.reason);
WScript.Echo("");
WScript.Echo("URL:"+objDoc.parseError.url);
WScript.Echo("");
WScript.Echo(objDoc.parseError.srcText);
WScript.Quit(5);
}

try {
var objNodes = objDoc.selectNodes(xp);
} catch (err){
WScript.Echo("invalid xpath expression");
WScript.Echo(err.message);
WScript.Quit(2);
}

for (var i=0;i<objNodes.length;i++){
if(option.toLowerCase()=="xml"){
WScript.Echo(objNodes.item(i).xml);
} else {
WScript.Echo(objNodes.item(i).text);
}

}
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,5 @@ DerivedDataCache/*

Docs/venv
PackagedProject

Plugins/BEAMPROJ_Sandbox/*
11 changes: 11 additions & 0 deletions .run/Configure - ONLY RUN ONCE.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Configure - ONLY RUN ONCE" type="BatchConfigurationType" factoryName="Batch">
<module name="rider.module" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="PARENT_ENVS" value="true" />
<option name="SCRIPT_NAME" value="beam_init_repo.bat" />
<option name="PARAMETERS" value="" />
<method v="2" />
</configuration>
</component>
2 changes: 2 additions & 0 deletions BeamableUnreal.sln.DotSettings.user
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=5C7A7C88_002D22F7_002D356E_002DA404_002D6E743870A2D5_002Fdl_003APlugins_003A_002E_002E_003F_002E_002E_003FPlugins_002Fd_003AOnlineSubsystemBeamable_002Fd_003ASource_002Fd_003AOnlineSubsystemBeamableBp_002Ff_003AOnlineSubsystemBeamableBp_002EBuild_002Ecs/@EntryIndexedValue">ForceIncluded</s:String></wpf:ResourceDictionary>
35 changes: 35 additions & 0 deletions BeamableUnreal.uproject
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,41 @@
{
"Name": "BeamableCore",
"Enabled": true
},
{
"Name": "OnlineSubsystem",
"Enabled": false,
"Optional": true
},
{
"Name": "OnlineSubsystemUtils",
"Enabled": false,
"Optional": true
},
{
"Name": "OnlineSubsystemBeamable",
"Enabled": false,
"Optional": true
},
{
"Name": "HathoraSDK",
"Enabled": false,
"Optional": true
},
{
"Name": "DiscordSDK",
"Enabled": false,
"Optional": true
},
{
"Name": "BEAMPROJ_Sandbox",
"Enabled": false,
"Optional": true
},
{
"Name": "BEAMPROJ_HathoraDemo",
"Enabled": false,
"Optional": true
}
]
}
5 changes: 4 additions & 1 deletion Config/DefaultEngine.ini
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
[/Script/EngineSettings.GameMapsSettings]
GameDefaultMap=/Game/DefaultMap.DefaultMap
GameDefaultMap=/BEAMPROJ_HathoraDemo/FirstPerson/Maps/FirstPersonMap.FirstPersonMap
EditorStartupMap=/Game/DefaultMap.DefaultMap
ServerDefaultMap=/BEAMPROJ_HathoraDemo/FirstPerson/Maps/FirstPersonMap.FirstPersonMap
GlobalDefaultServerGameMode=None
GlobalDefaultGameMode=/Script/BeamableUnreal.BeamableUnrealGameModeBase

[/Script/HardwareTargeting.HardwareTargetingSettings]
TargetedHardwareClass=Desktop
Expand Down
4 changes: 2 additions & 2 deletions Content/DefaultMap.umap
Git LFS file not shown
45 changes: 45 additions & 0 deletions Plugins/BEAMPROJ_HathoraDemo/BEAMPROJ_HathoraDemo.uplugin
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "1.0",
"FriendlyName": "BEAMPROJ_HathoraDemo",
"Description": "",
"Category": "Other",
"CreatedBy": "",
"CreatedByURL": "",
"DocsURL": "",
"MarketplaceURL": "",
"CanContainContent": true,
"IsBetaVersion": false,
"IsExperimentalVersion": false,
"Installed": false,
"Modules": [
{
"Name": "BEAMPROJ_HathoraDemo",
"Type": "Runtime",
"LoadingPhase": "Default"
}
],
"Plugins": [
{
"Name": "BeamableCore",
"Enabled": true
},
{
"Name": "OnlineSubsystem",
"Enabled": true
},
{
"Name": "OnlineSubsystemUtils",
"Enabled": true
},
{
"Name": "OnlineSubsystemBeamable",
"Enabled": true
},
{
"Name": "HathoraSDK",
"Enabled": true
}
]
}
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown
Git LFS file not shown

0 comments on commit 451d042

Please sign in to comment.