generated from Sceat/app-starter
-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fights board & base effects #130
Comments
Initial thoughts for the rendering:
For the rest:
|
Sceat
changed the title
Fights map & base effects
Fights board & base effects (rendering)
Jul 22, 2024
Proposition d'APIs: Quand la dapp veut créer un plateau de taille maximale (maxRadius) autour de la position de joueur (coords):
ensuite la dapp demande à l'engine:
ensuite lors des itérations suivantes:
Quand la dapp veut supprimer un plateau, elle fait:
ensuite lors des itérations suivantes:
Et pour le format de données stockant le plateau: enum EPlateauSquareType {
FLAT = 0,
HOLE = 1,
OBSTACLE = 2,
}
type PlateauSquare = {
readonly type: EPlateauSquareType;
readonly materialId: number;
};
type ColumnId = { readonly x: number; readonly z: number };
type Plateau = {
readonly id: number;
readonly size: { readonly x: number; readonly z: number };
readonly squares: ReadonlyArray<PlateauSquare>;
readonly origin: THREE.Vector3Like;
}; |
Sceat
changed the title
Fights board & base effects (rendering)
Fights board & base effects
Jul 29, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Here is an issue about what is needed to complete the basic fight system on the client side.
Fight board
Currently when a player click on a group of mob a packet is sent to the server, if everything is valid the server create and send back a fight, but it stops here so we need a way to show the fight board
top_left
andbottom_right
positions {x,y,z} to create a fight board, like in dofus by "cutting" or "only rendering" the board as voxels.Here is a map from Dofus unity:
And here is the same map when someone starts a fight on it, its basically turned into a board
Here is a simplified version of a board, as we can see there are 3 type of blocks,
Placement phase
Before the fights starts, players will be able to choose their positions, the Fight packet from the server will contain those as an array of position which will need to be rendered with blue and red colors, (blue for team 1, red for team 2)
Fight started phase
Example of a fight in dofus to better understand: https://youtu.be/r3f7116JHow?si=mQDao8albr7Jg8ay
Example of a fight in waven to better understand: https://youtu.be/I8QX7GI5UHw?si=i3h74KmcqQDmMSxA&t=423
Once the fight is started (when everyone is ready or when 60s passed), those red and blue positions disappear and we will see a blue square or red hexagon under each entities like this. Note that both players and creatures can be in both teams, the represention of red team is always a red hexagon and blue team a blue square
mp
property which represent how many blocks he can walk, this should be impacted by non-walkable block on the map, like the screen belowWhen a spell is selected, we will render the cells where it can be launched with a blue zone.
Here is a tool to check this line of sight system https://www.dofusroom.com/insightroom
The text was updated successfully, but these errors were encountered: