A gruesome game mod where you play as both KILLER and DETECTIVE!

— PLATFORM

PC


— ENGINE

GameMaker Studio 2


— TEAM SIZE

7 Contributors



[MOD DOWNLOAD]


[ORIGINAL PROJECT]


Carnage Noir is a game modification project created from Jonathan Soderstrom’s Super Carnage, a top-down shooter prototype from 2004 that eventually became the hit game Hotline Miami.

Responsibilities:

– Developed original mod concept and helped maintain scope for 9-week production cycle

– Designed level layout interactions for Warehouse and final confrontation

– Programmed new combat mechanics, enemy types, weapons, and detective mode using pre-established frameworks

– Analyzed and cataloged original project’s source code for repurposing and bug-fixing unused content

– Maintained team’s GitHub depot for source control, resolving push conflicts and change-clash errors as needed

WHAT IS "SUPER CARNAGE?"

In 2004, a game developer named Jonathan Soderstrom created a technical prototype for a top-down 2D shooter in GameMaker Studio.


The demo, called Super Carnage, featured a single room, a handful of roaming enemies, and a player character who could move through the space, pick-up/use melee weapons, throw small objects, and summon a machine gun to shoot with.


The fast-paced combat loop in this prototype would go on to inform Soderstrom’s later work on the Hotline Miami series, which shares many features with Super Carnage.


Despite the success of its eventual successor, the original prototype went missing and was considered lost media for many years. In 2019, however, the project files were rediscovered and posted on GitHub for preservation. Despite its age, the project is still compatible with modern versions of GameMaker Studio, allowing our team to create new content for it.

WHAT IS "CARNAGE NOIR?"

Carnage Noir is a game modification built off of the framework of Soderstrom’s Super Carnage prototype. Our team repurposed the source code and added our own scripts to turn the game into a fully playable experience with three new levels and a detective mode, complete with a film noir aesthetic.


Each combat encounter the player completes with “carnage guy” becomes a crime-scene that players must search as the detective, slowly unraveling the motives behind the brutal attacks. The story culminates with a standoff between the detective and his quarry, with only one living to tell the tale in the end.

There are three levels in the game, a Safehouse, a Motel, and a Factory. Each provides different set-pieces for the player to battle through, as well as clues to the overarching story that the detective must later piece together.

Enemies patrol each setpiece and react to changes in the environment such as doors opening and bodies being discovered. Several of these elements were already present in the prototype, but needed adjustment and bug-fixing to work in the context of a full game

Bodies left behind by the player during Carnage mode will be replaced by chalk outlines during Detective mode. Oftentimes the murder weapon can be found at the scene of the crime… because the player left it there themselves!

WORK OVERVIEW

GAMEPLAY PROGRAMMING

Despite its resemblance to the Hotline Miami series, the Super Carnage prototype is far more basic in regards to combat, lacking many of the mechanics that can be found in its successor. For our mod, I worked in GameMaker Studio 2 to reimplement these lost features, such as throwing attacks, ammo limits, and enemy weapon variety.

This work entailed extensive analysis of Soderstrom’s original source code, determining how game systems worked and how we could repurpose them for our new content.


This was made especially challenging as some scripts utilized outdated GameMaker frameworks, often requiring me to rewrite them entirely for better stability and efficiency.

Using these frameworks, I implemented new level interactions for use in designing our three main combat encounters – including weapon pickups, conveyor belts, and custom enemy behaviors.


In addition, I scripted the game system used to manage transitions between Carnage and Detective mode, as well as the final encounter between the two characters and its multiple endings.

Finally, I applied my knowledge of the original source code to resolve long-standing bugs and introduce further quality of life improvements to the game loop, such as a functional HUD for ammo count, button prompt UI for combat mechanics, and the film grain camera filter that went unused in the original version.

LEVEL DESIGN

I was responsible for designing the layout and interactions for the Warehouse level and final stand-off.


Warehouse is the third and final combat map in the game, and was also the last level we tackled in development, allowing me to fully utilize all of the new mechanics we had established throughout the project.


In contrast to my typical level design process, most of Warehouse was developed directly in-engine rather than on-paper. I took an experimental approach when crafting the layout, testing different arrangements and making iterations until I reached a result my team members and I enjoyed.


Being the game’s final level, I designed Warehouse to be a comprehensive challenge, with each section providing different scenarios to test the player’s combat ability – from narrow hallways to interlocking mazes of storage crates and conveyor belts. Enemy behavior was tailor-made so players would need to analyze patrol routes and plan for the most optimal path through the level.


The final encounter between the Detective and Killer is a simple dialogue sequence followed by a pseudo-quicktime event where the killer lunges forward with a machete, giving the player (as the detective) only seconds to fire their weapon and end the carnage. The ending of the game, in turn, depends on who survives this stand-off… if anyone survives at all.

FULL LEVEL BREAKDOWN