Deleted member 435

( ͡° ͜ʖ ͡°)
Modder
Donor
Aug 6, 2016
704
3,803
Oh. Those two I mentioned. The one you just tried that worked. And the other one that should be easier to implement automatically.

Ad hoc since they still require some work on your part. Non ad hoc means you guys just need to overwrite the jack.exe.
Gotchya.

Did a new slave here's the results with exactly what I did:
You don't have permission to view the spoiler content. Log in or register now.

There's no need to be rude sir. Farewell.
I don't think he was being rude, could be me misunderstanding but he was just explaining exactly what he did. :unsure:
 
  • Like
Reactions: qwertyu12359

Deleted member 435

( ͡° ͜ʖ ͡°)
Modder
Donor
Aug 6, 2016
704
3,803
Also tested just the 2nd part you provided to me 40 times, everything worked perfectly like the first part, here's the steps and results:

1. Slave:1556_purple_short_young
2. Renamed images: cookpurpleshortyoung, cookpurpleshortyoung2,cookgeneralyoung,cookgeneralyoung2
3. Changed JSON cooking array to: ["girls/scene/cookgeneralyoung", "girls/scene/cookgeneralyoung2", "girls/scene/cookpurpleshortyoung", "girls/scene/cookpurpleshortyoung2"],

This time the game correctly randomly generated ALL of the provided images even though the general images were provided first.
 
  • Like
Reactions: qwertyu12359

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
I had already listed two ways on how you can fix the bug together with the edited jack.exe.

There's no need to be rude sir. Farewell.
Rude? I literally wanted to be comprehensive and thorough, in order not to waste your time. Please don't assume malevolent intent, I have none.

And thank you for helping us even more after your first post.
 

Squidwarden

New Member
Sep 12, 2019
14
8
Then, our options are:

Employ the bug-fix of percivalleporidae (thanks again for helping us). Requires:
- Rewritte thes json to reorder the "picture address"
- Rewritte the name of the image files

Return to the *.gif format. Requires:
- Rewritte the extension of the image files
- Anything more?

In my humble opinion, I vote to return to *.gif. With the small trick that I described before I don't expect to lose the quality of any picture and we can have again sporadic animations. And possibly this change could require less effort and time.
 

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
Then, our options are:

Employ the bug-fix of percivalleporidae (thanks again for helping us). Requires:
- Rewritte thes json to reorder the "picture address"
- Rewritte the name of the image files

Return to the *.gif format. Requires:
- Rewritte the extension of the image files
- Anything more?

In my humble opinion, I vote to return to *.gif. With the small trick that I described before I don't expect to lose the quality of any picture and we can have again sporadic animations. And possibly this change could require less effort and time.
The bug-fix by percivalleporidae is actually the most realistic one we can apply. We only need to remove "_" in the json and the name of the pictures. I just can't wrap my head around how to remove "_" in the json while excluding "seed_ava", "bathing_alone" etc. from being replaced in the text files. If someone could help me with finding the proper notepad++ algorithm, the game should be ready. :)

However, returning to the *.gif format is more of a hassle that we can think of. Indeed, in 1.8, some of the pictures were in .jpg, some were in .png, some were in .gif. In 2.0, they all got turned into .png. If in 2.0 we try change all occurrences of ".png" into ".gif" in the qsp file, the UI becomes broken. The solution would be to know, in the code, which pictures were in ".gif" to begin with, but I tried with my intuition, thoroughly, and if I didn't change ALL the pictures format, the sex scenes weren't read at all.
 
Last edited:

noname1990

