C:\dev\git_projects\TiltedEvolutionis fine but
C:\dev\git projects\TiltedEvolutionwill NOT work.
git clone --recursive https://github.com/[YourGithubName]/TiltedEvolution.git. Replace [YourGithubName] with your Github name.
TiltedEvolutioninside your project directory.
xmake project -k vsxmaketo 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
distribin the root path that contains all of the files needed to run. Copy the files in
build/windows/x64/releasedbg. This step should only be performed once, when building the project for the first time.
SkyrimImmversiveLauncheras the startup project and ensure you are in the dev branch. Hit
Local Windows Debuggerto start debugging. From
build/windows/x64/releasedbg, you can launch the server executable and a second client if you wish.
pnpm install. This will install the required packages.
pnpm deploy:developto build the development version. Alternatively, execute
pnpm deploy:productionto build the production version. Copy the folder
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.
TiltedEvolutiondirectory, 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-somenamehereto 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
TiltedEvolution\Code), the two primary folders of interest are
Gamescontains all of the code that is Skyrim and Fallout 4 related, it mostly contains class structures and hooks to different parts of the engine
Servicescontains the different services that handle the actual sync, display, and gameplay
Systemscontains specific tasks like interpolation and consuming animations
client\Servicesas 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.