Mod Unity Monster Black Market - Tits Mod V2P

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
the devs should be paying you, you're doing great work XD
Devs should be payed (for anyone who can, buy the game on 072Project store or on DLsite, both versions will receive updates).

I actually asked a dev to upgrade Spine Runtime module to support 4.2 skel files with physics module (4.2.37 is the version they use for ProjectR, by the way, so maybe it would help). The problem is it require some tinkering with engine modules and it requires some work and testing to not break things up. That's already asking too much, but if they consider the update that would be great.
 

AROc137

Newbie
Jan 22, 2023
29
3
70
Tits mod started as a graphics mod to give females extra tits size, that's why it was named like that in the first place. Later versions received some tweaks to game's scripting data which affected gameplay in some ways, like disabling a "Game Over" in one of specific endings on day 51 and bunch of other stuff.
Nowadays it's about re-doing animation/graphics data in a way which will be performance-friendly to user's hardware. Pretty much going to basics with optimization. Tits V2p have some of performance boost already, but there's still lots of work to do.
Developer of the game also helps with current updates (latest official game version is at 2.1.0.2, which Tits mod is currently can't work with yet). There's some bug fixes and performance boost too, maybe there will be more, but that's all I know for now.

I'll suggest to play the game as is first and then go ahead with Complex Breeding mod (preferably CBforDummies, since it's an easier one). There's plenty of game mechanics changes... maybe you'll like it.

There are other stuff for this game on this forum, but you'll have to look for it.

Anyway, here I share some work in progress and test stuff and for some test stuff in particular, I guess I'll share some of Physics Constraints module which was introduced in Spine 4.2. It's not supported by MBM sadly, but I can still prerender my experiments with MBM's skeletons:

Sylvia Tentacle Scene Physics Test:
View attachment 5322108

Barbara NPC Idle Stand Physics Test:
View attachment 5322111

Amilia Brainwashed Sex Scene Physics Test:
View attachment 5322112
Niceeee

Do you know if there's any news about MBM on STEAM?
Or if the developers will update MBM again?
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Niceeee

Do you know if there's any news about MBM on STEAM?
Or if the developers will update MBM again?
Steam version won't happen for the time being because recent political shitstorm with payment processors. version was made instead which is the one Steam version was supposed to be.

MBM did receive some technical updates and DLsite version will be updated when it will be approved by DLsite. Content updates are minor - updates to uncensor, for example:

ending_CG_3.png

This CG was always slightly censored, so I suggested to tweak it. So here you go (this one was added for 2.1.0.2).

Current WIP: "Girl_Dead" Unified Skeleton - Aure Assets merged and mixed:

AureDeadUnified.gif

October 10 update: "Girl Dead" Unified Skeleton - Aure, Anna, Vivi, Girl skeletons merged and mixed. Fits 632x632 sprite sheet:


GirlDeadUnified.gif

girl_nude_dead.png
 
Last edited:

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
I'd like to ask for some help. If there's one thing I really don't like to do while making unified skeletons that's editing cloth sprites for characters.

See, cloth sprites for Unique Slaves are drawn on same body parts:
body_low_2_bella.png

And here's a naked sprite, same for any slave type. For unique slaves it just switches to this naked sprite:
body_low_2_0.png

What I'm trying to do is to erase "naked body" part while leaving bunch of whitespace (so sprite keeps same coordinates in editor, THAT'S AN IMPORTANT PART)
body_low_2_bella.png

The problem is, I'm quite bad at it and it leaves visible blur/aliasing artifacts on seams:

ClothSpriteTest.png

I'm doing this because:
- It allows to change body color properly
- It allows for cloth adjustment depending on body properties like thigh size, breast size
- It allows to physically remove repeating naked body sprite out of sprite sheet which improves packing efficiency

Well, I'll continue the work regardless but if you want to give it a shot I can send you examples of sprites which needs to be edited. I just want it to look good and not spend much time on this particular task.
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Continuing on unified skeleton topic, sometimes I do need to change character appearance slightly. Recent example is Nero's dead model:

Default Nero_Dead:
NeroDeadDefault.gif
WIP Unified Nero_Dead:
NeroDeadUnified2.gif

There's two changes. One is obvious, second is less obvious but both use common slave's assets with sprite coloring method:

Using this sprite...
body_low_2.png
Instead of this sprite:
body_low_2_nero.png
Second one is hair, which use colored default sprite and part of unique Nero's back hair sprite on top of it to make similar looking shape:

NeroDeadHairHack.png

