C:\dev\git_projects\TiltedEvolution
is fine but C:\dev\git projects\TiltedEvolution
will NOT work.git clone --recursive https://github.com/[YourGithubName]/TiltedEvolution.git
. Replace [YourGithubName] with your Github name.TiltedEvolution
inside your project directory.xmake project -k vsxmake
to generate TiltedEvolution.sln
, the Visual Studio solution which we'll be using. This can now be found in the vsxmake20**
folder. You can choose the build mode either in Visual Studio directly, or through the command line, xmake config -m releasedbg
.xmake -y
. If all goes well, everything should now be compiled. Should you encounter any errors, feel free to ask for help in the Skyrim Together Discord #coding channel.xmake install -o distrib
, which will create a directory called distrib
in the root path that contains all of the files needed to run. Copy the files in distrib/bin
over to build/windows/x64/releasedbg
. This step should only be performed once, when building the project for the first time.FalloutImmversiveLauncher
or SkyrimImmversiveLauncher
as the startup project and ensure you are in the dev branch. Hit Local Windows Debugger
to start debugging. From build/windows/x64/releasedbg
, you can launch the server executable and a second client if you wish.Code/skyrim_ui
and execute pnpm install
. This will install the required packages.pnpm deploy:develop
to build the development version. Alternatively, execute pnpm deploy:production
to build the production version. Copy the folder Code/skyrim_ui/dist/UI
over to build/windows/x64/releasedbg
. Although not necessary, we recommend creating a symbolic link to the folder during development instead of duplicating to avoid having to copy over the folder after each build.TiltedEvolution
directory, first check if the master branch is fully up to date:feature-
prefix so that it's clear that your branch is a temporary, in-progress development branch. Creating your branch can be done using one of two methods:git checkout -b feature-somenamehere
to have a branch created for you.Branch -> New branch...
. Give this an appropriate name (don't forget the prefix) and ensure that the branch is based on the master
branch.TiltedEvolution\Code
), the two primary folders of interest are client
and server
.Games
, Services
, and Systems
.Games
contains all of the code that is Skyrim and Fallout 4 related, it mostly contains class structures and hooks to different parts of the engineServices
contains the different services that handle the actual sync, display, and gameplaySystems
contains specific tasks like interpolation and consuming animationsclient\Services
as it demonstrates how to get a service to listen to update events and how to spawn a copy of yourself. It also displays a bunch of gameplay elements for which we have written debuggers.