Hey HN! Tried to show this off a couple times before but didn't really get much traction, figured now that more time's been spent in the UI/UX side of things I'd give it another shot.
This is my attempt, started at the beginning of the year, to build a complete Magic: The Gathering engine.
Instead of coding individual card scripts, a compiler takes oracle text as input and outputs the card definition itself into executable effects that ran in the engine.
Another cool thing which is mentioned in the title is that tournaments can be played without relying on a central server hosting the game, and without having to trust in your opponents playing honestly. Shuffles carry a ZKP so that all peers can verify they were performed securely, and even complex cards like Praetor's Grasp which give you information about your opponent's cards that they themselves don't have work as expected with perfect secrecy!
I'd love to get some feedback on HN, especially regarding broken mechanics/scenarios and whatever potential improvements you think are worth adding.
This is my attempt, started at the beginning of the year, to build a complete Magic: The Gathering engine.
Instead of coding individual card scripts, a compiler takes oracle text as input and outputs the card definition itself into executable effects that ran in the engine.
Another cool thing which is mentioned in the title is that tournaments can be played without relying on a central server hosting the game, and without having to trust in your opponents playing honestly. Shuffles carry a ZKP so that all peers can verify they were performed securely, and even complex cards like Praetor's Grasp which give you information about your opponent's cards that they themselves don't have work as expected with perfect secrecy!
I'd love to get some feedback on HN, especially regarding broken mechanics/scenarios and whatever potential improvements you think are worth adding.