Of course, it's only a choice from technical perspective because I targeted specific sprite sheet resolution 1024x512 for all woman type skeletons and it worked out. Still need some cleaning on body-clothing transitions I mentioned in previous post:

woman_nude_dead.png

This WIP 1024x512 sprite sheet allows to load all woman type characters at once with most of customizations features enabled.

For now, Unique hair types have fixed color which can be changed in the future but as I showed with Nero's clothing, it comes with some deviation from original look. Just saying that it should be expected: I'm not a fan of storing same texture on a sprite sheet but with a Unique color/shading.

Some dirty hacks can and will be used to achieve performance and memory targets.

Some of it can be reconsidered at any time in some cases where I can't fit all characters into a target size limit, though. :p

I also considered merging girl and woman skeleton types together, but that's probably a bad idea from technical standpoint.

Anyway, Woman_Dead Unified (Bella, Claire, Karen, Sylvia, Nero, Woman assets merged) :

NeroDeadUnifiedWIP.gif
 

AROc137

Newbie
Jan 22, 2023
29
3
70
Continuing on unified skeleton topic, sometimes I do need to change character appearance slightly. Recent example is Nero's dead model:

Default Nero_Dead:
View attachment 5335768
WIP Unified Nero_Dead:
View attachment 5335778

There's two changes. One is obvious, second is less obvious but both use common slave's assets with sprite coloring method:

Using this sprite...
View attachment 5335784
Instead of this sprite:
View attachment 5335785
Second one is hair, which use colored default sprite and part of unique Nero's back hair sprite on top of it to make similar looking shape:

View attachment 5335815

Of course, it's only a choice from technical perspective because I targeted specific sprite sheet resolution 1024x512 for all woman type skeletons and it worked out. Still need some cleaning on body-clothing transitions I mentioned in previous post:

View attachment 5335825

This WIP 1024x512 sprite sheet allows to load all woman type characters at once with most of customizations features enabled.

For now, Unique hair types have fixed color which can be changed in the future but as I showed with Nero's clothing, it comes with some deviation from original look. Just saying that it should be expected: I'm not a fan of storing same texture on a sprite sheet but with a Unique color/shading.

Some dirty hacks can and will be used to achieve performance and memory targets.

Some of it can be reconsidered at any time in some cases where I can't fit all characters into a target size limit, though. :p

I also considered merging girl and woman skeleton types together, but that's probably a bad idea from technical standpoint.

Anyway, Woman_Dead Unified (Bella, Claire, Karen, Sylvia, Nero, Woman assets merged) :

View attachment 5336071
Will that somehow make it possible for slaves with special NPC haircut styles to exist in the future?
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Will that somehow make it possible for slaves with special NPC haircut styles to exist in the future?
Whole idea about unified/merged skeletons is to allow slaves to get whole asset pool. If you mean NPCs like Amilia, Flora, Niel - they have limited poses and assets.
Unique slaves like Aure, Bella and etc. have colored hair sprites, so the color is predefined and by default it can only change from that base color, which won't look right. The idea for the future is to edit these sprites to be converted to Grayscale and then paint on them with color code values.

The problem with that approach is like in Bella's body cloth case from previous post. It will look different. Or if there's colored parts, like red bow knot in Vivi's hair. It won't look right while colored too. These are 'edge cases', but it's noticeable and doesn't look right to me.

Here's how full asset pool looks for merged Girl (with Uniques) and Woman (with Uniques) "Dead" pose. Packs in 1024x1024 sprite sheet with a possibility to reuse half of assets. All in one skeleton file:

girl_nude_dead.png
Turning on all sprite slots in editor results in this monstrosity:

UnifiedDeadSlaveAll.png

Normal look:
womandeadunified.png

PS: For comparison, that's how asset pool for a single Woman_Dead skeleton is handled in the game by default (824x824 sprite sheet) :

girl_nude_dead.png
 
Last edited:

jonnijimbo

Newbie
Aug 3, 2022
27
29
136
Sorry, but can you post a screenshot? Might make it easier for me to understand if I see what going on your end.

Edit: Ah, I believe you're talking about visual gimmick for NPCs - when player have sex with them game now keeps track of two values, creampies and cumshots. One deletes part of clothing (if available), another changes hair design in a certain way (most of the time by removing hair sprite, sometimes with mesh edit of existing one). It affects NPCs figures in main play area.

