After 1.1 million plays in soft launch and countless updates, Vortelli’s has finally been released globally on Poki. You can play it here: https://poki.com/en/g/vortellis-pizza
My Journey with PlayCanvas
I started working with PlayCanvas in July of 2021. After one year of on and off work, I released a playable version of Vortelli’s in mid-July 2022. After having spent so long working on the same project, I had no idea if it was any good. It received a small amount of attention from Twitter and the PlayCanvas forums. Around the same time, I sent a demo to Poki.com. I was absolutely delighted to learn that the Poki team loved the demo and wanted to work with me! I signed their publishing agreement and over the next few weeks, I worked with them to integrate their API and monetize the game with ads.
At the end of August, Vortelli’s was soft launched in a few test regions, Brazil, France, Italy, Sweden and Turkey. This was my first time launching a game at scale and I had no idea what to expect. On the first day, my eyes were glued to the stats dashboard and I kept checking my game server logs over and over. I didn’t get much actual work done that day! The player count peaked at 12 on the first day of soft launch.
The next day, I noticed a worrying netcode bug and players were leaving angry reviews complaining they couldn’t click on anything in the game. After hours of stressful debugging, I found a time code bug in the netcode I’d written where players with low spec devices were sometimes getting desynced and weren’t able to interact with objects in the game world. In a mild panic, I managed to implement and deploy a fix. I learned that the dt variable can drift over time making it unsuitable for precise time keeping, use performance.now() instead. Unfortunately that was just the start of my problems.
The next morning I was woken up around 4:30am by a notification that all the servers were completely full. At this point I had two servers, one in Dallas USA and another in Frankfurt Germany, each capable of supporting 40 players. At first, I thought this was a bug and maybe departing players weren’t getting disconnected correctly? Unsure, I created two more servers and within minutes they were also completely full. Vortelli’s somehow had 160 players online! I kept creating new servers and they seemed to be filling up as quickly as I could launch them. This was not a bug, Vortelli’s has been featured on the front page of Poki and there were thousands of new players finding my game. I believe Poki’s system automatically moves games with strong user engagement to the front page.
Eventually the player count settled down and I got to work on automating the server scaling. I knew I couldn’t wake up at 4:30 every morning to manage servers. I used Linode’s API to automatically create new servers as the player count increases and then automatically shut them down as the player count decreases. I didn’t get this 100% perfect on my first try, there was at least one time when I accidentally shut down servers with players still on them. My apologies if you were one of them.
Over the next few weeks, I worked to fix bugs and implement some new features. There were all kinds of helpful suggestions from the PlayCanvas community, Twitter and the Poki team. During the soft launch period, Vortelli’s was played 1.1 million times.
PlayCanvas has proven to be very reliable, especially across multiple devices of varying specs. Uploading PlayCanvas builds to Poki is very simple. In the PlayCanvas editor, I can simply download a .zip of my entire project, then upload the same .zip into Poki’s developer dashboard.
PlayCanvas and Poki work well together when it comes to error tracking. The Poki dashboard maintains a live feed of the console errors coming from players’ browsers. PlayCanvas provides very clear error messages containing script file names and line numbers, even in exported builds which has made it very easy to track down issues even in production.
Despite the occasional stressful situation, this has been a really fulfilling project. I have a few Vortelli’s updates planned and of course I’m open to suggestions from the community. If you have any questions about Poki/PlayCanvas, please let me know, I’ll do my best to help!