3 ms·
https://github.com/mrcampbell/open-monster-registry/blob/main/README.md https://github.com/mrcampbell/open-monster-registry/blob/mai... I'm working on an Open
by mikercampbell 5y ago
https://github.com/mrcampbell/open-monster-registry/blob/main/README.md https://github.com/mrcampbell/open-monster-registry/blob/mai...
I'm working on an Open Monster Project, based on the game mechanics of Pokemon, Final Fantasy, and others - but fully opensource, fan created, and IP nightmare free!
I've worked on Pokemon Game implementations, algorithms, and have implemented it dozens of times, and feel like it's time we create a regulated system to allow others to build games from scratch with the least amount of friction possible.
- eternityforest 5y agoI am definitely interested! But games are one of the few things I prefer the analog version of, although I do enjoy video games. Maybe it could be designed so that a subset of the game is playable as a card game, or that monsters have a well defined card equivalent? I'm not sure how important a first party embeddable engine is. Just defining how a monster is represented and what a battle means , and balancing powers, would already be a big deal. This seems like a pretty good use case for an arbitrary rules engine, so that games could somewhat customize things. Maybe you're in space and flying works differently, or some epic thing happened to change how magic works. Or maybe some moves aren't things you need to use, they just happen without even using up a turn. You could have default rulesets applied to items and monsters and attacks at the game definition level, and then more specific rules on specific monsters. You'd probably still want all the basic concepts like what a turn means and the fact that you can choose from a list of actions on a turn, but other then that things could be pretty flexible while still giving the monsters consistency between games. Example: "It hurt itself in it's confusion" could be done with a "launching attack" phase before the target and effects are finalized. event: launchingAttack > if self.state== confused > chance(20%) > attack.target = self > message "Oops"
- mikercampbell 5y agoOh heck yes! I love this! Yeah! I know it sounds strange, but my use-cases that I'm aiming for, with the intention to keep this as broad as possible, is the game should be pluggable into a First Person Shooter just as easily as it can be put into Pokemon hack. So there will be a basic "input an attack, an attacker, and defender, and calculate damage", but then allow them to expand that to include other things. Let me know if this is a bad idea, and I've decided to try to ask HackerNews about it, but what do you think of using GraphQL as an API interface? I'll share the link with the details here after I post.
- eternityforest 5y agoI'm not directly familiar with GraphQL but using known standards is always good. I'm not exactly sure how it would work though. Is Python's Flat is better than Nested principle relevant here?