In-Depth Blog Post #6

Hello! This is my sixth blog post for the In-Dept project, and in this week’s post, I will be discussing some progress that I’ve made on my skills, and how I’ve been using “How to Have a Beautiful Mind” by Edward de Bono to host more interesting conversations with my mentor. In addition, I’ll also be giving you all a brief description of my In-Depth learning centre, how I’m going to represent my learning during these past few months, what aspects of my learning am I going to be focusing on, what I hope my audience will learn from my experiences, and what I’m going to need to do to make this learning centre interactive. Finally, I’ll be discussing what I think makes games fun? Is it the challenge? The progress?

Progress Update (my learning over the past 4 weeks)

Since my last blog post, I’ve met with my mentor only once as we had spring break and both me and my mentor wanted to, well, have a break during that time. This meant that we didn’t have many meetings over the past four weeks.

Though, I did continue with my work in Unity by starting work on a Unity course called “Create With Code,” which is a Unity course specifically designed for people like me who don’t have neither programming skills nor Unity skills. This course guides you through a basic beginners guide of both, and was advertised to me by my mentor as “a way to set a good foundation for you learning in Unity.” Here’s a link to that course, if you yourself wanted to try going through it yourself. I’m currently about halfway through the course at the moment, and I’m hoping I’ll complete it soon.

A Lego Minigame I created within one of the tutorials.

During the past 4 weeks, I’ve also continued to work on my choose-your-own adventure game, and it’s been quite fun. I’ve realized that instead of cluttering up my screen with lengthy dialogue, I can split it up into multiple commands on multiple lines of code to make it much easier to look at.

My choose-your-own-adventure C# game’s code.

During our recent meeting, I and my mentor discussed what differentiates “Console.Write” and “Console.WriteLine” was. In short terms, “Console.Write” writes back out whatever you want, but unless you add an additional command, the words you write will never start on a new line. However, “Console.WriteLine” does start whatever you write on a new line whenever you call upon it.

the code
a run of the code above

What makes games fun?

Another topic my mentor and I discussed was what we thought made games fun. My mentor gave me three key features of what he thinks makes games fun.
Those being:

  • Replayability
  • Challenge
  • Progress

I very much agree with him on all of these, and let me explain why.

Replayability is very important in video games because if you finish a game once, then what is left for you? If it’s a story-focused game and it had some sort of big plot twist, then when you went back to play through the game again, that same plot twist will have little impact as you already know it’ll happen. The same can be said for a puzzle game as if you’ve already played through it all once, then you would already know all the solutions to the puzzles, making the game kind of pointless. If you observe most of the modern games nowadays, there is always a feature within the game that solves the question of replayability. For example, in story-focused games, there are now multiple different endings or choices for you to make, making replaying the game still a good time. Another example would be how some games are adding a multiplayer into them, as multiplayer modes instantly add an infinite amount of replayability into any game. One more example would be procedurally generated puzzles or landscapes within games to make every single playthrough slightly different.

Challenge is another important factor I think is needed to make any game fun. If it isn’t challenging, then people will get bored from playing. Challenge is also incentivizes you to get better at the game, which makes you want to play for longer. Challenge can also be utilized as a an obstacle for the player that once is overcome, can lead to great amounts of satisfaction for the player. For example, you’re in a hard boss-fight, and because of the challenge, it makes you study it’s move set and make strategies on how to fight it. Once you finally beat the boss, you feel amazing about yourself because you spent actual effort and time into overcoming that challenge.

Finally, progress is also another important factor in making video games fun. We often play games just for the simple fact of being able to make progress or an impact on something, even if what we were affecting was digital. Progress is satisfying because you feel like you’re being productive and reaching closer to an end goal. Playing games is a very common way for people to satiate their desire to make progress. Another minor reason why we also play games is to satiate the desire of being able to control something. When in games, we have absolute control over what we do in them, which is something some people play games to get that feeling for.

How did I identify concepts in my meeting between my mentor and me?

In one of the chapters of “How To Have A Beautiful Mind,” de Bono states that concepts are a very important part of thinking, though most people find the word “concepts” vague, abstract and academic. De Bono states that “Concepts are the parents of practical ideas,” for example, while we eat “food,” we don’t actually eat “food” as such. We eat steak, we eat chicken, we eat carrots. You don’t each “food” in general, instead of some specific type of food. This is why food is a concept, and something like a hotdog is a practical idea. Concepts are often helpful when clarifying less familiar information or facts. De Bono states that some concepts may be too specific, narrowing our thinking and that concepts capture the main “essence” but may not cover all aspects. When learning a new skill, you will always learn a plethora of new concepts.

