Speaking of silly Tetris games, I once made a version of Tetris where you can only move pieces by shooting them - https://jack.plus/guntris/
The pieces aren’t on a grid either - makes playing it very frustrating.
HN user
[ my public key: https://keybase.io/detry322; my proof: https://keybase.io/detry322/sigs/6Z_el927XyyvZZwAuLkhDPwo1V8Go3IAwZFFizzDzBw ]
Speaking of silly Tetris games, I once made a version of Tetris where you can only move pieces by shooting them - https://jack.plus/guntris/
The pieces aren’t on a grid either - makes playing it very frustrating.
I don't think this is true. On ProAvalon, human players can see the full history of the game at all times [1], and use it to make decisions. DeepRole, on the other hand, can only use its internal belief state. This belief state is only a summary of what has happened in the game - DeepRole has no way of knowing who went on previous missions, or how people voted, or who proposed what. See above for more detail.
[1] See this video for an example: https://www.youtube.com/watch?v=LKdY4Us0Ci4
Interesting, but surely it has to retain some information about the past to be able to know how to update that belief vector?
The belief vector is updated on the fly. When players take moves, we use the belief vector and our CFR-generated move probabilities to perform Bayes' rule. Once the belief vector is updated, we throw out all information related to the specific move they took.
Outside of directly being on a mission, the only major "good" or "evil" actions are voting for/against missions, once you know if the mission succeeded or failed. Do you just not take that into account?
DeepRole takes all player actions into account - the key to good performance in Avalon is knowing how to interpret the voting/proposal actions of all the players. We explored this in our paper: LogicBot only uses the mission fail results to deduce who is good, and has a lower win rate than DeepRole in all situations.
If it's literally just a representation of the outcomes of the missions and who went on them, then isn't the Belief Vector just the venn diagram of how every mission went with some iterative statistics laid over it?
While you can tease out the "venn diagram" aspect out of the belief vector (it will assign 0 probability to impossible assignments), it's far richer than that - it weights the possible assignments based on all of the moves it has observed.
In some sense, DeepRole is playing with one of its hands tied behind its back. All it knows about the state of the game is this belief vector, the number of succeeds, the number of fails, and the proposal count. It doesn't know the specific moves that led that point in the game. The fact we can summarize everyone's previous moves into this belief vector is somewhat surprising, considering human players can look back at the game history and re-synthesize for new insights.
Paper author here: one cool thing about our technique is that our bot doesn't keep "notes" :)
The only thing it maintains for the entire game is this length-60 belief vector - a summary of who it thinks is evil and good. How people act influences this belief vector, but it can't look back at the game history. This leads to awkward play sometimes - it will propose missions that have failed in the past, etc. I think it's cool that we (humans) can summarize the state of the game with such little information, and that the bot does something similar :)
If you want a simple (but bare-bones) self-hosted version of this service, check out the open source version I made a couple years back:
https://github.com/Detry322/redisred
Here’s a hubot plugin for slack:
https://github.com/Detry322/hubot-redisred
We use this extensively at MIT for HackMIT and the MIT Pokerbots competition, and best of all, it’s free.
The deploy to Heroku button should “just work”.
Just hopping on this thread post for a shameless plug:
https://github.com/Detry322/git-psuh
Why make errors do the thing you want, when you can make them do things you don't want? ¯\_(ツ)_/¯
Carpenters have "measure twice, cut once", since there's risk involved with a mistake. Let's make mistakes risky.
annotations -> connotations
If you're going to be pedantic, at least be correct.
What I see:
This doesn't work for me - I need to have the Department of Defense root certificate installed, but I'm not sure I'm willing to do that...
Original Show HN post is here:
I don't think so. Presumably if they show that page when they are overloaded, the page must be extremely quick to load.
Notice how all of the assets (images, css) are all inlined in the HTML so your browser doesn't make multiple requests.
I would argue it contributes to huge bloat. People pull in huge powerful libraries to format a single date. In addition, a vulnerability in a library you pull in could compromise your application. Even deeper, a sub-sub-library (i.e. one you didn't even add yourself) could have a vuln that affects you.