When we started developing new game projects in more recent years, we found limitations in our gameboard technology used by games such as Lily’s Garden. At the same time, we could also see that the match-3 gaming market was moving towards a very fluid gameboard experience – whilst the post-move visual animations are running, the players are already able to make their next move. This was a limitation in our own technology which we wanted to overcome.
And so a small team of Tactilers set on a mission to rebuild our core gameplay tech in order to increase our gameboard capabilities. We sat down with Lasse, who has been on the team since the very start, and Niels, who joined it a year in, to learn more about the why’s and the how’s of what they’ve been doing and to find out what this new tech enables them to do today.
![](https://tactilegames.com/wp-content/uploads/2025/01/DSC08573-1-1024x683.jpg)
Starting from scratch
Our ‘old’ gameboard tech was set-up in a way that whenever you made a valid input (i.e. made a match or set off an in-game booster), its logic would instantly get solved. This meant that you had to wait for the visual presentation to complete before you were able to make the next move. You basically had to tap and wait, and this limited us both in the experience we wanted to give to our players and in how we worked on the gameboard from the development perspective. Developing the connection between logic and visuals was often troublesome because time, as a concept, differed between the two parts. This is why our gameboard team decided to build new gameboard tech which allowed them to move time to the logic and give them the flexibility to do a lot of extra things on top of that.
Building gameboard tech, however, is no small feat. Gameboard tech is incredibly complex, simply because there are so many little things and combinations that can happen within it. It took a team of 3 people, including Lasse, several months to get it to the place they wanted it to be. They started off with creating core building blocks, made several different versions, and then started testing. It was very much a trial and error process. “At the beginning, you think there’s stuff that is really smart architectural design, but then you see that in practice it doesn’t really work. We learned a lot just by doing things, testing them and making changes afterwards,” says Lasse. The learn-as-you-go process is still ongoing now, 3 years later, but the rate of change is becoming less common as the team gains more and more experience with each new case.
The best thing is that this new technology can now be used to do practically everything gameboard related – whether it’s a match-2 board, match-3, merge-2, merge-3, or something completely different. This is because it is built on the core concepts of an interactive gameboard, instead of catering to a specific game genre. Building it from scratch gave us so much experience and insight into where we can go with our new gameboard tech. This is important because this new tech will likely be integrated into every new game project we start working on.
![](https://tactilegames.com/wp-content/uploads/2025/01/IMG_5425-1024x473.png)
![](https://tactilegames.com/wp-content/uploads/2025/01/File-1024x472.jpg)
The harsh reality of building new tech
New gameboard tech was initially built for a game called Makeover Match. This was a brand new project which we started working on in 2021. As it was on a much smaller scale compared to a game like Lily’s Garden, it presented the perfect environment to build, test, implement and iterate in.
The team invested a lot of time into building this new technology and eventually more and more people joined the mission. It took an incredible amount of work, dedication, consideration and support to get it up and running, but the long-term benefits were worth the initial investment.
After they had the new gameboard tech working in Makeover Match, they decided to take the next step and implement it into Lily’s Garden. This presented a challenge on a completely different scale.
They knew going into it that Lily’s Garden is a monolith and that this would be a big task. Everything gameboard related basically needed to be re-coded from scratch. On top of this, the game had over 10.000 levels, which all had to work after being moved to the new tech, and the team had to be extra careful to not miss out on any edge cases. For nearly an entire year, they had to run Lily’s Garden on both game boards at the same time, to ensure that everything performed as expected. “It was a difficult time,” say Niels and Lasse, “But now we’re so incredibly happy that we did it!”
Once the new gameboard tech was up and running in Lily’s Garden, we were able to focus on using it to build new projects. Having all of our games based on the same core technology enables us to reduce the overhead. Firstly, it is easy for our game programmers to move in between projects because the code architecture is shared. Secondly, it makes it simpler for us to scale and maintain the tech. When we discover an issue in a core building block, we can fix it in one game and then easily update it in all of the other games as well. The new technology therefore provides us with a lot of benefits.
Clear separation between logic and visuals
Despite rewriting the entire system from scratch, the basic principle of having the logic and visuals clearly separated remains. This protects us from visual changes causing bugs in the logic and it’s something we highly value. The main difference is that the logic now progresses in sync with time, mimicking real-time behavior. Simulating time within our logic in this way allows the player to make moves while pieces are still falling (or performing other actions, like exploding).
This clear separation allows us to run our gameboard simulations in a more deterministic manner, which gives us time. It also gives us the ability to execute logic independently and at a higher tick rate, which increases speed. This capability offers numerous benefits. For example, the team now has quick access to logical test scenarios that help protect against recurring bugs. When issues arise, we have developed a tool that lets us replay levels exactly as they were played. All of this is crucial when developing something as complex as gameboard technology, simply because it has so many edge cases (just think of all the combinations a player can make!).
Separating the logic from the visuals also safeguards us in future improvements and enables us to stay agile and keep moving fast. If we want to be able to play the game fast, test new things and move forward faster with technical improvements (such as new AI tools), we do not have the luxury of time to spend on things such as waiting for visuals to play out.
Speaking of making improvements, when it comes to gameplay tech, we need to keep in mind that even the most minor changes can have a massive impact on the gameplay experience. For example, if we speed up booster logic (like making all the rockets go off at the same time), it completely changes the outcome of player moves, which can then alter the difficulty of our levels. So we always have to keep these things in mind when trying to optimize the technology.
What helps us to maintain high quality of everything that we do though, is strictly following the same core coding principles as a team. These include clean code, SOLID, DRY and unit testing whenever possible. In particular on the logic side, we’re trying to keep things neat. On the visual side, however, we try to be a little bit more pragmatic. Here, we try to focus on what will make the levels fun to play and appealing to look at.
Building customized tooling
Building our technology from scratch has also allowed us to develop a range of customized, shareable tools over time. These tools include asset management, improved A/B testing capabilities, better data gathering, level replays, test scenarios, level search tools, level bulk adjustments, and many more.
Being able to share these tools across our teams saves us considerable resources, which can instead be spent on enhancing the core gameplay experience.
Writing this kind of modular code takes a lot of time and it took the team a lot of reviewing, testing and re-writing to get it right. But the team believes it’s worth the effort and once it’s all in place, it gives them the ability to do so much more with this technology long-term.
A great example of that is the fact that all the different game teams can take these core building blocks to construct their own projects. The teams have the freedom to use the core gameboard tech however they want in order to create the logic and the game feel they wish to give to their players. This means that Lasse, Niels and their team do not need to involve themselves into the details of what they are doing in other games and can focus on supporting Lily’s Garden gameboard and the core tech itself. Lasse adds: “We want to give the game teams the freedom to express themselves as they want, and we just support them along the way with these core building blocks. It’s about guiding them, not limiting them.”
Plans for the future
Now that the core building blocks are in place and being used across a number of projects, we can allow ourselves to dive deeper into the visual side of things. This means that if an artist or a designer has an idea, the programmers would like to be able to support its implementation using this new technology.
For performance reasons, the gameboard programmers also started looking into the areas where they have more heavy-performance on the logical side. They are currently exploring using Unity’s Job system*, which will enable them to, at least in some cases, enhance the performance drastically.
To support this testing process, the team started a small book club for gameboard programmers. The aim of it is to provide a space for deeper discussion on how to improve the general look of the architecture when using the Job system and how to integrate it best within the existing tech structure at Tactile.
* Unity’s Job system – The job system lets you write simple and safe multithreaded code so that your application can use all available CPU cores to execute your code. This can help improve the performance of your application.
About the co-authors
Lasse Beck Knudsen has over a decade of experience in game programming, having worked on a variety of projects both in Denmark and in the UK. He joined the Tactile team in 2018 and has since then grown into leading the efforts of all core gameboard related things.
Niels Meijer started his journey in the gaming industry in 2017 back in the Netherlands, where he spent the first years of his career working on city builder games. In 2022, he joined our team and after supporting both Lily’s Garden and Makeover Match productions, he settled on the Gameboard team. A fun fact about Niels is that he used to run a (quite frankly very) popular YouTube channel about Unity development.
A lot of Art students get told early on to be specialists in their field, to focus on something and get really good at it. Our 3D generalist, Anne-Karina (AK), feels otherwise. In particular in the worlds of mobile and indie gaming, being a generalist is super important. This doesn’t apply to your art skills only – it’s super important to also have the mindset of continuous learning, for both art and software.
AK recently spoke about this topic to the students at DADIU (the National Academy of Digital, Interactive Entertainment), with the aim of showing what it’s like to work as an artist in the ‘real world’. We wanted to share her story, experiences and reflections from her 2 decade long career in this article.
The highs, the lows and all the good stuff in between
Hi all, my name is Anne-Karina, it’s lovely to e-meet you!
My journey into the world of art started at the Animation Workshop in Viborg (a tiny town in the west of Denmark), where I enrolled into a course in character animation (called KIKA). This was back in the olden days with 2D hand drawings and flipbook animations. Something really awesome about that education was that our teachers were people from the business, from companies such as Disney and Pixar, and it was incredible to learn from them.
After graduating, I worked as a freelancer for a couple of years, mainly as an animator. One day the principal of the Animation Workshop reached out to me with a potential job opportunity. He’s apparently been getting a lot of calls from a company and he asked if I’d be interested in talking to them. I decided to call them, got the job and this is how I ended up in gaming!
The company I was working with was developing PC games and my role involved a lot of hand drawing (this was back in 2006). But soon after that, PC games started declining and mobile gaming started growing (first iPhone was launched in 2007 👀). My company bought the Hugo IP and I started working on 3D more, focusing on the boardpieces, the icon and characters. This was when I really got into rigging, texturing and modelling, figuring out everything on the go and learning as I worked. My foundation for 3D was basically a 1 week course we did at the Animation Workshop, but the design principles are not different from 2D. Yes, you do get another dimension and you can’t just draw your way out of things, but the basic design principles I learned during my education were the same. The hardest thing was learning the software (Maya), but luckily I am very tech curious and love building bridges between tech and art. This is why I truly believe it’s important to have the mindset of learning – it helps with picking up new skills and adapting to the ever changing world we’re in.
Then in 2016, Tactile approached me and I initially said no because I wanted to stay within the world of 3D. Unfortunately, 1 year later my company shut down its Danish office and I was out of a job. Tactile stuck in my mind and so I decided to follow-up with them. As I’ve already done the art test the previous year, the process moved really quickly and I basically started working there a week later! The first project I worked on was Disco Ducks. After that I moved to Bee Brilliant and finally, to Lily’s Garden. I started rigging characters, modelling, animating, and setting up the entire art pipeline. Again, by keeping my mind open and focusing on the whole package, I started taking on more and more responsibilities.
An optimized art pipeline
When we are making games at Tactile, we first spend a lot of time trying to figure out what players want. We do so through user research and extensive data analysis (we get loads of data from our players, the devices they’re playing on, etc.). We also of course want to make a game that people actually can play. If the game sucks so much battery life that your phone keeps dying, or the app keeps crashing, or your device gets too hot when using the app, then it’ll eventually stop people from playing. This is why optimisation is so important and something to always be aware of! Making all this work is not just on QA and programmers. It’s a collective effort of all departments and Art has a big responsibility in it.
I want to illustrate what I mean by giving you a little run-down on how we handled the ‘heavy’ 3D character pipeline on our Makeover Match game, which I’ve been the 3D Lead on. The 3D process can seem a bit mysterious to those who haven’t worked with it, especially when colleagues come over to my computer and I’m working on a skin texture for a character and it looks like I flayed some poor cartoon character alive to do my evil deeds in Photoshop 🤣
Well here’s Emma from Makeover Match. Let’s have a little look at how she got from idea to finished game asset.
In the end we have an optimized 3D character pipeline, ready to produce a bunch of new characters.
Specialist vs. Generalist and the importance of having a portfolio
Now you’ve learned a little bit about 3D in the ‘real world’, but how do you decide what direction you want to go in if you’ve just finished your studies (or are about to)? Should you become a specialist, or stay more of a generalist? As a generalist in gaming, your skills will be highly useful on mobile and indie projects, whereas specialist roles exist more in AAA games.
A great place to start is having a portfolio. But what makes a good portfolio? In general in the Art craft, we all have the tendency to want to look at and make really neat pieces of art, so sometimes we get ourselves lost in the details before we have even built a proper foundation. I have looked through many portfolios full of highly realistic Zbrush assets. Whilst these are really neat and impressive, they don’t give me an understanding of whether this person can actually contribute to a production pipeline of stylized, low-poly 3D characters.
So when I look at portfolios, I want to see your work process. How do you texture? Do you have an interest in color and design? Have you been learning design basics from the old masters? I want to see behind the glossy surface, so that I really understand what you can do. If you can also show me that you understand the game engine you’re working in (whether it’s Unity or Unreal or something else), you’re very far along!
Grow your skills, but don’t forget the basics
Let’s take a look at a practical example.
A bird… I want to draw a bird. I start in one corner and draw some sort of a bird, but I’d like to stop myself and see if I can do better before I lose myself in starting to render this ‘masterpiece’
Construction… Yes, this part can sometimes feel boring and even mechanical. With the first few attempts you’re figuring out the actual geometric figure which will help you draw well-constructed drawings later, but the process feels clumsy and stiff. But I promise if you keep going, your hand and brain will start relaxing and you will soon get a looser style, whilst still keeping the technique underneath! The beauty of digital art is that you can make as many layers as you wish, so try and try again. And CTRL+Z as much as you want.
Keep practising the underlying construction and you can render in whichever style is needed for your project. And when you really understand the shapes…
… and your art director says: “Nooo, I want a different angle!”, you don’t panic! You can do a different angle easily. You build it with the shapes and as always, remember the perspective.
This really goes for any type of drawing, and very much for 3D modelling as well. Understanding good design, pleasing shapes, good silhouettes and ensuring the edge flow is good no matter how you twist and turn your character are just as important in 3D art as in 2D. The point is that you need to work on the foundation first in art. Whether it’s 2D or 3D, don’t forget the basic principles of construction and perspective. Keep training your craft!
Besides all of this, you also need to be open to doing some things that are maybe not so exciting, or not exactly your style… Remember, they don’t always have to be, you’re doing a job.
Working with styles or stories that aren’t for you is bound to happen. My own example of something I might not loooove making a game about is needlepoint work. BUT, I would research it intensely and make the best needlepoint game art ever, I promise! That’s what our craft is and that’s what a good game artist can do – make game assets following the vision of someone else. And do so well. For ourselves, we can do projects on the side which will quench that thirst of creating something that is really our vision.
So the best piece of advice I can give you is to keep learning and stay flexible in styles. Adapt to whatever game you’re working on, even if it’s not your ‘specialization’.
Something that can help you with this is strong team collaboration. Rely on your team to give you feedback and help direct you in your work. Taking feedback is not always easy, because you’re likely to get triggered. We pour our heart and artistry into our work and then someone comes by and totally tears us down – or so it feels at the time. Some critique or feedback is great, some is good, some is unfair. Some is not delivered in a great way and some can be seen as a matter of taste. But if you build a good foundation of trust within your team, you can always find something useful to take out of the criticism you receive. Being able to take critique is key to becoming better in your work.
Keep learnin’, keep learnin’ and embrace new tech
I would like to wrap up this story by saying – keep your mind open to learning new things, it will make you a more diverse artist.
In the generalist mindset, I encourage you to have diverse interests and learn more about how the world works, about fashion, book binding, cooking, other cultures, philosophy, maybe even needlepoint embroideries 😉, so you always have something to draw inspiration from. Also learn more about the market and players you’re making games for.
Just don’t be like Blockbusters …
… They didn’t believe in streaming and now they don’t exist. We have to deal with reality however little we like it at times. New technology can be scary and it is getting better extremely fast. But, I will say this… AI is just another tool and let’s face it, it’s here to stay. So just like streaming movies instead of renting physical copies, learn about the new technology and see what it can do for you. Is there some tedious work it can take care of for you so that you can focus on the creative part? AI is here and we have to adapt to this wild new reality as artists and game makers.
So learn new tools (yes, jump on that AI train), figure out how to make it useful for your work and be curious, always!
I want to leave you with a final thought …
I think that working with games is a little bit like our friend Indiana Jones here. Trying to find the right formula to get the gold – making that next game a real success. Sometimes we end up running with a boulder chasing us, wondering what in the world happened…
… And sometimes we end up getting the gold and getting away with it all! I hope you all get to learn from a bunch of lovely failures and successes and make awesome games in the future. I can’t wait to play them!
Time for Talent with Théo Maillard
At Tactile, we encourage our team members to take ownership of their own development and drive their upskilling to match the needs of the company, as well as their own aspirations.
The desire to upskill oneself is crucial for the success of our business, so having team members with that mindset is what we believe is part of pushing us forward.
In our bi-annual development talks, each team member defines their individual goals. Team Leads and our People Partners then help to support them with setting up their development journey and milestones alongside it. On top of that, Tactile supports by covering the costs of any relevant courses and learning materials, which can support the team member’s development.
We chatted to our brand new Product Owner, Théo, who recently transitioned into this role from his previous role as QA Engineer on our Core team. Read more about his development journey below.
Tactile: Hi Theo, can you tell us a little bit about what your role was when you started at Tactile?
Théo: Hi, sure! I joined Tactile 2 years ago as a QA Engineer on the Core team. I was only the 2nd test engineer, so we were a small, but very efficient team. Our main responsibility was to perform QA for our internal tools. This mainly involved our LiveOps dashboard, which is used to configure games, conduct A/B tests, and offer an overview of what’s going on in our live games, as well as our game build server. So I started off with just focusing on this.
My day-to-day workflow was to re-test whatever our Core team developers have been working on and ensure that everything works as expected. I was also responsible for providing test cases to document and streamline our test processes. So there were a lot of person-to-person interactions with designers and developers and writing down issues in JIRA. This was a part of my work that I really enjoyed.
Tactile: How have you grown and developed in your journey at Tactile since then?
Théo: As time went by, I grew more comfortable and confident in my day-to-day job. This pushed me to become more proactive and explore different areas of what the Core team does. For example, I started working with Embrace, our crash reporting tool, and got more involved in our internal communication about what are the issues we’re facing and how we can solve them. I wanted to understand more about why some things don’t work so well and when we decide to implement certain changes as a business.
I didn’t realise this back then, but I was already following a Product Owner (PO) approach, which includes a lot of talking to stakeholders and asking what needs to be done. As a QA, I was also giving a lot of feedback on new product designs, and providing that user experience, which is also an integral part of the PO role.
It was important for me to be proactive and not stay confined to the responsibilities of my QA role. I have always been a very curious person, and I love learning new things, which is why I take the opportunities that present themselves to me. And so, I wanted to go above and beyond in my role as well.
Tactile: So how did the transition into the PO role officially happen?
Théo: The conversation about this came up after my development talk earlier in the year. I expressed the want to develop and take on more responsibility in some way. I was initially considering transitioning into a programming position, but then a few weeks after my development talk, my Team Lead came back to me and offered this PO role. Many people have joined the Core team since I started, and there was a need for more product and project management support. The idea sounded really interesting to me, and so I immediately jumped on board!
The more I grow into the role, the more I see how good it is for me. It is a much better choice for me than programming, because it has that social aspect. I think I am good at talking to people, I enjoy communicating a lot and being the middle man, and this PO role enables me to do just that.
Tactile: How have you been developing as a PO since the transition?
Théo: It has been a fairly slow, paced transition. In the first months, I was still mainly working as a QA, but I started joining meetings with the Core team’s stakeholders – these are all the people using the tools we’re building, such as game producers and game product specialists. My initial focus was to understand what the stakeholders need, what issues they’re facing, what else could be added to the already existing tools, and what we could potentially start doing differently. I also started to document these things in JIRA.
To further support my development, I took a Project Management (PM) course on Coursera. This helped me to get more into the PM mindset. As a QA, I was normally getting involved only at the end of a project, when it was close to being completed. Now, I am involved at the inception of a project. This was completely new to me and something I needed to learn more about. How do projects get kicked off? Where do the ideas come from? And how do products get developed to the point where I used to jump in?
My biggest struggle at the start, and still now, being so new to the role, is balancing out my QA vs. PO mentality. This desire to fix every bug we find vs. understanding what is actually urgent right now and what will bring value to the business. Understanding the latter is my biggest focus currently.
Tactile: How does your daily routine look like now you’re fully transitioned into the PO role?
Théo: The entire Core team recently shifted to working in scrum. We now have 2 cross-functional scrum teams, each including backend, frontend, product designer and QA. On paper, myself and our Team Lead are responsible for one scrum team each, but since we’re still very early in the transition, we’re both involved in both teams, to make sure we streamline the processes and do things in the same way. We are just getting into the rhythm of doing things properly, running planning sessions, retrospectives and 2 week sprint cycles. As a PO, this requires me to have things clear and planned out further in advance than we used to.
So life as a PO these days looks a bit like this – my main responsibility is to groom our backlog and make sure all tasks are prioritised, including removing all the obsolete ones, and that tasks are distributed in sprint planning. I also provide clarity and support for scrum teams in this process. I am syncing up with individual team members, to make sure everything fits together. I often sync with product designers to ensure that what they’re designing fits in with the design vision of the stakeholder. I sync with the developers to make sure they’re still building in the right direction and that everything is going according to plan. I also still look at things from the QA perspective myself, because I now have the full overview of how things are supposed to work. On top of this, I am always communicating with our stakeholders, to make sure we’re still aligned on everything.
Tactile: What do your development plans look like now?
Théo: My first priority is to figure out scrum, so that I can make sure I’m running and supporting my team as well as possible.
Personally – on a higher level – I want to stay in this role for a couple of years to build credibility. Besides taking the Project Management course, I have been wanting to read Scrum: The Art of Doing Twice the Work in Half the Time, which is a book about optimisation and methodologies for scrum specifically. I am also spending a lot of time playing around in JIRA. I realised that my team easily gets lost in there, so I want to gather as much knowledge about it as possible, and share best practices with everyone. This will enable us to improve our workflows. In line with this, I am also looking into JIRA reporting tools so that I can monitor our scrum health better. As you can see, the learning never ends!