About Themes.

You are able to create custom themes in the client software. The client will load the selected theme at start-up.

The YAML parser will read all available themes from the themes folder. The default theme is active when no theme is at the theme folder, when no themes folder exist or then the default theme is saved from the configuration scene.

At the configuration scene, the selected theme is set to active when the save button is pressed. The default theme will not be saved to disk when the save button is clicked. The default theme is loaded from the client code and therefore cannot be changed by editing a theme file. When the client tries to load a theme that no longer exists on disk then the client will default to the default theme.

When the default theme is selected, you will only be able to save the profile preferences.

You can modify a theme from within its file using a text editor. To remove a theme, simply delete the theme from the themes folder.

Creating a theme is easy to do. Create an empty file with an extension of .yaml. If you want a theme named "coco" then create a file called coco.yaml and then place that file in the themes folder.

Load the client. Go to the configuration menu. At the top right corner of that scene. Click the button until your theme is displayed. The client will then change in appearance and preferences of that theme. Once displayed, you can change all settings. The theme will be updated with new data when you click the save button.

Top

Customizing Themes.

_profile_username_p1:
This is the name of player 1.

_profile_username_p2:
This is the name of player 2.

_gameboard_units_odd_shade_number:
There are 64 physical units, squares or spaces, on the game board. The first unit located at the top-right corner is an odd unit because it is number one. To the right of that unit is an even unit because its the next unit to be read like words in a page of a book.

This refers to the darkness of a unit not the color of a unit. every second shaded image, such as, image shade 2, 4, 6 and 8 is a texture. See references.

_gameboard_units_even_shade_number:
Shade applied to even game board units.

_gameboard_units_odd_image_number:
This is the color of odd gameboard units. For example, selecting color three from references below will change all gameboard colors to the color red.

_gameboard_units_even_image_number:
This is the color of even gameboard units.

username suggestions

_username_suggestions_enabled:
This feature is selectable username suggestions for the user to pick from when typing in a username at the profile section of the configuration scene. When typing in a username, do you want to display the username suggestion feature for the selected theme? Set this option to either true or false. Example, _username_suggestions_enabled: true

_gameboard_border_enabled:
An image that borders the gameboard. Should it be displayed?

_gameboard_border_number:
Image number to use. See references.

gameboard coordinates

_gameboard_coordinates_enabled:
Display the letters and numbers that parameter the gameboard? In this example the notation C4 displays the red "x".

_gameboard_even_units_show_enabled:
All even gameboard units will be the same color as the client background when this feature is not enabled.

_gradient_background_enabled:
the a color gradient background at every scene?

_gradient_background_image_number:
The color to use for this gradient background?

_texture_background_enabled:
Refers to surface characteristics and appearance of an object. Enable the display of background texture at every scene?

_texture_background_image_number:
Choose the image texture.

_client_background_enabled:
Display a mono colored background at every scene?

_client_background_image_number
Select an image color to use.

_client_background_brightness:
The brightness of a color. Float value between 0 and 1. 0 is black. 1 is full bright. Note that a float is a number that can store a decimal point.

_client_background_saturation:
The higher the saturation of a color, the more vivid and intense it is. The lower a color's saturation, the closer it is to pure gray on the grayscale. 0 is pure gray. 1 is vibrant.

_background_alpha_enabled:
Apply a 80% transparency to the gradient and texture backgrounds so that the client background color can also be seen? Float value between 0 and 1. A value of 0.20 is 80% transparency.

lobby table

_table_body_background_image_number:
In the image above, the highlighted button is in front of the solid brown colored table row. This is the color of the table rows seen at lobby, waiting room and at the leaderboards scene.

_table_body_background_brightness:
The brightness of a color. Float value between 0 and 1. 0 is black. 1 is full bright. Note that a float is a number that can store a decimal point.

_table_body_background_saturation
The higher the saturation of a color, the more vivid and intense it is. The lower a color's saturation, the closer it is to pure gray on the grayscale. 0 is pure gray. 1 is vibrant.

_capturing_units:
These are the gameboard units that the selected piece can move to. Should a image be used to highlight those units?

_capturing_units_number:
Select an image color to use.

_chess_show_last_piece_moved:
After the gameboard piece moves, use an image to highlight the unit at the location where the piece had just moved from and highlight the unit where the piece had moved to. Should those units be highlighted? This option takes the highlighted color from the _capturing_units_number option.

_chess_future_capturing_units_enabled:
highlighted units showing where the attacking pieces can put the defending king in jeopardy at the next move. Enable this option for the beginner chess level?

_chess_future_capturing_units_number:
Select an image color to use.

_chess_path_to_king_enabled:
This refers to a check against the king and that check is shown as a highlighted straight line of units starting from the attacker's piece and ending at the defenders king. Enable this option?

_chess_path_to_king_number:
Select an image color to use.

_chess_set_for_player1
This is the chess set that player 1 will use while playing a chess game. See references.

_chess_set_for_player2
This is the chess set that player 2 will use while playing a chess game. See references.

_chess_set_for_player1_color_number:
Select an image color to use.

_chess_set_for_player1_color_number:
Select an image color to use.

_chess_opening_moves_enabled:
Display chess openings moves from the encyclopaedia of Chess Openings (ECO) which is a reference work describing the state of opening theory in chess? So, if the first move in chess was E2 to E4, an ECO text would display at top of the gameboard.

buttons

_button_color_number:
There are 4 buttons in the above image. This is the color of a button label seen as the color green.

_button_border_color_number:
This is the border of the button. The button in the image shows a red border.

_button_text_color_number:
This is the text color on the button.

_leaderboard_enabled:
Show leaderboards displaying rank among players in all competitive events?

house_feature_enabled:
Enable the house feature?

_go_back_to_title_after_save:
Go back to the title screen after the save button is pressed from the configuration scene.

notation panel

_notation_panel_40_percent_alpha_enabled:
Display some color of the game scene background at the notation panel?

_notation_panel_same_background_color_enabled:
If true then the notation panel will look exactly like the background of the game room scene which may include any gradient or texture background.

_notation_panel_background_color_enabled:
If false then the notation panel will look black in appearance. No color will be shown.

_notation_panel_background_color_number:
If false and no transparency is selected then the notation panel will be black in appearance. If true then user will see an option to set a color to the notation panel.

_notation_panel_text_color_number:
Set the text color at the notation panel. Select an image color to use.

_client_topic_title_text_color_number:
At the configuration scene, games section, there is the word titled "Chess" and all text and button for that subsection are displayed underneath it. This will change the word "chess" and all other title topics at all client scenes.

_client_text_color_number:
Change the color of all normal sentences and regular paragraphs, excluding text on buttons, at all scenes.

_title_bar_text_color_number:
The words, "K Board Games" seen after the client first loads is the text at the title bar. Change title bar text color?

_profile_avatar_number1-4:
Select an avatar image to use for player 1-4. See references.

_send_automatic_start_game_request:
After the host clicks the "Game Room" button from the waiting room, all players will be sent to the game room and if this options is set to true then a start game request will be automatically sent to all other player in that room.

_accept_automatic_start_game_request:
Automatically accept a start game request only after entering the game room?

_to_lobby_from_waiting_room_confirmation:
Do you need confirmation when returning to lobby from waiting room?

_to_lobby_from_game_room_confirmation:
Do you need confirmation when returning to lobby from game room?

_to_game_room_from_waiting_room_confirmation:
Does host of waiting room need confirmation to enter game room?

_to_title_from_game_room_confirmation:
Do you need confirmation to return to title scene from game room. Note that if you are playing a game, accidently pressing the title button will register a loss to your game statistics.

_chat_when_at_lobby_enabled
The chat scene will be displayed at lobby if this option is enabled.

_timer_enabled:
Have a time elapsed game session? Warning, not enabling this option will give a player the ability to win a game. The other player could quit game because of being too tired of waiting for a piece to move.

_chat_when_at_room_enabled:
The chat scene will be displayed at waiting room and at game room if this option is enabled.

_move_total_enabled:
Show the total move text at the game room side panel?

_notation_panel_enabled:
If true the notation panel will be displayed at the game room.

_start_game_offline_confirmation:
Do you need confirmation to start a game when offline?

_music_enabled:
Play music when this option is enabled?

_sound_enabled:
Enable sound for the client?

_time_remaining_for_game:
Time in minutes allowed for each game. There are five values to change and in the order of checkers, chess, reversi, snakes and ladders and wheel estate.

_title_bar_background_number:
Select an image color to use.

_menu_bar_background_number:
Menu bar is a table row that holds the buttons displayed at the bottom of the scene. Select an image color to use.

_title_bar_background_brightness:
The brightness of a color. Float value between 0 and 1. 0 is black. 1 is full bright. Note that a float is a number that can store a decimal point.

_menu_bar_background_brightness:
The brightness of a color. Float value between 0 and 1. 0 is black. 1 is full bright. Note that a float is a number that can store a decimal point.

_world_flags_number:
This is the flag number to use.

_pager_enabled:
Should host of the waiting room be notified by sound in intervals each time a player enters that room? Pager will stop by any keypress on the keyboard or a left mouse click.


References.

line 1 in the themes file... _gameboard_units_odd_shade_number: 6, 3

The first number always refers to a checkers game while the second number is for chess. The 6 refers to an image number to use for checkers.

Here are the images used to customize the themes.

These are image shades for gameboard even units. The number beside the image refers to the image to use.
1shades
2shades
3shades
4shades
5shades
6shades
7shades
8shades
9shades


Shade of images for odd units.
1shades
2shades
3shades
4shades
5shades
6shades
7shades
8shades
9shades


Gameboard borders.
1gameboard borders
2gameboard borders
3gameboard borders
4gameboard borders
5gameboard borders


Chess sets.
1chess sets

2chess sets

3chess sets

4chess sets

5chess sets

6chess sets

7chess sets

8chess sets


Object colors.
1element colors
2element colors
3element colors
4element colors
5element colors
6element colors
7element colors
8element colors
9element colors
10element colors
11element colors
12element colors
13element colors


Player avatars.
1avatars
2avatars
3avatars
4avatars
5avatars
6avatars
7avatars
8avatars
9avatars
10avatars
11avatars
12avatars
13avatars
14avatars
15avatars
16avatars
17avatars
18avatars
19avatars
20avatars
21avatars
22avatars
23avatars
24avatars
25avatars
26avatars
27avatars
28avatars
29avatars
30avatars
31avatars
32avatars
33avatars
34avatars
35avatars
36avatars
37avatars
38avatars
39avatars
40avatars
41avatars
42avatars
43avatars
44avatars
45avatars
46avatars
47avatars
48avatars
49avatars
50avatars
51avatars
52avatars
53avatars
54avatars
55avatars
56avatars
57avatars
58avatars
59avatars
60avatars
61avatars
62avatars
63avatars
64avatars
65avatars
66avatars
67avatars
68avatars
69avatars
70avatars
71avatars
72avatars
73avatars
74avatars
75avatars
76avatars
77avatars
78avatars
79avatars
80avatars
81avatars
82avatars
83avatars
84avatars
85avatars
86avatars
87avatars
88avatars
89avatars
90avatars
91avatars
92avatars
93avatars
94avatars
95avatars
96avatars
97avatars
98avatars
99avatars
100avatars
101avatars
102avatars
103avatars
104avatars
105avatars
106avatars
107avatars
108avatars
109avatars
110avatars
111avatars
112avatars
113avatars
114avatars
115avatars
116avatars
117avatars
118avatars
119avatars
120avatars
121avatars
122avatars
123avatars
124avatars
125avatars
126avatars
127avatars
128avatars
129avatars
130avatars
131avatars
132avatars
133avatars
134avatars
135avatars
136avatars
137avatars
138avatars
139avatars
140avatars
141avatars
142avatars
143avatars
144avatars
145avatars
146avatars
147avatars
148avatars
149avatars
150avatars
151avatars
152avatars
153avatars
154avatars
155avatars
156avatars
157avatars
158avatars
159avatars
160avatars
161avatars
162avatars
163avatars
164avatars
165avatars
166avatars
167avatars
168avatars
169avatars
170avatars
171avatars
172avatars
173avatars
174avatars
175avatars
176avatars
177avatars
178avatars
179avatars
180avatars
181avatars
182avatars
183avatars
184avatars
185avatars
186avatars
187avatars
188avatars
189avatars
190avatars
191avatars
192avatars
193avatars
194avatars
195avatars
196avatars
197avatars
198avatars
199avatars
200avatars
201avatars
202avatars
203avatars
204avatars
205avatars
206avatars
207avatars
208avatars
209avatars
210avatars
211avatars
212avatars
213avatars
214avatars
215avatars
216avatars
217avatars
218avatars
219avatars
220avatars
221avatars
222avatars
223avatars
224avatars
225avatars
226avatars
227avatars
228avatars
229avatars
230avatars
231avatars
232avatars
233avatars
234avatars
235avatars
236avatars
237avatars
238avatars
239avatars
240avatars
241avatars
242avatars
243avatars
244avatars
245avatars
246avatars
247avatars
248avatars
249avatars
250avatars
251avatars
252avatars
253avatars
254avatars
255avatars
256avatars
257avatars
258avatars
259avatars
260avatars
261avatars
262avatars
263avatars
264avatars
265avatars
266avatars
267avatars
268avatars
269avatars
270avatars
271avatars
272avatars
273avatars
274avatars
275avatars
276avatars
277avatars
278avatars
279avatars
280avatars
281avatars
282avatars
283avatars
284avatars
285avatars
286avatars
287avatars
288avatars
289avatars
290avatars
291avatars
292avatars
293avatars
294avatars
295avatars
296avatars
297avatars
298avatars
299avatars
300avatars