Full notes
Full Crimson System: VΙ Ξ Protocol update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- UI and audio
- Store
- Gameplay
- Balance
- Server
The Beginning
Hey everyone! This is the first entry in my devlog. I'll just start by talking about the current state of things, even though I've already done quite a bit of work, the results of which you can see in this video:
That's not so bad, because before getting to all the fun game content, I decided to tackle the most boring stuff first. So I've already got these systems ready:
A save system
Graphics, sound, and control settings
A localization system (yep, which is why all the text looks like technical gibberish right now π)
An inventory and item pickup system (even a simple shooter needs a place to store ammo and weapons, right?)
All of this, and other things, were built with the help of AI β mostly Gemini Pro and ChatGPT 4o. By the way, I'm currently testing ChatGPT 5, and I'm a bit skeptical. Either it's not quite there, or I just haven't figured out how to use it properly yet.
On the other hand, ChatGPT 5 did help me make a new type of monster for the game β a flying skull.
The Flying Skulls
Flying skulls are an amazing enemy. You've probably seen them in many games, and I decided not to reinvent the wheel, but to make something that just works. At one point, I had a room with a toxic pool in it. I know I have no experience in level design, but I still try to keep some logic and consistency between different entities. I wanted to add flying skulls, and I thought the pool room was the perfect place to introduce this new type of enemy. Why?
The room is big enough for the skulls to fly around freely and chase the player.
A keycard will be in this room, so I can lock the player in and give them a small fight.
The toxic pool is the perfect respawn point for the flying heads β it explains why the heads are skulls, why they're toxic, and why they explode on contact with the player, dealing toxic damage.
The skulls' behavior works like this: they spawn, patrol the area flying back and forth in search of the player. As soon as they see the player, they immediately give chase, and if they catch up, they explode, dealing nasty damage. The logic sounds simple, but it turned out to be more complicated than I thought:
It's important for them to patrol a specific space on a random route without flying out of it, while also taking the geometry of that space into account β the floor, ceiling, walls, and other objects.
They need to know the player's position relative to the skull to switch sprites in time, which determines the angle at which the player sees the monster.
Once they catch sight of the player, they need to initiate a chase, again, considering the level's geometry β the player might run into a narrow corridor with a low ceiling.
In any confusing situation, like completely losing sight of the player, they need to be able to give up the chase and return to patrol mode.
Finally, when they get close enough, they need to activate a timer and detonate, possibly blowing up other enemies within the blast radius.
Creating the Flying Skulls
The code for all the logic described above was created mostly with the help of ChatGPT 5 Thinking. This new OpenAI model sometimes tends to overcomplicate things, but it also occasionally throws in unasked-for ideas... and sometimes they're not bad. For example, while writing the code, the AI suggested I change the color of the enemy's sprite when it gets closer to the player to emphasize that something (an explosion) is about to happen β I kept that idea. But I caught and removed the programmatic sound effect it tried to embed in the code; I worry about my users' ears π
As for the graphics, I used the following workflow, which took into account the need for animated 2D skull sprites from different angles:
In ChatGPT (you can use anything else, but I started with this one to maintain a consistent style, so I use it for concept art generation) I generated a frontal view of a toxic skull.
I then dropped this skull into Midjourney (for those who don't know, it can already generate videos with looping and from a first frame) and, using a prompt, asked it to rotate the skull 360 degrees
Next, from that video, I took screenshots of the side and back views and dropped them back into Midjourney to generate the movement and attack animations.
I had to use VEO3 for the explosion animation because it's the only one capable of confidently blowing heads up π€―π I also used the same AI for generating the sounds.
This way, I get the enemy animation without any distortion. The most important thing is to remember to tell the AIs to do everything on the right chromakey background so you can cut the sprites out later. The background color, of course, depends on the enemy's color palette.
The Home of the Flying Skulls
As I said, the flying skulls emerge from a toxic pool. But where did the pool itself come from? The whole game takes place on a space station, and its first chapter's levels are laboratories and a research center. I won't go into details now β I'll talk about the setting and other things separately later β but within the context of the labs, I came up with a number of rooms that they should contain. That's how I got the idea for a large room with a pool of toxic liquid needed for cloning.
I build the geometry in the level editor myself, starting with just an empty room to get a sense of its volume.
Then, I fly the camera into a corner, take a screenshot, feed it to ChatGPT, and ask it to fill the room 1-to-1 in the setting of my game, taking the room's purpose (which I describe additionally) into account. That's how the concept art came to be.
Then, based on that concept art, I first create the necessary 2D and then 3D objects that I use to fill the previously empty space. At the moment, it's not finished yet β I need to add more details, like pipes with liquid flowing out of them. After all, how else did the liquid get into the pool? π
The glowing liquid itself is a separate marvel.
The shaders and particle effects were all put together under Gemini's careful guidance. Honestly, I didn't even expect it to turn out so well (well, in my opinion, maybe because my expectations for AIs were lower). I hope that when I get around to the liquid flowing from the pipes, it'll be just as good.
Announcing... Doors! π
Doors are what I'm working on right now. The game already has doors that open with a control panel, and these panels can react to monsters in the room and keep the player from leaving. It sounds simple, but when it comes to AI and especially modeling, there are some nuances and tricks involved. I'll talk about them in the next devlog, but for now, let me show you a couple of door concepts that will open exclusively with keycards...
...yellow...
...and purple
Add to your wishlist!
If you are as interested in this project as I am, please add Crimson System: Protocol VΙ Ξ to your Steam wishlist. It would help me a lot and ensure you don't miss future updates and the final release!
Join the community
Want to get news, exclusive sneak-peeks and chat directly with me and other enthusiasts? Join the official Discord server!
Thank you so much for the support! Stay happy, everyone
Source
Changelog.gg summarizes and formats this update. How we read updates.
