• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Mod Release Character Model - Ciri from Witcher 3

DeathDaisy

Freebooter
Storm Modder
so here she finally is; my beloved Ciri. :love getting her into the game has taught me so much. about life. about love. about loss. although the pain will never completely subside, I think it has ultimately made me a better person.

some useful info I found on the way: POTC (and storm engine in general it seems, as its the same deal in CT and CoAS and also in @ChezJfrey s cool maelstrom engine which @Modder01's impressive supermod for CT is running on) cannot handle character .gm models larger than ~205-208kb. Ive absolutely no clue about why, it makes no sense and its driving me insane. Ive spent so much time shaving off a polygon here and a polygon there to save bytes, and sometimes the maya exporter just ends up changing the size of identical models. its why I had to use beatrice body instead of ciris clothes from the game, and why my hair is now as gray as ciris.

if the model exceeds the apparently arbitrary limit by a lot it crashes when entering most interiors. when you get close to the limit, it starts returning "failed to load horribly garbled model names" in system.log where first the talking heads disappear, then it soft crashes ie the scene goes black on location transition as it cant load the garbled models for the location and the only option is exiting the game. its enough to drive a woman mad. good to know if someone else decides to add more character models. this limit doesnt seem to apply to other sorts of models

in Witcher 3:
ciri_by_scratcherpen-d8slbij.jpg ciri_5_by_scratcherpen-d8t3xjs.jpg ciri_6_by_scratcherpen-d8t4092.jpg
in POTC (with ReShade):
ENGINE 2017-11-28 16-55-22.jpg ENGINE 2017-11-28 16-56-45.jpg ENGINE 2017-11-28 16-57-53.jpg ENGINE 2017-11-28 16-58-08.jpg
anyway, she sits at around 5000 polygons and 4 different materials at 512 to 1024 resolution. the head and hair is taken from Witcher 3 and heavily poly reduced, mostly in the awesome free program Simplygon. the clothes are borrowed from Beatrice Devlin, but I remodelled the hands to give some more details to the fingers and retextured the clothes in the spirit of Ciris alternate ones from the witcher 3 DLC. the hair got working transparency due to some fluke modifications in the MODULES\Techniques\animation.sha I did that enabled support for alpha maps for character models. there are always more things to tweak on the model, but shes at a level I can be proud of and want to share xD

shes got all the portraits, a description and a talky head. the talky head could use a little work, but it looks alright. included in the initModels.c is a bonus updated description for Hilda Sparre as well :ninja I hope I remembered all files this time..

Download from MediaFire

EDIT: burrrrrr I FORGOT THE PORTRAIT FILES CURSE YOU BRAIN :modding Ive updated the .rar on mediafire
 
Last edited:
cannot handle character .gm models larger than ~205-208kb. Ive absolutely no clue about why, it makes no sense and its driving me insane. Ive spent so much time shaving off a polygon here and a polygon there to save bytes, and sometimes the maya exporter just ends up changing the size of identical models. its why I had to use beatrice body instead of ciris clothes from the game, and why my hair is now as gray as ciris.

if the model exceeds the apparently arbitrary limit by a lot it crashes when entering most interiors. when you get close to the limit, it starts returning "failed to load horribly garbled model names" in system.log where first the talking heads disappear, then it soft crashes ie the scene goes black on location transition as it cant load the garbled models for the location and the only option is exiting the game. its enough to drive a woman mad.

I am very curious about this. Any chance I can get one of the large ones to run/experiment in debug mode to see if I can determine the cause?
 
Looks really good, @DeathDaisy! :woot

And really good information about the game engine limitations too. Good job pulling this off despite all the adversity! :onya
 
of course :onya sent a link to your inbox! xD

Wow, the original is stunning! Comparing to your working screenshots, I can see the additional detail that was provided in the higher res version you gave me.

The bad news, is yes, I get a crash in the new engine. The good news, is that I've isolated to some matrix calculations during collision testing. I'm not yet sure if there is an easy fix, as the root cause could very well be a bug buried in the model data-read, far ahead of this particular testing/matrix computations, thus causing the bad data during the calc. I'll continue attempting to determine where/what causes and if there is a way out of this, because I would certainly like to get that original model working in the game.
 
Looks really good, @DeathDaisy! :woot

And really good information about the game engine limitations too. Good job pulling this off despite all the adversity! :onya
thanks! xD now that shes in it feels really good, I love playing as her :beer:

Wow, the original is stunning! Comparing to your working screenshots, I can see the additional detail that was provided in the higher res version you gave me.

The bad news, is yes, I get a crash in the new engine. The good news, is that I've isolated to some matrix calculations during collision testing. I'm not yet sure if there is an easy fix, as the root cause could very well be a bug buried in the model data-read, far ahead of this particular testing/matrix computations, thus causing the bad data during the calc. I'll continue attempting to determine where/what causes and if there is a way out of this, because I would certainly like to get that original model working in the game.
omg if you manage to solve that problem, you are an actual wizard and I will jump and cry and dance and sing with uncontrollable joy :love just tell me if you need anything :cheers
 
what was the problem?

During collision checking, the vertices read in from the model, are iterated in their memory space (which is dynamically sized) and copied to an array for manipulation, but that array size is not dynamic, but hardcoded to a max size that is inadequate for the model in question. So a couple problems arise...there is no bounds check while it iterates and the for loop is set to go from zero to number of vertices (which for this model is beyond the max size of the array), so you go out of bounds and crash.
 
@DeathDaisy: in your "models_descriptions.txt", there's an entry for an alternative outfit: "A pale witch in a black dress who probably does not get enough sleep." Do you want to upload the model to go with it?

Also, in "initModels.c", the alteration for Hilda Sparre is that if Sweden is in the game, she's Swedish instead of French, but she's still player type Rebel. Is she supposed to be an enemy of Sweden?
 
Great news, I got it! That original model now works in my version.
AAAAH HELP Im freaking out!! :shock:woot:monkeydance thats soooo awesome, Im gonna have to call the inquisition. thankyouthankyou so much. Ill make sure to try and provide more models for you to use now that polys aint as big a problem :flower:thumbs1

@DeathDaisy: in your "models_descriptions.txt", there's an entry for an alternative outfit: "A pale witch in a black dress who probably does not get enough sleep." Do you want to upload the model to go with it?

Also, in "initModels.c", the alteration for Hilda Sparre is that if Sweden is in the game, she's Swedish instead of French, but she's still player type Rebel. Is she supposed to be an enemy of Sweden?
oops! the witch aint quite done yet, but I could either share the old model which was a retexture, or try and finish up the new one! Ill decide soon xD

yes, Hilda was originally supposed to be an enemy of sweden after conspiring against the crown, but france works very well if sweden doesnt exist considering both Swedens and the Sparre familys french connections :pirate41:
 
Has Ardent now kidnapped Ciri? :wp
ardent_ciri.jpg

Well, no. I cheated. :p This game is a test for various new mods. So I used a console command to give myself the "CiriWitcher" model and then applied it to the first female officer who showed up for hire in a tavern. That way I get to keep an eye on her for any graphical anomalies, and for that matter to look for any graphical anomalies elsewhere resulting from the modified "animation.sha".

No problems detected so far, so she's in the update archive. :onya
 
Nice! :cheers

I just noticed that she looks decidedly smaller than the gentlemen around her.
Are all female models that much smaller? I can't remember now... :unsure
 
It's a combination of factors. Female models are a bit smaller, plus she's slightly downhill from the officer to her left.
 
Has Ardent now kidnapped Ciri? :wp
View attachment 31579

Well, no. I cheated. :p This game is a test for various new mods. So I used a console command to give myself the "CiriWitcher" model and then applied it to the first female officer who showed up for hire in a tavern. That way I get to keep an eye on her for any graphical anomalies, and for that matter to look for any graphical anomalies elsewhere resulting from the modified "animation.sha".

No problems detected so far, so she's in the update archive. :onya
thats awesome, Im so happy shes out there now xD
 
Very cool work. I'm waiting ChezJfrey the new engine to adapt to this model. Perhaps the author of the modification will be interested in this: I have several models of characters. Characters are collected from several, have a few textures. Also I have an unfinished model of location - there is no ceiling. In addition, there is a model (see screenshot, from not release version), but instead of the model a void.
It was an early version of Delvin Blaise.
In addition: I do not like cuirass.
There is also the need to create several new textures for the characters.
This is a stupid list of things that I do not like now in my fashion.
If the author wants to talk, he can write to me.
I will be glad to communicate, my mod is still developing, so all the work is not urgent, but the earlier, the better.
If I just suggested the idea, it's also not bad.

ChezJfrey I think that it will be possible to deal with me. I really enjoy working with him. Although I can do much less than he does. I'm very surprised: the game was released in my country, but what foreign "amateurs" are creating, at times more abruptly than the modifications that are created in Russia.
 

Attachments

  • korsary_3_besplatno2.jpg
    korsary_3_besplatno2.jpg
    68 KB · Views: 498
Last edited:
Very cool work. I'm waiting ChezJfrey the new engine to adapt to this model. Perhaps the author of the modification will be interested in this: I have several models of characters. Characters are collected from several, have a few textures. Also I have an unfinished model of location - there is no ceiling. In addition, there is a model (see screenshot, from not release version), but instead of the model a void.
It was an early version of Delvin Blaise.
In addition: I do not like cuirass.
There is also the need to create several new textures for the characters.
This is a stupid list of things that I do not like now in my fashion.
If the author wants to talk, he can write to me.
I will be glad to communicate, my mod is still developing, so all the work is not urgent, but the earlier, the better.
If I just suggested the idea, it's also not bad.

ChezJfrey I think that it will be possible to deal with me. I really enjoy working with him. Although I can do much less than he does. I'm very surprised: the game was released in my country, but what foreign "amateurs" are creating, at times more abruptly than the modifications that are created in Russia.
Im not sure I understand 100%, but if you wanna trade models thats cool! xD I can send you a link for the high polygon version so you can add her to your modification when you get the new engine from @ChezJfrey :onya
 
Back
Top