Planning software development is a delicate affair. If you try to estimate by all means, you’ll probably end up mismanaging your time and resources.
From The Talos Principle to Hitman – How Custom Tools Helped Some Great Games
Sometimes the best way to approach problems is by creating solutions yourself. Get inspired with a selection of custom-built tools that helped development teams work easier, faster, and more productive.
Fixing small things is a big deal.
Saving 2.4 min a day or 3 hours a month may not seem like much but when you take into account the size of your team, you can actually end up saving up to 1 year of project time (we’ll explain it later, so read on).
Now that's much more impressive.
Analysis of 5 custom tools made by various specialists (from Playdead and Lizardcube, among others), as well as tips they provided, brought up this conclusion:
With a little effort, custom tools can give you a solid productivity boost.
They not only speed up the development but also allow designers and developers to stay in the state of flow, helping remove tons of frustration.
The key to success is to look for the right opportunities, and then build and use the tools wisely.
Now let's get to the point, so you can leave this article with a dose of inspiration and a few action ideas.
When frustrating tasks steal your time
Custom tools can help you deal with annoying tasks.
During his GDC talk, Playdead’s Brett Taylor gave a real-life example of how a simple tool allowed him to save some time and nerves. All of this started with surprisingly frustrating spikes.
Let’s take a look at raw data and analyze Brett’s case step by step.
Brett was always confused about how to rotate a spike. Select a Spike, select Z rotation, type in 90. OK, but is it 90 left or -90 left?
Since the game he was working on had a lot of spikes, this was getting more confusing and annoying.
Brett knew that he was never rotating spikes by anything other than 90 degrees.
He decided to make auto-rotating spikes that would rotate when you touch the surface. Brett anticipated the implementation would take him about 2 hours, but as it turned out, it took only 90 minutes.
Once the automation was implemented, the manual rotation took around 10 seconds for each spike. Brett was rotating spikes at least 50 times a day. That’s approximately 3 hours a month.
Rotating spikes make Brett losing his groove a little bit. His custom tool helped him focus and made his work easier and much less frustrating.
Action item for you: identify the most repetitive and/or frustrating tasks your team have to deal with. There may be space for low-cost improvements here.
Distractions and repetitive tasks disrupt your flow.
Every game designer and developer wants to "stay in the groove" and achieve that perfect flow when you can work completely free of distractions.
Getting there can be hard, especially when your day is filled with repetitive tasks and idle moments. When that happens, your productivity diminishes.
Imagine you have a repetitive, annoying task that takes you 20 seconds to deal with. And you have to deal with it 12 times a day, which in total steals you 4 minutes.
You probably think that 4 minutes is not that much. But Brett's GDC example proves that sometimes it's not about saving time. It's about staying in the grove and that alone is worth building a new tool.
Action item for you: repetitive tasks may not always be time-consuming, but it's worth looking at them from the flow point of view. This way you can keep your workflow consistent and stay productive.
When your workflow could use some improvement
Let's stay with Brett for a little longer and take a look at yet another small tweak he designed: the flag system for his game Linelight.
When working on the game, Brett used a set of symbols to flag the levels he created. This let him immediately see if a given level is a testing level, a rough idea or sketch, a work in progress, a good level, or a great one.
This system, which was baked directly into the game editor, gave him a better scope of the development process, as he was changing and rearranging things all the time. The levels were constantly in flux but having each of them flagged made editing much easier.
Fewer distractions, better workflow, more convenient work.
Action item for you: Take a closer look at your workflow. Sometimes a simple system of flags or labels can make it easier to navigate through the work you've done and spot things to improve.
When bugs are getting missed because it’s hard to report them
Catching bugs and fixing them at the early stage can help you improve your workflow and increase iteration time. But sometimes bug reporting can be problematic – both in software development and game development.
While this is something that's rarely talked about (or even noticed), improving the bug reporting system can make a big difference. During his GDC Europe 2015 talk Alen Ladavac – currently a Technical Director at Roblox – explained how Croteam, the studio behind The Talos Principle, created an environment of tools and services designed specifically to deal with bugs.
Bugs getting missed at the early stage, extending the iteration time.
It all starts with a simple question: how to make reporting bugs as simple as possible?
Testers often make notes on paper, or alt-tab into a bug reporting application. This takes time – and remember that each time they also have to describe how to actually reproduce the bug. All this makes writing bug reports a hassle.
In order to streamline the process, Croteam introduced a bug-report-system called “World Bugs System” which let them report bugs directly inside the game engine. All it took was a single keypress and each bug's position was automatically pinned down and could be easily replicated by a designer delegated to fix it.
With the new system on board, reporting a bug took roughly 10 seconds. This improved the iteration speed and, most importantly, the quality of the game.
Before you make a tool (or change one)
Is it really worth it?
Small improvements can stack up over time, so it's always worth taking a wider look at what you're trying to achieve and how tiny tweaks can help you get there.
Jim Brown, game designer at Epic Games, talked about it at GDC 2010. He brought up the Phillips effect to show that even seemingly insignificant time savings can really matter in the bigger picture.
Take a look at his calculations:
Saving 2.4 min/day.
x 100 employees = 240 min/day = 4 hours/day
4 hours/day = 20 hours/week
20 hours/week = 6 man-months of your time a year
From a 2 year-development perspective, saving roughly 3 minutes a day can lead to cutting a whole year of project time.
Hack the content first
Let’s get back to Brett Taylor’s presentation.
His general idea on the decision-making process around tool development is simple: hack the content first, get it playable. This will give you a much clearer idea of which tools you actually need.
The design may change and the more specific a tool is, the higher chance of it becoming obsolete.
At the same time, it can be the other way around.
You can get too attached to a tool and, even though you may need to cut a feature, you may be subconsciously inclined to leave it in – just because you’ve got a tool to make stuff work and don't want it to go to waste. Most often it’s not the right decision for the project.
Remember: “It's about saving time, not making amazing tools...”
Tools don’t have to be perfect. They are made to save your time and energy and to keep you away from distractions.
Cornut, a programmer from Paris-based studio Lizardcube, emphasized keeping it simple:
“Tools don’t have to be amazing, they just need to serve a purpose. Make your life easier/happier or make your game better.”
Omar also encourages us to not be scared of making throw-away tools. Even if they will serve you only one day, week, or month, but making them is really quick and will make your work a lot easier, go for it.
Brett Taylor would agree. He claims that your goal shouldn’t be creating a perfect tool, but a sufficient one. It’s not about making the coolest tools possible. It’s about saving time and energy.
He explains that on the example of a buggy Linelight map editor. While working on the game, Brett had to rapidly click 2-10 times to open up a level. Some level react bounds were wrong, but connecting levels still required opening each level manually. All of that could have been automated and yet Brett didn’t fix those issues.
He didn’t actually have to – the time it would have taken to fix them might not have balanced it out.
… but fixing small things can make a big difference (or when to actually improve a tool)
Maybe you already have a tool?
It turns out that a few small fixes can make it a lot better, save a lot of your team’s time, and improve your developers' and designers' work.
During his 2018 Game UX Summit talk, tool designer Robin-Yann Storm brings attention to tiny details that can make a huge difference. It’s a good idea to review your tools and look for potential improvements. Robin claims that your tool's health affects developers’ work quality.
“Small UX features can have big impacts. Find them and utilize them”
Robin mentions the Multiplier of Tool Design:
Okay tools, good devs = x 1
Bad tools, good devs = x 0.5 (you need to hire many more great designers/developers to make sure you can make something great)
Good tools, good devs = x 2 (your developers/designers qualities are amplified to make a game of even higher quality)
Storm also talked about a problem he noticed when working on a Hitman game for IO Interactive.
A hidden problem:
Robin and his team spotted the problem with the transfer gizmo (or manipulator). They noticed that grabbing gizmo axis can be really hard when working at certain camera angles.
This relatively small inconvenience was costing the studio lots of time and money.
Shortly after, they interviewed developers and did field studies. What’s interesting is that nobody noticed any problems.
Why? Simply because they've gotten used to the buggy interface and stopped noticing its shortcomings.
“We have something that is annoying and frustrating to use, which lowers energy. It costs production time because people have to constantly work around this problem. Content quality suffers, but sometimes you may be so annoyed looking at something from an angle that you are like “I don’t wanna deal with this thing.”
After 2 days of research and another 2 days of implementation, the editor was fixed so that all arrows flipped and adjusted to the camera location. Level designers could easily grab the gizmo and move things around from every perspective.
Action item for you: Identify tiny iterations and improvements that can make life easier for a lot of people. This will let you save a lot of time.
For inspiration, a few other benefits of tools
It’s easier to innovate
Omar Cornut encourages teams to build their own tools. He also underlines the importance of looking beyond what's readily available. Only this way, Cornut claims, custom tools can boost productivity and inspire innovation.
You can make sense out of the mess
Cornut points out that while there are many available tools for level design, there are still not enough of those for game design and debugging.
He claims that tools are a way to make sense out of the mess – especially interactive tools to visualize the game logic and game states. They're also a great way to share knowledge.
Communication and documentation are better
In his talk, Omar Cornut also names a few not-so-obvious benefits of tools:
- Communication – designers know what’s behind the game's black box and don’t need to ask programmers for help. This saves everyone a lot of time.
- Documentation – tools can give people working on a game a better understanding of the development process and convenient access to the information they need. They can be an alternative to complex (and often outdated) project documentation.
Break the vicious circle
Look for the things that keep you away from staying in the state of flow – repetitive tasks, things that annoy you, moments you wait around doing nothing.
Automations and small improvements can be helpful, but you need to evaluate the time and cost of their implementation to find out if it's really worth it.
Saving time and speeding up your project is one thing. Another is dealing with tiny distractions – eliminating them helps the team stay in the groove and work more efficiently.
It's a vicious cycle: we all have an urge for productivity and better time management that often leads us to even more frustration and, in turn, decreased productivity. Custom-built tools and solutions can help us break it.