camirmas / go-stop-server Goto Github PK
View Code? Open in Web Editor NEW:white_circle: Server implementation of the board game Go
License: MIT License
:white_circle: Server implementation of the board game Go
License: MIT License
Blocked by #28
It would be easy to Dockerize this app for easier local testing and for deployments, though we should also consider options like edeliver + distillery to achieve the true power of the Erlang VM
Implement a rating system (here's a potential starting point). It will form the basis for the W/L rating system that we'll incorporate into player stats, and in turn use for matchmaking. Consider adding a new MatchMaking
application to do this, so we can have a place to add further matchmaking code.
Follows from #24
This can actually wait until the GameLogic
application is complete. From the add_stone
resolver, take the results from GameLogic.run
, make the appropriate database queries to create/delete stones, and return an appropriate GraphQL API response.
Right now it only provides token
.
Blocked by #32
When you think your territories are all safe, you can't gain any more territory, reduce your opponent's territory or capture more strings, instead of playing a stone on the board you pass and hand a stone to your opponent as a prisoner.
When the auth token is bad, the request fails and the server returns a disgusting unparsed Elixir error message
To replicate: call the addStone
mutation on a Game with a User that is not a part of that Game
At the end of the game, the players count one point for each vacant point inside their own territory, and one point for every stone they have captured. The player with the larger total of territory plus prisoners is the winner.
Keep track of Stones that were captured in a Game. This might live in a new database column stats
with type :map
, and accompanying embedded Schema
Hi there, I found this repo while searching for how to do graphql/absinth/phoenix testing and just wanted to suggest a name change of the repo.
Not sure if you were aware but Go-Stop is actually a name of a Korean card game. It MIGHT lead to some confusion but it is pretty obvious from the code and comments what game this is. (And Go/Baduk/Weiqi is a much more popular game anyways...)
Just letting you know!
This one might require some changes to the database in GoStop
to ensure that an opponent cannot recapture for at least one turn.
Followup from #32. Add stats
as a field to GoStopWeb.Schema.Player
, and test accordingly
Update the addStone
mutation to include basic stone captures (not strings yet). This will involve querying for nearby stones to figure out if a capture has occurred, identifying the captured stones, deleting them from the database, and returning their information, i.e. coordinates, to the client.
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.