Posts

Showing posts from June, 2023

Fixing A Game Breaking Bug or How I Learned to Love The Observer Pattern

Image
Fixing A Game Breaking Bug or How I Learned to Love The Observer Pattern By Pedro Colon  Wooooo boy, this took a bit. Technically-as the time of this writing-I am not completely done with fixing the game breaking bug BUT for the most part the system is working as intended (for the most part), just need to start placing it around the current tracks we have for the game. So what was- The Problem! The problem is honestly quite simple. When the player starts, they are able to turn back and hit the lap three times to end the race in seconds. This is obviously not great for a kart racing game as this would just be game breaking as seen below: This is bad, like just bad. Absolutely unfun and unsatisfying for everyone involved.  So now the question is, how did I manage to get the bug fixed? The answer is quite simple: A design pattern known as the Observer Pattern. Observer Pattern is The Best! I am not kidding when I say that the observer pattern is awesome. I remember in one of my c...

The Struggles of Game Development

Image
The Struggles of Game Development By: Pedro Colon This month has admittedly been a tough one. Between being down to just three and life situation getting in the way, its hard for me to say that I feel the most stratified with the project at its current state. There has been a lot of good work done, the AI, UI controls, Kart controls and the level being made. However, I can't help but feel there so much more could be done and better too. This post will be different from the usual ones. Perhaps a cry for help, a vent post? Hard to say. I do feel I have some blame in hindsight, with my lack of experience with leadership along with feeling defeated for the month has greatly decreased productivity. Do note this is not an attack on anyone nor will be naming who because this is to shine light to the struggles of this game development rather than to provide a hitlist of who to blame. That would be counterproductive for such a chaotic month that made two of our teammates rightfully focus on...

So many things connected to one problem

  So many things connected to one problem By Malik Carter

AI being scary to work with

Image
 AI being scary to work with By Malik Carter I've been working on the AI for a while now. Looking into the unity asset store to going through a series of YouTube videos. For the last week I've been having trouble with the sensors of the AI so it knows what to avoid. That got mixed up with the pathfinding method I used for the AI to look for the next current node so the AI keep crashing into the wall. I haven't made a reverse function yet because I honestly want the AI to be able to go through the track in one try but then there's these bumps in the track that the AI was never able to get passed. I think for a way to fix the problem with the AI crashing into the wall. I can try making a reverse function if the front center sensor starting position hits a collider on the track it'll trigger the reverse function. If I can do that then I don't need to worry about the AI crashing into the wall and not being able to steer away from it. I should also create even more s...

Making A Level

Image
Making A Level By Pedro Colon Oh God, Where Do I Begin?! As of currently, our base scene build is using a pre-made track for us to test our Karts on it. However, for the final build, it would be best for us to have our own track level. Why? Simple, to make it fit better with the mechanics we have in mind. While the tracks from the (free) asset pack we have been using is working well for us, eventually we have to move from the base track to making our own track that would better suit the game we are trying to make. We will still use the base scene since it has work for us to testing out our mechanics but in terms of it being apart of the build, it will not. With that preamble out of the way, the biggest question still remains... OH GOD WHERE DO I BEGIN WITH DESIGNING A LEVEL?! Small Steps Leads To Victory! Turns out, it was actually a little easier than I thought. Well at least the process was. What do I mean? What I mean is that instead of trying to do it in one go, get an idea on pape...

Boost Power!

Image
 Boost Power! By Pedro Colon Boosting! Boosting! An important aspect of Kart Racing! Whether in Mario Kart or Crash Racing, there is a boost pad somewhere around the level, waiting to be used! And since RAD Kart Racer is a kart racing game, should be easy yeah? Well, yes and no. Once figured it was actually pretty easy. But there was some complications, mainly to do with how unity handles stuff that made it a bit difficult. So lets go over it, shall we? Unity Composition Unity is a little funny sometimes. On the one hand, its a really good tool that can get the job done, with convent and "sensible" (for the most part) development tools. However, it is not a perfect tool. To be fair, nothing is and this is just working around the quirks or rather lack of knowledge of the engine. My problem was trying to figure out how to use the composition system to have a boost power working for the kart. So I tried different ways of what I knew to solve the issue, such as GetComponent. ...

Making a sensible Level Manager

 Making a Sensible Level Manager The Problem: What does it mean to make a sensible level manager? To me, making a sensible level manager is making one that is able to be used reliably, where you are able to use it functionality without having to worry what it is doing behind the scenes. This was the issue of trying to make a level manager rather than manually setting up getting a new track for each selection. And how we should go about. The Solution: So how do we solve it? For me, the best solution was by making it static. Rather than trying to create a level manager object for each level, it was better to try and make it static since this will run throughout the entirety of the game. After the static functions was made, the next step was to simply call the level manager in all buttons where there is a next level or retry level and the rest was simple. Since it is simply getting the index to switch to the tracks, we can be able to simply just get the current index and add it by one...

Simplifying Event System Implementation in Unity: A Comprehensive Guide

Introduction: In game development, the event system plays a crucial role in facilitating communication and interaction between different components and objects within a scene. However, implementing the event system can sometimes be a challenging task, requiring precise coding, proper object placement, and appropriate UI integration. This blog post aims to address these challenges and provide practical solutions to ensure a smooth and effective implementation of the event system in Unity. Problem: The process of setting up the event system and its associated objects can be complicated and prone to errors. If not implemented correctly, it can lead to issues such as malfunctioning game mechanics, inaccessible event system functionality, and unnecessarily lengthy code. Consequently, these problems hinder the proper functioning of the game and may even derail the entire project. Solution: To simplify the implementation of the event system and avoid potential pitfalls, it is important to ad...