New Member
Mar 9, 2018
3
9
We only need to remove "_" in the json and the name of the pictures. I just can't wrap my head around how to remove "_" in the json while excluding "seed_ava", "bathing_alone" etc. from being replaced in the text files. If someone could help me with finding the proper notepad++ algorithm, the game should be ready.
Not sure if this is exactly what you want (because I didn't really exactly follow the discussion, just patiently waiting for updates about non-alpha, non-beta release) but this likely can be achieved with a simple regex:

Code:
_(?!.*:)
will match all "_" characters following ":" (so basically JSON field values but not names) - example:

Then it's just a matter of a simple regex search and replace in path.
 

HSHS1111

Active Member
Feb 8, 2019
889
1,396
Regex are powerful and the solution by noname1990 will work fine. But using regex often times is like hitting in a nail with a sledgehammer. It'll work fine but you need excessive amounts of power just handling the tool.

If "seed_ava" and "bathing_alone" are the only other two instance you can just replace them with something like "seed$ava" and "bathing$alone" then do all the other "_" replacements. Afterwards change "seed$ava" and "bathing$alone" back to "seed_ava" and "bathing_alone".

It might still be worthwhile doing the regex solution just to learn them if it is something that interests you. Might even come in handy later in your modding/development endeavors.
 
  • Like
Reactions: qwertyu12359

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
Oh. Those two I mentioned. The one you just tried that worked. And the other one that should be easier to implement automatically.

Ad hoc since they still require some work on your part. Non ad hoc means you guys just need to overwrite the jack.exe.
Also tested just the 2nd part you provided to me 40 times, everything worked perfectly like the first part, here's the steps and results:

1. Slave:1556_purple_short_young
2. Renamed images: cookpurpleshortyoung, cookpurpleshortyoung2,cookgeneralyoung,cookgeneralyoung2
3. Changed JSON cooking array to: ["girls/scene/cookgeneralyoung", "girls/scene/cookgeneralyoung2", "girls/scene/cookpurpleshortyoung", "girls/scene/cookpurpleshortyoung2"],

This time the game correctly randomly generated ALL of the provided images even though the general images were provided first.
Hey, I'm a little bit confused. When trying it Sunday night, I thought I saw it working.

Today, no matter how much I try, this doesn't work. Jack.exe has been properly replaced, all images were renamed without any "_", all json have had the following formula applied in Notepad++ and they look flawless to me.
Code:
_(?!.*:)
Loli example (repeatable with other loli slaves, same results):
1. Slave: 0293redshortloli
2. Renamed images and json line: "girls/sex/bjgeneralloli", "girls/sex/bjgeneralloli2", "girls/sex/bjredshortloli"
3. Result: bjgeneralloli, bjgeneralloli2, bjblondlongloli, bjblondlongloli2, bjblondlongloli3 (that's right, for loli it brings blonds, and not white short haired)

Young example (repeatable with other young slaves, same results):
1. Slave: 1219bluelongyoung
2. Renamed images and json line: "girls/sex/sexgeneralyoung", "girls/sex/sexgeneralyoung2", "girls/sex/sexgeneralyoung3", "girls/sex/sexbluelongyoung"
3. Result: sexgeneralyoung, sexgeneralyoung2, sexwhiteshortyoung, sexwhiteshortyoung2

Milf example (repeatable...):
1. Slave:
2123blondlongmilf
2. Renamed image and json line: "girls/scene/gymgeneralmilf", "girls/scene/gymgeneralmilf2", "girls/scene/gymgeneralmilf3", "girls/scene/gymblondlongmilf"
3. Result: gymgeneralmilf, gymgeneralmilf2, gymgeneralmilf3 (it made me notice there is no "gymwhiteshortmilf", oops. But still, when making her shower or do anything else, it still fetches for white and short-haired milf pics)

Do you have any idea why it works with you and not with me? (I also tried the first solution, placing the "general" pictures at the end of the array, without removing the dash. It didn't work)
 
Last edited:

Squidwarden

New Member
Sep 12, 2019
14
8
I have no idea about coding, or QSP or anything like that.
In this ¿chaos? I only can contribute with one observation. Could the problem be related with how this game read the jsons? Long time ago in previous versions of the game I tried to create an "early R34 mod". To remember to use the same picture for several scenes, I named it using combined names like "bj_dt" or "gangbukake" and things like that. The problem when I tried to play with these characters, was that all the scenes were showed in non-sense: bj when fj, titjob when exhibit, and things like that. Everything was solved when I provided a non-combined names per picture.

I don't know how this can be related with the current problem but maybe somebody more capable than me will be able to link the dots.


However, returning to the *.gif format is more of a hassle that we can think of. Indeed, in 1.8, some of the pictures were in .jpg, some were in .png, some were in .gif. In 2.0, they all got turned into .png. If in 2.0 we try change all occurrences of ".png" into ".gif" in the qsp file, the UI becomes broken. The solution would be to know, in the code, which pictures were in ".gif" to begin with, but I tried with my intuition, thoroughly, and if I didn't change ALL the pictures format, the sex scenes weren't read at all.
If I remember well, each category had a single extension: sex, scene, torture and body were *.gif. I forget the remain categories, but one possibility is to download a previous version of the game and check folder by folder.
 
Last edited:

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
To remember to use the same picture for several scenes, I named it using combined names like "bj_dt" or "gangbukake" and things like that. The problem when I tried to play with these characters, was that all the scenes were showed in non-sense.
I don't know how this can be related with the current problem but maybe somebody more capable than me will be able to link the dots.
Interesting observation. Maybe someone more capable than also me will be able to link the dots, if they are to be linked.

If I remember well, each category had a single extension: sex, scene, torture and body were *.gif. I forget the remain categories, but one possibility is to download a previous version of the game and check folder by folder.
That'd be too easy :p We'd need to know in the json files, where to have .png, .jpg, and .gif. And the json file is a non-intuitive mess. Besides, for future's sake, it would be so much more convenient to stick to .png files (granted the game only cares about the extention and not the format, but still!).

If only we were able to fix this image problems, the new beta version, the one that fixes all the known bugs, would be out by now-ish. We only need a last breakthrough...
 
Last edited:

Dragonsfury90

Newbie
Aug 28, 2018
27
11
I didnt search the last 20 pages to see if it was mentioned, but i noticed in the beta that "child" is still an option in the slaver experts search, doesnt seem to work but its there.
 

shridder

New Member
Jun 2, 2018
1
1
Looks like the issue could be the order of the elements in the JSON array.

In your findings:

Young example (repeatable with other young slaves, same results):
1. Slave: 1219bluelongyoung
2. Renamed images and json line: "girls/sex/sexgeneralyoung", "girls/sex/sexgeneralyoung2", "girls/sex/sexgeneralyoung3", "girls/sex/sexbluelongyoung"
3. Result: sexgeneralyoung, sexgeneralyoung2, sexwhiteshortyoung, sexwhiteshortyoung2
However, according to percivalleporidae - the general references should be added to the end of the JSON array.

Will you try rearranging the json files as follows?

"girls/scene/cook_purple_long_young", "girls/scene/cook_purple_long_young_2", "girls/scene/cook_purple_long_young_3, girls/scene/cook_general_young", "girls/scene/cook_general_young_2"

That is, similar to version 1.8, the general image references should be placed at the end of the JSON array.
Do you still have the same problem if you reorder the array to:
"girls/sex/sexbluelongyoung", "girls/sex/sexgeneralyoung", "girls/sex/sexgeneralyoung2", "girls/sex/sexgeneralyoung3"

*Edit - corrected mistakes*
 
Last edited:
  • Like
Reactions: qwertyu12359

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
However, according to percivalleporidae - the general references should be added to the end of the JSON array.

Do you still have the same problem if you reorder the array to:
"girls/sex/sexbluelongyoung", "girls/sex/sexgeneralyoung", "girls/sex/sexgeneralyoung2", "girls/sex/sexgeneralyoung3"
With both methods applied, it works! It means we can think about releasing the next beta. :)

Powerairmax came back briefly. He gave me the coding method to make a loli patch on my own, and gave me the instructions to add the dynamic system of musics (that means that we'll immediately be able to have 5 different music that plays for "home" depending on the mood your slaver was when starting a new day).

St. Jezus is busy with implementing the bugfixes for 1.8 bugs (such as getting the snake talisman, making the charriot race every decade etc.)

I have fixed the tutorial, and used the infos to fix Isabella. I've also added back her different clothing.

If someone has a notepad++ algorithm to automatize the "put general pictures in the end of the array" operation, or work around that, I'll apply it with pleasure. Otherwise, I'll need to remove all the general pictures for the sex scenes (not ideal, that's a last resort, that's way I make a call for someone to help us :) ).

It's encouraging nonethesless. I don't want to give up on this game ;)
 
Last edited:

noname1990

New Member
Mar 9, 2018
3
9
If someone has a notepad++ algorithm to automatize the "put general pictures in the end of the array" operation, or work around that, I'll apply it with pleasure. Otherwise, I'll need to remove all the general pictures for the sex scenes (not ideal, that's a last resort, that's way I make a call for someone to help us :) ).
Sledgeham- err, I mean regexp to the rescue again.

