Pokémon SDK Wiki

Configure your Project

Project configuration

PSDK Configuration rely on a project configuration file called Data/project_identity.yml. In this file you can specify the maximum level of Pokémon in your game, if you want to used the mouse or not and a lot of other things! This file is in YAML Format so it's easy to change.

The file Data/project_identity.yml is defined by the script PSDK_CONFIG. This script is the very first PSDK Script to be loaded an propagate your configuration to all other script through the PSDK_CONFIG constant. When there's field you don't understand in the Data/project_identity.yml file, please refer to the documentation of the PSDK_CONFIG script.

List of field you can configure

Here's a non-exaustive list of fields you can configure:

Configure Tilemap

If you use a different screen resolution, you'll probably need to reconfigure the tilemap and the viewports. Here's all the field you can set in tilemap configuration:

Configure Options

If you want to add specific options this is where you have to set the thing up.

Option configuration consist of two big array :

Configure Window, text etc...

During the PSDK development, we noticied something really nasty. Some user uses black message Window, some uses white message Window. The problem with those window is that the colors doesn't render the same way so in order to make the UI color consistant (ie you don't edit graphics/windowskins/_colors.png for the global text color) we added a layout configuration allowing Yuki::Message and Yuki::ChoiceWindow to be configured and swap the color depending on the given code.

General Layout configuration

Under layout we have a key called general that specify the general information about UI layout such as Fonts & size.

Here's the values you can set:

Message Layout configuration

Under layout we have a key called messages. It's a Hash of Message configuration. The key :any is the fallback in case of the String key corresponding to the classname of the current scene is not found.

Here's all the field you can find in message configuration:

Choice Layout configuration

Under the layout we have a key called choices. It's a bit like messages but with less keys since it's about choice window.

Here's all the field you can find in choice configuration:

The viewport configuration

If you remove the Viewport module from the Config script. PSDK will use Data/Viewport.json as source for Viewport configuration.

The file looks like this : { "main": { "x": 0, "y": 0, "width": 320, "height": 240 } }

It's basically a Hash of Hash containing all the viewport configuration. When you write :

  @viewport = Viewport.create(:main, z)

The x, y, width & height parameters are taken from this file. This way if you want some custom viewport for UI that doesn't take the whole screen, you can use this configurations.

Using Viewport.create(type, z) is the only recommanded way to create a viewport. This allow the viewport to be moved when you want to add compatibility to fullscreen with your game thanks to Viewport::GLOBAL_OFFSET_X & Viewport::GLOBAL_OFFSET_Y. Note that the PSDK screen is 4:3 by default and most computer screens are 16:9 or 16:10.

The file graphics/windowskins/_colors.png

This file tells PSDK which color to use when you want to display a text with a specific color_id. This file is structured the following way : x coordinate correspond to color_id.
When y = 0, it's the outline color (when showing outlined text).
When y = 1, it's the color of the text itself (fill_color). When y = 2, it's the color of the shadow.

You can disbale the shadow globally by setting the constant Text::Util::DEFAULT_OUTLINE_SIZE to 0 instead of nil.