It’s been awhile, but I’m back! Just kidding, I’m actually away.
Check out my video on this subject here: https://youtu.be/13unzByn3xs
As promised, here are all the config files mentioned in the video
VSWorkspaceSettings.json
Remember this goes in the .vs folder.
{ "ExcludedItems": [ "*.sln", "CMakeLists.txt", "CrashDB", "LyzardConfig.xml", "system_BuildShaderPak_GL4.cfg", "BuildDBAs.bat", "DetermineRCandAP.bat", "MultiplayerSample", "system_ios_ios.cfg", ".p4ignore", "BuildMultiplayerSample_Paks_PC.bat", "Editor", "MultiplayerSample_CreateGameLiftPackage.sh", "system_linux_pc.cfg", "BuildMultiplayerSample_Paks_PC_dedicated.bat", "MultiplayerSample_LinuxPacker.bat", "system_osx_osx_gl.cfg", "2018-04-13-23.log", "BuildSamplesProject_Paks_iOS.bat", "Engine", "ProjectConfiguratorConfig.xml", "system_windows_pc.cfg", "2018-04-14-00.log", "BuildSamplesProject_Paks_PC.bat", "engine.json", "ProjectTemplates", "Tools", "2018-04-14-02.log", "BuildShaderPak_DX11.bat", "engineroot.txt", "2018-04-15-17.log", "BuildShaderPak_ES3.bat", "external_manifest.txt", "P�2018-04-16-00.log", "VisualCode", "@devassets@", "BuildShaderPak_ES3.sh", "SamplesProject", "waf_branch_spec.py", "AssetProcessorPlatformConfig.ini", "BuildShaderPak_GL4.bat", "lmbr_aws.cmd", "SetupAssistantConfig.json", "waf_branch_spec.pyc", "AssetProcessorTemp", "BuildShaderPak_Metal.bat", "lmbr_pak_shaders.bat", "SetupAssistantUserPreferences.iniwscript", "Bin64", "BuildShaderPak_Metal.sh", "lmbr_pak_shaders.sh", "shadercachegen.cfg", "_WAF_", "Bin64vc120", "build_metrics_reporter.log", "lmbr_test.cmd", "Solutions", "Bin64vc120.Debug", "Cache", "lmbr_test.sh", "StarterGame", "Bin64vc140", "CloudGemSamples", "lmbr_test_blacklist.txt", "system_android_es3.cfg", "Bin64vc140.Debug", "system_appletv_ios.cfg", "BinTemp", "lmbr_waf.sh", "system_BuildShaderPak_DX11.cfg", "*.log", "Bin64*", "SDKs" ] }
CppProperties.json
This goes in the folder that you opened (in my case, dev
)
{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceRoot}/ProtoD2/Gem/Code/Source", "${workspaceRoot}/ProtoD2/Gem/Code/Include", "${workspaceRoot}/Code/CryEngine/CryCommon", "${workspaceRoot}/Code/CryEngine/CryAction", "${workspaceRoot}/Code/Framework/AzGameFramework", "${workspaceRoot}/Gems/LmbrCentral/Code/include", "${workspaceRoot}/Gems/LightningArc/Code/include", "${workspaceRoot}/Gems/PrototypingBase/Code/include", "${workspaceRoot}/Gems/PrototypingBase/Code/Source", "${workspaceRoot}/Gems/ProtoBuilding/Code/include", "${workspaceRoot}/Gems/ProtoBuilding/Code/Source", "${workspaceRoot}/Gems/Multiplayer/Code/include", "${workspaceRoot}/Gems/MultiplayerCloseAllNetworkPeers/Code/include", "${workspaceRoot}/Code/Framework/AzFramework", "${workspaceRoot}/Code/Framework/GFxFramework", "${workspaceRoot}/Code/Framework/GridMate", "${workspaceRoot}/Code/Framework/AzCore", "${workspaceRoot}/Code/Framework/AzTest", "${workspaceRoot}/Code/Framework/AzToolsFramework", "${workspaceRoot}/Code/SDKs/GoogleMock/include", "${workspaceRoot}/Gems/LyShine/Code/Include", "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/INCLUDE", "C:/Program Files (x86)/Windows Kits/10/include/10.0.10586.0/ucrt", "C:/Program Files (x86)/Windows Kits/10/include/10.0.10586.0/um", "C:/Program Files (x86)/Windows Kits/10/include/10.0.10586.0/shared", "${workspaceRoot}/Code/CryEngine" ], "defines": [ "_WIN32", "_WIN64", "NOMINMAX", "CODE_BASE_FOLDER=\"d:/w/UR/dev/Code/\"", "_DEBUG", "BINFOLDER_NAME=\"Bin64vc140\"", "PLATFORM_SUPPORTS_AWS_NATIVE_SDK", "LY_BUILD=532402", "_MT", "_DLL", "SCRIPTCANVAS_ERRORS_ENABLED" ], "intelliSenseMode": "windows-msvc-x64", "cStandard": "c11", "cppStandard": "c++17" } ], "version": 3 }
tasks.vs.json
Keep in mind that most of this you probably don’t need. Take what is useful and just delete the rest. Especially remember to delete the dedicated server references if you don’t have multiplayer yet.
Remember you can run anything from here, including the game, but unless it’s in the launch.vs.json file, it will not attach the debugger.
Remember this goes in the .vs folder
{ "version": "0.2.1", "tasks": [ { "appliesTo": "*", "commands": [ { "command": "Bin64vc140/Editor.exe", "args": [], "workingDirectory": "${workspaceRoot}" } ], "launchOption": "None", "contextType": "custom", "taskName": "Run Editor Profile", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_profile", "-p", "game", "&&", "lmbr_waf", "build_win_x64_vs2015_profile_dedicated", "-p", "game" ], "workingDirectory": "${workspaceRoot}" } ], "contextType": "build", "taskName": "Build Profile Client and Server", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_profile", "-p", "all", "&&", "lmbr_waf", "build_win_x64_vs2015_profile_dedicated", "-p", "all" ], "workingDirectory": "${workspaceRoot}" } ], "contextType": "build", "taskName": "Build Profile Everything", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_profile", "-p", "all", "&&", "lmbr_waf", "build_win_x64_vs2015_profile_dedicated", "-p", "all" ], "workingDirectory": "${workspaceRoot}" } ], "contextType": "rebuild", "taskName": "Build All Profile Client and Server", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_debug", "-p", "game", "&&", "lmbr_waf", "build_win_x64_vs2015_debug_dedicated", "-p", "game" ], "workingDirectory": "${workspaceRoot}" } ], "taskName": "Build Debug Client and Dedicated", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_debug", "-p", "game" ], "workingDirectory": "${workspaceRoot}" } ], "taskName": "Build Debug Game", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_debug", "-p", "all" ], "workingDirectory": "${workspaceRoot}" } ], "taskName": "Build Debug All", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "build_win_x64_vs2015_profile", "-p", "all" ], "workingDirectory": "${workspaceRoot}" } ], "taskName": "Build Profile All", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": "lmbr_waf", "args": [ "configure" ], "workingDirectory": "${workspaceRoot}" } ], "taskName": "Configure", "type": "launch" }, { "taskName": "task-gems", "appliesTo": "Principia/gems.json", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": ".\\Bin64vc140.Dedicated\\ProtoD2Launcher_Server.exe", "args": [ "+map", "basebuilding", "+mphost" ], "workingDirectory": "${workspaceRoot}" } ], "contextType": "custom", "taskName": "Run Dedicated Server Profile", "type": "launch" }, { "appliesTo": "*", "commands": [ { "command": ".\\Bin64vc140\\ProtoD2Launcher.exe", "args": [ "+mpjoin" ], "workingDirectory": "${workspaceRoot}" } ], "contextType": "custom", "taskName": "Run Client Profile", "type": "launch" } ] }
launch.vs.json
These are the ones you want to run and attach the debugger on.
Again, .vs folder for this one.
{ "version": "0.2.1", "defaults": {}, "configurations": [ { "type": "default", "project": "Bin64vc140\\ProtoD2Launcher.exe", "args": [ "+mpjoin" ], "name": "_Principia Launcher Profile" }, { "project": "Bin64vc140.Dedicated\\ProtoD2Launcher_Server.exe", "args": [ "+map", "basebuilding", "+mphost" ], "type": "default", "name": "_Principia Server" }, { "type": "default", "project": "Bin64vc140.Debug\\ProtoD2Launcher.exe", "name": "_Principia Launcher Debug", "args": [] }, { "type": "default", "project": "Bin64vc140\\Editor.exe", "name": "_Editor" } ] }