To restore their original look you need to make a Washer item with Niel's cauldron. Once it's active, it removes current creampie-cumshot values in all slaves/NPCs.
that worked! thanks a bunch
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
One more post before I'll get back to work. Here's the current progress and some kind of road map for the future of this mod development:

- Need to combine all unique girl skeletons (anna, aure, vivi) into one common slave girl skeleton
- Need to combine all unique woman skeletons (bella, claire, karen, nero, sylvia) into one common slave woman skeleton
...
New step is to merge these girl-woman skeletons into one file. Here's the deal. In previous packed sprite sheet I showcased there were 200+ sprites.
I analyzed every sprite and found that plenty of resources for girl and woman are duplicated with some minor+scale changes. Basic hair sprites are mostly identical, horn types... but then there's some parts they don't share and that's when whole idea of merging them together comes into play:

TitsV3WIP16oct25-1.png

Don't know if you'll notice additions, but there's some on this screen. And skeleton complexity is much higher now.

Plus, I readjusted similar looking sprites. Like taking 1.0x scaled woman part and replacing smaller identical girl part with it by setting it to a lower (typically 0.9x-0.8x scale). In these cases downscaled part (1.0x to 0.8x) results in a sharper sprite. Sometimes it's pretty noticeable.

Yes, these are the same. Scale and position was adjusted manually.
TitsV3WIP16oct25-3.png

In terms of additional sprites, common girls got most of "tits" sprite variations. So in this particular case I ported Size 4 and 5 to woman part of the skeleton which previously was only available for girl skeleton type.

TitsV3WIP16oct25-4.png

At the end, sprite count for this skeleton went down to 168. Much lower than I expected.

How tight can it be packed? Well, how about 888x888 for every single combination available for "Dead" pose?

woman_nude_dead.png

But typically I go for "Power of Two" principle for sprites so it fits 1024x1024 set limit very nicely. I'll need to 'relax' some meshes for Vertex/Triangle count reduction later anyway.

It only comes with one big problem: how to tell the game which skeleton to load in the scene? By default it will load everything not specified in the Spine scripting file data. For now I'm testing animation method which splits timelines for Girl and Woman types:

TitsV3WIP16oct25-2.png

Basically, when you switch to Woman type skeleton file loads timeline (idleW) with only Woman slots (parts). Same for idleG "Girl" timeline.

It's something new and untested for the mod and I can only tell that it doesn't crash so far and seems like it can load Girl and Woman parts independently from a single skeleton.

This particular skeleton doesn't have animation bones by default, so other scenes with same tech will be pretty damn hard to make. But as I can tell, it's the only way forward with this mod.

As for performance... I don't know. Bones/constraints count will multiply by 2, which sounds bad at first. But then I remember that by default game use separate assets for common girl/woman and then player can have eight Unique Characters on screen each with it's own skeleton at the same time...

For now let's just say any potential performance hit in the future which may happen is justified now. But I think it will be much faster at the end.
Yeah, every single skeleton needs to be remade, but actual skeleton count loaded in game will drop from ~450 to 28 for Female actions. Because by default 28 is for a girl or woman only, then it's multiplied by 2 (56). Then it's multiplied by 8 for Unique slaves... Seems crazy? Well, here's the list of actual unique poses without repeats (no separated girl/woman/unique skeletons included now) :

