First Experience Of A Game Jam

Akhil Sharma
6 min readFeb 27, 2022

--

Game jams are accelerated game creation events usually taking place throughout a short period. A variety of learning outcomes from game jamming has been promoted through these events, with learning being a common motivation for attending game jams.

In this, I would like to discuss the learning experiences of my first-time participation in the Global Game Jam. Results suggest that a wide spectrum of learning is experienced during a game jam, and game jams offer at least a temporary heightened sense of creativity and competence. however, the assessment remains an issue and learning benefits may be contingent on the jam setting. All three basic psychological needs listed in self-determination theory are potentially fulfilled by game jam attendance.

In this Game Jam, the primary topic was “IT’S NOT REAL

Having No knowledge regarding or any experience of a Game Jam before and then developing a game in a 7 days constraint was a challenging task for me too.

DAY 1: Analyzing the Idea of the Game Jam Theme

The theme “It’s Not Real” was in itself a challenging task as having time constraints and the task of developing a playable demo of that demo was not that easy. At Start, things were kind of messed-up deciding was having a very difficult mission in itself.

3D platform in Unity was decided after decoding at the aspect of Time Management, Familiarity with some work in that Software and mainly the assets Provided by the Unity Engine.

Planning the game plan for this Theme

After the discussion and lots of test results performed Unity was finalized but the challenge was not ended at this point as now a game plan was to be decided for making the clear idea of the game that we were going to develop this week.

DAY 2 & 3: Started Setting-Up the Environment for the Game

After creating an idea for the game related to the theme mentioned. It was time to set up the environment and scene that would be worked on to yield the desired output.

Scene setup comes along with a lot of challenges and targets with itself, Some of the criteria which we witnessed while developing were:

  1. Setting up the lighting defining
  2. The position of various elements that will be used in the game when we enter the play mode
  3. Creating obstacles and challenges for the player in the game.

After which comes the part of Scripting for assigning all the environment variables according to their sequence in the scene and completing the gaps for the game to function properly.

DAY 4 & 5: Getting Bugs while Scripting

During the part of Coding errors are bound to come but still solving them brings mystery and challenges. The scripts of C# are always challenging in them as importing the correct library for making the work somewhat is simpler is tough.

There are some concepts in Unity that require some amount of prior knowledge even for a simple task that hardly requires 10–15 lines of code that would solve your problem. Some similar problem that I face was implementing the

 IEnumerator( ) Function

This is the terminology used for enabling us to destroy any spawned game object at any point in the game world. Unity requires the game object to be a prefab or available in scene hierarchy in order to spawn it. So, the concept I used to spawn all the essential stages that a player must clear to enhance to the next level of a scene, and then that object should be eliminated from the game world for removing the chances of colliding with that object again. There was always an error that was unable to identify the given constraint for performing the spawning purpose.

As a final step, let us add a new script to make the development process a bit smoother -

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

The complete C# file now -

public class stage2completed : MonoBehaviour
{
public GameObject stage2;
IEnumerator SelfDestruct()
{
yield return new WaitForSeconds(4f);
Destroy(stage2);
}
private void OnTriggerEnter(Collider stage)
{
if (stage.tag == “stage2”)
{
Debug.Log(“stage2 completed”); stage2.gameObject.SetActive(true); StartCoroutine(SelfDestruct());
}
}
}

Now,

MonoBehaviour.Invoke() Function

The Invoke functions allow you to schedule method calls to occur at a later time. The method Restart() was scheduled to be called at a certain time for bringing the player back to spawn if the path chosen by them were incorrect. There was always an error that was unable to call the function due to bounded over some other object implications.

This is something that brings upon a lot of stuff that is not that relevant from my perspective but requires time for solving all the issues related to calling Function in “ “ commas and defining a certain amount with time as an attached body for that function.

As a final step, let us add a new script to make the development process a bit smoother -

using UnityEngine;
using UnityEngine.SceneManagement;

The complete C# file now -

public class collison : MonoBehaviour
{
public GameObject wrongPathAnimation;
private void OnTriggerEnter(Collider Colliderinfo)
{
if(Colliderinfo.tag=="wrongPath")
{
Debug.Log("collided");
wrongPathAnimation.gameObject.SetActive(true);
Invoke("restart", 3f);
}
}
void restart()
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
}

These were some of the major errors which were causing some problems while debugging the Scripts before the Play Mode. For more info, you can see the codebase

DAY 6: End Moment Changes In the Game

Before the day of submission during the trial run of the game “This Is Not Real” some of the major changes were needed to be implemented as the base created till now was too simplistic for anyone to crack and was not perfectly fitting the theme.

Due to this, I was stuck with thinking of an idea that would be implemented at this short interval of time and would add a bit of a flavor of an interesting quest for players to play.

Now in the past, I had played a game called Control which helped me get an idea that was quite interesting and fitting the theme accurately. In this game, there was a scene in which you were assigned some task and you were kind of manipulated as in reality you were required to do a simple action that was present in front of you and was the key to breaking this loop. This was the task that was quite interesting at a point as you are doing some kind of a non-real thing that didn’t cause any impact on that character’s story and was only used for making the story a bit interesting and challenging as still, you had to find some ideation for that clue to be broken.

After all things, this game Jam came to an end wherein I just submitted the game created by me called “This Is Not Real “

This game was published on Itch.io wherein you can play this game and comment your feedback regarding the handling, story, and many more aspects of the game and guide for any updates required for enhancing the gameplay quality of this game

The link of the gameplay is by clicking on This is not real

Here is also a small demo of the gameplay for viewing.

some of the insights of gameplay

--

--