Eating the Elephant
Hello friends! I hope you’ve had a good week. I made some significant progress in Martian Alchemist and I'm really excited to share it with you.
First off: I was able to dynamically instantiate all the potions to their various potion locations on the map! Unfortunately, I ran into some serious performance issues and it made the map all jittery. And since I really just didn’t have the energy to deal with all of that after having spent the last several weeks on the map, I decided to move on to different parts of the game that I still need to build out in order to get an MVP ready. Also, I am completely rethinking the visual design and art style of the map too so to avoid having to redo a lot of stuff, I put pause on that.
Second: I created all the crystals that are going to spawn in the mine. Obviously there will be more that you can purchase from merchants, but these are the ones that you’ll be able to harvest in your mine. I don’t love a few of them and might end up swapping out the art for something different, but I figured I’d just leave it as is for now. As with the ingredients in the greenhouse, sometimes you just have to move on and come back to it later if it’s still bothering you.
Third: This one was a huge update. You can now use the items in your inventory! Obviously there are a lot of little bugs and I need to work out the collisions, etc, but I was pretty happy with the core functionality. Now you can actually play around in the kitchen (Potion Making Station).
One of the reasons why I was able to get a lot more done this week than in previous weeks was because I was able to reuse a lot of code that I’ve already written. And this is where making your game modular and scalable really pays off. Designing with the end in mind has been huge because I’ve been able to structure it in such a way that future additions or subtractions are very easy.
For example, the harvesting code that I wrote in the greenhouse was generic meaning I could reuse it in my mine as well. I literally only had to add one line of code. And this was because I already had all the information for the ingredients on a CSV that I imported into my game. And since I had already set up my Ingredients class to handle ALL of the ingredients, it truly was easy peasy.
It’s been very satisfying watching the game come together like this. If you had asked me a year ago if I thought I could do this, I would have said no. But if there’s one thing I’ve learned, it’s that you don’t have to eat the whole elephant in one sitting, in one bite. You literally eat it one bite at a time. I truly believe that anyone can learn anything. You just have to learn it one step at a time.
I don’t know how to finish my game today, at this very moment in time. Nor do I know all the things I’ll have to do to make it polished and ready. But I’m confident that when it comes time to do that task, I’ll be able to figure it out. And as I’m building it and figuring it out, slowly but surely, I’ll build the game. I’ll fix the bugs, I’ll add the features, I’ll polish it up.
But in the meantime, I need to watch some YouTube videos on shaders because I’m going to need them soon…