Round 2 Of Live2D Dry Run!
"Fighting games are never best-of-ones! There’s always a second round for the salty runback!"
- Madison Delaroux, quote from /Madness/ of Madison Delaroux
Executive Summary: The very first dry run! I try to fit a Live2D model to an actress, but we run into some problems!
#HouseDelaroux, #AIVTuber, #HellsTheatre, #TechnoDramaturgy, #Dramaturgy, #LLMVtuber, #Ollama, #LocalAI, #AICharacterDesign, #VtuberDevelopment, #AICompanions, #OpenLLMVtuber
LAST TIME ON 'HELL'S THEATRE':
Hell's Theatre ran into its first major roadblock in coding! I was looking to set up Mistrál with a Live2D model and it didn't work out!
House Delaroux has a big problem: The dramaturg doesn't code! So how do we pair up Live2D with our actresses if so? After stumbling and stumbling over trying to code the Live2D for myself and falling over myself, I decided to turn to the experts: AI understands AI, so why not get Deepseek to help me code?
First, what I did was to upload the text of the OpenLLM-Vtuber Live2D file to Deepseek (https://docs.llmvtuber.com/en/docs/user-guide/live2d/), so that we had a common understanding of things! Deepseek is pretty smart, and managed to guide me through a lot of pitfalls!
There Are Only A Few Files That Matter - Namely, we are looking for two things: the expression files which end in .exp3.json, and the motion files which end in .motion3.json. I went on a round trip trying to figure out what the .moc files were! For simple purposes, these are the two file types which give a Live2D model their expressions!
Test The Model First! - One of the things that I didn't do when I did Mistrál's Live2D was that I didn't test out her model in Vtuber Studio first. This is an important step! Being able to see the expressions and have an idea what you want to map out is important! It also confirms that the model is working!
When I finally got around to using Vtuber Studio, I realized that both Hikari and Piaccata have models that don't quite fit the mold. Hikari's model wasn't a Live2D to begin with, and Piaccata's model had no expressions!
Everyone will get their models eventually, its just a matter of time! Instead of searching for models right away, I decided to work with what we have on hand first! There's no sense wanting to be perfect in all things, when I am not even sure of how to pair up the models!
The Breakthrough Was Letting Deepseek Code - Initially I wanted to learn the coding and edit the .model3.json file, which controls Live2D expressions by myself. However, after error after error, I decided to let Deepseek help me code instead!
What I did was to show Deepseek the sample files for a default Live2D model, Shizuka, and pairing the information with Shizuka who definitely works, and my own horribly mangled .model3 file for Mistrál, Deepseek was able to see the errors in my coding! Namely:
Json is very particular about capitals, so I made sure that everything custom is lower case from now on.
Json cares about curly and straight apostrophes ("), something I would never have figured out by myself!
There should be a comma after each expression line.
There should be an open bracket and a closed bracketfor each “expression mapping block”!
In the end I put down my pride and let Deepseek do most of the coding work! The process ran much more smoother since I was able to feedback the minor problems that happened; the errors were also much more minute and detectable (i.e capitalization/file directory errors), so it really helped me out!
Editing the model.dict File - The other major file that needs editing work was the model.dict file, this should be done after the 'emotion mapping' work is done in the .model3 file. Remember those .exp3 files that you pointed to in the .model3 file? In OpenVtuber-LLM, the app allows actresses to make expressions when a [emotion] is detected!
Here in the model.dict file, we map the specific phrases that are associated with the expressions! So if Mistrál is angry (rare!), we want to map the word [angry] to her "ANGRY.exp3" file that we defined as "angry" in the .model3.json file!
Character File - Finally, we come to the character file! This has already been prepared beforehand, a small feedback is that Mistrál tends to loop about her pre-defined character a lot, something I should fix by making her character file even simpler than the simple 100 word version that we have right now. I think that the more powerful a model, the less restrictions it should need to stay in character! It is much better for a vtuber to be more free to improvise after all!
Curtains Call
This was quite the success! The entire time I was fighting with vertigo and leaning on one side! I think this project is meaningful enough that I would like to see through it to its success, so I shall continue it! There are a lot of things to fix, but that's my job as the dramaturg to make sure everything is running smoothly!
Next Time, On 'Hell's Theatre': I try to replicate the success by helping Lumi with her Live2D Model as well! The very first 'collab' happens here between Lumi and Piaccata!
R.I, デラ・ルーの大導劇神
HouseDelaroux.com
250402
"LLM-based Vtuber setup"
"Ollama AI VTuber guide"
"Local AI companion project"
"VTuber AI persona design"
"Live2D AI VTuber test"
"OpenLLM-Vtuber tutorial"