Week 4 and 5: Game Jam 1 (Time and Project Management)

This week has been the first game jam so this post will be a review of the jam and how it went.

The Theme:

The theme was a newspaper article of my choice and this Dixit Card:

How I interpreted the theme

I chose to view it as an old man, or prophet writing or predicting how society will play out, with others watching over as we see society sprouting from the pages of his quill, the key in his head representing a clock key constantly turning and ticking onwards.

I thought about the potential of multiple futures and so initially thought about multiple game endings each leading to a different news headline. Keeping that in mind but putting it to one side, I realized it would be difficult to find that many papers and so thought about how I would use the headline. I ended up deciding that famous headlines would work best as everyone would know about the topic. I decided on “War is over” from WW1 however this could have created a dark game and I wanted something a bit more lighthearted. In the end, I chose two papers going back to my multiple endings idea. This would be the bad ending:

While this would be both the good ending and the headline I used as the brief:

What did I build

I wanted to experiment with creating card game systems and so built a card game where the goal is to generate the maximum amount of “science” before you generate too much “war”. The focus was on the technology required to create a card game so I never had any intention to create any art, for the next jam, I want to do the opposite, I want to create an art-based game first with simpler code so I can show both sets of skills. I chose to use the Unreal Engine as it’s my usual engine of choice and I wanted to get some experience with the experimental UE5 in case I need it for other work in the future. I found it to be mostly the same as UE4 but did find several features that have errors or need work which I will report so that they can be fixed.

The main challenges I faced were twofold, firstly I spent so much time looking at how the card game would work that I forgot I had to make a second player to play against, it was easily addressed given I had made the systems very stable but it happened very late in the jam and I should have focused more on the planning to avoid an issue like this. The second issue was my time management, I had a lot of work in the first week of the jam so only got the majority of the back end finished, this left only a few days to actually build the playable portion of the game. I did finish by the final day but did note that I needed to be more careful with my time management on future projects, I think a more formal plan may have helped and so will be looking into creating a 3D printed task manager of my own design, with cards that represent hours that get slotted into a tower of limited space, only so many tasks can be added each day and tasks can be added to a backlog bowl, much like sprints but in a way that will help me visualize the time.

Although I wrote about the negatives first, my negligent time management was pretty much the only thing that went wrong, the project itself came along very smoothly and worked exactly how I expected, a roaring success. I have successfully created a framework that any card game could follow, with cards that can be incredibly rapidly scripted following events triggered at set times during a game. For example, if I wanted a card to have a new ability, I just pick the trigger time and program what it does, I could even improve the code by adding functions for commonly used abilities, such as combat that currently needs to be programmed per combat-capable card (although it does let us change how combat works per card at the moment which I did use on the commando card which doesn’t take damage when it attacks but always loses when attacked). Overall I would call this jam a success, I created the game I wanted in the time I had, I also created and learned better ways to use the system I had designed for card games. The only thing I would have liked to do more of is to improve the visuals but sadly card games have a massive art requirement and I knew at the start it was not going to happen without serious dedication so never planed to do at all, that’s why I am learning towards focusing the next project on art and sound instead of complex mechanics.

The major mistake

There was actually an additional error I made that actually does have a large impact on the success of the project and deserves talking about separately. Initially, I had planned on the project being playable on a web browser, and the game, by all means, would work on a web browser if not for a single major issue.

Turns out that I relied too much on my past experience as UE4 used to support web browsers however as of a later update, support for web applications was withdrawn and so neither does UE5. I had missed this until late in the project meaning the project had to be built for windows instead of for the web, not so bad during a jam but potentially disastrous in a live project. I should have done a viability check on the engine before starting the project but given I use it regularly and had used it for web games in the past, assumed too soon that it would still support it. A lesson for the future to be sure. If this happened during a project, I would be able to transfer the coding techniques to a new engine or language but would have to essentially recreate the whole project which would not be a fun time.

Leave a Reply

Your email address will not be published. Required fields are marked *