Lessons Learned from Building a Game with MongoDB and Unity
Rate this article
Back in September 2020, my colleagues Nic
Raboy, Karen
Huaulme, and I decided to learn how to
build a game. At the time, Fall Guys was what
our team enjoyed playing together, so we set a goal for ourselves to
build a similar game. We called it Plummeting People! Every week, we'd
stream our process live on Twitch.
As you can imagine, building a game is not an easy task; add to that
fact that we were all mostly new to game development and you have a
whirlwind of lessons learned while learning in public. After spending
the last four months of 2020 building and streaming, I've compiled the
lessons learned while going through this process, starting from the
first stream.
As with most things in life, ambitious endeavors always start out with
some excitement, energy, and overall enthusiasm for the new thing ahead.
That's exactly how our game started! Nic, Karen, and I had a wonderful
stream setting the foundation for our game. What were we going to build?
What tools would we use? What were our short-term and long-term goals?
We laid it all out on a nice Jamboard. We even incorporated our chat's
ideas and suggestions!
Watch us plan our strategy for Plummeting People here!
- It's always good to have a plan; it's even better to have a flexible plan.
- Though we separated our ideas into logical sections on our Jamboard, it would have been more helpful to have rough deadlines and a solidified understanding of what our minimum viable product (MVP) was going to be.
[]{vid=XUQCOf3NuJQ}
[]{vid=QgzA_9tXxy4}
- Sometimes, things will spill into an additional stream, as seen here. In order to fully show how a user profile store could work, we pushed the remaining portions into another stream, and that's OK!
[]{vid=wDRf2jHrCPM}
[]{vid=TnJOSwvVZDo}
- Teammates get sick every once in a while! As you saw in the last two streams, I was out, and then Karen was out. Having an awesome team to cover you makes it much easier to be consistent when it comes to streaming.
- Tilemap editors are a pretty neat and non-intimidating way to begin creating custom levels in Unity!
[]{vid=-gO9tvNgpu4}
- As you may have noticed, we changed our streaming schedule from weekly to every other week, and that helped immensely. With all of the work we do as Developer Advocates, setting the ambitious goal of streaming every week left us no time to focus and learn more about game development!
- Sometimes, reworking the schedule to make sure there's more breathing room for you is what's needed.
[]{vid=UkpaRWkPbU4}
[]{vid=YLc28Xlvyt0}
- As you become comfortable with a new technology, it's OK to go back and improve what you've built upon! In this case, we started out with a bunch of game objects that were copied and pasted, but found that the proper way was to 1) create prefabs and 2) programmatically generate those game objects.
- Learning in public and showing these moments make for a more realistic display of how we learn!
[]{vid=BAjUOCRj03g}
- Sometimes, you gotta play video games for research! That's exactly what we did while also taking a much needed break.
- It's also always fun to see the human side of things, and that part of us plays a lot of video games!
[]{vid=_VfGoJjQ0kU}
- After season one finished, it was rewarding to see what we had accomplished so far! It sometimes takes a reflective episode like this one to see that consistent habits do lead to something.
- Though we didn't get to everything we wanted to in our Jamboard, we learned way more about game development than ever before.
- We also learned how to improve for our next season of game development streams. One of those factors is focusing on one full game a month! You can catch the first one here, where Nic and I build an infinite runner game in Unity.
I hope this article has given you some insight into learning in public,
what it takes to stream your learning process, and how to continue
improving!
If you're interested in learning more about game development, check out
the following resources:
If you have any questions about any of our episodes from this season, I
encourage you to join the MongoDB
Community. It's a great place to ask
questions! And if you tag me
@adriennetacke
, I'll be able to see your
questions.Lastly, be sure to follow us on Twitch
so you never miss a stream! Nic and I will be doing our next game dev
stream on March 26, so see you there!