Market masher logo

IGB400 - Game Studio 3: Game Innovation Project Pitch

Game Programming Project: Market Masher


As part of the final year of my Bachelor of Games and Interactive Environments degree, I am undertaking the unit IGB400: Game Studio 3 – Game Innovation. This unit aims to propose and develop a project that will fill in aspects of our portfolio that were otherwise lacking to be industry ready.

My past projects have highlighted my various works in web development and graphic design, such as developing a Spotify web app to create unique cat images based on a user’s Spotify listening data (Catify), designing a website for a local band (Big Wheels), or a useful timeboxing and day planner web app (EvoCal). As of recent, I have been focusing my efforts on a generalized Software Developer/Programmer position.

I am proposing the development of a dynamic browser-based video game titled Market Masher. This project will be built using Unity and WebGL (Web Graphics Library), a JavaScript API for rendering high-performance interactive 3D and 2D graphics, showcasing my ability to navigate multiple programming languages and platforms (Mozilla, n.d.). The goal of this project is not only to exhibit my skills but also to push the boundaries of what I have previously achieved in web development. By incorporating elements of game design and object-oriented programming (OOP) using C#, this project fills a significant gap in my existing portfolio, which has primarily focused on web applications, UX/UI design, and static site development.

Industry Context and Skill Development


The gaming industry in Australia is a rapidly evolving space, with the global market expected to reach $294 billion in 2024, and 2021 saw the digital games industry contribute $226.5 million in revenue to the Australian economy (Australian Government - Department of Foreign Affairs and Trade, 2022). There is a significant demand for developers who can showcase critical thinking and problem-solving skills across various technologies and frameworks. As someone who has dedicated a substantial part of my career to web development, I recognize the importance of expanding my skill set into additional programming languages and disciplines of tech. Mastering game mechanics, AI logic, and interactive environments will allow me to diversify my technical capabilities and be more competitive in the broader software development industry. This project will allow me to work extensively with OOP principles within Unity, leveraging C# as the primary programming language. The design of Market Masher will challenge me to create an efficient and interactive experience, balancing performance and playability, especially within a browser environment through WebGL. Building this project will deepen my understanding of event-driven programming, physics simulation, asset optimization, and user experience in a medium that will bring interest to my portfolio.

Project Game Description: Market Masher


Market Masher is a 3D side-scrolling arcade game set in a futuristic skyscraper, where players take on the role of a market shelf-stacker in a chaotic, high-tech environment. The core gameplay revolves around racing against the clock to pack as many items onto the shelves as possible. However, the game introduces various obstacles to challenge the player, such as malfunctioning robots and random in-game events designed to slow them down and impede their progress.alt

Figure 1: A simple game scene setup showcasing the game state and objects



The gameplay loop is simple yet engaging. Players must strategically manoeuvre around the shelves while managing incoming robot civilians who unpredictably block their path. These robots are programmed with varying behaviours—some are slow-moving obstacles, while others actively pursue the player, creating a sense of urgency. The combination of time constraints and AI obstacles forces the player to think quickly and make fast decisions, increasing the game's challenge and replayability. alt

Figure 2: Robot slows player movement, player can dash through robots or throw grocery packages to damage them



The game’s setting is in a visually minimalistic yet futuristic cityscape, designed to evoke the feeling of a busy, vertically sprawling market within a high-rise building. The aesthetic choice to keep the graphics basic serves two purposes: optimizing the game's performance for web browsers and reducing development time on modelling, allowing me to focus on refining the core mechanics and interactivity of the game. Despite the simplified graphics, the use of lighting effects, physics-based animations, and particle systems will bring the game world to life and create an immersive experience for the player.

Project Justification


While the Market Masher project introduces a new medium to my portfolio, the decision to use WebGL for browser play is in line with my experience in web development. This connection allows me to blend my existing skills with game development, ensuring the final product runs smoothly and efficiently in a web environment. Creating a game that is accessible directly from a browser without the need for extensive downloads highlights my ability to innovate in cross-platform development. 6,166 indie games were released in 2023 on Steam which serves as a platform for developers to garner public visibility (SteamDB, 2024). In the future, the possibility of the project being extended to be released on Steam is feasible and made easy through Unity’s built-in platform install modules.

What sets Market Masher apart is its utilization of Unity's physics engine to simulate realistic item stacking and dynamic interactions with the environment. The behaviour of the AI-controlled robots is another innovative feature. By developing intelligent enemies with varied and adaptive behaviours, I will delve into AI programming and expand my knowledge of NPC mechanics. Additionally, the incorporation of event-driven mechanics, such as random environmental changes (e.g., conveyor belts speeding up or shelves moving), will introduce an extra layer of complexity to the gameplay and showcase my ability to code intricate, event-based scenarios. The skills I develop through this project will not only demonstrate my proficiency in game development but also reinforce my problem-solving abilities, adaptability to new technologies, and creativity in designing user-centred experiences. Ultimately, Market Masher serves as both a technical showcase and a testament to my growth as a well-rounded developer prepared to tackle complex challenges in the ever-evolving online landscape.

Outcomes and Deliverables


Expanded Technical Skillset: Development in Unity, C#, WebGL, and AI programming will demonstrate my ability to work across new and diverse platforms.

Cross-Disciplinary Experience: Showcasing the blending of web development and game development, further enhancing my adaptability as a developer.

Portfolio Addition: Filling a gap in my existing portfolio by adding a project that highlights interactive and dynamic systems, unlike previous work centred on static web applications.

Optimized Web Experience: Delivering a browser-based game that reflects a seamless, high-performance experience within the constraints of WebGL and browser limitations.

With Market Masher, I aim to elevate my portfolio by showcasing a sophisticated project that demonstrates both technical and creative growth, while continuing to advance my career as a versatile developer capable of thriving across multiple platforms and technologies.

References


  1. Australian Government - Department of Foreign Affairs and Trade. (2022, February). The booming Australian digital games industry. https://www.dfat.gov.au/about-us/publications/trade-investment/business-envoy/business-envoy-february-2022/booming-australian-digital-games-industry
  2. SteamDB. (2024). Steam Indie Game Releases by Year. https://steamdb.info/stats/releases/?tagid=492
  3. Mozilla. (n.d.). WebGL: 2D and 3D graphics for the web. MDN Web Docs.https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API

Year

2024 - Ongoing

Disciplines

Unity

C#

WebGL

AI

resumegithublinkedin

© 2024 Will Doyle