devolution

Author Topic: Bugs 1.29.3  (Read 76541 times)

0 Members and 1 Guest are viewing this topic.

Offline zodiac44

  • Hero Member
  • *****
  • Posts: 560
  • Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn
Re: Bugs 1.29.3
« Reply #60 on: December 02, 2009, 04:50:55 PM »
I don't know how it was supposed to work, but one turn seems awfully short.  How long do the single girl, temporary effects last?  If we stick with, say, half that time for now until we find something more balanced, we can at least test the items.  I'll start a thread in the features section to discuss temporary effect items.

[edit]

Found a bug: matrons "forget" what girls were doing before they were taken off duty to rest when you load a saved game.  Example: matron takes Kiki off brothel duty due to tiredness.  Save game.  Kiki rests until her tiredness reaches 0, and the matron puts her back on brothel duty (matron works properly).  Load saved game.  Kiki rests until her tiredness reaches 0, and the matron doesn't put her back on brothel duty (matron forgot what she was doing).
« Last Edit: December 02, 2009, 05:03:34 PM by zodiac44 »
Capitalization is the difference between "I had to help my uncle Jack off a horse" and "I had to help my uncle jack off a horse."

Offline delta224

  • Dev Team
  • *****
  • Posts: 577
Re: Bugs 1.29.3
« Reply #61 on: December 02, 2009, 05:13:40 PM »
Zodiac44, I think the matron issue is due to the fact that the previous job is not saved.  For the temp items, I have no idea how it was supposed to work.

Offline sgb

  • Sr. Member
  • ****
  • Posts: 380
Re: Bugs 1.29.3
« Reply #62 on: December 02, 2009, 05:53:33 PM »
I believe it was stated when it was first implemented that it was supposed to be 20 turns.  Of course this was when turns were one day.  20 WEEKS isn't very temporary.  I'm not sure there IS a way to implement them in a way that is both logical and balanced anymore (probably why Necro has given the matter no attention since first implementing it).  4 turns (a month) sounds logical for a temporary item, but I certainly wouldn't buy an item that works for only 4 turns.  It's also a nightmare to ever balance.  I mean if an item that gives +10 to two stats permenantly is worth 300 gold, then how much is an item that only does this for 20 turns worth?  50 gold?  Why even bother with the temporary one for the sake of 250 gold?

IMO, it was an interesting idea that doesn't translate well into gameplay.  Also, it causes a mess of programming.  I mean, what happens when you get into items that temporarily add or remove traits?  What if I equip an item that permenanty adds a trait, and the temporary one runs out?  What if I make a super powerful item that temporarily gives +100 to all sex stats for a month?  Does it get dropped to 0 after running out, even though that character had various values before using the items?  It's just a pain IMO.

I've taken all temp items out of my item pack because I never used any of them (even before knowing they didn't actually work right), and frankly think the whole thing should just be scrapped.
« Last Edit: December 02, 2009, 05:56:04 PM by sgb »

Offline Alugere

  • Full Member
  • ***
  • Posts: 130
Re: Bugs 1.29.3
« Reply #63 on: December 02, 2009, 06:22:43 PM »
It seems that every time I try to convert an old .rgirls file into a new .rgirlsx xml file, the girls' values all end up in the wrong place. I have girls whose looks range from 0-50% age ranging from 18-98 and sometimes being unknown for no reason. The rebelliousness also seems to like starting at around -100%.

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Bugs 1.29.3
« Reply #64 on: December 02, 2009, 06:25:10 PM »
I can run it through my perl script and see if that sorts it out, if you like. (Or you can have the script if you can run perl)

Offline zodiac44

  • Hero Member
  • *****
  • Posts: 560
  • Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn
Re: Bugs 1.29.3
« Reply #65 on: December 02, 2009, 06:48:54 PM »
I believe it was stated when it was first implemented that it was supposed to be 20 turns.  Of course this was when turns were one day.  20 WEEKS isn't very temporary.  I'm not sure there IS a way to implement them in a way that is both logical and balanced anymore (probably why Necro has given the matter no attention since first implementing it).  4 turns (a month) sounds logical for a temporary item, but I certainly wouldn't buy an item that works for only 4 turns.

Forget about days, weeks, months.  They are only arbitrary designations anyway.  The only reason we use weeks as the base unit now is so we can have a reasonable pregnancy period (of course, maturity is still hyper accelerated, though who wants to play through 18 years until your first child matures?).

Quote
It's also a nightmare to ever balance.  I mean if an item that gives +10 to two stats permenantly is worth 300 gold, then how much is an item that only does this for 20 turns worth?  50 gold?  Why even bother with the temporary one for the sake of 250 gold?

Pricing them will be difficult to an extent, though I could write a formula to take care of it automatically.

