Digimon – Pocket Monsters
I’ve been working on a project to show off / learn more about what I can do with VueJS. It’s really, really stupid, and here’s why.
Free APIs
When I started this project, I really wanted to build it against a third party API. At first, I thought about making my own, but as I said, I really just wanted to concentrate on the VueJS side of things, so I thought that would just be a bikeshedding style distraction. I started looking at the various free apis out there. I had heard of the PokeAPI, and Star Wars API. Neither of these really appealed to me, since I’m not a small child. (Yes, Star Wars is for children. Don’t @ me.) I did find a Star Trek API, which I do like. So I thought I would use that in some way.
Let’s play a game
I wanted this project to be very simple. I thought a little game would be fun. Something like — who would win in a fight? Miles O’Brien, or Geordi LaForge? It would be simple to pull up their profiles and display some info about them, and pick a random characteristic, say, like, their age or number of episodes they appear in, and whoever has the highest whatever, “wins”.
But Star Trek API didn’t provide images. At first, I tried to write some JS to retrieve the first DuckDuckGo image search result. This was, of course, not as simple as I thought, and again, I started to feel like I was bikeshedding. It is something I would like to try in the future. Anyway, I decided that my fake game idea would work with pretty much anything.
Enter the Digimon
So, that brought me back to the PokeAPI. It provides image URLs. So I went with that.
At this point, I feel that I need to say that I don’t like Pokemon. I understand if you do, that’s fine. I think some of the monsters are cute, sometimes the artwork is nice. But it’s just not for me. I’m an adult, and it’s for kids.
As a kid, I played a lot of console RPGs, like Final Fantasy, Chrono Trigger, Lunar, etc. When Pokemon started getting popular in the states, I tried it, since it’s pretty much a RPG. But…. I was like, 17 at the time, and it wasn’t very much fun.
20 years later or so, and Pokemon has only gotten bigger as people younger than me have started to grow up? I guess. I don’t even really know. Also, did I mention, I do not care about Pokemon. I tried Pokemon Go. I find it very boring. Whatever.
So, given that I kind of hate Pokemon, and my commitment to using the PokeAPI, I couldn’t just make an earnest Pokemon fighting sim. So, I decided to make something that I would imagine would (mildly) infuriate Pokemon fans.
Firstly, Digimon. As little as I know about Pokemon, I know even less about Digimon. I imagined it to be sort of like the Pepsi to Pokemon’s Coke. So, pretty much the first thing I actually did for this project, using the Pokemon API, was to put Digimon logo at the top of the page. This struck me as very funny, and I felt like I was on the right track.
She’s so heavy
So, in Pokemon, certain monsters have traits, something like elemental abilities. A water-type Pokemon will do a lot of damage to a fire-type. (I think). Since the PokeAPI provides the abilities, I can easily display them when the Pokemon battle each other. But, in my game, it does nothing at all. It’s just smoke and mirrors.
If you’re a Pokemon fan, I imagine you know the types of the Pokemon I’m displaying. If you have a fire-type vs a water-type, you would be smart to bet on the water type. But, that’s not really how my game works. It’s purely a size-based contest. The heaviest pokemon wins. This was easy to achieve, since weight is exposed in the API.
My hope is that this will confuse and upset anyone who plays my game and knows anything at all about Pokemon.
And, I did really learn a lot about VueJS. So I managed to do what I set out to — learn something and attempt to (very) mildly troll pokemon fans.