devolution

Author Topic: General Discussion  (Read 3821295 times)

0 Members and 29 Guests are viewing this topic.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6360 on: December 13, 2015, 02:04:28 PM »
Yeah, there are loggs for fame and reputation everywhere. Maybe I just will delete them all?

Prolly a good idea, I couldn't get rid of fame/rep as actor stats because we still try to mod them in a couple of places.
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6361 on: December 13, 2015, 02:56:23 PM »
There are some really messed up issues with AI during the auto-fights, I am adding proper log to figure out wtf is going on. Created an issue as well.

Also, I am no longer sure how to handle sprite positioning properly, I thought I was using some weird way and wanted to change that to put bottom-middle of the image in a predetermined position. Comments say that it is already working like that :(

If we mix mobs, they end up all over the place. There are couple of options but I have no idea which one is best atm:

1) We add transparent empty space and have all images at exactly the same size. For unique mobs, we use unique conditioning.
2) We use "containers" and extend the size of sprites that are not "up-to-specs".
3) We simply take care of the combat design and don't mix mobs that do not fit well together.

===
There are also some minor issue with normal, non-mob sprites, some look clearly bigger than other misrepresenting characters... That is mostly due to stances :(

Maybe special conditions when creating chars/sprites will be required, I need to think about that for a while. For now I'll try to look into wtf is causing everyone to heal everyone in logical combat resulting in endless loop. For some odd reason, they don't seem to even run out of MP...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6362 on: December 13, 2015, 03:42:52 PM »
We cannot be picky, good highres mobs icons are not common at all...
Big rare enemies like dragons will need unique settings anyway.

If needed, I could manually set conditions for everyone if you provide exhaustive examples.
« Last Edit: December 13, 2015, 03:45:39 PM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6363 on: December 13, 2015, 03:55:55 PM »
I need to think about it, maybe do some research on how it can be done properly.

===
You'll have to sort out classes basepatterns for creation of of random girls and we'll need to think how to combine new classes system with auto-equip.
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6364 on: December 13, 2015, 07:06:26 PM »
Well, last update for tonight!

I've knocked down all major bugs, rewrote code for speed and time-tested our BE at it's full capacity without any GFX/SFX. It was a bit on the slow side at first (because we didn't give a damn about milliseconds during actual combat while just for pure logic over a few dozen scenarios, it really adds-up) but now it seems perfectly fine + other optimizations are possible. This a huge win because we were using a simple "add stats together and compare them" function and that did not take into consideration classes, skills, magic and etc.

Now it will all be properly simulated! :)
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6365 on: December 14, 2015, 12:18:50 AM »
I told you before, all non battle classes should be based on jobs, not the other way around. Current classes are something like a demo.
We should know which stats and skills precisely needed for a job before creating a class for it.

For example, for manager I added int, character, management skill and very small bonuses to teaching and refinement. But I have no idea how useful it will be for the job in reality, aside from management skill of course.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6366 on: December 14, 2015, 01:42:14 AM »
I told you before, all non battle classes should be based on jobs, not the other way around. Current classes are something like a demo.
We should know which stats and skills precisely needed for a job before creating a class for it.

For example, for manager I added int, character, management skill and very small bonuses to teaching and refinement. But I have no idea how useful it will be for the job in reality, aside from management skill of course.

I was talking about creation patterns, not classes themselves. Like what groups we can sort the classes by and how to create reasonable characters from those groups.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6367 on: December 14, 2015, 03:25:31 AM »
Alright, classes overview for a start.

- Prostitute is the base class for brothels. Though I personally don't like the name, it's kinda too formal. I'd prefer harlot or even fancy girl. But as not a native English speaker, I'm not really sure how well those names will work  :)

Then we have oral, ana, etc. prostitute subclasses.

- Entertainer is supposed to be the base class for strippers, dancers and singers. I added it mainly because we do have dancing and singing tags. And it has stripper and dancer subclasses.
Here things become tricky because ingame we only have strippers so far. But on the other hand I cannot just include strippers into prostitutes. Even if they are more uninhibited (thus do have SIW occupation), they still do not do it with everyone.

So we probably should add actual dancers and maybe singers jobs to make the Entertainer class look better.

- Then we have Maid which is the base class for servers. It has cleaner, waitress and bartender subclasses.

- And finally we have Manager, a special class with a special base occupation. It's hard to come up with useful subclasses here, perhaps this type of classes, with Specialist general occupation, just shouldn't have any subclasses.

- For battle classes it's much simpler. There are Mages with Battle Mage and Healer subclasses. And there are Warriors with Defender, Shooter and Assassin subclasses.

So, while we allow players to combine classes in any way since there are various unique characters, random generation should be more logical.

- Any double classes should be uncommon, maybe 1.5-2 times more rare than single classes. Because chars with single class  get more bonuses from class traits, so are quite useful. This is true for both battle and non battle classes.