- Bed 1 (VIP room)
- Bed 2 (VVIP room)
- Bed 2 right (VVIP room, practically only reverts same female skeleton to -1 on coordinate bone, need to merge it with 'bed 2'.
- Birth (4 skeleton for each character by default, yikes. This one is the reason for initial skeleton merge. Also the hardest one.)
- Card (female preview when you select them. Use separate "Stand" skeleton type, can try to merge it with actual Stand skeleton)
- Capsule
- Dead (Current WIP with full asset merge)
- Drain
- Goblin 1
- Goblin 2
- Horse
- Man 1 (Gloryhole scenes for brothel in man1-4. No faces, few body parts, easier to merge)
- Man 2
- Man 3
- Man 4
- Milk
- Minotaur 1
- Minotaur 2
- Move 1 (Dragging slave around. Alive)
- Move 2 (Dragging slave around. Dead State)
- Orc 1
- Orc 2
- Rest
- Salamander 1
- Salamander 2
- Stand (Separate Maid Skeleton IS merged into it at this point)
- Werewolf 1
- Werewolf 2

So yeah. These are skeletons I'll need to remake in the same way.
 
Last edited:

HandyCapped

Member
May 18, 2020
169
125
158
Haven't seen under the game's hood nor have I had any real performance issues (I like to keep my builds small and have a PC built for AAA slop), but the amount of apparent bloat I've seen cut to shape on this thread alone has made me do a small double take multiple times now, whenever you post. I've a sneaking suspicion that with this amount of infra improvements this mod could one day be an important part for the MBM experience, rather than just booba (well, which already is integral lol).

I wonder if any of this will ever affect the sequel, as the devs have a few times now expressed interest in making a more robust backend for R.
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Haven't seen under the game's hood nor have I had any real performance issues (I like to keep my builds small and have a PC built for AAA slop), but the amount of apparent bloat I've seen cut to shape on this thread alone has made me do a small double take multiple times now, whenever you post. I've a sneaking suspicion that with this amount of infra improvements this mod could one day be an important part for the MBM experience, rather than just booba (well, which already is integral lol).

I wonder if any of this will ever affect the sequel, as the devs have a few times now expressed interest in making a more robust backend for R.
Dev did mention they want to optimize for ProjectR, at least for mesh complexity . Problem is it takes time and people won't be happy with more delays between builds.
Code-wise ProjectR is supposedly better already.

MBM actually would benefit a lot if it had more similarities with how ProjectR is currently built. I know I could've make use of newer Spine-runtime iteration with physics module which ProjectR is using. Won't happen, but would've been nice.

As for Unique slaves situation in MBM, it was beneficial for speed of development and initial public recognition. We're just learning how much was sacrificed with that decision.
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Just another 'small' finding, figured how *Character_Card* works... just a bit better.

Before showcasing what can be done with it, here's a test you can do on your end with unmodded game (or with Tits mod V2p, it didn't changed that aspect at the time). Group Unique Slaves (preferably at one place, you'll need 2 cages nearby for all 8), if they are brainwashed already you need to make their faces look normal by unchecking "Depraved Face" checkbox in their info Tab:

MBMcardTest.png

...and select them by holding left mouse key. How you usually do to select multiple characters.

That action will create square character portraits, which game calls 'Character_Card'. Usually it's made of 'Cut down version' of character's "Stand skeleton pose", but it's a separate skeleton:

AureCardDefault.png

Anyway, once you selected Unique Slaves, take a look at Aure's square portrait card.

HowAureIsTheUniqueOne.gif

It has a minor detail which reminded me of past talks with the dev about cards. I'll say it in my own words to not quote it directly "The idea was to animate these portraits, but due to performance reasons it was scrapped".

In this case, Aure have a timeline leftover which still updates her facial (eyebrows and mouth) change. So at first I played with a timeline tab and made her move and blink like she does normally.

HowPortraitAureCouldHaveMoved.gif

But it's still a separate skeleton and I'd need to create separate merged skeletons for Cards. So I added "Portrait" timeline to a "Stand pose" skeleton. I wasn't surprised to see it working, but of course it rendered slave's legs. This happens because it takes a Root bone position. See Aure's Card skeleton in preview above, her face is at the center of viewport.

Root bones for "Cards" have different position, usually at coordinates (0.0, -500.0) instead of (0.0, 0.0). Aure is a Girl type, so her Root bone position have different coordinates, not that it matters but it can be moved or scaled to fit better in the square window for example:

AureCardRootBonePosition.png

So I made Portrait section to change a root bone position only, leaving everything else at default and now it renders slave cards like this:

WomanStandTranslatedToCard.gif
*don't mind face color change during this test, it's an unfixed WIP-related bug.

Well, it works. Also have a synchronized additional head movements I added for Tits V2p. By default without this mod they'll just blink as normal. They also don't use whole body/head movement because I don't see a particular need to make additional bone translations to a simple character portrait. It can be done, but I'll leave it like that for now.
This means it also runs of the same Stand skeleton and use same assets. Meaning now I can discard "Card" skeleton for good. Of course, I'll need to take care of Stand skeleton a lot to make it as performance friendly as possible because I'll also need to merge Girl skeleton into it.

In my current WIP Stand Skeleton now exclude Maid, Move and Card skeletons at the same time.

Once again, all comes down to Aure being the only true Unique character :p

Also, I do know ProjectR use a similar approach and it's even better. But the implementation is different and code base is changed to suite it. I can't adjust MBM's codebase on the same level, so I'm using my own workarounds based on existing code to make it work. As long as it's fast and doesn't break the game, I'm okay with it.

Edit: Adjusted Stand timelines for Stand pose, so card now can take shared timelines, depending on depraved state. So yeah, I can make them move just fine so I guess I'll use it:

View attachment WomanStandCardReplacementMovementWIPCRF20.mp4

WomanStandCardReplacementMovementWIP.gif
 
Last edited:

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Didn't look much into Glory Hole but it turned out to be a pretty interesting case.
GH1.png
First of all, it have 3 separate 'seats' which have several special GameObjects called "Paper" and "Border". "Paper" is used to get a projection of "Character_Card" skeleton on it. Yes, copy of character skeleton and covers the rest of it by a "Border" around it.
GH2.png
And then user can change between Fellatio, Anal, Vaginal positions which calls 3 separate skeletons (6, if user have girl and woman type in the room... multiplied by 8 if users have Unique characters on the screen in that room).
GH3.png
There's also writings on the wall which appears when Client cums outside and writing on females when they cum inside. Each of these writings then use a separate sprites and use a special command to use a particular sprite depending on set language in the game. Only 3 languages are valid for these scenes: Japanese, Korean and English. Any other language won't have writings on the wall, except if it has a specific line at the start of the file which have one of 3 languages "jp", "ko" or "en". So for now,
GH4.png GH5.png
I'd say I want:
1. To make writings on the wall independent from translation files, using English writings as a base, can expand on that using writings from other scenes and combine them with extra conditions to make them appear gradually;
2. To Disable "Portrait Objects" by disabling 9 GameObjects for this room "Paper", "Border", "CharacterSpine" x3;
3. Perhaps I'll be able to combine Man_Woman_1/2/3 into one skeleton file, which will reduce 30 separate skeleton for this room down to 1.

Update 22oct25:
Merged Anna, Aure and Vivi into Common Girl skeleton. This discards 3 separate skeletons for these Unique girls.
Also made some changes to man figure so it only use one sprite instead of two. Probably not very performance friendly, but lots of saved space on sprite sheet. Cum sprites are untouched for now but these take about 50% of a sprite sheet which is quite shocking to see now. Still fits nicely into 1024x512.

man_girl_nude_1G.png

man1girlMerged.gif
 
Last edited:

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
While I tested unsupported Spine 4.2 physics module on MBM skeletons I thought about how Night of Revenge (game by D-lis) did all that jiggle stuff. Because it ran on a very old Spine version, so surely it was animated but how exactly?

It appears to be a simple idea: you set up a bone which will be used to animate jiggling part and then you set a body mesh with dot(s) which need to get a "bone weight". It seems logical to set these dots at the center of the body mesh and it would help if body part have some colored highlights so user can see some actual movement. Of course, since it's not real-time body movement simulation it requires manual animation, but I think in some cases it's worth the effort.

Man_Woman_1 comparison:

Default scene:
manwoman1NOjigglebone.gif

Two additional "Thigh bones":
manwoman1jigglebone1.gif

Animated bone path is set up to move in triangular way with 4 points: Default position - up - side (left/right) - back to default position. With interpolation it's smoothed out a bit so it can appear to move in a "circular"-like way.

JiggleThighBone.gif

SpineView.jpg
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
Next showcase is an example how you should not animate scenes with only keyed mesh deformation (not done with bones, but actual mesh deform). I'm sure it's going to bite me later on for this animation: keyed mesh deformation bloats file size of a skeleton file, about 6kb per character and per sequence (which tends to multiply quickly in MBM's case), but for now I just want to show some added dynamics to the scene. Hope you like it, because this animation for man (Client) allows me to get rid of texture switching for man/dick/condom static images, so I'm going to use it as a base for other gloryhole scenes since I plan to merge them all into one file.
KeyedManMesh.png
Default:
man1womanDefaultS.gif
Current WIP:
man1womanDynamicsV2.gif
 

Krongorka

Well-Known Member
Sep 22, 2017
1,256
3,987
397
i have a bug when girls belly always big even when not pregnant
There's two possible explanations:
- Cumflation visual gimmick which happens when "semen inside" value is high.
- Fetus count function not working at all, which can happen if BepInEx isn't set properly.

If user is sure that BepInEx is running, yeah, that's cumflation gimmick which is going to be reworked for future versions.
 

nicogily

New Member
Jun 13, 2022
5
23
13
Is it possible that version 3 of this mod will open up the possibility of adding new animations or new special women to the game?

By the way, excellent work!

I've been following this mod for a long time, as I'm a big fan of the game and I'd like to add new content, but I don't know how to do it.

Do you have any tutorials or special links to learn how to mod this game? I'm a developer and I tried a bit with BepInEx and dn-spy, but I didn't get anywhere.