Prior to the hiatus, I was working on training an imitator neural network. The purpose of this network is to simulate the game engine’s rendering process for character portraits. It takes a tensor representing a character’s genetic attributes as input and outputs the corresponding rendered image.
Since the rendering is performed by a neural network, the entire process is differentiable, enabling backpropagation. This differentiability is particularly useful within the training loop. The imitator serves as the foundation for the converter. Once successfully trained, the remaining steps of the project become mostly trivial.
Due to gaps in my understanding of certain implementation details, the first attempt ended as failure.
The previous imitator model produced blurry and unreliable outputs when fed different parameters. This is how the attempt looked, this is an example of when I gave the imitator two random dnas, one male, one female;
Over the past week, I’ve focused on rewriting the macro code responsible for automating dataset acquisition. I also updated the gene dictionary file, which maps all the genes the imitator takes into account. The only remaining step is generating the new dataset.
I encountered a significant bottleneck: CK3 imposes a 10-second delay between portrait and DNA updates, preventing fast data generation. At least whenever you automatically update your clipboard veryfast. I reached out to multiple modding Discord servers, no one seems aware of a solution. Currently, this limitation caps dataset generation at
6 portraits per minute, which is cripplingly slow. Given that the male model imitator alone requires
60,000 portraits, this translates to roughly
170 hours of processing time.
Another issue, my laptop is barely functional and can’t run
CK3 natively (I rely on cloud services like GeForce NOW). As a result, I need help to accelerate dataset generation. Even with a high-end PC, the 6-portrait-per-minute bottleneck would still necessitate collaboration.
Once the dataset is ready, I’ll proceed with training the imitator. If successful, the project will be basically complete.
How You Can Help:
- Dataset Generation: Join my Discord to assist by running a Python macro over CK3.
- Modding Expertise: If you’re experienced with CK3 DNA (e.g., have worked with the EPE team) or can connect me with someone who is. For example depending on how DNA works in EPE, it might be better to train the imitator with the modded DNA instead of the Vanilla set.
- Bottleneck Solution: If you know how to bypass or reduce the 10-second portrait delay, this would 10x the workflow speed.
Any support would significantly accelerate progress.