Quote
IMO, it was an interesting idea that doesn't translate well into gameplay.  Also, it causes a mess of programming.  I mean, what happens when you get into items that temporarily add or remove traits?  What if I equip an item that permenanty adds a trait, and the temporary one runs out?  What if I make a super powerful item that temporarily gives +100 to all sex stats for a month?  Does it get dropped to 0 after running out, even though that character had various values before using the items?  It's just a pain IMO.

I don't know how traits are handled, but you could ask the same question of permanent items.  What if I have one ring that adds the Tough trait and a second ring that removes it?  Does the girl have the Tough trait or not?  Does it depend on whether she had it to begin with or not?  I don't know.

As far as skills and stats go, I can answer that one.  Base skills and stats, permanent bonuses, and temporary bonuses are all tracked separately from one another.  So your super powerful temporary item would raise all skills to max and they would return to their previous value, plus whatever bonuses the girl got from working or training (which don't stop accumulating when your skills max out), when the effect expires.
Capitalization is the difference between "I had to help my uncle Jack off a horse" and "I had to help my uncle jack off a horse."

Offline delta224

  • Dev Team
  • *****
  • Posts: 577
Re: Bugs 1.29.3
« Reply #66 on: December 02, 2009, 07:10:47 PM »
Here is how that trait example would work. If you gave here the ring that gives toughness first then the removal she would not have the trait.  If you gave her the ring that removes the trait then the ring that adds it she has the trait.  This gives us two states a- with the trait b-without the trait.  When you unequipped the rings I am not sure at the moment what happens but I think it will end up with the girl having the trait without any of the rings equipped.  It does not matter if she has the trait or not to begin with.


Offline Solo761

  • Administrator
  • *****
  • Posts: 175
Re: Bugs 1.29.3
« Reply #67 on: December 02, 2009, 07:21:37 PM »
Correct (original) description of these item behaviors was posted on old-old forum, but it's lost now, old-old forum is no more.

I think it was something like this. Default behavior is just that, default, you have item, you use it, it does it's thing and that's it. Other two are Affects all girls temporarily and Affects one girl temporarily. This temp effect was meant to last for 20 turns while diminishing every turn, to get to 0 at the end of these 20 turns. That makes it somewhat easy to not screw up original stats/skills. Simply add, let's say, 40 to that stat/skill and then subtract 2 points each turn for 20 turns. It would return to original value. And if that exact skill/stat is improved via some other way (like training) it won't matter, as this subtraction is set, and won't subtract more than 2x20 points.
Things get somewhat complicated if this temp item gets used twice so there's like another 40 points added 2 turns after first 40 points, at code side at least. But it could be made to work, even if it means making it so that girl can be under effect of only one temp item at a time so there is one thing less to worry about.

Although there could be conflicts here, trait management being the largest, if girl is given one trait via temp item will it be deleted after 20 turns even if she uses another item that gives her this trait permanently, and similar. One another potential problem could be max values for skills/stats. If girl has it at 80, and gets under effect of item that raises it for 40 how will that turn out? 100 is max, will she have 60 after 20 turns or will it decrease to correct 80.

Story wise temp items could have their use, like making some items that are otherwise very rare commoner in their temp form. Like cure for some diseases or addictions. If you can't have the real thing temp one would be good enough until permanent one is acquired. And this just gave me an idea how to "fix" trait conflict, and perhaps others also. If trait/skill/stat is under temp effect and permanent one is used, temp one is canceled and permanent gets into full effect. For traits this would be somewhat easy to do, it's simply on or off, for skills/stats this will be somewhat harder, it would probably mean that original (base) value would need to be stored somewhere, and probably added to if that stat/skill would get changed via training or like.

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Bugs 1.29.3
« Reply #68 on: December 02, 2009, 07:35:59 PM »
Things get somewhat complicated if this temp item gets used twice so there's like another 40 points added 2 turns after first 40 points, at code side at least. But it could be made to work, even if it means making it so that girl can be under effect of only one temp item at a time so there is one thing less to worry about.

Well, there's code in already to remember temp changes from items, so most of that would be OK. The easiest thing to do about repeated uses of an item would be to refresh the effect back to full power. Might still need to be a bit clever about the countdown in case someone used the same item in two different places at different times, but sounds manageable.

Although there could be conflicts here, trait management being the largest, if girl is given one trait via temp item will it be deleted after 20 turns even if she uses another item that gives her this trait permanently, and similar.

Traits should be OK - they get remembered too. The temp vs. perm thing is already handled. (Just been looking at that code :)

Offline zodiac44

  • Hero Member
  • *****
  • Posts: 560
  • Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn
Re: Bugs 1.29.3
« Reply #69 on: December 02, 2009, 07:43:20 PM »
Here is how that trait example would work. If you gave here the ringthat gives toughness first then the removal she would not have thetrait.  If you gave her the ring that removes the trait then the ringthat adds it she has the trait.  This gives us two states a- with thetrait b-without the trait.  When you unequipped the rings I am not sureat the moment what happens but I think it will end up with the girlhaving the trait without any of the rings equipped.  It does not matterif she has the trait or not to begin with.

Wow....that is really broken.

Things get somewhat complicated if this temp item gets used twice so there's like another 40 points added 2 turns after first 40 points, at code side at least.

I have no idea how the game handles temp effects from multiple concurrent items with different times to expiration on stats and skills.  I suspect that if there is a problem, the solution would be to store each effect, along with its time to expiry, separately.  That will be much easier to do if/when the save files get converted to XML.

Quote
One another potential problem could be max values for skills/stats. If girl has it at 80, and gets under effect of item that raises it for 40 how will that turn out? 100 is max, will she have 60 after 20 turns or will it decrease to correct 80.

I addressed that particular issue in my last post.  Temp bonuses and permanent bonuses are stored separately from the base stats and skills, so when a temp bonus bumps a skill up, the skill will return to its correct value when the temp bonus expires.  Example:

Asuka has a sex stat of 50, a ring that gives her a +30 permanent bonus to her sex skill, and just drank a potion which gives her a +40 temporary bonus.  Her skill is 120, capped at 100.  After 10 turns, the temp bonus is reduced to +20, leaving her with a skill of 100.  After 20 turns, the temp bonus expires.  If she didn't improve her sex skill in the 20 turn period, she has a net skill of 80.  If she received 10 points to her sex skill in that time, the temp effect would end and she would have a net skill of 90.

Unless someone has messed around with the system since I looked into it, it does work properly.

Well, there's code in already to remember temp changes from items, so most of that would be OK. The easiest thing to do about repeated uses of an item would be to refresh the effect back to full power. Might still need to be a bit clever about the countdown in case someone used the same item in two different places at different times, but sounds manageable.

That is fine for repeated uses of an item, but what about using two different items with overlapping effects?  eg: one potion gives +20 normal sex, +20 anal sex; another gives +10 normal sex, +10 BDSM.  If a girl takes the first potion in week 1 and the second potion in week 5, how would that work?  It doesn't seem right to me that the second potion should reset the timer for the first, even if only for the bonus to the normal sex skill.

Quote
Traits should be OK - they get remembered too. The temp vs. perm thing is already handled. (Just been looking at that code :)

Good to hear.
« Last Edit: December 02, 2009, 07:49:10 PM by zodiac44 »
Capitalization is the difference between "I had to help my uncle Jack off a horse" and "I had to help my uncle jack off a horse."

Offline sgb

  • Sr. Member
  • ****
  • Posts: 380
Re: Bugs 1.29.3
« Reply #70 on: December 02, 2009, 07:56:54 PM »
As for traits, I know it doesn't keep checking item status every turn.  I have an item that adds Tough.  It's possible through random injury to get Fragile, which reverses Tough.  If you leave things as is, Fragile will stay forever.  You have to actually unequip, then re-equip the Tough item which will then overwrite Fragile with Tough once again.

As for the temp item thing, if Necro already has it programmed to account for the extra stats then I guess half the work is done there.  It may be worth salvaging, but I still don't see any real reason to use temp items over normal ones.  In a game like Slave Maker where you have ONE girl to manage, then I could see the point of using a temporary upgrade to trigger an event or enable an action.  When I have dozens, I simply can't see why I'd want to fuss over managing temporary boosts when I can just buy a permenant one and move on.

Quote
It seems that every time I try to convert an old .rgirls file into anew .rgirlsx xml file, the girls' values all end up in the wrong place.I have girls whose looks range from 0-50% age ranging from 18-98 andsometimes being unknown for no reason. The rebelliousness also seems tolike starting at around -100%.
Most of these are not conversion errors, but current bugs.  Some traits aren't being applied at the moment, so the maximum looks a girl can ever start with is 50 (if you had charisma and beauty start at 100).  Age I'm not sure on, but if you set it to be 0-100, you will get 18-unknown in-game (age 100+ is listed unknown).  As for the -100% thing, the Dependent trait is currently setting rebeliousness to -100%.
« Last Edit: December 02, 2009, 08:05:59 PM by sgb »

Offline DocClox

  • Dev Team
  • *****
  • Posts: 1867
  • Messing Around With Python
Re: Bugs 1.29.3
« Reply #71 on: December 02, 2009, 08:01:03 PM »
Quote
That is fine for repeated uses of an item, but what about using twodifferent items with overlapping effects?  eg: one potion gives +20normal sex, +20 anal sex; another gives +10 normal sex, +10 BDSM.  If agirl takes the first potion in week 1 and the second potion in week 5,how would that work?  It doesn't seem right to me that the secondpotion should reset the timer for the first, even if only for the bonusto the normal sex skill.

That should be ok. The games memory maintains a slot for each item per girl. So if you have 10 items affecting a stat, ten separate countdowns would be remembered. I think so, anyway; I need to look at the code some more.

The main problem I foresee is if there are two instances of the same item counting down at different stages. The game seems to remember the effect of an item by keeping a pointer into the global items table. So if you had two different instances of one item, they'd both be the same, and would count down together. (and twice as fast). Probably.

Most of these are not conversion errors, but current bugs.  Some traits aren't being applied at the moment, so the maximum looks a girl can ever start with is 50 (if you had charisma and beauty start at 100).  Age I'm not sure on, but if you set it to be 0-100, you will get 18-unknown in-game (age 100+ is listed unknown).  As for the -100% thing, the Dependent trait is currently setting rebeliousness to -100%.

Traits aren't being at all to unique girls.  I've committed a change today that should fix that. Random girls should have been ok, since they get their traits applied outside the loading code, so my bug shouldn't have affected them.

Offline Solo761

  • Administrator
  • *****
  • Posts: 175
Re: Bugs 1.29.3
« Reply #72 on: December 02, 2009, 08:40:07 PM »
About that rgirls issue, it's not the editor as far as I can see. although format of what goes out of it is different then ones from DocClox (it uses quotes instead of apostrophes, and some other purely visual differences), content is absolutely the same. I used program called XMLSpy to be sure of that. It checks data within XML, not just the look/formatting.

I think that there's something else at the issue here. While experimenting around on some other stuff I also noticed that random girls have terrible stats, age from 18 to 75, and looks from 0% to 20%. Looks and age is what I noticed to be messed up. There was a girl with looks of 4%, 18 years and buy cost of 1300. But I wasn't able to replicate this. It's a freak occurrence, out of 15 tries it happened only once.
I also noticed something else with rgirls (and rgirlsx since they're made from original rgirls files), random girls that came with the game have both minimum and maximum age set to 0.

One other thing I noticed is with regular (unique) girls. It seems none of them can't be virgins any more, and also age is no longer limited to 18, I got Hana at 14 years and Amami Haruka at 16 years old.
This was with XML files. I tried with old files also, virgin thing is present, but didn't had the luck to get these young girls to show up. Youngest was 17, which I also think is not the way it's supposed to be.

One other thing is house percentage, as far as I could tell for old files it defaults to 60%, no matter what value is in House field, for XML this get's read as it's written. Example is Kos Mos, she has 0 in House field. When game uses old files she has house percentage of 60%, when I use XML files she has 0%.


P.S.

There's a typo when girl gets inseminated event message says insinenated.
« Last Edit: December 02, 2009, 08:43:51 PM by Solo761 »

Offline Alugere

  • Full Member
  • ***
  • Posts: 130
Re: Bugs 1.29.3
« Reply #73 on: December 02, 2009, 09:27:30 PM »
Most of these are not conversion errors, but current bugs.  Some traits aren't being applied at the moment, so the maximum looks a girl can ever start with is 50 (if you had charisma and beauty start at 100).  Age I'm not sure on, but if you set it to be 0-100, you will get 18-unknown in-game (age 100+ is listed unknown).  As for the -100% thing, the Dependent trait is currently setting rebeliousness to -100%.
I'm not converting custom girls, I'm converting the base .rgirls files that come with the main game. (The only girl pack I've downloaded is the monster girl pack)

Offline sgb

  • Sr. Member
  • ****
  • Posts: 380
Re: Bugs 1.29.3
« Reply #74 on: December 02, 2009, 09:33:44 PM »
Hmm, I'm not having any issues with my XML random girls file.  All parameters are within the ranges I've specified.  Remember Necro's file needs to have ages inputted, as they are all 0-0 in his file.  As for the minimum age, Necro changed it in an earlier version to be 17 (it's there in the changelog somewhere).  It wasn't working for random girls (DocClox found the issue already).  After the XML change, the minimum age isn't being applied to unique girls anymore.  Frankly, I don't really see an issue with this as the age of consent is 16 or even lower in many first world countries (heck, here in Canada is was still 14 until recently).  But if that's against Necro's wishes, then I guess it should set it to 17 if the current age is lower.

I can confirm the unique girls not getting virgin status anymore as well.

Quote
I'm not converting custom girls, I'm converting the base .rgirls filesthat come with the main game. (The only girl pack I've downloaded isthe monster girl pack)
I know, everything I said applies to random girls as well.  You need to use the editor to fill in the age ranges or you will get a range of 18 to unknown.
« Last Edit: December 02, 2009, 09:42:03 PM by sgb »