Conditional substitutions for youth teams

From Hattrick
Jump to navigationJump to search
Hattrick.png This is an official Hattrick Editorial
originally published 2008-06-10 09:00:00 by HT-Tjecken

Ever wanted to substitute your defender for an extra forward if you’re down late in a game? Or wanted to turn your normally offensive team into a defensive wall if you’re in the lead? With our new substitution feature, now you can!

Today we open up for preconditioned substitutions in the youth academies, as a beta test. Later on, we also hope to make it possible for senior teams too. Read this manual to learn how to use this feature. If you who want to know more about the development process and our motives with this feature, please read on.

As long as I’ve played Hattrick (which I’ve been doing for about 1/3 of my life now) I’ve longed for a possibility to make tactical changes depending on the standings in a match. To be able to close a match “Italian style” if I am in the lead, or go all out offensive if I desperately need a goal. I can remember the times when I’ve been sitting in front of the screen watching my games and saying “Hey referee, I want to make a tactical substitution!”. For me, planning substitutions is a part of being a manager, and I guess most of you can agree in that. It makes the manager experience more realistic and more alive. That’s perhaps even more important than the tactical options substitutions open up for

But even though substitutions has been a much wanted feature and we know it would improve the manager experience a lot, one has to remember that it’s also huge feature to implement. That’s also why it has been put aside for other features during our past, we just haven’t had enough resources and time for a project like this. At times we’ve also thought that the match engine in its current state would not be able to handle it, Hattrick is a simplistic game after all. But there are times when miracles happen, and dreams come true: This time it happened one winter morning in 2007 when Daniel called me up:

- I’ve implemented substitutions now.

- You’ve what?

- Yesterday I got an idea for how to fix subs and I’ve been working on it all afternoon, evening and night since then. I haven’t slept at all. But it’s there now.

To call this a classic Hattrick moment is an understatement. Of course, it was not as it was ready to use – quite far from it. But the basic match engine structure was there, it was possible after all. It would however not have been possible if we hadn’t rewritten the whole match engine for the youth academies. So, one can say this is also a result of the implementation of the youth teams.

If preparing the game engine for substitutions was easier than we thought, it was a lot harder to design a good interface and a good logic for it than we initially thought. And as we weren’t prepared to release anything we didn’t feel was good enough, we rather postponed the release.

Our motives

My personal dreams aside, our basic intention with subs from the start was that you should be able to substitute a tired player for a fresh one. That itself would also open up for new tactics and strategies in the game, like get an edge by having a larger squad for example. But after a while we felt we shouldn’t satisfy ourselves with just that, we wanted to open for more tactical options. So we added the possibility to make an order in advance which would depend on the standings in the game, and also if a player gets a red card.

As in everything we do, we thought a lot about how to add subs without making it too complex. Hattrick is a simplistic game, and we like to keep it that way. When we add new features we want it to add depth to the game, and not complexity. Subs definitely the game depth; it makes the manager experience more alive and the game more interactive. And while it’s impossible to completely avoid some complexity, we still feel this is substitutions Hattrick style.

What about injuries then?

We started to look at adding the possibility to react to injuries too, but unfortunately that turned out to be very complicated in the current match engine. The most problematic part was that we would then also need to design and implement a completely new automatic substitution system. There were also some other things we thought could be nice to have, but we had to stop the feature from growing too big in this initial stage – otherwise it would have taken us forever to release. So, we decided to keep the current injury substitution system and let it be completely automatic as always – for now. This means we consider this the first version of substitutions, and not the final version.

Our hardest part

Hattrick’s match engine is build around 4-4-2, and if you want other formations you reposition players. Moreover, you can’t order your repositioned players, for example your extra inner midfielder, to play offensive or defensive. His individual order is to play “extra midfielder”. In fact, this “extra midfielder” is repositioned from another position on the field. As we now made it possible to change the individual order during the match, you also need to realize that if you order your “extra midfielder” to start playing offensive in the 60th minute – he will not become an offensive “extra midfielder”. He will in fact stop being an “extra midfielder” and start playing offensive in his original position somewhere else on the pitch.

Just swapping a player for another is easy. The only time you really need to think about what you’re doing is if you want to change the player behaviour on a repositioned player. As a result, the hardest part has been to design an interface which could deal with this in a good way. And to be frank, the best solution we found is not the perfect one. But unfortunately the match engine sets some limitations here as it’s constructed around 4-4-2, every other formations is really just a version of 4-4-2 in the match engine’s eyes.

Why a beta test for the youth teams?

When we released the youth academies more than a year ago, we also said we would use it to test new features which may, or may not, later end up in the “real” Hattrick as well. So, it’s actually a rather natural choice to introduce this to the youth teams first. We’ve been testing this feature for quite some time now, but even so we know we may experience some bugs which didn’t show themselves during the test phase. There can be problems with certain web browsers, but also problems which only show themselves with heavy load (a lot of users online at the same time as a lot of matches are being played for example). Moreover, we also would like to know to what you think about the feature before we introduce it for senior teams. After all, this is a major new feature and a big change.

We hope you will enjoy this new feature (I know I will!) and we will gladly listen to your opinions on the forums. As mentioned in the beginning, please read the new manual chapter to understand how everything works. Good luck!

Until the next classic winter morning call…