Some concepts that I encountered with my mentor in recent sessions include:

  • The concept of active listening, as I’ve come to realize that from listening alone you can learn quite a lot about the subject at hand.
  • The concept of answering questions thoughtfully, as I’ve come to understand that participation in discussion and having my own opinion on topics is a great way to expand on my learning.
  • The concept of not being afraid to just make a new line of code to make my code cleaner. I’ve come to realize that I don’t have to restrict myself to having on one line of code for each portion of dialogue, and instead use multiple lines of code for one portion.
  • The concept of replayability, as I now understand that replayability within games is a huge factor in making games fun as you won’t get bored on your second time playing through the game.
  • The concept of challenges, as I now know that challenging gameplay will act as an obstacle for players to overcome, which doing so will help make the experience very satisfying for the player.
  • The concept of progress, as I now also understand that making progress within a game is a big reason why people find games fun as well, as it is an easily accessible way for people to satiate their desire to make progress and be productive.

How did I identify alternatives in my meeting between my mentor and me?

In another one of the chapters of “How To Have A Beautiful Mind,” de Bono states that alternatives are the opposite and rigidity. “Being unwilling to look for alternatives indicates a very rigid mind that does not often seek a better view of the world or a better way of doing things. It is a rigidity based on arrogance and defensiveness.” Alternatives provide can help to provide additional insight, improvements, simplifications, and flexibility. The point of alternatives is that even though you may have a doing something, it doesn’t mean it’s the best way of doing it. There are often three stages:

  1. The willingness to look for alternatives 
  1. The creative effort to generate alternatives 
  1. The assessment of alternatives.

Alternatives can be explored when doing something or perceiving something. How do we generate alternatives? For action alternatives, we can think of known alternatives and then ask what other alternatives may be available. For perception alternatives, we can see the situation from another perspective and take the opposite of the perception. De Bono states that while action alternatives are about the future, perception alternatives are about the present and past.

Some alternatives my mentor has offered me throughout this project and another mentor may offer me include:

  • When my mentor offered me the alternative of following a different C# course after I mentioned I disliked the one I was currently in the middle of completing. Another mentor may have offered me the alternative of switching to a different programming language entirely if I wanted to (if it was early enough in the project).
  • When my mentor offered me the alternative of working in Unity 2D instead of 3D as 2D would hopefully be more simple to work with as it’s a dimension smaller than 3D. Another mentor may have offered me the alternative of using a different game engine entirely, such a Unreal Game Engine, a game engine that has the same capabilities as Unity.
  • When my mentor gave the alternative of simply just publishing my game directly onto Unity itself for no fee as we ran into the problem of Steam needing to be paid a fee for me to publish my game there. Another mentor may have offered me the alternative of using any other free game publishing website, such as or Kongregate.
  • When my mentor gave me the alternative of posting my game code publicly onto GitHub instead of just linking a giant document to my final presentation, as it would be cleaner that way. Another mentor may have offered me the alternative of using code blocks on the website-creation app I’ll be using to post my code that way, which is also quite aesthetically pleasing.

My Learning Centre

In a few week’s time, I’ll be posting a final post regarding In-Depth, and attached will be a learning centre in which you will be able to see all my learning and play my game too.

I’ll be presenting my learning in the form of a blog post, most likely. I’ll be making multiple sections in my blog post so that I can show the multiple stages of my learning, such as a C# section, a Unity section, and a game creation section.

The specific aspects of my learning that I’ll be focusing on will be the highlights and the basics. This way, it’ll be easier to digest and it’ll also provide some nice bits where I get to share my memorable highlights over the course of the learning.

I hope that my audience will learn some basic knowledge about C# as a programming language, Unity as a game engine, and my game itself and what it took to create it. I also hope they’ll learn about the importance of time and effort from my experience in this project.

My main attraction (aka my game) will be a source of interactivity for my learning centre as it requires the player to play the game in order to experience it.

My plan for the next few weeks will be to keep grinding on finishing that Unity course and to continue thinking about what makes games fun. Once again, thanks for reading, and check back on May 31st for my next, and final, In-Depth blog post, in which you’ll hopefully be able to actually play my game!

Thanks for reading!