Friday, 17 April 2015

Second Semester Final Project Update 2

Dear, oh, dear, readers, I really do need to do better with these updates, don't I...

Good evening, readers, I have another update for you with the Final Project puzzle game I've been working on.

Again, I sadly have not been able to put as much time into this as I would like, but progress is being made nonetheless. Since the last update, I've more or less redone the bubble popping system, moving the co-routine to the individual Bubbles to cut a bit of length from the Main script. While doing this, I made the necessary modifications to ensure that each bubble that pops will run its effect, even after being popped by the effect of another bubble.

This makes it possible to chain-reaction bubbles effectively, allowing for more domino-effect popping than the previous method did.

I also modified the popping effects of the bubbles, adding in two new types: the Basic Bubble, which simply pops on its own when clicked without affecting any other bubbles, and the Explosive Bubble, which pops all bubbles immediately surrounding it.


The Line-Popping Bubble remains, but will no longer be the standard bubble on most levels. 



The final new feature is the finalised level system, which utilises a Level subclass to build hand-made levels through the code. Each level incorporates a unique Two-Dimension Array which can be modified in the individual level class.

This means that there is a parent "Level" class, which is subclassed in "Level 1", "Level 2", and so on. This allows the Main script to treat all of the levels as the same script be referring to them as their parent class, while still letting each level have its own variable values, including the overall layout of the level.

I've so far create three levels, each one introducing the current types of bubble. The next thing for me is to begin creating some levels which use these bubble types and provides some challenge to the player. Some more mechanics may be necessary, but I'll consider that possibility after exploring the current mechanics.

For now, that's about all the progress that I'm ready to report on for now. I'll try to update more often and more regularly in the future. Until then, have a fine day, readers.


Thursday, 2 April 2015

Second Semester Final Project Update 1

Hello, readers!

Apologies for the lack of updates in the past couple of weeks; various projects have been keeping me busy, and I haven't had much time to work on the Final Project, and didn't see any point in providing updates with no progress to report. I have finally managed to pour a couple of hours into it today, however, and have settled on and set up a fairly nice central mechanic for the puzzle game I'll be building.



The player starts with a square grid of bubbles, which can be popped by clicking on them. Popping the bubble produces a nice little particle effect, and makes the sphere of the bubble vanish.


Once a bubble has been popped, the game pops the rest of the bubbles in lines above, below, left, and right of the clicked bubble in a short chain-reaction. The code for this was relatively simple, but took a little bit of thought to get them to pop in order, all at once. It was a fairly simple matter of having the four directions of popping in a single function with four Booleans detecting whether the edge or a blank space had been reached; the function was headed by a While Loop that checked if all of the Booleans had been completed, and included a yield WaitForSeconds delay at the bottom of the While Loop.

The bubbles are contained in a Two-Dimension Array to which they're added as they're created, similarly to the Maze Game I created in the first semester. This makes it incredibly easy to target specific bubbles within that Array, using the coordinates that are assigned to them.

Overall, I'm happy with this as a start to the game. It's a fairly nice puzzle mechanic which, with some basic level design, can make for some tricky levels. It also offers some room to develop one-off mechanics with the popping chain (such as a "bomb" bubble, which bursts all bubbles around it when it pops, or a way of bouncing the chain reaction around the board), and is generally just quite satisfying to watch. It wouldn't be incredibly hard to allow the player to set up some fairly intricate, almost domino-like patterns in the bubbles, which they could set off with a single click, sit back, and watch play out.

With another couple of weeks, I can hopefully develop this into something very pleasing to add to both this dissertation, and my portfolio.

I'll try to keep updates coming more regularly. Until the next one, have a fantastic day, readers.