“It is basically a huge opportunity to spread the word,” said Jan. “Since I am the only one developer of this game, it is very hard to contact a wider audience and get in touch with the press.”
Mashinky is based on players creating their own transportation empire based around trains over multiple time periods. Jan has always loved railway transportation and the way steam engines worked, even owning a model railroad as a child. Besides that, Jan says the primary inspiration for the game was very simple.
“Transport Tycoon was the initial impulse and endless source of inspiration. I used to play this game a lot in my childhood and I still have OTTD installed. I think trains are great subject and making game where you can build, manage and then drive your trains is something I have always dreamed of,” says Jan. “Transport Tycoon also set the bar for game scale. Only managing the transport imperium would not be enough without upgrading and researching new tech. Since the game aims to be inspired by real railroad history, it makes the best sense to let players evolve their trains from steam to hyper-speed magnetic levitation.”
Board games were also a huge motivator for Jan, though no particular board game comes to mind when it relates to the creation of Mashinky. “I’ve played a lot of board games and it is hard to find some solid connection to one of them,” said Jan. “It is rather about the approach to game design. I like the simplicity mixed with huge complexity of modern board games and feel that it is an even bigger challenge to design PC game with so many restrictions. For example I want to avoid long numbers in my game (you cannot have billions of tokens in a board game) because it is harder for players to think when you earn 1,542,012.60 by one game play action. It is better to earn 12 tokens so you can clearly think about your strategy. And last but not least, it fits better to a grid-based isometric map.”
From Mafia to Trains
Before striking out on his own, Jan worked at 2K Czech on Mafia III. There, he learned a lot of important lessons when it came to both being a game programmer and designer.
“It was a huge experience that showed me the complexity of game development, what you need to create, implement, design, optimize, etc. ” said Jan. “It also raised the bar for my standards about quality and performance, about features needed for such a big game project. It was also great and motivating environment full of talented people willing to help me, supporting me and share knowledge.”
Jan is a programmer first, so when it came time to design levels, he realized that the most efficient way to do so was with procedural generation. “It is simpler for me to write code that ‘designs’ it for you by generating rather than designing these maps by myself,” noted Jan. “And it allows players to have almost endless gameplay since every new game sets new challenges and opportunities.
Creating a custom engine for Mashinky was the most challenging part early on for Jan. Making things like a GUI, streaming assets and a virtual file systems are all parts that players take for granted and are hard work, but it was worth it for the experience he received. Jan felt the need to have it be refined enough to allow other people to test it, which started only two months ago.
“I am trying to gather feedback as often as possible, but from just s few players who represent a wide range of types from casual to hardcore. This gives me enough feedback, without having to worry about technical support and it lets me spend more time in game development itself,” said Jan. “The game is still in pre-alpha stage, so it is early to say, but the feedback has already helped a lot. One week after starting a test, I organized first public playtest and it was a huge success not only because I won first place in GDS conference indie expo, but more importantly it gave me so much valuable feedback I am still working on all changes.”
“I did only one big playtest so far, but there were unexpectedly positive feedback and it is hard to pick one reaction,” noted Jan. “Maybe I should mention one question that kind of changed the way I design: One man told me that he has a child he would play this game with and asked me, ‘What is the player age this game is designed for?’. I realized that I used to play Transport Tycoon in my childhood and it gave me so much, so I should keep this experience in my mind when designing the game to allow today’s children play it.”
“One player who tested this game on GDS conference asked me to add handcars,” Jan noted. “Since I’ve always been dreaming about big fast steam locomotives, this sounds like funny contrast that ultimately tells you that your business is not going very well!”
Clearly See the Final Product
Currently, Jan is creating Mashinky using a workstation at home. It’s currently designed for Windows PC only, but Jan knows the codebase well enough that if it’s a success, it could possibly come to other platforms.
“I develop this game alone, while having a full time job in one of the biggest game studios in Czech Republic,” said Jan. “If this game is successful in early access, I would think about building some small indie studio, but it is not the case at the moment.”
“When developing the game as a one-man team, it is up to you how you deal with every day tasks,” Jan added. “As I mentioned, I have a full-time job and this game is my side project, so I work on it almost every evening and most of weekends. It has some advantages as well: you have easier code merges!”
While Jan is the lead on the project, his wife (who generally plays MMO strategy games) regularly gives opinions that help the project. Ultimately though, it comes down to Jan’s vision of how the game will look and play.
“It came from many failures and redesigns, but now I can see clearly the final product,” says Jan. “It is still influenced by player’s feedback and after gameplay tests, I rewrite some major parts regarding user interface, but without strong vision from the very beginning, you would need to re-implement everything many times and such a project from one man would not be doable at all.”
Never Give Up
The way Mashinky looks has a very unique origin, according to Jan. “Some of models used in the game are from a 12 year-old never released project of my friends. They gave me the initial package which not only helped me a lot to push my programmers-art, but it also defined the overall stylized look that fits perfectly to this strategy PC/board game style.”
Jan has big plans for Mashinky, and would love to continue working on it, when and if they get mores resources. “In the future, I plan to add road vehicles, maybe also planes and boats, more scripted events, campaign, multiplayer, etc.” said Jan. “This game will have an option for retail purchase/digital download with future paid or free DLC. Since I plan to release it for PC, it is traditional way and that’s the only way to avoid game design trade-offs.”
Inspiration is a huge motivator for Jan, and he would suggest to other indie developers to lean on it as well. “You need to keep at it over few years and you also need to find other types of motivation than just earning money at the end. When your motivation is to create game of your dreams, you always find people that dream about the same and will help you to succeed,” Jan said, adding, “Never give up. If something seems impossible, there is always someone who does not act that way and will successfully do it.”
David Radd is a staff writer for GameSauce.biz. David loves playing video games about as much as he enjoys writing about them, martial arts and composing his own novels.