StendhalDesign: Difference between revisions

Content deleted Content added
Line 260:
The key on making Stendhal moving is to add actions.
As we have seen each entity has a list of actions that can do. Let's see them and study they interact.
===Player===
 
Our main entity is Player, it is gamer's avatar in stendhal world and as such, it is able to do the next set of actions:
 
* Move<br>Move action can be understand as two actions:
====Move====
** Move to left,right,up or down while key is down<br>This action allows controlling gamer's avatar using our keyboard that is the arcade/adventure game style like Nintendo Zelda.
* Move<br>Move action can be understand as two actions:
** Move to left,right,up or down while key is down<br>This action allows controlling gamer's avatar using our keyboard that is the arcade/adventure game style like Nintendo Zelda.
 
This action should have the next set of attributes:
*** '''dx''' horizontal speed of the avatar
*** '''dy''' vertical speed of the avatar
 
We can have as many as we want of this action. The last action executed will be the only one that alters really dx and dy.
 
====Move to a position====
** Move to a position<br>This action allows controlling game's avatar using a mouse, so we can click ( or double click ) to move to the position where the mouse clicked. This mode is great for a more relaxed adventure game style like Bioware Baldur's Gate.
 
This action should have the next set of attributes:
*** '''x''' desired x coordinate of the avatar
*** '''y''' desired y coordinate of the avatar
 
We can only have ONE action of this type and only the latest one will be considered valid. This action is cancelled by any other action like Move, Attack, Face, ...
Line 282 ⟶ 285:
If avatar collides with something while moving, dx and dy will become 0.
 
====Face====
* Face<br>This action is useful as a extra for the social side of the game; when you are talking it is often good to ''face'' the person you are talking too. So face action allows our character to look at the direction we tell it: left, right, up or down.
 
====Chat====
* Chat<br>This action is the base of any social game like a MORPG.
 
This action should have the next set of attributes:
** '''text''' text that the player is going to say
 
Due to Arianne framework it is not possible to create a yell or whisper action, when you talk, you talk for everybody in the area, that is why area design is *VERY* important to achieve a good gameplay.
 
====Attack====
* Attack<br>This action is the core of the gameplay for lots of gamers to consider the game fun. All the combat is ruled by the RP game system explained in the RP section of this page.
 
There are some limitations for combat right now:
Line 303 ⟶ 309:
 
This action should have the next set of attributes:
** '''target''' the object.ID of the player that we are attacking.
 
This action require that the target of the action is ''near'' our avatar. Near means that target's avatar have to be colliding with our avatar.