Openchamp Devlog 1

Openchamp Devlog 1

Date: 11/4/2025

Good morning! I'm going to start trying to write at least once a week a devlog to talk about where we're at, where we're going and what's next on this development Journey! These posts will probably be longer posts, but they'll have a TLDR at the end :)

Before you start reading (Important)

I think it's only right and fair to inform everyone that this project does have a fairly heavy use of AI for code development. Its primary use cases are:

  • Checking code for optimizations (this will be used to help optimize the minions for larger maps)
  • Ideasmithing (providing alternative routes to existing systems if I feel they need to be more robust or are non-functional in their current capacity)
  • Scaffolding (ex: Admin Tool)

AI Assets have not been used at this point, and I have no plans on introducing AI generated assets because I don't want to.

Development progress?

With so much do to and only 11 days to do it before the alpha launch, I've got a pretty heavy focus on developing the gameplay and optimizing the servers so the feedback provided is more focused on gameplay and gamefeel versus performance issues and crashes. This said, I've also got a new repository I'll be adding for the game (see below Admin Tool).

If you're interested in the updates for a specific section, I'm going to try to separate each repository to make these feel more structured and easier to navigate.

Game Client / Server

We are actually able to play a 3v3 game from beginning to end now! The game has a single tower, a single nexus, and minion waves are only 2 minions per wave (performance issues). It's not a great experience, and there's a lot to be worked on.

With the number of optimizations to be done, I've started moving code from the ~40 different Godot Projects into a singlular code base that will be deployed Nov 15th for alpha testing. This does require a lot of time and critical thinking, but also makes it way easier to comb through the code.

My current priority is fixing Minion Logic, as their physics logic is killing the server at the moment.

Matchmaking Server

THANK YOU SO MUCH @Merchant for assisting with testing and fixing the MatchMaking Server.

While this project is still buggy, it should be stable enough for the alpha test and will continue to be worked on after, but definitely on the backline for now.

Admin Tool

The Admin Tool is a Python Tkinter tool designed to assist with rapid deployment and configuration of Matchmaking Server Instances. This tool was born from the annoying process of configuring a new device for the development of this project locally. It will:

  • Start/Stop Postgres DB Container (Podman for licensing reasons)
  • Start/Stop MatchMaking Server (Preconfigured for connecting with DB Container)
  • Monitor resource usage of all OpenChamp Containers (GameServers are containerized)
  • Pull/Fetch Repositories
  • Auto build GameClient, Dedicated Server, and Matchmaking Server for testing

This tool is very early, as it started as me just asking Gemini to build a script to automate the DB Container and slowly evolved into a full GUI. All code in the zz_old directory is AI Generated, while the refined version is on the project's root. The original script was close to 4k lines, what's in the repository is a cleaned-up variation that will continue to be refined.

Closing Notes

I'm going to typically put anything that I feel is outside of scope for the existing categories here.

  • To anyone who took the time to read this far, thanks! This project is a passion project and I AM NOT A GAME DEVELOPER, so this buggy mess will likely be buggy for a while to come, but I'm grateful to all the people I've gotten to meet and talk to thus far and I'm looking forward to continuing to iterate and learn more about these systems and dive deeper into Multiplayer Networking and optimized algorithms.

  • Our Godot Plugin is not dead, it's just backlining

It's not been the best experience trying to update an assets repository separate from the game repository and attach them with commit IDs, it just adds a lot of points of failure and while it allows people to add assets separate from downloading the source code, I think the added complexity and irritation just isn't worth it for now. I will be adding it back in and am actively making design choices with the plugin in mind, but it will probably not be implemented until full release. Sorry in advance :(

  • Website Updates!

I got the website pushed to Github Pages for now, OpenChamp.github.io! I'll be redirecting open-champ.com to pages as well and be posting more updates like this one on the site and letting everyone know in the discord when new devlogs are up!

Have a great week everyon,

~ Cody

OpenChamp Lead Project Engineer