Code:
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]


It will within JSON array (starting with [ and ending with ]) match non-greedily (shortest possible match) any " enclosed strings that do not contain word "general" (first capture group) then it will match any single " enclosed string that does contain word "general" (second capture group) then it will capture everything else (third capture group) without leading comma and whitespaces (fourth capture group).
Reordering now just boils down to reordering the capture groups (\1\4, \2 instead of the original \1\2\3):
Code:
regex replace 
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]
with
\1\4 , \2
and running this search and replace a few times (because it only moves one "general" string to the end of the array at a time).

Warning: this will reorder paths even on lines where it already is correct (basically it always moves first "general" path it encounters to the end, if all are already at the end it will shift them).
Warning: it's really late here and I really didn't have time or opportunity to test it properly so it may not work and / or only look like it's woking.
 

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
Sledgeham- err, I mean regexp to the rescue again.

Code:
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]


It will within JSON array (starting with [ and ending with ]) match non-greedily (shortest possible match) any " enclosed strings that do not contain word "general" (first capture group) then it will match any single " enclosed string that does contain word "general" (second capture group) then it will capture everything else (third capture group) without leading comma and whitespaces (fourth capture group).
Reordering now just boils down to reordering the capture groups (\1\4, \2 instead of the original \1\2\3):
Code:
regex replace
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]
with
\1\4 , \2
and running this search and replace a few times (because it only moves one "general" string to the end of the array at a time).

