etchelon / gaiaproject Goto Github PK
View Code? Open in Web Editor NEWFull implementation of the Gaia Project board game as a web app
Home Page: https://gaiaproject.azureedge.net
License: MIT License
Full implementation of the Gaia Project board game as a web app
Home Page: https://gaiaproject.azureedge.net
License: MIT License
Extract clickable hexes from all possible actions, make them interactive and upon click activate the corresponding workflow.
Maybe all other actions as well, to get rid of the Actions button in the status bar ๐
As requested, allow sectors to be rotated by the last player during the setup phase
Define what the end game screen should look like and therefore what data need to be transferred to the client.
Figure out why, on Chrome/Edge for iOS (and who knows which other combinations of browser/OS), reloading the game page results in the UI showing you're not logged in, but not on Safari/iOS or Android/Chrome and desktop.
The UI should wait for Auth0 before performing any HTTP requests.
When spectating a match on desktop, if you click on a Player Box the respective Player Area does not show up.
Since the background is white, make the counters red
It was actually never implemented!
Add caching for NPM install on the FE pipeline as it's taking 2+ minutes every time...for nothing?!
Define what should be tracked in stats.
E.g.:
Study how this could be implemented.
Ideally the Upgrade building workflow should offer the choice every time a player builds a RL/AC:
In the second case, need to understand if it's possible to switch to another workflow (to reuse the existing code), then go back to the parent one (upgrade) or to just copy part of the code into the upgrade workflow, and dispatch a single action to the backend (an enriched Upgrade action with new data).
Also, how to handle the case when the research step would allow the user to place the Lost Planet?
Lantids parasite mines have z-index 2 and cover the minimaps (research board, round boosters, etc).
Increase minimaps' z-index.
Once the subset has been defined, create the API for the client
Maybe turn the current History page into a "My Games and Stats" kind of page with a tab showing a list of all played games and another showing the personal stats like avg placements, scores, most picked factions and other interesting stats.
Most likely it should just happen at the end of the game because rollbacks would be annoying to handle.
But maybe it's just best to do an incremental calculation with special handling of rollbacks (e.g.: recalculate everything upon rollback) in case there are a lot of hot data in action handlers that would be easy to use for the calculation but would be cumbersome to extract once again in separate handlers.
Try to automatically resize the content to the available height
Add the ability, for the game creator, to delete a game.
Other players shall be notified that the game was deleted.
In the Conversions dialog, when it's opened to do conversions before passing the turn, add the Pass button which behaves like the Cancel button currently, and change the Cancel button's behavior to just close the dialog without dispatching the pass turn action.
This allows users to review the board state before deciding which conversions to perform.
Add the ability to spectate games.
Initially just make the game page work with non players, if accessed by url.
In the future add a view with active games (by player or in the whole platform?! Need a cache!!).
Federation marker, which should show up (by convention) on the highest value building on the federation, does not show up.
The marker is applied to an in-memory building instead of the actual game state which will be persisted.
When a player only has 1 usable Tech tile and chooses the action "Use Tech Tile", the UI should automatically propose to activate that tile instead of needlessly asking the player to choose which tile to activate.
For the future...
Allow hover (tap on mobile) on Advanced Tech tile to show which Standard tile was covered by a player
To the following actions:
When a user performs an action, set all notifications regarding that game as read instead of having him open the notifications menu to clear them, as they are now obsolete.
Remove Players tab and restore the dialog for a specific player's area, opened with a click on the box instead of hovering
When Taklons have passed and have:
When Lantids acquire tech tile PI-AC -> 4 Power, their parasite mines that are on a hex with another player's PI or AC also get their power value increased by 1.
After the game has ended, enable a view with the game stats similar to BGA's view for Terra Mystica.
Some kind of grid with players and how they got their resources/VP.
The counter of deployed mines should display +LP when owning the Lost Planet
Once the stats to track have been defined, define the DB entity model, or models, needed to keep track of game stats.
Currently there is very little validation on the Federations that are formed by players.
In order to enable a wider code base to use the app, this hole needs to be closed as illegal federations could impact final scoring conditions and just invalidate the whole game.
Additional checks that need to be implemented are:
Fix Ivits counter of power inside/outside the Federation is not updated when colonizing from a gaiaformer (but the newly built mine seems to be correctly added to the Federation)
Lantids parasite mines do not reduce the cost of TS from 6 to 3 credits
When a tab is reactivated (on mobile only?) the warning toast is displayed saying that you're not connected and you should rejoin the game.
Coupled with the deep linking issue it makes playing on some mobile browsers annoying.
Automatically move your cards to the right place based on the status and activity of your issues and pull requests.
Improve filtering of possible actions:
When selecting a faction, explicitly show the faction's turn order.
Suggested to just show in the status bar a "Select your race <to play 2nd>" <-- new part between angular parenthesis.
Maybe also add it to the dialog's title
When a player who has passed the current round should charge power, take into account his power and power token incomes to determine the chargeable power and possibly avoid blocking decisions that would certainly be declined
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.