Role: Lead Designer & Producer
Genre: Fighting, Party game
Engine: Unity
Platform: PC (Controller and Keyboard)
You're sitting down for a puppet show, until suddenly...
They start brutally fighting! Strings are snapping, limbs are flying!
May the last puppet hanging be declared the master of puppets!
No Strings Attached is a 2 player slapstick fighting game for Windows with absurd and brutal combat. Pick your puppet and puppeteer them to victory as you dominate the stage as the best of three wins. Destroy your opponent and snap their strings by swinging, flopping, and flailing as hard as you can!
You thought this was your ordinary puppet show, but something’s wrong! The puppets aren’t singing or dancing… They’re fighting!
>
Brief creation
(Click to expand) This was a student-led project that ran over six weeks, with teams randomly assigned from our cohort.
We had a team of three designers, five artists, and three programmers (a total of eleven of us). After pitching game ideas, our group chose my puppet-fighting concept.
As the lead designer, I was focusing on all areas of design such as the systems, game theme, UI, audio and making sure the same vision was shared by everyone. As lead producer, I ran each morning stand up for the team, documented the notes and created asset lists along side the other leads.
Producing
(Click to expand) Initially, I was only focusing solely on leading the design but not long into the project I had to take a step up and take on the producer role too.
I had no experience in a production role before so this was my first time managing a team. I used the project management software Hack n Plan to outline and track the team's tasks. Each morning we would have a morning stand-up where I recorded what people had been working on and what everybody would be working on in a shared document. This ensured we all had a more informal way to communicate tasks progression beyond Hack n Plan. The project management worked out well and by the end of each Alpha, Beta and Gold, most of the assigned tasks were completed. Tasks that were incomplete were communicated clearly and reassigned to different stages or people in the team.
Here are some example screenshots of how the asset list and scope timeline were set out:
Day to day stand up snippet
Hack n Plan example
Alpha asset list (Hour delegation)
Arist asset list
Combat system iteration
(Click to expand) Our original combat system leaned heavily on complexity having multiple stances, a manual stamina system and a form of weaponry.
After feedback from our industry pitch, we realised a core identity issue in our game, we didn’t know if we were making a serious complex fighting game or a funny silly beat-up party game. As this was still early in pre-production, we had a team vote and the majority voted for a pivot. We stuck to one side and embraced the slapstick chaos party game.
Here’s a quick overview of how the old combat system worked (complex):
The player had strings attached to their head and both arms.
The player’s head string would only become reachable after both arm strings were gone.
The player had two stances, high and low.
If a player lost their head string, they would die.
The player could punch and block with either arm, in both stances.
High blocks blocked low punches and low blocks blocked high punches.
You could pick up broken limbs to attack players at a longer range.
The strings each had their own health system that would lower when hit.
String tensions (stamina) stamina would regenerate by holding the A button.
The player could punch and block with either arm.
If the player lost an arm string, the arm would become loose and the player would lose the ability to punch or block with that arm.
The player could flail that arm (by spinning the character) to deal damage if an arm was loose.
If the arm took even more damage, it would fall off and the player would be able to headbutt.
Revised combat system (funny silly beat-up game):
The player had strings attached to their head and both arms.
If a player lost their head string, they would die.
Each string had it’s own health bar which would lower when a limb is hit (head or arm).
If the player lost an arm string, the arm would become loose and the player would lose the ability to punch or block with that arm.
The player could flail that arm (by spinning the character) to deal damage if an arm was loose.
If the arm took even more damage, it would fall off and the player would be able to headbutt.
This new system aligned more with the goofy tone our game naturally had from its theme. It was hard for me to change the tension (stamina) system as it was something I came up with completely by myself and was proud of. I bit the bullet however and we reworked the entire thing into a health mechanic. Pivoting had other benefits though! The flail attack was an emergent feature from the change, as it naturally came about from the arms being loose and swung around during testing, so we made it into a mechanic!
Prop Animations & Spawning
(Click to expand) Before working on No Strings Attached, I hadn’t really used the animation system in Unity.
During development, learning it became one of my goals so I could use it for testing. Every project I take on I aim to learn at least one new core skill and I figured this would be something I’d use again in the future. I made simple animations for the props in our scene including, the waves, the birds and the ship sailing past. From learning it for testing, my animations made it into the final build of the game. They weren’t complicated animations at all but it opened up a door to a new skill set.
As well as doing the animation, I wrote the script for the props spawning in and disappearing between rounds. It was a pretty simple script as I wrote it not really understanding c# at the time. The script spawned random objects from a list into another list of randomly assigned spawn points, destroying them at the end of rounds. I re-used the logic from this script in my enemy spawner in Beeranged, so it ended up coming in handy!
Here’s a video of me testing the prop system during development:
Greyboxing
(Click to expand) Early on in the project, I put together the grey box scene for the game.
When models were ready and unwrapped, I'd import them into the scene and we slowly got our final game scene. This is all pretty self-explanatory, however, I wanted to show some behind-the-scenes grey box screenshots of the game in development as seeing the final result was incredibly rewarding.
Here's some screenshots from greyboxing behind the scenes!
Here's some screenshots from the final build behind the scenes!
UI
(Click to expand) I sketched the initial concepts for some of our UI and how they would be shown to the player.
Our whole game took place in one scene, including diegetic UI which reinforces the feeling of the player sitting in the audience of a theatre. We used the stage as the background for all of our menus and showed the info on sign paddles that were raised/lowered. The “cursor” was a spotlight that the player would move around with the joysticks. Here are some of the UI concepts I presented to the artists with the final results as well as some general captures of the games final UI. I want to re-iterate I DID not make the final assets, only the concepts.
Intermission concept UI
Intermission final UI
Tutorial screen concept UI
Tutorial menu screen final UI
Main menu screen final UI
Credits screen final UI
Audio & Music
(Click to expand) This was my third time working on audio for a project, however, it was my first time in charge of music.
The music was a tedious task I worked on throughout the entire project. As none of us had any composing experience, it was up to me to find a soundtrack that would suit our game. This itself was a difficult task because we had to find a completely free-to-use track that fit our gameplay and setting. This task stayed with me right up to the end, and the final song wasn't chosen until a week before the final build. The track we ended up with actually was one of the first tracks I found when looking, so I did learn that sometimes working with what you have is better than looking for something you’ll most probably not find. Along with Josh, both of us edited this soundtrack to make it more fitting to the gameplay and loop seamlessly. I’ve since connected to several composers to avoid running into this situation in the future.
The final result turned out awesome! Have a listen to it here.
Music track (gameplay)
Music track (win screen)
Our lead programmer created an audio system that allowed us have a pitch range and slightly randomise during gameplay, this was so the sounds wouldn't become too repetitve as it was a fighting game and players would be constantly performing the same actions. They were applied to the sounds below. I dabbled in some folly work and used some new plug-ins to create these other sounds:
Intermission track
Punch
Block
Parry (Perfect block)
Limb snap
String snap
New menu open
UI Spotlight (cursor) move
UI Paddle select
Takeaways
(Click to expand) This is what I learnt on this project.
Leadership flexability
This was my first time working on a large project of this size and going in with no expectations was a great strategy. Everybody has a different working style. This was something I had to learn early and take into account when communicating and planning with my team. You can’t plan for everything scenario and you need to learn to adapt to unexpected changes.
Embrace change
Making a nice responsive feeling ragdoll physics game is hard. From a design perspective, the issues we faced early on in the combat system development were quite tricky but it taught me to kill my ideas early and to suck them up. Sometimes even the act of killing an idea leads to the birth of another great one!
New skills
Unity has a lot of fun systems that I'm still discovering to this day, the animation system is super simple and easy to use and has been a core component of most of my future projects. I also added a few handy scripts to my library and some c# tips that will be applied in future projects.
Music is hard
I came to the conclusion this is probably why games make their own soundtracks! Since this project, I have made several connections in the music industry and have met composers who would like to work on future projects. I wish this was something I had done when working on this project as we could’ve had a tailor-made track that could’ve changed in development to correctly reflect the game.
Overall
Seeing my chaotic puppet-fighting concept develop into a fully realized game was truly incredible. The experience, skills and relationships I had and developed during this project are invaluable, it’s really amazing being able to work alongside an extremely talented and like-minded team. I learnt a lot about iteration and leadership in this project, as well as the true value of planning and flexibility.