So day 11, feels like it’s gone so fast. I finally have a working prototype which is great. I just would like to do so much more with it which I don’t feel the time permits. I had some various adventures debugging my first attempt and I feel that I have learned the most from it even though it was extremely discouraging at times you do the programming equivalent of hitting a wall just when I got my momentum going. Since I asked for some help a lot of those bugs have been dissolving in front of me though that’s really shed some light on the progress I’ve been making. What I’ve been doing this whole time was on the right track it’s just they were some very small glitches that I didn’t really know how to deal with.
My particular problem was that I had a lot of little bugs and they were covering up what was happening with other behaviors / bugs things became a bit of a tangled web that was very hard to debug. I think I learned a lot trying to do it on my own but I finally surrendered and said “Hey, you know I need to just understand where I’m going and which way is back to the surface?” Feel like I went under there for a while. But as soon as I reached out for help it turned out that a lot of those bugs were messing with core features and most of them were already correctly implemented. I just didn’t know that I was on the right track because I was so mired in one thing causing another thing to go wrong. There once I brought up my core issues and worked on those the rest of it is a lot easier to track down and just deal with. I found I was able to solve some of the problems within minutes where is it would have taken hours feeling like I was facing some impassible cliff face.
Particular bugs I had, tended to follow themes of accidentally introduced doppelgangers. I was trying to get somewhere so fast that I might have forgotten about if I’d already done apart before and I tended to recreate instances of certain things such as the spawn manager which controls when different enemies and items are created. it’s pretty integral to how the whole thing function so it’s kind of hard to see where some small thing is going wrong with that is having a problem. The Crux of it was that I created two of themand then I seem to be getting buggy behavior from what I believed to be one spawn manager when really one was working perfectly well (except for a small readjustment on range) it’s just the other was picking off where it left off. Meanwhile I was trying to figure out we’re all these aberitions we’re coming from — trying to solve the problems what I was looking for was one huge catalyst when really there were two. I also managed to double up my enemies and collisions with animations that I had put on a different object. it caused me to not be able to turn it on and off what I thought I was supposed to be able to through my code — which was working perfectly well it’s just there was a doppelganger perfect venting the effects from being perceived. The second one was not supposed to be coming in when it did but I didn’t really know that that was what was happening because it was not on the one that I thought was causing the slew of explosions. That wasn’t part of enemy generation so that was not causing the speed or over bearing wave was the spawn manager which prevented me from seeing the subsequent problem — unfortunately I pereceived them as one big bug. Working through these in reverse I actually got to see how small things can cause what looks to be larger problems, even when they do not appear that hard when traced down to the source. Conceptually, this make sense in programming but it’s a little hard it implemented in the beginning without a helping hand do you learn just how to target things in isolation. That said I don’t regret the time I spent trying to debug on my own because I learned a lot more about how to figure out what my program is really doing and eventually about debugging that I’m going to have to do on my own. It may not have seemed like progress but I think I learned more from trying the debugging part out. And now I feel like I’m in a much better place for the next project.