Yep. Once again it's been a while since I last wrote a post because I decided to go overboard on another feature for the website. This time around it wasn't due to some grandiose idea to write some backend code for a database, it was a simple clicker game.
I mean, how the hell do you overscope a clicker game? It only has a handful of concepts, clicking, score, automation elements, and maybe an end goal. So what happened? How did this go wrong this time?
You might've noticed some ads on the home page. Those are placed by some javascript that populates any tags with a certain class with some data in a JSON file. This was something I wanted to do for a while. Just some fake ads for goofs and gaffs when you enter my page. Some ads have links on them that can redirect you to other pages or websites.
One of the ad ideas I had was related to a dumb thing on the early internet called Meat Spin. If you don't know what it is, don't look it up. But if you want to know Meat Spin was a website with a looping gif of someone spinning their penis around. For some reason I thought it'd be funny to have a parody of it called PigSpin. A simple page where you could spin a pig. I wanted it to be a simple clicker game to play when the user was bored, but it quickly became a weird nightmare to work on.
Making the pig spin around was actually the simplest part. CSS can be used to transform an element on any axis, which makes the spinning part easy. The clicker game part however got out of scope real quick. I didn't have any plans for it, instead going with whatever came to mind at the moment.
The game initially worked by increasing the idle rotation speed with every click, which made the game very exponential in a way I couldn't control well and make into a fun game. I kept trying to run with that concept for way too long before realising that it was doomed from the start.
During that phase I tried to add some upgrades and purchases to the game, but the process of addressing and updating the prices and the UI for the shop dragged it down badly. I made it a major pain to add to, and even after making all of the variables into individual JS objects, it was still too much. On top of all that, I also kept most of my code to one file, which was just the biggest mistake.
I do want to try doing the concept again at some point, but if I do then I'll do it in a different HTML project so I can keep adding to this site in the meantime. The way everything is set up here means that if I want to work on the site, I have to finish that before pushing a new blog post because the Neocities Push command will push EVERYTHING.
If today isn't going well, then take the day easy and make tomorrow a better day. Some days are just messed up and can't be fixed, but that doesn't mean that it'll stay that way. Every day is an opportunity to live your life better than the last, so put in the effort to live your life to the fullest!
See you next time!