Small Towns Is Testing My Resolve.
Putting your game out in the world can be a daunting task. When I came up with the concept after playing something similar, I knew I could make a game that was unique. I set down at my computer, opened Unity, Visual Studio, and Gimp and got started. Of course, my initial tiles were anything if not just words on a square, but you have to start somewhere.
Prototyping a game in the early stages seems easy enough. This wasn't my first 2d grid based game (Check out Terratrons From Outer Space), so I already knew how to establish a 2D array and how to work inside of it. Nested for-loops FTW. In just a matter of hours, I had a working grid and was placing tiles. This should be easy, right?
Sometime earlier in my life someone said to me, "The first 90% of a project takes 90% of the time. The remaining 10% takes the remaining 90% of the time." I was sure I would have this game finished in a week, and aside from some pretty pictures, I'd be done. I should know better than that by now. By the end of week one, I had completely restarted the whole project because I realized my design standard was incorrect.
I did one thing right from the very start, however. I made a document that described the game, it's mechanics, rules, and scoring before ever writing a single line of code. So when I decided to start over, I didn't have to go back to the drawing board. Why did I start over int he first place? I decide that the the Unity Update() event was kind of pointless in this type of game where time has no true meaning. Since you could take as long as you wanted between turns, I decided to make everything event based, which in the end was the best way to handle it. That was until I got the to scoring mechanism.
Week 3, i Guess? You see, writing the scoring algorithms wasn't all that difficult. The grid is only 9x9 and after having to lookup A* again (it seems I can never remember the base rules) I had written some of them pretty quickly. There's only one problem with these algorithms, they happen so fast, they're invisible to the human eye. In fact, they don't even last a single frame, and this doesn't give any feedback to the player other than a number with no explanation. So I had to go back and start over again. This time, however, I didn't have to rewrite the whole game.
Since I'm not using the UnityEngine.Update() event, how could I slow this down? IEnumerators win this one. The joy is that you can add in time here. [yield return new WaitForSeconds()] and in the end the entire scoring round is one giant chain of yield returns. The benefit here is that now I can give the player some sort of visual feedback as to why the score is what is is, as each point scored is tied to a visual cue.
Week 4 or so. So, at some point, you need feedback from real world players. This is a smallish game, so WebGL would work great for that. I've published on Itch in the past, and my brand is somewhat established. even if most of my publications are demos of unfinished games. The feedback has been very helpful. Thanks to it, I realized that my card shuffling was not working as intended. As a result, certain cards were likely to show up several times throughout the game. Yes I was shuffling them back in, but random number generators tend to gravitate towards the bounds rather than in the middle.
Also, I wasn't seeding my randomness, so at times, the same card would show up twice in a turn. So I threw out my entire shuffling system and decided that all three dealt cards would be discarded. With 45 turns in the game, three cards each, that's 135 cards. With 7 tile types, and 27 positioning rules, there are a total of 189 unique cards in the game. I settled on a seeded random instead, shuffled the deck at the beginning of the game, and be done with it. The benefit here is that I now have a new mechanic to use. The seed is based on the date, so everyone gets the same shuffle on a daily basis. This now means you can challenge your friends. I wasn't thinking socially when I started this project, but I realize the potential here.
So here I am, at the beginning of the 5th week of the development of the game. Definitely NOT finished in a week. However, I can see the light at the end of the tunnel, and I've got enough granola to keep me going until I get there (I think).
Leave a comment
Log in with itch.io to leave a comment.