Skip to content
Kermalis edited this page Aug 28, 2020 · 24 revisions

Setup

.NET

The game engine itself uses .NET Framework 4.8 or .NET Core 3.1 (it multi-targets). You will need the developer kits for whichever one(s) you will use.

Sprites

Animated Pokémon sprites - The game by default shares the animated .gif files used in PokemonBattleEngine. You can download the PokemonBattleEngine repository and place it in the same directory as the PokemonGameEngine repository. The file path would look like this:

Folder
  - PokemonBattleEngine
  - PokemonGameEngine

Alternatively, you can download just the PKMN sprites folder from PokemonBattleEngine's repository and update the PokemonGameEngine.csproj file. The line you're looking for is this:

<EmbeddedResource Include="..\..\PokemonBattleEngine\Shared Assets\PKMN\**\*.*">
  <Link>Assets\Pkmn\%(RecursiveDir)%(FileName)%(Extension)</Link>
</EmbeddedResource>

Update this to point to the animated sprites folder you downloaded. The sprites use a specific naming scheme, so do not rename them unless you are going to edit the sprite loading functions.

Assets

The assets are built using NUKE build. You can set this up in two ways:

Building assets automatically - You will need an extension in your IDE to support NUKE build, (for Visual Studio, it's called NUKE Support), and will need to attach it to the build process (for Visual Studio, you use the Task Runner Explorer (Ctrl+Alt+Bkspce)). In Visual Studio, you will need to attach it to the Task Runner Explorer each time Visual Studio starts. I'm not sure if it's a bug or not, but that's the way it is. You will need to attach (by right clicking) "Clean" to "Clean" and "Compile" to "Before Build".

If for some reason the build is failing, you can debug it (like a normal C# project) by clicking the gear icon on the left of the Task Runner Explorer show in my screenshot.

Manually - If you do not want to do that or cannot do that, you will need to run the _build project every time you want to build assets. It's a normal C# project, so you would run it like you would any other program.

Clone this wiki locally