Skip to content

Instantly share code, notes, and snippets.

@alexsavin
Last active November 25, 2018 18:50
Show Gist options
  • Save alexsavin/9d38be4da758849a9f3409f538bd863e to your computer and use it in GitHub Desktop.
Save alexsavin/9d38be4da758849a9f3409f538bd863e to your computer and use it in GitHub Desktop.
Game "Shareholder" UI Specification
This document describes how user interface of the game should be implemented.
Document contains wireframes, mock data for pages.
Notes:
- All user names must be clickable and link must lead to user's profile
events mock data
Properties description
eventType - type of event, required
initiatedBy - name of user whos action produced event, optional
payload - extra data for event, optional
payload.invitationId - invitation identifier
payload.gameId - game identifier
payload.formula - game formula name
payload.palyers - array of player names who plays game or receives invitation. If game is started player names are specified in order of turns
payload.part - part of game (A, B etc)
payload.turn - number of turn (array of two digits)
payload.winner - name of palyer who won game
Event types:
INVITATION - Incoming invitation. Player invites you in game
INVITATION_ACCEPTED - Player accepts your inviltation
INVITATION_REJECTED - Player rejects your invitation
INVITATION_EXPIRED - Player didn't answer on your invitation in 7 days
GAME_STARTED - Game started. Initiates when all users invited in game accepts invitation
MOVE_DONE - Player maked move
GAME_FINISHED - Game was finished
GAME_TERMINATED - Game was terminated because player didn't make move in 72 hours
[
{
"eventType": "INVITATION",
"initiatedBy": "Зырянов",
"payload": {
"invitationId": "8E0502EE-C803-497C-A979-BE148F0C7709",
"formula": "4 x 6",
"players": [
"Зырянов",
"sergeychernyshev"
]
}
},
{
"eventType": "INVITATION",
"initiatedBy": "Alkonaft",
"payload": {
"invitationId": "8E0502EE-C803-497C-A979-BE148F0C7701",
"formula": "Custom",
"players": [
"Alkonaft",
"Andrew",
"sergeychernyshev"
]
}
},
{
"eventType": "INVITATION_ACCEPTED",
"initiatedBy": "Governor",
"payload": {
"invitationId": "8E0502EE-C803-497C-A979-BE148F0C7702",
"formula": "Custom",
"players": [
"antej",
"Governor",
"sergeychernyshev"
]
}
},
{
"eventType": "INVITATION_REJECTED",
"initiatedBy": "Зырянов",
"payload": {
"invitationId": "8E0502EE-C803-497C-A979-BE148F0C7703",
"formula": "3 x 5",
"players": [
"Зырянов",
"sergeychernyshev"
]
}
},
{
"eventType": "INVITATION_EXPIRED",
"payload": {
"invitationId": "8E0502EE-C803-497C-A979-BE148F0C7704",
"formula": "3 x 5",
"players": [
"Зырянов",
"sergeychernyshev"
]
}
}
{
"eventType": "GAME_STARTED",
"payload": {
"gameId": "B142E578-DCCD-42E2-BF4F-D5BA05B6567D",
"formula": "4 x 6",
"part": "A",
"turn": [1, 1],
"players": [
"Зырянов",
"sergeychernyshev"
]
}
},
{
"eventType": "MOVE_DONE",
"initiatedBy": "Governor",
"payload": {
"gameId": "93C291F1-9D74-4367-940B-1B42DD17AB84",
"formula": "3 x 5",
"part": "B",
"turn": [4, 1],
"players": [
"sergeychernyshev",
"Governor"
]
}
},
{
"eventType": "GAME_FINISHED",
"payload": {
"gameId": "925E681D-1335-4976-88F8-32D55B3FBD22",
"formula": "4 x 6",
"winner": "sergeychernyshev",
"players": [
"sergeychernyshev",
"Governor"
]
}
},
{
"eventType": "GAME_TERMINATED",
"payload": {
"gameId": "B53EFB24-9ADD-4F2C-859C-6D93C4C0B48F",
"formula": "4 x 6",
"part": "A",
"turn": [7, 1],
"players": [
"sergeychernyshev",
"Governor"
]
}
}
]
Home page notes:
- Button "Select game variant" leads to page "New Game"
- If user clicks on button "Start New Game" 4x6 variant automatically selected.
- If user clicks on "Reject" button on invitation event confirmation popup must be shown.
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment