Author Topic: General Discussion  (Read 3821626 times)

0 Members and 30 Guests are viewing this topic.

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5175 on: July 22, 2015, 05:51:03 AM »
I just tried
Quote
    menu:
        "Ask for blowjob" if chr.has_image("blowjob", type="first_default", exclude=["rape", "angry", "in pain"]):
            $ pytfall.gm.img_generate("blowjob", exclude=["rape", "angry", "in pain"], type="first_default")
Still nothing. Well excuse me, all packs have non-rape bj pictures, and they tagged as intended, just checked. I think it's a bug either in tags function or the engine. Guess I can't continue to work with GMs anymore until you fix it...

And sourceforge continues to prove its failureness. Midweek, no eta for devs functions, some of presumably restored functions don't work too judging by comments.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5176 on: July 22, 2015, 06:07:30 AM »
I just triedStill nothing. Well excuse me, all packs have non-rape bj pictures, and they tagged as intended, just checked. I think it's a bug either in tags function or the engine. Guess I can't continue to work with GMs anymore until you fix it...

And sourceforge continues to prove its failureness. Midweek, no eta for devs functions, some of presumably restored functions don't work too judging by comments.

We do not have "blowjob" tag, 'sn': 'bc blowjob' is the translation that our dict does atm.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5177 on: July 22, 2015, 06:20:38 AM »
Yeap. I copy-pasted old lines from sex rpy for these checks, and they used old system. I spent hour and a half trying to figure it out  :D

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5178 on: July 22, 2015, 07:14:32 AM »
I really could use type = all for chr.has_image to exclude options without perfect pictures.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5179 on: July 22, 2015, 07:15:57 AM »
I really could use type = all for chr.has_image to exclude options without perfect pictures.

I don't quite follow...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5180 on: July 22, 2015, 07:19:45 AM »
                     - normal = normal search behavior, try all tags first, then first tag + one of each tags taken from the end of taglist
                     - any = will try to find an image with any of the tags chosen at random
                     - first_default = will use first tag as a default instead of a profile and only than switch to profile
So if you need to check if there are bj+partner hidden+simple bg pictures, with all three tags mandatory and not just some of them, there is nothing you can do. If I'm not mistaken.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5181 on: July 22, 2015, 07:35:14 AM »
                     - normal = normal search behavior, try all tags first, then first tag + one of each tags taken from the end of taglist
                     - any = will try to find an image with any of the tags chosen at random
                     - first_default = will use first tag as a default instead of a profile and only than switch to profile
So if you need to check if there are bj+partner hidden+simple bg pictures, with all three tags mandatory and not just some of them, there is nothing you can do. If I'm not mistaken.

But these are not even from the same method???

type is meaningless for has_image method, it is a fallback mechanism for show method. has_image takes tags as arguments and exclude=[tags] as positional argument. Nothing else, you can add anything there but it will have no meaning. show takes a whole mess of positional arguments like cache, label_cache, default, add_mood and etc.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5182 on: July 22, 2015, 07:43:15 AM »
Well, either you code it for show method and as a result for has_image method, or there will be inconsistencies.
Quote
        "Ask for blowjob" if chr.has_image("bc blowjob", "partnerhidden", exclude=["rape", "angry", "in pain"], type="first_default"):
            if chr.flag("s_bg") == "beach":
                if dice(50):
                    $ pytfall.gm.img_generate("bc blowjob", "partnerhidden", "beach", exclude=["rape", "angry", "in pain", "indoors", "onsen", "pool", "stage", "dungeon", "bathing"], type="first_default")
                else:
                    $ pytfall.gm.img_generate("bc blowjob", "partnerhidden", "simple bg", exclude=["rape", "angry", "in pain", "indoors", "onsen", "pool", "stage", "dungeon", "bathing"], type="first_default")
This thing is supposed to not let you have bj option if there are no "bc blowjob" + "partnerhidden" pictures at all. Yet it's not unusual to see "bc blowjob" without "partnerhidden".

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5183 on: July 22, 2015, 08:34:23 AM »
You'll have to be more specific about the problem. Most if not all show-type lookups will first check for all tags (perfect scenario, first_default should do that at least). If such is not found, they fall back on different kinds of database searches for a fitting match instead.

I don't understand what you want from the method... if initial "all" lookup fails, what do you want to happen instead? Maybe you just need to put another has_image fork in the code...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5184 on: July 22, 2015, 09:20:09 AM »
Falling back is just one of possibilities. Another option is to not allow some rare stuff, like footjob, appear in menu at all if the girl doen't have such pictures with hidden partner.

More importantly, we have cu tag (aka after sex) which is perfect for such cases. But I think it was added after you coded falling back system, so it doesn't use it. It is the most perfect default tag for many sex interactions. At least add it to the system. Or point me out where it is, maybe I can handle it.
« Last Edit: July 22, 2015, 09:52:11 AM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5185 on: July 22, 2015, 12:33:38 PM »
Falling back is just one of possibilities. Another option is to not allow some rare stuff, like footjob, appear in menu at all if the girl doen't have such pictures with hidden partner.

What do you mean by not appearing in the menu? Ren'Py menus have nothing to do with our images and you can exclude anything you like when you condition menu choices. If you need predefined lists, there are examples where in the past, we defined lists with tags and added them to exclude list.

More importantly, we have cu tag (aka after sex) which is perfect for such cases. But I think it was added after you coded falling back system, so it doesn't use it. It is the most perfect default tag for many sex interactions. At least add it to the system. Or point me out where it is, maybe I can handle it.

It's getting too complicated (again). For now use this:

Code: [Select]
$ pytfall.gm.img_generate("bc blowjob", "partnerhidden", "beach", exclude=["rape", "angry", "in pain", "indoors", "onsen", "pool", "stage", "dungeon", "bathing"], type="first_default", default=chr.select_image(chr.id, 'after_sex'))
The only issue atm is that right now it will fall back to No Image Found image in case if no image is found. I'll rewrite the func a bit later.

I'll improve it after we get our repo back or move somewhere. They promised to give us another update today but if you are ok with moving, we can move to GitHub (or at least start a repo there, they are in no way mutually exclusive (afaik)).
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #5186 on: July 22, 2015, 12:57:42 PM »
What do you mean by not appearing in the menu? Ren'Py menus have nothing to do with our images and you can exclude anything you like when you condition menu choices. If you need predefined lists, there are examples where in the past, we defined lists with tags and added them to exclude list.
Ok, I explain as detailed as English possibly can  :D

I made a menu where you select sex actions after the girl already agreed to have sex. Blowjob, anal, etc. Like in AA, you can do several options one after another as long as you and the girl have enough vitality and joy. Every option changes picture, like anal for anal sex. And they also have internal logic like checking oral skill for blowjob.

Now, "lesser" sex options that don't even have their own skill and are quite rare in terms of pictures, such as footjob or handjob, may or may not be presented in packs. Same goes for many lesbian options, they are very inconsistent. So instead of showing default pics for them we might as well cut them entirely. I mean ONLY lesser, rare ones. In this case the problem is to find out if the pack has them or not. I already have checks like I quoted before, so packs without footjob will not have footjob option.

But I can't possibly check footjob+hidden partner, which is more accurate in this case since it's MC having sex and not some customer. Because as long as there is at least one footjob picture, has_image method will return true even if it goes without hidden partner.
« Last Edit: July 22, 2015, 01:05:02 PM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5187 on: July 22, 2015, 01:06:09 PM »
But I can't possibly check footjob+hidden partner, which is more accurate in this case since it's MC having sex and not some customer. Because as long as there is at least one footjob picture, has_image method will return true even if it goes without hidden partner.

And I keep telling you that it's not the case!

Has image is separate from select_image which is usually used internally and show methods. It accesses tags database directly and gets the exact combination.

so if chr.has_image("footjob", "hidden partner") is checked, IT WILL NOT RETURN True if only one of the tags comes with an image, ONLY if there is an image with BOTH tags.

I'll be in the chatroom for the rest of the evening :)
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5188 on: July 22, 2015, 05:20:05 PM »
Oki, new git repo from the first try :)

Have fun! : https://github.com/Xela00/PyTFall.git

I figure we should use their issue tracking as well (it is automatically being updated when you push and link the issues!).

I will use Git Extensions for now, it's by far the most intuitive software available but even Mercurial HG has a build in plugin to use mercurial repo with git (google it).

So create account and submit pull requests!
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #5189 on: July 22, 2015, 05:32:02 PM »
I see why github is beating everything else...

1) Login was automatically setup! No need to mess with it or enter password all the time.
2) Hints in the software when writing commit message.
3) Decent speed without errors.
4) Automatic GitHub plugin in extensions.
5) Very intuitive controls/issue tracking on website + software that seems simpler to use than Mercurial.
6)...
7 Profit :)

Just pushed some bs to see what's what... gonna do a readme files next.
Like what we're doing?