lucasb-eyer / mwdns Goto Github PK
View Code? Open in Web Editor NEWMemory Which Does Not Suck - play turn-based and realtime memory with your friends in the browser.
Memory Which Does Not Suck - play turn-based and realtime memory with your friends in the browser.
When joining a game, where there are open cards, the already flipped cards show as scored, but without images. Probably some awkward loading time issue.
When an image source is picked which only provides a certain number of distinct images, the gui should reflect this by disabling (greying out) options which are not supported.
a combo being a streak of successful card flips. On the server-side, the cards randomly reshuffle already. Showing a "combo" text or better yet, playing a sound, would be awesome.
Let's not delete players who leave, so people can come back, and everybody is on the same page.
CAN I HAS PLZ?
@TH4T idea is to maybe take the background.
I have at least one in mind, which is memorable and nice to look at.
Title says it all :) In classic mode, the turn count shouldn't be the flip count.
Come up with a prominent GUI explaining that the user needs to give the URL to a friend in order to play with him. We failed hard at that in the hackathon :) Ideally, it would be or have a button which copies the URL to the clipboard, just as github has for the commit hashes.
It is bm to shuffle around cards which have not been yet scored as soon as a game has started (=first pair has been scored).
too much to list here. From chat to player namechanges to notifications/scoreboard
Something like a green point next to the active player
a "change name" button on top or under the player list, in addition to the (you) link next to the name.
something like a "+1" appearing, then fading out.
Also the move transitions which arrive from the server should be animated at
a proper speed (calculate the animation time based on the distance to travel)
what about z-index behaviour?
What about live move updates? (bad idea)
Make the server less carsh-happy (due to badly formatted JSON for example).
otherwise trololo scenarios are too feasible
Same goes for camera movement, so people don't get lost
The mouse keeps leaving the cards on far-away zoom levels -> dragging stops for no reason...
until the mouse hovers over the card again.
It might be best to limit the draggable objects to one (a global variable holding the currently dragged / focused object, be it card or board)
Depending on who scores them, because it's awesome
or at least something showing who's da boss.
On the startscreen: options form for stuff like cardtype, imagesource, max players, gamename etc
Make the card layout a button-option just like the card rotation.
When being redirected there because of an error, e.g. bad url:
See TODO note in 8e4dcd4
For when the chosen card deck is random colors. Use go-colorful. Probably send the list of colors with the initBoard
message.
The javascript code does not make use of the data in /static/data/cards.json, neither does it use the asset id which is transmitted by the server.
A player opens one card, then leaves. The card stays open forever, but should be closed again.
Only one synchronized part of the program that opens, closes or deletes old games. I can remember the strong impression of the current setup being a little on the unsafe side of things.
A unique client id, which can be used by a player to identify with the server. It could be saved in the offline browser storage or in a cookie. It could be used by people to reconnect to games without hassle (or security :). This is directly related to saving player names and other settings between sessions.
Make cards in rush flip back immediately, instead of after 3 seconds, when a third card is opened by the player, to reduce the confusion potential.
Remember actions in a game, adding a replay functionality and saving of games. This is beyond fancy and nicest to have. Disregard please.
In classic mode, when the player whose turn it is leaves, the game is deadlocked. Instead, the next player should be allowed to play.
Flipping a card could be animated, to provide feedback to the user. For the love of all that is good and holy, don't even consider using flippy.
Just lost with a score of 6 against a score of 4. Either the score display is borked (not accounting for combos?) or something else is awry. Giff victory.
When starting a game, all attending players are highlighted as active due to some magick. Fix pls.
When joining an already-running game, the player which joins doesn't see the score and number of turns of other players! He will only see it when it gets updated.
If one is clicked, it goes to the top, the others bubble down to fill the gaping hole it left behind -> more natural & better looking.
Only for correct z-index values. "Stack" might be misleading.
Need a subtle pointer to show a list of possible interactions to the user, like show that it's possible to move and rotate cards, as well as zoom and use keyboard shortcuts.
Maybe something like github's "Keyboard shortcuts available" at the bottom of the issue list?
Make the user interface respect what the server says ->
if it's not your turn, you should not be able to move cards (?)
which compiles the js code into one file and uglifies it, as well as compiles the less code into css and minifies it (if that's possible?)
For example playcard ratio, with image & text parts
Make the server find a proper card layout / rotations if the players don't want to start with a cardstack in the center.
A third coordinate goes along with x,y: phi. It is already carried along almost everywhere but needs to be applied to the cards!
maybe through the "transform: rotate(phi deg)" css property? But it has many variants, like "-webkit-transform" etc. Maybe we should use a jquery plugin for that?
Currently I think it looks like this:
newplayer
message.newplayer
, generates his own color/namewantChangeName
and wantChangeColor
playerinfo
playerinfo
I think the color is the server's task (pre-generate as many distinct happy colors as max players) and the name should be server-random too, but the player can change it after the fact.
We could then store a player-selected name clientside in an offline-storage and the next time he connects he will request a namechange automatically.
How does that sound?
On the client, have a delay between opening and closing a card again, independent on when the messages come. That is because on slower connection, the open and close messages might come in at almost the same time.
In the browser, without cookies, as this has annoying consequences thanks to EU regulations. This can be also used to re-identify a player who left a game.
Include a "rematch" button which starts a new game if all remaining players accept.
Before the second card is scored, the border flickers to white first before taking the player's color. The issue seems to be in 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.