And oh we did!
On that hackathon, there were three different categories: Video Processing, Industry AR, and AR Multiplayer Game.
I love making games so choice was obvious to me. Also, this time, I decided to be better prepared. I know how to create AR games and what challenges there are, but I had no idea how edge computing works.
Luckily, MobiledgeX prepared some samples for attenders, so I meet with the team to analyze them. We spend a few hours on those to understand what’s going on there, but we didn’t know how helpful that will become.
The Team 🧙♂️👨🎨👨💻👨🚒
Because hackathon was in Cracow, I decided to form a team in Lublin so that we can travel together to the event. This also had the benefit that we knew who can do what.
Without further ado, let me introduce my team:
🧙♂️ Mateusz Kamiński – main game programmer, who now makes things in augmented realities!
👨🎨 Patryk Malinowski – one and only 3D modeler who made us stuff!
👨💻 Grzegorz Perzanowski – docker and vm fighter, who knows how to run those things!
and me 👨🚒 Patryk Gałach – architect, and firefighter on both game and server-side… 🔥
Guys! You were amazing! I’m really happy of what we accomplished there! ❤️
The Beginning 🛫
Friday morning, we left Lublin to get to Cracow, which took us “only” 6h… 🚐 But happily, we got there.
We had some time to spare so we took a little break before going to hub:raum. It was still before 3 pm, so we were one of the first teams to arrive.
We were nicely welcomed in the space, we got some small gifts, and we found the spot where we will hack 🤓
It was still a little bit early, so we decided to meet with other people to find new friends!
It doesn’t matter if you have your team or you are competing alone. Take some time and meet other people! You never know if you might find a new business partner or some other opportunity! 🔥
After spending some time with people, we were invited to the conference room where Michał Skiba welcomed everyone one more time. He told us about challenges and how edge computing can change the world.
He also introduced hosts of the event, mentors, and judges for the competition. It took a while to go through all of them, but it was great to see faces of people that will help us deliver the game to the finish line.
The Hackathon 👨💻
As we knew what idea we wanted to make, we started by describing the architecture for both game and server. It took us maybe an hour or two, but this is really helpful to be sure that everyone in the team is on the same page.
With that out of the way, we could start making our AR multiplayer game. We knew that we would have Samsung devices to test our game, so we used AR Foundation with ARCore to make a game.
On the backend, we wanted to use .Net Core. This ends up for us as a really unfortunate idea. Because we lacked previous experience with building things as dockers, we spend way too much time trying to make it work.
Our original estimate was that before 11 pm, we should have backed and the synchronization working, so we could happily go back to our place and take some sleep.
Murphy’s Law tells that if something can go wrong, it will…
And for the backend, it went horribly wrong… With one step forward, we made five backward… And after struggling for eight hours we decided at 4 am to get at least some sleep before trying to solve our backend problems.
Until that time, I was blinding writing communication on the game side as I was hoping to start getting some responses from the server. Luckily I was able to “finish” that part before going to sleep.
10 hours left… 😰
The next morning was tough… We barely slept for 2 hours, and we felt like zombies. But there was no more time to waste…
We had to make it work, and we had to deliver something to the finish line at least.
After finishing with communication from the client, I jumped to write the backend in Node.JS. I had some experience with that prior to the hackathon. The problem was that I wasn’t using my knowledge of JS for a couple of months already.
I hate doing things in a rush, but I had no choice… Luckily we were able to set up some basic communication between game and server within an hour with the edge that was available to us. Now I had to sprint to finish server so the game can start working properly. Somehow I was able to do it in five more hours.
4 hours left… 😱
Now we had something working! It wasn’t much, as we could connect to the selected lobby, but it was something. Luckily code for the rest of the game was already prepared to “work”. With a few more tweaks and fixes, we had a simple flow that worked. The game wasn’t finished by any means, but we had a base of it.
Unfortunately, plan for our game didn’t take into account that we will have some many problems with the server. Even with our effort and help from mentors, we come shy from our expectations.
But we were happy that we deliver at least something that anyone could test! 🔥
This gives us at least some satisfaction… 😅
Each of the teams had to present what they accomplished during those 24h, and each team had something unique.
We didn’t had huge hopes for wining this time, but… We were awarded with Community Award which we were more than happy with.
Then there were prizes for 3rd, 2nd and 1st places which we knew we couldn’t compete this time.
But at the end there was also price for the Best User Experience…
Which we also won!? WAAAAT?!
What can I say? 😅
We were surprised for getting awarded in both categories, but we were more than happy with that.
We are especially happy about getting the Best User Experience award which meant more for us than the 1st prize! 🔥
Hope to see all of our new friends next year so we can compete once more!
And when was the last time to attend hackathon or game jam? Let me know in the comment section below!
If you want to get notified on future content, sign up for the newsletter!
And I hope to see you next time! 🤓