- Non-battle subclasses will be only available together with their classes. In order to be a cleaner, the character should be a maid too.
This is because characters like cleaner + anal prostitute will be way too narrowly specialized to be useful compared to others. And even pure anal prostitute will be meh.

- Meanwhile all battle subclasses are at least useful for BE and self protection during events, so they don't have this limitation, and you can get a healer maid or something.
But at the same time battle + non battle class should be rare too. Maybe 1.5-2 times more rare than non battle dual classes (and, respectively2.25-4 times more rare than single classes). I mean, maid assassin sounds kinda cool, but not if there are no normal maids at all.

- Pure battle classes have almost the same algorithm. Double classes should be 2-3 times more rare.
But they don't have the other limitation, when when you have to be a mage to be a healer. You can get any combination of battle classes, like healer defender, or shooter assassin.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6368 on: December 14, 2015, 06:00:28 AM »
it's kinda too formal.

A lot in the game is formal atm... even some of the sex description and dialogues. We can address that when we start writing proper texts everywhere, maybe with more people on board. Right now it will look out of place.


So, while we allow players to combine classes in any way since there are various unique characters, random generation should be more logical.

===>>>

- Any double classes should be uncommon, maybe 1.5-2 times more rare than single classes. Because chars with single class  get more bonuses from class traits, so are quite useful. This is true for both battle and non battle classes.

I disagree, they can be perfectly common as long as they make sense. Especially the once that work on similar (or same) stats/skills.

- Non-battle subclasses will be only available together with their classes. In order to be a cleaner, the character should be a maid too.
This is because characters like cleaner + anal prostitute will be way too narrowly specialized to be useful compared to others. And even pure anal prostitute will be meh.

This is extra code (logic) as well as design since it is something we need to check on application but we do need this.

- Meanwhile all battle subclasses are at least useful for BE and self protection during events, so they don't have this limitation, and you can get a healer maid or something.
But at the same time battle + non battle class should be rare too. Maybe 1.5-2 times more rare than non battle dual classes (and, respectively2.25-4 times more rare than single classes). I mean, maid assassin sounds kinda cool, but not if there are no normal maids at all.

Solid!

- Pure battle classes have almost the same algorithm. Double classes should be 2-3 times more rare.
But they don't have the other limitation, when when you have to be a mage to be a healer. You can get any combination of battle classes, like healer defender, or shooter assassin.

I disagree here again, I see no problems with combos here at all, they all work on similar stats and combinations would be great as long as they are though through.

===
I am thinking Parent --> Child flags for some traits and something like a dict for combinations, or we can make one huge if/elif/else block again instead of the dict(s) :)
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6369 on: December 14, 2015, 06:18:04 AM »
LoL

I am on Desktop now and just figured out that code optimizations for logical BE scenarios I did on laptop yesterday now run 6 - 10 times faster :)

===
We still have a long way to go :D
https://www.python.org/doc/essays/list2str/
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6370 on: December 14, 2015, 07:00:12 AM »
You should be able to do something like:

Code: [Select]
if "sexmod" in locals():
    self.loggs("sex", sexmod)
if "oralmod" in locals():
    self.loggs("oral", oralmod)
if "analmod" in locals():
    self.loggs("anal", analmod)
I did as you suggested and got this one.
Quote
  File "game/library/screens/pyt - screens - nextday.rpy", line 41, in script
    $ building.run_nd()
  File "game/library/screens/pyt - screens - nextday.rpy", line 41, in <module>
    $ building.run_nd()
  File "game/library/businesses&buildings/classes - core buildings.rpy", line 553, in run_nd
    self.env.run(until=100)
Exception: (TypeError("object of type 'bool' has no len()",), TypeError("object of type 'bool' has no len()",))
Prepare for debugging  :)

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6371 on: December 14, 2015, 07:05:16 AM »
I did as you suggested and got this one.Prepare for debugging  :)

I'll admit to never using locals() before but I know exactly how they work... it is very strange for this code to be causing such an Exception...
« Last Edit: December 14, 2015, 07:07:15 AM by Xela »
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6372 on: December 14, 2015, 07:09:43 AM »
I cannot push now, but I can upload jobs file here.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6373 on: December 14, 2015, 07:13:53 AM »
I cannot push now, but I can upload jobs file here.

This works perfectly fine for me, I ran it for 20 days twice and reports were built properly.

===
Tested it again and reviewed the code, everything is great so it's pushed to GitHub now :)
« Last Edit: December 14, 2015, 07:18:12 AM by Xela »
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6374 on: December 14, 2015, 07:22:52 AM »
Must be changes in testing rpy then... I'll figure it out at home.

I disagree, they can be perfectly common as long as they make sense. Especially the once that work on similar (or same) stats/skills.
I'm afraid that without additional means pure classes will be too rare. Though I suppose it's not a big deal.
« Last Edit: December 14, 2015, 07:24:29 AM by DarkTl »