Warning: this will reorder paths even on lines where it already is correct (basically it always moves first "general" path it encounters to the end, if all are already at the end it will shift them).
Warning: it's really late here and I really didn't have time or opportunity to test it properly so it may not work and / or only look like it's woking.
That's invaluable, thank you infinitely! :love: I cannot test it out right now either, but it should work (I hope it will!).

Assuming it works, the only condition for the next beta to come out is for St. Jezus to connect again and provide his updated json file to us. He is usually pretty reactive and present, it should be soon. :)
 

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
Sledgeham- err, I mean regexp to the rescue again.

Code:
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]


It will within JSON array (starting with [ and ending with ]) match non-greedily (shortest possible match) any " enclosed strings that do not contain word "general" (first capture group) then it will match any single " enclosed string that does contain word "general" (second capture group) then it will capture everything else (third capture group) without leading comma and whitespaces (fourth capture group).
Reordering now just boils down to reordering the capture groups (\1\4, \2 instead of the original \1\2\3):
Code:
regex replace
\[(.*?)?("[\w\/]*general[\w\/]*")(\s*,\s*(.*)\s*)\]
with
\1\4 , \2
and running this search and replace a few times (because it only moves one "general" string to the end of the array at a time).

Warning: this will reorder paths even on lines where it already is correct (basically it always moves first "general" path it encounters to the end, if all are already at the end it will shift them).
Warning: it's really late here and I really didn't have time or opportunity to test it properly so it may not work and / or only look like it's woking.
So, I've tried, and it partially works. It picks the 1st general, and moves it towards the end. But then it can't find any occurence again, meaning I can't, then, replace "general_2". And what if I could? Would it then place back all "general" pictures in all lines where there were only one occurrence of them?

Also, when replacing with "\1\4 , \2" it also removes the parenthesis from the array.

Maybe the problem comes from me being dumb. If you don't want to waste your time explaining, I've uploaded an archive of the json files so you can apply it properly and share it with us (if you want, of course).

On a side note, someone reported the link to mega and my whole Mega account was banned. Apparently, "Mega has a zero tolerance for pornography" (lol). Nevermind, I made backups, but that's another obstacle...
 

noname1990

New Member
Mar 9, 2018
3
9
So, I've tried, and it partially works. It picks the 1st general, and moves it towards the end. But then it can't find any occurence again, meaning I can't, then, replace "general_2". And what if I could? Would it then place back all "general" pictures in all lines where there were only one occurrence of them?

Also, when replacing with "\1\4 , \2" it also removes the parenthesis from the array.
eh, I meant to say replace with "[\1\4, \2]" not with just "\1\4, \2" - basically add the missing brackets in the replace line. My bad.

Maybe the problem comes from me being dumb. If you don't want to waste your time explaining, I've uploaded an archive of the json files so you can apply it properly and share it with us (if you want, of course).
I actually couldn't test it / run it because I don't have N++ and the editor I'm using has different search and replace system...
But in the meantime I did cook up a quick groovy script that reads JSON, reorders items in arrays and prints new versions - see file: (old directory contains original jsons, new contains transformed ones)
The only problem is, I did not configure pretty printing/serializing so it uses default options so it prints array with one item per line (and 4-space indents instead of 2-space).
So something like
Code:
"bathing_alone": ["girls/scene/bath_general_milf", "girls/scene/bath_general_milf_2", "girls/scene/bath_white_short_milf", "girls/scene/bath_white_short_milf_2"],
will look like
Code:
"bathing_alone": [
    "girls/scene/bath_white_short_milf",
    "girls/scene/bath_white_short_milf_2",
    "girls/scene/bath_general_milf",
    "girls/scene/bath_general_milf_2"
],
in new file. If that's not a problem then great, if it is then do let me know and I'll see if I can fix that somehow.
 

qwertyu12359

Jack-o-nine-tails
Game Developer
Aug 1, 2017
1,633
1,816
BETA RELEASE

Many thanks to noname1990 ! Now we should finally have satisfying version. St. Jezus was AFK, sadly, so I couldn't fix all the 1.8 bugs. However, the game should be fully playable, and enjoyable!

Jack-o-nine-tails v2.0 Beta (version 2) - no loli : +
(known annoyance: when trying to sell a slave to a Rome resident, the backgrounds appears too big. It was always too small before, when entering the neighborhood streets. It should be just the right size for the non-beta version, tell me if this is too much of an annoyance).

Loli patch:

Isabella, Felicity and the tutorial girls are fixed. The "only generic pictures show" bug is fixed! And we finally added the dynamic music system for the home music, which will depend on your mood! Many more, here is the full list:
You don't have permission to view the spoiler content. Log in or register now.

I'm proud and happy to present you this version, I hope it will play flawlessly for you. And I'm impatient to receive your input and feedbacks ;)
 
Last edited:
4.00 star(s) 63 Votes