Skip to content
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

Introduce better player experience #6

Closed
5 tasks done
danilko opened this issue Feb 8, 2021 · 6 comments
Closed
5 tasks done

Introduce better player experience #6

danilko opened this issue Feb 8, 2021 · 6 comments

Comments

@danilko
Copy link
Owner

danilko commented Feb 8, 2021

Game Screen

  • As a player, I want to have a better screen indicator to notify about incoming friend agents/enemy agents
  • As a player, I want to able display both weapon system status more cleanly
  • As a player, I want to have minimap to help locate agents and bases and other indicators

Initial Screen/Server Screen/Join Screen

  • As a player, I want better way to indicate which user I join as part of start/join server instead of current numeric team representation
  • As an admin, I want a way to control map's team setup (initial amounts etc.) during server setup
danilko pushed a commit that referenced this issue Feb 8, 2021
danilko pushed a commit that referenced this issue Feb 22, 2021
@danilko
Copy link
Owner Author

danilko commented Feb 22, 2021

Work on
As a player, I want to able display both weapon system status more cleanly

This involved better UI and a more manageable inventory system

Inventory System

  • Ability to show inventory
  • Ability to change weapon from inventory
  • Ability to use weapon from inventory
  • Ability to purchase more weapon/other items
  • Ability to drop unit from inventory to battlefield
  • Ability to purchase additional item

@danilko
Copy link
Owner Author

danilko commented Feb 22, 2021

Work on

  • Ability to show inventory

Start to work on initial inventory system UI.
User can trigger through "B" key while in game to trigger inventory

danilko pushed a commit that referenced this issue Feb 22, 2021
danilko pushed a commit that referenced this issue Mar 1, 2021
…. Still need to hook up inventory system for network sync within InventoryManager system
danilko pushed a commit that referenced this issue Mar 1, 2021
…. Still need to hook up inventory system for network sync within InventoryManager system
danilko pushed a commit that referenced this issue Mar 1, 2021
…. Still need to hook up inventory system for network sync and bug with shield equip push agent back
danilko pushed a commit that referenced this issue Mar 3, 2021
danilko pushed a commit that referenced this issue Mar 7, 2021
…ee inventory always sync (include items + ammos). And will cause initial slowness in sync
danilko pushed a commit that referenced this issue Mar 7, 2021
…ee inventory always sync (include items + ammos). And will cause initial slowness in sync
@danilko
Copy link
Owner Author

danilko commented Mar 7, 2021

With latest commits, complete following across network sync

  • Ability to show inventory
  • Ability to change weapon from inventory
  • Ability to use weapon from inventory
  • Ability to purchase more weapon/other items
  • Ability to drop unit from inventory to battlefield
  • Ability to purchase additional item

The high level design is following:

When an action is trigger on client side, will send the action steps, currently cover following:

  • Purchase Item
  • Sell Item
  • Use Item
  • Equip Item
  • Unequip Item
  • Drop Item

To Server, server then base on logic and process:

  • If server determine base on logic, the step can be carried out, then carry out, otherwise refuse to carry the step
  • No matter if the step is carried out or not, the server will generate the effect agent's entire inventory and equip status, and send the state to all clients

The reason second step is important is it is possible the client may miss an update in past, and so cause this transaction to fail, so use this opportunity to "force" the setup

However, it does produce more network load especially during lot of agent creation steps. Create a defect to track it
#8

danilko pushed a commit that referenced this issue Mar 7, 2021
…ee inventory always sync (include items + ammos). And will cause initial slowness in sync
danilko pushed a commit that referenced this issue Mar 7, 2021
…ee inventory always sync (include items + ammos). And will cause initial slowness in sync
@danilko danilko changed the title Introduce better player UI Introduce better player experience Mar 7, 2021
@danilko
Copy link
Owner Author

danilko commented Mar 7, 2021

There is also still some problem with inventory drop/usage.

Sometime clients are not sync up with server:

  • Usage of item did not reflect health
  • Item drop location is not always consist between server and clients

danilko pushed a commit that referenced this issue Mar 7, 2021
@danilko
Copy link
Owner Author

danilko commented Mar 7, 2021

This is fixed in latest commits:

  • Item drop location is not always consist between server and clients

However, for the health not recover issue, it seem it did recover, but just always not propagate fast enough depend on network situation, so will category under this issue
#8

danilko pushed a commit that referenced this issue Mar 7, 2021
danilko pushed a commit that referenced this issue Mar 13, 2021
…h team and whatever each team will auto generate new bots along with player, fix the health heal not reflect immeidately in UI, fix issue where after server finish a game, cannot create another server game
danilko pushed a commit that referenced this issue Mar 14, 2021
@danilko
Copy link
Owner Author

danilko commented Mar 21, 2021

Following are fixed in the latest commit
Usage of item did not reflect health -> Fix
As a player, I want better way to indicate which user I join as part of start/join server instead of current numeric team representation -> Fix now with team name indication and team color
As an admin, I want a way to control map's team setup (initial amounts etc.) during server setup
Demo
https://www.youtube.com/watch?v=DLI8xl845ag

This wrap up this round of initial implementation

@danilko danilko closed this as completed Mar 21, 2021
danilko pushed a commit that referenced this issue Mar 21, 2021
danilko pushed a commit that referenced this issue Mar 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant