comparison doc/specs/battle.md @ 166:0f1f4919792e

Docs: add battle.md specifications
author David Demelier <markand@malikania.fr>
date Tue, 03 Jul 2018 21:45:44 +0200
parents
children
comparison
equal deleted inserted replaced
165:3e3040d085b5 166:0f1f4919792e
1 # Battle
2
3 This document describes the battle system in Malikania's Kingdom.
4
5 # Synopsis
6
7 Malikania is a 2D MMORPG where battles occur in a different map system. When a
8 battle starts, a grid is shown where players and ennemies are placed on cells.
9
10 Battles usually end once all ennemies or all players are defeated. Once finished
11 players win random amount of money and optionally ennemy content.
12
13 # Terms
14
15 - battle: the battle game concept.
16 - cell: a cell position in the grid.
17 - grid: the battle grid owning players, ennemies and decorative objects.
18 - spell: a spell that can be cast on a specific cell.
19 - player: a human player.
20 - ennemy: an IA character.
21 - character: a player or ennemy.
22
23 # Battle creation
24
25 When the player walks on a map, battle randomly starts after several footsteps,
26 the number if randomly created and may be different in maps. This can also
27 disabled as we may need to create maps without battle (e.g. villages).
28
29 If the player is in a group, the required footsteps is defined among the number
30 of players in a group (see below).
31
32 The scenario is obviously allowed to spawn battles on different events, such as
33 after a discussion with an ennemy.
34
35 # Grid system
36
37 The battle contains a 20x20 size grid where characters move on adjacent cells
38 when they are ready to play.
39
40 The grid may contain up to 16 characters at max (8 players, 8 ennemies). It is
41 possible to increase this limits in case of dynamic character spawning spells.
42
43 # Turn time
44
45 Each character must wait to be ready to perform a set of actions which can be to
46 move into the grid or casting a spell. This time is determined using the agility
47 level from the character.
48
49 The default time is set to 10 seconds, more agility reduces the turn time.
50
51 TODO: determine math function.
52
53 # Spells
54
55 Each character have their own set of spells, those spells objects are recreated
56 at each battle to store local variables needed to perform the spell correctly.
57
58 # Groups
59
60 When a group is walking on a map and all players are enough close to each
61 others, the battle will starts will all players in that group. Anybody else on
62 the map that is not in the group won't be included in that battle.
63
64 When a player does not follow the group quickly enough, a warning will be
65 emitted on the client to indicate that it will not be included in the battle if
66 it does not come quickly. It is not removed from the group though.