Pink Petal Games

PyTFall => PyTFall: General information => Topic started by: Xela on December 28, 2012, 06:29:26 AM

Title: General Discussion
Post by: Xela on December 28, 2012, 06:29:26 AM
We still need writers, graphics and game designers so if you want to dedicate some of your time into development of this project, feel free to post here or PM me!


Anyway, some development snapshots:

(http://s14.postimg.org/o0xg6lt6l/screenshot0001.png) (http://postimg.org/image/o0xg6lt6l/) (http://s14.postimg.org/3r04rgs1p/screenshot0002.png) (http://postimg.org/image/3r04rgs1p/) (http://s14.postimg.org/6jtcbhse5/screenshot0003.png) (http://postimg.org/image/6jtcbhse5/) (http://s14.postimg.org/9o408a96l/screenshot0004.png) (http://postimg.org/image/9o408a96l/)

(http://s14.postimg.org/9a2o8op31/screenshot0005.png) (http://postimg.org/image/9a2o8op31/) (http://s14.postimg.org/we3519se5/screenshot0006.png) (http://postimg.org/image/we3519se5/) (http://s14.postimg.org/wof8ycwe5/screenshot0007.png) (http://postimg.org/image/wof8ycwe5/) (http://s14.postimg.org/7fptqy22l/screenshot0008.png) (http://postimg.org/image/7fptqy22l/)

(http://s14.postimg.org/fvjzm6ubh/screenshot0009.png) (http://postimg.org/image/fvjzm6ubh/) (http://s14.postimg.org/69qf5w35p/screenshot0010.png) (http://postimg.org/image/69qf5w35p/) (http://s14.postimg.org/kdmaeaad9/screenshot0011.png) (http://postimg.org/image/kdmaeaad9/) (http://s14.postimg.org/bssyn4071/screenshot0012.png) (http://postimg.org/image/bssyn4071/)

(http://s14.postimg.org/ll086i0hp/screenshot0013.png) (http://postimg.org/image/ll086i0hp/) (http://s14.postimg.org/lma5zx2bh/screenshot0014.png) (http://postimg.org/image/lma5zx2bh/) (http://s14.postimg.org/74hk5o0e5/screenshot0015.png) (http://postimg.org/image/74hk5o0e5/) (http://s14.postimg.org/qnm5f0z5p/screenshot0016.png) (http://postimg.org/image/qnm5f0z5p/)

(http://s14.postimg.org/fqktq9ce5/screenshot0017.png) (http://postimg.org/image/fqktq9ce5/) (http://s14.postimg.org/69v0jmsjh/screenshot0018.png) (http://postimg.org/image/69v0jmsjh/) (http://s14.postimg.org/r1nhemj99/screenshot0019.png) (http://postimg.org/image/r1nhemj99/) (http://s14.postimg.org/biq1hiayl/screenshot0020.png) (http://postimg.org/image/biq1hiayl/)

(http://s14.postimg.org/m6tsgckxp/screenshot0021.png) (http://postimg.org/image/m6tsgckxp/) (http://s14.postimg.org/f8poaemt9/screenshot0022.png) (http://postimg.org/image/f8poaemt9/) (http://s14.postimg.org/phi5g8av1/screenshot0023.png) (http://postimg.org/image/phi5g8av1/)
Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 06:55:35 AM
Sadly, I'm extremely bad with writing as well as almost any another art. I couldn't even make a decent, good looking house when I tried to play Sims long ago  :D

But if you need help with pics and packs (searching, not drawing), count me in.
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 07:30:51 AM
Sadly, I'm extremely bad with writing as well as almost any another art. I couldn't even make a decent, good looking house when I tried to play Sims long ago  :D

But if you need help with pics and packs (searching, not drawing), count me in.

Haha, I have exactly the same problem, it would take me about the same time to code a bridge between girls and battle engine to transfer and set magic spells as writing 10 mediocre interactions :(

Well, if you want to help, this is what needs to be done:

1) I will need 5 - 10 new girls soon for meeting girls in town scenarios. I want to handle them same as SimBr 1x, you meet them, talk to them and interact until disposition is high enough to ask them to work for you. Mass producing packs is far to soon at this point (Stats could be changed and castes/locations added) but I will need a small amount for development purposes.

2) Pictures for items and maybe 6 new items for combat. I found some nice pics for brothel upgrades but couldn't find anything for advertisement and didn't try to find anything for items. It would be nice if each of 6 pieces of apparel and 6 items had an Anime/Game type picture coming with them.

3) Someone could design or borrow from another game 15 - 20 traits. I would prefer quality over quantity, traits can have any effect on the game like raising max for stats, effecting Jobs, Costumers and interactions. The more interesting they are the better but I guess that requires a degree of artistic creativity as well :(

In any case, this is a lot of work as it is already...
Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 10:37:18 AM
Alright, I've managed to extract images from my favorite Kamidori Alchemy Meister's resources. There're all sorts of pictures: weapons, skills, furniture, ingredients, enemy and ally units, etc. Almost 4000 pictures totally.
(http://s002.youpic.su/pictures/1356642000/88a4ec6b0e4d054c7148e10548619d3b.jpg) (http://youpic.su) (http://s002.youpic.su/pictures/1356642000/4de3ba1d87456ecaf626c79a07cbc04d.png) (http://youpic.su) (http://s002.youpic.su/pictures/1356642000/369516e35d3faac0716dc6cf27b775c1.jpg) (http://youpic.su) (http://s002.youpic.su/pictures/1356642000/b9bdd2a3e31c0e0a0321c369220aaa49.jpg) (http://youpic.su) (http://s002.youpic.su/pictures/1356642000/0beadd334cbb0cfd659f8768a8b11c14.jpg) (http://youpic.su)

(http://s002.youpic.su/pictures/1356642000/fed046d751a8c398c2724d5171c8c483.jpg) (http://youpic.su) (http://s002.youpic.su/pictures/1356642000/thumb_5e5b054d7bc9eb7aa79499a4c24d6ca3.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1356642000/5e5b054d7bc9eb7aa79499a4c24d6ca3.jpg) (http://s002.youpic.su/pictures/1356642000/thumb_495e2be1b1e13900c7c8417444c6302c.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1356642000/495e2be1b1e13900c7c8417444c6302c.jpg)
Sorry about bones picture. I wish we have spoiler tag here.

I'll upload them somewhere if you want to use them.

However, most of them have alpha channels. For instance, scythe actually looks like (http://s002.youpic.su/pictures/1356642000/608ba163d4cafdf215b6c127d4fcef53.jpg) (http://youpic.su)
If you unable to work with alpha channels (or your game doesn't support it), I can remove them (but it'll take some time to modify so many pics).
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 11:09:54 AM
First release will only have 6 dresses, 6 items and maybe 2 each of weapons/armor and 2 potions so we don't actually need so many pics.

Enemies could be very useful, hopefully not all of those are so dark and ugly... allies will be drawn from girl's list.


Alpha masks are supported but I've never used those before, might be fun figuring it out.

Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 11:43:58 AM
Of course, there're cute enemies as well. But you don't expect to meet only naked girls in Dark Deep Dungeon of Undead  :)
(http://s002.youpic.su/pictures/1356642000/thumb_250a5266888d3dce56eab263080a6190.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1356642000/250a5266888d3dce56eab263080a6190.jpg)
All enemies are here (https://dl.dropbox.com/u/79429937/pic1.7z).
Here (https://dl.dropbox.com/u/79429937/Pics.7z) some weapons, potions and accessorizes. Game mechanics mostly doesn't use armor, I'll look for it somewhere else.

And I'm not sure what do you mean by advertisement pictures. Girls give brothel's leaflets to people on streets?
Title: Re: Writers needed!
Post by: GonDra on December 28, 2012, 12:21:18 PM
If you can give me examples (aka a dummy Trait or two) I will try my hand at it.
I have mostly forgotten how SimBr 1x was and played so I will look that up later, before thinking about meeting scripts - also do you already have a collection of pictures for your girls, if so it would help to have a list of names and (if you want them to act accordingly) the series/manga.

I won't promise anything, but it will try to write something.
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 12:37:12 PM
Of course, there're cute enemies as well. But you don't expect to meet only naked girls in Dark Deep Dungeon of Undead  :)
(http://s002.youpic.su/pictures/1356642000/thumb_250a5266888d3dce56eab263080a6190.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1356642000/250a5266888d3dce56eab263080a6190.jpg)
All enemies are here (https://dl.dropbox.com/u/79429937/pic1.7z).
Here (https://dl.dropbox.com/u/79429937/Pics.7z) some weapons, potions and accessorizes. Game mechanics mostly doesn't use armor, I'll look for it somewhere else.

Ok, couple of decent enemies there! Also I think there is a form of white energy effect that could be useful as extra spell.

And I'm not sure what do you mean by advertisement pictures. Girls give brothel's leaflets to people on streets?

LoL

That would be hard to find :) Maybe some just some nice looking girls talking to the crowd or giving out any sort of leaflets. I tried but gave up on it...
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 28, 2012, 12:47:08 PM
I could really use a couple of people to help me out with texts for PyTFall. If you don't like writing but like hunting for pics and/or making packs, some help is needed in those areas as well.

Let me know if you're interested.

Hey, I know I kinda bailed on you before, but RL interfered in the form of finals and family.  I apologize for my sudden exit, but, if you want, I can help you with writing.  I'm not the best writer, but I'm not the worst either.  So, I'd be interested.
Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 12:57:23 PM
Maybe some just some nice looking girls talking to the crowd or giving out any sort of leaflets. I tried but gave up on it...
I'll do my best.

Btw, it seems that Alchemy Meister uses mpeg files in combat, like this (https://dl.dropbox.com/u/79429937/MVB904.MPG) one. If you can and want to use them too, I'll upload 'em.
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 01:12:41 PM
If you can give me examples (aka a dummy Trait or two) I will try my hand at it.

Well, traits are non-existent in the game right now so there are no dummies. There are two approaches we could try:

There was already someone who tried to make a list for PyTFall on SimBro forums but he disappeared somewhere... This was my post to him:

#####################################
Design or borrow from the original (or both) around 10 - 15 (or any amount) traits and write them down for me. Should be in following format:

1) Name of a trait
2) Description of a trait
3) Stats level Max/Min penalty or increase
4) Active Effect during jobs
5) Special effects
6) Conditions to acquire.


Let me clarify a little bit:
1) Name of the trait is what the trait is called, it will appear on the screen like Abilities in original SimBrothel.
2) Description will describe a trait when you hover with your mouse over it.
3) Stat level cap penalty or increase. This will modify maximum value of a stat (for example) 'Blowjob Addict' may raise stat cap of Blowjob to 150 instead of 100, Trait like Noble might raise Refinement by 20, Refinement Max by 20 and set Minimum refinement a girl could have to 30.
4) Active effects are the things that happen as girls preform jobs. For example 'Cute' trait might increase costumer satisfaction and give a random 30% chance to increase Charisma by +1 every day or something along those lines or 'Blowjob Addict' trait will make girl ask costumers if they want a blowjob even if they came for 'Normalsex' and have a 50/50% chance of Blowjob stat increase each day.
5) Special effects is too broad but if you can think of something, put that into writing. These are things like special conversations or interactions if you met girl with this trait in town or special behavior during jobs like refusing one type of act but asking if costumer prefers another.
6) Conditions to acquire. How can a girl get this trait if she did not have it from the beginning? This is also very broad, this can be you having a specific amount of conversations with the girl or a certain amount of interactions or during preforming jobs as a random chance or spending a fixed amount of days in a certain school or even better random chance that increases with every day that girl spends in school...
#################################


Even if it takes longer than simply borrowing Alkion's traits system, I want to write separate functions for each trait to make them meaningful and less generic.

I've ripped apart original SimBrothel and these are traits used in it (Does not mean that we actually have to use these obviously):

"Splendid Body";
"Big breast";
"Rest";
"Smart";
"Strong";
"Shy";
"Lolita";
"Artist";
"Maid";
"Happiness";
"Lucky";
"Tough";
"Nymphomaniac";
"Obedient";
"Sex Addict";
"Experience";
"Good Health";
"Exhibitionnist";
"Famous";
"Tips";
"Noble";
"Excellent Reputation";
"Cat Girl";

I have mostly forgotten how SimBr 1x was and played so I will look that up later, before thinking about meeting scripts - also do you already have a collection of pictures for your girls, if so it would help to have a list of names and (if you want them to act accordingly) the series/manga.

No list yet but we are talking about generic texts right now, modders can take care of individual events for girls later if they want to. My concern right now are texts for when you meet girls in town and have to interact with them in different ways to increase their disposition for you. Same as with SimBro 1x but with nicer graphics. Also in SimBro many responses are based on girl's traits, that is also something to consider.


Last thing are interactions with girls that you already own.

In any case, if you want to try a hand at something, tell me and I will explain what needs to be done in more detail.
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 01:17:02 PM
Hey, I know I kinda bailed on you before, but RL interfered in the form of finals and family.  I apologize for my sudden exit, but, if you want, I can help you with writing.  I'm not the best writer, but I'm not the worst either.  So, I'd be interested.

Great! Well, first thing: Download the current version of PytFall and read the script in Tifa's folder, see if you have any questions and how much of it do you understand?
Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 02:59:38 PM
I've found (https://dl.dropbox.com/u/79429937/flyers.7z) a couple of more or less "advertising" pics. It's been a long time, so I don't remember all those great sites I've used before. If I'll find them again, there will be more.
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 03:11:27 PM
I've found (https://dl.dropbox.com/u/79429937/flyers.7z) a couple of more or less "advertising" pics. It's been a long time, so I don't remember all those great sites I've used before. If I'll find them again, there will be more.

 Awesome pic for hiring girls to advertise advertising!

 Well, if you can find pics like some lord entering in a building, billboard and so on, game already will look that much better, plus we can also remove advertising forms with no pictures and replace those with something we can find pictures for.
Title: Re: Writers needed!
Post by: DarkTl on December 28, 2012, 05:29:08 PM
Now that's a bit difficult. I'll see what I can do.
Take a look at this (https://dl.dropbox.com/u/79429937/flyers1.7z) in the meantime, perhaps you'll find something useful.
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 28, 2012, 05:41:54 PM
Great! Well, first thing: Download the current version of PytFall and read the script in Tifa's folder, see if you have any questions and how much of it do you understand?

I'm sorry, I am really out of the loop.  Where can I find the latest version?
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 05:45:54 PM
Now that's a bit difficult. I'll see what I can do.
Take a look at this (https://dl.dropbox.com/u/79429937/flyers1.7z) in the meantime, perhaps you'll find something useful.

One of the pics could be used as an option for strip club...
Title: Re: Writers needed!
Post by: Xela on December 28, 2012, 05:54:05 PM
I'm sorry, I am really out of the loop.  Where can I find the latest version?


My thread in Mods section: http://pinkpetal.org/index.php?topic=824.0

This is the link for direct dowload: http://sharesix.com/s9980c1sl4si (http://sharesix.com/s9980c1sl4si)

RenPy script is very basic, interactions and girl meeting will be done in a very similar way to Tifa's quest. It will take 30 - 60 minutes to figure out but then it just feels like plain writing without the code.

I'll see if I can get some sleep...
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 28, 2012, 08:31:07 PM
Thanks!  I'll review it tonight, and tell you if I have any questions!
Title: Re: Writers needed!
Post by: Unchained on December 28, 2012, 10:30:11 PM
I downloaded Pytfall to see what kind of writing was needed, but I see that a when I put it through my unzipper it's telling me that it's a locked archive and I need a password.

Is there something basic I'm missing here?
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 05:03:52 AM
I downloaded Pytfall to see what kind of writing was needed, but I see that a when I put it through my unzipper it's telling me that it's a locked archive and I need a password.

Is there something basic I'm missing here?

It's not locked so what you're missing is likely a good archive manager: http://www.rarlab.com/download.htm (http://www.rarlab.com/download.htm)

Well, since there is a chance that someone will take care of writing, I will not stuff girl interactions screen with content (writing+pics) that was planned for the weekend but will work on adding ranks, meet in town system and magic spells bridge from sGirl class to battle engine.
Title: Re: Writers needed!
Post by: GonDra on December 29, 2012, 12:03:45 PM
So I played around with PyTFall a bit to get a feel for the game and found a few things in the next day thing that could be written better.
Here is a googledoc with a few suggestions from me - I am sure some of these are pretty bad as I didn't check them again and I am a pretty tired today.
(there shouldn't be the need for a google account to comment if I didn't screw up.)

a small bug i found: the buy girl screen doesn't show the correct day.
bigger bug: it seems like resting a girl dooesn't work ( or am I doing something wrong?)

I tried working on traits yesterday after I came back from a party but I didn't have the heart looking into that document yet.

edit: removed the link to the googledoc because it is now irrelevant
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 29, 2012, 12:23:37 PM
I am truly sorry, Xela, but I am pretty sure that this level of code-writing is far beyond my abilities.  I apologize for wasting your time.
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 12:48:33 PM
So I played around with PyTFall a bit to get a feel for the game and found a few things in the next day thing that could be written better.
Here is a googledoc (https://docs.google.com/document/d/1QPCt-56J_6J4Sab6bOciSJboI0vg4zUqdYlkn_r8Mgo/edit) with a few suggestions from me - I am sure some of these are pretty bad as I didn't check them again and I am a pretty tired today.
(there shouldn't be the need for a google account to comment if I didn't screw up.)

a small bug i found: the buy girl screen doesn't show the correct day.
bigger bug: it seems like resting a girl dooesn't work ( or am I doing something wrong?)

I tried working on traits yesterday after I came back from a party but I didn't have the heart looking into that document yet.

Right...

Bug on girl screen: Nice catch, I'll fix that.
Resting should work fine? I am not sure what the problem is there.

Your texts are a lot better than mine!
Peasants, Beggars, Merchants and so on are variations of costumer's 'Caste'. Girls will have ranks to match those castes. If costumers caste is lower than girl's rank, she may refuse him. That will be coded in later. The kind of costumers that visit the brothel is determined by brothel's reputation.
 
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 12:54:16 PM
I am truly sorry, Xela, but I am pretty sure that this level of code-writing is far beyond my abilities.  I apologize for wasting your time.

I wouldn't call that code... in any case, if you're still up for writing texts, tell me. I'll put them into the game myself.
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 29, 2012, 12:56:20 PM
I can write lines, but someone else will have to insert.  Truly, my inexperience knows few bounds.

Anyway, where do you want me to start?
Title: Re: Writers needed!
Post by: GonDra on December 29, 2012, 01:37:14 PM
Resting should work fine? I am not sure what the problem is there.
If I set a girl to rest, the 'Fatigue' counter goes up instead of down, regardless of items on her, garden or bar attachment of the brothel.
Also it would be nice if you could get to the jobs of a girl easier than now.

Your texts are a lot better than mine!
Peasants, Beggars, Merchants and so on are variations of costumer's 'Caste'. Girls will have ranks to match those castes. If costumers caste is lower than girl's rank, she may refuse him. That will be coded in later. The kind of costumers that visit the brothel is determined by brothel's reputation.
Thanks but I think some are a bit... 'cheesy' for a lack of a better word.
I had gathered the thing with the castes, it is a good idea although I hope you implement it the other way round too (high class customers rejecting low class girls sometimes/always).
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 01:59:39 PM
If I set a girl to rest, the 'Fatigue' counter goes up instead of down, regardless of items on her, garden or bar attachment of the brothel.
Also it would be nice if you could get to the jobs of a girl easier than now.

LooooL

Yeah, you're right, I didn't know that. The trouble is that those functions are very raw, I was planning to advance those between version 0.2 and 0.3, but roadmap is in no way set in stone.

Clients rejecting girls is a must as well, it is all very easy to code in.

By the way, see if you can figure out any of the actual code, cause if you can it would be easier just to send you the dev version so you can edit/add texts yourself.

Code: [Select]
        def whore(self, char, girl, hero):
           
            img = None # Image category displayed to player.
            txt = '' # Variable to contain all texts of events
            evtlist = [] # List of events to be appended to global
            chr = char[girl] # Variable refering to specific girl we're dealing with
            client = Customer(self.rep,self.fame) # Client is created here. His stats are based of brothel's stats (reputation and fame)
           
            chr.AP -= 1 # First thing we do is decreasing our girl's Action Points by one, if her AP is 0 or below, game would not run this function

           
            if chr.health < 60: # First thing we check for is her health, if below 60, her injuries will not allow her to work
                ilists.WhrsinBrtlList.remove(chr.id) # This removes her brothel whoring for the rest of the day
                txt = txt + "This girl is injured and is in need of medical attention" # We add this text to variable txt we declared ealier
                img = 'profile' # We provide picture category, I would like this to be rest in the future
               
                ident = os.urandom(8) # This is a precaucion. We make sure that there is a no way in hell we get two of the same enteries in one list by generating a random from 8 unicode characters.
                evtlist.append(self.id) # Appending brothel id, we can sort by brothels on next day list in the future
                evtlist.append(chr) # We append girl herself
                evtlist.append(img) # Adding image category to the list
                evtlist.append(txt) # Adding text
                evtlist.append(ident) # and finally adding the unique ID
                NextDayList.append(evtlist) # This is the very last thing that we do, NextDayList is the only Global variable we have in the game at this point. It will contain all info Next day needs to show us.
                return # Breaking out of this method, since she cannot work due to injury, rest of this method is useless.
               
            if chr.fatigue > 260: # Same thing for fatique, if she is in good health but very tired, we remove do not allow her to whore this day
                ilists.WhrsinBrtlList.remove(chr.id)
                txt = txt + "This girl is to tired to move, let along fuck someone (something)"
                img = 'profile'
               
                ident = os.urandom(8)
                evtlist.append(self.id)
                evtlist.append(chr)
                evtlist.append(img)
                evtlist.append(txt)
                evtlist.append(ident)
                NextDayList.append(evtlist)
                return               
           
            txt = txt + '%s came into %s and requested %s for a sweet act of %s. \n'%(client.caste, self.name, chr.name, client.act)
            # Ok, if we got this far, she is both, healthy and energetic. Code above adds first line to interactions text. %s means we insert something into the next, here we insernt: Caste of the client, Name of the brothel, Name of the charecter, Act he/she requested.
            if client.act == 'sex':

                txt = txt + random.choice(['They had a really good time!\n',
                                                          'He looked at her hungerly, then rushed towards her. Her pussy felt like heaven to him!'])
                # Random choice will pick one of the options for the list, basically random.choice() method, picking one of the options from a list ['They.....', 'He.....', 'Bla bla bla and so on']
                chr.mod('normalsex', +2) # adding 2 to sex stat, chr.mod method will insure that stat remains within Max and Min of the stat, if we just used chr.normalsex += 2 we could go above Max value (100 by default)
                chr.mod('constitution', +2) # same for constitution
                chr.mod('fatigue', +20)
                hero.add_money(client.cash) # giving main player clients money, this whole 'whore' method is raw so right now hero gets whatever costumer comes with.
                repmodify = random.randint(1,3) # Just creating a variable with a value between 1 to 3.
                self.modrep(repmodify) # Modding brothels reputation, since this is the method of brothel class, self refers to whatever brothel we're in.
                txt = txt + "He paid her %s of gold. Brothel's reputation increased by %s\n"%(client.cash,repmodify) # More text, by the way \n means that next text we append will start from a new line
                txt = txt + 'Her Sex and Constitution went up!\n'
                img = 'sex' # Picking the image again
               
            if client.act == 'anal': # Client wants anal

                txt = txt + random.choice(['He pushed towards the bed and took her in the butt like there is no tomorrow!\n',
                                                          'They had a really good time!\n'])
                chr.mod('anal', +2)
                chr.mod('constitution', +2)
                chr.mod('fatigue', +20)
                hero.add_money(client.cash)
                repmodify = random.randint(1,3)
                self.modrep(repmodify)
                txt = txt + "He paid her %s of gold. Brothel's reputation increased by %s\n"%(client.cash,repmodify)
                txt = txt + 'Her Anal and Constitution went up!\n'
                img = 'anal'
               
            if client.act == 'blowjob':

                txt = txt + random.choice(['They had a really good time!\n',
                                                          'He slapped her face with his cock little bit and then shoved it all the way into her throat!\n'])
                chr.mod('blowjob', +2)
                chr.mod('constitution', +2)
                chr.mod('fatigue', +20)
                hero.add_money(client.cash)
                repmodify = random.randint(1,3)
                self.modrep(repmodify)
                txt = txt + "He paid her %s of gold. Brothel's reputation increase by %s\n"%(client.cash,repmodify)
                txt = txt + 'Her Blowjob and Constitution went up!\n'
                img = 'blowjob'

            if client.act == 'lesbian':

                txt = txt + random.choice(['They had a really good time!\n',
                                                          "She 'ate' her pussy out!\n"])
                   
                chr.mod('lesbian', +2)
                chr.mod('constitution', +2)
                chr.mod('fatigue', +20)
                hero.add_money(client.cash)
                repmodify = random.randint(1,3)
                self.modrep(repmodify)
                txt = txt + "She paid her %s of gold. Brothel's reputation increased by %s\n"%(client.cash,repmodify)
                txt = txt + 'Her Lesbian and Constitution went up!\n'
                img = 'les'               
               
            ident = os.urandom(8)
            evtlist.append(self.id)
            evtlist.append(chr)
            evtlist.append(img)
            evtlist.append(txt)
            evtlist.append(ident)
            NextDayList.append(evtlist)
               
           
           

 
        def rest(self,char,girl):
           
            img = None
            txt = '' # String of events
            evtlist = [] # list of events to be appended to global
            chr = char[girl]
           
            hmodify = random.randint(8, 12)
            fmodify = random.randint(140, 160)
            mmodify = random.randint(4, 8)
            chr.mod('fatigue', fmodify)
            chr.mod('health', hmodify)
            txt = txt + random.choice(['%s took a break today. She recovered %s of health and lost %s of fatigue'%(chr.name,hmodify,fmodify),
                                                     'She spent the day relaxing. Resting from daily tasks allowed %s to recover %s health and get rid of %s fatigue'%(chr.name,hmodify,fmodify),
                                                     '%s comfortably rested in her room recovering %s health, %s MP and loosing %s of fatigue'%(chr.name,hmodify,mmodify,fmodify)])
            img = 'profile'
           
            ident = os.urandom(8)
            evtlist.append(self.id)
            evtlist.append(chr)
            evtlist.append(img)
            evtlist.append(txt)
            evtlist.append(ident)
            NextDayList.append(evtlist)
Title: Re: Writers needed!
Post by: GonDra on December 29, 2012, 02:54:41 PM
By the way, see if you can figure out any of the actual code, cause if you can it would be easier just to send you the dev version so you can edit/add texts yourself.

Seems reasonable enough as long as I don't have to write actual logic and can just add strings.
Just a warning though: I have no experience with python, never looked into it at all.
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 03:39:01 PM
I can write lines, but someone else will have to insert.  Truly, my inexperience knows few bounds.

Anyway, where do you want me to start?

Ok, there are four things that need text at this point:

1) World. Something similar to what you wrote before but for PyTFall. To introduce player to the universe. Will be shown every time the game starts. Player can skip this. Some gameplay realities like Social ladder inequalities, city being infamous for it's brothels, legalized slavery and so on must be mentioned but since noone knows all the realities so early in development, we can add some of those later.

2) Interactions:

(http://img229.imagevenue.com/loc415/th_561691537_1_123_415lo.jpg) (http://img229.imagevenue.com/img.php?image=561691537_1_123_415lo.jpg) (http://img269.imagevenue.com/loc568/th_561695978_2_123_568lo.jpg) (http://img269.imagevenue.com/img.php?image=561695978_2_123_568lo.jpg) (http://img185.imagevenue.com/loc110/th_561698157_3_123_110lo.jpg) (http://img185.imagevenue.com/img.php?image=561698157_3_123_110lo.jpg)
(http://img203.imagevenue.com/loc514/th_561703902_5_123_514lo.jpg) (http://img203.imagevenue.com/img.php?image=561703902_5_123_514lo.jpg)

For all of the above categories, assume that some of the categories have menus of choices, and those menus can have their own menus...

The idea is that you request something from the girl and she replies to you based on her stats or/and traits (we do not have traits yet so just stats for now).

Stats are:

                charisma=0, - Her beauty, looks and so on
                refinement=0, - VERY/Most important stat in the game, represents her behavior in court, ability to appeal to costumers, to get better ranks. Note that this will be capped at 40 at the start. As she gains experience and refinement, player can rank her up. Higher ranks will mean higher cap for refinement. In the end I think maxed out refinement will be between 150 - 200 from ranks, items and events.
                libido=0, Self-explanatory.
                constitution=0 How many actions she can take each day, in reality that will be determined by AP (Action Points). Base AP will be 2, she gets one extra for every 20 cont she has. Base can also be changed by items/events.
                exp=0, Experience, not entirely sure what to do with this except having a required amount for a rankup.
                joy=0, Happiness
                character=0, Another REALLY important stat, it's like obedience, high character means she is strongheaded.
                reputation=0, Not entirely sure we need this, Rank is basically the same thing...
                health=0, HP
                fame=0, How infamous she is, Girls with high fame will attract better costumers with more cash in their pockets.
                mood=0, No idea why this is in the game, since stats are not final, I prolly had some purpose for this at some point but forgot :(
                disposition=0, Min = 0, Max = 1000!!! Her loyalty, love, respect and so on towards the player. This is what interactions and girl meet are supposed to be changing before anything else.
                fatigue = 0, Max = 300, How tired she is, eventually will be shown to a player as text and not as number.
               
                attack = 0,
                magic = 0,
                defence=0,
                agility = 0,
                mp = 0, Battle Stats like in fighting games, since players do not dodge attacks: it's Speed, how long does it take before she can attack again.
               
                anal=0,
                normalsex=0,
                blowjob=0,
                lesbian=0 Sex stats or skills as they are called in WM.

Girls responses to your requests can depend on any stat, her performance can depend on any stat and so on.

For example is her fatigue is above 260 she can refuse to date you on those grounds, her performance during sex acts can depend on her skill. Basically it's your whim. You write responses for girls while asking them different stuff, they reply, either generic reply or many different replies for the same question based on their stats.

If you decide to write this, you are free to choose buttons (on pictures are the first things I came up with) and menu options. Possibility for menu is for example:

Date:

Menu: Restaurant, Walk in the park, Walk on the beach and so on.

If Restaurant:

Menu: Steak, Lobster, Beans, Chicken and so on.

Also keep in mind that game can remember what you did and where you went with every girl, it can also remember what girl liked, so for example you can decide that first time she tries lobster there is a 20% chance she will love it and her disposition will grow by insane amount if you take her out for it again. Or you can decide that the very first time she tries lobster there is a 10% chance that she discovers that she has allergy for it and ends up being really sick.

Like I've said, it's your whim! options are limitless and all are very easy for me to code in. RenPy is an engine that allows pink Sakura petals falling at any point of conversation or realistic rain/snow with soundeffects and so on and that is considered as Medium difficulty to code. Any options, choices or flags are very easy.

3) Base code for that is not ready yet, but the idea can be easily explained. There will be many places in the city, you walk around and see girl's portraits (Button of profile pictures that you can click), lets say maximum 3 per place like in SimBro 1x. You pick a girl and get menus much like in interactions, idea is to get deposition high enough and ask her to join you.

4) Texts on Next week... the idea should be more or less self-explanatory.

If you have any questions, feel free to ask.
Title: Re: Writers needed!
Post by: Xela on December 29, 2012, 07:39:59 PM
Seems reasonable enough as long as I don't have to write actual logic and can just add strings.
Just a warning though: I have no experience with python, never looked into it at all.

Ok, I've fixed the Day in the market, fixed Rest, added all/most of your texts (Those are actually MUCH better in game), girls can be reassigned now even if brothel is full and interactions screen is there as well.

I sent you the SDK, forgot to add that there no compile time with python so you just launch the game after you edit/add texts and it works.

Tell me what texts you want to work on and I'll write logic for them leaving strings empty or plain. Keep in mind that since game is in early stages of development, there is nothing that cannot be done (save 3D graphics, Python would be to slow and my coding skills likely inadequate) so simple stuff like game knowing if costumer is a she (If needs to be mentioned outside of lesbian code-block where you simply control all texts) is easily doable.

Edit: Also if you're willing to write for more categories, those can be easily added. Game creates picture category as long as there is one picture called 'something 0' in the folder. So for example if there is a picture called profile 0.jpg or .png game will create that, all other files that start with profile will go there so the only thing needed for new acts are texts and making sure costumers request those (adding one word to costumer class).

Other than that traits are still not designed. Only dresses actually do something, items and brothel upgrades are useless right now. I wanted to work on interactions and girlmeets but if you would prefer to write for next day, I'll finish the logic for Costumer, Brothel and sGirl classes first.
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 30, 2012, 12:45:01 AM
Sounds good!  I'll get working on the intro! 

How long do you want the intro to be?  Also, what are any relevant names, like the name of the city, or anything else that's absolutely necessary for an intro?
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 01:12:30 AM
Sounds good!  I'll get working on the intro! 

How long do you want the intro to be?  Also, what are any relevant names, like the name of the city, or anything else that's absolutely necessary for an intro?

Well, Maybe PyTFall  as a name for a city but nothing is set in stone this far. I don't know how long it has to be, shouldn't be unnecessary long, just to make it interesting for the player and explain the gameworld. If you can sneak in a decent explanation why there are girls from different universes, it would not hurt...  other than that I can't think of anything absolutely necessary right now, but if something comes up in future, it can be added later.

PS: Maybe sneak Arena to it? I want it to be a pretty interesting part of the game at some point... also think about presentation, do we present it as text or text + pictures or something else?
Title: Re: Writers needed!
Post by: hewhocumsbynight on December 30, 2012, 08:57:04 AM
Okay, sounds good!
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 09:05:17 AM
Okay, sounds good!

Cool, take your time, we are not in any hurry. I'll continue to advance the code while you guys stuff it with content each at their own pace, it will be a couple of month at least before a decent Alpha can be released.

In February another writer might join us, he did some good work on SlaveMaker in the past.
Title: Re: Writers needed!
Post by: DarkTl on December 30, 2012, 09:34:07 AM
Some more (https://dl.dropbox.com/u/79429937/somemore.7z) kinda advertisement pics and a couple of armor icons lists. To find more specific pics for advertisement I'm going to look through all game-related galleries on e-hentai, and that will take some time.
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 09:54:01 AM
Some more (https://dl.dropbox.com/u/79429937/somemore.7z) kinda advertisement pics and a couple of armor icons lists. To find more specific pics for advertisement I'm going to look through all game-related galleries on e-hentai, and that will take some time.

I caught a flu so I may be a bit slow today because of a splitting headache but I cannot see how that would work for advertising?

One of the pictures would be awesome for a happiness/health/fatigue favorable event in a bar. Armor pics are great, with just a few items planned this might be an overkill already, but if you find more, especially bigger pictures post those here pls.
Title: Re: Writers needed!
Post by: DarkTl on December 30, 2012, 10:07:53 AM
Well, you asked for a "lord entering building". Let's pretend there is a lord, and we are looking via his eyes  :D

I wounder if cheerleader pictures can be used for advertising too. There're a lot of them everywhere.
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 10:15:11 AM
Well, you asked for a "lord entering building". Let's pretend there is a lord, and we are looking via his eyes  :D

I wounder if cheerleader pictures can be used for advertising too. There're a lot of them everywhere.

LoL

One of the games endings... I cannot remember which one, there was an awesome pic of some rich guy entering or exiting the building that would work, maybe it will come to me later. Gotta have been one of the Sims (SM, HHS, SB)

Edit: Otherwise we can simply use some random pics of a couple well dresses snubs.

Edit 2: Codewise:

Ranks are ready and should work (Not tested yet). This is only for prostitute types (Whores and Strippers), Warrior types will not need this.
Will be used HEAVILY in game events and Next Day functions, used in costumer generation and Game Endings. In order to rank up girl will need an amount of Refinement, Experience and upgrading can cost a GOOD deal of money. System should work but since there is no logic on Next day and no events depending on it, it's pretty useless right now. Upgrading raises the cap of refinement by 15, other bonuses later. After I am done with magic spells I'll create first prototypes of methods for calculating girls price, upkeep and wages.

Code: [Select]
            self.wranks = dict(
                r1 = dict(id = 1, name = 'Rank 1: Kirimise (Almost beggar)', price = 0),
                r2 = dict(id = 2, name = "Rank 2: Heya-Mochi (Low-class prostitute)", price = 100, ref = 30, exp = 1000),
                r3 = dict(id = 3, name = "Rank 3: Zashiki-Mochi (Middle-class Prostitute)", price = 400, ref = 45, exp = 2500),
                r4 = dict(id = 4, name = "Rank 4: Tsuke-Mawashi (Courtesan)", price = 1000, ref = 60, exp = 5000),
                r5 = dict(id = 5, name = "Rank 5: Chûsan (Famous)", price = 2000, ref = 75, exp = 10000),
                r6 = dict(id = 6, name = "Rank 6: Yobidashi (High-Class Courtesan)", price = 5000, ref = 90, exp = 20000),
                r7 = dict(id = 7, name = "Rank 7: Koshi (Nation famous)", price = 10000, ref = 100, exp = 40000),
                r8 = dict(id = 8, name =  "Rank 8: Tayu (Legendary)", price = 30000, ref = 130, exp = 100000)
                )


Option of the main screen:

(http://imageshack.us/a/img12/574/88834262.th.jpg) (http://imageshack.us/photo/my-images/12/88834262.jpg/)
(http://img16.imageshack.us/img16/3759/49339115.jpg) (http://imageshack.us/photo/my-images/16/49339115.jpg/)
Title: Re: Writers needed!
Post by: DarkTl on December 30, 2012, 11:51:20 AM
1 advertising and some armor from various games. (https://dl.dropbox.com/u/79429937/1.7z)
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 12:05:01 PM
1 advertising and some armor from various games. (https://dl.dropbox.com/u/79429937/1.7z)

Maybe, looks good!

Ok, magic/attacks bridge is built, not very pretty codewise (I don't want to bother with making code look nice at this point) but it will work flawlessly.

Code: [Select]
    <girl
        id="Hinata"
        folder="naruto"
        name="Hinata Hyuuga"
        desc="Kunoichi from Naruto series"
        charisma="30"
        refinement="14"
        libido="30"
        constitution="30"
        exp="0"
        joy="30"
        character="25"
        reputation="0"
        health="100"
       
        attack = '16'
        magic = '10'
        defence = '17'
        agility = '15'
        mp = '20'
       
        anal="0"
        normalsex="3"
        blowjob="1"
        lesbian="0"
       
        occupation="prostitute"
        location="slavemarket"
        status="slave">

        <bskill name = "FistAttack"/>
        <mskill name = "Water 1"/>
        <trait name="meek" />
    </girl>

Skills for battle available now are FistAttack, KnifeAttack, ClawAttack, SwordAttack (just two soundbites for 4 of these, need to add 1 for each at some point) and magic Fire, Water and Earth 1,2 levels each. Maybe we can create a shop to buy magic or have it taught in schools later.

I think this is it for today, damn headache is killing me...

I'll resume working on this in a couple of days, after New Years, but will be logging in to check on forum and kill damn spambots.
Title: Re: Writers needed!
Post by: GonDra on December 30, 2012, 05:15:26 PM
I played around some more and have begun manipulating the scripts a bit, haven't added anything new yet, but changed a few things.
While I was testing those changes, I found a minor thing: the advertisement you only have to pay for once (the sign) is still clickable after you bought it. As long as you don't implement a feature where customers, that you couldn't serve, have a negative impact on your brothel I don't see any reason to still have the button pressable.

A thing I also did was reducing the text size in the girlprofile screen - it is more comfortable (to me at least) to see most of the stats without scrolling in the window.
I also changed the order in which the stats are listed a bit. (I put Health and Fatigue at the top of the list because those are probably going to be the most variable ones.)

I am not sure how you want to handle implementing changes from me into your versions so I am just going to link you my modified files in a PM.
Title: Re: Writers needed!
Post by: Xela on December 30, 2012, 05:48:55 PM
I played around some more and have begun manipulating the scripts a bit, haven't added anything new yet, but changed a few things.
While I was testing those changes, I found a minor thing: the advertisement you only have to pay for once (the sign) is still clickable after you bought it. As long as you don't implement a feature where customers, that you couldn't serve, have a negative impact on your brothel I don't see any reason to still have the button pressable.

Ok, that will have to be fixed, either locked on or removed the second it is enabled.

 
A thing I also did was reducing the text size in the girlprofile screen - it is more comfortable (to me at least) to see most of the stats without scrolling in the window.
I also changed the order in which the stats are listed a bit. (I put Health and Fatigue at the top of the list because those are probably going to be the most variable ones.)

At this point I am just throwing stuff on the screen in random order just to make sure it's all displaying correctly :)

Project will be two month old soon, in the beginning screen looked like this:

(http://i47.servimg.com/u/f47/17/97/08/04/th/111.jpg) (http://www.servimg.com/image_preview.php?i=3&u=17970804) (http://i47.servimg.com/u/f47/17/97/08/04/th/210.jpg) (http://www.servimg.com/image_preview.php?i=2&u=17970804)

In any case, as stats and girl's info pile up on us, small buttons can be added to the top of viewport to display only battlestats, sex stats and so on.

Here you can find all the stuff you can do with texts:
http://www.renpy.org/doc/html/text.html#general-text-tags (http://www.renpy.org/doc/html/text.html#general-text-tags)

I am not sure how you want to handle implementing changes from me into your versions so I am just going to link you my modified files in a PM.

Either that or you get a dropbox account and we just add all changes to a version in a shared folder. If you decide to go with dropbox, use this link:

http://db.tt/n73tZzn9 (http://db.tt/n73tZzn9)

We'll both get extra 500mb for free :)

Edit: I've added your changes to the game and sent you back new version with mine and your updates. I've also realigned hboxes on girl profile screen cause last time I didn't do it properly and changing textsize forced hboxes to loose alignment. Small text looks a lot better by the way.

(http://img850.imageshack.us/img850/9471/19621103.jpg) (http://imageshack.us/photo/my-images/850/19621103.jpg/)

I'll try to get some sleep...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 01, 2013, 07:02:32 AM
Some cloth icons. (https://dl.dropbox.com/u/79429937/clothes_icons.jpg)

About girls packs, could you be more specific with images categories and their names?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 01, 2013, 04:25:47 PM
Some cloth icons. (https://dl.dropbox.com/u/79429937/clothes_icons.jpg)

About girls packs, could you be more specific with images categories and their names?

Ok,

Goal of girlpacks required now is to use them in tests of girlmeetintown system I'll be working on soon, what that system is like I've explained somewhere before (I think). New categories of pictures I would like to see for now are:

profilehappy
profileangry
profileneural

even if there is only one pic for each. If none are found girl will use simple profile category.

Rest of the categories you can just check in the last preAlpha release.

About how they work:

Game will automatically create a category once a picture called "______ 0" is found in folder so for example profile 0.jpg (jpeg or png) will create a profile category. All other pictures starting with "profile" as the first word will end up in that category (for example profile 1.jpg, profile (1).jpg, profile Qra313IoP465.jpg will also end up in profile category). profilehappy on the other hand will not and profilehappy 0.jpg or profile1 0.jpg will create a new category.

battle_pics are not necessary at this point, neither are quest pics but throw those in if you find them.

I'll attach last version of data.xml file (location needs to be "city"), if you feel like it, pick at least one girl with a LOT of pics (from large profile Anime like Bleach, Naruto, DBZ, One Piece etc.) and see if you can find profile emotions pictures where background can be removed for a nice transparent .png but that is in no way a must! In data.xml:

id = "Tifa" Unique ID of a girl ONLY to be used in Code! Must be the same as folder where her pictures reside AND MUST BE ONE WORD. So if you want to throw a familyname in there, use Tifa_Lockhart as an id.

folder = ffvii Folder of series. data.xml for the entire series is placed there. Same rule as above, must be one word so use something like ffvii or Final_Fantasy_VII for folders as well.

name = Tifa Lockhart Will be used in game to display to player, no rules here.

Rest of the file doesn't need explaining.

You can just use pictures from WM packs. 

I'll resume working on the game in a couple of days myself.

EDIT:
Last thing, if you don't feel like making a bunch of packs, create one, I figured while writing this whole thing that it would prolly be easier to make one girl and clone her 20 times using code :) It should be doable, I haven't tried but I see no reason for it not to work.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 02, 2013, 09:24:44 AM
Two questions.
Should images names start with a small letter, i.e. "profile 0" but not "Profile 0"?
And what about "occupation" thing in xml?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 02, 2013, 01:34:34 PM
Should images names start with a small letter, i.e. "profile 0" but not "Profile 0"?

Yeap, small letters. It's easy to rename files in Windows in batch or you can just use renamer software with custom settings.

And what about "occupation" thing in xml?

I am not entirely sure myself... :D

Occupation is what she is suppose to be doing in game. For now I've used warrior and prostitute. I am also thinking about adventurer, undecided, teacher, nurse, priest and maybe merchant. Basically this is for an extra (if == prostitute: then .....) check during recruiting in town. The idea is to allow easy recruiting for players that don't want to spend time chatting, doing some quests and raising disposition. If she is a prostitute, she can be recruited on first or second meeting and will work for you for a decent fee for as long as she remains happy.

I would use 'prostitute' or 'warrior' for now, but you can add more if you feel like it. It will not mess with game.

Location is whereever a girl is at this moment, it is already used by the game a LOT.

Status: It is supposed to be girl's legal social rank determining her rights. So far I want to use: slave, free, foreigner, worker (peasant), citizen, noble, royalty. It will be used in some events and in WMlike version during slave conversion (trying to enslave a citizen, noble or royalty without heavy preparations will result in game over by decapitation of player).
For now just use 'free' I guess.

Status and Occupation I am planning to start using to a point soon in PyTFall and to use HEAVILY when we enter WM territory (Dungeons, Slave training and so on) after version 1.0 of PyTFall is ready.


Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 02, 2013, 01:58:16 PM
I see. Well, in the first place I'll convert my wm ex packs.
It's a shame that Future's packs are inaccessible anymore, I really liked them. I wonder if someone still has backups.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 02, 2013, 02:08:33 PM
I see. Well, in the first place I'll convert my wm ex packs.
It's a shame that Future's packs are inaccessible anymore, I really liked them. I wonder if someone still has backups.

I have all of those but cannot upload anything right now :(

Will have to wait a week at least. By the way, if there are packs with rest and/or some sort of striptease category, DO NOT REMOVE those please. We already need 'rest' and striptease job will be added at some point in the future.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: hewhocumsbynight on January 02, 2013, 05:08:33 PM
I have all of the WM EX girl files intact, I think.  I'll try to upload them, if anyone wants, along with WM EX itself.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 02, 2013, 06:01:27 PM
I'll try to upload them, if anyone wants, along with WM EX itself.
I would appreciate that.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: hewhocumsbynight on January 02, 2013, 08:28:42 PM
On it!
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: hewhocumsbynight on January 02, 2013, 08:48:21 PM
Okay, so it turns out the file is 2.92 gigs big, so I don't know where to upload it.  Ideas?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 03, 2013, 02:37:05 PM
Well, dropbox allows you to use at least 2 GB free space. When I'll download them, you will upload another 0,92 GB.
You might also use this referral (http://db.tt/vghNQ0cC) link so we both get additional 500 MB.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 03, 2013, 11:29:34 PM
Had a surge of creativity and used it partially to work on my projects for PyTFall:
I finished the first draft of a few Traits, fleshed out an idea for a meetscript and put together a girl (Pass: whoremaster) out of pics for a WM girl that I had not finished.

That is it for today, time to sleep.

(Links removed)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 04, 2013, 05:12:21 AM
Had a surge of creativity and used it partially to work on my projects for PyTFall:
I finished the first draft (https://docs.google.com/document/d/1YUOTNf4jyZnnz1-UOGXD8Wlj57HCgmZuc9gUM0i9F9E/edit) of a few Traits, fleshed out an idea for a meetscript and put together a girl (https://docs.google.com/open?id=0B1reSH_aYDBvazVMdHZSX2RQNGc) (Pass: whoremaster) out of pics for a WM girl that I had not finished.

That is it for today, time to sleep.

I am on a messed up internet connection right now so I cannot download the girl. Maybe for Oral addict trait we could have the game count how many times did the girl have a successful blowjob/lesbo action and work from there... but it looks good, I'll see if I can put in some time into advancing code tonight.


Edit: I got my connection back. Girlpack looks great but some names of pics are a bit off. I did some coding today, mostly logic behind calculating price and upkeep for different types. Groundwork has been set up, tomorrow I'll see if I can add traits and advance work functions.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 05, 2013, 05:41:23 AM
I have converted Aegis pack (https://dl.dropbox.com/u/79429937/persona3.7z), same password. I'm not sure what to do with ecchi and combat categories, so I just leave them alone for now. I'm also not sure about quest category, since in your Tifa pack there're two quest categories names, "quest1 0" and "quest2 0".
Let me know if I've made any mistakes.
Oh, and I've used "ai" occupation  :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 05, 2013, 07:07:47 AM
I have converted Aegis pack (https://dl.dropbox.com/u/79429937/persona3.7z), same password. I'm not sure what to do with ecchi and combat categories, so I just leave them alone for now. I'm also not sure about quest category, since in your Tifa pack there're two quest categories names, "quest1 0" and "quest2 0".
Let me know if I've made any mistakes.
Oh, and I've used "ai" occupation  :)

Looks great,

I think ecchi and battle categories should be just left along for now, we may find use for those later and will most definitely find use for those in WMlike version.

You've missed the main point of battle_sprite and quest categories:
1) These must be .png with transparent backgrounds and not .jpg
2) battle_sprite (2).jpg would prolly look ridiculous in battle scenarios. You need to imagine battlescreen with girls on the left side when you search for those pics.
3) battle_sprite (1).jpg is better but legs are cut. It would look 'ok' but not great.
4) battle_sprite 0.jpg and battle_sprite (3).jpg should both look awesome once background is removed.
5) About quest pics... Tifa's were rushed, that's why there are two quest categories. Basically the idea behind quest category is to use pics in quest created in style of visual novel. Meaning .png files without backgrounds and in the future, variations, same as with profile (if those can be found), like questhappy, questsad, questangry, questneutral and so on.

Last, couple of blowjob pics belonged in group category, not important for testing purposes but should be noted for future.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 05, 2013, 08:52:15 AM
Damn it, totally forgot to remove background after resizing. Here it is, all is done. (https://dl.dropbox.com/u/79429937/aegis.7z)

Now if I'll convert the rest of mine and Future's (if someone will upload them) persona characters, it will be close to ten.

Btw, if I understand correctly, when we have several characters from the same game/anime/etc., then we must use one data.xml for all of them. It means that character installation is not as user friendly as in vanilla wm, since players must either manually edit xml for each added character, or just install the whole pack with premade xml even if they only want a couple of characters.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 05, 2013, 11:51:36 AM
Damn it, totally forgot to remove background after resizing. Here it is, all is done. (https://dl.dropbox.com/u/79429937/aegis.7z)

Now if I'll convert the rest of mine and Future's (if someone will upload them) persona characters, it will be close to ten.

Ok, after you're done, I'll start working on girlsmeet townscreens. For now there is more than enough work with functions and it is going very, very slow because I am still down with flu and cannot focus :(



Btw, if I understand correctly, when we have several characters from the same game/anime/etc., then we must use one data.xml for all of them. It means that character installation is not as user friendly as in vanilla wm, since players must either manually edit xml for each added character, or just install the whole pack with premade xml even if they only want a couple of characters.

Well, my logic is that people tend to pick shows that they like and are familiar with. In such a case they would prefer all girls from the series. Also this way makes it a lot easier to prevent doubles, so there are some advantages and there is nothing preventing creating a folder Naruto-TL-Mod with it's own data.xml file.

If needs be, it should be possible to recode loading function but at this point there is no way of knowing what a better approach would be.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 06, 2013, 10:18:40 AM
First pack with four main persona3 characters is ready (https://dl.dropbox.com/u/79429937/persona3.7z).
Now I'm just gonna wait for someone uploading at least one Future's pack with Naoto from persona4, since it's kinda waste of time to do it from scratch while there is almost ready one.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 06, 2013, 10:56:57 AM
Alright, there is no rush. I will only be able to really push code further next weekend. First time in my life does a cold or a flu diminish my mental capacity to this degree, takes forever to write and debug a simple method...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 12, 2013, 11:22:08 PM
I am still alive and trying to write for PyTFall.

Didn't manage to get much done since last time but I added two more Traits to my doc. (link killed)
If you have any ideas/comments regarding new traits or the ones in the doc don't hesitate to add a comment to it.

I have pretty much scrapped my idea for a meet script but I would be happy to help people working on scripts for characters as my time permits.
Implementation of scripts seems to be almost impossible at the moment though.
Things that would be nice to have (explained):
-checking for set flags
-deducting and adding money (with checks how much money is actually avaible?)
-a function for adding the girl that adds the girl to the players workforce (since the example script goes off into battle I have no idea how that works)

Not necessary but it would be nice:
A way to manipulate a girls stats depending on the choices you choose to acquire her. (If you persuade her to work for you she should be more willing and happy than if you enslave her with the help of law enforcement because she owes you money.)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 13, 2013, 05:18:37 AM
Ok, lets handle one thing at a time:

Didn't manage to get much done since last time but I added two more Traits to my doc (https://docs.google.com/document/d/1-wJ0U_WZ8z6pSMHeyTpY60a06eB-HcSJyGegWRQ9vbc/edit).
If you have any ideas/comments regarding new traits or the ones in the doc don't hesitate to add a comment to it.

Hopefully will be adding traits till the end of the month, we'll see how it all works then.


I have pretty much scrapped my idea for a meet script but I would be happy to help people working on scripts for characters as my time permits.

As I have said, girlsmeet part of the game doesn't exist yet but groundwork for interactions with girls you already own has been created, that requires a lot of writing and imagination as well and is done in similar way to other scripts.


Implementation of scripts seems to be almost impossible at the moment though.
Things that would be nice to have (explained):
-checking for set flags

There are 2 major kinds of flags that will be used in the game:

- Global Flags

Use this when you need game to remember something for all girls and events. Useful when you want a specific event or part of an event to appear once or a limited number of times in a game.

Stored in: global_flags

Set:

$global_flags.setflag('house_burned_down')

Check:

if global_flags.flag('house_burned_down'):
    "You cannot enter here any longer"

Delete:

$global_flags.delflag('house_burned_down')

Alternatively!:

Easy RenPy way can always be used! Simply create a variable and set it to true (or whatever you want it to be set to):

#Making sure it's unique, you can simply put name of the current label you're working with in variable's name, labels must all have unique names, game will not start with two labels called exactly the same but a second variable with the same name will simply overwrite the value of first and might mess with the game.

Set:

$i_am_some_random_flag = true

Check:

if i_am_some_random_flag:
    "Do something!"

Delete:

del i_am_some_random_flag

or $del i_am_some_random_flag

I believe both will work fine...


- Girl Flags

Stored in events attribute of sGirls's class. This plainly means that these flags will be unique to each instance of that class or with other words, unique to each girl in game.

This is addressed to a specific girl so it must be called accordingly. If used in girl interactions (or my own code) use 'chr', otherwise use whatever you're currently working with:

Set:

$chr.setevt('talked_about_sausages')

Note: Will be set to True. If you need to specify something more concrete use:

$chr.setevt('talked_about_sausages', 1)
Means that you've talked about sausages one time.

Mod:

No point in modding if it is a normal flag (True or False) but if it is an event flag with for example a counter:

$chr.setevt('talked_about_sausages', 1)
$chr.modevt('talked_about_sausages', 1)
Would mean that you've talked about sausages two times. Negative values will decrease the amount but that is not really applicable to this scenario.

Check:

if chr.getevt('talked_about_sausages'):
    "Do something"


Or for example:

if chr.getevt('talked_about_sausages') <= 3:
    $chr.modevt('talked_about_sausages', 1)
    "You talk about sausages"
If at the moment of this code block, event is set to 3 or less, it will add one to the counter.

else:
    "Do Something"
If 4 or more...


Delete:

$chr.delevt('talked_about_sausages')
In reality, simply sets to False, but for all intent and purposes, it will not be affecting game any longer. Completely deleting event flag is outside of scope of a modder.



Other than that, flags can also be used for brothels, events, traits and pretty much everything else in the game... Ask if something very specific is required, most things and conditions are VERY easy to achieve with RenPy/Python.


-deducting and adding money (with checks how much money is actually avaible?)

Player money is an attribute of Player class (Shocker really :D ). The only instance of that class is 'hero' who is also our player, so:

$hero.take_money(1000)
Will check if player has 1000 or more gold and take that money from him. Will also return True if successful or False if he's a broke bastard.

$hero.add_money(1000)
Will add money to player.


-a function for adding the girl that adds the girl to the players workforce (since the example script goes off into battle I have no idea how that works)
Not entirely sure what's stopping you from checking battle script, it's simply one more label with same rules as all others. activedemo.rpy is the file.
Assuming that 'chr' is set to a girl you're working with:

$chr.location = 'brothel'
Adds girl to your list, not in any particular brothel, just means she's working for you from that point on.


A way to manipulate a girls stats depending on the choices you choose to acquire her. (If you persuade her to work for you she should be more willing and happy than if you enslave her with the help of law enforcement because she owes you money.)

This is much more complex of a topic since I am not entirely sure how advanced girl's 'AI' has to be... The thing is that I only wanted to add enslavement and complicated stuff like that to WM version, with dungeon, slaver's guild, training capabilities and so on. You have the list of current stats, to set any of those to whatever you want:

$chr.disposition = 400
$chr.character = 99

or to modify with checking the Max and Min:

$chr.mod('disposition', 400)
$chr.mod('character', 99)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 13, 2013, 11:07:02 AM
Four more (https://dl.dropbox.com/u/79429937/persona4.7z) characters from persona4.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 13, 2013, 12:04:22 PM
Four more (https://dl.dropbox.com/u/79429937/persona4.7z) characters from persona4.

Got'em, thanks!

Edit: Can you PM me your Dropbox registration? I've set up a shared folder for PyTFall, you can create your own folder in there and throw everything in there?

@GonDra

I've sent you invitation weeks ago, no confirmation from you yet?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 14, 2013, 01:24:41 PM
Do you need more packs, or it would be better to continue to look for advertising pictures?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 14, 2013, 01:46:13 PM
Do you need more packs, or it would be better to continue to look for advertising pictures?

Should be enough packs for now I think. I am doing some work on Next Day right now, it'll be a few more days till I start girlstownmeet part.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 14, 2013, 07:32:04 PM
Ok, we may have someone new wishing to help with development, we've been chatting in PMs for a while but this info may be useful to Gon and TL as well as it can be applied to any part of the game:

=====================================
Well... interactions are one of the most popular features in sims like WM and base code for that is ready, yet, there is close to 0 content:

Find pyt - screens - grilinteractions.rpy file.

----
Inside there is a label, labels are codeblocks and a major part of RenPy coding system and coding style that PyTFall uses.
All the code inside such a label runs from top to bottom until it jumps to a next label or breaks (either returning you to previous label or ending the game).

----
There is also a screen part and that is the second (and last) part of RenPy/PyTFall coding system. It contains all graphical and user interface elements.

The main difference between the two is that screen part is being refreshed, code being 'reread' from top to bottom in set intervals of time or EVERY time player interacts with the game or any function calls for a refresh. That means all stuff that effects the game is coded into labels and all stuff that is responsible for interactions and displaying information to player is in screens.

------------
Edit: Now that I've read this myself, it should be noted that the main difference between the two is prolly the scripting language :) Label uses RenPy label language and screen uses RenPy screen language, it's not really all that important since I will never ask someone to learn screen language cause it is fairly complex but label language has like 10 keywords and just a couple of rules so anyone interested should be able to nail it fast.
------------

This is by no means the only programming style in Python or even RenPy, in fact there is nothing preventing us coding the entire game in pure Python or using any other coding style. This is simply the way I learned from Eliont (Alkion programmer).
==========================================================

What needs to be done:

Every time a button on the right side of the screen is clicked:

(http://img269.imagevenue.com/loc568/th_561695978_2_123_568lo.jpg) (http://img269.imagevenue.com/img.php?image=561695978_2_123_568lo.jpg)

A line of code is executed:
Code: [Select]
textbutton "Fuck" action Return(['act','fuck']) minimum(250,30)
It returns a Python List containing two strings (string is programmers lingo for a bit of text): ['act', 'fuck']

There is a codeblock inside a label running a what is called "an infinite loop":

Code: [Select]
   while true:
                result = ui.interact()
               
                if result[0] == 'act':
                    jump('interact_%s'%result[1]) #will jump to whatever the first index of user interaction with game will be.

ui.interact() function will grab the Result of user interaction like pressing a button.

if result[0] == 'act': Means that if the first entry in list that was returned by ui.interact() function is 'act', the following block of code will be executed.

jump('interact_%s'%result[1]) %s was already explained in Tifa's script. It means that game will try to make a jump to a label called "interact_{Whatever the second entry of the list is}"

In our case it will jump to interact_fuck label:

Code: [Select]
label interact_fuck:
    "I'm really not sure about this... "
    "I guess if you really want to, it's ok... right? "
    $ginterimg = chr.img('sex',resize=(int(config.screen_width*0.794),int(config.screen_height*0.802)), force=false, mode = 'return')
    "She did show quite a bit of skill today... maybe she deserves some praise as well? "
    $jump('girl_interactions')

Note that we have not disabled the screen so it will keep on running until we tell the game otherwise (Like exiting the entire interaction scenario)

Since you've said that you have already figured out RenPy label language, this new label abides by every single rule and command of that language and is no different from any other label from any RenPy game.

One thing you should know is:

$ginterimg = chr.img('sex',resize=(int(config.screen_width*0.794),int(config.screen_height*0.802)), force=false, mode = 'return')

ginterimg is a simple Python variable. The image that interaction screen displays is set to this variable. That means that whatever you set it to will be displayed on the screen.

chr  is the girl we're currently working with, it was set when you picked a girl in the list.

img is the method of sGirl class that displays us pictures from categories, rest is meaningless technobabble, if you want it to be explained fully, feel free to ask but what you need to know is:

$ginterimg = chr.img('sex',resize=(int(config.screen_width*0.794),int(config.screen_height*0.802)), force=false, mode = 'return')

Change sex to any other category, like les, profile, quests or any other and game will display a random picture from that category. How categories are created has been explained in previous posts.

What I need you to do is create any amount of scenarios of any complexity for interactions. These can be going out to restaurant, talking about any topics, threatening, praising, sex acts. You can have checks and balances, like for example:

Code: [Select]
if chr.charisma > 50:
    "Do this"
elif chr.charisma < 30: #elif stands for else if...
    "Do something else"
else:
    "Do some crazy third thing"

You should also give rewards or punishments to girls for interactions:

chr.mod('charisma', 2) will increase charisma by two, -2 will decrease it by two, mod method of sGirl class will ensure that you will NEVER go outside Minimum and Maximum bounds.

If you wish to increase Min or Max themselves:

chr.min['charisma'] += 20 will increase absolute minimum of a stat by 20

chr.max['Defense'] -= 20 will decrease the absolute maximum defense by 20

chr.max['Attack'] = 50 will set the absolute maximum of attack to 50

Some useful things to know (since you don't come from Python background)

= sets something
== checks is one thing is equals to another
+ returns a sum of two values
+= adds two values

Examples:
Lets say a girl has 20 charisma:

chr.charisma += 10 will increase the value of charisma by 10, Maximum of a stat can be damned.
chr.charisma + 10 will return a 30, chr.charisma will remain at 20
if chr.charisma == 10:
   #do something

Will check if girl's charisma equals to 10 and execute the following codeblock, while:

chr.charsima = 10, will set it to 10, even if it was 20 before.

From here on out, you can create labels like:

label interact_talk:

and create blocks of code in them of any complexity, you should already know how to create menus, all kinds of flags and checks and stat modifiers.

If you have any questions, feel free to ask.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 15, 2013, 03:58:24 PM
Ok, small update:

nighthalkex who just joined the dev team has already managed to create rudimentary scripts for some of the girl interactions (nearly giving up in the process) and is now working on advancing those. At the very least I now know for sure that I wasn't BSing anyone or myself by saying that RenPy label language could be figured out in less than a day with a bit of help and dedication and no previous coding experience.


We also may have another person joining us, we'll see if he can find something interesting to do on the project.

While talking to nighthalkex a couple of useful things came up that should be mentioned here as well:

Prolly the best way to figure out RenPy is:

1) Download RenPy from the site or our SDK.
2) Go through the well commented script that comes with SDK and introduses to the simplest game one can make with RenPy.
3) Watch the tutorial demo to see what RenPy is capable of (just for fun).
4) Go through this thread and through Tifa's quest script file.
5) Ask any question you may have and pick something in the project to work with.

Another thing is for scripting:

#Rolling dice:

$if dice(10):
    "Do something"

Plainly means that there is 10% chance of the following code clock to be executed. night already used that in one of his scripts. If you're in developer mode, game will also tell you what the results of the dice roll were. Great way to add a unique interesting event to interaction.


As for myself, I am still getting splitting headaches as a flu aftereffect but I did manage to get something done:

1) Girl's price is now based on the commonwealth of her stats and rank instead if being fixed on 500.

2) Girl's now have upkeep, also based on their stats and occupation. Game will deduct that from your wallet every round so girls now cost you money per turn.

3) Girls ask an amount of money they expect for their services! If client cannot pay, they negotiate, all very rudimentary now but the groundwork has been layed out.

4) Girls and Costumers will refuse to deal with one another if their ranks/castes are to far apart, code for that is about 50% done and will definitely be finished tomorrow, I will prolly leave the next day function and sGirl/Costumer classes along (cause I am getting bored with it right now and it really helps to keep rotating assignments to keep myself motivated) and use DarkTl's packs to create a good girlmeet in town system (Something I should be doing right now if I followed the damn roadmap anyway!)

--------------
Edit:
Enough for today,
New version of Otherworld is almost ready and I wanna see what that's like :)

Edit 2:
Latest Otherworld dev version is not really playable due to the lack of content and some small but irritating bugs. What I've read on the blog made me believe it was a lot farther along. I guess he meant backbone codewise and not 'playabilitywise', it will be another month or so :(
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 16, 2013, 10:13:09 AM
Four advertising pictures. (https://dl.dropbox.com/u/79429937/adv.7z) If you need even more then I'm afraid we have no choice but to use random cheerleaders and pictures with girls holding microphones (and most likely singing) on stages.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 16, 2013, 08:01:16 PM
Hi everyone I'm here to help for the graphic side


hi Xela (I'm sorry if I repeat myself)



if you tell me the size of the images for objects, clothes, enemies etc.
and style: pixel or illustration
I'll start working on it as soon as possible
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 17, 2013, 05:58:31 AM
Hi guys! With Xela's permission, I'm also here for help with the project. For this moment, I can't offer much more then collecting and editing pictures, but I'm dedicating myself to learn how to do scripts in RenPy and looking forward to make some events soon.


 Can this be used as a suggestion thread too? There's quite few things that I'm interested about if there's any plans for them or not.







Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 17, 2013, 05:07:44 PM
Hello everyone and welcome to all the new people willing to contribute to the project!


Four advertising pictures. (https://dl.dropbox.com/u/79429937/adv.7z) If you need even more then I'm afraid we have no choice but to use random cheerleaders and pictures with girls holding microphones (and most likely singing) on stages.

Lets leave that for now and refocus on roadmap. I have finished the basecode for:

4) Girls and Costumers will refuse to deal with one another if their ranks/castes are to far apart, code for that is about 50% done and will definitely be finished tomorrow.

and will start with girlsmeeting system tomorrow or the day after. For now it is enough for the next day logic, especially since there is space on the roadmap to work on it later. We need pictures for interesting locations in the city. I have a LOT of those from Eliont's resources collection that he specifically told me to use for any of the projects, but if you have an idea or theme for a location with picture/pictures, I will put that in. For now I think that you've spent enough time trying to cover bases for advertisement pics and we still do not have all the categories (but like I've said we can simply adapt categories to the pictures we have when we get there...)
----------------------------------------------------------

Hi everyone I'm here to help for the graphic side

hi Xela (I'm sorry if I repeat myself)

if you tell me the size of the images for objects, clothes, enemies etc.
and style: pixel or illustration
I'll start working on it as soon as possible

Hello! And welcome to the forum!

I am afraid that I cannot answer your question because I know next nothing about graphical design and this is the first game (or anything else) that I code for.

I figure you can can start with:

 making sure game looks nice/great. We are currently going with wood theme but if you have a different idea, redesigning interface should not be to hard. Otherwise you can just create or search for pictures and art to make game screens look the best they can. I mean, at this point we still have the default starting screen that RenPy comes with (when you first start the game). Eliont went with a beautiful picture of docks and custom buttons for Alkion. Maybe if you can find a picture and find/create a couple of nice buttons I could put those in game? Or better wood frames with a bit of rd effect like in WM Wood skin (I can throw files in Dropbox folder if you haven't seen those yet)

Option two:

You had a bunch of ideas for highly graphical game elements on SimBro forum. Explain in more detail what those were and maybe I can figure out how to code those into the game so you have something to work on that can make the project very unique?

It's up to you, I think first option is more to the point right now cause while I am not a complete nub with photoshop, it takes me forever to make something worthwhile with it and I usually just rush the first thing I can make...

In any case, you should get DropBox and give me your ID/Email so I can add you to the shared folder, there you can familiarize yourself with the code and the SDK.

To answer your questions:
1) Size can be adjusted with RenPy resizing functions or I can make new custom resize functions if those do not quit us. I have no idea what the size of anything should be :)
2) We have more than enough enemies (over 500 from 5 or 6 different games) right now so there is little point in making more unless you wish to create something unique and interesting.
3) Objects and clothes can also be stolen from other games (you are more than welcome to create anything like that yourself but to me it seems like an insane amount of work)
4) Style I leave completely up to you, there is currently no plans on what game should look like what so ever. I am basically just rolling with the flow trying to code logic. If you want to take care of design, you're more than welcome to take the lead in it and I'll just code your graphics into the game.

Hi guys! With Xela's permission, I'm also here for help with the project. For this moment, I can't offer much more then collecting and editing pictures, but I'm dedicating myself to learn how to do scripts in RenPy and looking forward to make some events soon.


 Can this be used as a suggestion thread too? There's quite few things that I'm interested about if there's any plans for them or not.

I suppose we can just use this thread until it gets to hectic and then we'll simply reorganize and split.

About plans, most of my plans come from a point of view of 'large picture'.

1) I want there to be a SimBro 1x style girlmeet option in the game.

2) Jobs that make sense and have interesting events (random, chance or otherwise) based on traits, ranks, castes, preferences and so on.

3) I am toying with an idea to advance girls classes in order to create stuff they love/hate/like/dislike and later use in interactions, events, quests and conversations.

4) Picture categories must be unique to jobs and versatile enough for quests and events to make sense. I have no decided yet on what the best option is:

- to create default pics for all categories without faces
- to default pics to profile category (or any other category that exists and makes sense) of the same girl

5) I want there to be quests, interactions, events and missions.

6) Two game milestones.
- A simpler SimBro version with a very limited amount of traits, items and logic.
- A much more advanced WM/Slavemaker-like version with unlimited amount of items (pixel art or just small pics), loads of traits and a very smart enslavement/training system and other elements like Arena, Contests for your girls versus NPC and so on.

The trouble is that I am currently find it VERY difficult to draw lines between the two, but still trying to do so.

7) AP (Action points) for both, girls and player, so player decides, spend those on training the player, girls or allow girls to work. Already girls spend AP during work and stop working if they run out. Soon interacting/training girls will spend their and players AP as well.

8) NPC's that are fun and eventful (hopefully)

9) Endings based on some form of game milestones and endgame stats, player can choose if he wants to play past ending or start a new game, maybe even some form of new game +.

10) Jokers, not a must but I want to have those.

11) Economy? I can code in a 'city that lives' but only if there is a realistic and fun application for it in WMlike version.

12) Social status is likely to play a VERY important part in the game. More in WMlike version than in SimBro one but it should already make an impact on SimBro version as well.

Maybe more, but the thing is that nothing is really set in stone. I have created a coding roadmap, so right now the plan is to  stick with it and hoping that a game that comes out in the end will be fun :)


==========================
Clocking out, it's almost 1a.m. here already...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 17, 2013, 06:04:10 PM
ok i will start immediately with the GUI


I love this project and I will do my best  ;)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 17, 2013, 06:10:11 PM
ok i will start immediately with the GUI


I love this project and I will do my best  ;)

Great, I've sent you invite to DropBox and put wood skin files for photoshop in there. It was made by a pretty damn good Russian designer for the original WM, and it's where I got the buttons from. If wood theme remains, it might be useful to you.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 18, 2013, 04:11:16 AM
We need pictures for interesting locations in the city.
Could you provide some information about the world history then? Is it strictly medieval, or steampunk, or postapocalypse, or something like in Otherworld, etc.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 18, 2013, 02:55:24 PM
Could you provide some information about the world history then? Is it strictly medieval, or steampunk, or postapocalypse, or something like in Otherworld, etc.

I would say, something along the lines of FF VII, FF VIII.

Magic, Some tech, All sorts of weapons and most architecture types should be allowed.

I was thinking about some form of a failed slave revolt taking place in the country that was squashed but with very significant losses so now slaves are not allowed to train in battle magic or combat ad violating that rule comes at a great price but other than that I didn't give the world to much thought.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 18, 2013, 04:34:42 PM
Hi Xela
 
I have a few questions if you don't mind
 
1. First of all, should I ask these questions here with PM or post them on forum?

Best ask in here so I do not have to write stuff twice or trice.

2. I looked for pictures that you ask me to, but I must admit that I'm not really sure what some of these categories are supposed to mean. Like where they will be actually used and how much often (so I will not be wasting efforts on a lot images for category that are rarely seen where its better to use just the most accurate one). Few examples what I'm unsure about:
 
- is profilenormal same as profile (show in brothel screen) or is it something only used when meeting girls?
 
- there are two types of nude pics on net - one where girl is nude, but otherwise normal (=standing, doing something common) and the other type where she is undressed in bed or showing herself or spreading etc. (=sexy ones, just before action...)
 
- what degree of anger/sadness is better? Is she supposed to be just a little upset about something, or is complete "battle rage" or "down in tears" better?
 
The idea behind this is that when I'm in actual "Development" I want to put a little more efford into this than if it would be just a another girlpack - these will be probably presented with the game afterall. 
 
I uploaded some Sakura pictures so you can tell me what is good and what is not accurate and I will use that example for all future girls - for now I'm collecting for Hinata and one other girl for general testing (like you wanted) and then I want to make my own one and try writing events for her.

Ok... I am not sure about a lot of that stuff either but here's what makes sense to me:

profilenormal (Should be 'profileneutral') will be used a lot I expect, just like the other profile pics with feelings. Rage and down  in tears is a definite overkill for profilesad and profileangry categories, but might be ok for lets say profilerage and profile tears categories :D

Simply said, the amount of categories will depend for the most part on the amount of people that would be willing to work on events, quests and interactions etc., but night is already using those in basic script he's working on for interactions menu. For example, when you choose to scold the girl, when text is stating that she is defiant or sad and randomly chosen profile picture from 'profile' category shows her looking really happy dancing in the field of some freaking flowers doesn't do justice to the game. Another application is to use those to display as profile pictures depending on girl's joy in idle girl management screen. Another during events and girlmeets in town and I am sure we will find many different applications as we work on the game in the future. Since it is very easy to make sure that if category is not found, game will fall back on more basic categories or some form of default pictures that could be applicable to all girls (I will take care of that code later), you should really decide for yourself what degree of anger/sadness is better...

I don't have a lot of time today and will not do any coding but I glanced through your Sakura folder and it looks really good!

3. That comes with another thing - you wanted only some categories of images that you're testing now, but when I'm at it, the're is almost no difference if I'm looking for just something or taking all that's useable from site where I am. So I will do so (and most of WM packs can be improved, trust me) but I need a list of all image categories in use now (or planned) - with all of these WM versions, I'm confused a bit.
 
But that comes with another issue - adding sex pics enlarge size of these girls a lot, and if I upload them to dropbox, it can take a lot of precious space away. Is that no issue, or should I use some sort or placeholders and store them separatedly? (nice solution, but there will be nothing to look at through development )

Ok, like I've said in my PM to you, I simply could use a couple of girls from the shows I am familiar with so testing the code I write for the game is more fun. We will NOT be making actual packs for the game any time soon cause there is no way of telling what image categories there will be in the end! It is as simple as that, we may need to adjust categories, traits, stats, locations, castes and so on MANY times in the future... We already have Hinata, Sakura and a bunch of girls from Persona games, couple more maybe but no more than 10 - 15 AND definitely we don't need a lot of sex pics, just one or more per category will do just fine!

4. I want to normalize size of these images to save space and memory, do you know what size/resolution/ratio is best? (but i can figure that myself)

Game native resolution is 1280x800, frames holding the pics even smaller. Size of the pictures is adjusted for the player by RenPy. I cannot tell for certain if game will support different resolutions cause that means a good deal of extra work and RenPy is exelent with managing window size + Full Screen Size so there is little point. Also even resized by RenPy engine, larger pics look a lot better than small once...

5. You mentioned Simbro1x girl meeting style - that version have predefined standard actions that you can perform with a girl, like chat, give gift... is it's still viable for me to write a specific story for a girl with its own different options and splits? Something thats goes through more meetings in style more like current tifa quest - will that work together?
 

Yes, as code advances, it will be possible to replace interactions, girlmeets, events and quests from default to unique once OR any mix of of the two. Basically, I will have the game to look for the label called:

label 'uniquegirlid'_'ineractionname', if that does not exist, game will use the default label that can be used for all girls. With unique girlmeets, events and interactions you will be able to use specific pics as easy as you would categories, so if a modder really cares to make a good pack for a girl, you can choose texts to match the pics perfectly, you can either use pictures that are not even in any of the categories but are totally unique or to choose specific pic from a category or to use a random pic from a category... it's all up to the creator, you can even throw unique backgrounds for totally unique scenes to be used only with that girl in her pics folder and use those as backgrounds for the events.

6. And mentioning Simbro1x, there is something about this version I'm really interested about - customers chosing girls by their character or appereance. Is there any plans of implementing that in this project? I actually wrote a quite agitating wall of text about this (located at my folder now) but if you already discarted that idea, just ignore my suggestion.

I've read the file, the truth is that SimBro 1X is not opensource and I have no frigging clue what happens under the hood, only what I see during gameplay. It is also one of the stupider things about the game, like a girl changing color of her hair to suit the costumer while picture shows her usual color and usually the wrong picture category :)

Is it hard to code? No... Is it hard to 'fake' using the current code, end-user being non the wiser, again, no. Right now the logic simply creates a costumer during the interaction so there is no pool being generated and matched against girls in your brothels but if we decide to change that, costumer class will not need to be changed or even adjusted... Matching is also easy, do we need it? I have no frigging clue once again...

I suggest we get back to this topic during:

v0.2 - 0.3 - Advanced logic behind next day.

v0.2 - 0.3 - Advanced logic for traits, 6 items planned for the original release, 6 pieces of clothing for girls and advertising + updates for brothels.

I am doing my best to code the game in such way that puts nothing or at the very least next to nothing off the table. I already understand that game needs to not only make sense but also be fun to play, hence the costumer/girls ranks + castes matches so player is forced to do management that is not repetitive and as unique to each round.

Another thing as costumers go, I want to create a number of NPC costumers that will have names and maybe portraits, come back to your brothel for favorite girls/actions and play other roles, maybe we can even give them own avatars. It is fairly easy to do and adds a lot of depth to gameplay, I am actually surprised that it has not been done before. In any case, it's one of the ideas I have for the game.

Anyway, the logic we have now is very basic and doesn't kill a single option or possibility, when we get to the advanced stuff, we will all put some ideas on the table, go through them and decide on how to proceed.

X. And at last, is this ok with you to read message this long and explaining? I found that some people are uncomfortable if they are forced to read anything more then is absolutly necessary - so if your time is really precious, i will try my best to shorten any futher messaging to required minimum. Anyway, I'm hoping there will be no need for many questions like these and I will become more of a help then a nuisance soon.

It's ok, especially since I have not addressed this stuff elsewhere, just do it here next time so I don't have to answer same questions later.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 18, 2013, 09:07:10 PM
Ok, thank you
So you want there to be both "profile" and "profileneutral" categories together? That is the part I was confused about, I somewhat assumed that they were one. But I can see now that it's better to have them separated. However, because they're so close, it's easy to be left with picture that you (girlpack creator) want to have in both - very easy, because lot of emotional pictures will get filtered into happy/sad/anger categories, so almost everything left in "profile" after sorting will be pictures with normal expression (=good for both). It can be solved easily by duplicating that picture, but I was wondering...


Can it be scripted that the game will be choosing picture from more picture types then one? Because, for example, if all screens that were previously using "profile" pictures will now use "profile + profileneutral" pictures, while emotion screen will just use "profileneutral" pictures (even better "neutral">"profileneutral">"profile" to have every possibility) that would solve it more elegantly.
(a very minor issue, I know, just using it to better understand how it all work)

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 18, 2013, 10:10:52 PM
Perfect, i will check immediately the wood skin  ;D


just one question:
of my old GUI concept I particularly like the screen of the daily report :



(http://img541.imageshack.us/img541/9607/breport.jpg) (http://imageshack.us/photo/my-images/541/breport.jpg/)
the way it works is simple:
clicking on the images you can see the results of girls divided by brothel and for every girl by clicking scroll through the customers of the evening displaying in the center the image result
(sorry if my English is not so good, but I hope it is understandable)


do you think that you can use it in the game?
I know that maybe program it now is a waste of time
but I think it simplifies user navigation
and I just wondering to know if it is possible to implement it in the future

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 19, 2013, 01:40:32 AM
Ok, thank you
So you want there to be both "profile" and "profileneutral" categories together? That is the part I was confused about, I somewhat assumed that they were one. But I can see now that it's better to have them separated. However, because they're so close, it's easy to be left with picture that you (girlpack creator) want to have in both - very easy, because lot of emotional pictures will get filtered into happy/sad/anger categories, so almost everything left in "profile" after sorting will be pictures with normal expression (=good for both). It can be solved easily by duplicating that picture, but I was wondering...


Can it be scripted that the game will be choosing picture from more picture types then one? Because, for example, if all screens that were previously using "profile" pictures will now use "profile + profileneutral" pictures, while emotion screen will just use "profileneutral" pictures (even better "neutral">"profileneutral">"profile" to have every possibility) that would solve it more elegantly.
(a very minor issue, I know, just using it to better understand how it all work)


I think so, it should be doable to choose pictures from different categories if 'profile' or anything else is requested but I'll have to take a look at the method to say for sure. Maybe we can do away with normal profile all together, nothing will have to be changed in code, just tell the method to look for profileneutral category when 'profile' is requested but doesn't exists. It is simply that right now "profile" is the only category that absolutely must exists but that can be changed with one line of code. I guess you might be right, there is a good chance that we'll get rid of profile for future packs all together :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 19, 2013, 01:48:46 AM
Perfect, i will check immediately the wood skin  ;D


just one question:
of my old GUI concept I particularly like the screen of the daily report :



(http://img541.imageshack.us/img541/9607/breport.jpg) (http://imageshack.us/photo/my-images/541/breport.jpg/)
the way it works is simple:
clicking on the images you can see the results of girls divided by brothel and for every girl by clicking scroll through the customers of the evening displaying in the center the image result
(sorry if my English is not so good, but I hope it is understandable)


do you think that you can use it in the game?
I know that maybe program it now is a waste of time
but I think it simplifies user navigation
and I just wondering to know if it is possible to implement it in the future

Yeah, I liked that as well but when you've disappeared I didn't want to steal the concept since you might have come back and got another team together, we would have two games in the making with exactly the same Next day interface :D

This is very easy to do, nothing major needs to be coded into the game to make this screen work by the way, so I would expect the workload to be at around 3 - 4 hours tops. There will also be an important events screen and brothel reports screen so we may have to work it into the design. I just wanted to use what we have and add a bunch of buttons to resort the girls and other stuff that will finds it's way into report in the future.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 19, 2013, 06:45:48 AM
I was thinking about some form of a failed slave revolt taking place in the country that was squashed but with very significant losses so now slaves are not allowed to train in battle magic or combat
So we talk about postwar world after all?  :)
(http://s002.youpic.su/pictures/1358542800/thumb_dc39184791e777eb49fe656066a97bfd.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1358542800/dc39184791e777eb49fe656066a97bfd.jpg)
Here (https://dl.dropbox.com/u/79429937/city1.7z) some general pics. Let me know if you need more specific images.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 19, 2013, 10:57:29 AM
So we talk about postwar world after all?  :)
(http://s002.youpic.su/pictures/1358542800/thumb_dc39184791e777eb49fe656066a97bfd.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1358542800/dc39184791e777eb49fe656066a97bfd.jpg)
Here (https://dl.dropbox.com/u/79429937/city1.7z) some general pics. Let me know if you need more specific images.

Edit:
And don't nuke PyTFall, you forgot to rename profile pics for Aegis and that broke it today once already :)

Should be enough for now, I'll see if I can start laying the groundwork for girlsmeet system tonight.



###########################################
Damn it! My noobiness as a programmer is definitely showing... Took me almost 3 hours to code and debug this:

Code: [Select]
        def getcityGirlsList(self, char):
            self.cityGirlsList = []
            for entry in char:
                if char[entry].get('location') == 'city':
                    self.cityGirlsList.append(entry)                       
         
        def getGMLists(self, char, day):
           
            if self.gml_reshuffle == day:
                self.getcityGirlsList(char)
                self.ParkGatesList = []
               
                while len(self.cityGirlsList) > 0:
                   
                    for entry in self.cityGirlsList:
                        if len(self.ParkGatesList) < 3:
                                self.ParkGatesList.append(self.cityGirlsList.pop(random.randrange(len(self.cityGirlsList))))
                               
                        else:
                            break   
               
                    break
           
            if self.gml_reshuffle == day:
                self.gml_reshuffle = day + random.randint(5,7)


But this was the most complicated part of girlsmeet system codewise... From here on it will be just screens, pictures + buttons and that is by far the easy part. What this code'll do for us is creating lists from random city girls for girlsmeet screens (we can pick an amount of girls for every screen as we please) and reshuffle those every five to seven days.

###########################################
And last update for tonight:

First two pics introduce new location (Park Gates):

(http://img160.imagevenue.com/loc548/th_634472359_1_122_548lo.jpg) (http://img160.imagevenue.com/img.php?image=634472359_1_122_548lo.jpg) (http://img28.imagevenue.com/loc487/th_634481162_2_122_487lo.jpg) (http://img28.imagevenue.com/img.php?image=634481162_2_122_487lo.jpg)



Third and fourth:
Girls appear after the girlsmeet button is clicked, disappear if clicked again. Each of the girl's pictures is a button in itself, it highlights when player hovers with mouse over it and if clicked, calls for something similar to interaction window. New set of girls 9 days later (Overlaps are more than possible since we do not have that many girls to work with)
 
(http://img159.imagevenue.com/loc156/th_863448982_3_122_156lo.jpg) (http://img159.imagevenue.com/img.php?image=863448982_3_122_156lo.jpg) (http://img217.imagevenue.com/loc933/th_634492933_4_122_933lo.jpg) (http://img217.imagevenue.com/img.php?image=634492933_4_122_933lo.jpg)

The idea is to talk and action girls into joining up with you. From here on out it is just robotic work, adding new locations, improving the screens and adding interactions/events...



Last: Just a couple random pics from interaction scripts night has been working on with use of profile'feelings' categories:


(http://img139.imagevenue.com/loc429/th_634495334_19_01_20130_11_23_122_429lo.jpg) (http://img139.imagevenue.com/img.php?image=634495334_19_01_20130_11_23_122_429lo.jpg) (http://img168.imagevenue.com/loc902/th_635323981_5_122_902lo.jpg) (http://img168.imagevenue.com/img.php?image=635323981_5_122_902lo.jpg) (http://img262.imagevenue.com/loc170/th_635331998_6_122_170lo.jpg) (http://img262.imagevenue.com/img.php?image=635331998_6_122_170lo.jpg)
     
I am going to get some sleep...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 20, 2013, 06:46:19 AM

And don't nuke PyTFall, you forgot to rename profile pics for Aegis and that broke it today once already :)
Oops  :D
Well, when I made packs for wm ex I tested each of them in game before uploading to avoid any mistakes. When we'll have more or less stable and working version of PyTFall I can do the same.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 20, 2013, 08:27:58 AM
Oops  :D
Well, when I made packs for wm ex I tested each of them in game before uploading to avoid any mistakes. When we'll have more or less stable and working version of PyTFall I can do the same.

LoL

Now that is not fair :)
Current version of PyTFall is not playable yet due to the lack of content and advanced functionality but it is both working and stable.

Anyway:

Plans for tonight:

- Add a couple more places
- Add interactions menu for girlsmeets opening an avenue of work for modders who want to write for the game

I will start in a couple of hours...
#####################################

Tried to start coding 4 times but damn headaches kept getting in the way. I've only managed to add a new place (for the first time, without new label, just a new screen). Taking a page out of Otherworld's book, instead of going there straight from the citymap, you have to go to park gates first and than move around (pressing an arrow button on screen). Basically, I've learned a couple new RenPy functions that might come useful later. Now I need to figure out how I want to proceed with girlsmeet interactions and I'll try to code that in if I have time tomorrow.

New screens:


(http://img223.imagevenue.com/loc650/th_722561349_1_122_650lo.jpg) (http://img223.imagevenue.com/img.php?image=722561349_1_122_650lo.jpg) (http://img246.imagevenue.com/loc441/th_722612568_2_122_441lo.jpg) (http://img246.imagevenue.com/img.php?image=722612568_2_122_441lo.jpg) (http://img105.imagevenue.com/loc409/th_722618368_3_122_409lo.jpg) (http://img105.imagevenue.com/img.php?image=722618368_3_122_409lo.jpg)

     
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: nighthalkex on January 20, 2013, 06:37:41 PM
So, just a kind of important thing:


In my folder (nighthalkex), inside the shared folder PyTFall, there is a Hinata folder that I just updated. I put some new pics that I found but the important part is that I created a few new categories. I did that for the action Go Out, in the interaction menu. There were no pics for those, so I had to find them and create those categories. I am just posting this here so the guys doing girl packs or hunting for picks could know what to look for and what to name them.


So, the new categories are:


date
datebeach
ent
shop


That is all  ;D
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 20, 2013, 07:16:24 PM
So, just a kind of important thing:


In my folder (nighthalkex), inside the shared folder PyTFall, there is a Hinata folder that I just updated. I put some new pics that I found but the important part is that I created a few new categories. I did that for the action Go Out, in the interaction menu. There were no pics for those, so I had to find them and create those categories. I am just posting this here so the guys doing girl packs or hunting for picks could know what to look for and what to name them.


So, the new categories are:


date
datebeach
ent
shop


That is all  ;D

ent = entertainment
shop = shopping

Not all members of Dev team decided to join the shared folder so what those categories are supposed to show will remain a mystery until we include those in another prealpha release :)

Also, soon I'll put some time into img method to make sure new advanced categories fall back to simpler categories and if those don't exist, fall to profile. Another thing I've been putting off for to long is writing a well commented advanced interaction to give an example of what game is already capable of... I'll add that to girlsmeet interactions after I'm done with it.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 20, 2013, 10:30:58 PM
I put the layout of some screens in the dropbox folder let me know if they fit  ;)


when I'm done with the layouts I'll start working on real graphics
for now I'm thinking of keeping a skin of wood, parchment and metal
any advice is welcome



Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 05:27:19 AM
I put the layout of some screens in the dropbox folder let me know if they fit  ;)


when I'm done with the layouts I'll start working on real graphics
for now I'm thinking of keeping a skin of wood, parchment and metal
any advice is welcome

I left my thoughts in the file.

One very important thing I want to add is a request that you make screens in elements (frames) instead of a entire background like for WM. That way we can make adjustments in RenPy in case we need to add stuff later (screens like everything else in the game are a subject to change) without having to go to drawing board every time and also create reusable elements (like the gold/day bar, I can create a separate screen and call it whenever I wish using 'RenPy 'use' statement.)

Edit:

I want to add a couple of things:

1) RenPy can write text on buttons, in any font, color, style etc.
2) RenPy has functions that can repaint any image in GreyScale/BW/Sepia and so on so if we need inactive buttons, don't do unnecessary work, it's one word of code for me and a lot more time for you (renaming, saving, transferring files).
3) RenPy can use layers, zoom in and many other image manipulation if your design depends on those.

4) RenPy also supports many more complicated image transformations, you can have buttons, pictures and other stuff fly around the screen, have moving text and so on. I am IN NO WAY saying that we got to have any of that but you should at the very least know it is a possibility.

5) If you have question on more complicated stuff (if it is possible and if so, whether I have the skill to write code for complex gui elements), feel free to ask :)

I think this is it...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 21, 2013, 07:12:20 AM
Hi, I have spent last few days putting together pictures for Sakura, Hinata and Tenten, I will upload them today – I tried my best to ensure they have all of these quest and emotional categories, and these dating ones when it was possible. All of these pictures have variants in, like in “full” pack – I perfectly understand these are not needed now, but I did it for myself as a reference to see what can be found and test where is good to have diversity, and where it’s just confusing - I plan to update them through development according to categories we add or discard. 

My option about girl images:

While I think it’s really nice to have specialized picture category for all events (shopping...), you shouldn’t really expect these to be present – while it’s not usually a problem for popular characters, people will always request/make less know ones too, and my experience from previous games is that sometimes it’s a problem to even get a set of decent profile pictures.

Happy/sad pictures shouldn’t be used in main screens according to girl happiness. These are usually of somewhat less quality then “normal” ones and just imagine it, if you are a good manager (not hard in these type of games), all these smiling faces = really creepy :-)

date – there’s a usually a lot of pictures with girl going out, cuddling and have fun with a guy from all of these fanfiction pairings. But that’s it, there’s a GUY in it. I can’t help it, but it doesn’t feel right to me... you know, it’s hard to imagine that this Naruto here is supposed to be you. Ideal would be pictures with only girl looking like she is with someone or where guy can’t be easily seen or recognized, but these are much harder to find... what are your options about it?

profile / profileneutral – still unsure about these, because while there are profile pictures that are not good for neutral emotion, all of neutral pictures are usually applicable for profile

costume - quite common there is a nice picture of girl cosplaying or just wearing something really different from her standard outfit or maybe with change of hairstyle/hair color, that makes her too unrecognizable for it to be used as standard profile (maybe it can be, but it just doesn’t fit in there that smoothly)  - but these are really fun so I would love to have them as a category used somewhere
---------------------
ok, that should be all for girl pictures for now. I would like to start working on events now. What should I do?

I’m most interested in writing unique events for chosen girls. For some of characters I like, I have ideas for introduction events, explaining why they are not opposed to work for you, maybe some sort of mini-quest or just few little scenes, probably in visual novel style that happen when you visit a location in city... I’m a fan of these.
Also some interaction between those girls, if you have them working for you. And I sometimes came around a picture that inspires me to imagine some sort of situation... I would like to write some of these too.

But I’m not sure if that’s a good thing to do because you have planned interaction system like simbro1x version, when you go somewhere and see a list of present girls that you can speak with. I think that’s great for generic use and little alterations I not sure if it’s compatible with that I’m imagining.
And it still would only add a girl, even if with events, so it would be probably only a “scripted girlpack“, one-time events that doesn’t add much into game.

In the way I see it, at this stage it would be more beneficial to make some generic day-to-day brothel events, those that would use emotion pictures and not target specific girl.
But I don’t have that many ideas there, and they also seems harder to code. But I can try too.

Awaiting your command sire!
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 08:01:27 AM
I agree with you on categories and picture front so I am not going to repeat what you wrote.

On events and quests. Basically the system is ready, but you're right to say that it is prolly to early. Tifa's quest I created to show some of the capabilities of RenPy and that it basically tops WM, Otherword and Slavemaker as far as events, quests and interactions go because you do not have to mess with .xml files, can choose backgrounds, pictures, music and call conversations and images with one line of code.

But we will be adding many new places I expect... maybe a new location, like a different city or city outskirts and so on. Also a more advanced system for calling girl interactions and events is not ready, the idea I have is to check all girls for unique labels, in those labels, conditions for activating events will have to be places. That way you can replace any interaction, any event or create new unique once to appear in any city. Maybe something can also be done with flags, I need to try a number of approaches (and there are MANY to choose from) and figure out which will be easier for modder to understand (because while you will prolly develop a good grasp on RenPy as you write, modders that are not part of dev team and will come later need simpler options).

In any case, for now, I suggest you simply take a look at RenPy and PyTFall, read this thread as there is a lot of useful info here (I'll restructure it at some point and out it into one post and a file in gamefolder). Read comments inside the interactions, jobs and quest and see what question you may have.

I am planning to create girlsmeet interface and it will need events later (some we can prolly copy from somewhere, but many should be unique) and I also like some advanced stuff like girls asking you to buy stuff for them during shopping and other events. Also adding things that girl like/dislike like in SimBro 1x (it will be a bit more advanced in PytFall thou and will not depend only on traits).

Still getting splitting headaches as an aftereffect from a flu and Doc said it may be a few days until it's over so I can only work on the game in between those. You'll have to wait at least until I am finished with girlsmeet screen and advanced interaction event before you start actual scripting. If you want to try something right now, just take some of the stuff that has already been done as an example and write something of your own, testing it in the process. Ask questions as they come. It will help you get a feel for the engine.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 21, 2013, 10:14:20 AM
it’s hard to imagine that this Naruto here is supposed to be you. Ideal would be pictures with only girl looking like she is with someone or where guy can’t be easily seen or recognized, but these are much harder to find...
I guess we can use profilehappy pics, or maybe pics with girl standing or walking somewhere on the street. Anything but Naruto  :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 21, 2013, 12:15:05 PM
Hey guys,

just wanted to say hello. I'll try to contribute something useful to this project on the Python side of things :-)

Greets,
rudi
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 12:21:41 PM
Hey guys,

just wanted to say hello. I'll try to contribute something useful to this project on the Python side of things :-)

Greets,
rudi

 :)

Welcome to the forum and project!

PS: Rudi works on porting Otherworld to Python, we've met on Otherworld forum before it got nuked by viruses. He is a more skilled programmer than me so depending on time both of us have to spend coding for the project, it just might go a lot faster!
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 21, 2013, 01:34:10 PM
Finally got around to getting my Dropbox set up correctly and am downloading the shared folder as I type this, I will probably take a look later after I worked a bit on other stuff.

One thing that I mulled a bit the last few days is if the player character should be vocalised at all.
It is easier for people to think it is them doing decisions if you don't actually put words in their mouth, so that they can imagine that they are speaking in a specific slang.
There is also the problem how different modders will write the dialogue for the player - preventing that the player will switch personality when he speaks with two different girls.
I personally would prefer to write/read 'You explain that you are <playername> a local businessman in the entertainment sector' than a lengthy dialog (but maybe I would do that because I suck at writing dialogs).
Anyway, this is just what I think about it and if you want to have the character speak that is doable too although you would probably need a character description to keep the dialog relatively consistent.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 01:53:21 PM
Finally got around to getting my Dropbox set up correctly and am downloading the shared folder as I type this, I will probably take a look later after I worked a bit on other stuff.

One thing that I mulled a bit the last few days is if the player character should be vocalised at all.
It is easier for people to think it is them doing decisions if you don't actually put words in their mouth, so that they can imagine that they are speaking in a specific slang.
There is also the problem how different modders will write the dialogue for the player - preventing that the player will switch personality when he speaks with two different girls.
I personally would prefer to write/read 'You explain that you are <playername> a local businessman in the entertainment sector' than a lengthy dialog (but maybe I would do that because I suck at writing dialogs).
Anyway, this is just what I think about it and if you want to have the character speak that is doable too although you would probably need a character description to keep the dialog relatively consistent.

Good point... If we create different player character types, amount of work for content creation will multiplied...

Maybe you're right, we can keep it to girls and narrator only or simply allow modders to make their own choices... the trouble is that there is also nothing we can do, we only control the content we release the game with, it is impossible to prevent modders from creating content as they please or at the very least, close to impossible.

I want to hear from Night and CW on this topic. I am sure they gave dialogues more thought than I have.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 21, 2013, 02:14:27 PM
:)

Welcome to the forum and project!

PS: Rudi works on porting Otherworld to Python, we've met on Otherworld forum before it got nuked by viruses. He is a more skilled programmer than me so depending on time both of us have to spend coding for the project, it just might go a lot faster!

Thank you for the praise, but it is undeserved. I'm just an amateur and have nothing to show yet, except for me liking to fool around with Python. However, if anybody needs something coded in Python I might be able to help.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 21, 2013, 04:09:26 PM
There is also the problem how different modders will write the dialogue for the player - preventing that the player will switch personality when he speaks with two different girls.
In slavemaker, for example, main character's personality theoretically bases on his/her background, traits and so on. This is tremendous amount of work, but modders will be able to write it's own dialogue for each background or traits set if PytFall will use the similar system.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 04:23:06 PM
In slavemaker, for example, main character's personality theoretically bases on his/her background, traits and so on. This is tremendous amount of work, but modders will be able to write it's own dialogue for each background or traits set if PytFall will use the similar system.

Yeah, Slavemaker's GUI and gameplay leave a lot to be desired but amount of usercreated content is incredible. In PyTFall modders will be able to write own dialogues regardless of the system we choose, we'll take it one step at a time, for now we need to decide how we handle this right now...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 21, 2013, 05:04:35 PM
Hey guys,


I looked at Items and their effects today and noticed a problem.

Consider this scenario:
A girl has a charisma attribute. Minimum value is 0, maximum value is 100. Currently her charisma is 90.
Now she puts on a nice dress (charisma + 20). The current implementation recognizes that this would raise charisma above maximum and limits the value to 100.
Next, she takes off the dress. The current implementation drops her charisma by 20, leaving her 10 charisma short of where she started.

Suggestions?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 21, 2013, 05:26:08 PM
I'd say, Xela, it's too early to worry about it then, just like it's too early to create girls packs.
Either modders could use dialogues presets if you feel like adding MC's backgrounds or some others MC-related flags, or rpg-like well-branched dialogues if you don't.
Branched dialogues are supported, aren't they?

A girl has a charisma attribute. Minimum value is 0, maximum value is 100. Currently her charisma is 90.
Now she puts on a nice dress (charisma + 20). The current implementation recognizes that this would raise charisma above maximum and limits the value to 100.
Next, she takes off the dress. The current implementation drops her charisma by 20, leaving her 10 charisma short of where she started.

Suggestions?

You probably should use two variables for each stat, one for the base value and one for the actual value shown to player, i.e. base value + equipment effects limited by 100.
Or one limited by 100 and shown to player and second unlimited and not shown.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 05:28:42 PM
Hey guys,


I looked at Items and their effects today and noticed a problem.

Consider this scenario:
A girl has a charisma attribute. Minimum value is 0, maximum value is 100. Currently her charisma is 90.
Now she puts on a nice dress (charisma + 20). The current implementation recognizes that this would raise charisma above maximum and limits the value to 100.
Next, she takes off the dress. The current implementation drops her charisma by 20, leaving her 10 charisma short of where she started.

Suggestions?

An obvious solution would be to rewrite the whole method and have it add whatever value to a stat without actually having to mod the stat. kind of a two variables scenario, one is stat itself (base) and another whatever the equipment adds to it. That would solve most problems...

Other less technical solution would be to have every item in preWMlike version of PyTFall modify maximum of a stat as well as the base, also solving the problem.

Leaving it as it is would be the least technical option :)

I am sure there are other solutions thou...

Edit: The thing is that we already have a very advanced items system in Alkion, so I wanted to create the simplest system possible for SimBro version of PyTFall and then simply use the Alkion system for WMlike version when we get to it... this thing with items was definitely not intended to work like this, but I would say live and learn :)

I am wondering what the best way to solve this thou... I don't want the sGirl's class to get to messy so now we need to think of a way to mod the original self.charisma stat by second variable: Writing separate method like self.getStat('stat') and use that in game seems like an answer... but that would make transition to WMlike version a bit more of a mess I expect...

I'll check how it is done in Alkion and figure out the best way... maybe it will be simpler to leave the matter as it is for SimBro PyTFall or just import Alkion's system right now and be done with it.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 05:34:21 PM
I'd say, Xela, it's too early to worry about it then, just like it's too early to create girls packs.
Either modders could use dialogues presets if you feel like adding MC's backgrounds or some others MC-related flags, or rpg-like well-branched dialogues if you don't.

Well, night is already writing some interactions and CW will prolly soon start as well so it not that early...

Branched dialogues are supported, aren't they?

Yeap!

You probably should use two variables for each stat, one for the base value and one for the actual value shown to player, i.e. base value + equipment effects.

That's what I've said :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 21, 2013, 05:47:27 PM
Hmm... wouldn't it also work if you simply counted the stat higher but if the stat was larger than the max you only give out max?
Should even work if you increased max at a later point.
Not sure how permanent increases to a stat would work in the long run though - you still would need a check to make sure you don't exceed the maximum the variable can hold (if that is applicable in Python).

Edit: (I have only limited knowledge of the codebase and don't know Python ignore my possible ignorance)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 21, 2013, 06:11:26 PM
Yes, that would also work GonDra.


I have yet another suggestion: Only store the base value of the attribute and calculate the equipment bonuses on the fly every time the attribute is accessed. This is A LOT slower than the current system, but it is guaranteed that the returned value is correct and there is only one method that contains all the attribute calculation code. For now I'm sure it's not too slow, but it is definitely only a makeshift solution begging replacement.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 06:15:36 PM
Hmm... wouldn't it also work if you simply counted the stat higher but if the stat was larger than the max you only give out max?
Should even work if you increased max at a later point.
Not sure how permanent increases to a stat would work in the long run though - you still would need a check to make sure you don't exceed the maximum the variable can hold (if that is applicable in Python).

Edit: (I have only limited knowledge of the codebase and don't know Python ignore my possible ignorance)

It would work as well... like I've said, I will check how it works in Alkion and try to figure out the best way to handle it. Rudi wrote an option on how to solve it already, but in pure Python so implementation needs to be checked.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 21, 2013, 06:24:44 PM
No, what I sent you does not solve this problem, writing that lead me to find this problem ;-)

However, I can definitely solve this problem if we can decide how it should be solved.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 21, 2013, 06:57:49 PM
No, what I sent you does not solve this problem, writing that lead me to find this problem ;-)

However, I can definitely solve this problem if we can decide how it should be solved.

 Not today :)

 I've already spent all the time I wanted to code in today chatting but it was still very well spent! I'll finish remodeling parkscreens tonight (something that has to be done to make girlsmeet system work later) and take a look at Alkion's code tomorrow on how items are handled there, we can create a whole new system for sure, especially with you on the team but ditching a ready to go system with import from .xml and ready to use screen language would be a damn waste...

 Also, your code is still a bit above my 'paygrade' and while I do understand most of it, it will take some time getting used to...

Edit:
 Ok, so Eliont's code is also not easy for me to figure out (at least I am used to it) but best I can tell, Alkion has exactly the same problem :)

 I'll ask him tomorrow, it's 2 a.m. again so GN.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 22, 2013, 05:13:14 AM
Well, night is already writing some interactions and CW will prolly soon start as well so it not that early...
Excuse me, but I thought we talk about modders, not members of PyTFall dev team itself  ;)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 22, 2013, 06:09:26 AM
Excuse me, but I thought we talk about modders, not members of PyTFall dev team itself  ;)

Nope, I believe Dra meant the development team as well as modders. I asked Eliont about the Alkion's items and the way it works now is that items simply are allowed to mod stats above their Max parameters... so basically kind of a 'lazy' approach I suggested where all items are simply capable of raising the max stat, only implemented a bit differently.

I have finished my two major screens on one label experiment cause while that worked flawlessly, creating girlsmeet interactions would be a hell to code in in that setup. Graphically, nothing will change, only the code. I'll finish the transition and then start working on gm interations menu.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 22, 2013, 03:59:15 PM
Alright, so I thought about what code I could write for PyTFall. There are lots of possibilities and most of them involve me designing how parts of the game will work. I'm not sure that's a good thing, as somebody else might want to do it differently. Therefore, we either should have a discussion previously or somebody with the authority to do that should decide how that particular feature should be implemented. Let me give you an example: Brothels
Should they provide jobs and stat bonuses to inhabitants like in SlaveMaker?
Should their properties be decided by the rooms they encompass like in Otherworld? Should they even have rooms?
Should they influence available customers, like in sibr1x (I think...)?
Can the player own more than one? Run more than one?
Not everything can be set in stone at this point, but some decisions will be necessary.
How many slaves can the player own? Many slaves means lots of work for the player, so managing each one of them should be simple (think WM here). Few slaves means lots of playertime for every one of them, so managing them can be quite involved (as it is in SlaveMaker).
Many slaves means multiple houses can be useful. Few slaves mean a single house at any given time will be sufficient.

We could add a simple design document into the Dropbox, so each of us can edit it. A .doc file (not .docx!) would be a good choice, as most people will be able to edit it and pictures can be included if artists want to sketch GUI layouts or similar stuff. In this document, we could collect ideas and develop a common vision for this game.

To get started, we could talk about a very interesting question: At this point, what would be the most fun, interesting or sexy new feature/improvement to the game (in your opinion)?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 22, 2013, 06:05:16 PM
First thing I would like to ask is that you try to dumb down code to my level. You quickly tend to customize classes and use inheritance where it can be avoided. Even if it might be a better way of programming, it is also more difficult for me to read and understand.

I started the project to have something I can understand and advance, so for as long as it is possible I would like to avoid having a School/Brothel/Bank inherit from one Building class and having to modify class behavior like __getattr__, __repr__, ect.. Even for items you've employed "collections.Counter" inheritance (that I've heard of but never used before), I've seen a good 15 items system so far and non of them had to use any module while working great.

I know this is a nuisance but I would like to avoid having to go through documentation or hurting my head figuring out classes every time I wish to modify the game.

Alright, so I thought about what code I could write for PyTFall. There are lots of possibilities and most of them involve me designing how parts of the game will work. I'm not sure that's a good thing, as somebody else might want to do it differently. Therefore, we either should have a discussion previously or somebody with the authority to do that should decide how that particular feature should be implemented. Let me give you an example: Brothels

Brothels are as good of an example as any :)




Should they provide jobs and stat bonuses to inhabitants like in SlaveMaker?
Should their properties be decided by the rooms they encompass like in Otherworld? Should they even have rooms?

Yes, they should obviously have rooms but WM/Simbrothel type of rooms. After Alkion is ready (new version was released today and it is getting good, much of the coding is ready, now it is mostly about content and re-balancing) I will prolly translate it to English if time allows and we will have a game with a lot of different rooms :) No need for two games...

They also already provide jobs and should provide bonuses during jobs if upgraded in the future. Also I had half a mind to allow more advanced upgrades like in SimBro 1x or Alkion through buying furniture and similar stuff, but that was planned for the advanced version.



Should they influence available customers, like in sibr1x (I think...)?
Can the player own more than one? Run more than one?

Yes, they already determine costumer's caste based on brothel's reputation. More than that? Like fetishes, I didn't plan anything like that but SW raised that issue. He wanted Brothels to attract costumer with certain preferences based on advertising but that wasn't in my original plans. Design was supposed to be simpler than that.

For now, I suggest keeping it simple, release a playable Alpha, then look at the game as a whole and decide what parts are more important and focus on those!

For the second question, please take a look at the game, Player is obviously allowed to own and run more than one brothel.

Not everything can be set in stone at this point, but some decisions will be necessary.

True, take a look at what's already there. On top of this brothels are supposed to have at least strippers after the lounge is bought, if you've read previous posts, you prolly already know that the idea was to have player balance Brothel's reputation (that influences costumer castes) vs ranks of girls working in the brothel. Strippers would rouse up clients that will later buy sex and entertain overflow of costumers getting cash out of them.



How many slaves can the player own? Many slaves means lots of work for the player, so managing each one of them should be simple (think WM here). Few slaves means lots of playertime for every one of them, so managing them can be quite involved (as it is in SlaveMaker).

Also was addressed somewhere. I tested the engine on 4 years old laptop with a logical equivalent of :

For 2 000 000 interactions (around 400 000 girls in game), game crashes on next day.

For 200 000 interactions (around 40 000 girls in game), next day calculations take around 7 - 9 seconds. Saving takes 20 - 25 seconds.

For 20 000 interactions (around 4 000 girls in game), next day calculations take around 1 - 2 seconds. Saving takes 1 - 2 seconds as well.

For 2 000 interactions (a more realistic scenario of 400 girls in game), next day calculations and saving are instantaneous.

So we're in the clear  to have a lot of slaves like in WM. Also, game will be be based around AP (Action Points) and I am planning to make managing/training any one - two unique slave/s VERY entertaining as well as running brothel but that is also planned for a more advanced version.


Many slaves means multiple houses can be useful. Few slaves mean a single house at any given time will be sufficient.

Many houses, many girls, less than half of them slaves if you've read previous posts. Girl's have kind of castes themselves that go from slave to royal and all will have different rights. Implementation will be half/half between the simpler SimBrolike and advanced WMlike versions of the game, how deeply implemented in the simpler version, only the flowing gamedesign will tell.


We could add a simple design document into the Dropbox, so each of us can edit it. A .doc file (not .docx!) would be a good choice, as most people will be able to edit it and pictures can be included if artists want to sketch GUI layouts or similar stuff. In this document, we could collect ideas and develop a common vision for this game.

Please lets not do that... it takes insane amount of time and pouring out brainstorms into such documents quickly corrupts the concept. Both of those I've seen happen in Alkion and a couple different projects. There many problems in projects with more than one programmer, in Alkion, it was mainly difference in skill between Eliont who studied to be one and can code in an impressive amount of languages, has specialization (media streaming) and learned Python just so he could code in RenPy in his spare time and me who just listened to lectures and read a limited amount of Python Documentation so I could try and code some form of WM2. I don't want this to turn into another Alkion :)

My advice is this:

Choose what you want to code, like brothels, ask here what that is supposed to be like in general and then simply write what and how your planning to code in .doc. You don't have to be to specific, just the general plan and how you're planning to implement that.

To get started, we could talk about a very interesting question: At this point, what would be the most fun, interesting or sexy new feature/improvement to the game (in your opinion)?

Jokers? Mission system? Traits?

 I know a good one: Exploration engine   ???

My idea was to finish the girlsmeets, finish the advanced logic for Brothels/Costumers/Girls/Traits. Finish every tool modders may require and release the freaking stable Alpha version, still without Jokers and some other stuff but playable, stable and with some fun content! Then work on adding jokers and other features that are secondary to gameplay to enrich the game, balance it out properly while during that time new and new content is created and then, release a beta, debug - release The Final 1.0 version of SimBrothel PyTFall and then after a short break, start pushing that into a more advanced game with territory control, advanced slave training, advanced Arena maybe even some form of exploration engine.

Long story short, I think the most amazing/sexy thing right now would be to release a working version :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 22, 2013, 07:01:17 PM
Ideas plz:

This is from SimBro 1x:

Menu:

Chat: Interests, Hang outs, Shopping, Romance
Insult: Dumb, Boring, Ugly, Slut
Give Money: 25, 50, 75, 100
Touch: Hug, Hold Hand, Slap Butt, Grab Breast
Play Game: 5 Questions, Find Something, ?, ? Doesn't work
Compliment: Clever, Smart, Cute, Breast
Joke: Kids, Adult, Sex, Gross
Give Gift: A lineup of items, can be substituted with take shopping or we'll just add items.
Kiss: Hand, Forehead, Cheek, Mouth
Proposition: Friends, Girlfriend, Sex, Hire


All and all, I think we need 'Subdue' (Starts a battle scenario and maybe some events like someone coming to her rescue), 'Date' (Scenario with background switch), maybe some form of 'Special'?

I would like something more original than plainly ripping the whole thing off SimBro 1x. Any ideas?

I am going to get some sleep...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 22, 2013, 07:14:18 PM
Quote
First thing I would like to ask is that you try to dumb down code to my level.
Concerning inheritance:
That's a proven concept. Every Python object is an instance of some class and every class has a superclass, except for the "object" class. Understanding inheritance is important for programming in Python (and not only Python).

Concerning special methods (e.g. __repr__):
I do that quite often in my own project, for various reasons. The code I sent you for PyTFall only used __str__, which modifies how a class looks when it is printed. As a result, whatever __str__ does has zero influence on the inner workings of a class and can be safely ignored. I only included that to be able to test the class comfortably.

Quote
I would like to avoid having to go through documentation
You think my badly written code is easier to understand than the official Python docs? If I don't use what Python has to offer, I have to code the same functionality myself, reinventing the wheel. Usually, the fastest and easiest way to solve a problem in Python is to look up the solution in the docs or on stackoverflow. That's also the easiest way to learn the language, IMHO. I do it all the time.

Quote
I started the project to have something I can understand and advance
I can understand that. However, I don't think you are doing yourself, or your project, any favors by wanting to implement everything "by hand". Nevertheless, I will only use standard library objects for future PyTFall code.

Quote
take a look at what's already there. [...] Also was addressed somewhere
You know, I spent 3 hours reading when I quickly scanned through this thread my first time around here and obviously I missed quite a lot. I also played the game a little bit. Despite that, it is really hard for me to tell which of the parts that are already there are only makeshift solutions meant to be replaced and which are established concepts that should be kept and expanded upon.

Quote
Please lets not do that
Alright, as far as I'm concerned, that's entirely your call.

Quote
Choose what you want to code, like brothels, ask here what that is supposed to be like in general
I'm interested in customers. What do you have in mind for them? They have a social class. What else? Do different locations have different frequencies of particular customer types?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 22, 2013, 08:05:29 PM

I'm interested in customers. What do you have in mind for them? They have a social class. What else? Do different locations have different frequencies of particular customer types?

Clients:

I've planned the following, some of it is implemented, some not:

- Have social status, status depends on Brothel's reputation, every brothel has a minimum and a maximum reputation, that is being loaded from .xml file along a number of other stats. Maximum reputation is what prevents a lord or a royal from ever coming to some shitty ran down building for example.

- Have traits, like for example Huge Dick, Fat, Violent etc. I've never compiled a list of any traits, the idea was to ask people on forums what they wanted to see and come up with a couple myself. Traits trigger would trigger events in girl's behavior, job performance and so on. Absence of a trait would be a most common trait :) Rest are random chances, maybe once in 5 - 7 costumers, one gets a trait.

- Have an amount of money with them, random int depending on caste.

- Have an amount of money they would be willing to spend, rest is up for grabs by checks during the act itself, tips, girls bartering skill (actual skill or simply intelligence check) and so on.

- Gender

- Act (what they wish to do in brothel)

- Pronoun (he/she) for texts.

Number of stats:

- set of 'Battle Stats' (Like girl/player)
- Charisma
- Libido


Recently, it was suggested that a costumer should also have portrait based on it's caste and maybe traits.


Another thing, while I planned to implement this only for the advanced version, plans can be changed especially since we now have you on board as a programmer, I wanted to create a set of "Returning" costumers, not a large number, lets say 5 - 20 depending on day of the game. They would not be randomly generated every turn but will always be present in a list or a dict and have special events and texts during jobs. Maybe related quests even...

Such a costumer would also need:

- Name
- Picture (for quest, matching the portrait)
- Favorite girl or girls (no idea what's better, 1 or several)
- Favorite Act


Amount of clients will depend on brothel's fame and advertising techniques but since clients will be generated elsewhere, it should not important to the class.

Other stuff? I don't know, I think that is as far as my thoughts took me, if anyone can think of some cool stuff to add here, you're more than welcome.

And it's 3 am now, I REALLY need to get some sleep!

PS: On the code issues, it's all good as long as you agree to explain something I might not understand in detail. I realize that I am not doing myself any favors not using everything Python has to offer but my way works as well ;)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 23, 2013, 02:47:37 AM
Of course I am willing to explain my code, but so far, you did not ask any direct questions about it  ;)

EDIT: I added specifications for customer code to my dropbox folder. Please review it  and decide if you want a common base class for characters or not.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 04:39:43 AM
Of course I am willing to explain my code, but so far, you did not ask any direct questions about it  ;)

EDIT: I added specifications for customer code to my dropbox folder. Please review it  and decide if you want a common base class for characters or not.

No common base if it can be helped. I left comments inside the file.


Ideas plz:

This is from SimBro 1x:

Menu:

Chat: Interests, Hang outs, Shopping, Romance
Insult: Dumb, Boring, Ugly, Slut
Give Money: 25, 50, 75, 100
Touch: Hug, Hold Hand, Slap Butt, Grab Breast
Play Game: 5 Questions, Find Something, ?, ? Doesn't work
Compliment: Clever, Smart, Cute, Breast
Joke: Kids, Adult, Sex, Gross
Give Gift: A lineup of items, can be substituted with take shopping or we'll just add items.
Kiss: Hand, Forehead, Cheek, Mouth
Proposition: Friends, Girlfriend, Sex, Hire


All and all, I think we need 'Subdue' (Starts a battle scenario and maybe some events like someone coming to her rescue), 'Date' (Scenario with background switch), maybe some form of 'Special'?

I would like something more original than plainly ripping the whole thing off SimBro 1x. Any ideas?

I am going to get some sleep...

Any ideas from the people who played SimBro 1x and felt that something was missing or should I just copy/paste from it and we'll expand on it later?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 23, 2013, 06:40:35 AM
Since you ask about missing parts, you might want to take a look at Popuri's interactions mod (http://pinkpetal.org/index.php?topic=907.0). It has some interesting ideas, like nice/not nice dates, punishments and so on.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 23, 2013, 06:41:28 AM
Suggestion time!

Number of girls:

I think we need to avoid both extremes
– with very small number (like up to 10) it will tend to have too much micromanagement and generally plays more like rpg, and that general feeling is more like a harem then being a boos that runs his brothel establishment
– with very large number (100+) , game will need too much simplification to avoid being overwhelming for player to manage, and with reduced importance that single girl will have, impact of any work invested into girls individualities, traits, meeting system or events will be lessened too...
so I suggest game to be balanced somewhere about 40 girls working

I really liked simbro1x system in that matter; there was a weekly plan of actions for every girl that repeated itself, so with a bit of careful planning all that was needed was to set it once, and then the whole building pretty much runs on auto, allowing this “set and forget” playstyle where number of girls never becomes an issue... and gives player time for all those fun things like making movies, looking for new girls, doing missions...

btw. Xela, you don’t plan fetishes, but still want clients to have traits? I’m sorry, but I don’t see a real difference if a customer can have trait “big dick” or if he can have trait “likes blondes”

interaction menu:

I like the idea to be able to just rewrite the lines in interaction menu, thus making the girl unique, as easy variant to setting a fully customized event.
And for that we need lines that are replaceable, something simple like introduction, what are you doing, how are you... what can be banal “I’m fine” in vanilla, can become something more interesting “I’m another step closer to conquer the world!” or “I’m just thinking about testing my new “Starlight Breaker” move on someone, will you stay still for a bit?” when customized – I like that
...but on a second thought, it’s probably easy to customize text on these buttons too, so there’s no need to have them (you know, like Chat>interest to Boast>Show her your mad skillz! option)

But most of the simbro1x options will do (but please no jokes...)
...and it could be nice if we use these new image categories we have planned, like date on beach...

Another idea:

About all of these dating options – because there was already some thoughts about player personal relationship with his whores, maybe it will be a good idea to separate those two – how much she likes you, and how much is she convinced to work as a whore. It will give a more deep and options to interactions. And with that it will be possible not only to play the Romeo, but also the Bad Guy who threaten girls into working for them!
I’m imagining something like convincing (you can get this much money, become famous bla bla...) and threatening (I’m a friend with THESE guys, and you wouldn’t want them to pay you a visit...)
Simplified variant can  be to have only this current “relationship” stat to have a negative numbers to indicate hate and fear, with a Hire option to have some chance on success on this side too.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 07:10:42 AM
Since you ask about missing parts, you might want to take a look at Popuri's interactions mod (http://pinkpetal.org/index.php?topic=907.0). It has some interesting ideas, like nice/not nice dates, punishments and so on.

I was talking about girlsmeets, not interactions.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 23, 2013, 07:21:08 AM
Jeez, I know. But some parts like differet types of dates can be used in meeting scripts too.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 23, 2013, 07:50:34 AM
About all of these dating options – because there was already some thoughts about player personal relationship with his whores, maybe it will be a good idea to separate those two – how much she likes you, and how much is she convinced to work as a whore.
Thus, even if she doesn't want to be a whore, she still can work for you at some neutral jobs, like waitress.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 23, 2013, 08:15:38 AM
Thus, even if she doesn't want to be a whore, she still can work for you at some neutral jobs, like waitress.

Yes, your right, I totally forgot about these... And I actually used this type of jobs alot...
 
What I wrote doesn't make that much sense now, because girls that want to work for you, but don't have any kind of relationship with you are those appearing in standard "buy me” menu, so there is no need to simulate that kind of situation in interaction menu...
 
sorry :-( overthinking something again...
 
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 08:35:50 AM
Suggestion time!

Finally :)


Number of girls:

I think we need to avoid both extremes
– with very small number (like up to 10) it will tend to have too much micromanagement and generally plays more like rpg, and that general feeling is more like a harem then being a boos that runs his brothel establishment
– with very large number (100+) , game will need too much simplification to avoid being overwhelming for player to manage, and with reduced importance that single girl will have, impact of any work invested into girls individualities, traits, meeting system or events will be lessened too...
so I suggest game to be balanced somewhere about 40 girls working

I really liked simbro1x system in that matter; there was a weekly plan of actions for every girl that repeated itself, so with a bit of careful planning all that was needed was to set it once, and then the whole building pretty much runs on auto, allowing this “set and forget” playstyle where number of girls never becomes an issue... and gives player time for all those fun things like making movies, looking for new girls, doing missions...

Making movies is a lot more Set&Forget than jobs in SimBro 1x. On the account of girls, allow me to present another option:
(I write this with advanced version of the game in mind)


- Allow any amount of girls
- Allow personal training consisting of:
"Unique conversations" (Setting flags in girls namespace)
"Unique Skills Training" Add set of skills into a class namespace that would be to slow to train in schools or in jobs, but only can be trained through personal supervision.
"Unique events" Having girl do specific action to advance those skills
"A number of hidden stats that can be accessed only through preforming some special action."
- Spend AP for both you and girl while training.

Girls that were trained in such way would have a significant modifier to price (those would almost always or always be slaves).
They would also have significant modifiers to price costumers pay for their cervices and only girls trained in such fashion could achieve maximum rank.

There is a Russian slavemaker alternative called "Valet Pletey" that is currently no longer being developed cause engine for the game was poorly chosen. I want to combine something similar with WM.


As far as player is concerned, girls trained in such fashion are the absolute Elite (of their professions, slaves or not). They educate nobel's youth if training was intellectual (Not as job probably, you simply sell them for a decent price or maybe sign some form of a long term contract if they are free.). Service the best costumers, preform for the most noble of citizens and so on.

btw. Xela, you don’t plan fetishes, but still want clients to have traits? I’m sorry, but I don’t see a real difference if a customer can have trait “big dick” or if he can have trait “likes blondes”

Real difference:

- Girls are simply presented with a costumer trait like 'Huge Dick' and have to deal with it in some fashion.

- Likes blondes would only make sense if we generated costumers first and matched those with existing girls, means extra code and little benefit (in my opinion anyway)





interaction menu:

I like the idea to be able to just rewrite the lines in interaction menu, thus making the girl unique, as easy variant to setting a fully customized event.
And for that we need lines that are replaceable, something simple like introduction, what are you doing, how are you... what can be banal “I’m fine” in vanilla, can become something more interesting “I’m another step closer to conquer the world!” or “I’m just thinking about testing my new “Starlight Breaker” move on someone, will you stay still for a bit?” when customized – I like that
...but on a second thought, it’s probably easy to customize text on these buttons too, so there’s no need to have them (you know, like Chat>interest to Boast>Show her your mad skillz! option)

Modifying text on those buttons would require knowledge of screen language and game itself or me creating code making it easier in some way. There is a number of approaches on how that can be accomplished, it is easier to create a menu as a part of a unique event or interaction that appears after the usual button is clicked, that already can be done with one word: menu: :)


Jokes are out! ;)
Dates are in, other categories used for interactions as well. We can add to/change girlsmeets as we move forward.

As for the relationship between ingame character, it is a very serious topic that needs to be addressed separately or even in separate thread/dropbox file. I am still not entirely sure how that needs to be approached. Tools at our disposal right now are stats, flags, counters, functions, how that all comes together I am not entirely sure yet, especially I have a huge difficulty separating simpler from advanced version as far as this topic is concerned, cause I want it to be an advanced system in WMlike version and have absolutely no idea where to draw the line between that and SimBro one...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 09:06:29 AM

Yes, your right, I totally forgot about these... And I actually used this type of jobs alot...
 
What I wrote doesn't make that much sense now, because girls that want to work for you, but don't have any kind of relationship with you are those appearing in standard "buy me” menu, so there is no need to simulate that kind of situation in interaction menu...
 
sorry :-( overthinking something again...

Thus, even if she doesn't want to be a whore, she still can work for you at some neutral jobs, like waitress.


Well, here we are entering the "I am not sure about how to handle this in SimBro version territory".

For the advanced version, I have nearly all the answers:

Girl has a profession. If that is prostitute and free, she will never refuse a whore job simply cause she dislikes you.

Slaves will have a very simple acceptance attribute set to true/false that will be one of the modifiers to their price. If acceptance is set to true, she will almost always obey.

The logic is that if a girl is a slave or free and agreed to whore for you, she should simply do so, I never understood games logic where girl decided to work for you but refuses all the time because her obedience or whatever is to low.

They will still refuse if:

- Injured
- Exhausted
- Customer is to ugly, has a trait they dislike or Caste/Rank is to far apart (Now THIS will depend on their disposition/fear/character/obedience or whatever we decide to go with!)


In Advanced version, there may be dozens of jobs but in SimBro one, waitress wasn't even planned. Also there will be counters, if you ask a Warrior (Free girl since slaves cannot be warriors under the current concept) to whore for you, she'll tell you to get lost during the Next Day, if you repeat that one more time, she'll tell you to F#ck off and leave you, with a huge hit to disposition.

So right now, while I have a fairly clear idea of how to proceed with WMlike version, SimBro one is still undecided.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 23, 2013, 10:03:50 AM
So warriors will never agree to whore then, regardless of any circumstances?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 10:48:50 AM
So warriors will never agree to whore then, regardless of any circumstances?

In WMlike version you will be able to have them change profession if disposition is high enough. Another option would be to use drugs. I was thinking to have a drug that slowly destroys a girl but confuses into doing whatever the hell. But after 40 - 50 days the best you can do is to sell her really cheap as damage will prolly be irreparable.

But as long as profession is set to Warrior, she will refuse whoring under any normal condition, yes. That is only for free girls, Slaves will also have professions (Warrior excluded) but they will behave differently and accept most jobs. Also max of stats will be modified by the game, warrior will never be able to get to skilled in sex stats and prostitute will never be able to get to skilled in battle stats and so on.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 23, 2013, 11:21:44 AM

Real difference:

- Girls are simply presented with a costumer trait like 'Huge Dick' and have to deal with it in some fashion.

- Likes blondes would only make sense if we generated costumers first and matched those with existing girls, means extra code and little benefit (in my opinion anyway)
sorry... I was under impression that there will be some sort of matching system / preselection included in that Social Status system you have in mind, like when a Lord will come to visit.

----------
About that girls meeting, will it be using its own game screen with standard pictures, visual novel style or a combination of these? Because if there will be options like "go to pub/beach/restaurant" that will take places somewhere, with its own submenus like "buy her a drink", then that's for sure be enough. (You suggested something like that on page 2, and just background and questgirl can do it fine)
---------
Girl that doesn't whore is a nice concept - there's a lot of interesting characters who simply do not have enough H pictures to work as one, and this is ideal for them. Also good for all these series themed girl packs, because most of the minor characters usually suffers from the same scarcity, but without them it never feels complete. (you can still be intimate with them personaly throught relationship, yes?)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 12:15:25 PM
sorry... I was under impression that there will be some sort of matching system / preselection included in that Social Status system you have in mind, like when a Lord will come to visit.

Yeah and it is already working but not the way you think. Based on Brothel's reputation, single costumer is created during the act and is awarded with rank, gender and other attributes. But this costumer is not matched vs all girls in the brothel (he doesn't pick the one he likes best) meaning that it would be possible to check his/her stats, traits and so on vs girls but there would be no way to ensure that if there was another blond girl in the brothel available, he went for her and not for redhead or brown. That would also be possible to code, have a pool of costumers being generated and matched vs every girl in brothel, but that seems a bit tedious to do at the moment, especially since there are so many different thing to do.

It is definitely possible to simply check if costumer has a fetish for a girl he ended up with right now, but I don't want to do things half way, if we implement costumer preferences, code should trully check every girl for every costumer for such a fetish. It is not hard to do at all, but I though that would require a bit of extra work and further delay the game. We can simply agree that your way is better than what we have now and code that in later (that path is in no way closed by the one currently implemented!, the only thing that has to be changed is generating costumer before the act and iterate over every girl in brothel he's visiting and finding a way to relay the result of that iteration to act method so it can be added to txt variable).




----------
About that girls meeting, will it be using its own game screen with standard pictures, visual novel style or a combination of these? Because if there will be options like "go to pub/beach/restaurant" that will take places somewhere, with its own submenus like "buy her a drink", then that's for sure be enough. (You suggested something like that on page 2, and just background and questgirl can do it fine)
---------

Those things are not related, everything you said will be possible but there might be some exceptions. I need to see the endresult of girlsmeet screen/label first, the trouble is that it has to be a bit more complex than the one in SimBro 1x because it can be called from many different locations, needs to know what location to return to from the main menu of the screen and know where to return from each separate interaction especially if background is changed during the interaction (As opposed to simple interaction screen that always returns to the same place, making it really easy to code)... I am working on figuring out how to make all of that happen and allow any sort of modding right now.




Girl that doesn't whore is a nice concept - there's a lot of interesting characters who simply do not have enough H pictures to work as one, and this is ideal for them. Also good for all these series themed girl packs, because most of the minor characters usually suffers from the same scarcity, but without them it never feels complete. (you can still be intimate with them personaly throught relationship, yes?)

Sure, that is never an issue.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 23, 2013, 01:05:52 PM
Thanks a lot for your explanation! I get it now... and agree that there are better things to do now.


Anyway, you will be free from my questions for a while, because I'll be at a place without Internet until monday.  But I take renpy with me to get a better grip of it and try to make some of the scenes I talked about. Hope I understand you better then


--------------edit----------------
I reuploaded Hinata and Sakura pictures again, they should have these new dating categories now +Tenten
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 01:16:17 PM
Thanks a lot for your explanation! I get it now... and agree that there are better things to do now.


Anyway, you will be free from my questions for a while, because I'll be at a place without Internet until monday.  But I take renpy with me to get a better grip of it and try to make some of the scenes I talked about. Hope I understand you better then


Goodluck, I once went to a place without a net and not much to do as well, so I ripped the entire RenPy documentation from their site and went through it, although I didn't understand any of it back then, still proved to be a good exercise. I will write an advanced interaction using as many tricks as possible and then try to organize everything I wrote in this thread on modding into one thread and/or file.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 04:06:39 PM
Post 666  :P

PHEW  8)

PyTFall version has been upped from 0.12 to 0.2 in Dropbox dev folder. Codework for girlsmeets is officially finished! Now content remains but that's work for our writers, or most of it can be copy/pasted from SimBro 1x! Only hiring works.

I need to write an advanced interaction for night, prolly will start tonight and finish tomorrow. Then either modding guide or Traits + advanced logic (0.2 - 0.3)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 23, 2013, 04:20:05 PM
Also max of stats will be modified by the game, warrior will never be able to get to skilled in sex stats and prostitute will never be able to get to skilled in battle stats and so on.
I see. So this "occupation" thing is basically like character class in some rpg. I guess available traits will be different too.

Girl that doesn't whore is a nice concept - there's a lot of interesting characters who simply do not have enough H pictures to work as one, and this is ideal for them.
Then you'll need some kind of flag to forbid change of profession for such characters into prostitute.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 04:26:24 PM
I see. So this "occupation" thing is basically like character class in some rpg. I guess available traits will be different too.

Yeap, nice comparison! Very likely for traits to be different. Each girl will have a list of traits that are blocked, either by game requirements or by girl pack creators (option inside .xml file).


Then you'll need some kind of flag to forbid change of profession for such characters into prostitute.

Shouldn't be to hard...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 23, 2013, 06:27:22 PM
I implemented the Customer class: see patch_customers.py in my dropbox folder. You can either replace your pyt - classes.rpy file, or you can do the following: The contents of patch_customers.py should be appended to the Brothel class, the client line in the whore method should be replaced and the old Customer class should be deleted. It worked flawlessly for me in 2.0.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 23, 2013, 06:53:14 PM
I implemented the Customer class: see patch_customers.py in my dropbox folder. You can either replace your pyt - classes.rpy file, or you can do the following: The contents of patch_customers.py should be appended to the Brothel class, the client line in the whore method should be replaced and the old Customer class should be deleted. It worked flawlessly for me in 2.0.

Perfect! I left some comments inside the file as well, I'll throw that in my dev version.

I am off to bed (2 am).
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 24, 2013, 09:44:57 AM
Advanced interaction night asked me to write for him is added to dev version along with a new girl (Tenten) and pics CW has gathered.

I didn't understand what you wanted me to do exactly in a couple of places, but I've added a new battle scenario, example of a menu without jumps (setting flags instead) for 2 and 3 choices, if/elif/else condition block you're asked for, explained how to change backgrounds and hide screens and how to go back to girlsinteraction screen without having to jump labels. The whole thing is really low on texts, the point was to explain as much of new tricks as possible so you can do more with your scripts.

Feel free to ask questions if you did not understand something.

PS: New Costumer class is also in there :)

Edit: I am not sure on what to do next, roadmap points to advanced logic and traits so that will probably be it.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 24, 2013, 11:14:24 AM
ok updates on graphics side:


I'm almost finished layouts for screens available in the version of the game that I have in my folder
[size=78%](you can write an updated list of all current game screens?)[/size]

after all the layouts was confirmed I star some mood boards (collage of pictures to get the atmosphere and feel of the graphics in general)


then step to the real graphics



Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 24, 2013, 11:22:14 AM
ok updates on graphics side:


I'm almost finished layouts for screens available in the version of the game that I have in my folder
[size=78%](you can write an updated list of all current game screens?)[/size]

after all the layouts was confirmed I star some mood boards (collage of pictures to get the atmosphere and feel of the graphics in general)


then step to the real graphics

Good Job!

I've responded in .txt file in your folder already, it's all good basically, but we need to find a place in girlmanagement+list combo for filters and do all equipment screen last.

I forgot to add to the file that girlmanagement+list screen will have to hold a lot more data than it does now... it has to be addressed is some fashion, we can prolly improve upon it as we move forward, it shouldn't be hard if screens are built out of small elements like frames, bars, boxes...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: OverHao on January 24, 2013, 11:36:57 AM
I think about it a little bit and see what comes out  ;)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 24, 2013, 12:37:15 PM
Worked a bit on the girlinteractions and dropped my changes into a folder with my username into the dropbox.
There is a text file in there with the specific things I changed.
Will take a look at the the girlinteractions again if I don't get distracted later, maybe I will polish them a bit, they are awfully thin and same sounding at the moment.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 24, 2013, 01:04:45 PM
Worked a bit on the girlinteractions and dropped my changes into a folder with my username into the dropbox.
There is a text file in there with the specific things I changed.
Will take a look at the the girlinteractions again if I don't get distracted later, maybe I will polish them a bit, they are awfully thin and same sounding at the moment.

Agreed, I think best approach is to start slow with the basics and then add to it. There is a LOT of room to improve those, not only in area of texts and events but also in area of rewards, one of the main things these interactions are supposed to modify is disposition. Maybe also other similar stats in the future. Right now that is missing completely. Also slave vs free behavior is absent, but it's like I've said, babysteps... :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 24, 2013, 03:46:44 PM
Didn't manage to get much done since last time but I added two more Traits to my doc (https://docs.google.com/document/d/1-wJ0U_WZ8z6pSMHeyTpY60a06eB-HcSJyGegWRQ9vbc/edit).
If you have any ideas/comments regarding new traits or the ones in the doc don't hesitate to add a comment to it.

Can you drop a copy of that into dropbox? I cannot get access to file.


Question:

What do we want from traits? I am working on loading traits into the game from .xml file.
So far traits have:
id = Name
desc = description
mod stat = stat modifier
max stat = max stat modifier
min stat = min stat modifier
blocks = to set trait blocks, for example small breasts should block huge boobs permanently since a change such a descriptor would ruin pictures (huge boobs for Sakura or Rukia for example or small breasts for Tsunade)
effects = sets effect flags (for example, if we ever add pregnancy, sterile would be an effect flag)

What else?

All 'active' trait effects will be hardcoded into the game during acts (jobs).
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 24, 2013, 07:09:05 PM
Sorry, renamed something in that folder and it seems to have screwed up the link for some reason.
Anyway dropped the traits into my folder.

edited because I didn't check my shit.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 24, 2013, 07:27:36 PM
Sorry, renamed something in that folder and it seems to have screwed up the link for some reason.
Anyway dropped the traits into my folder.

edited because I didn't check my shit.

Thanks, traits are going a lot better and faster than expected. I'll prolly finish the whole system if I have a couple of hours free tomorrow (without content), borrowing bupkis from Alkion this time as Traits system their seems unnecessary complicated.

I am out for tonight.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 25, 2013, 03:32:58 AM
What else?
Maybe available occupations? Or some kind of "temporary" flag for non-permanent traits, like small scars which eventually will heal themselves in a few days (if you going to use 'em).
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 25, 2013, 03:55:29 AM
Or some kind of "temporary" flag for non-permanent traits, like small scars which eventually will heal themselves in a few days (if you going to use 'em).

Good call. This has potential!

Maybe available occupations?

I still haven't though of an occupation that would block a trait. I doubt that we need something this advanced, it would be bothersome to add every occupation to every trait in the game. Maybe instead it would be simpler to remove traits during a girl switching for one occupation to the next?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 25, 2013, 08:24:11 AM
Alright guys, I was thinking about what I could tackle next codewise. What system would really make the game better at this point?

Xela, you mentioned a mission system. I take it the girlsmeet encounters you are working on are something different. Are missions quests? Or randomly generated short- to mid-term goals for the player? Or something else?

The "exploration engine" sounds even more interesting to me, but given Xela's plans they are scheduled for far later in the process, so it's probably to early to work on that.

So, team, what do you think I should do? Please remember I'm really bad at creating content, I would much rather create systems that make it easy/easier/possible for you to add content.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 25, 2013, 12:23:18 PM
Xela, you mentioned a mission system. I take it the girlsmeet encounters you are working on are something different. Are missions quests? Or randomly generated short- to mid-term goals for the player? Or something else?

Girlsmeet encounters are a way to acquire girls. Missions are used for different purposes. For example, acquire 3 girls in 15 days of time or rank up 3 girls 3 levels or train a girl to specific stats or have sex with a 'city girl' or buy a new brothel and so on. But that is just one of the things you could work on.

The "exploration engine" sounds even more interesting to me, but given Xela's plans they are scheduled for far later in the process, so it's probably to early to work on that.

Exploration engine was meant as a joke :) Unless you figured out RenPy, making one could be troublesome. Also, like you've said, it's way to early.

 
Alright guys, I was thinking about what I could tackle next codewise. What system would really make the game better at this point?

So, team, what do you think I should do? Please remember I'm really bad at creating content, I would much rather create systems that make it easy/easier/possible for you to add content.

I figure there are many things you can do:

1) Work on advancing game logic. Jobs, Brothels, Items, Advertising, Events. Content can be left to the simplest sentences, it can be improved later. Balancing out the game

2) Arena, logic for the Arena anyway (This is very challenging)... For Arena there is shitzloads of code to write too, There must be tournaments every 30 - 35 days or so to create a top 10 - 20 lineup, must be a way for girls that are working for you to participate, girls that are in the game but NOT working for you and NPC (with portraits again :D). 3 Lineups, 1vs1, 2vs2, 3vs3. Betting system, you can place bets on the next fight, there should be odds (like 1.2 payout if team 1 wins, 1.6 payout if team 2 wins) as well. Autocalc battle system that calculates a winner based on stats (a system similar to WM can be created that describes the fight action by action but I would call that an overkill and I've never planned to write that myself) with some of random factor such as luck involved. Basically, you get the idea, this was planned for later as well but it would make a great addon.

3) Mission system.

4) Function or class that takes my 'day' variable and returns day of the week based on it, maybe moon cycle as well, some modders love that crap, I  was planning to code that in eventually.

5) Joker system, awards that iterate over one of the girl's lists or single girl increasing different attributes, give you new girls, other bonuses or can be traded for money. (Basically same thing as items that we call jokers and put on separate window cause it's a historic part of SimBrothel)
 
6) Advance girl's AI, maybe add a couple of stats and write a behavior system towards player and all aspects of the game as you would envision it.

7) - I can go on for a while like this... Maybe you feel like there should be something in the game that hasn't been planned? Or want to work on something planned but I did not mention here. It's up to you basically, I always welcome free code contributions!  ::)  ;D
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 25, 2013, 03:50:30 PM
Dev version has been updated, traits should now be working, waiting for content. Girl's Traits at the end of viewport on girlprofile screen.

OK, how can you restore AP then? Can max AP be increased or decreased?

Your explanation makes sense, and it feels better than what I had thought of.
Any Idea how many Actionpoints a girl should get? (different amounts for slaves/normal girls?)

Also i have the feeling all this design talk should be collected in a single place.

Agreed, collecting it here :)

AP system already partially works! Has been for a while. Right now it works like this:

- Girls have 'baseAP' that is set to 2 at the beginning of the game and can be modified later by traits, items, events.
- On top of that, girl get extra 1 AP per EVERY 15 (Or 20, I don't remember how much) points of Constitution she has. Every turn, AP is being restored at the next day by adding baseAP to whatever the amount she gets from Constitution.

This is how it presently works.

Code: [Select]
<?xml version="1.0" encoding="utf-8"?>
<traits>
    <trait
        id="Dummy"   #Name
        desc="This is a dummy trait! " #Description
        temp='3'> # if set to more than 0, trait is temporary, it will disappear after the set number of days. 0 defines a permanent trait that can only be removed thought some sort of user interaction.

        <mod charisma = '50' /> # Changes the stat
        <max charisma = '10' /> # Changes Max of a stat
        <max refinement = '10' />
        <min charisma = '20' /> Changes Min of a stat
        <effects name = 'Confused' /> # Sets a girl flag to true, whatever that flag may be
        <blocks name = 'Cute' /> # Blocks this trait
    </trait>
   
    </traits>

Do we need anything else? Method to apply traits to girls is finished, now methods that removes traits, tracks temporary traits and modification to girl's .xml load function to enable traits that she starts with remain. 

New fields in girl's .xml file:

Code: [Select]
<?xml version="1.0" encoding="utf-8"?>
<girls>
   <girl
      id="Sakura"
                 folder="naruto"
      name="Sakura Haruno"
      desc="MedicalNin from Naruto series"
      charisma="20"
      refinement = "10"
      libido="40"
      constitution="40"
      exp="0"
      joy="20"
      character="45"
      reputation="0"
      health="100"
     
      anal="0"
      normalsex="5"
      blowjob="2"
      lesbian="0"
     
      attack = '18'
      defence = '15'
      magic = '10'
      agility = '12'
      mp = '15'
     
      occupation="Prostitute"
      location="slavemarket"
      status="slave">
     
      <bskill name = "FistAttack"/>
      <mskill name = "Fire 1"/>
     
      <absolute_block trait = 'Megahuge Tits'/> #Permanently blocks trait for this girl.
      <block trait = 'Weakminded'/> #Just blocks this trait (These blocks can be removed, when you get rid of a different trait that blocked this trait for example)
      <trait name="Dummy" /> #Activates this trait on gamestart.
   </girl>
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on January 25, 2013, 07:30:11 PM
I implemented a Calendar class that returns the weekday, week and lunar phase given a count of days. I assumed that you start counting days at 1, but it's a trivial adjustment if you actually start at 0. The names of the days, the length of a week and the length and start of the lunar cycle can be customized when instantiating the class. For real-world names and lengths, just instantiate without any arguments. I'm still undecided what to tackle next, so I did this as a "target of opportunity".
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 25, 2013, 08:37:08 PM
I implemented a Calendar class that returns the weekday, week and lunar phase given a count of days. I assumed that you start counting days at 1, but it's a trivial adjustment if you actually start at 0. The names of the days, the length of a week and the length and start of the lunar cycle can be customized when instantiating the class. For real-world names and lengths, just instantiate without any arguments. I'm still undecided what to tackle next, so I did this as a "target of opportunity".

Awesome!

I added it to the game, later we'll display pictures instead of text for the cycles, but it works great!

For now, Day of the week and Mooncycle reported in the tooltip of main menu.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 06:12:38 AM
I gave some thought to girls system, more specifically days off. Perhaps player should be somehow forced to provide them from time to time, at least to free girls. Maybe min fatigue will increase if you don't give it for a long time, or girl herself might sometimes ask player to provide one or several days off, and refusing will hit her disposition.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 06:37:46 AM
I gave some thought to girls system, more specifically days off. Perhaps player should be somehow forced to provide them from time to time, at least to free girls. Maybe min fatigue will increase if you don't give it for a long time, or girl herself might sometimes ask player to provide one or several days off, and refusing will hit her disposition.

We're planning to allow a good deal of girls, that will prolly not be the best approach. Min fatigue increasing doesn't make any sense so you'll have to explain me that one. Girl asking a player for several days off every time she gets tires will get old really fast but it is a good idea random event that could happen on throwing dice on next day. Girl could always ask for vacation time.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 08:17:50 AM
Min fatigue increasing doesn't make any sense so you'll have to explain me that one.
I heard somewhere that IRL we have holidays and vacations not just for fun. Everyday rest after work isn't enough for full recovering, fatigue is gradually accumulating, and to avoid it we have holidays every week and even vacations every year (most of us, hopefully  :) ).
In game it means that girl without days off at all cannot rest fully no matter how many AP you put into rest, i.e. her min fatigue cannot be 0, and eventually, maybe months or year later, she will too tired to work at all (when min fatigue=max fatigue).

Girl asking a player for several days off every time she gets tires will get old really fast but it is a good idea random event that could happen on throwing dice on next day. Girl could always ask for vacation time.
Yup, that's what I'm talking about. Random days off to visit her parents and friends, go shopping, because of some illness and so on, not just when she tired.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 09:18:18 AM
I heard somewhere that IRL we have holidays and vacations not just for fun. Everyday rest after work isn't enough for full recovering, fatigue is gradually accumulating, and to avoid it we have holidays every week and even vacations every year (most of us, hopefully  :) ).
In game it means that girl without days off at all cannot rest fully no matter how many AP you put into rest, i.e. her min fatigue cannot be 0, and eventually, maybe months or year later, she will too tired to work at all (when min fatigue=max fatigue).

New stat? Like accumulated fatigue? Girls gets + 1 per day and starts loosing normal fatigue faster if 'AF' goes above 150? Resets to 0 if you give her vacation time?


Yup, that's what I'm talking about. Random days off to visit her parents and friends, go shopping, because of some illness and so on, not just when she tired.

Kinda counter-intuitive. Girls gets rest-days to visit family and friends. I'll enhance rest job later adding texts to it, if girl is a slave, she would be taking it easy, if girls is free, she would go and visit friends/family.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 09:45:52 AM
Well, you know how in slavemaker sometimes stat minimum (usually lust  :D ) becomes more then 0. And if you want to lower it, you should use special means.
In our case I'm not sure about the numbers, but let's say every week without a day off will cause random increase of min fatigue, 1-5 points for example. I guess we need a new variable for it, yes. And one day off will drop it by, let's say, 20-40 points.

Kinda counter-intuitive. Girls gets rest-days to visit family and friends.
Sometimes they can spend money in shops buying new items, like girls in wm already do in their free time.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 10:17:31 AM
Ok People, Look alive!  ???

I would say it's time to take care of advanced logic, after that game should be at least semi-playable. We need to discuss stats, traits, jobs and so on.

Lets start with traits. I would say that the system is ready and working, needs testing obviously and traits themselves. If anyone is up to it, grab the file in the shared folder, throw it into your own folder and add traits as you see them, we can balance those out later, when game pace is clearer.

Traits in the original SimBro:

"Splendid Body";
"Big breast";
"Rest";
"Smart";
"Strong";
"Shy";
"Lolita";
"Artist";
"Maid";
"Happiness";
"Lucky";
"Tough";
"Nymphomaniac";
"Obedient";
"Sex Addict";
"Experience";
"Good Health";
"Exhibitionnist";
"Famous";
"Tips";
"Noble";
"Excellent Reputation";
"Cat Girl";

We all know traits in WM. Write special effects on separate file, I'll add them to the game separately, those can be pretty much anything at all.


Stats:

                charisma=0, - Her beauty, looks and so on
#Do we need beauty like in WM as well? Then we calc looks from (beauty+charisma)/2?

                refinement=0, - VERY/Most important stat in the game, represents her behavior in court, ability to appeal to costumers, to get better ranks. Note that this will be capped at 40 at the start. As she gains experience and refinement, player can rank her up. Higher ranks will mean higher cap for refinement. In the end I think maxed out refinement will be between 150 - 200 from ranks, items and events.

                libido=0, Self-explanatory.

                constitution=0 How many actions she can take each day, in reality that will be determined by AP (Action Points). Base AP will be 2, she gets one extra for every 20 cont she has. Base can also be changed by items/events.
#I knew I covered it somewhere before :)

                exp=0, Experience, not entirely sure what to do with this except having a required amount for a rankup.

                joy=0, Happiness Do we need Happiness as a separate stat?

                character=0, Another REALLY important stat, it's like obedience, high character means she is strongheaded.
#Maybe add obedience to it as well? Character being strongheaded (refusing stuff she dislikes) and low obedience, rejecting everything you ask of her (for untrained slaves mostly since trained slave would have a max of this one at about10 and free girls work for a wage, organization and protection)

                reputation=0, Not entirely sure we need this, Rank is basically the same thing...
Looking at it now, we do NEED this, if only for Arena/Warriors since they have no brothel ranks.

                health=0, HP - Hard to live without it :)

                fame=0, How infamous she is, Girls with high fame will attract better costumers with more cash in their pockets.
I have some good ideas on how to make this a very interesting stat.

                mood=0, No idea why this is in the game, since stats are not final, I prolly had some purpose for this at some point but forgot :(
I do not remember putting this into the game, must have been first days of development (I started with sGirl class). Can anyone think of a good use for this that would justify spending time modifying this stat in functions?

                disposition=0, Min =-1000, Max = 1000!!! Her loyalty, love, respect and so on towards the player. This is what interactions and girl meet are supposed to be changing before anything else. Maybe -500 so you can push her into hatred territory? Or add more stats like love/hate. Maybe later (MUCH LATER) we can also add new stats signifying disposition between girls as well so they can form friendships...

                fatigue = 0, Max = 300, How tired she is, eventually will be shown to a player as text and not as number.
               
                attack = 0,
                magic = 0,
                defence=0,
                agility = 0,
                mp = 0, Battle Stats like in fighting games, since players do not dodge attacks: it's Speed, how long does it take before she can attack again.
Since battle stats are mimicking those of the battle engine, there is not much that can be added here.
               
                anal=0,
                normalsex=0,
                blowjob=0,
                lesbian=0Sex stats or skills as they are called in WM.
New stats will be required if we add new categories, but I forgot about strip(tease)... maybe also 'Service' skill like in WM? Obviously a lot more after slavetraining is added.


Anything else that would make sense? Anything forgotten? Any advice on how to use these stats? I will go through the code soon and start modifying all aspects of the game according to stats table we create here. Balancing it all out later.

Jobs:

What do we want for jobs? Any events during jobs you had in mind?

Planned so far:
- Whore
- Rest
- Heal
- Training (several kinds of training)
- Striptease

Do we want more? Cleaning? Going to court? Hunting, Guarding or something else for Warrior types to do, especially before Arena is ready, or should we keep Warrior types out of the game before we move to Advanced version???

Brothels:

What else do brothels need at this point? Ideas? Events? Other? :)
I think that I will start with adding advertising and upgrades first (today).


From a different SimBro thread...
"Filthy"<-"Very Dirty"<-"Dirty"<-"Messy"-"Tidy"-> "Clean"-> "Very Clean"-> "Spotless"



Girls:

What do you feel they're missing? Stats/traits we've covered already... anything else?

Clients:

They are already fairly advanced, especially for the first version, but anything you want to see here?


I think this is it... Got something to add? Comment upon? Changing this stuff later in the development even if game is coded in Python is a bit tedious so we need to make some good decisions now! so later there is more time to make game look the best it possibly can and create UI that is intuitive and not a click'o'click micromanagement fetish :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 10:40:17 AM
Sometimes they can spend money in shops buying new items, like girls in wm already do in their free time.

Would make more sense after a better items system is installed, but yeah, if a free girl gets enough gold, she can go out and get a dress, why not, it's really easy to code in and makes a great event. That got me thinking, maybe another good event would be a girl start using drugs if her joy is to low... you find out and can decide if you wish to send her to clinic or throw her out of your brothel after she's all 'used up'...


There is too much red cause I am kinda using this thread to keep track of ideas and concepts and thread is getting bigger and bigger, making stuff harder to find :)

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 11:09:10 AM
Do we need beauty like in WM as well? Then we calc looks from (beauty+charisma)/2?
Well, as wiki states, charisma is "compelling attractiveness or charm that can inspire devotion in others". In other words, it's not just beauty, it's more like power of character, power of mind. You might want to combine it with character stat though.

Do we need Happiness as a separate stat?
I guess if you want you could use happiness as complex stat which depends on joy, disposition, fatigue, money, e.t.c.
Oh, and joy's minimum should be -100, I think. Or from -50 to 50.

Maybe add obedience to it as well?
Well, if girl doesn't like cleaning, but she still does it because of high obedience with penalties to joy and disposition, it means she has strong character. However, if girls are not going to refuse any jobs except for occupation limitations, I'm not sure we need both stats at the same time. Maybe character for free girls and obedience for slaves?

Can anyone think of a good use for this that would justify spending time modifying this stat in functions?
Maybe it means girl's rage for pics like profileangry?  :)
Or since we already have joy and love, mood can be used for things like "in a mood for a work", "in a mood for a date", "in a mood for talking", "in a mood for a fight" and so on, if you want to code such things.

Maybe -500 so you can push her into hatred territory?
Definitely. I never understood why wm uses both love and hate, while max love usually means min hate and vice versa.

Since battle stats are mimicking those of the battle engine, there is not much that can be added here.
Magic defence? Luck(=critical hits)?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 11:37:27 AM
Well, as wiki states, charisma is "compelling attractiveness or charm that can inspire devotion in others". In other words, it's not just beauty, it's more like power of character, power of mind. You might want to combine it with character stat though.

Maybe for advanced version... but we need intelligence now I think. How and when to raise all of these stats is the real question.



I guess if you want you could use happiness as complex stat which depends on joy, disposition, fatigue, money, e.t.c.

You mean long term fatigue we talked about? Normal fatigue flies around all the time, difficult to have stats depending on it.



Oh, and joy's minimum should be -100, I think. Or from -50 to 50.

Maybe, not sure what we need this for thou. Joy is not difficult to control of in most games.



Well, if girl doesn't like cleaning, but she still does it because of high obedience with penalties to joy and disposition, it means she has strong character. However, if girls are not going to refuse any jobs except for occupation limitations, I'm not sure we need both stats at the same time. Maybe character for free girls and obedience for slaves?

I never said any jobs, I said jobs depending on her occupation, remember? Strippers for example will be a lot more willing to whore if required than warriors. Both are likely to refuse cleaning if they're free.


Maybe it means girl's rage for pics like profileangry?  :)
Or since we already have joy and love, mood can be used for things like "in a mood for a work", "in a mood for a date", "in a mood for talking", "in a mood for a fight" and so on, if you want to code such things.
Definitely. I never understood why wm uses both love and hate, while max love usually means min hate and vice versa.
Magic defence? Luck(=critical hits)?

Luck as a general stat is better... I don't remember if there were critical hits in the engine. I need to take a look as magic defense works.

We don't have love yet either. I really like 'in a mood for idea', prolly will add that to SimBro version.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 11:59:51 AM
               libido=0, Self-explanatory.
Maybe also nymphomania like in slavemaker? In wm popular whores often have 0 libido after working day, and you can't do anything except for constantly buying special items.

New stats will be required if we add new categories, but I forgot about striptease... maybe also 'Service' skill like in WM?
I don't even try throwing up ideas. Games like "valet pletey" (I'm still not sure about such translation) and newest slavemaker have more than I ever would be able to think up  :)

Anything else that would make sense? Anything forgotten?
Depends. Minor stats like fitness, cooking, singing, dancing if you feel like taking some ideas from other games.

Do we want more? Cleaning? Going to court? Hunting, Guarding or something else for Warrior types to do, especially before Arena is ready, or should we keep Warrior types out of the game before we move to Advanced version?
Cleaning (mostly for slaves) and guarding for warriors at least. Personally i never liked gangs as they being used in wm, I prefer wm ex girls guarding brothel. Others jobs can be added in advanced version.
Btw, what about exploring catacombs or just some wild places for warriors?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 12:19:46 PM
Maybe also nymphomania like in slavemaker? In wm popular whores often have 0 libido after working day, and you can't do anything except for constantly buying special items.

Screw Slavemaker ;) Girls will recover a good amount of libido on day switch and even more while resting.



I don't even try throwing up ideas. Games like "valet pletey" (I'm still not sure about such translation) and newest slavemaker have more than I ever would be able to think up  :)

Translates as Servant of Whips. It's kind of low on events thou and I got really bored with slavemaker long time ago, I've downloaded new version not to long ago but it seems the same with more girls...




Depends. Minor stats like fitness, cooking, singing, dancing if you feel like taking some ideas from other games.
Cleaning (mostly for slaves) and guarding for warriors at least. Personally i never liked gangs as they being used in wm, I prefer wm ex girls guarding brothel. Others jobs can be added in advanced version.

Right, so guarding and cleaning are in... Fitness = Constitution?   Singing + Dancing will increase Refinement for now.

Cooking, Signing, Dancing we leave for advanced version.


Btw, what about exploring catacombs or just some wild places for warriors?

Kinda goes without saying for advanced version. Do we need this for SimBro one?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 12:42:49 PM
It's kind of low on events thou and I got really bored with slavemaker long time ago, I've downloaded new version not to long ago but it seems the same with more girls...
You don't need to play, just take a look at "sex training" page  :D
(http://s002.youpic.su/pictures/1359147600/thumb_7bd019998e6705bd747bb4cff05d4b5f.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1359147600/7bd019998e6705bd747bb4cff05d4b5f.jpg)
For example, things like bondage probably need preparations even more than normal sex.

Fitness = Constitution?
Not exactly. (http://www.otakubell.com/smw/index.php/V3:Fitness) It's kinda substat, like dancing for refinement.

Kinda goes without saying for advanced version. Do we need this for SimBro one?
Without it there is no way warriors can bring any profit, isn't it?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 01:16:14 PM
You don't need to play, just take a look at "sex training" page  :D
(http://s002.youpic.su/pictures/1359147600/thumb_7bd019998e6705bd747bb4cff05d4b5f.jpg) (http://youpic.su/view.php?id=s002.youpic.su/pictures/1359147600/7bd019998e6705bd747bb4cff05d4b5f.jpg)

So more or less like trainings in Servants of Whip. Bunch of counters. We'll have this in advanced version since SimBro one doesn't have slave training.


Not exactly. (http://www.otakubell.com/smw/index.php/V3:Fitness) It's kinda substat, like dancing for refinement.

Right, not needed for SimBro version either.


Without it there is no way warriors can bring any profit, isn't it?

Good point, we need to decide on how to handle this in SimBro version. Since there are not enough items, either let Warriors whore until advanced one or create some sort of Security Agency and rent them out for cash. (This can be used in advanced version later)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 26, 2013, 02:10:59 PM
I really don't see what warrior-girls would add to (the simple version of) the game.
I don't see any reason why you would need guardians for the brothels assuming that whoring isn't illegal in PyTFall.
The bouncers for the occasional rowdy guest would be pretty much included in the running costs of the brothel. (that reminds me: a finance screen would be nice)

On the subject of stats: The easier they are to distinguish the better.
I would replace charisma with beauty since refinement seems to mean almost the same.
Don't think we need a happiness stat, we have joy already.

Do we need a separate obedience stat from disposition? I had Interpreted it as respect or trust in the lower ranges and liking/loving you in the upper part of the spectrum.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 26, 2013, 02:28:43 PM
or create some sort of Security Agency and rent them out for cash. (This can be used in advanced version later)
Maybe bounty hunters or old good racket then?

I don't see any reason why you would need guardians for the brothels assuming that whoring isn't illegal in PyTFall.
Why not? They protect your brothel not just from drunk customers, but from competitors and criminals as well and prevent slaves (and maybe prisoners) from escaping. Sounds too important to me to simply put it in the running costs and forget. Even if brothels are legal, I doubt this business is perfectly safe.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 26, 2013, 03:09:28 PM
Maybe bounty hunters or old good racket then?

Why not? They protect your brothel not just from drunk customers, but from competitors and criminals as well and prevent slaves (and maybe prisoners) from escaping. Sounds too important to me to simply put it in the running costs and forget. Even if brothels are legal, I doubt this business is perfectly safe.


I really don't see what warrior-girls would add to (the simple version of) the game.
I don't see any reason why you would need guardians for the brothels assuming that whoring isn't illegal in PyTFall.
The bouncers for the occasional rowdy guest would be pretty much included in the running costs of the brothel. (that reminds me: a finance screen would be nice)

SimBro 1x has warrior types but they are handled same as prostitutes. I think best solution for now is not to include any behavior modifier based on occupation. If Rudy decides to code Arena, we'll add the whole warriors block to SimBrothel version and make occupation count. If not, we simply ignore occupation in SimBro version all together and any girl can do any job.


(that reminds me: a finance screen would be nice)

What does finance screen do? I understand that it is a reports screen but what should it display? I myself never really cared all that much for finance stats. Can you make a list with everything you wish to see there?


On the subject of stats: The easier they are to distinguish the better.
I would replace charisma with beauty since refinement seems to mean almost the same.
Don't think we need a happiness stat, we have joy already.

Do we need a separate obedience stat from disposition? I had Interpreted it as respect or trust in the lower ranges and liking/loving you in the upper part of the spectrum.

Right, so screw happiness, at least until the advanced version. I think we should keep charisma for now, it has been in every  SimBro version and decide if we want beauty as well in SimBro version.

Don't know about separation as we do not even have obedience right now. What would be a modifier to obedience without slave training(considering that interactions/girlsmeets are modifiers to disposition)? Any ideas?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 26, 2013, 07:24:26 PM
SimBro 1x has warrior types but they are handled same as prostitutes. I think best solution for now is not to include any behavior modifier based on occupation. If Rudy decides to code Arena, we'll add the whole warriors block to SimBrothel version and make occupation count. If not, we simply ignore occupation in SimBro version all together and any girl can do any job.
That is exactly my problem: there is no incentive, no added gameplay from having guards - girls or not. I simply think we shouldn't bother using our energy on them unless we have a something similar interesting from them as we get from the whores.
(Ok reading this again it sounds a bit harsh. Basically I want you to think if it makes the game more interesting and enjoyable or if it adds an annoying step for the player to keep your game flowing.)

What does finance screen do? I understand that it is a reports screen but what should it display? I myself never really cared all that much for finance stats. Can you make a list with everything you wish to see there?
The bare basics would be just a simple message how much profit you are making, but it would be nice to have a clean list of the income and expenses for each of the players Brothels. (something really fancy would be a variable telling you how much each girl brings in and costs over the whole game.)

Right, so screw happiness, at least until the advanced version. I think we should keep charisma for now, it has been in every  SimBro version and decide if we want beauty as well in SimBro version.
Isn't charisma basically part of refinement as it describes beauty that stems from the way a person acts? Anyway I wouldn't add beauty as an additional stat.

Don't know about separation as we do not even have obedience right now. What would be a modifier to obedience without slave training(considering that interactions/girlsmeets are modifiers to disposition)? Any ideas?
Ah sorry, wasn't clear there: That was supposed to be an argument against obedience since I think it would be basically another stat for the same thing from my perspective.

I am not sure if I explained myself understandably this time it is kinda late.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 27, 2013, 05:16:25 AM
if it makes the game more interesting and enjoyable or if it adds an annoying step for the player to keep your game flowing.
You have a point, i'll give it some thought. Still, I don't think we should completely forget about security, we just need to make it interesting.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 27, 2013, 06:05:04 AM
That is exactly my problem: there is no incentive, no added gameplay from having guards - girls or not. I simply think we shouldn't bother using our energy on them unless we have a something similar interesting from them as we get from the whores.

Well, if you can rent them out as security for others, there is your added game play. I can make a new location, there you can find a number of jobs like security escorts or bounty hunting, how many days those jobs would take and how much they would pay. You keep 50% for providing organization, order, safe place for girls to stay, heal and rest (base of operations, like your brothel or some other building we may add later). Each of these jobs has a minimum requirement.

I was planning to code this into the advanced version, simple version is supposed to be 'simple' :) In any case, it's not very important right now. We need more information, like how long advanced logic is gonna take to code in and what's Rudi wants to code next (if anything at all), so I will simply stay away from behavior based on occupation until we have more information.



The bare basics would be just a simple message how much profit you are making, but it would be nice to have a clean list of the income and expenses for each of the players Brothels. (something really fancy would be a variable telling you how much each girl brings in and costs over the whole game.)

All three are possible, exception would be quests, dates and events I think because including those, while possible, would prolly take to long.

I wasn't planning any kind of finance screen at all but I agree that it can be very useful, so lets make a decision as soon as possible:

- Profit made on Next Day: Goes without saying.
- Clean list of expenses per Brothel: Workload: I expect 5 - 10 hours at least because I did not prepare a game for this from the start. I doubt that this will take more than that thou, maybe less. Also there I will do this in small bits as I advance the logic so it will be a nice distraction every now and again.
- Girl Stats: If quests and items are to be included here, I expect this would take a while, functions also would have to be written for modders so they would not have to relay data themselves. One bonus: Balancing out a game would be a WHOLE lot easier.

Isn't charisma basically part of refinement as it describes beauty that stems from the way a person acts? Anyway I wouldn't add beauty as an additional stat.
Ah sorry, wasn't clear there: That was supposed to be an argument against obedience since I think it would be basically another stat for the same thing from my perspective.

I am not sure if I explained myself understandably this time it is kinda late.

Ok, beauty and obedience are out until the advanced version at least.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 27, 2013, 12:36:04 PM
Workmap for v0.2 - v0.4 (Advanced logic and rudimentary texts)
This is not the same as building screens or coding in specific parts, many areas of the code have to be addressed so I though writing a plan to follow would be productive. I especially wrote it this way so I have to go back to the same functions over and over again after adding new things to the game, this may take a bit longer but there should be less bugs in the code.

1) Brothel Advertising

- Enabling, displaying and applying effects. Done 40%.


2) Brothel Updates

- Enabling, displaying and applying effects. Done 60%.

3) Jobs

- Adding striptease.
- Improving rest
- Allowing Costumers to choose girls beneath their caste if they are pretty or if costumer has a very high libido.
- Generally improving Whore job, more events based on stats

*Cleaning needs to be added
*Guarding/Hunting will be discussed farther on forum

4) Traits

- Adding about 10  traits to the game and add condition checks vs those traits to all jobs and special effects on next day.

5) Stats

After the discussion on stats is finished on forum, add those to the game and add checks during jobs and events for new stats.

* Don't forget luck and checks vs luck.
* Don't forget intelligence and it's effects.

5a) After Traits and Stats are more or less finalized, write a complete modding guide on how to create events and quests and system that will allow overriding default interactions and events with custom once.

5b) Add 3 or 4 new locations.

5c) Finalize items and their effects.

6) Adding Dark's suggestion for shopping during Rest and my idea on drug use as discussed on forums. Adding drug's 'body + spirit' destruction method to girls class.

7) Adding record keeping system and create screen to display the info.

8)Testing

- Try running the game for a couple dozens of days and re-balance advanced logic.

9) Improve all screens if Overhao creates Graphics or reuse existing stuff to make all screens look at the very least 'acceptable'.

10) Add rudimentary texts and events to girlmeets and wrap up rudimentary interaction if noone has done so already by then.

11) Create Mission system and code in at least 15 missions.

12) 1st major test-phase.
 Release a preAlpha to figure out bugs + imbalances.



I will be adding to this as I remember more and more details on what has to be done and we farther discuss the topic in here. If you can think of something I forgot, I'll add that as well. Seems like a lot but not so long ago the stuff that has been coded in already seemed impossible for me to do so I am neither worried nor afraid, I've already figured that the best way is just to start writing code as time allows and see the game grow and advance.

I will not be able to code for two or three days but I will be checking in to kill spambots and check on the thread.

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 27, 2013, 02:33:06 PM
Xela, what about whoring legality in PyTFall? In wm, for example, brothels seem at least semi-legal, if not worse.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 27, 2013, 02:47:49 PM
Xela, what about whoring legality in PyTFall? In wm, for example, brothels seem at least semi-legal, if not worse.

I figure they are just legal, it's hard to imagine a government that would oppose prostitution but not oppose plain slavery at the same time.

Security (in advanced version at the very least) will still be required to counter unruly costumers and potential attacks from competition.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 27, 2013, 04:30:55 PM
If everything you do is legal, then you actually can go to city guards if you have major problems with criminals or even escaping slaves. I mean, if player doesn't want to bother with personal guards or can't afford them yet, it shouldn't be a problem.

However, while casinos and banks irl can go to police too, they prefer to use private security service to prevent problems when they start to arise rather then replace police by it.

------------------------------------------------------------------------------------------------------------------------------

If player is law abiding and, for example, someone has attacked his girl, he could go to guards, after a few days they (with a certain probability) will catch that bastard and he will pay with his money and freedom. Girl might need medical attention though, and if she has medium or huge scars after the attack, you can buy some potions to heal them.

But if player is going to forcibly enslave girls, attack competitors and commit other crimes, he can't rely on city guards help anymore (at least for free), and if he becomes inveterate criminal himself, city guards can only provide to him free food and room with lattices for a few years. So he definitely will need personal guards then.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 28, 2013, 08:45:46 AM
Hi, I’m back. I played with renpy a little and you were right, it took less than a day to do something like tifa quest or the question example. And most of the tutorial stuff doesn’t look complicated at all either. With my zero Python knowledge, I still have hard time figuring how to connect that to actual game, but it’s a beginning.

Is there something I can help with now?  I mean, until we get to 5a), something easy that don’t require coding.
Or I can just go back to collecting pictures for new girls or improving ones we have (Haruhi...), it can’t hurt to have more.
------------------
About security – if you looking for something dangerous
- even if brothels are legal, it doesn’t mean that state will be eager to protect you, so WM style underground competition is still viable
- religion – both nasty and real, just look at history (I can imagine few events/missions for that)
- some sort of anti-slavery extremists ?
It’s still hard to explain why you want to use your precious girls as common security and not just hire some strong thugs for that. But it’s fun, so screw logic :) (same for cleaning)
------------------
Libido/nymphomania - How will that work? I mean, I would expect a girl with low libido to be unhappy if she gets too much sex. Will there be a way to limit number of customers she will serve per day or something?   

Character/temperament – I would really like to see this stat in use. It should lover general obedience and be a little counter-productive sometimes, but if there will be something when it's useful, it can add value to other measures to get a girl do what you want, like disposition.

Conversation skill - Is it included in refinement?
------------------
I would like to suggest a few traits, but please, where is that file for that again?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 28, 2013, 08:58:19 AM
It’s still hard to explain why you want to use your precious girls as common security and not just hire some strong thugs for that. But it’s fun, so screw logic :) (same for cleaning)
Btw, some time ago in some other thread there was a proposal to use male characters (like Naruto himself) for "safe for work" things like security.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 28, 2013, 04:25:33 PM
Conversation is included in refinement, I don't recall Naruto for security but I dislike that idea.

@CW You need to be at least a little bit more specific with your ideas for stats. I think SlaveMaker approach is best for now, they've started small, with limited amount of stats that were implemented in a simple way and later, after game was released and you could get a feeling for gameplay, adjusted and added new stuff.

Game balancing in Alkion does not exist so I've never had to deal with this topic, I figure it is impossible to get right on the first try or even to get it near being right, so step by step approach seems like the best thing for now.

I think it will be like this:

Code base - Try - Rebalance - Try - Rebalance - etc.

Same for stats and interactions and their effects. If game feels plain or counter intuitive, instead of just rebalancing, we'll think of a better system to handle stats and traits or/and add new once.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 29, 2013, 03:29:31 PM
Ok, I will try to be more specific from now on...  if my inexperience allow that, sorry


I would like to know your option about my idea how minor events (dunno how to call it) should work, so I can start working on them if you like it, or rethink that if not.


I imagine these events to be rather small and unimportant, just to spice up things a bit. For example, a scene where a flat-chested girl will comment a girl with big boobs.  Just a background, questgirl pictures, few lines of text - few clicks and it's gone.


This should be happening for girls player already have. The easiest would be using a predestined girls for that, for example it will check if player have these girls and then show [Chie] commenting [Hinata]. Advantage here is in using known pictures and characters, but also limited with that combination of girls. I think game like this would benefit from more generic approach that will support all potential girlpacks and I want to aim for something like this:


based on the event specifications, game will check all player girls for [flat chest] and [big boobs] traits. If found any, it will select two participants from these randomly and use their names and questpictures in event. And player will see the same background and text, but It will now be [randomly chosen one from his flat chested girls] commenting [randomly chosen one from his big boob girls].


Implementation: I'm somewhat opposed to showing these without warning on screen like it happen in most J-games. You know, you want to do something on next turn, but then all of these start showing... can be annoying.
1) maybe put it somewhere in report or in some sort of message system? like "you have one new minor event to see" button that will show when its available and it will play when clicked
2) maybe create a permanent button for that? Like location in city "visit your brothel", "check your girls" or anything. Click and it will show event if there is one, or some generic message if not. I will lessen the "living" feel a bit, but I can see the advantage of it, because it will allow all of this script to be cleaned under one button and not mess with new day stuff in any way.


Is that ok? I know we are not at that part of a plan yet, but I wanted to ask now,  because for example, to have it work this way I would like to suggest more traits or something that would describe girls more.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 29, 2013, 04:20:54 PM
I imagine these events to be rather small and unimportant, just to spice up things a bit. For example, a scene where a flat-chested girl will comment a girl with big boobs.  Just a background, questgirl pictures, few lines of text - few clicks and it's gone.
Personally, I like the idea. It also could be useful much later, when (if) relationships between characters will be implemented.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 29, 2013, 04:21:37 PM
Yeap, that's a nice idea for an event. I figure something like this shouldn't happen on Next Day but for example, as you enter girlmanagement screen, there is small chance for an event to take place (small chance in order not to flood game with those events). If such an event was chanced into happening, a flashy button appears on the screen, inviting player to take a look. These buttons could appear practically on any screen in the game. I have a bunch of those events planned already.

As for more traits, game doesn't care about how many traits there are so any amount of traits will work. If you think we need more than we have now (We have 1 called a 'Dummy' trait I used for testing :) ), you can simply start making those if you have some spare time.


Personally, I like the idea. It also could be useful much later, when (if) relationships between characters will be implemented.

I figure events like this will appear long before relationship between characters. Relationships between characters will include many things eventually even falling in love for two girls that have a high lesbian stat. Also each girl will have stuff that she likes, hates, loves, dislikes, envies, wishes to posses and maybe more. Those can be anything, from people to her favorite dish in the restaurant and can be specified in .xml file or chosen randomly by the game. The thing is that all of that can only be implemented after the simple version of the game will be released and hopefully there will be more people involved in the project because while it is remarkably easy to program, things like these require an absolutely insane amount of content that our small team simply incapable to provide.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 29, 2013, 04:43:06 PM
Hm, making traits sounds interesting. I'll give it a try.

Lets start with traits. I would say that the system is ready and working, needs testing obviously and traits themselves. If anyone is up to it, grab the file in the shared folder, throw it into your own folder and add traits as you see them, we can balance those out later, when game pace is clearer.
How can I get access to this shared folder? Shouldn't you send me an invitation (as dropbox offers me when I try to share some random folder) or something?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 29, 2013, 05:03:27 PM
Hm, making traits sounds interesting. I'll give it a try.
How can I get access to this shared folder? Shouldn't you send me an invitation (as dropbox offers me when I try to share some random folder) or something?

I've asked you to PM me your DB id or your Email so I could send you an invite two times already :) Since you've never replied, I assumed you didn't want it, is you DB email same as you used to register here?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 30, 2013, 05:20:28 AM
Now that's strange, I don't have any mails or PMs lately. I'll send you my email adress via PM just in case, but it's still the same, I have notifications there when I get PMs here, and I even use it when I forget my dropbox password to restore it. Since I've uploaded several files to dropbox, you should already know my id there, it's eight-digit number in all my links.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 30, 2013, 11:32:48 AM
OK, I start to work on traits now. Just one thing, I don't quite understand what "effects name" string does. Could you give a couple of examples?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 30, 2013, 02:11:08 PM
thank you, I will try to work on that for a while... but I'm not sure if It be of any use, because I'm much more hopeless in coding then I thought I am.  I spend 6 hours trying to add a trait "clumsy" that would increase girl's upkeep, only to get myself confused more  :(


@DarkTl  You will work on traits? Great, then I will wait and add mine after it, if I still miss some.


I'm also not sure about effect flags. Can we call a trait by it's id or we need all traits to have a flag? Or is it only for grouping similar traits?

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 30, 2013, 03:33:15 PM
thank you, I will try to work on that for a while... but I'm not sure if It be of any use, because I'm much more hopeless in coding then I thought I am.  I spend 6 hours trying to add a trait "clumsy" that would increase girl's upkeep, only to get myself confused more  :(

That is not possible. Traits can modify current, maximum and minimum of stats, girl's upkeep is a function. While it is perfectly possible to write code that would allow modders to change value of girl's upkeep, noone asked me to code that in.

Also, ask questions in PM if it is about a very specific part of code you do not understand or here if it is a general question. Especially if you took time to figure out the 'Question' renpy game and went through Tifa's quest. Just compile a list of questions and I'll answer them one by one.


OK, I start to work on traits now. Just one thing, I don't quite understand what "effects name" string does. Could you give a couple of examples?

I cannot give any examples :(. Effect sets girl's personal flag, since girl's flags are currently not being used in a single place in the game, effects are pretty useless so I would just ignore it for now.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 30, 2013, 03:39:11 PM
That is not possible. Traits can modify current, maximum and minimum of stats, girl's upkeep is a function. While it is perfectly possible to write code that would allow modders to change value of girl's upkeep, noone asked me to code that in.
I always thought it should be part of jobs logic, not traits. Because different traits have different influence on different jobs.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 30, 2013, 03:42:20 PM
I always thought it should be part of jobs logic, not traits. Because different traits have different influence on different jobs.

Yeap, by the way, if you get interesting ideas for traits you create as to how they should effect jobs, put them in separate file in your folder. I think I'll finally have 3 - 4 hours to code in tomorrow and if I get to the jobs, trying to put a couple of those in might be fun.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 30, 2013, 04:23:14 PM
That is not possible. Traits can modify current, maximum and minimum of stats, girl's upkeep is a function. While it is perfectly possible to write code that would allow modders to change value of girl's upkeep, noone asked me to code that in.
I was able to finally get it to work after another looking at functions.rpy (that file is really something, I never even heard of half of these functions before). I just added another self.upkeep stat under sGirl class that this <mod upkeep = '10' /> line in traits.xml can modify and then added it's value to getUpkeep formula. Really blunt way to do that, but Hey, I'm happy to see my first attempt to do something  :)

I think it makes sense for some traits to increase upkeep... I was looking into this with a clumsy girl, girl wearing expensive clothes in work (=picture based) and some of these non-human girls and robots that needs extra maintenance or food in mind. 


I was thinking about effect flags as a some way to put traits together for events and customers. Mark Splendid Body+Great Arse+Elegant+Cute as pretty, mark each small scars+scars+horrific scars as scars, artificial body+demon as non human etc... It would be much easier to add potential unique traits later that way, new "rocket punch" trait can have it's unique numbers and description, but it will be considered same as "Strong magic" in arena by its"dangerous" flag. (easier then adding new traits id to all events)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 30, 2013, 04:45:53 PM
I was looking into this with a clumsy girl, girl wearing expensive clothes in work (=picture based) and some of these non-human girls and robots that needs extra maintenance or food in mind.
Good idea. With Xela's permission I'll add it to some traits.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 30, 2013, 04:55:30 PM
I was able to finally get it to work after another looking at functions.rpy (that file is really something, I never even heard of half of these functions before). I just added another self.upkeep stat under sGirl class that this <mod upkeep = '10' /> line in traits.xml can modify and then added it's value to getUpkeep formula. Really blunt way to do that, but Hey, I'm happy to see my first attempt to do something  :)

I still think it makes sense for a trait to increase upkeep... I was looking into this with a clumsy girl, girl wearing expensive clothes in work (=picture based) and some of these non-human girls and robots that needs extra maintenance or food in mind.

What you did there is called programming, not modding (strictly speaking) since you've modified the base code. In any case, that will only work on your PC unless the dev version is upgraded with it.

Good idea. With Xela's permission I'll add it to some traits.

I don't mind, you figure it out, I have no idea how CW coded that in but I guess setting upkeep to 0 and having it modified to whatever by traits is the best bet.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 30, 2013, 06:12:35 PM
I guess setting upkeep to 0 and having it modified to whatever by traits is the best bet.
Illogically. Then upkeep of usual, inconspicuous girl without any traits would be free. Or we must create a trait for everything, even for simple human being.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on January 30, 2013, 07:11:26 PM
What you did there is called programming, not modding (strictly speaking) since you've modified the base code. In any case, that will only work on your PC unless the dev version is upgraded with it.
I'm sorry for misunderstanding... the truth is, I don't really know how to correctly add something as a mod, even If I wanted to. I was just exploring the code a bit and copy/pasting parts of it in hope it will do something I expect It will. I wouldn't dare to touch the dev version...


I only add "self.upkeep" and min/max values few times into pyt - classes.rpy file.

Code: [Select]
38
           #Traits
            self.ab_traits = [] #Permenatly blocked traits
            self.btraits = [] #Blocked traits
            self.traits = [] #Active traits
            self.temptraits = dict()#Temporary traits
           
            self.cache = dict()
            self.image = false
            self.previouswork = dict(location='', action='')
            self.action = None
            self.locked = dict()
           
            self.rank = 1
            self.AP = 0
            self.baseAP = 2
            #self.gold = 0
            self.price = 500
            self.fame = 0
            self.mood = 0
            self.disposition=0
            self.fatigue = 100
            self.upkeep = 0             ####
           
            self.min = dict(
                charisma=0,
                refinement=0,
                libido=0,
                constitution=0,
                exp=0,
                joy=0,
                character=0,
                reputation=0,
                health=0,
                fame=0,
                mood=0,
                disposition=0,
                fatigue = 0,
               
                attack = 0,
                magic = 0,
                defence=0,
                agility = 0,
                mp = 0,
               
                anal=0,
                normalsex=0,
                blowjob=0,
                lesbian=0,
               
                upkeep=-100               ####
                )
           
            self.max = dict(
                charisma=100,
                refinement=35,
                libido=100,
                constitution=100,
                exp=111000,
                joy=100,
                character=100,
                reputation=100,
                health=100,
                fame=100,
                mood=1000,
                disposition=1000,
                fatigue = 300,
               
                attack = 40,
                magic = 30,
                defence=40,
                agility = 25,
                mp = 30,
               
                anal=100,
                normalsex=100,
                blowjob=100,
                lesbian=100,
               
                upkeep=1000                 ####
                )
           
           
            self.clothes = dict(
-----------------------------
-----------------------------
195
        def getUpkeep(self):
            if self.status == 'slave':
                if self.occupation == 'Prostitute':
                    bu = 20 * self.rank
                   
                    su = self.charisma/10 + self.refinement*1.5 + self.constitution/5 + self.reputation/2 + self.fame/2 # Stats Upkeep
                    ssu = self.anal/8 + self.normalsex/8 + self.blowjob/8 + self.lesbian/8
                    su = su*1.5
                    ssu = ssu*1.5
                    if ssu > 40:
                        ssu = ssu * 2
                   
                    if self.libido < 30:
                        su = su * 1.4
                       
                    upkeep = bu + su + ssu + self.upkeep             ####
                    return upkeep
                   
            elif self.status == 'free':
                if self.occupation == 'Prostitute':
                    bu = 30 * self.rank
                   
                    su = self.charisma/10 + self.refinement*1.5 + self.constitution/5 + self.reputation/2 + self.fame/2 # Stats Upkeep
                    ssu = self.anal/8 + self.normalsex/8 + self.blowjob/8 + self.lesbian/8
                    su = su*1.5
                    ssu = ssu*1.5
                    if ssu > 80:
                        ssu = ssu * 2
                   
                    if self.libido < 30:
                        su = su * 1.4
                       
                    upkeep = bu + su + ssu + self.upkeep             ####
                    return upkeep
                   
                if self.occupation == 'Warrior':
                    bu = 30 * self.rank
                   
                    su = self.constitution/2 + self.reputation/2 + self.fame/2 # Stats Upkeep
                    bsu = self.attack/2 + self.magic/2 + self.defence/2 + self.agility/2 # Battle Stats Upkeep
                       
                    upkeep = bu + su + bsu + self.upkeep               ####
                    return upkeep

            else: 
                bu = 100 * self.rank
               
                su = self.charisma/5 + self.refinement + self.constitution/5 + self.reputation/2 + self.fame/2 # Stats Upkeep
                ssu = self.anal/5 + self.normalsex/5 + self.blowjob/5 + self.lesbian/5
                bsu = self.attack/2 + self.magic/2 + self.defence/2 + self.agility/2
                if ssu > 40:
                    ssu = ssu * 2
               
                if self.libido < 30:
                    su = su * 1.4
                   
                upkeep = bu + su + ssu + bsu + self.upkeep              ####
                return upkeep       

               
        def getWPrice(self): # Work Price
And then I added <mod upkeep = '40' /> into dummy trait to test in on Sakura. I didn't touch the girl data file.


look super simple now... and that took me a day to figure, oh jeez...
I'd better take your advice and ask next time  :)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 30, 2013, 08:09:29 PM
Illogically. Then upkeep of usual, inconspicuous girl without any traits would be free. Or we must create a trait for everything, even for simple human being.

Nah, you misunderstood, upkeep is being calculated by a function that calculates it depending on a whole bunch of stats, rank etc. Upkeep that you modify through stats is simply one of many things game takes into consideration when calculating real upkeep.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 31, 2013, 05:18:49 AM
if you get interesting ideas for traits you create as to how they should effect jobs, put them in separate file in your folder
Then please explain what do you mean by Heal job. Rest already should restore health, isn't it?

Oh, and what about magic defence and luck stats I've asked earlier? Should I add them to traits logic?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 31, 2013, 06:07:08 AM
Then please explain what do you mean by Heal job. Rest already should restore health, isn't it?

Oh, and what about magic defence and luck stats I've asked earlier? Should I add them to traits logic?

Heal act will be available in hospital or if there is a girl with ability to heal in the same building and she is allowed to spend her AP to heal other girls.

Rest does restore health, but it does so very, very slowly. Heal is like rest on steroids, it restores a large amount of health and a decent amount of fatigue. Rest restores great amount of fatigue and a very small amount of health. You can think of health damage as being actual bodily injuries and fatigue as of being tired.

Don't use magical defense at the moment, luck you can add to traits!
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 31, 2013, 09:48:04 AM
I think I've finished with traits for now. Let me know if you want more or if you don't like standard wm description which I've used for some of them.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 31, 2013, 09:59:17 AM
I think I've finished with traits for now. Let me know if you want more or if you don't like standard wm description which I've used for some of them.


Lol


Wm descriptions are fine. This is the first post I ever made from a handheld device, kind of fun. I'll take a look if it will be possible to port this to Android aftet the game is finished.



Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 31, 2013, 10:05:52 AM
WM descriptions may be copyrighted, you never know  :D
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 31, 2013, 10:24:23 AM
WM descriptions may be copyrighted, you never know  :D

Well, we've asked Necro for permission to create Unofficial WM-2 before we started with Alkion. Since Alkion is completely different now, this is likely to become unofficial WM-2 in the advanced version so we ca use anything from WM.

Time to write some code, I'll start now and see how far I'm gonna get.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on January 31, 2013, 05:33:36 PM
Ok, had to take two long breaks and it took me almost an hour to get my bearings in my own code (I am using a lot more comments from now on) and figure out what to do in what order.

All and all, this is what I managed:

- Instead of a fixed number of 2000 costumers that come into brothel as we used for testing purposes until now, amount of clients is generated from base + brothel fame modifier + each individual girl in brothel fame modifier.

- There is a rudimentary brothel report screen on next day, it doesn't report much info at this point (Clients that visited brothel (amount), fame and reputation increase that came from advertising and if your hired a celeb to advertise, that is being reported to you separately (cause of it's massive effect and price)), but it works. That took a while because code wasn't prepared for anything else than girl reports.

- Advertising and it's effects are working, still needs testing, balancing and minor improvements.

- Upgrades work but still effect almost nothing.

- Stripper job does nothing yet but it does appear as a choice in assignment screen after you bought the lounge upgrade.

That is it, but I'll have time to work on code tomorrow and this time there will be no need to get bearings and I've got a good amount of work planned out for now.

Also, I got an idea that I wish to bounce off dev team. It's about Stripper job and how to handle that. In most games strippers serve one client for a fraction of a price that they would make as whores. Instead I suggest this:

Strippers preform in stripclub lounge of your brothel for a great amount of costumers (Max 80% of a total that comes into your brothel). The amount of clients that girl can preform for depends on her AP (How many acts she can do). Overlaps between costumers seeing a stripshow and getting it on with a prostitute are possible, there will also be a modifier to client's libido, if your strippers did well, costumer will be more aroused and will find prostitutes more pleasing. Strippers themselves will not make that much money, if they are slaves, you will get their tips. Main income will come from two places:

- We will add Waitress job that will serve drinks to costumers (requires a bar upgrade). That will be the main source of income cause if there are no strippers, almost no clients will come and get drinks.
- After player is confident about Bar/Strip Club, fee for an entrance can be charged. Huge penalty to Rep if player fails to deliver so it will be up to player to decide if risk on putting entrance fee is worth taking.

Another two features:

- Strippers will get fame a lot faster than prostitutes, meaning more clients, faster.
- It will be possible to enable an option to allow strippers to give clients 'very' private service if strippers agree to it themselves.


I am planning to work on this tomorrow so if you have any comments, addons or think this is a weak move, lets hear it.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on January 31, 2013, 06:35:31 PM
Amount of fee for an entrance should be selected by player from 3-5 fixed values, something like "small", "medium" and "high". Too much freedom here will be a hindrance for gameplay.

Perhaps we should add barmaids too. I guess they could serve drinks for a few customers near the bar counter and should provide drinks and snack for waitresses job. Maybe one barmaid with 100 constitution can work with 10 waitresses or something like that.

About the waitress job - as we know from slavemaker, there're bars and there're sleazy bars with some "additional service". I'm not sure how we should handle this, or should we bother in a first place.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: GonDra on January 31, 2013, 09:52:03 PM
Xela in the current version the game will break if you have a girl from the park in the players brothel, specifically:
Code: [Select]
While running game code:
  File "game\library\pyt - screens - nextday.rpy", line 6, in script
  File "game\library\pyt - screens - nextday.rpy", line 37, in python
 TypeError: unsupported operand type(s) for -=: 'float' and 'NoneType'
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 01, 2013, 12:43:43 AM
Amount of fee for an entrance should be selected by player from 3-5 fixed values, something like "small", "medium" and "high". Too much freedom here will be a hindrance for gameplay.

Perhaps we should add barmaids too. I guess they could serve drinks for a few customers near the bar counter and should provide drinks and snack for waitresses job. Maybe one barmaid with 100 constitution can work with 10 waitresses or something like that.

About the waitress job - as we know from slavemaker, there're bars and there're sleazy bars with some "additional service". I'm not sure how we should handle this, or should we bother in a first place.

Ok, so a limited amount of choices for an entrance fee, I'll think on how to handle that.

Barmaids are prolly best left for advanced version, but I'll take a look at that as well.

Same as for strippers, for waitresses behavior can be adjusted in the girlmanagement screen, I'll get around to that eventually.

I also had an idea at the very first stages of the game, to create one type Service Girl and have her do cleaning, waitress and bar-tending.


Xela in the current version the game will break if you have a girl from the park in the players brothel, specifically:
Code: [Select]
While running game code:
  File "game\library\pyt - screens - nextday.rpy", line 6, in script
  File "game\library\pyt - screens - nextday.rpy", line 37, in python
 TypeError: unsupported operand type(s) for -=: 'float' and 'NoneType'

Yeah, I stumbled upon this a while ago, it's already fixed in my dev version, if there is more progress, I'll prolly up it to Box tonight.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: CherryWood on February 01, 2013, 05:25:00 AM
I like this.


Will this all be tied to building upgrades / performing places(rooms)? Like in simbro1x, if in advanced version we have more jobs/upgrades like gambling, food ,show fights, cosplay, bondage... different buildings could use a different combinations of these.


I was thinking about possibility of setting some or all jobs with this new AP system, but I don't know the line when it's fun and when it became a princess maker for every girl...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 01, 2013, 05:50:23 AM
Will this all be tied to building upgrades / performing places(rooms)? Like in simbro1x, if in advanced version we have more jobs/upgrades like gambling, food ,show fights, cosplay, bondage... different buildings could use a different combinations of these.

Shouldn't be to hard to add buildings other than default brothels or simply add more extensions to brothels. We'll see when we get there.


I was thinking about possibility of setting some or all jobs with this new AP system, but I don't know the line when it's fun and when it became a princess maker for every girl...

I don't like that, princess maker for every girl is not such a bad idea in itself but I see no point in asking a Warrior to spend 2 AP doing bondage, 1 AP sex, 3 AP cleaning, 1 AP working the bar and 5 AP fighting. It's counter-intuitive and messy. What you will be able to modify in behavior is to allow strippers for example to sleep with clients after the show spending a couple APs or having a Warrior to spend 2 - 3 APs training other girls in agility or self-defense for example. Kind of job extensions, completely different jobs will not be allowed, it will kill one of the concepts behind the game.

We might do something like that with slave's thou. Also in advanced version, there will be delimiters based on occupation. Normal prostitute will not be able to push battle stats above 30 - 40 without items and warrior will not be able to push sex stats above 30 - 40 without items and so on. There will be very little point in trying to set warrior to do the cleaning cause she will be inadequate at it anyway.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 01, 2013, 06:07:08 AM
I also had an idea at the very first stages of the game, to create one type Service Girl and have her do cleaning, waitress and bar-tending.
This might be a good idea, at least for barmaids. Player sets several girls to work in bar and lets them self-organize it. Those who have talent to be barmaids (judging by traits and stats) work as barmaids, same for waitresses.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 01, 2013, 06:32:07 AM
This might be a good idea, at least for barmaids. Player sets several girls to work in bar and lets them self-organize it. Those who have talent to be barmaids (judging by traits and stats) work as barmaids, same for waitresses.

Possibility but I was thinking along the lines of 'Servicegirl' as being an occupation that allows to pick from a number of jobs like a waitress, bartender etc. but also allows you to allow her spending AP on other stuff than her primary task if required.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 03, 2013, 03:53:37 AM
Just some thoughts about how to balance out training so we won't end up with perfect girls after a couple of month. I see two different ways (and the third way which unites this two): slavemaker, where rise of one skill often leads to reduction of one or more others; and skyrim, where training costs money with constantly rising cost, and it's quite bearable up to 50, considerably more costly up to 75, much more costly up to 90 and can't go further after 90, so player (at least in PyTFall) should use items to rise stat even more.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 03, 2013, 06:15:20 AM
Just some thoughts about how to balance out training so we won't end up with perfect girls after a couple of month. I see two different ways (and the third way which unites this two): slavemaker, where rise of one skill often leads to reduction of one or more others; and skyrim, where training costs money with constantly rising cost, and it's quite bearable up to 50, considerably more costly up to 75, much more costly up to 90 and can't go further after 90, so player (at least in PyTFall) should use items to rise stat even more.

Skyrim way sounds better, SM way may be useful for 1 - 2 stats but very annoying for all. Since schools are supposed to be 'put the girl in and forget', I am not sure what the best way would be to handle that. Setting a goal for every girl that you send into school?

I didn't get far in coding in the last two days, every time I either get distracted by rl or find some small aspect of the game that needs improvement and should be taken care of before advanced logic. Also there is still no clear map in my head on stat/job/interactions dependencies so that doesn't help...


Edit:

Well, I am still working on strip job, trying to find some texts to steal from other games  ::) (If anyone knows where a good place to fish for those, let me know)

I am taking a look at WM's data right now, I though we had it bad with 5 - 7 jobs planned but damn...  WM was an ambitious project!

Code: [Select]
    JobFilterName[JOBFILTER_GENERAL] = "General";
    JobFilterDescription[JOBFILTER_GENERAL] = "These are general jobs that work individually in any building.";
    JobFilterIndex[JOBFILTER_GENERAL] = JOB_RESTING;
    JobName[JOB_RESTING] = "Free Time";
    JobDescription[JOB_RESTING] = "She will take some time off, maybe do some shopping or walk around town. If the girl is unhappy she may try to escape.";
    JobName[JOB_TRAINING] = "Practice Skills";
    JobDescription[JOB_TRAINING] = "She will train either alone or with others to improve her skills.";
    JobName[JOB_CLEANING] = "Cleaning";
    JobDescription[JOB_CLEANING] = "She will clean the building, as filth will put off some customers.";
    JobName[JOB_SECURITY] = "Security";
    JobDescription[JOB_SECURITY] = "She will patrol the building, stopping mis-deeds.";
    JobName[JOB_ADVERTISING] = "Advertising";
    JobDescription[JOB_ADVERTISING] = "She will advertise the building's features in the city.";
    JobName[JOB_MATRON] = "Matron";
    JobDescription[JOB_MATRON] = "This girl will look after the other girls. Only non-slave girls can have this position and you must pay them 300 gold per week. Also, it takes up both shifts. (max 1)";
    JobName[JOB_TORTURER] = "Torturer";
    JobDescription[JOB_TORTURER] = "She will torture the prisoners in addition to your tortures, she will also look after them to ensure they don't die. (max 1 for all brothels)";
    JobName[JOB_EXPLORECATACOMBS] = "Explore Catacombs";
    JobDescription[JOB_EXPLORECATACOMBS] = "She will explore the catacombs looking for treasure and capturing monsters and monster girls. Needless to say, this is a dangerous job.";
    JobName[JOB_BEASTCAPTURE] = "Beast Capture";
    JobDescription[JOB_BEASTCAPTURE] = "She will go out into the wilds to capture beasts. (max 2)";
    JobName[JOB_BEASTCARER] = "Beast Carer";
    JobDescription[JOB_BEASTCARER] = "She will look after the needs of the beasts in your possession. (max 1)";

    JobFilterName[JOBFILTER_BROTHEL] = "Brothel";
    JobFilterDescription[JOBFILTER_BROTHEL] = "These are jobs for running a brothel in the current building.";
    JobFilterIndex[JOBFILTER_BROTHEL] = JOB_WHOREBROTHEL;
    JobName[JOB_WHOREBROTHEL] = "Whore in Brothel";
    JobDescription[JOB_WHOREBROTHEL] = "She will whore herself to customers within the building's walls. This is safer but a little less profitable.";
    JobName[JOB_WHORESTREETS] = "Whore on Streets";
    JobDescription[JOB_WHORESTREETS] = "She will whore herself on the streets. It is more dangerous than whoring inside but more profitable.";
    JobName[JOB_BROTHELSTRIPPER] = "Stripper in Brothel";
    JobDescription[JOB_BROTHELSTRIPPER] = "She will strip for the customers.";
    JobName[JOB_MASSEUSE] = "Masseuse in Brothel";
    JobDescription[JOB_MASSEUSE] = "She will give massages to the customers.";

    JobFilterName[JOBFILTER_GAMBHALL] = "Gambling Hall";
    JobFilterDescription[JOBFILTER_GAMBHALL] = "These are jobs for running a gambling hall in the current building.";
    JobFilterIndex[JOBFILTER_GAMBHALL] = JOB_CUSTOMERSERVICE;
    JobName[JOB_CUSTOMERSERVICE] = "Customer Service";
    JobDescription[JOB_CUSTOMERSERVICE] = "She will look after customer needs.";
    JobName[JOB_WHOREGAMBHALL] = "Whore for Gamblers";
    JobDescription[JOB_WHOREGAMBHALL] = "She will give her sexual favors to the customers.";
    JobName[JOB_DEALER] = "Game Dealer";
    JobDescription[JOB_DEALER] = "She will manage a game in the gambling hall. (requires 3)";
    JobName[JOB_ENTERTAINMENT] = "Entertainer";
    JobDescription[JOB_ENTERTAINMENT] = "She will provide entertainment to the customers.";
    JobName[JOB_XXXENTERTAINMENT] = "XXX Entertainer";
    JobDescription[JOB_XXXENTERTAINMENT] = "She will provide sexual entertainment to the customers.";

    JobFilterName[JOBFILTER_BAR] = "Bar";
    JobFilterDescription[JOBFILTER_BAR] = "These are jobs for running a bar.";
    JobFilterIndex[JOBFILTER_BAR] = JOB_BARMAID;
    JobName[JOB_BARMAID] = "Barmaid";
    JobDescription[JOB_BARMAID] = "She will staff the bar and serve drinks.";
    JobName[JOB_WAITRESS] = "Waitress";
    JobDescription[JOB_WAITRESS] = "She will bring drinks and food to customers at the tables.";
    JobName[JOB_STRIPPER] = "Stripper in Bar";
    JobDescription[JOB_STRIPPER] = "She will strip on the tables and stage for the customers.";
    JobName[JOB_WHOREBAR] = "Whore in Bar";
    JobDescription[JOB_WHOREBAR] = "She will provide sex to the customers.";
    JobName[JOB_SINGER] = "Singer";
    JobDescription[JOB_SINGER] = "She will sing for the customers.";

    JobFilterName[JOBFILTER_MOVIESTUDIO] = "Movie Studio";
    JobFilterDescription[JOBFILTER_MOVIESTUDIO] = "These are jobs for running a movie studio.";
    JobFilterIndex[JOBFILTER_MOVIESTUDIO] = JOB_FILMBEAST;
    JobName[JOB_FILMBEAST] = "Film Bestiality";
    JobDescription[JOB_FILMBEAST] = "She will film bestiality scenes.";
    JobName[JOB_FILMSEX] = "Film Sex";
    JobDescription[JOB_FILMSEX] = "She will film normal sex scenes.";
    JobName[JOB_FILMANAL] = "Film Anal";
    JobDescription[JOB_FILMANAL] = "She will film anal scenes.";
    JobName[JOB_FILMLESBIAN] = "Film Lesbian";
    JobDescription[JOB_FILMLESBIAN] = "She will do a lesbian scene.";
    JobName[JOB_FILMBONDAGE] = "Film Bondage";
    JobDescription[JOB_FILMBONDAGE] = "She will perform in bondage scenes.";
    JobName[JOB_FLUFFER] = "Fluffer";
    JobDescription[JOB_FLUFFER] = "She will keep the porn stars and animals aroused.";
    JobName[JOB_CAMERAMAGE] = "Camera Mage";
    JobDescription[JOB_CAMERAMAGE] = "She will film the scenes. (requires 1) (max 1)";
    JobName[JOB_CRYSTALPURIFIER] = "Crystal Purifier";
    JobDescription[JOB_CRYSTALPURIFIER] = "She will clean up the filmed scenes. (requires 1)";

    JobFilterName[JOBFILTER_COMMUNITYCENTRE] = "Community Centre";
    JobFilterDescription[JOBFILTER_COMMUNITYCENTRE] = "These are jobs for running a community centre.";
    JobFilterIndex[JOBFILTER_COMMUNITYCENTRE] = JOB_COLLECTDONATIONS;
    JobName[JOB_COLLECTDONATIONS] = "Collect Donations";
    JobDescription[JOB_COLLECTDONATIONS] = "She will collect money to help the poor.";
    JobName[JOB_FEEDPOOR] = "Feed Poor";
    JobDescription[JOB_FEEDPOOR] = "She will work in a soup kitchen.";
    JobName[JOB_MAKEITEMS] = "Make Crafts";
    JobDescription[JOB_MAKEITEMS] = "She will craft cheap handmade items.";
    JobName[JOB_SELLITEMS] = "Sell Crafts";
    JobDescription[JOB_SELLITEMS] = "She will go out and sell previously crafted items.";
    JobName[JOB_COMUNITYSERVICE] = "Community Service";
    JobDescription[JOB_COMUNITYSERVICE] = "She will go around town and help out where she can.";

    JobFilterName[JOBFILTER_DRUGLAB] = "Drug Lab";
    JobFilterDescription[JOBFILTER_DRUGLAB] = "These are jobs for running a movie studio.";
    JobFilterIndex[JOBFILTER_DRUGLAB] = JOB_VIRASPLANTFUCKER;
    JobName[JOB_VIRASPLANTFUCKER] = "Fuck Viras Plants";
    JobDescription[JOB_VIRASPLANTFUCKER] = "She will allow Viras plants to inseminate her, creating Vira Blood.";
    JobName[JOB_SHROUDGROWER] = "Grow Shroud Mushrooms";
    JobDescription[JOB_SHROUDGROWER] = "She will grow Shroud Mushrooms, which require a lot of care and may explode.";
    JobName[JOB_FAIRYDUSTER] = "Fairy Duster";
    JobDescription[JOB_FAIRYDUSTER] = "She will capture fairies and grind them into a fine powder known as Fairy Dust.";
    JobName[JOB_DRUGDEALER] = "Drug Dealer";
    JobDescription[JOB_DRUGDEALER] = "She will go out and sell your drugs on the streets.";

    JobFilterName[JOBFILTER_ALCHEMISTLAB] = "Alchemist Lab";
    JobFilterDescription[JOBFILTER_ALCHEMISTLAB] = "These are jobs for running an alchemist lab.";
    JobFilterIndex[JOBFILTER_ALCHEMISTLAB] = JOB_FINDREGENTS;
    JobName[JOB_FINDREGENTS] = "Find Reagents";
    JobDescription[JOB_FINDREGENTS] = "She will go out and look for promising potion ingredients.";
    JobName[JOB_BREWPOTIONS] = "Brew Potions";
    JobDescription[JOB_BREWPOTIONS] = "She will brew a random potion using available ingredients.";
    JobName[JOB_POTIONTESTER] = "Guinea Pig";
    JobDescription[JOB_POTIONTESTER] = "She will test out random potions. Who knows what might happen? (requires 1)";

    JobFilterName[JOBFILTER_ARENA] = "Arena";
    JobFilterDescription[JOBFILTER_ARENA] = "These are jobs for running an arena.";
    JobFilterIndex[JOBFILTER_ARENA] = JOB_FIGHTBEASTS;
    JobName[JOB_FIGHTBEASTS] = "Fight Beasts";
    JobDescription[JOB_FIGHTBEASTS] = "She will fight to the death against beasts you own. Dangerous.";
    JobName[JOB_WRESTLE] = "Wrestle";
    JobDescription[JOB_WRESTLE] = "She will take part in a wrestling match. Not dangerous.";
    JobName[JOB_FIGHTTODEATH] = "Cage Match";
    JobDescription[JOB_FIGHTTODEATH] = "She will fight to the death against other girls. Dangerous.";
    JobName[JOB_FIGHTVOLUNTEERS] = "Fight Volunteers";
    JobDescription[JOB_FIGHTVOLUNTEERS] = "She will fight against customer volunteers for gold prizes. Not dangerous.";
    JobName[JOB_COLLECTBETS] = "Collect Bets";
    JobDescription[JOB_COLLECTBETS] = "She will collect bets from the customers. (requires 1)";

    JobFilterName[JOBFILTER_TRAININGCENTRE] = "Training Centre";
    JobFilterDescription[JOBFILTER_TRAININGCENTRE] = "These are jobs for running a training centre.";
    JobFilterIndex[JOBFILTER_TRAININGCENTRE] = JOB_TEACHBDSM;
    JobName[JOB_TEACHBDSM] = "Teach BDSM";
    JobDescription[JOB_TEACHBDSM] = "She will teach other girls in BDSM skills.";
    JobName[JOB_TEACHSEX] = "Teach Sex";
    JobDescription[JOB_TEACHSEX] = "She will teach other girls the ins and outs of regular sex.";
    JobName[JOB_TEACHBEAST] = "Teach Bestiality";
    JobDescription[JOB_TEACHBEAST] = "She will teach other girls how to safely fuck beasts.";
    JobName[JOB_TEACHMAGIC] = "Teach Magic";
    JobDescription[JOB_TEACHMAGIC] = "She will teach other girls how to wield magic.";
    JobName[JOB_TEACHCOMBAT] = "Teach Combat";
    JobDescription[JOB_TEACHCOMBAT] = "She will teach other girls how to fight.";
    JobName[JOB_DAYCARE] = "Daycare";
    JobDescription[JOB_DAYCARE] = "She will look after local children. (non-sexual)";
    JobName[JOB_SCHOOLING] = "Schooling";
    JobDescription[JOB_SCHOOLING] = "She will teach the local children. (non-sexual)";
    JobName[JOB_TEACHDANCING] = "Teach Dancing";
    JobDescription[JOB_TEACHDANCING] = "She will teach other girls dancing and social skills.";
    JobName[JOB_TEACHSERVICE] = "Teach Service";
    JobDescription[JOB_TEACHSERVICE] = "She will teach other girls a variety of service skills.";
    JobName[JOB_TRAIN] = "Student";
    JobDescription[JOB_TRAIN] = "She will learn from all of the other girls who are teaching here.";

    JobFilterName[JOBFILTER_CLINIC] = "Medical Clinic";
    JobFilterDescription[JOBFILTER_CLINIC] = "These are jobs for running a medical clinic.";
    JobFilterIndex[JOBFILTER_CLINIC] = JOB_DOCTOR;
    JobName[JOB_DOCTOR] = "Doctor";
    JobDescription[JOB_DOCTOR] = "She will become a doctor. Doctors earn extra cash from treating locals. (requires 1)";
    JobName[JOB_GETABORT] = "Get Abortion";
    JobDescription[JOB_GETABORT] = "She will get an abortion, removing pregnancy and/or insemination.(takes 2 days)";
    JobName[JOB_PHYSICALSURGERY] = "Cosmetic Surgery";
    JobDescription[JOB_PHYSICALSURGERY] = "She will undergo magical surgery to \"enhance\" her appearance. (takes 5 days)";
    JobName[JOB_HEALING] = "Healing";
    JobDescription[JOB_HEALING] = "She will have her wounds attended. This takes 1 day for each wound trait.";
    JobName[JOB_REPAIRSHOP] = "Repair Shop";
    JobDescription[JOB_REPAIRSHOP] = "Construct girls will be quickly repaired here.";

Edit2:

Phew, done with coding for tonight, stripper job is half-done (maybe even more, like 60%), small code fixes+addons everywhere to make it all work...
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 03, 2013, 04:21:41 PM
Well, I am still working on strip job, trying to find some texts to steal from other games  ::) (If anyone knows where a good place to fish for those, let me know)



Could you perhaps make a pastebin of sections you need writing for?  I think it'd be easier for any random person to just look at it and contribute and post their writing here in another pastebin and you could just copy and paste what you like.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 03, 2013, 04:55:27 PM
Could you perhaps make a pastebin of sections you need writing for?  I think it'd be easier for any random person to just look at it and contribute and post their writing here in another pastebin and you could just copy and paste what you like.

LoL

I am making stuff up as I go so I cannot predict what writing is needed, for stripjob I need something like this for example:

1)
Code: [Select]
                txt = txt + '%d clients came to see %s strip and dance in the club! It is a very impressive feat for one girl to attract so many! \n '%(clients, chr.name)
            elif int(self.getClients(ilists, brtls, char)*0.6) <= clients <= int(self.getClients(ilists, brtls, char)*0.9):
                txt = txt + '%d clients came to see %s strip and dance in the club! This is a very respectable amount of fans for one girls to have! \n '%(clients, chr.name)
            elif int(self.getClients(ilists, brtls, char)*0.3) <= clients <= int(self.getClients(ilists, brtls, char)*0.6):
                txt = txt + '%d clients came to see %s strip and dance in the club! Not bad concidering the size of brothel and all. \n'%(clients, chr.name)
            elif int(self.getClients(ilists, brtls, char)*0.1) <= clients <= int(self.getClients(ilists, brtls, char)*0.3):
                txt = txt + "%d clients came to see %s strip, not the most impressive amount but everyone had to start somewhere. \n"%(clients, chr.name)
            else:
                txt = txt + "Just a couple of clients came to check your girl out, very poor result indeed. "

Basically there is an amount of clients that can come to brothel every day for various needs. Maximum of 90% of those clients might also wish to see any specific girl doing striptease, exact amount depends on her fame. A number of texts are needed to replace mine (basically first things that pop into my head so I don't have to stop writing the code while thinking about texts).

2)

Code: [Select]
            if chr.status == 'Slave':
                if chr.occupation == 'Prostitute':
                    client = self.create_customer()
                    if chr.rank < ilists.clientCastes.index(client.caste) - 2:
                   
                        txt = txt + "Half of costumers have left quickly after realising that this girl (Rank: %d) was some low ranked slave whore. \n"%(chr.rank)
                        brrepmod = random.randint(10,15) + ilists.clientCastes.index(client.caste)
                        txt = txt + "Brothel reputation took a hit of %d points \n"%brrepmod       
               
                if chr.occupation in ['Stripper', 'Prostitute']:
                    if chr.strip > 120 and chr.charisma > 120:
                        tippayout = int(clients * chr.refinement*0.1 * chr.charisma*0.1 + clients*chr.strip*0.2)
                        txt = txt + "Your girl gave a performance worthy of kings and queens as the whole hall was cheering for her. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%tippayout
                        hero.add_money(tippayout)
                    elif 100 <= chr.strip <= 120 and 100 <= chr.charisma <= 120:
                        tippayout = int(clients * chr.refinement*0.05 * chr.charisma*0.1 + clients*chr.strip*0.15)
                        txt = txt + "Your girl lost all of her clothing peace by peace as she stripdanced on the floor, the whole hall was cheering for her. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%tippayout
                        hero.add_money(tippayout)
                    elif 60 <= chr.strip <= 100 and 60 <= chr.charisma <= 100:
                        tippayout = int(clients * chr.refinement*0.05 * chr.charisma*0.05 + clients*chr.strip*0.1)
                        txt = txt + "Your girl lost all of her clothing peace by peace as she stripdanced on the floor, the whole hall was cheering for her. Overall it was a more than decent performance. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%tippayout
                        hero.add_money(tippayout)
                    elif 30 <= chr.strip <= 60 and 30 <= chr.charisma <= 60:
                        tippayout = int(clients * chr.refinement*0.05 * chr.charisma*0.03 + clients*chr.strip*0.05)
                        txt = txt + "Your girl lost all of her clothing peace by peace as she stripdanced on the floor, some mildly drunk clients cheered for her. Overall it was a decent performance. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%tippayout
                        hero.add_money(tippayout)
                    elif 0 <= chr.strip <= 30 and 0 <= chr.charisma <= 30:
                        tippayout = int(clients * chr.refinement*0.01 * chr.charisma*0.01 + clients*chr.strip*0.03)
                        txt = txt + "Your girl tripped several times while trying to undress herself as she 'stripdanced' on the floor, only a couple of fans of %s kept quite while a couple of cursewords and calls for a different stripper could be clearly heard. Overall it was a decent performance. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%(tippayout, random.choice(chr.traits))
                        hero.add_money(tippayout)
                    elif chr.strip < 30 and chr.charisma > 30:
                        tippayout = int(clients * chr.refinement*0.02 * chr.charisma*0.03 + clients*chr.strip*0.05)
                        txt = txt + "Your girl tripped several times while trying to undress herself as she 'stripdanced' on the floor, only a couple of fans of %s kept cheering her on, noone really complained because even if her strip skill was inadequite, she was pretty enough to arouse most men and women in the club. Overall it was a decent performance. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%(tippayout, random.choice(chr.traits))
                        hero.add_money(tippayout)
                    elif chr.strip > 30 and chr.charisma < 30:
                        tippayout = int(clients * chr.refinement*0.02 * chr.charisma*0.02 + clients*chr.strip*0.03)
                        txt = txt + "Your girl tripped several times while trying to undress herself as she 'stripdanced' on the floor, only a couple of fans of %s kept cheering her on, noone really complained because even if her strip skill was inadequite, she was pretty enough to arouse most men and women in the club. Overall it was a decent performance. She recieved %d of tips and you get to keep 100% of that, her being a slave. \n"%(tippayout, random.choice(chr.traits))
                        hero.add_money(tippayout)
                    else:
                        txt = txt + 'Dev Note: >>>I missed something!<<< Charisma = %d, Strip = %d \n'%(chr.charisma, chr.strip)
                       
                    # Mod relevant stats:
                    modchr = random.choice([0,0,0,1])
                    if modchr > 0:
                        chr.mod('charisma', 1)
                        txt = txt + "Your girl charisma increased as she learned a new trick on how to make herself pretty before the show \n"
                    if dice(35):
                        chr.mod('strip', 1)
                        txt = txt + "Striptease skill is up by point! "

If girl is a slave having a whore as occupation, her rank is checked vs a random costumer's caste, if to far below, half of costumers will leave. Text is needed to reflect that.

Than if she is a stripper/whore and a slave, a number of texts are needed to reflect her performance, based on charisma and strip skill for now.

Basically if she was stunningly pretty and skillfull at striptease: 1 text, pretty and ok at striptease: another text and so on. As many options as possible. Also hooks for her being just pretty but sucking at striptease or the opposite, awesome stripper but not the best looker and so on.

About the same thing for Stippers that are free, you do not get to keep all of tips, there will be a bar in girl's profile screen just like in WM, that will determine what you get if free girl's working for you, but texts from Slave part can be reused here I suppose...

Also any amount of text for interactions in city or private interaction in girl's profile based on traits (List of traits will be released with next preAlpha, but most of the general WM traits can be used), occupations(Warrior, Whore, Stripper, Service Girl etc.) and status (Slave, Free, Worker, Peasant, Noble etc.) can be written. Pretty much any decent writing in good English will be added to the game, there is any amount of hooks/forks since a slavegirl will give different answers from noble and whore from warrior and let's say noble courtesan with large boobs will give different answer from a dimwitted peasant service girl... options are limitless, I will write most basic once (borrowing stuff from Simbro 1x every now and again) if noone gets around to it but I will put in any writing on that front done by writers).
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 03, 2013, 05:39:39 PM
Repair Shop, Community Centre, Training Centre with a lot of options, wow. Pretty nice ideas.
I hope eventually PyTFall will have them.

My colloquial English lacks practice, so I doubt I can write a decent text for any interactions. I guess I can try to write texts for non-interaction events, like Rest or Heal jobs, for different traits and occupations.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 03, 2013, 06:13:17 PM
I'm just wondering, is it possible to separate those nest if statements into single stat groups and concatenate the strings together after words?

I know this is just a very poorly written pseudo code, but bare with me.

Code: [Select]
if stripskill >= 120:

   text1 = "Best result!"
   tip1 = clients*chr.strip*best_strip_rate

elif stripskill >= 100:

   text1 = "Great result."
   tip1 = clients*chr.strip*great_strip_rate

elif stripskill >= 60:

   text1 = "Good result."
   tip1 = clients*chr.strip*good_strip_rate


elif stripskill >= 30:

   text1 = "Fair result."
   tip1 = clients*chr.strip*fair_strip_rate


else:

   text1 = "Yur grl sux."
   tip1 = clients*chr.strip*bad_strip_rate



if charisma >= 120:

   text2 = "Best result!"
   tip2 = int(clients*charisma*best_charisma_rate)

elif charisma >= 100:

   text2 = "Great result."
   tip2 = clients*charisma*great_charisma_rate

elif charisma >= 60:

   text2 = "Good result."
   tip2 = clients*charisma*good_charisma_rate

elif charisma >= 30:

   text2 = "Fair result."
   tip2 = clients*charisma*fair_charisma_rate

else:

   text2 = "Yur grl sux."
   tip2 = clients*charisma*bad_charisma_rate


#Then a spot for traits that may effect things (or not)

text3 = ""
tip3 = 0

if trait == 'Big Boobs':

   text3 = text3 + "  Her big boobs bounced with every step she took."
   tip3 = tip3 + big_boob_bonus

if trait == 'Mesmerizing Eyes':

   text3 = text3 + "  The eyes of her viewers couldn't stray from her dance."
   tip3 = tip3 + mez_eye_bonus


final_tip = tip1 + tip2 + tip3
final_text = text1 + text2 + text3 + "\nYou made " + final_tip + " from her dancing.\n(Stripskill " + tip1 +
    ", Charisma " + tip2 + ", Trait Bonus " + tip3 + ")\n You get to keep XX% of her earnings."

My reasoning behind this is thus, you could easily add traits, change tip rates, and adjust the text in the strings without having to change every single line when/if something changes. In other words, it would be much easier to manage.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 03, 2013, 06:24:31 PM
LoL

I am making stuff up as I go so I cannot predict what writing is needed, for stripjob I need something like this for example:

[snip]

If girl is a slave having a whore as occupation, her rank is checked vs a random costumer's caste, if to far below, half of costumers will leave. Text is needed to reflect that.

Than if she is a stripper/whore and a slave, a number of texts are needed to reflect her performance, based on charisma and strip skill for now.

Basically if she was stunningly pretty and skillfull at striptease: 1 text, pretty and ok at striptease: another text and so on. As many options as possible. Also hooks for her being just pretty but sucking at striptease or the opposite, awesome stripper but not the best looker and so on.

About the same thing for Stippers that are free, you do not get to keep all of tips, there will be a bar in girl's profile screen just like in WM, that will determine what you get if free girl's working for you, but texts from Slave part can be reused here I suppose...

Also any amount of text for interactions in city or private interaction in girl's profile based on traits (List of traits will be released with next preAlpha, but most of the general WM traits can be used), occupations(Warrior, Whore, Stripper, Service Girl etc.) and status (Slave, Free, Worker, Peasant, Noble etc.) can be written. Pretty much any decent writing in good English will be added to the game, there is any amount of hooks/forks since a slavegirl will give different answers from noble and whore from warrior and let's say noble courtesan with large boobs will give different answer from a dimwitted peasant service girl... options are limitless, I will write most basic once (borrowing stuff from Simbro 1x every now and again) if noone gets around to it but I will put in any writing on that front done by writers).

why not just put in a ton of place holders for the specific things, pastebin it all, and then people can pastebin back in the specific placeholder.  This way you can continue to write up the code and just fill in the placeholders when you get around to it.

something like (placeholder:good strip tease act).    then someone could do "(placeholder:good strip tease act): <stripper> performed an exotic dance for her customers.  Everyone loved the act and she left the whole room wanting more. "  Then write up a bunch of alternates following the same format or whatever and then pastebin it all.   You can then just copy and paste the content you want.  Not everyone is competent with python, so i feel that this method would be the best to minimize the amount of errors that could occur.

either way its hard to come up with a good coherent script without a blueprint to go off of.  Give us a blueprint and several placeholders with general descriptions of what you want.  If you just ask us to write up random things, then stitching it all together might make the result somewhat confusing.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 03, 2013, 06:30:15 PM
why not just put in a ton of place holders for the specific things, pastebin it all, and then people can pastebin back in the specific placeholder.  This way you can continue to write up the code and just fill in the placeholders when you get around to it.

something like (placeholder:good strip tease act).    then someone could do "(placeholder:good strip tease act): <stripper> performed an exotic dance for her customers.  Everyone loved the act and she left the whole room wanting more. "  Then write up a bunch of alternates following the same format or whatever and then pastebin it all.   You can then just copy and paste the content you want.  Not everyone is competent with python, so i feel that this method would be the best to minimize the amount of errors that could occur.

either way its hard to come up with a good coherent script without a blueprint to go off of.  Give us a blueprint and several placeholders with general descriptions of what you want.  If you just ask us to write up random things, then stitching it all together might make the result somewhat confusing.

^ What this guy said. Which is actually strangely similar to my previous post.

@dorkosaurus - I think the issue right now is we aren't sure what we want as of yet.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 03, 2013, 06:36:12 PM
I'm just wondering, is it possible to separate those nest if statements into single stat groups and concatenate the strings together after words?

I know this is just a very poorly written pseudo code, but bare with me.

Code: [Select]
if stripskill >= 120:

   text1 = "Best result!"
   tip1 = clients*chr.strip*best_strip_rate

elif stripskill >= 100:

   text1 = "Great result."
   tip1 = clients*chr.strip*great_strip_rate

elif stripskill >= 60:

   text1 = "Good result."
   tip1 = clients*chr.strip*good_strip_rate


elif stripskill >= 30:

   text1 = "Fair result."
   tip1 = clients*chr.strip*fair_strip_rate


else:

   text1 = "Yur grl sux."
   tip1 = clients*chr.strip*bad_strip_rate



if charisma >= 120:

   text2 = "Best result!"
   tip2 = int(clients*charisma*best_charisma_rate)

elif charisma >= 100:

   text2 = "Great result."
   tip2 = clients*charisma*great_charisma_rate

elif charisma >= 60:

   text2 = "Good result."
   tip2 = clients*charisma*good_charisma_rate

elif charisma >= 30:

   text2 = "Fair result."
   tip2 = clients*charisma*fair_charisma_rate

else:

   text2 = "Yur grl sux."
   tip2 = clients*charisma*bad_charisma_rate


#Then a spot for traits that may effect things (or not)

text3 = ""
tip3 = 0

if trait == 'Big Boobs':

   text3 = text3 + "  Her big boobs bounced with every step she took."
   tip3 = tip3 + big_boob_bonus

if trait == 'Mesmerizing Eyes':

   text3 = text3 + "  The eyes of her viewers couldn't stray from her dance."
   tip3 = tip3 + mez_eye_bonus


final_tip = tip1 + tip2 + tip3
final_text = text1 + text2 + text3 + "\nYou made " + final_tip + " from her dancing.\n(Stripskill " + tip1 +
    ", Charisma " + tip2 + ", Trait Bonus " + tip3 + ")\n You get to keep XX% of her earnings."

My reasoning behind this is thus, you could easily add traits, change tip rates, and adjust the text in the strings without having to change every single line when/if something changes. In other words, it would be much easier to manage.

That's a possibility but that would require even more texts, one for charisma and one for strip each? :D Also, there is no reason why traits cannot be added in the same way to current script. All things considered: this is prolly a better way. I'll take another look at it tomorrow but this will yield a better results even if more texts are required, thanks. I'll recode stripjob tomorrow and use this for rest of jobs as well.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 03, 2013, 06:44:29 PM
Just trying to make things easier for you in the long run. ;)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 03, 2013, 06:44:54 PM
^ What this guy said. Which is actually strangely similar to my previous post.

@dorkosaurus - I think the issue right now is we aren't sure what we want as of yet.

well when you guys figure out what you want make it known and give some clear instructions.  I'm sure there are people out there that would like to help but are totally lost in all this technical jargon.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 03, 2013, 06:55:34 PM
why not just put in a ton of place holders for the specific things, pastebin it all, and then people can pastebin back in the specific placeholder.  This way you can continue to write up the code and just fill in the placeholders when you get around to it.

something like (placeholder:good strip tease act).    then someone could do "(placeholder:good strip tease act): <stripper> performed an exotic dance for her customers.  Everyone loved the act and she left the whole room wanting more. "  Then write up a bunch of alternates following the same format or whatever and then pastebin it all.   You can then just copy and paste the content you want.  Not everyone is competent with python, so i feel that this method would be the best to minimize the amount of errors that could occur.

either way its hard to come up with a good coherent script without a blueprint to go off of.  Give us a blueprint and several placeholders with general descriptions of what you want.  If you just ask us to write up random things, then stitching it all together might make the result somewhat confusing.

Fair enough, I'll leave texts to the most basic form from now on and make a pastebin. There weren't any people to make pastebins for actually, so I never even considered it.

I am taking a break from serious coding for two - three days but I'll try to find time to separate conditions per stat tomorrow. The plan is to finish strip job for all types of characters this week (with contract bar for free girls to share tips between girl/player and a relay to whore/bar jobs) and start on bar/service where the main income from club is supposed to come from.

Going to get some sleep to get an early jump tomorrow.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 03, 2013, 07:03:45 PM
well when you guys figure out what you want make it known and give some clear instructions.  I'm sure there are people out there that would like to help but are totally lost in all this technical jargon.

Yeah, this was does present a very real challenge thou. If girl is pretty but has 0 skills, there will be one line of text praising her and another burring her underground for sucking (I would REALLY like to avoid generic crap like 'Her charisma was high, they really liked her' + 'Her skills in stripping leave a lot to be desired'). After traits are added, text could end up looking really confusing. It is cleaner and offers better CODE readability but I am still not 100% convinced it the way to go, because artistic (real) writing with two stat dependencies seems almost impossible to me if approached solely per stat (especially if we offer several texts randomly chosen for each if/elif condition same as for whore job)... but it's getting really late so I cannot think straight right now.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 03, 2013, 07:48:48 PM
Ok, let's assume there are multiple major stats that affect an event. one is 1 and the other 98. We should give the event a 'final score' of sorts, which would determine the ending part of the text.

And since the tips are varied, it should even out properly.

But you're right, we wouldn't want:

Quote
'Her charisma was high, they really liked her' + 'Her skills in stripping leave a lot to be desired')

So, we'll try and want to get it something like:

'Her charisma was high' + ', but ' + 'her skills in stripping were poor' + ', so all in all it was a decent performance.'

I think it best to try and keep it as simple as possible.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 04, 2013, 03:08:50 AM
Ok, let's assume there are multiple major stats that affect an event. one is 1 and the other 98. We should give the event a 'final score' of sorts, which would determine the ending part of the text.

And since the tips are varied, it should even out properly.

But you're right, we wouldn't want:

So, we'll try and want to get it something like:

'Her charisma was high' + ', but ' + 'her skills in stripping were poor' + ', so all in all it was a decent performance.'

I think it best to try and keep it as simple as possible.

Which is a lot easier to achieve comparing two stats at the same time, not separately since telling the game when to put 'but', when to use 'and' and etc. will make code 'messy' once again:

Code: [Select]
if chr.charisma > 120:
    txt = txt + 'Her charisma was high'
    if chr.strip <= 30:
        txt = txt + ' ,but her skills in stripping were poor so all in all it was a decent performance'


I doubt that it is possible to create 'clean' code for multiple stat dependencies. Also if we use 'and' in conditions and not two 'if' we can use one unbroken string making it A LOT EASIER for writers with skills to create texts like one I've attached (from Otherworld) instead of 'Low charisma - High Libido - Average result' robotic responses.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 04, 2013, 08:32:37 AM
If you think that's best, then that sounds good to me. I was just concerned that writers would be confused.

But also, how many clusters of nested if statements are needed if that's done?
It seems like there would be 5 per 5 (5x5) or 25 unique outcomes

1. >120/>120  2. >120/>90 3. >120/>60 4. >120/>30 5. >120/<=30
1. >90/>120  2. >90/>90 3. >90/>60 4. >90/>30 5. >90/<=30
1. >60/>120  2. >60/>90 3. >60/>60 4. >60/>30 5. >60/<=30
1. >30/>120  2. >30/>90 3. >30/>60 4. >30/>30 5. >30/<=30
1. <=30/>120  2. <=30/>90 3. <=30/>60 4. <=30/>30 5. <=30/<=30

But it would need considerably more outcomes if there were 2 or 3 possible traits that you want text for as well. (because it would change to 25x2 or 25x3 for unique responses, unless the trait responses were separate) and I imagine this will be per job. whoring, stripping, waitressing, etc.

Don't get me wrong, I think it would be pretty neat if there were this many possible responses. It would seem more personalized and one would see less of the same ones over and over.


Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 04, 2013, 01:40:27 PM
what about having the outcome be partitioned off and the writing could be made generic.

Something like

The customer was completely enamored by her stunning looks. <insert section commenting about specific perks>

(section on the act itself) <name> greeted the group of customers and began her dance. She teased the room with her clothes while slowly stripping it away.

Her performance was sloppy and the customer stormed off in anger.


Something like this would allow for a couple of generic phrases for each section and they could be stitched together while still maintaining coherence.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 04, 2013, 01:57:36 PM
Something like this would allow for a couple of generic phrases for each section and they could be stitched together while still maintaining coherence.
I agree. Unique text for every trait combination is ambitious, but nearly impracticable idea. We'll probably have WM3 and Alkion completely ready for playing sooner than we'll write such amount of text.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 04, 2013, 02:43:21 PM
So who the hell suggested 25x texts per trait and where??? I thought we were talking about combined stat dependencies vs separate stat dependencies?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 04, 2013, 05:43:42 PM
I'd like to comment on the "get a description for a job depending on several conditions" discussion.

Some of you probably know Otherworld. It's main developer, Daisy_Strike, created an XML system from scratch that allows an arbitrary number of conditions to be checked when selecting texts. Usually, it starts with cases that require strict conditions to be met, loosens those up and ends with a text requiring no passed condition at all. I like the concept, but this system is rather complicated to learn, somewhat difficult to read and debug and surely was difficult to code.

A complicated job in Otherworld's XML system looks like this. Please note that this code defines the effects of the job and returns a keyword that defines the description this job should get:
Code: [Select]
<root>
    <variable     label = "sexskill"  vvar = "0"/>
    <variable     label = "nonpussyskill"  vvar = "0"/>
    <variable     label = "whoreskill"  vvar = "0"/>
    <evemath    label = "sexskill" arg1 = "#storal" math12="add" arg2="#stanal" math13="add" arg3="stvaginal" math14="div" arg4="3" reroll="sexskill"/>
    <evemath    label = "nonpussyskill" arg1="#storal" math12="add" arg2="#stanal" math13="div" arg3="2" reroll="nonpussyskill"/>
    <evemath    label = "whoreskill" arg1 = "#entertaining" math12="add" arg2="#presentation" math13="add" arg3="#stamina" math14="div" arg4="3" reroll="whoreskill"/>

    <!-- Send in is whorejob -->
    <eve
        label            = "whorejob"
        text            = ""
    >
        <eveeffectcheck  label = "sick" exist = "true"/>
        <evepost     label = "sickjob"/>
    </eve>
   
    <!-- does not have class whore, wears chastity belt, low skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobChastityBad"
    >
        <!-- requirements -->
        <evecheck    label = "#class2" check = "ne" vvar = "whore" />
        <evecheck    label = "#class1" check = "ne" vvar = "whore" />
        <eveitemcheck   label = "chastity belt" check = "true" girl = "whatgirl" />
        <evecheck    label = "nonpussyskill" check = "lt" vvar = "advancedskillmin" />
        <!-- changes -->
        <evechange     label = "#gold" mult = "nonpussyskill" percent = ".1" round = "0" reroll="nonpussyskill"/>
        <evechange    label = "#lust" vvar = "2" />
        <evechange    label = "#happiness" vvar = "-1" />
        <evechangesex    label = "blowjob" vvar = "1" />
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <!-- results -->
        <evepost    label = "classlearnwhore" />
        <evepost     label = "sickcheck"/>
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
       
    </eve>
   
    <!-- does not have class whore, wears chastity belt, high skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobChastityGood"
    >
        <!-- requirements -->
        <evecheck    label = "#class2" check = "ne" vvar = "whore" />
        <evecheck    label = "#class1" check = "ne" vvar = "whore" />
        <eveitemcheck    label = "chastity belt" check = "true" girl = "whatgirl" />
        <!-- changes -->
        <evechange     label = "#gold" mult = "nonpussyskill" percent = ".3" round = "0" reroll="nonpussyskill"/>
        <evechange    label = "#lust" vvar = "2" />
        <evechange    label = "#happiness" vvar = "-1" />
        <evechangesex    label = "blowjob" vvar = "#rand2" />
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <!-- results -->
        <evepost    label = "classlearnwhore" />
        <evepost     label = "sickcheck"/>
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
       
    </eve>
   
    <!-- does not have class whore, bad customer -->
    <eve
        label            = "whorejob"
        text            = "whorejobRookieRough"
    >
        <!-- requirements -->
        <evecheck    label = "#class2" check = "ne" vvar = "whore" />
        <evecheck    label = "#class1" check = "ne" vvar = "whore" />
        <evecheck    label = "#rand100" check = "lt" vvar = "34"/>
        <!-- changes -->
        <evechange     label = "#gold" mult = "sexskill" percent = ".15" round = "0" reroll="sexskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#happiness" vvar = "-1" />
        <evechangesex    label = "fucking" vvar = "1" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechangesex    label = "blowjob"      vvar = "1" iflabel="#rand5" ifcheck="gt" ifvvar="3"/>
        <evechangesex    label = "anal"      vvar = "1" iflabel="#rand5" ifcheck="eq" ifvvar="3"/>
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <evechange    label = "#health"  vvar = "-10"/>
        <!-- results -->
        <evepost    label = "classlearnwhore" />
        <evepost     label = "virgincheck" />
        <evepost     label = "pregnancycheck" />
        <evepost     label = "sickcheck"/>
        <evepost    label = "stdsexrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>
   
    <!-- does not have class whore, low skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobRookieBad"
    >
        <!-- requirements -->
        <evecheck    label = "#class2" check = "ne" vvar = "whore" />
        <evecheck    label = "#class1" check = "ne" vvar = "whore" />
        <evecheck    label = "sexskill" check = "lt" vvar = "advancedskillmin" />
        <!-- changes -->
        <evechange     label = "#gold" mult = "sexskill" percent = ".15" round = "0" reroll="sexskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#happiness" vvar = "-1" />
        <evechangesex    label = "fucking" vvar = "1" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechangesex    label = "blowjob"      vvar = "1" iflabel="#rand5" ifcheck="gt" ifvvar="3"/>
        <evechangesex    label = "anal"      vvar = "1" iflabel="#rand5" ifcheck="eq" ifvvar="3"/>
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <!-- results -->
        <evepost    label = "classlearnwhore" />
        <evepost     label = "virgincheck" />
        <evepost     label = "sickcheck"/>
        <evepost     label = "pregnancycheck" />
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>

    <!-- does not have class whore, high skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobRookieGood"
    >
        <!-- requirements -->
        <evecheck    label = "#class2" check = "ne" vvar = "whore" />
        <evecheck    label = "#class1" check = "ne" vvar = "whore" />
        <!-- changes -->
        <evechange     label = "#gold" mult = "sexskill" percent = ".35" round = "0" reroll="sexskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#happiness" vvar = "-1" />
        <evechangesex    label = "fucking" vvar = "#rand2" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechangesex    label = "blowjob"      vvar = "1"/>
        <evechangesex    label = "anal"      vvar = "#rand2_2" iflabel="#rand5" ifcheck="eq" ifvvar="3"/>
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <!-- results -->
        <evepost    label = "classlearnwhore" />
        <evepost     label = "virgincheck" />
        <evepost     label = "sickcheck"/>
        <evepost     label = "pregnancycheck" />
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>
   
    <!-- bad customer -->
    <eve
        label            = "whorejob"
        text            = "whorejobRough"
    >
        <!-- requirements -->
        <evecheck    label = "#rand100" check = "gt" vvar = "#entertaining"/>
        <evecheck    label = "#rand100" check = "gt" vvar = "66"/>
        <!-- changes -->
        <evechange     label = "#gold" mult = "whoreskill" percent = ".3" round = "0" reroll="whoreskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <evechange    label = "#health"  vvar = "-10"/>
        <evechangesex    label = "fucking" vvar = "1" iflabel="#rand5" ifcheck="eq" ifvvar="3"/>
        <evechangesex    label = "blowjob"      vvar = "1" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechangesex    label = "anal"      vvar = "#rand2"/>
        <evechange    label = "#presentation" vvar = "1" />
        <evechange    label = "#stamina" vvar = "2" />
        <!-- results -->
        <evepost     label = "virgincheck" />
        <evepost     label = "sickcheck"/>
        <evepost     label = "pregnancycheck" />
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>
   
    <!-- low skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobBad"
    >
        <!-- requirements -->
        <evecheck    label = "whoreskill" check = "lt" vvar = "advancedskillmin" />
        <!-- changes -->
        <evechange     label = "#gold" mult = "whoreskill" percent = ".3" round = "0" reroll="whoreskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <evechangesex    label = "fucking" vvar = "1" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechangesex    label = "blowjob"      vvar = "1"/>
        <evechangesex    label = "anal"      vvar = "1" iflabel="#rand5" ifcheck="eq" ifvvar="3"/>
        <evechange    label = "#entertaining" vvar = "1" />
        <evechange    label = "#presentation" vvar = "1" />
        <evechange    label = "#stamina" vvar = "1" />
        <!-- results -->
        <evepost     label = "virgincheck" />
        <evepost     label = "sickcheck"/>
        <evepost     label = "pregnancycheck" />
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>

    <!-- high skill -->
    <eve
        label            = "whorejob"
        text            = "whorejobGood"
    >
        <!-- changes -->
        <evechange     label = "#gold" mult = "whoreskill" percent = ".6" round = "0" reroll="whoreskill"/>
        <evechange    label = "#lust" vvar = "-2" />
        <evechange    label = "#health" check = "sub" vvar = "fatiguework"/>
        <evechangesex    label = "fucking" vvar = "#rand2" iflabel="#rand5" ifcheck="lt" ifvvar="5"/>
        <evechangesex    label = "blowjob"      vvar = "1"/>
        <evechangesex    label = "anal"      vvar = "#rand2_2" iflabel="#rand5" ifcheck="lt" ifvvar="3"/>
        <evechange    label = "#entertaining" vvar = "1" />
        <evechange    label = "#presentation" vvar = "1" />
        <evechange    label = "#stamina" vvar = "1" />
        <!-- results -->
        <evepost     label = "virgincheck" />
        <evepost     label = "sickcheck"/>
        <evepost     label = "pregnancycheck" />
        <evepost    label = "stdoralrandom" />
        <evepost     label = "classlearnblowjob" />
        <evepost     label = "classlearnfucking" />
        <evepost     label = "classlearnanal" />
    </eve>
   
    <!--- needs to be completed and text added -->
</root>


At least one of you knows my own pet project, Pytherworld. Here, job descriptions are also selected via an arbitrary number of checked conditions. These job scripts are implemented as Python functions. Basic Python syntax is at least as easy to learn as Otherworld's XML system, is easier to read and debug and has already been implemented and documented.

A complicated job in Pytherworld looks like this. Again, this code defines the effects of the job and returns a keyword that defines the description this job should get:
Code: [Select]
def whoring():
    # calculate necessary variables
    rand100 = randint(1,100)
    rand5 = randint(1,5)
    rand2 = randint(1,2)
    rand2_2 = randint(1,2)
    sexskill = WORKER.oral + WORKER.anal + WORKER.vaginal
    if WORKER.has_class("whore"):
        whoreskill = WORKER.entertaining + WORKER.presentation + WORKER.stamina
    else:
        whoreskill = 0
    # does not have class whore, bad customer
    if rand100 < 34 and not WORKER.has_class("whore"):
        PLAYER.gold += int(sexskill * 0.15)
        WORKER.lust -= 2
        WORKER.happiness -= 1
        if rand5 < 3: WORKER.vaginal += 1
        if rand5 == 3: WORKER.oral += 1
        if rand5 > 3: WORKER.anal += 1
        WORKER.fatigue += (FATIGUEWORK + 10)
        learn_class("whore")
        #TODO do virgin check
        #TODO do sick check * 2
        return "whorejobRookieRough"
    #  does not have class whore, low skill
    elif sexskill < ADVANCEDSKILLMIN and not WORKER.has_class("whore"):
        PLAYER.gold += int(sexskill * 0.15)
        WORKER.lust -= 2
        WORKER.happiness -= 1
        if rand5 < 3: WORKER.vaginal += 1
        if rand5 == 3: WORKER.oral += 1
        if rand5 > 3: WORKER.anal += 1
        WORKER.fatigue += FATIGUEWORK
        learn_class("whore")
        #TODO do virgin check
        #TODO do sick check
        return "whorejobRookieBad"
    # does not have class whore, high skill
    elif not WORKER.has_class("whore"):
        PLAYER.gold += int(sexskill * 0.35)
        WORKER.lust -= 2
        WORKER.happiness -= 1
        if rand5 < 3: WORKER.vaginal += rand2
        WORKER.oral += 1
        if rand5 == 3: WORKER.anal += rand2
        WORKER.fatigue += FATIGUEWORK
        learn_class("whore")
        #TODO do virgin check
        #TODO do sick check
        return "whorejobRookieGood"
    # bad customer
    elif rand100 > WORKER.entertaining and rand100 > 66:
        PLAYER.gold += int(whoreskill * 0.35)
        WORKER.lust -= 2
        if rand5 == 3: WORKER.vaginal += 1
        if rand5 < 3: WORKER.oral += 1
        WORKER.anal += rand2
        WORKER.presentation += 1
        WORKER.stamina += 2
        WORKER.fatigue += (FATIGUEWORK + 10)
        #TODO do virgin check
        #TODO do sick check * 2
        return "whorejobRough"
    # low skill
    elif whoreskill < ADVANCEDSKILLMIN:
        PLAYER.gold += int(whoreskill * 0.35)
        WORKER.lust -= 2
        if rand5 < 3: WORKER.vaginal += 1
        WORKER.oral += 1
        if rand5 == 3: WORKER.anal += 1
        WORKER.entertaining += 1
        WORKER.presentation += 1
        WORKER.stamina += 1
        WORKER.fatigue += (FATIGUEWORK)
        #TODO do virgin check
        #TODO do sick check
        return "whorejobBad"
    # high skill
    else:
        PLAYER.gold += int(whoreskill * 0.6)
        WORKER.lust -= 2
        if rand5 < 5: WORKER.vaginal += rand2
        WORKER.oral += 1
        if rand5 < 3: WORKER.anal += rand2_2
        WORKER.entertaining += 1
        WORKER.presentation += 1
        WORKER.stamina += 1
        WORKER.fatigue += (FATIGUEWORK)
        #TODO do virgin check
        #TODO do sick check
        return "whorejobGood"

Both systems are more complicated and more powerful than your current system and both solve the problem you are discussing here.

@Xela
The __setattr__ and __getattr__ methods of Pytherworld's Character class exist to keept the code in these job scripts as simple as this:
want to check if the working character is happy? write "if WORKER.happiness > 75:"
want to increase the fatigue of the working character by 2? write "WORKER.fatigue += 2"
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 04, 2013, 09:19:21 PM
At least one of you knows my own pet project, Pytherworld.

Here, here :)



Both systems are more complicated and more powerful than your current system and both solve the problem you are discussing here.

BS by the way, it isn't more powerful and only maybe more complicated.

Note that for all that code you have 6 possible outcomes in a game where there are no traits, no social status and you simply add stats into a single variable to check against that, limiting options for responses. Otherwise, Girls in OW can have two specializations instead of one, WM version of PytFall might top that, SimBro version is not supposed to by design. OW approach doesn't decrease workload, at best it makes code better readable.

As for power there is not one damn thing you can swing with that approach that cannot be done with strip method of Brothel class, simply because it has/can gain access to every variable in the game and RenPy engine (Remember that single namespace everything runs at?). Powerwise that cannot be beaten, it is as simple as that. I never wanted job texts to be moddable so returning a string: return "whorejobRookieRough" That would in the end determine what text to put on display doesn't make much sense in Pytfall, also I expect that there is a lot less control over the content of those texts in PW than in PytFall.


@Xela
The __setattr__ and __getattr__ methods of Pytherworld's Character class exist to keept the code in these job scripts as simple as this:
want to check if the working character is happy? write "if WORKER.happiness > 75:"
want to increase the fatigue of the working character by 2? write "WORKER.fatigue += 2"


As opposed to:

"if chr.happiness > 75:"

and

"chr.mod('fatigue', 2) or chr.fatigue += 2"?

You can add error checking to __setattr__ and __getattr__ and set exceptions, that might be an advantage. There might be a way to solve items issue with this as well...



In any case, I did otherwise manage to adapt WM's approach of House Percentage, creating my first bar in RenPy! :) This is required for free girl's tips/job payout.

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Armegetton on February 04, 2013, 09:43:25 PM
As far as the 25 needed lines, I took this...

Which is a lot easier to achieve comparing two stats at the same time, not separately since telling the game when to put 'but', when to use 'and' and etc. will make code 'messy' once again:

Code: [Select]
if chr.charisma > 120:
    txt = txt + 'Her charisma was high'
    if chr.strip <= 30:
        txt = txt + ' ,but her skills in stripping were poor so all in all it was a decent performance'


I doubt that it is possible to create 'clean' code for multiple stat dependencies. Also if we use 'and' in conditions and not two 'if' we can use one unbroken string making it A LOT EASIER for writers with skills to create texts like one I've attached (from Otherworld) instead of 'Low charisma - High Libido - Average result' robotic responses.

and inferred that you wanted 2 checks in a row to get 1 text, to avoid robotic responses. I then extrapolated the data assuming you wanted 5 levels or degrees of skill, which is where I got 25 from.

If I'm mistaken or misunderstood, I apologize.


Though, I do have to say, I like how clean and easy to read rudistoned's code is.  Because even I could figure out what was going on there, however I didn't realize the texts in that game were mod-able or that there were really only 6 possible outcomes for that job. (though I suppose I did learn that Xela doesn't want the texts to be moddable in this current one)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 04, 2013, 09:56:05 PM
Though, I do have to say, I like how clean and easy to read rudistoned's code is.  Because even I could figure out what was going on there, however I didn't realize the texts in that game were mod-able or that there were really only 6 possible outcomes for that job. (though I suppose I did learn that Xela doesn't want the texts to be moddable in this current one)

 Yeah, I went through most of Pytherworld, code structure does look lovely!

 I don't want those texts to be 'easily' moddable, I will simply add all good/great texts that writers will come up with as options to be randomly chosen from. Otherwise, all events, quests and interactions will be moddable in Pytfall.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 05, 2013, 12:58:57 AM
Yeah, I went through most of Pytherworld, code structure does look lovely!

 I don't want those texts to be 'easily' moddable, I will simply add all good/great texts that writers will come up with as options to be randomly chosen from. Otherwise, all events, quests and interactions will be moddable in Pytfall.

well when ever you get around to it, write up a format on what you want, and give some clear instructions on what you would like.  Then people that can help could just follow that guideline and pastebin you stuff when we feel like it.   Don't feel as if you need to slow down writing up your code and stuff due to missing written content, that's what other people are here for and we're willing to help if you ask.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 02:14:57 AM
well when ever you get around to it, write up a format on what you want, and give some clear instructions on what you would like.  Then people that can help could just follow that guideline and pastebin you stuff when we feel like it.   Don't feel as if you need to slow down writing up your code and stuff due to missing written content, that's what other people are here for and we're willing to help if you ask.

Thanks, I'll try to get it done by the end of the week (two weeks tops), at least to the point where I can make a decent pastebin (I've already registered for an account).

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: dorkosaurus on February 05, 2013, 02:45:11 AM
Thanks, I'll try to get it done by the end of the week (two weeks tops), at least to the point where I can make a decent pastebin (I've already registered for an account).

you should update the first post with the info when you get around to it, that way people can just check back periodically and post their pastebins when they feel like it.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 05, 2013, 03:48:57 AM
BS by the way, it isn't more powerful and only maybe more complicated.
I apologize, Pytherworld's job scripts are indeed less powerful than PyTFalls approach since they can only manipulate those parts of the game the game exposes to them. Just remember, with great power comes great responsibility.

Note that for all that code you have 6 possible outcomes in a game where there are no traits, no social status and you simply add stats into a single variable to check against that, limiting options for responses.
6 possible outcomes of job descriptions, that's true. The main purpose of this job script is to modify the girl's stats based on what she did and how well she did it. Also the customer has a little influence on the outcome. That code was never meant to produce a large variety of job description outcomes. Instead, it produces a large variety of stat increases, so you don't know exactly what a girl will learn during one job.

Pytherworld does have social status, implemented via social game classes, but it's not used much currently.
Pytherworld does not have traits, but I don't see the need for them currently, although they are easy to add. Matching images to how girls look is accomplished via Pytherworlds intricate tagging system. In that context, your trait and my tag are pretty much the same - a keyword describing looks.

I checked against a single added number because I chose too. However, doing stuff like the following is perfectly possible too. It's just Python code, after all.
Code: [Select]
if (char.has_class("stripper") or
    char.charisma > 75 and char.happiness> 75) or
    char.dancing > 75):

As for power there is not one damn thing you can swing with that approach that cannot be done with strip method of Brothel class
Well, what about moddability ;-)
There's also  readability, ease of debugging and maintaining the code, but that's just future me being lazy I suppose.



 
I expect that there is a lot less control over the content of those texts in PW than in PytFall.
You are right. I never put work into the descriptions so far, I just load them from Otherworlds XML and display them. Currently, there is no control over the contents at all, except for statically editing the XML files of course.



As opposed to:

"chr.mod('fatigue', 2) or chr.fatigue += 2"?
Yes. Calling the mod method can achieve the same things but is not as easy to understand,  read, and write.
Adding 2 to the fatigue attribute can not check if this would raise the attribute above it's maximum, or do anything else that needs to be done if this attribute changes, unless you modify the __setattr__ method of chr's type (or you turn fatigue into a property, but don't do that, I've been there and it wasn't pretty).

Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 06:02:08 AM
Yes. Calling the mod method can achieve the same things but is not as easy to understand,  read, and write.
Adding 2 to the fatigue attribute can not check if this would raise the attribute above it's maximum, or do anything else that needs to be done if this attribute changes, unless you modify the __setattr__ method of chr's type (or you turn fatigue into a property, but don't do that, I've been there and it wasn't pretty).

Yeah, not to modify behavior for sGirl class might be a mistake after all. Is it possible to change it only for stats? Like:

def __setattr__(self):
   if stat in self.statslist:
        #One behavior, it should be possible to solve items problem, add error checking and make mod function obsolete with this as well. But:
   else:
        #For all other attributes of the class, default behavior is preferred, I can't tell how to have it jump through hoops this way, if you have the answer, I would appreciate that so I won't have to search net for it.

PS: And I wasn't planning to mess with decorators  :D
       

Pytherworld does have social status, implemented via social game classes, but it's not used much currently.
Pytherworld does not have traits, but I don't see the need for them currently, although they are easy to add. Matching images to how girls look is accomplished via Pytherworlds intricate tagging system. In that context, your trait and my tag are pretty much the same - a keyword describing looks.

Had no idea about Social classes. Yeah, paperdoll... that is remarkably easy to achieve with RenPy, I recall there even being a ready to use code for that somewhere but it would be troublesome to create dolls for a few dozens characters planned for original release.

Traits also describe girl's mind and behavior, not just looks. It'll all depend on how much code is written for that.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 05, 2013, 01:09:22 PM
In any case, I did otherwise manage to adapt WM's approach of House Percentage, creating my first bar in RenPy!
That reminds me, this bar doesn't need such high sensitivity, just like fee for an entrance. I think bar with step 10 or at least 5 would be better, if you have time for such purely cosmetic things.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 01:41:24 PM
That reminds me, this bar doesn't need such high sensitivity, just like fee for an entrance. I think bar with step 10 or at least 5 would be better, if you have time for such purely cosmetic things.

 Well, it took me a while to figure out bars but they are very easy to understand as soon as you implement them once correctly (if RenPy documentation has a weakness, it's lack of practical examples).

 I'll do that next time I see code for that screen.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 05, 2013, 02:11:34 PM
@Xela
Yes, it is definitely possible to keep the default behaviour of the character class for regular attributes and modify it for stats. That's what I did in Pytherworld. The most simple way to do it is like this:
Code: [Select]
class Girl(object):
    def __init__(self):
        self.__dict__["stats"] = {"health":100, "fatigue":0, "charisma":5}
       
    def __getattr__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        if name in self.stats:
            # get a gamestat   
            val = self.stats[name]
        elif name in self.__dict__:
            # get a regular attribute of this class   
            val = self.__dict__[name]
        else:
            # raise an error if name is neither a gamestat nor an attribute   
            msg = "'%s' is neither a gamestat nor an attribute of %s"
            raise AttributeError(msg % (name, self.__class__.__name__))
        return val
           
    def __setattr__(self, name, value):
        '''Assigns a value to a game attribute or a python attribute.
        '''
        if name in self.stats:
            # set a gamestat   
            self.stats[name] = value
        else:
            # set a regular attribute of this class 
            self.__dict__[name] = value

The code above works, so you could drop it into the sGirl class if you want to. If you do, just make sure the definition of the stats dictionary is the first line in the __init__ function, or you'll get infinite recursion.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 02:36:06 PM
@Xela
Yes, it is definitely possible to keep the default behaviour of the character class for regular attributes and modify it for stats. That's what I did in Pytherworld. The most simple way to do it is like this:
Code: [Select]
class Girl(object):
    def __init__(self):
        self.__dict__["stats"] = {"health":100, "fatigue":0, "charisma":5}
       
    def __getattr__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        if name in self.stats:
            # get a gamestat   
            val = self.stats[name]
        elif name in self.__dict__:
            # get a regular attribute of this class   
            val = self.__dict__[name]
        else:
            # raise an error if name is neither a gamestat nor an attribute   
            msg = "'%s' is neither a gamestat nor an attribute of %s"
            raise AttributeError(msg % (name, self.__class__.__name__))
        return val
           
    def __setattr__(self, name, value):
        '''Assigns a value to a game attribute or a python attribute.
        '''
        if name in self.stats:
            # set a gamestat   
            self.stats[name] = value
        else:
            # set a regular attribute of this class 
            self.__dict__[name] = value

The code above works, so you could drop it into the sGirl class if you want to. If you do, just make sure the definition of the stats dictionary is the first line in the __init__ function, or you'll get infinite recursion.

Blah, I didn't know about infinite recursion :( So basically if I want to use more dictionaries in __setattr__ and __getattr__ like for max and min stats and another one containing a second variable that will keep track of stat values that are added by items and traits, I need to create a 'matrix' dictionary (dict or dicts?) as first line of __init__?

Or it might be simpler to add more key:value entries, like maxhealth=100, minhealth=0, modhealth=30, health=100.

Also a number of Structure methods will be rendered obsolete:

        def has(self,par): return self.__dict__.has_key(par)
        def set(self,par,value): self.__dict__[par] = value
        def mod(self,par,value): self.__dict__[par] += value

And those were used in several places if I recall it correctly.

Maybe a slightly different approach:

Code: [Select]
class Girl(object):
    def __init__(self):
        self.__dict__["stats"] = {"List":["fatigue","charisma","etc"]}
       
    def __getattr__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        if name in self.stats['List']:
            # get a gamestat   
            val = self.__dict__[name]
            # but here we can do cool stuff to stats!
        elif name in self.__dict__:
            # get a regular attribute of this class   
            val = self.__dict__[name]
        else:
            # raise an error if name is neither a gamestat nor an attribute   
            msg = "'%s' is neither a gamestat nor an attribute of %s"
            raise AttributeError(msg % (name, self.__class__.__name__))
        return val

Will this code cause infinite recursions?
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 05, 2013, 03:18:10 PM
I'm not really sure what the problem is you are describing, but maybe you will solve it yourself if I explain a litte bit what the code above does.

Basically, Python syntax is just a nice way to call all those special methods. Writing
Code: [Select]
char.health = 100 is equivalent to
Code: [Select]
char.__setattr__("health", 100)
Likewise, writing 
Code: [Select]
current_health = char.health is equivalent to
Code: [Select]
current_health = char.__getattr__("health")
So, keeping that in mind, look at the constructor (__init__ method) of sGirl. I'm sure, somewhere you define an attribute, eg.
Code: [Select]
self.name = "unnamed"which Python will translate to
Code: [Select]
self.__setattr__("name", "unnamed")
This call to __setattr__ will execute the line
Code: [Select]
if name in self.stats: which Python will translate to
Code: [Select]
if name in self.__getattr__("stats")
Now __getattr__ is called, which also tries to access the stats attribute in the line
Code: [Select]
if name in self.stats:, triggering yet another call to __getattr__, which also tries to access the stats attribute, triggering yet another call to __getattr__, ...
et voilà, infinite recursion.

If however the first line of the constructor defines the stats attribute by accessing the internal dictionary of the instance, self.__dict__, subsequent attribute access via self.stats will work. This works because self.__dict__ is NOT translated to self.__getattr__("__dict__"), but instead just returns the internal dictionary of the instance, which contains its namespace.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 03:28:13 PM
I'm not really sure what the problem is you are describing, but maybe you will solve it yourself if I explain a litte bit what the code above does.

Basically, Python syntax is just a nice way to call all those special methods. Writing
Code: [Select]
char.health = 100 is equivalent to
Code: [Select]
char.__setattr__("health", 100)
Likewise, writing 
Code: [Select]
current_health = char.health is equivalent to
Code: [Select]
current_health = char.__getattr__("health")
So, keeping that in mind, look at the constructor (__init__ method) of sGirl. I'm sure, somewhere you define an attribute, eg.
Code: [Select]
self.name = "unnamed"which Python will translate to
Code: [Select]
self.__setattr__("name", "unnamed")
This call to __setattr__ will execute the line
Code: [Select]
if name in self.stats: which Python will translate to
Code: [Select]
if name in self.__getattr__("stats")
Now __getattr__ is called, which also tries to access the stats attribute in the line
Code: [Select]
if name in self.stats:, triggering yet another call to __getattr__, which also tries to access the stats attribute, triggering yet another call to __getattr__, ...
et voilà, infinite recursion.

If however the first line of the constructor defines the stats attribute by accessing the internal dictionary of the instance, self.__dict__, subsequent attribute access via self.stats will work. This works because self.__dict__ is NOT translated to self.__getattr__("__dict__"), but instead just returns the internal dictionary of the instance, which contains its namespace.

I knew all of that but:

        def has(self,par): return self.__dict__.has_key(par)
        def set(self,par,value): self.__dict__[par] = value
        def mod(self,par,value): self.__dict__[par] += value

Accesses classes namespace directly, does it not? So __getattr__, __setattr__ is bypassed here, also in your code, stats and their values are no longer in __dict__, they are in in __dict__['stats'] which presents a problem. Correct me if I am wrong here.

It will prolly be more useful if you explain what causes recursion and I'll try to find a way to code what I need bypassing that.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 05, 2013, 03:39:46 PM
Quote
It will prolly be more useful if you explain what causes recursion
I actually just did in my previous post...

Will this code cause infinite recursions?
Easiest way to find out is copy&paste the class definition into IDLE (comes preinstalled with your Python distribution, except for some Linux distris) and create an instance of the class ;-)
Without defining a __setattr__ it's hard, but still possible, to cause infinite recursion.


Concerning the Structure methods:
These methods should not be there anyway because reimplementing the wheel is bad and Python already provides nice mechanisms to do that.

Instead of char.has(par) write hasattr(char, par)
Instead of char.set(par, value) write setattr(char, par, value), or just char.dancing = value if you don't need dynamic access
Instead of char.mod(par, value) write char.dancing += value

If you often need to add a value to a class attribute and you only know the name of the attribute at runtime (dynamic attribute access), you can reimplement the mod method as follows:
Code: [Select]
def mod(self,par,value):
    oldval = getattr(self, par)
    newval = oldval += value
    setattr(self, par, newval)
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 05, 2013, 04:00:25 PM
I actually just did in my previous post...
Easiest way to find out is copy&paste the class definition into IDLE (comes preinstalled with your Python distribution, except for some Linux distris) and create an instance of the class ;-)
Without defining a __setattr__ it's hard, but still possible, to cause infinite recursion.


Concerning the Structure methods:
These methods should not be there anyway because reimplementing the wheel is bad and Python already provides nice mechanisms to do that.

Instead of char.has(par) write hasattr(char, par)
Instead of char.set(par, value) write setattr(char, par, value), or just char.dancing = value if you don't need dynamic access
Instead of char.mod(par, value) write char.dancing += value

If you often need to add a value to a class attribute and you only know the name of the attribute at runtime (dynamic attribute access), you can reimplement the mod method as follows:
Code: [Select]
def mod(self,par,value):
    oldval = getattr(self, par)
    newval = oldval += value
    setattr(self, par, newval)

Right, thanks for explanations, I'll simply do the thing I've always done: Trial and Error. I had a messed up day so I barely have strength to type, I'll play with this today and see if I can get it done tomorrow.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 06, 2013, 07:58:13 PM
Ok... update time: Nothing has changed in the game...  ???

Yet, Sh!tzlloadz had changed in game code due to this:

Code: [Select]
        def __getattr__(self, key):
            if key in StatList:
                if self.__dict__['stats'][key] + self.__dict__['imod'][key] > self.__dict__['max'][key]:
                    val = self.__dict__['max'][key]
                elif self.__dict__['stats'][key] + self.__dict__['imod'][key] < self.__dict__['min'][key]:
                    val = self.__dict__['min'][key]
                else:
                    val = self.__dict__['stats'][key] + self.__dict__['imod'][key]
                   
            else:
                msg = "'%s' is neither a gamestat nor an attribute of %s"
                raise AttributeError(msg % (key, self.__class__.__name__))
            return val
           
        def __setattr__(self, key, value):
            if key in StatList:
                if self.__dict__['imod'][key] + value > self.__dict__['max'][key]:
                    if value > self.__dict__['max'][key]:
                        self.__dict__['stats'][key] = self.__dict__['max'][key]
                        return
                       
                if value < 0:
                    if self.__dict__['imod'][key] + value < self.__dict__['min'][key]:
                        if value < self.__dict__['min'][key]:
                            self.__dict__['stats'][key] = self.__dict__['min'][key]
                            return

                self.__dict__['stats'][key] = value
 
            else:
                self.__dict__[key] = value

As a result, decent amount of code issues had to be traced down and repaired (I even got 'Windows' Error (That I never knew existed) in RenPy 5 or 6 times), but if this actually works (and so far testing shows that, it does):

- Items issue has been solved (When a girl with 90 of any stats and max of that stat set to 100, equips an item that increases that stat by 50 for example, in the past, this action would result in that stat being set to 100. But a problem Rudi tracked down was the fact that taking this item off, would result in stat being set to 50 (100 max - 50 = 50)). This should be fixed now as well and girls stat will keep on increasing until max is reached even if item/items are still equipped.

- mod method is no longer needed. So if you type chr.charisma += 10, game automatically checks if charisma (or any other stat) is within max and min parameters. Modders can still use chr.mod('charisma', 10) if they so desire.

- It is now also possible to intercept other attributes and do cool stuff with them as well.

@Rudi:

Code: [Select]
        elif name in self.__dict__:
            # get a regular attribute of this class   
            val = self.__dict__[name]

This is about as useful as Alkion's/PyTFall's:

Code: [Select]
do_nothing():
    pass

function :)

In any case, modifying classes behavior might be messy work, but it's usefulness can hardly be ignored, thanks for the idea.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 07, 2013, 02:29:37 AM
You're right. Well, at least it doesn't break anything  :D

EDIT: After rereading the docs on attribute access (http://docs.python.org/2/reference/datamodel.html (http://docs.python.org/2/reference/datamodel.html)), I believe that the following is a less error-prone implementation of the desired behaviour. The desired behaviour is to intercept any attribute access to character stats and keep the behaviour unchanged for any other attribute. With the previous implementation, which used __getattr__, a character stat could only be accessed if the instance, its class or any superclass did not provide an attribute with the same name.
Code: [Select]
class Girl(object):
    def __init__(self):
        statsdict = {"health":100, "fatigue":0, "charisma":5}
        object.__setattr__(self, "stats", statsdict)
        object.__init__(self)
       
    def __getattribute__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        statsdict = object.__getattribute__(self, "stats")
        if name in statsdict:
            # get a gamestat   
            val = statsdict[name]
        else:
            # get a regular attribute or raise an error
            val = object.__getattribute__(self, name)
        return val
           
    def __setattr__(self, name, value):
        '''Assigns a value to a game attribute or a python attribute.
        '''
        if name in self.stats:
            # set a gamestat   
            self.stats[name] = value
        else:
            # set a regular attribute
            object.__setattr__(self, name, value)
@Xela
Should you want to adapt this code for PyTFall, please note that you should replace any reference to object with the superclass of your sGirl class: Structure.
 
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 07, 2013, 07:04:20 AM
You're right. Well, at least it doesn't break anything  :D

EDIT: After rereading the docs on attribute access (http://docs.python.org/2/reference/datamodel.html (http://docs.python.org/2/reference/datamodel.html)), I believe that the following is a less error-prone implementation of the desired behaviour. The desired behaviour is to intercept any attribute access to character stats and keep the behaviour unchanged for any other attribute. With the previous implementation, which used __getattr__, a character stat could only be accessed if the instance, its class or any superclass did not provide an attribute with the same name.
Code: [Select]
class Girl(object):
    def __init__(self):
        statsdict = {"health":100, "fatigue":0, "charisma":5}
        object.__setattr__(self, "stats", statsdict)
        object.__init__(self)
       
    def __getattribute__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        statsdict = object.__getattribute__(self, "stats")
        if name in statsdict:
            # get a gamestat   
            val = statsdict[name]
        else:
            # get a regular attribute or raise an error
            val = object.__getattribute__(self, name)
        return val
           
    def __setattr__(self, name, value):
        '''Assigns a value to a game attribute or a python attribute.
        '''
        if name in self.stats:
            # set a gamestat   
            self.stats[name] = value
        else:
            # set a regular attribute
            object.__setattr__(self, name, value)
@Xela
Should you want to adapt this code for PyTFall, please note that you should replace any reference to object with the superclass of your sGirl class: Structure.

I tried messing with __getattribute__ already, didn't do much for me, and I tried a number of different approaches.

With your code, I get error here

statsdict = Structure.__getattribute__(self, "stats")

AttributeError: 'sGirl' object has no attribute 'stats'

while importing stuff into the class from xml. It may not be worth spending time making it less errorprone, I understand what errors can occur so I can fix them even if they appear.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 07, 2013, 08:32:46 AM
Sounds like the XML loader does not call the constructor. I had the same problem because pickle doesn't call the constructor either and after unpickling an instance of my character class it had no stats attribute. I think you can avoid the error message like this and I also think it fixes the problem, but I never made sure it really does. Btw, if __getattribute__ is defined like this, the constructor does not need to have, and should not have the initial values for the statsdict.
Code: [Select]
    def __getattribute__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        try:
            statsdict = object.__getattribute__(self, "stats")
        except AttributeError:
            # must create self.stats if it does not yet exist
            statsdict = {"health":100, "fatigue":0, "charisma":5}
            object.__setattr__(self, "stats", statsdict)
            statsdict = object.__getattribute__(self, "stats")
        if name in statsdict:
            # get a gamestat   
            val = statsdict[name]
        else:
            # get a regular attribute or raise an error
            val = object.__getattribute__(self, name)
        return val
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 07, 2013, 10:05:53 AM
Sounds like the XML loader does not call the constructor. I had the same problem because pickle doesn't call the constructor either and after unpickling an instance of my character class it had no stats attribute. I think you can avoid the error message like this and I also think it fixes the problem, but I never made sure it really does. Btw, if __getattribute__ is defined like this, the constructor does not need to have, and should not have the initial values for the statsdict.
Code: [Select]
    def __getattribute__(self, name):
        '''Returns a value for a game attribute or a python attribute.
        '''
        try:
            statsdict = object.__getattribute__(self, "stats")
        except AttributeError:
            # must create self.stats if it does not yet exist
            statsdict = {"health":100, "fatigue":0, "charisma":5}
            object.__setattr__(self, "stats", statsdict)
            statsdict = object.__getattribute__(self, "stats")
        if name in statsdict:
            # get a gamestat   
            val = statsdict[name]
        else:
            # get a regular attribute or raise an error
            val = object.__getattribute__(self, name)
        return val

== recursion error. Or some other error that python/renpy cannot trace and just hangs. I also tried to do a number of things that should have worked (your approach looks solid, at least to me) but resulted in same. Basically catching this error would cost me another 3 - 4 hours.

It might also be a part of parser or our custom importing functions (but less likely). Like I said, not worth it. __getattr__ seems to be working marvelously.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: rudistoned on February 07, 2013, 10:25:43 AM
Strange. Well, you're right, __getattr__ will get the job done and it's quite unlikely it will cause problems.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 07, 2013, 04:42:37 PM
First tests of stripjob are successful, since it is a pretty complicated job by design with a lot depending on it, I would say logic for it is still only 70% complete, but there has been a considerable amount of progress and debugging.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 08, 2013, 05:13:02 PM
Still working on strip method. Making sure it has effect on all stats it is supposed to, improving logic and client's satisfaction that it needs to relay to bar job and whore job and so on. I would say the damn thing is about 90% done, it can obviously be improved indefinitely to make texts better and more sensible, adding hooks and forks but I think I am fairly close to reaching the limit for SimBro version. Most time doesn't really do into coding but into figuring out how much of each stat game has to mod.

I am expecting a weekend without to many time consuming tasks in rl,  so plan is to get a good amount of work done for the project tomorrow and the day after.

=============================================
Edit:

I am wrapping up strip job (still needs a bit of work here and there but some other stuff needs to be taken care of first) and starting with more brothel logic, service(bar/cleaning/waitress) job.


This is what strip job currently looks like:


I tried to post code for the job but got this instead  ::)

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
  The following error or errors occurred while posting this message:
  The message exceeds the maximum allowed length (20000 characters). 
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

Odd since it isn't really that big... maybe a lot of spaces or something.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 09, 2013, 04:56:09 PM
Well, didn't get as much done today as planned but there has been some progress.

I now have a basic gameflow in my head for next day logic. I don't know how it all will pen out in live gaming but the idea is not to allow jobs be as simple as: Picture + Texts + Couple of events based on traits/chance. I want jobs to be a little more than just that and have effect on each other, creating some form of at least semi-believable environment.

Basically it looks like this:

Whores do their thing, they don't need any upgrades to the building.

Strippers: Can be activated after Strip Club is bought. They just earn tips, you get to keep 100% if they are slaves and a house percentage if they are hired, you also will pay their wage (or plain upkeep for salves). The trick for them is to attract clients into for bar-jobs and get clients libido higher for whores to take advantage of later. Strippers can perform several shows (each show costs 3 - 4 AP), if they do not have enough AP for the show, they do other stuff, like chatting with clients, resting or training in striptease.

Service girls: This is basically a form of combined Barmaid (After bar is bought), Cleaner, [Waitress and Lap-Dancer] - (After both Bar and Strip Club are bought). They take care of clients that come to the club to see strippers or just come to get drunk and a bit of chatting. Each of the tasks can be assigned to a girl separately if player wishes for specializations but Service Girl is an occupation (Class) and if it is also set as a a job, girls will prioritize on what needs to be done at the moment.

The better job your strippers are doing, the more clients come to the Bar and the more clients wish to get laid. Also the better job your service girls are doing the more clients there are wishing to get laid and more willing to pay something extra.

Basically if we did generic Pic - Event - Result jobs, this part would have been done already, but I want to try a more complicated approach. Right now base for stripjob's advanced logic is done and I am working on Service girls tasks. After that significant improvements to whore job have to be made. Dirt system for brothel also needs to be taken care of but I'll do that together with cleaning job. Small changes in items, dresses and some other things must be made, but those are insignificant.

After that is finished, I'll start with making game events/quests moddability more accessible and write a guide. Also maybe creating a paste bin for texts deposits.
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 10, 2013, 12:49:00 PM
Spent 4 hours tracking down stupid error that kept crashing the game. Left '4' open inside a while loop, so every girl with 4 AP kept crashing it, must have tried two or three dozen things before got to the real issue.

On the other hand Alkion programmer coded an entire fanfic game in under a week (8 hours per day since he is on vacation right now). Presently he is putting some time into Alkion itself.

It can be downloaded here:

http://4otaku.ru/post/1993/

Even if you don't speak Russian, this is another example of what capabilities for events/quests in Alkion/PyTFall are.

============================
I'll keep on coding for the rest of the evening, maybe actually make some progress with service jobs.


Title: Re: PyTFall Dev Thread: Writers needed!
Post by: DarkTl on February 10, 2013, 02:28:07 PM
Service Girl is an occupation (Class)
Nice to hear that you decided to add such class. I was just thinking about characters which don't belong to warriors(=able to fight) or prostututes(=sexually liberated or don't care at all).
Title: Re: PyTFall Dev Thread: Writers needed!
Post by: Xela on February 10, 2013, 02:36:05 PM
Nice to hear that you decided to add such class. I was just thinking about characters which don't belong to warriors(=able to fight) or prostututes(=sexually liberated or don't care at all).

Yeah, I am coding it right now. If I can get it to be 'felt' in game as I am coding it, there is potencial. And we can always add a trait like 'Sexually uninhibited' and have girls with that trait pass class checks for sex related jobs/events. After the base code is done, it will become increasingly easier.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 12, 2013, 04:05:24 AM
Today I have nothing to do, so I decided to add a couple of traits  :)

Xela, are you going to use random girls eventually? I ask because traits like Your Daughter and Incest will be hard to use without them.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 12, 2013, 05:46:22 AM
Today I have nothing to do, so I decided to add a couple of traits  :)

Xela, are you going to use random girls eventually? I ask because traits like Your Daughter and Incest will be hard to use without them.

We don't have pregnancy yet either and I've never used random girls in WM. In any case, there is nothing in PyTFall preventing use of random girls as far as I can tell but if you want to add those traits, make a separate file for the advanced version because SimBro version shouldn't have those by design.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 13, 2013, 11:56:53 AM
I see. They'll wait until pregnancy support then, if game actually will have it. It was somewhat fun to "breed" characters with good traits combinations in wm though.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 13, 2013, 12:55:16 PM
I see. They'll wait until pregnancy support then, if game actually will have it. It was somewhat fun to "breed" characters with good traits combinations in wm though.

LoL

Just made the fastest ban ever, spambot barely left a message.

I don't mind preg support for WMlike version but we'll have to replace days with weeks or come up with some magical way like in Otherworld. In any case, for now we need to finish SimBro version. Barely had time to code in this week, maybe I'll manage to sneak in a couple of hours this weekend and I should have some free time tomorrow evening.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Unchained on February 13, 2013, 08:32:56 PM
We don't have pregnancy yet either and I've never used random girls in WM. In any case, there is nothing in PyTFall preventing use of random girls as far as I can tell but if you want to add those traits, make a separate file for the advanced version because SimBro version shouldn't have those by design.

Perhaps keep it simple and use pregnancy as a means of unlocking higher grade characters from the game? Any girl might have a chance of pregnancy that results in a child but has no actual use (see: NPC) for the player while the pregnancy of certain girls to be discovered during play unlocks those special characters (as daughters) after a set time frame?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 14, 2013, 01:59:47 AM
Just made the fastest ban ever, spambot barely left a message.
I'm afraid they'll never give up  :(

How are you going to handle slavery? Do you need corresponding "Slave" trait like in wm?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 14, 2013, 08:23:39 AM
I'm afraid they'll never give up  :(

How are you going to handle slavery? Do you need corresponding "Slave" trait like in wm?

Nope, we already have status in .xml. I am using it a lot in code. status = slave or status = free. I wrote somewhere about social status, we'll have two - three choices in SimBro version and 6 or 7 in WM version.

PS: There are less bots these days, that is for sure.

Perhaps keep it simple and use pregnancy as a means of unlocking higher grade characters from the game? Any girl might have a chance of pregnancy that results in a child but has no actual use (see: NPC) for the player while the pregnancy of certain girls to be discovered during play unlocks those special characters (as daughters) after a set time frame?

It's very easy to code in even for simpler version, I am not sure we need it right now.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 14, 2013, 01:06:48 PM
Nope, we already have status in .xml
Yeah, I know. I mean possible penalties to character and maybe upkeep. Are they coded within status as well?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 14, 2013, 01:25:24 PM
Yeah, I know. I mean possible penalties to character and maybe upkeep. Are they coded within status as well?

Yeap, upkeep for slaves and free girls is being calculated by different formulas.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 15, 2013, 03:22:52 PM
@Dev team

Wanted to bounce a couple of ideas of you guys:

1) Do we need categories for Service Jobs (Bar-Tender, Club Waitress, Cleaner. (I am thinking about leaving LapDancer for WMlike version))

2) Idea: For warrior types, except keeping unruly costumers under control, what about simple sponsoring of quests for the SimBro version. Basically you give an amount of money to a girl to cover travel expenses, equipment and so on and in return she goes on quest for a number of days. She can either return emptyhanded = you get nothing, or she can fulfill the mission, meaning you get back your investment and something on top. Can also be a part of missions set. That shouldn't be to difficult to program and will solve the issue on what to do with warriors before the Arena in WMlike version.

3) I want to handle missing picture categories by revering to profile category, a different approach is having a number of generic pics without faces and fall back to that (for example, if there is no pic in strip category, game can either show a generic strip pic or a pic from profile category of a girl). Personally I would vote for profile pics but we can go either way or even both ways, simply allowing to choose preferred way in gameoptions.

4) SFW (Safe for work). Do we need such a option? I vote against cause while it is easy to achieve with pics, it is very bothersome to get here with texts.

5) Storyline and endings. If you have any ideas for objectives for the game as a whole, put those in writing, maybe with some texts. I do not mean missions system here. What is needed: Story, simple Plot and a number of endings based on player's actions. Not to complex but not to simple either. And if possible futureproof, so not to much would have to be changed in WM version.

I am working on Service Job, trying to make sure it's smart and not counter intuitive. After that is finished, security job and schools and any other jobs we deem necessary for the SimBro version. With that done, I'll start making the game better moddable. I cannot give any timeframes cause there is no way of knowing how much time can be put into the code.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: dorkosaurus on February 15, 2013, 03:51:08 PM

2) Idea: For warrior types, except keeping unruly costumers under control, what about simple sponsoring of quests for the SimBro version. Basically you give an amount of money to a girl to cover travel expenses, equipment and so on and in return she goes on quest for a number of days. She can either return emptyhanded = you get nothing, or she can fulfill the mission, meaning you get back your investment and something on top. Can also be a part of missions set. That shouldn't be to difficult to program and will solve the issue on what to do with warriors before the Arena in WMlike version.

wow that actually sounds like a really good idea.  it would remove some tedious battle mechanic that wouldn't really add to the gameplay while offering a wider spectrum of management simulation.  I think there is a lot of room for improvement on this idea though.  Perhaps factor in loyalty to see if they run away?

I'm thinking that there should probably be an option to send multiple people to the mission for bonus success. to give it more depth, perhaps factor in character stats for the amount of loot each person can haul back.  So needing to consider sending multiple people on the same mission for maximum haul vs sending them out on multiple missions would make some meaningful choices between exp rate and loot.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 15, 2013, 05:17:39 PM
1) Do we need categories for Service Jobs (Bar-Tender, Club Waitress, Cleaner.
I guess they could be united in the one Service job, but with at least basic self-organization. I mean game should analyze traits of all service girls.

Let's say player has 2 characters with different traits, first one is good for cleaning and second one is good for waitress job. In such case building is clean and customers have their drinks. However, if neither is good for cleaning and both are good for waitress, then building is not as clean as it could be, but  customers in bar are very happy. Or something like this.

2) She can either return emptyhanded = you get nothing, or she can fulfill the mission, meaning you get back your investment and something on top. Can also be a part of missions set
I don't see any real difference from the wm dungeon exploration. They might as well find some item at the mission, or capture some girl - when we'll have a decent item system and corresponding characters.

3) I want to handle missing picture categories by revering to profile category, a different approach is having a number of generic pics without faces
Yup, WM has such faceless pics. Personally, I would prefer profile pics, generic usually seem out of place to me.

4) SFW (Safe for work). Do we need such a option?
Unless you going to sell the game via mobile platforms app stores, I think we don't need it  :D

5) Storyline and endings. If you have any ideas for objectives for the game as a whole, put those in writing, maybe with some texts. I do not mean missions system here. What is needed: Story, simple Plot and a number of endings based on player's actions.
I have a couple of ideas actually. I'll write it tomorrow, it's getting late already.


I'm thinking that there should probably be an option to send multiple people to the mission for bonus success. to give it more depth, perhaps factor in character stats for the amount of loot each person can haul back.
Good idea.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Armegetton on February 15, 2013, 06:54:41 PM
1) Do we need categories for Service Jobs (Bar-Tender, Club Waitress, Cleaner. (I am thinking about leaving LapDancer for WMlike version))

I'd say yes, but I'd also want to keep the 'general category' as well, for those players who just want a certain girl to just take care of whatever. Let them choose a specific or over-head type commands and the game can sort through who goes where during the 'next day' function.

Example, girl A has orders to Clean, girl B has orders to Clean, girl C has order to Bartend, girl D has orders to General Service. If this particular brothel serves food as well, we can assume girl D will be placed into the empty role (waitressing), if it doesn't and girl B refuses to clean, the game may decide to place girl D in girl B's cleaning role. Etc

This way, players don't have to focus on who is where and doing what as far as services go, but for whatever reason (maybe because of a trait or skill) the player definitely wants girl X to perform job Y every time.  This will allow that as well.

Quote
2) Idea: For warrior types, except keeping unruly costumers under control, what about simple sponsoring of quests for the SimBro version. Basically you give an amount of money to a girl to cover travel expenses, equipment and so on and in return she goes on quest for a number of days. She can either return emptyhanded = you get nothing, or she can fulfill the mission, meaning you get back your investment and something on top. Can also be a part of missions set. That shouldn't be to difficult to program and will solve the issue on what to do with warriors before the Arena in WMlike version.

I really like this idea. It reminds me of FFTA (for the GBA) where you can send your peeps on little missions. Perhaps these 'mini missions' can be considered the 'whoring' equivalent. Maybe ....

Prostitute ----------- Warrior
Whoring                  Mini Mission
Services                  Security/Bouncer
Advertising              Patrolling Streets (maybe lowers chances of rowdy customers and occasionally fights tentacle monsters/whatever)

Quote
3) I want to handle missing picture categories by revering to profile category, a different approach is having a number of generic pics without faces and fall back to that (for example, if there is no pic in strip category, game can either show a generic strip pic or a pic from profile category of a girl). Personally I would vote for profile pics but we can go either way or even both ways, simply allowing to choose preferred way in gameoptions.

Yes to game options, yes to both.

Quote
4) SFW (Safe for work). Do we need such a option? I vote against cause while it is easy to achieve with pics, it is very bothersome to get here with texts.

No. If you want to play this at work, you are probably comfortable enough to watch porn at work.

Quote
5) Storyline and endings. If you have any ideas for objectives for the game as a whole, put those in writing, maybe with some texts. I do not mean missions system here. What is needed: Story, simple Plot and a number of endings based on player's actions. Not to complex but not to simple either. And if possible futureproof, so not to much would have to be changed in WM version.

I'll try to throw one by you real quick.

Quote
I am working on Service Job, trying to make sure it's smart and not counter intuitive. After that is finished, security job and schools and any other jobs we deem necessary for the SimBro version. With that done, I'll start making the game better moddable. I cannot give any timeframes cause there is no way of knowing how much time can be put into the code.

No worries. No rush. No stress. Take all the time you need. I'll help where I can.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 03:56:39 AM
wow that actually sounds like a really good idea.  it would remove some tedious battle mechanic that wouldn't really add to the gameplay while offering a wider spectrum of management simulation.  I think there is a lot of room for improvement on this idea though.  Perhaps factor in loyalty to see if they run away?

I'm thinking that there should probably be an option to send multiple people to the mission for bonus success. to give it more depth, perhaps factor in character stats for the amount of loot each person can haul back.  So needing to consider sending multiple people on the same mission for maximum haul vs sending them out on multiple missions would make some meaningful choices between exp rate and loot.

Multiple girls shouldn't be much harder to code than single. It's all good basically, we'll see what others have to say and decide.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 05:07:52 AM
I guess they could be united in the one Service job, but with at least basic self-organization. I mean game should analyze traits of all service girls.

Let's say player has 2 characters with different traits, first one is good for cleaning and second one is good for waitress job. In such case building is clean and customers have their drinks. However, if neither is good for cleaning and both are good for waitress, then building is not as clean as it could be, but  customers in bar are very happy. Or something like this.

Did I not say I am coding a 'smart job' :) Traits will be included eventually. Don't worry about it.



I don't see any real difference from the wm dungeon exploration. They might as well find some item at the mission, or capture some girl - when we'll have a decent item system and corresponding characters.

Difference is that in WM free girls do not really need you and you risk nothing when sending them on dangerous quests. It's like.

- You meet a girl with decent battle stats in the city.
- You send her on her own to fight some beasts and monsters.
- You split income.

- My question is why the f*ck does she need you at all? She can go adventuring somewhere else.

In Pytfall it would made a bit more sense:

- You sponsor the quest, investing money in it (so she could buy necessary equipment and provisions).
- You can organize a party.
- These quests can take longer than one turn.
- You can choose the difficulty of a quest.

Basically you're useful, in ways others than just providing home base for operations. I am still not sure that we need this for SimBro version but there would be literally nothing for warrior girls to do in the game under current design plans, cause warriors would be reluctant to clean, strip or whore for money.

Yup, WM has such faceless pics. Personally, I would prefer profile pics, generic usually seem out of place to me.

Yeah, my thoughts exactly.

Unless you going to sell the game via mobile platforms app stores, I think we don't need it  :D

No such plans but many games still bother with this, I never really understood why.

+ Also, Pytfall as an app is a possibility but I have no plans to release such a thing. Not until there is a satisfactory WM-like version for Win/Linux/Mac.


I have a couple of ideas actually. I'll write it tomorrow, it's getting late already.

Ok, there is no rush, games like this take time to build.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 05:27:33 AM
In Pytfall it would made a bit more sense:
- You sponsor the quest, investing money in it (so she could buy necessary equipment and provisions).
- You can organize a party.
- These quests can take longer than one turn.
- You can choose the difficulty of a quest.
I see. Yeah, sounds like a good idea to me.
Talking about equipment reminds me, player shouldn't have free access to free girls inventory. He may offer some item or ask for some item, but it should be up to girl to accept a gift or give item to player depending on disposition, status and so on. Of course, slaves are different story.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 05:46:02 AM
I'd say yes, but I'd also want to keep the 'general category' as well, for those players who just want a certain girl to just take care of whatever. Let them choose a specific or over-head type commands and the game can sort through who goes where during the 'next day' function.

Example, girl A has orders to Clean, girl B has orders to Clean, girl C has order to Bartend, girl D has orders to General Service. If this particular brothel serves food as well, we can assume girl D will be placed into the empty role (waitressing), if it doesn't and girl B refuses to clean, the game may decide to place girl D in girl B's cleaning role. Etc

This way, players don't have to focus on who is where and doing what as far as services go, but for whatever reason (maybe because of a trait or skill) the player definitely wants girl X to perform job Y every time.  This will allow that as well.


No, you misunderstood. I was talking about image categories. Service Job works in a different way.

- Girl can refuse/agree to do a ServiceGirl job (only as a whole, not per task), that job is split in tasks: Bar-Tending, Cleaning, Tending-Club-Tables. Girl priorities in order to keep costumers happy. Meaning one girl can tend bar, serve as a waitress and clean all in one turn (try to remember girls in Pytfall have APs that they spend)

- There might be an option to overwrite in the future (Like girl focusing on one task until there is no work left for this task).

: So in short system in place now is already more advanced than the one you suggested.


I really like this idea. It reminds me of FFTA (for the GBA) where you can send your peeps on little missions. Perhaps these 'mini missions' can be considered the 'whoring' equivalent. Maybe ....

Prostitute ----------- Warrior
Whoring                  Mini Mission
Services                  Security/Bouncer
Advertising Patrolling Streets (maybe lowers chances of rowdy customers and occasionally fights tentacle monsters/whatever)

That is one thing I wanted to avoid. There should be no equivalents of jobs between Occupations (Classes). I would have adapted simple generic functions approach and be done with it already. Instead I wish to try and make every job at least 'feel' unique.

PS: Prostitutes will almost always refuse doing services... unless they are slaves.



Yes to game options, yes to both.

Right, but like I've said, I dislike the generic pics option myself so while I am perfectly ok with writing code to allow both, I will not be the one to search and edit default pictures for all categories.



No. If you want to play this at work, you are probably comfortable enough to watch porn at work.

Yeah, it's off that OW and I believe also SM have such options. Why wasting time to make a hentai game SFW instead of adding new features is beyond me.


I'll try to throw one by you real quick.

I've read the PM.

Basically the rival idea or the area control idea, difficulty levels idea, all of those have been proposed before. When I asked for ideas, I meant with sketches of some texts, events and maybe even NPC's involved. I will be done with jobs soon and we are approaching time when simple concepts is not enough. Better, more concrete texts, NPC personalities, Ending requirement are needed. Obviously those would have to be adjusted many time in the future but that counts for every single element of the game and we're still making the game, not just talking about making one. I cannot see why same thing cannot be done with storyline, endings and plot...


No worries. No rush. No stress. Take all the time you need. I'll help where I can.

That's my base approach to indie development :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 05:53:40 AM
I see. Yeah, sounds like a good idea to me.
Talking about equipment reminds me, player shouldn't have free access to free girls inventory. He may offer some item or ask for some item, but it should be up to girl to accept a gift or give item to player depending on disposition, status and so on. Of course, slaves are different story.

Yeah, unless we decide to do the advanced inventory for the SimBro version, we should leave buying equipment only for brothel workers.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 07:06:46 AM
So, about the storyline. I would like to avoid such usual plot for brothel games as "competitors killed MC father having left him with one brothel with one old ugly whore and astronomical debts, let's give them the symmetric answer". I don't say we shouldn't use such ideas at all, but I'd like to have a little more serious story.

I have two ideas, which can be used together or separately. First one is conflict with slaves, which, as we know, have provoked war in the past. So player could enslave free girls, help slave traders and so on, or give freedom to slaves, help their underground opposition, secretly train them as warriors and so on. I guess we need some kind of stat reflecting such player's deeds.
In order to not complicate gameplay, just using slaves at some jobs shouldn't influence it, it should be neutral deed.

Second idea is to search for prewar high magic and technologies, i.e. unique first class items and even artificial girls with good stats. Here we actually can use "dead father" idea, but as scientist studying prewar artifacts and killed for unknown reason (maybe by government), not as just some lame brothel manager. Competitors should look for them too.

If you like one or both of these ideas, I will expand them.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 07:44:29 AM
So, about the storyline. I would like to avoid such usual plot for brothel games as "competitors killed MC father having left him with one brothel with one old ugly whore and astronomical debts, let's give them the symmetric answer". I don't say we shouldn't use such ideas at all, but I'd like to have a little more serious story.

I have two ideas, which can be used together or separately. First one is conflict with slaves, which, as we know, have provoked war in the past. So player could enslave free girls, help slave traders and so on, or give freedom to slaves, help their underground opposition, secretly train them as warriors and so on. I guess we need some kind of stat reflecting such player's deeds.
In order to not complicate gameplay, just using slaves at some jobs shouldn't influence it, it should be neutral deed.

Second idea is to search for prewar high magic and technologies, i.e. unique first class items and even artificial girls with good stats. Here we actually can use "dead father" idea, but as scientist studying prewar artifacts and killed for unknown reason (maybe by government), not as just some lame brothel manager. Competitors should look for them too.

If you like one or both of these ideas, I will expand them.

Actually both ideas are awesome... but both will push the game into Alkion's trap. Advanced storyline makes a Simulation game look more and more like an RPG. Even worse, players who may just want to sim, are forced reading long plot lines.

Also it increases on workload (sometimes increases it by 3x - 4x times like with Alkion where we adapted a world from a freaking series of fantasy books and game needs to reflect that).

But to tell you the truth, I love the first idea. It offers a lot of potential since 90 - 95% of girl from Anime/Games would oppose slavery. You can either side with your girls telling them that you're a part of the resistance and they will do their tasks more willingly while secretly training in combat (something that will be forbidden by law regardless of what plot we go with). Or you have to break them "SM" or even better "Valet Pletej" style and government/guilds are your best friends and support. Trouble is that I did not want to do the latter before WM version.

KOTOR darkside/lightside way is no difficult to program.


STILL:


Generic plots with multiple endings should not be ruled out as they require a LOT less development time. I might even prefer that because I STILL cannot see how advanced plot and simulation game play out in (for example) Alkion and avoiding that was the main reason I started my own project. Badly implemented, both Sim and RPG would suck... and to Implement advanced plot in simulation game well, insane amount of planning and writing is required, also many custom events by modders would have to reflect that reality and it does kill creativity and possibilities to some extent.

I am working on 'cleaning' part of service job code right now, see if you and other member of dev team who might be interested could come up with a plot that would not be to intrusive to simulation gameplay. We can discuss that for couple of days or weeks and then simply decide on something.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 08:21:32 AM
Advanced storyline makes a Simulation game look more and more like an RPG. Even worse, players who may just want to sim, are forced reading long plot lines.
Really? They don't seem so advanced to me. After all, you asked for "sketches of some texts, events and maybe even NPC", my little ideas are nothing in comparison to such things  :)

With the first one player just decides how many slaves and free girls he is going to use, or just ignore it and get neutral "nothing has changed" ending. With the price of one additional, maybe hidden stat.

With the second one player just need to collect a certain amount of any techs (=good items and unique girls, nothing new here, you will do such things anyway) and maybe hide and protect them from government or just some bad people. In advanced version we can use additional Scientist job for smart characters to study prewar techs. The more techs you successfully obtain (maybe within optional time limit) and the less techs obtained by enemies, the better ending you have.

In other words, plots have potential for making game more rpg-like, but it's unnecessary.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 09:07:22 AM
Really? They don't seem so advanced to me. After all, you asked for "sketches of some texts, events and maybe even NPC", my little ideas are nothing in comparison to such things  :)

With the first one player just decides how many slaves and free girls he is going to use, or just ignore it and get neutral "nothing has changed" ending. With the price of one additional, maybe hidden stat.

With the second one player just need to collect a certain amount of any techs (=good items and unique girls, nothing new here, you will do such things anyway) and maybe hide and protect them from government or just some bad people. In advanced version we can use additional Scientist job for smart characters to study prewar techs. The more techs you successfully obtain (maybe within optional time limit) and the less techs obtained by enemies, the better ending you have.

In other words, plots have potential for making game more rpg-like, but it's unnecessary.

Fair enough, but some things can be achieved with generic plot, just check for slave/free girls percentage at endgame and if within limits, launch a corresponding endgame. In any case, if you feel up to it, try to lay out the ideas and when/how they are presented in game. Like during an intro obviously and in ending but also when does player get ending related quests and missions in between and so on.

I think we should start with 3 ending for beta and 7+ for final SimBro version.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 09:38:54 AM
OK, how about mixing these plots? One thing is player does or doesn't support slavery, second is does he has enough power (=prewar techs=artefacts and girls) to actually do something about it.
This will give us as many endings as we need.

One more thing, I doubt I'm able to write big enough English text without any mistakes, so I guess we need corrector.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 09:51:28 AM
OK, how about mixing these plots? One thing is player does or doesn't support slavery, second is does he has enough power (=prewar techs=artefacts and girls) to actually do something about it.
This will give us as many endings as we need.

One more thing, I doubt I'm able to write big enough English text without any mistakes, so I guess we need corrector.

LoL @ 'corrector'

Proofreader or editor :)

I wouldn't worry to much about that. If game is fun, there will be plenty of people who will offer help with expanding and improving the content. Our task is to create a good base.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 10:06:23 AM
LoL @ 'corrector'

Proofreader or editor :)
Yup, that's exactly what I'm talking about  :D

I'll think about the game story for a day or two, meanwhile someone may suggest a much better plot, who knows.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 10:21:07 AM
Yup, that's exactly what I'm talking about  :D

I'll think about the game story for a day or two, meanwhile someone may suggest a much better plot, who knows.

'Corrector' is fine by the way, just not the first choice for this particular example :)

------------------------------------------------------------------------
By the way, while I am busy with writing code, can someone find a couple of pics for schools???

We need some form of a Beauty (Charisma), Dancing (Constitution, bit of Refinement), Etiquette (Refinement, bit of charisma), Service (Service skill I've added recently, bit of agility),  Combat? (Non-slave girls only), maybe more?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 16, 2013, 12:21:05 PM
I'll start with the easiest part, dance. Check my folder in dropbox.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 12:26:14 PM
I'll start with the easiest part, dance. Check my folder in dropbox.

Kewl. I am wrapping up basecode for Service job right now. Fairly close to some basic testing :)


PS: I like all the pics :) I wonder if we can simply use all of those with random pics every time player enters the screen :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: dorkosaurus on February 16, 2013, 03:58:29 PM
what about this generic storyline:

main character just graduated from business school and is now in the process of starting their own business.  Takes a loan to start it all up.  Eventually, main character's shop becomes a pretty good adventurer's item shop.

Turns out the loan was a really bad loan and the gangs starts extorting the main character for money.  Being forced to expand his or her business to cover different niches, main character hires "workers" for a bar and brothel expansion to fill a niche that is missing in the local area.

Then here is where the player takes over, goals are to meet the minimum extortion costs per month that rises at a linear rate while trying to balance training/gearing up warrior girls to fight off the gangs or whatever.

The player is in charge of hiring and managing workers for the itemshop/brothel while trying to fund for training and gear for warrior type girls.

This would make sense for warrior type classes to actually stick around in a brothel since the main character is offering paid training and discounts on equipment while also factoring in why he or she would actually want to train warriors for their brothel.  You can further expand gameplay by simulating an item shop. 

Perhaps hiring girls to fabricate generic items that slowly sells overtime, and placing items/loot hauled from warrior's quests to be sold.  Obviously the player needs to buy supplies to fabricate items, and need to supply the warriors for the quests.  This would prevent the player from becoming instantly rich after a really successful random quest run and would slow the inflow of cash to make quest running not instantly profitable.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 04:25:26 PM
what about this generic storyline:

main character just graduated from business school and is now in the process of starting their own business.  Takes a loan to start it all up.  Eventually, main character's shop becomes a pretty good adventurer's item shop.

Turns out the loan was a really bad loan and the gangs starts extorting the main character for money.  Being forced to expand his or her business to cover different niches, main character hires "workers" for a bar and brothel expansion to fill a niche that is missing in the local area.

Then here is where the player takes over, goals are to meet the minimum extortion costs per month that rises at a linear rate while trying to balance training/gearing up warrior girls to fight off the gangs or whatever.

The player is in charge of hiring and managing workers for the itemshop/brothel while trying to fund for training and gear for warrior type girls.

This would make sense for warrior type classes to actually stick around in a brothel since the main character is offering paid training and discounts on equipment while also factoring in why he or she would actually want to train warriors for their brothel.  You can further expand gameplay by simulating an item shop. 

Perhaps hiring girls to fabricate generic items that slowly sells overtime, and placing items/loot hauled from warrior's quests to be sold.  Obviously the player needs to buy supplies to fabricate items, and need to supply the warriors for the quests.  This would prevent the player from becoming instantly rich after a really successful random quest run and would slow the inflow of cash to make quest running not instantly profitable.

Bit clumsy.

Also would require an advanced items system for the SimBro version.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: dorkosaurus on February 16, 2013, 04:43:38 PM
Bit clumsy.

Also would require an advanced items system for the SimBro version.

hmmm why not have an advanced item system? Maybe sometime later down the line when all the other mechanics are done?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 05:05:12 PM
hmmm why not have an advanced item system? Maybe sometime later down the line when all the other mechanics are done?

Because the plan was to stick with the original SimBrothel design with new features. If advanced items system is installed, I doubt that we even need a simbro version then because it will open an avenue to insane amount of interesting quests and plotlines. I want a simple game first, more advanced stuff later.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: dorkosaurus on February 16, 2013, 05:07:36 PM
Because the plan was to stick with the original SimBrothel design with new features. If advanced items system is installed, I doubt that we even need a simbro version then because it will open an avenue to insane amount of interesting quests and plotlines. I want a simple game first, more advanced stuff later.

oh i guess i should have read up on what the plan was.  Silly me for skipping around on the thread then.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 16, 2013, 05:37:47 PM
oh i guess i should have read up on what the plan was.  Silly me for skipping around on the thread then.

 It's ok.

 Anyway, I've been tracking a nasty error and right now I am completely sure that it is a renpy screen design issue and not a code issue (my code). I am also fairly sure it is an actual error and not some weird RenPy design feature. Tomorrow I'll find a workaround (there are a few dozen things I can try and it will definitely be fixed.) Or to be more exact, not fixed, since it is impossible to fix without modifying the framework itself that would take days for one stupid little issue, but will simply be done in a different manner.


PS: I am going to sleep but if anyone from States or with insomnia can find cool looking buttons to put the jobs on or pictures that represent jobs (whore, servicegirl, striptease and rest) it would be VERY helpful because that is where the damn bug is in. I'll get some sleep and resume working on this first thing in the morning.

Otherwise, g'night.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 17, 2013, 04:29:18 AM
I've found some pics for combat school.
What do you mean by service school? Maids, waitresses and so on?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 04:54:42 AM
I've found some pics for combat school.
What do you mean by service school? Maids, waitresses and so on?

Yeap, that's what I mean.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 17, 2013, 07:09:05 AM
Schools are done. Let me know if you need more pics.

You have to explain jobs representing pics, I'm not sure I understand what do you need. Why and how to use such pics instead of buttons with text in the first place?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 07:47:13 AM
Schools are done. Let me know if you need more pics.

You have to explain jobs representing pics, I'm not sure I understand what do you need. Why and how to use such pics instead of buttons with text in the first place?

I did have time to start programming today yet but still have those plans for the evening. Trouble is that by some odd RenPy bug, fourth button doesn't display. I am 100% sure that it is not a fault of my code because any other element like text or picture instead of a button displays correctly.

When I get around to it, I'll try using different type of buttons. Alternately I though about using pictures as buttons like with brothels. In any case, that will be fixed.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 17, 2013, 09:15:38 AM
Well, it's not hard to find some cleaning, resting and other icons for sure. Check icons folder in my dropbox folder for some examples.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 10:03:09 AM
Well, it's not hard to find some cleaning, resting and other icons for sure. Check icons folder in my dropbox folder for some examples.

Thanks, will try buttons first and fall back on that after.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 17, 2013, 10:08:15 AM
Let me know if you won't have a choice but to use icons. Those are just examples, I will find a better ones then.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 10:56:50 AM
Let me know if you won't have a choice but to use icons. Those are just examples, I will find a better ones then.

Yeah, all the time I've spent thinking there was something wrong with my code... RenPy still has some bugs to clear I guess. I employed the simplest button that exists in RenPy and it works.

Currently looks like this:

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 17, 2013, 02:01:40 PM
Well, I don't know how are you going to build further interface. Where are you going to put icons? I think we definitely shouldn't use only icons without any text, in Alkion there're many buttons without text, and I still didn't get used to them.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 02:27:56 PM
Well, I don't know how are you going to build further interface. Where are you going to put icons? I think we definitely shouldn't use only icons without any text, in Alkion there're many buttons without text, and I still didn't get used to them.

I wasn't planning to use icons without text. And we also have tooltip that isn't used as much in Alkion as in PyTFall.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on February 17, 2013, 02:47:10 PM
On the subject of a generic story: How about having earned / inherited (or something similar) a license allowing the player to open and operate a brothel.
It could give the free whores another reason not to work on the streets since they don't have to look after themselves and pay protection money to gangs or police since they are working for your legal Brothel, instead of working in a gray area with a pretty shady reputation sorrounding them.
Also assuming that the town the game is the cultural and political center of the country/region a lot of girls could come there trying to become the maid, mistress or bodyguard (or master of the arena) of the cream of society only to find out that it isn't all that easy to get to them, cue the player providing jobs and maybe a way up the social ladder for them.
(just spouting ideas here)

I am not the best out there with the english language but I would be willing to look over peoples texts / writing small stuff if I find the time for it.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 04:03:27 PM
On the subject of a generic story: How about having earned / inherited (or something similar) a license allowing the player to open and operate a brothel.
It could give the free whores another reason not to work on the streets since they don't have to look after themselves and pay protection money to gangs or police since they are working for your legal Brothel, instead of working in a gray area with a pretty shady reputation sorrounding them.
Also assuming that the town the game is the cultural and political center of the country/region a lot of girls could come there trying to become the maid, mistress or bodyguard (or master of the arena) of the cream of society only to find out that it isn't all that easy to get to them, cue the player providing jobs and maybe a way up the social ladder for them.
(just spouting ideas here)

I am not the best out there with the english language but I would be willing to look over peoples texts / writing small stuff if I find the time for it.

Kewl, I am still working on jobs, since I do not have a code structure and every job is unique it is taking a while...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 17, 2013, 08:07:53 PM
@Dev team

Ok, got a good amount of work done today.. Still far from finished with advanced logic but I think game made it to a point where it doesn't crash every 5 minutes.

0.23 is uploaded to our DropBox dev folder.

Logic behind the jobs:

1) Strippers go first. They relay data to be used in other jobs, that is half implemented right now.

2) Service girls go second.
 Logic behind this one is fairly complex, they take care of bar clients if you have a bar and club clients if you have a club first with a small chance of them cleaning the place up. After that is done, they will clean until brothel dirt is less than 80. Amount of clients heavily depends on how well your strippers preformed in previous job.

3) Prostitutes go next.
 Basically the same old method, nothing changed here. (I think)

4) Service girls go again, but this time they clean the building until it is spotless or they run out of strength.

5) Brothel report is generated, fairly basic right now but should be awesome and informative very soon.

Texts are simply meant to relay as much info as possible at this point of development. I'll change those later to be more user friendly.

There are about 15 things for me to do and improve upon planned out right now... we'll slowly continue to develop this one day (or week  ::)) at a time.

PS: We're little over 6k lines on code now I think (not counting the battle engine, standard modules and .xml files). Not bad for a n00b coder alongside a small dev team I would say  8)

PS2: I've created two new folders in my DB folder, throw any trace bug reports you may encounter and stupid stuff that gotta be fixed as well.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 18, 2013, 11:50:01 AM
On the subject of a generic story: How about having earned / inherited (or something similar) a license allowing the player to open and operate a brothel.
Yeah, that's a good explanation why MC bothers with brothel but not something else, regardless of main plot. The question is how he earned it in the first place. I would rather not make another dead-father-brothel-manager, it's an old and boring story  :)
Any ideas, anyone?

I am not the best out there with the english language but I would be willing to look over peoples texts / writing small stuff if I find the time for it.
I would appreciate that.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 18, 2013, 12:47:12 PM
Hey guys,

congratulations on your progress! I'm interested in the quest/mission system for the warriors and I'd like to code the logic for it. Since nobody mentioned developing it, I suppose work has not started on it yet? I'd hate to duplicate something that already exists.

Goal
Develop a system that allows one or more characters to go on a quest, face several encounters and return with a reward if all obstacles can be overcome.

New classes
Quest
Represents a series of encounters that a party of characters has to deal with to earn the reward.
The quest should have a cost to pay so it can be started. It should also decide which characters in the party face a particular encounter and should define if the reward for successful completion of the quest is just the sum of the encounter rewards or something else.

Encounter
Represents an obstacle questing characters have to overcome. Possible obstacles are monsters to fight, traps to avoid, secure locations to break in, natural hazards to brave or whatever else fits the setting.
An encounter should contain some kind of test, e.g. skill checks, that determines the outcome of the encounter. It should also apply the effects of the outcome to the characters, e.g. reduce character health if they've been in a fight.
It may also provide a reward for success.

Interfaces
This system would need to interact with:
the character instances to apply encounter outcomes and to perform skill checks
anything else?


Questions
* How do skill checks work in PyTFall? In Otherworld, the most basic way to see if a maid cooked a nice meal is to generate a random number between 1 and 100 and check if it is lower than the maid's cooking skill.
* Is the character class already stable, or is it changing often?
* What kind of encounters do you think are interesting?



What do you think? IMHO, this system is quite scalable, meaning it can simulate both simple and complex quests. Just to be clear, this is not meant to be a mini-RPG. A fight can be as simple as checking a warriors martial prowess (however PyTFall measures that) against a difficulty. Nevertheless, if someone decides to expand warrior management into a mini-RPG, this system will be able to accomodate that via more complex encounters, e.g. changing the fight I mentioned before into several rounds of attack and defense rolls or maybe even powering up the battle engine.

For now, I'd start with the logic calculating encounter outcomes and rewards. The GUI needed to make use of the quest system will probably be created by someone else, because I don't really want to learn how to code GUIs in RenPy. Possible additions would be texts describing what happened on the quest to the player (if that is even desirable).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 18, 2013, 01:25:29 PM
What kind of encounters do you think are interesting?
Well, according to game setting, "failed slave revolt taking place in the country that was squashed but with very significant losses so now slaves are not allowed to train in battle magic or combat".

Main plot probably will have something to do with deciding between government and slaves underground, and looking for prewar techs to have enough power.

So if you ask me, things like raiding some slave camp or protect it, or looking for techs in prewar buildings ruins (with traps and locks = checks for agility and intelligence) and so on are welcomed. These are for high-level parties, low-level simple things like a randomly discovered cave with some monsters and gold are needed too.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 18, 2013, 07:22:53 PM
Hey guys,

congratulations on your progress!

Thanks :) We're are doing our best as time permits :)


I'm interested in the quest/mission system for the warriors and I'd like to code the logic for it. Since nobody mentioned developing it, I suppose work has not started on it yet? I'd hate to duplicate something that already exists.

Goal
Develop a system that allows one or more characters to go on a quest, face several encounters and return with a reward if all obstacles can be overcome.

I am completely lost here... Such system comes with RenPy. It's like Tifa's quest only with multiple characters and longer storyline?!? Or do you mean something else? I mean, if we are talking about the same thing, such system does not only already exist, it is an absolutely awesome and resourceful system!




New classes
Quest
Represents a series of encounters that a party of characters has to deal with to earn the reward.
The quest should have a cost to pay so it can be started. It should also decide which characters in the party face a particular encounter and should define if the reward for successful completion of the quest is just the sum of the encounter rewards or something else.

Encounter
Represents an obstacle questing characters have to overcome. Possible obstacles are monsters to fight, traps to avoid, secure locations to break in, natural hazards to brave or whatever else fits the setting.
An encounter should contain some kind of test, e.g. skill checks, that determines the outcome of the encounter. It should also apply the effects of the outcome to the characters, e.g. reduce character health if they've been in a fight.
It may also provide a reward for success.

Interfaces
This system would need to interact with:
the character instances to apply encounter outcomes and to perform skill checks
anything else?

Every single thing you describe here is already available with nearly infinite options and possibilities. I do not have time to write a guide right now on how to create awesome quests as I am using the little free time that I have to code advanced logic for jobs.




Questions
* How do skill checks work in PyTFall? In Otherworld, the most basic way to see if a maid cooked a nice meal is to generate a random number between 1 and 100 and check if it is lower than the maid's cooking skill.

Same way basically, I would take a different approach and create number of meals and required skill girl needs to cook those properly.


Questions
* Is the character class already stable, or is it changing often?

Not very stable and will change and grow for as long as the game being developed.


Questions
* What kind of encounters do you think are interesting?

To many to describe...


What do you think? IMHO, this system is quite scalable, meaning it can simulate both simple and complex quests. Just to be clear, this is not meant to be a mini-RPG. A fight can be as simple as checking a warriors martial prowess (however PyTFall measures that) against a difficulty. Nevertheless, if someone decides to expand warrior management into a mini-RPG, this system will be able to accomodate that via more complex encounters, e.g. changing the fight I mentioned before into several rounds of attack and defense rolls or maybe even powering up the battle engine.

I still do not understand what you're trying to do. Unless I am mistaken, you are thinking about quests development in terms of a game that is being developed from a scratch. That is the case with OtherWorld and PytherWorld but we are using a very powerful framework in PyTFall that allows absolutely amazing capabilities and options for events and quests that can put some commercial games to shame. Otherwise I simply do not understand what you're offering to code here.

For now, I'd start with the logic calculating encounter outcomes and rewards. The GUI needed to make use of the quest system will probably be created by someone else, because I don't really want to learn how to code GUIs in RenPy. Possible additions would be texts describing what happened on the quest to the player (if that is even desirable).

With this, if I understand correctly, you want to code an alternative, automated battle resolving system to the one that we have where player must fight manually. It is quite useful, I was planning to code one myself but basically by simply compare battle stats of both parties with a couple of random elements involved (player's luck, just random chance etc.) but if you are planning to do something more complex, it's even better!

It's late and I may have misunderstood what you're offering to code for the game. Maybe you should explain your vision on quests in greater detail. Also don't forget that there are other more urgent game-elements I offered you as options that need to be coded.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 18, 2013, 07:41:08 PM
Well, according to game setting, "failed slave revolt taking place in the country that was squashed but with very significant losses so now slaves are not allowed to train in battle magic or combat".

Main plot probably will have something to do with deciding between government and slaves underground, and looking for prewar techs to have enough power.

So if you ask me, things like raiding some slave camp or protect it, or looking for techs in prewar buildings ruins (with traps and locks = checks for agility and intelligence) and so on are welcomed. These are for high-level parties, low-level simple things like a randomly discovered cave with some monsters and gold are needed too.

We already have everything needed to cover both of these quests... no scratch that, we have everything but 'time' to create those  quests :D but we WILL get around to it eventually. There just so many other things to do right now with advanced logic, features, screens and other GUI elements and so on. Not mentioning systems that are planned for Simbro version but we haven't even started to work on yet...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 19, 2013, 03:58:30 AM
You were talking about things to do for warrior girls. The basic idea was that the player gives money to a warrior, she buys equipment, maybe hires other people if she needs help and wanders off to fulfill some quest. The player is involved as money lender and questgiver and receives a share of the profits if the quest succeeds.
The only graphical elements I propose are a GUI element allowing the player to offer a quest to a warrior and a results screen displaying the results of the quest a few days/weeks later. However, I'm not interested in these graphical elements. I am offering to code a few classes that make coding the logic for quests easier by formalizing their structure into encounters. If that is already taken care of I'm happy.

Quote
I would take a different approach and create number of meals and required skill girl needs to cook those properly
That's not the most basic way I was asking for ;-)

Quote
Also don't forget that there are other more urgent game-elements I offered you as options that need to be coded.
I did not forget, it's just that those are mostly content-heavy and I'm not good at developing content. I'd rather develop game mechanics. Apart from the content-heavy choices, as far as I remember, the others were tied to this game really closely and I'd rather develop something more modular, so it might be of use somewhere else too. The arena system probably has many GUI elements and I also never played WM long enough to find out about the arena. I'd have to familiarize myself with that first I suppose. The mission system sounded most interesting.


I'm off to look at Tifa's quest now, maybe it helps me understand the confusion here.
EDIT:
So Tifa's quest is all about RenPy being a visual novel engine, which is great. However, I was not talking about quests for the player character, as I thought was clear from the preceeding discussion. I was talking about a system to automatically resolve quests, without player interaction. I fail to see how RenPy makes that any easier.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 19, 2013, 05:55:37 AM
Xela, if I understand correctly, rudistoned talkes about advanced mission system for warriors and parties of warriors, not Tifa-like quests with participation of player. You talked about them yourself in reply #268.

You also might want to take a look at Brothel S.im mentioned in other games thread. It has some fresh ideas, including stats and mission system.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 19, 2013, 11:27:53 AM
Xela, if I understand correctly, rudistoned talkes about advanced mission system for warriors and parties of warriors, not Tifa-like quests with participation of player. You talked about them yourself in reply #268.

You also might want to take a look at Brothel S.im mentioned in other games thread. It has some fresh ideas, including stats and mission system.

Thanks :)

@Rudi

Yeah! :) We were talking about two different things and I did misunderstand you completely. Nothing has been done for the system that would send warriors off to do missions/quests. It is very useful and prolly the first priority right now since I am working on jobs and that is one of the jobs for warrior types.

Interface is on me, don't worry about that.

Options for quests are:

- Escort for a trade caravan (Issued by merchants)
- Guard duty (Issued by local highborns)
- Raid on Monster Nest (Issues by local authorities)
- Quest (Issued by you, on information obtains from NPC's, Events or other means)
- Extortion (Issued by you, on request of NPC)

Options for encounters are:

- Monsters
- Other Warriors, maybe in game characters that are not in players employment
- Magical Anomaly
- Traps set during the war
- NPC
- Other warrior party returning from a mission? :D


Many more I expect... it's a matter of time and creativity.

Class should keep track of available quests and remove them when time expires. New Quests are added randomly or after an event in game (Like meeting NPC)

It's the general idea anyway.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 19, 2013, 11:59:31 AM
I accidentally noticed that CherryWood has many great pics for schools in his folder. I write this post just in case if I'm the only one who have noticed them.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 19, 2013, 03:00:17 PM
I accidentally noticed that CherryWood has many great pics for schools in his folder. I write this post just in case if I'm the only one who have noticed them.

Yeap, I've noticed pics in yours and CW's folders. I'll see if I can get some work done on the code before I fall asleep.


BUGFIXES:

-----------
CW:
questangry, questhappy, questsad picture categories are using profile picture when missing.
Could it be please set that they will try to use questneutral category first before falling to profile?

Should now work as you want it to. It's up to you to test this.

-----------
Armegetton:
suggest switching line 184 with 185, currently you're showing the MP as agility and agility as MP.

Should be fixed as well.

----------
DarkTl:

House Percentage changes only after you remove mouse cursor from bar. Kinda inconveniently.

This is pissing me off too but I could not find an obvious fix. I'll take care of this much later when I get around to major screen redesign.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 19, 2013, 04:27:00 PM
I'm sorry, I'm here often, but because nothing I'm doing is related to jobs or other topics that were discussed, I didn't post for a while.


In last two weeks, I was interested in creating some renpy scenes or town locations, but I abandoned that until it will be more clear how main parts of game will work. So only I have is pictures for few new girls and backgrounds that I gathered, but that's nothing helpful now...


Now I'm working on texts for generic girlmeet interactions. I'm trying to sort them by status and traits, because I really like that idea. I will need to discuss that with all or you a bit, because there are some issues that needs to be decided, but I expect it will take at least a week before I can get it to a presentable state.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 19, 2013, 05:06:25 PM
I'm sorry, I'm here often, but because nothing I'm doing is related to jobs or other topics that were discussed, I didn't post for a while.


In last two weeks, I was interested in creating some renpy scenes or town locations, but I abandoned that until it will be more clear how main parts of game will work. So only I have is pictures for few new girls and backgrounds that I gathered, but that's nothing helpful now...


Now I'm working on texts for generic girlmeet interactions. I'm trying to sort them by status and traits, because I really like that idea. I will need to discuss that with all or you a bit, because there are some issues that needs to be decided, but I expect it will take at least a week before I can get it to a presentable state.

Cool, are you planning to put those in game yourself or are you making a text file?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 20, 2013, 03:37:30 AM
I'm trying to sort them by status and traits, because I really like that idea.
Btw, feel free to add traits if you think I missed any good ones.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 20, 2013, 04:58:47 AM
Cool, are you planning to put those in game yourself or are you making a text file?
I'm still within text files and excel tabs now, but I'm willing to put it all into renpy code afterwards. It look like a repetitive work, so I should be able to do that if someone help me with first example.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 20, 2013, 05:54:07 AM
Hey guys,

here's the first version of an encounter system. The basic idea is to calculate a percentage, the capability, from the attributes of the character trying to master the encounter. Then the capability is checked five times against a random number between 0 and 99. Then, failures are counted. Very hard encounters allow no failures, very easy ones allow four failures. If the number of failed checks is not greater than the allowed number of failed checks, the encounter has been mastered. For a more detailed explanation, please look at the comments in the code below.

I'm not perfectly happy with the success percentages, but it's good enough I think.

Do you like the system so far?

The goal is that you can later write (for example):
Code: [Select]
trap = TrapEncounter()
trap.difficulty = 4
trap.characters = [warrior1, warrior2]
success = trap.run_encounter()

@Xela
I will use inheritance to implement this as not using it would multiply lots of code. However, if you insist, we can take the inheritance out when copying the code into RenPy.

The following code is untested, will contain typos and will not run. I show it here so you can review the comments and the basic system.

Code: [Select]
class BaseEncounter(object):
    '''Represents a problem questing characters have to master.
   
    Difficulty
    The difficulty describes how hard it is to master this encounter. It ranges
    from 'very easy' = 1 to 'very hard' = 5.   
   
    Mastering the encounter
    In order to master the encounter, the characters must pass a number of
    encounter checks equal to the difficulty, e.g. one check for a very easy
    encounter or three checks for a normal encounter. If they succeed within
    five tries, they master the encounter. If the characters fail at
    6 - difficulty encounter checks, e.g. 2 for a hard enounter, they fail the
    encounter and collectively suffer consequences.
   
    The encounter check
    A random number between 0 and 99 is rolled. If it is lower than the
    capability of the character, the check succeeds.
   
    Probability of failure at various capabilities and difficulties
    10% capability "Rookie"
        'very easy', one successful check needed to master encounter
            probability to fail one check: 1 - 0.1 = 0.9
            probability to fail all five: 0.9 * 0.9 * 0.9 * 0.9 * 0.9 = 0.59
            Rookies succeed at very easy encounters in 41 out of 100 tries.
           
        'very hard', five successful checks needed to master encounter
            probability to succeed on one check: 0.1
            probability to master all five: 0.1 * 0.1 * 0.1 * 0.1 * 0.1 =0.00001
            Rookies succeed at very hard encounters in 1 out of 10000 tries.
           
    90% capability "Master"
        'very easy', one successful check needed to master encounter
            probability to fail one check: 1 - 0.9 = 0.1
            probability to fail all five: 0.1 * 0.1 * 0.1 * 0.1 * 0.1 = 0.00001
            Masters succeed at very easy encounters in 9999 out of 10000 tries.
           
        'very hard', five successful checks needed to master encounter
            probability to succeed on one check: 0.9
            probability to master all five: 0.9 * 0.9 * 0.9 * 0.9 * 0.9 = 0.59
            Masters succeed at very hard encounters in 59 out of 100 tries.
    '''
    def __init__(self):
        self.difficulty = 3
        self.characters = []
       
    def capability(self, char):
        '''Returns how capable the character is at mastering this encounter.
       
        A percentage is returned. 100 means the character will master this
        encounter every single time. 1 means the character will master this
        encounter in 1 out of 100 tries (on average).
        '''
        # sub classes must implement this method
        return -1
       
    def most_capable(self, charlist):
        '''Returns the character most capable of mastering an encounter check.
        '''
        cap2char = {}
        for char in charlist:
            # there could be several chars with equal capability
            try:
                cap2char[self.capability(char)].append(char)
            except KeyError:
                cap2char[self.capability(char)] = [char]
        maxcap = max(cap2char.keys())
        most_capable = random.choice(cap2char[maxcap])
        return most_capable
       
    def take_check(self, char):
        '''A character takes an encounter check, returns True if successful.
        '''
        roll = random.randint(0, 99)
        if roll<self.capability(char):
            self.mastered_check(char)
            passed = True
        else:
            self.failed_check(char)
            passed = False
        return passed
           
    def mastered_check(self, char):
        '''Applies the effects of a successful encounter check to the character.
        '''
        # should increase character tiredness here
        char.tiredness += 20
        # could also increase happiness, experience, ...
       
    def failed_check(self, char):
        '''Applies the effects of a failed encounter check to the character.
        '''
        # should increase character tiredness here
        char.tiredness += 20
        # should also apply negative effects: reduce health, happiness
       
    def run_encounter(self):
        '''This will play out the encounter.
        '''
        msg = "no characters defined for encounter '%s'"
        assert self.characters, msg % self
        # determine the maximum number of failed checks
        maxfail = 5 - self.difficulty
        # perform up to five encounter checks
        failedchecks = 0
        for i in range(0, 5):
            checkchar = self.most_capable(self.characters)
            success = self.take_check(checkchar)
            if not success:
                failedchecks += 1
        # see if the characters mastered the encounter
        if failedchecks>maxfail:
            mastered = False
            for char in self.characters:
                self.failed_encounter(char)
        else:
            mastered = True
            for char in self.characters:
                self.mastered_encounter(char)
        return mastered
       
    def mastered_encounter(self, char):
        '''Applies the effects of a mastered encounter to the character.
        '''
        char.experience += (self.difficulty * self.difficulty)
        # could also increase happiness, fame
       
    def failed_encounter(self, char):
        '''Applies the effects of a failed encounter to the character.
        '''
        pass
        # should apply negative effects: reduce health, happiness, fame
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 20, 2013, 07:19:17 AM
I'm still within text files and excel tabs now, but I'm willing to put it all into renpy code afterwards. It look like a repetitive work, so I should be able to do that if someone help me with first example.

After you're done with preparations, give me the most complicated interaction with as many hooks/conditions/requirements as possible and I'll write that code for you. You can work from there on your own and ask question if you get stuck with something.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 20, 2013, 07:26:53 AM
Hey guys,

here's the first version of an encounter system. The basic idea is to calculate a percentage, the capability, from the attributes of the character trying to master the encounter. Then the capability is checked five times against a random number between 0 and 99. Then, failures are counted. Very hard encounters allow no failures, very easy ones allow four failures. If the number of failed checks is not greater than the allowed number of failed checks, the encounter has been mastered. For a more detailed explanation, please look at the comments in the code below.

I'm not perfectly happy with the success percentages, but it's good enough I think.

Do you like the system so far?

The goal is that you can later write (for example):
Code: [Select]
trap = TrapEncounter()
trap.difficulty = 4
trap.characters = [warrior1, warrior2]
success = trap.run_encounter()

@Xela
I will use inheritance to implement this as not using it would multiply lots of code. However, if you insist, we can take the inheritance out when copying the code into RenPy.

The following code is untested, will contain typos and will not run. I show it here so you can review the comments and the basic system.

Code: [Select]
class BaseEncounter(object):
    '''Represents a problem questing characters have to master.
   
    Difficulty
    The difficulty describes how hard it is to master this encounter. It ranges
    from 'very easy' = 1 to 'very hard' = 5.   
   
    Mastering the encounter
    In order to master the encounter, the characters must pass a number of
    encounter checks equal to the difficulty, e.g. one check for a very easy
    encounter or three checks for a normal encounter. If they succeed within
    five tries, they master the encounter. If the characters fail at
    6 - difficulty encounter checks, e.g. 2 for a hard enounter, they fail the
    encounter and collectively suffer consequences.
   
    The encounter check
    A random number between 0 and 99 is rolled. If it is lower than the
    capability of the character, the check succeeds.
   
    Probability of failure at various capabilities and difficulties
    10% capability "Rookie"
        'very easy', one successful check needed to master encounter
            probability to fail one check: 1 - 0.1 = 0.9
            probability to fail all five: 0.9 * 0.9 * 0.9 * 0.9 * 0.9 = 0.59
            Rookies succeed at very easy encounters in 41 out of 100 tries.
           
        'very hard', five successful checks needed to master encounter
            probability to succeed on one check: 0.1
            probability to master all five: 0.1 * 0.1 * 0.1 * 0.1 * 0.1 =0.00001
            Rookies succeed at very hard encounters in 1 out of 10000 tries.
           
    90% capability "Master"
        'very easy', one successful check needed to master encounter
            probability to fail one check: 1 - 0.9 = 0.1
            probability to fail all five: 0.1 * 0.1 * 0.1 * 0.1 * 0.1 = 0.00001
            Masters succeed at very easy encounters in 9999 out of 10000 tries.
           
        'very hard', five successful checks needed to master encounter
            probability to succeed on one check: 0.9
            probability to master all five: 0.9 * 0.9 * 0.9 * 0.9 * 0.9 = 0.59
            Masters succeed at very hard encounters in 59 out of 100 tries.
    '''
    def __init__(self):
        self.difficulty = 3
        self.characters = []
       
    def capability(self, char):
        '''Returns how capable the character is at mastering this encounter.
       
        A percentage is returned. 100 means the character will master this
        encounter every single time. 1 means the character will master this
        encounter in 1 out of 100 tries (on average).
        '''
        # sub classes must implement this method
        return -1
       
    def most_capable(self, charlist):
        '''Returns the character most capable of mastering an encounter check.
        '''
        cap2char = {}
        for char in charlist:
            # there could be several chars with equal capability
            try:
                cap2char[self.capability(char)].append(char)
            except KeyError:
                cap2char[self.capability(char)] = [char]
        maxcap = max(cap2char.keys())
        most_capable = random.choice(cap2char[maxcap])
        return most_capable
       
    def take_check(self, char):
        '''A character takes an encounter check, returns True if successful.
        '''
        roll = random.randint(0, 99)
        if roll<self.capability(char):
            self.mastered_check(char)
            passed = True
        else:
            self.failed_check(char)
            passed = False
        return passed
           
    def mastered_check(self, char):
        '''Applies the effects of a successful encounter check to the character.
        '''
        # should increase character tiredness here
        char.tiredness += 20
        # could also increase happiness, experience, ...
       
    def failed_check(self, char):
        '''Applies the effects of a failed encounter check to the character.
        '''
        # should increase character tiredness here
        char.tiredness += 20
        # should also apply negative effects: reduce health, happiness
       
    def run_encounter(self):
        '''This will play out the encounter.
        '''
        msg = "no characters defined for encounter '%s'"
        assert self.characters, msg % self
        # determine the maximum number of failed checks
        maxfail = 5 - self.difficulty
        # perform up to five encounter checks
        failedchecks = 0
        for i in range(0, 5):
            checkchar = self.most_capable(self.characters)
            success = self.take_check(checkchar)
            if not success:
                failedchecks += 1
        # see if the characters mastered the encounter
        if failedchecks>maxfail:
            mastered = False
            for char in self.characters:
                self.failed_encounter(char)
        else:
            mastered = True
            for char in self.characters:
                self.mastered_encounter(char)
        return mastered
       
    def mastered_encounter(self, char):
        '''Applies the effects of a mastered encounter to the character.
        '''
        char.experience += (self.difficulty * self.difficulty)
        # could also increase happiness, fame
       
    def failed_encounter(self, char):
        '''Applies the effects of a failed encounter to the character.
        '''
        pass
        # should apply negative effects: reduce health, happiness, fame

Looks good, I do not have time to try it out right now, maybe later in the evening. Do not take anything out. Program as you see fit and I'll ask questions if something is not clear to me. Let's agree to work this way from now on, use any standard python/pygame libraries as you please. Avoid inheritances when possible but use it when it is an obvious advantage and writes better code.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 20, 2013, 07:28:42 AM
The goal is that you can later write (for example):
Code: [Select]
trap = TrapEncounter()
trap.difficulty = 4
trap.characters = [warrior1, warrior2]
success = trap.run_encounter()
Maybe some traits could increase or decrease probability of successful check a little (5-10%), regardless of stat value, for example Assassin or Warrioir in a fighting check, or Clumsy an a trap check.
Something like
trap.goodtraits = [assassin, warrior]
trap.badtraits = [clumsy]
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 20, 2013, 08:23:13 AM
Checking vs a random  to 99 is not correct. I assume that it is the skill being checked here. Some skills in Pytfall can go waaaay above 100.
j
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 20, 2013, 09:02:04 AM
@Xela
The random number (0 to 99) is checked against a characters capability for a certain encounter. This capability is defined as a percentage (1 to 100) and is calculated from the characters attributes (and possibly traits). It is the responsibility of the encounter to calculate the capability correctly.

@DarkTl
Factoring in traits is entirely possible and should be done in the implementation of the capability method of the respective encounter class, TrapEncounter in the given example.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 20, 2013, 10:24:43 AM
@Xela
The random number (0 to 99) is checked against a characters capability for a certain encounter. This capability is defined as a percentage (1 to 100) and is calculated from the characters attributes (and possibly traits). It is the responsibility of the encounter to calculate the capability correctly.

@DarkTl
Factoring in traits is entirely possible and should be done in the implementation of the capability method of the respective encounter class, TrapEncounter in the given example.

Kewl. It sounds both fun and complex. We'll wait for rest of the code.

I will put on a couple hours in advanced logic of whore job tonight if time allows. Right now it's the most basic variant of itself.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 20, 2013, 06:02:10 PM
Did some good work on whore job tonight! Now it has skill checks, modifies more stats, more checks for refusals, splits income by house percentage and has a much more coherent code structure that I am beginning to adapt for all jobs. Also fixed a couple of small bugs that poped up here and there.



I would post code just for the fun of it but usual error gets in the way:

================================
The following error or errors occurred while posting this message:
The message exceeds the maximum allowed length (20000 characters)
================================

Already gave it a quick test, couple of pics will be attached to the post.

More and better texts are needed but there is still to much work left on logic for me to create a pastebin. In any case, I'll see if I can get some sleep now...

 
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 21, 2013, 04:48:51 AM
A couple of questions. Do we actually have, or supposed to have, or will have years in game's calendar? And if yes, which year is now ingame?

Also I'd like to make some cleaning in dropbox folder, since it becomes a bit messy. Does anyone still need pics I've uploaded in the very start of this thread, like advertising staff and so on? I'll just reorganize them if yes, and delete if no.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 05:08:39 AM
A couple of questions. Do we actually have, or supposed to have, or will have years in game's calendar? And if yes, which year is now ingame?

Not for the Sim Brothel version unless team feels like one is required. Maybe for WM version, but even there I cannot see significant advantage in it. I don't recall any good events in other games that used specific dates that cannot be just day numbers. Moon calender/Day of the week calender Rudi coded in on the other hand offers great possibilities.


Also I'd like to make some cleaning in dropbox folder, since it becomes a bit messy. Does anyone still need pics I've uploaded in the very start of this thread, like advertising staff and so on? I'll just reorganize them if yes, and delete if no.

I have them on my PC separately and I am likely to require those for interface design.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 21, 2013, 05:17:39 AM
Does world/land/state/whatever where events take place have a name? Or any geographical details at all? Is it a planet in the first place, or some dimensional pocket?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 06:03:50 AM
Does world/land/state/whatever where events take place have a name? Or any geographical details at all? Is it a planet in the first place, or some dimensional pocket?

LoL

Definitely a planet :) There are mountains, forest, sea and a river nearby.

Maybe not to far from Crossgate. I want to call the city PyTFall unless better name pops up. Form of government = City State.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 21, 2013, 06:19:34 AM
OK then, I'll start to work on intro, basic plot and 3 simple endings.
Just in case, all pics I've found earlier except those in shared folder, a new link (https://dl.dropbox.com/u/79429937/Staff.7z).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 06:48:11 AM
OK then, I'll start to work on intro, basic plot and 3 simple endings.
Just in case, all pics I've found earlier except those in shared folder, a new link (https://dl.dropbox.com/u/79429937/Staff.7z).

Ok, don't forget to include logical conditions for those endings as well
.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 21, 2013, 01:04:43 PM
Check my folder for intro and ending pics and texts. Checking for errors and looking for even more suitable pics would be appreciated. Anyway, this is the best I can do with semantic parts of the plot.

I'm still thinking about intermediate staff, and I guess we still need a hidden stat reflecting player deeds, because if we will have plot-related quests, just calculation of free girls and slaves won't be enough. Besides, buying a slave and enslaving a free girl are two very different things.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 02:04:29 PM
Check my folder for intro and ending pics and texts. Checking for errors and looking for even more suitable pics would be appreciated. Anyway, this is the best I can do with semantic parts of the plot.

I'm still thinking about intermediate staff, and I guess we still need a hidden stat reflecting player deeds, because if we will have plot-related quests, just calculation of free girls and slaves won't be enough. Besides, buying a slave and enslaving a free girl are two very different things.

All in good time. About the plot, you're very close but not exactly on target (obviously you're not a mindreader :) ).

As for stats and new features... I am beginning to see why there is such a high 'mortality rate' of H-Sim projects, workload is monstrous. Lets take care of one thing at a time.

- Enslavement of free girls will only be available in WM version.

- We can have a hidden stat for player obviously, player class is still very weak. I'll get around to it eventually.

-There will be three kinds of 'quests':

#Story (Plot) quests (that can open unique endings and storylines) WM version only, SimBro endings based on stats and counters ONLY.

#Simple Quests (To get a girl, raid something, go on a hunt for something, win girl's favor)

#Game Quests (Tasks) (Have 2 brothels before day 20, Have a sex with city girl, Rank up three prostitutes to rank 3 in 30 days etc.)

- Basic endings should depend on simple stuff:

# Like if the player managed to buy and run best brothel in the city by endgame?
# Was able to train and employ 50 whores+strippers by endgame?
# Was able to train and  employ 50 warriors by endgame?
# Does he have 20 rank 9 whores in his brothels?
# Did he complete more than 15 quests before endgame?

- Advanced ending are the stuff you've suggested:

# Was the player able to complete "Slaver's" story path (Prolly along with some logic checks as well)
# Married a highborn daughter of city-counselor.
# Followed a storypath of one of the girls (Maybe if game gets a following someone will create a huge story line in SM style for one or more of the girls)
# Etc.

Basically an ending that requires more than just a check of stats at endgame, an ending that basically changes entire city law (I would like to allow player to continue playing after gameover if possible (Gameover doesn't blow up the city or something))
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 21, 2013, 02:19:30 PM
# Like if the player managed to buy and run best brothel in the city by endgame?
How we'll determine endgame for such simple tasks? Don't tell me player will have limited time from the start, I hate such things  :(

Also, any notes about the intro?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 03:14:12 PM
How we'll determine endgame for such simple tasks? Don't tell me player will have limited time from the start, I hate such things  :(

Also, any notes about the intro?

Limited time is a part of usual SimBro design. I don't care much for that either but it is fairly difficult to code basic endings without it. Also Basic quests are close to impossible to design if there is no final day. I am open for a discussion on a different approach but if you want a gameplot based ending, two or three of those will take a VERY long time to build. A LOT longer than simple logical checks at a given day for sure.

About the intro,

I want to base the atmosphere in PyTFall on free cities from Songs Of Ice and Fire novels ( maybe you've seen Game Of Thrones (That's first part of SoI&F televised) or read the books). Unlike with Alkion, I do not want to take races, names, locations, systems from there because it limits the game, just a general ideas.

Must be changed in/worked into your Intro:

 - Slave revolts are not frequent.
 - Not 90% of cityfolk are slaves... I wrote somewhere about many social statuses. There are plenty of paid workers, farmers and so on as well.
 - Slaves were trained to be soldiers and sold in large lots.
 - Slaves took part in Arena games, best fighters could win their freedom.
 - At one point someone organized a revolt that hasn't been seen in the past few centuries. Once it was started, it took a live of it's own. Identity of that person was never discovered. Spells that prevented few people who knew his true identity to reveal it were to powerful and couldn't be broken even by the best of mages.
 - Slave revolts were eventually extinguished. Many slaves were happy with their masters, especially those with skills in battle, magic, education, service who were very well treated and had a decent life of their own.
 - In order not to allow such revolts to repeat themselves, slaves that took sides of the City Council, were given freedom and while some left, overwhelming majority remained with their former master as free servants.
 - All mages on the rebel side got their magic sealed, skilled warriors sold off in cheap lots to the worst kinds of buyers.
 - New laws, no private slavetrainer is allowed to train slaves in magic or combat under the penalty of death. Special ministry was formed to train soldier slaves to sell in large lots as the city has for centuries.
 - Now private slavetrainers train pleasure slaves, teachers and servants that are also always in high demand.
 - Free warriors now fight in Arena, just as ferociously as before.

Maybe more, we don't have to write the perfect intro right now, it can be edited later, but this is what I had in mind. But like with everything else, it's an open matter for discussion.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: fires_flair on February 21, 2013, 05:33:24 PM
just my two cents, but I don't mind if the game has an official end time. But it's always better if I can continue playing after that date, and don't have to restart (unless I want to ;) ).
oh, for the quest, if they are "do ____ before ____" are you guys going to have a way to complete the quest early? (hate that about simbro)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 21, 2013, 05:52:04 PM
just my two cents, but I don't mind if the game has an official end time. But it's always better if I can continue playing after that date, and don't have to restart (unless I want to ;) ).

That is a must as far as I am concerned. Also there is another approach: Lets say that player is given 300 days (or 400, 500, 600, whatever) to accomplish the tests for basic endings. On that day game, instead of jumping the label to main menu, game sends you to another label that checks your game progress and achievements and displays a corresponding ending event. After that it offers you to restart or to continue playing allowing to achieve more complicated endgame (like a gamelong story based quest when that is available and so on.) My main objective right now is to complete a simple SimBro version with simple endings and release a final product (Final 1.0 version of SimBrothel: PyTFall). After that development team can take that solid codebase and add amazing game elements one after another while the community builds girlpacks ans quests.

oh, for the quest, if they are "do ____ before ____" are you guys going to have a way to complete the quest early? (hate that about simbro)

Yeap, it will be like in SimBro 1x, you can complete the quest even on the same say you received it (lets say objective is to shag a city girl (time given = 12 days) and you already have built an excellent relationship with several city girls. So you just go, find one, take her on a date spending couple of APs and some cash.. one thing leads to another and you can just finish the quest on the same day you received it)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 22, 2013, 12:17:39 AM
Limited time is a part of usual SimBro design. I don't care much for that either but it is fairly difficult to code basic endings without it.
Collect a really huge amount of money, destroy all competitors, have 80% of citizens as your regular customers. Even complete any 3 or 4 of the tasks you suggested as basic endings requirements (things like if the player managed to buy and run best brothel in the city).

I wrote somewhere about many social statuses. There are plenty of paid workers, farmers and so on as well.
Yeah, I forgot about it. My bad.

- Slaves were trained to be soldiers and sold in large lots.
 - Slaves took part in Arena games, best fighters could win their freedom.
I don't know. Isn't it just plainly stupid to make a lot of soldiers from slaves? Even in ancient Rome people were smarter. One thing is to train them for arena or as personal mages/bodyguards, but as an army? You might as well have breakfast on a barrel of gunpowder every day.

Slave revolts were eventually extinguished. Many slaves were happy with their masters, especially those with skills in battle, magic, education, service who were very well treated and had a decent life of their own.
And we have girls from hundreds of different worlds because..?
That's why I use abnormal weapon (and of course because it sounds cool :) ). WM has infinite catacombs (who knows what is going on there), in slavemaker almost all of them live in the same world (I suspect it's not a planet in our understanding, but some kind of infinite plane), and otherworld doesn't need any comments.

I want to base the atmosphere in PyTFall on free cities from Songs Of Ice and Fire novels
Maybe you'll write text for intro youtself  since you already have completely ready concept? I think it will save us a lot of time, after all I'm not a mindreader, just as you told.
I'll find suitable pics for it then.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 04:39:08 AM
Collect a really huge amount of money, destroy all competitors, have 80% of citizens as your regular customers. Even complete any 3 or 4 of the tasks you suggested as basic endings requirements (things like if the player managed to buy and run best brothel in the city).

LoL

You really like throwing insane percentages like 80% of citizens as regular brothel clients... or 90% of population as slaves. Lets keep these number in checks...



I don't know. Isn't it just plainly stupid to make a lot of soldiers from slaves? Even in ancient Rome people were smarter. One thing is to train them for arena or as personal mages/bodyguards, but as an army? You might as well have breakfast on a barrel of gunpowder every day.

LoL

That is how two great cities were conquered in SoIF, someone who opposed slavery bought a lot of 10k soldier slaves and used those to conquer those cities... People tend to get careless when they go without troubles for a long while.

Romans were not stupid btw.

But it's a very profitable business that they've managed to keep under control for centuries. One revolt, even a bad one, shouldn't change that. Just making authorities more cautious.

And we have girls from hundreds of different worlds because..?

That is up for grabs, I don't really care why. We can simply not offer an explanation at all or come up with some BS story. In all seriousness, character in most H-Sim that come from famous games/anime simply have loosely based personalities on their actual counterparts from the series. If players of SM/OtherWorld/WM believe that characters behaviors are well mimicked in those games if their personalities are taken from the series exactly as they're there, these players are just stupid...

Most girls used in this games would die fighting or commit suicide long before allowing themselves to be enslaved or whored out regardless of how well you manage your brothel or training business. Actually allowing themselves to be enslaved isn't even an option in many cases.

What I am trying to say is that we do not have to be exact about this issue or how it's happening, or how these girls came to be in PyTFall. Just as long as their personality traits and looks are the same, players will feel familiarity to these character and be interested in a spin writers/modders/devs take on them.


Maybe you'll write text for intro youtself  since you already have completely ready concept? I think it will save us a lot of time, after all I'm not a mindreader, just as you told.
I'll find suitable pics for it then.

I gave out more than enough information on the world, write it if you have time. If I write it myself, it will be a lot later. I skipped coding yesterday so I am planning to put a few hours in it tonight.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 22, 2013, 05:25:50 AM
Romans were not stupid btw.
They were pretty careless about their slaves, but not as careless as you suggest people of PyTFall should be. Even so, they had major revolts, but thanks to their army they suppressed slaves with quite significant losses.
Imagine if they had army of wannabe rebels, trained slaves, not free people. Even if they lost, Rome would lie in ruins. As well as PyTFall.
I know this is just a game, a fiction. But still I don't believe it. Maybe because I didn't read SoIF, but read some history books, who knows. Never mind me  :)

I gave out more than enough information on the world, write it if you have time. If I write it myself, it will be a lot later. I skipped coding yesterday so I am planning to put a few hours in it tonight.
It's not about the information, you know. You asked for atmosphere of novels I never read (and I don't like its screen version, to be honest). This is just impossible, especially for non-writer. I guess I could try to read it, but naturally it will take some time, and there is no guarantee I like it.

So if anyone feels like writing intro and already read SoIF, please go ahead and do it
 8)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 06:19:16 AM
They were pretty careless about their slaves, but not as careless as you suggest people of PyTFall should be. Even so, they had major revolts, but thanks to their army they suppressed slaves with quite significant losses.
Imagine if they had army of wannabe rebels, trained slaves, not free people. Even if they lost, Rome would lie in ruins. As well as PyTFall.
I know this is just a game, a fiction. But still I don't believe it. Maybe because I didn't read SoIF, but read some history books, who knows. Never mind me  :)
It's not about the information, you know. You asked for atmosphere of novels I never read (and I don't like its screen version, to be honest). This is just impossible, especially for non-writer. I guess I could try to read it, but naturally it will take some time, and there is no guarantee I like it.

So if anyone feels like writing intro and already read SoIF, please go ahead and do it
 8)

Just for the record, the only things I want to take from SoIF is what I've stated in the thread. Anything more than that will limit the game, like with Alkion. If anyone wants to write introduction, it's even better because some good stuff may be added to the story that I would never consider :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 12:25:43 PM
Right,

Well, I have the rest of the evening off so plan is to get some good work done on the code. Whore job looks much better now, in fact I think it is very close to where I want it to be for the SimBro version.

I am getting really sick with advanced logic so I think creating schools and school screen will be a nice distraction, especially since crew has gathered so many beautiful pics!

==================================================
It's not like I am complaining or anything but what happened with pics for Obedience and XXX school :D ?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 22, 2013, 01:32:23 PM
Heh, you never mentioned these schools until now, so I guess they waiting for us somewhere in the Internet  :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 01:55:42 PM
Heh, you never mentioned these schools until now, so I guess they waiting for us somewhere in the Internet  :D

LoL

Oki, this is how I want to approach schools (instead just sending girls to gain stats until they are maxed out):

- There will be a number of courses (like Dance, XXX, Combat etc.) that will be updated every couple of days (new once added, old once removed. Each course will have a duration but you can pull your girl out at any time. If girl completes the full course, it will mean extra bonus to stats)

- Each course will have a teacher. Teachers for now will be faceless and nameless, as game expands we can add names and faces, maybe even make couple of those into NPCs. Teacher will have teaching skill (How good of a teacher he/she is) and knowledge (what max can a stat be raised to).

- Fees will be charged daily and depend on skills and knowledge of the teacher.

What do you think?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 22, 2013, 02:12:54 PM
Sounds interesting. Just make sure fees won't be just for show, especially with 70+ stats.

Also, how about using level restrictions? Something like max available stat in the school = character level * 10 (5, maybe 20)? Even if player is rich, this will prevent instant leveling of girls until they will have at least basic experience.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 03:00:40 PM
Sounds interesting. Just make sure fees won't be just for show, especially with 70+ stats.

Also, how about using level restrictions? Something like max available stat in the school = character level * 10 (5, maybe 20)? Even if player is rich, this will prevent instant leveling of girls until they will have at least basic experience.

I'll add that later, we need to have levels first :)

Also scratch out  the obedience school. I have an idea to send girls to slavetrainers instead if you need their character lowered for some reason.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 22, 2013, 03:08:03 PM
Huh? I could swear I saw level string in the game's interface last time I checked it.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 03:13:59 PM
Huh? I could swear I saw level string in the game's interface last time I checked it.

It was a somewhat more complicated Rank system for Prostitutes. There will be levels as well, it's not hard to code in.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 22, 2013, 03:53:12 PM
LoL

Oki, this is how I want to approach schools (instead just sending girls to gain stats until they are maxed out):

- There will be a number of courses (like Dance, XXX, Combat etc.) that will be updated every couple of days (new once added, old once removed. Each course will have a duration but you can pull your girl out at any time. If girl completes the full course, it will mean extra bonus to stats)

- Each course will have a teacher. Teachers for now will be faceless and nameless, as game expands we can add names and faces, maybe even make couple of those into NPCs. Teacher will have teaching skill (How good of a teacher he/she is) and knowledge (what max can a stat be raised to).

- Fees will be charged daily and depend on skills and knowledge of the teacher.

What do you think?
That sounds interesting. My only concern would be that this system is quite involved, which will demand significant micromanagement from the player.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 04:05:20 PM
That sounds interesting. My only concern would be that this system is quite involved, which will demand significant micromanagement from the player.

Well, if minimum duration of a single course is 14 days for example, it shouldn't be all that bad?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 22, 2013, 04:54:51 PM
Because sending girl to school is not something you have to do, I think a little micromanagement is acceptable.
But if it is a problem, maybe there can be a course with a really bad teacher that is always available or something...


If courses will be selected from a list and not by static buttons and have their own teachers, nothing is preventing from creating courses that teach more then one stat, or something unique or ones that are part of a quest/storyline (like send 5 girls to a secret training) in future, is that right?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 22, 2013, 05:07:32 PM
Well, if minimum duration of a single course is 14 days for example, it shouldn't be all that bad?
I agree. Minimum duration of 3-4 days would be a problem IMHO, 14 days should be ok.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 22, 2013, 05:25:41 PM
Because sending girl to school is not something you have to do, I think a little micromanagement is acceptable.
But if it is a problem, maybe there can be a course with a really bad teacher that is always available or something...

There will be plenty of courses to choose from and bad teacher will mean lower price as well.

If courses will be selected from a list and not by static buttons and have their own teachers, nothing is preventing from creating courses that teach more then one stat, or something unique or ones that are part of a quest/storyline (like send 5 girls to a secret training) in future, is that right?

What would be preventing that even if we used static buttons?

All courses will train multiple stats, randomly. Chance for improvement will depend on teachers teaching skill and max possible improvement will depend on teachers knowledge.

This is the way it stands now:

Beauty = dict(action = 'Beauty Course', primestats = ['charisma'], secstats = ['refinement']),
Combat = dict(action = 'Combat Course', primestats = ['attack', 'magic', 'defence', 'agility'], secstats = ['constitution','fame']),
Dance = dict(action = 'Dance Course', primestats = ['constitution', 'strip'], secstats = ['agility', 'refinement', 'charisma', 'fame']),
Etiquette = dict(action = 'Etiquette Course' ,primestats = ['refinement', 'intelligence'], secstats = ['charisma', 'reputation']),
Service = dict(action = 'Service Course', primestats = ['service'], secstats = ['reputation']),
XXX = dict(action = 'XXX Course', primestats = ['anal', 'normalsex', 'blowjob', 'lesbian'], secstats = ['strip', 'constitution'])

Higher chance for increment of primestats and lower for secstats.

For something Unique, like a trait gain or an event during the study, code will be written just like for jobs.

I am not sure about stroryline/Quests. Quest is quest, it much simpler to make such a training a part of a quest-script (like having them disappear from the game by changing their location to something unique and having them reappear any amount of days later with something done to their traits and stats, no matter how specific that something may be).

==================================================================================
Ok, it's getting late. I ended up writing logic again, just for schools this time :)

I'll see if I can write code more for this tomorrow.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 23, 2013, 02:43:50 AM
That reminds me, how you are going to handle traits? I mean, how easily a girl can gain or lose a permanent trait? You know, we have two basic examples, wm and wm ex. I don't even know which of them is better.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 23, 2013, 06:02:46 AM
That reminds me, how you are going to handle traits? I mean, how easily a girl can gain or lose a permanent trait? You know, we have two basic examples, wm and wm ex. I don't even know which of them is better.

Any way that makes sense.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 23, 2013, 06:39:01 AM
I'm going to rework traits (we have service stat now), so I have questions about customers.

Do they have any preferences? I thought about adding Twisted trait from wm ("Her thought of pleasure is not... ordinary. Customers need to have a rather exotic taste or they won't enjoy what she has in store"), but if their preferences are rather simple, it won't make any sense.

Do they have a sex? I'm not talking about whoring here, I mean lesbian waitress enjoys serving  a pretty female customer much more than male one. And vice versa.

Besides, is it possible to modify values of health, mp and fatigue? I mean, can I use strings like <max mana = '20' />, or <min fatigue  = '-20' />, or <mod health = '20' />?
 
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 23, 2013, 08:18:23 AM
Besides, is it possible to modify values of health, mp and fatigue? I mean, can I use strings like <max mana = '20' />, or <min fatigue  = '-20' />, or <mod health = '20' />?

Yeah, sure. mod health 20 will simply heal the girl by 20 points. We don't have mana but we do have mp and max mp will modify maximum mp girl can have.


Do they have a sex? I'm not talking about whoring here, I mean lesbian waitress enjoys serving  a pretty female customer much more than male one. And vice versa.

We'll add stuff like this on somewhat simpler level later in development. Lets say a girl has lesbian trait, during service job, we'll add a check:

if "lesbian" in chr.traits:
    dummycostumer = self.create_costumer()
    if dummycostumer.sex == female and dummycostumer.chasirma > 50:
        txt += "%s enjoyed serving drinks to a particularly cute girl,  they had a nice chat! \n"%chr.name
        chr.joy += random.randint(1,3)
        chr.refinement += random.choice([0,0,0,1])

Also as you can imagine girl in the bar or a club is not serving one client but a large number of clients. It would be tedious to generate every single one of those clients for checks so I want to handle traits in this way.

Do they have any preferences? I thought about adding Twisted trait from wm ("Her thought of pleasure is not... ordinary. Customers need to have a rather exotic taste or they won't enjoy what she has in store"), but if their preferences are rather simple, it won't make any sense.

Right now it is not used that much. Basically, it's a process, I am doing basecode for advanced logic right now, we'll add more and more trait checks and events as time allows. Costumer itself is a separate class so there is no limitations on how complex it can get.
   
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 23, 2013, 11:18:14 AM
I see. What if we set min mp to 10, does girl will be able to cast spells with cost <= 10 infinitely?
And with min health set to 10 will she become immortal?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 23, 2013, 12:49:23 PM
I see. What if we set min mp to 10, does girl will be able to cast spells with cost <= 10 infinitely?
And with min health set to 10 will she become immortal?

It depends, battle engine has it's own system, the moment battle engages data is relayed there and all normal parameters of sGirl class are no longer valid. Basically that means that min health is not applicable in battle scenarios. Same thing for MP. In PyTFall  itself, no code exists to cast spells at the moment so it will depend on how we code it. I really like the idea of a truly powerful spellcaster to be able to cast simple spells indefinitely even if low on mp so if I ever code spells into girl's class mp just might work that way.

Girls do not die if health reaches 0, they simply cannot work or train right now. I'll add interactions block soon as well.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 23, 2013, 03:46:00 PM
Damn.. what the hell happened to OverHao again? He keeps disappearing and we need a graphics designer...

I'll try to finish schools this weekend, but it wouldn't hurt to have a couple of decent screens already...

Can anyone make or just find on the net a couple of good looking frames that would fit PyTFall's wood+metal style? Size doesn't matter, RenPy will take care of that...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 23, 2013, 07:51:17 PM
Almost 3a.m. but coding this was a lot of fun! Feels great taking a break from mindnumbingly cold and boring advanced logic  and code something new :)

In any case, this is what I managed with our graphical designer M.I.A:


(http://img103.imagevenue.com/loc760/th_667102149_1_123_760lo.jpg) (http://img103.imagevenue.com/img.php?image=667102149_1_123_760lo.jpg)

Pics for courses are randomly chosen from a variety of images that Dark and CW hunted down on the net. Those pics are also buttons that send your girl to do the course. There is still some logic and testing left but I'll try to wrap it up tomorrow.
     
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 24, 2013, 01:21:35 AM
Looks good. One thing, in the bottom row you cannot clearly see days left string.
I'll see what I can do about frames.

Another question, how Fatigue works? If I increase its max, does girl actually become hardier?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 01:33:47 AM
Another question, how Fatigue works? If I increase its max, does girl actually become hardier?

They are just to tired to work or train. What do you mean by hardier? Fatigue is how tired they get so you cannot overwork them.

Looks good. One thing, in the bottom row you cannot clearly see days left string.
I'll see what I can do about frames.?

Both of those are viewports and there are 20 courses there I've generated for testing. You just have to scroll up or down.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 24, 2013, 01:38:21 AM
For now max Fatigue is 300. If some trait will set it to 400, girl will be able to work until its current value becomes 400, not 300 as it was before?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 01:46:22 AM
For now max Fatigue is 300. If some trait will set it to 400, girl will be able to work until its current value becomes 400, not 300 as it was before?

Not really, but it IS supposed to work that way. I'll make sure it works like that in the future.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 24, 2013, 07:29:20 AM
Alright, I've updated traits and refreshed most of their effects on jobs in corresponding file.
I've also found some wooden pics. Since "frame" is rather indistinct word, you probably should explain me what do you need them for if you don't like those.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 09:18:25 AM
Alright, I've updated traits and refreshed most of their effects on jobs in corresponding file.
I've also found some wooden pics. Since "frame" is rather indistinct word, you probably should explain me what do you need them for if you don't like those.

Thanks you! Frames are also very good. If you run across more, keep collecting but I definitely now have more options. I am busy right now but I'll try to write some code later in the evening.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 03:24:53 PM
Alright, I've updated traits and refreshed most of their effects on jobs in corresponding file.
I've also found some wooden pics. Since "frame" is rather indistinct word, you probably should explain me what do you need them for if you don't like those.

Since you found us a very good amount of decent frames: I cooked up a simple message screen, we can now put out warnings. All interaction with all other screen elements is disabled until Ok button is clicked. This screen is reusable and will come very handy in many places!:


(http://img225.imagevenue.com/loc1155/th_173774412_2_123_1155lo.jpg) (http://img225.imagevenue.com/img.php?image=173774412_2_123_1155lo.jpg)
     

===============================================
Oki, done coding for tonight...

@Dev Team

DropBox version has been updated to 0.26. Prolly new bugs and imbalances but game has matured (just take my work on it) :) It was a nice distraction to work on schools for a while but advanced logic for jobs is not going to write and balance itself, so that's what I am planning to work on next week (and prolly week afterwards since time next week is gonna be limited).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: E. on February 24, 2013, 03:31:50 PM
Looks like things are going smoothly. I'd love to fool around with this, since WM is getting repetitive. Early Alpha/Beta when?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 04:16:21 PM
Looks like things are going smoothly. I'd love to fool around with this, since WM is getting repetitive. Early Alpha/Beta when?

Early Alpha = One month or one and a half month if CW manages to take care of girlsmeets.

Beta = Three, maybe four month.

It's difficult to say, now that CW and Dark are helping in full throttle, it may get done sooner.

If you want to fool around: https://dl.dropbox.com/u/43556362/SimBro%20PytFall-0.26-win.rar
(still being uploaded as I write this)

Keep in mind that this is still a 200mb+ download and you cannot really play this yet due to unbalanced jobs, stats, unfinished screens, bugs and some things that are still left half-implemented. So it's just for what you've said: Fooling around :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 24, 2013, 07:09:10 PM
Quote from: PyTom
This is a bug in Ren'Py, since a change in bar value should cause an interaction restart.

I just committed a fix, which will be in the next 6.15 pre-release.


Great news, I wasn't doing anything wrong, bar will be fixed in the upcoming update of RenPy! This was literally the only thing in PyTFall I couldn't crack so far (I actually wanted to code an entire bar from scratch because of this :D)


Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 03:30:25 AM
I'm bored, so I thought about writing texts for Rest depending on traits. You know, Nerd reading a book, Nymphomaniac having some fun with herself and so on. Any objections or notes?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 03:52:57 AM
I'm bored, so I thought about writing texts for Rest depending on traits. You know, Nerd reading a book, Nymphomaniac having some fun with herself and so on. Any objections or notes?

Nope, definitely no objections. As for notes, I don't have any unless you're planning to code those into the game yourself.

Actually, maybe a note: remember that you can use any element of the game since we are not doing this through xml. Meaning any condition, like girl's rank, status, if brothel has a garden, if there is another girl in the same brothel or your employment and so on.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 04:23:55 AM
By the way, if anyone has some free time, we need to rework girlpack images and girl's xml files a bit. This is not a difficult task, especially for those who like hunting for pictures.

@CW: If you're still doing girlmeets, keep doing that, it's more important right now.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 04:59:08 AM
I guess I have free time, I have nothing to do at work right now anyway  :)
What do you mean by rework?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 06:00:04 AM
I think there is a bit misunderstanding about girlmeets. I'm not "doing" them. I'm not adding anything anywhere.
I like the simple simbro1x system with one introduction line and responses to player action (actually even simpler then simbro, because we agreed to not voice the player at all). My only concern was to get larger selection of those lines, to better match personalities and traits. But even after a week, I don't know what best approach would be... (and it's still only text, I don't even touch dates and gifts)


I'd like to help (but I think I'm more of use on girlpacks), but if you really want something from me to be done on girlmeets, I'm sorry, but you must explain me exactly what there's need to be done.  :(
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 06:35:00 AM
I guess I have free time, I have nothing to do at work right now anyway  :)
What do you mean by rework?

You're already doing trait texts for rest jobs. That is also important for the project. + messing with pics while at work might not be the best idea...

Adding Ino, Temari, Tsunade, Anko etc. from Naruto would not hurt...

What is needed for data.xml files:

Adding relevant traits and traitblocks for girl that we have.
Adding origin = "Naruto" (Or whatever Game/Anime girl comes from)
Editing occupation for girl in the city to something relevant to the game (like ServiceGirl, Prostitute, Warrior, Stripper and so on at least for now)
Making sure all slaves are in the market, there seems to be one running around in the city somewhere right now.

What is needed for pics:

We need specific picture descriptions (like not just blowjob category, also bj_deep, bj_titjob, bj_lickjob and so on), same for sex (sex_69, sex_doggy, sex_got (girl on top, rest for example, rest_onsen, rest_garden and so on). I don't want to use these as separate jobs but as parts of jobs we have to match with texts. Also this is for the future, I want to add "skills" in WM version that rate from 1 - 20. Skills will be more specific (deepthroat, lickjob, 69 and so on). max of 5 could be learned in schools, max of 5 while doing jobs or selftraining and 10 through personal training or hiring slavetrainer/master. Basically Valet Pletej/SM style. These skills will add to girl's price (significant amount) if she's slave and to her earnings while performing jobs. Same thing will be done to service skills, dancing, singing and so on.

We need new categories as well:

For schools:
dance
maid
etiquette
etc.

For Jobs:
club (waitress)
bar???


For events:
mast (mastrubation)

Another thing: This is something I've always wanted to do: Picture specific events. There are awesome pics available on the net, we need to choose only the best quality pics for this but for example:

Pics like these are f%cking begging to be next day resting events if all girls involved are in the same brothel and two of them are resting at the same time (inviting the other girl/girls to go play somewhere):


 (http://img219.imagevenue.com/loc667/th_789261202_5e7df5e8863b345e606de2981bb0e0ac_123_667lo.jpeg) (http://img219.imagevenue.com/img.php?image=789261202_5e7df5e8863b345e606de2981bb0e0ac_123_667lo.jpeg) (http://img160.imagevenue.com/loc544/th_178926361_sample_5c4429820175de1a7f4bcf3f7e389958_123_544lo.jpeg) (http://img160.imagevenue.com/img.php?image=178926361_sample_5c4429820175de1a7f4bcf3f7e389958_123_544lo.jpeg) (http://img230.imagevenue.com/loc443/th_789267816_sample_b853bf8f5b999a95033bbdb1a4ce2de7_123_443lo.jpeg) (http://img230.imagevenue.com/img.php?image=789267816_sample_b853bf8f5b999a95033bbdb1a4ce2de7_123_443lo.jpeg)


Not just for rest, but high quality pics for other jobs as well, accompanied by texts as job/rest events that activate only on certain conditions. If while searching for pics, something like this pops up and just seems perfect, collect these pics and I'll code events for them during jobs performance based on ANY conditions (Like traits, statuses, locations, jobs, multiple girls and so on).

     
PS: Keep in mind that the more categories like bj_deep or rest_garden, the better, I'll make sure they fall down if not available like domino's to simpler forms. But if they are available, we should use them... we're trying to make a next gen SimBrothel/WM after all :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 06:45:28 AM
I think there is a bit misunderstanding about girlmeets. I'm not "doing" them. I'm not adding anything anywhere.
I like the simple simbro1x system with one introduction line and responses to player action (actually even simpler then simbro, because we agreed to not voice the player at all). My only concern was to get larger selection of those lines, to better match personalities and traits. But even after a week, I don't know what best approach would be... (and it's still only text, I don't even touch dates and gifts)


I'd like to help (but I think I'm more of use on girlpacks), but if you really want something from me to be done on girlmeets, I'm sorry, but you must explain me exactly what there's need to be done.  :(

Just work like I do... start with simple texts and disposition mods. I'll add a bar representing disposition like in SimBro to the top of the screen during girlmeets later. It is impossible to do the entire thing right on the first try... Take 'whore' job design as an example, I've started with adding a sex pic, one line of text and mod of relevant sex stat three month ago. Today we have checks for refusals, multiple text choices, modding of many relevant stats, strip job performance effecting how client behaves on whore job (if there was a strip job and client attended it), complex wage system, house percentage income split and so on... Rome wasn't built in a day :) Just start with basics, learn new stuff, expand on it...


Edit:

If you decide to take care of packs, post girls you're working on here so noone does the same job twice.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 07:41:35 AM
Ok, I'll write what I have about girlmeets and what I was thinking about so we could decide what is useful and what is not and I start adding those in game (I upload file about that when I get home).


Also I look what I have for 3 naruto girls in my folder, because I still have resource images for them somewhere.
I also have 9 sailor senshi girls and two another in half-done state (I have pics but they still need about six days of sorting and editing).


However I must say I'm not sure about your plans with pictures. While it sounds nice, from my experience there are only a handful of girls with that variety of hentai pics. Actually even the service job is a hard one for less then top popular girls... and do we really need a masturbation? What is that good for in gameplay?


But hey, picture based events are the best. I'm already collecting these for my girls... but I always though about them as a part of unique girlpacks, you know, the modder part of things and not something to mention in development  :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 07:45:42 AM
I don't have any unless you're planning to code those into the game yourself.
Sadly, the language I use (Delphi) has very different syntax. I can read you code mostly, but to write it myself is a bad idea, unless you feel like cleaning others' mistakes for hours.

You're already doing trait texts for rest jobs. That is also important for the project. + messing with pics while at work might not be the best idea...
Alright, then I will finish texts first. Don't worry about pics, people must standing behind me to see what I'm doing, and the only door in my sight. Almost all packs I've ever made are done at work  :D

Adding Ino, Temari, Tsunade, Anko etc. from Naruto would not hurt...
I would prefer to add Xenosaga and Persona girls first, but if Cherry or someone else doesn't have enough time for looking for more Naruto pics, sure, why not.

Adding relevant traits and traitblocks for girl that we have.
"Traitblocks"? Do you mean blocks of traits, or blocked traits, or something else?  :)
Besides, since it's up to you to add all traits into code, maybe you need to view traits file and delete those you don't like/want?

Not just for rest, but high quality pics for other jobs as well, accompanied by texts as job/rest events that activate only on certain conditions. If while searching for pics, something like this pops up and just seems perfect, collect these pics and I'll code events for them during jobs performance based on ANY conditions (Like traits, statuses, locations, jobs, multiple girls and so on).

     
PS: Keep in mind that the more categories like bj_deep or rest_garden, the better, I'll make sure they fall down if not available like domino's to simpler forms. But if they are available, we should use them... we're trying to make a next gen SimBrothel/WM after all
Well, if you say so. Personally, I think all this is way too much for the one single coder, but if you want it, you will get it  8)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 08:29:30 AM
However I must say I'm not sure about your plans with pictures. While it sounds nice, from my experience there are only a handful of girls with that variety of hentai pics. Actually even the service job is a hard one for less then top popular girls... and do we really need a masturbation? What is that good for in gameplay?

Will fall back to profile otherwise. I made girlpacks myself for WM, there are plenty of pictures for many girls for a lot of categories, I just want to make sure pics fit texts as much as possible. Also game will include girls from high profile shows or with large amount of written content, those that come from high profile shows come with massive amount and variety of pictures.

Mast will be useful, all categories will be useful.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 08:45:26 AM
Sadly, the language I use (Delphi) has very different syntax. I can read you code mostly, but to write it myself is a bad idea, unless you feel like cleaning others' mistakes for hours.

I'll do it myself, I code this stuff really fast if base is ready.

I would prefer to add Xenosaga and Persona girls first, but if Cherry or someone else doesn't have enough time for looking for more Naruto pics, sure, why not.

You guys figure it out...


"Traitblocks"? Do you mean blocks of traits, or blocked traits, or something else?  :)
Besides, since it's up to you to add all traits into code, maybe you need to view traits file and delete those you don't like/want?

What do you mean "add to the code"? I'll add job checks, event checks relevant to traits, that is my task. Code that APPLIES traits effects to a girl, removes temp traits after the time expires and so on has been ready for a long time (like a month or something).

So what I mean, is that traits girls start with need to be added to girl's data.xml file. Also you can block certain traits PERMANENTLY for a girl in the same file. How it's done is somewhere in history of this thread.

I do not want to remove any of the traits you've created...

Well, if you say so. Personally, I think all this is way too much for the one single coder, but if you want it, you will get it  8)

I can handle it :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 08:57:11 AM
What do you mean "add to the code"? I'll add job checks, event checks relevant to traits, that is my task.
That's what I mean. Several checks and events for every single trait and who knows what else in the future. So right now you can make your life easier by removing traits you don't like  :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 09:15:27 AM
That's what I mean. Several checks and events for every single trait and who knows what else in the future. So right now you can make your life easier by removing traits you don't like  :)

Ok, I just took a look at them and I don't want to remove a single one... actually if I wasn't busy I would have started adding those to the jobs :D

Also, not all traits MUST have active effects, some can just mod stats and describe girl's personality or be used in events and dialogues. We'll only make the most straight to the point checks for the Alpha version and keep building on that! Dawdler for example, will have 50% chance to waste extra AP while doing service jobs :P

In any case, there is not one trait in the list that I would consider being out of place. Maybe we'll have to re-balance some traits in the future but they all remain. Job well done!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 10:06:34 AM
 ok, for packs, I rename and upload what I already have for sakura/tenten/hinata, but I will not do anything else for them or add other naruto girls for now. I never actually seen more then 5 episodes of naruto, so I'm not really confident about it and also someone else will have to do the girl files.
I'm not familiar with persona either, so I gladly leave all of them to DarkTl.


But I offer to help with quest .pngs for any girl, because that involves more photoshoping then usual.


I'll help with Haruhi (maybe Tifa) if she'll be still untouched about time I get somewhere with girlmeets. But that can take a while so I'm not picking anyone now.
...geez, I would like to add girls, but It usually takes me about 3 full days of work to get pictures for one, and there's also so much other interesting things to do with so little time...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 10:19:36 AM
ok, for packs, I rename and upload what I already have for sakura/tenten/hinata, but I will not do anything else for them or add other naruto girls for now. I never actually seen more then 5 episodes of naruto, so I'm not really confident about it and also someone else will have to do the girl files.
I'm not familiar with persona either, so I gladly leave all of them to DarkTl.


But I offer to help with quest .pngs for any girl, because that involves more photoshoping then usual.


I'll help with Haruhi (maybe Tifa) if she'll be still untouched about time I get somewhere with girlmeets. But that can take a while so I'm not picking anyone now.
...geez, I would like to add girls, but It usually takes me about 3 full days of work to get pictures for one, and there's also so much other interesting things to do with so little time...

You need a system... I made girlpacks much faster than that :)

PS: You have one Hinata pic under profile happy, where she looks really happy... but has been recently stabbed in the head with a sharp object... get rid of that :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on February 25, 2013, 11:02:24 AM
I'll help with Haruhi (maybe Tifa) if she'll be still untouched about time I get somewhere with girlmeets. But that can take a while so I'm not picking anyone now.
...geez, I would like to add girls, but It usually takes me about 3 full days of work to get pictures for one, and there's also so much other interesting things to do with so little time...
If you want i can upload the rest of my pics for the haruhi girls - haven't really worked on those, you could probably find some more new pics on gelbooru.
I just threw that pack for haruhi up to see if I could make something for the prototype and simply scavenged a half done wm pic pack I had lying around for it.
We will probably need to adjust her character significantly to fit the game though (for events and stuff).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 12:03:37 PM
If you want i can upload the rest of my pics for the haruhi girls - haven't really worked on those, you could probably find some more new pics on gelbooru.
I just threw that pack for haruhi up to see if I could make something for the prototype and simply scavenged a half done wm pic pack I had lying around for it.
We will probably need to adjust her character significantly to fit the game though (for events and stuff).

What we need are:

Naruto
Bleach
One Piece
Oh My Goddess
Fairly Tail
Code Geass
DBZ
Eva
FF
FMA

I have not watched all these series but they all should have great variety of pics and were downloaded the most in AGL (Based on over 100 000 downloads). I may have forgot a few but these must be unconditionally present on release... If anyone wants to add others, no problem as long as you can cover the pics base, but this list should be covered!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 01:58:53 PM
Who would have thought it's so hard to think up more than one good event per trait, especially for undistinguished traits (like Silly, but still not Retarded). It takes about 4 hours to write it for 10 traits. I'll try to cover at least 15 traits per day, that means I need about 5 days to complete it. Hopefully it will become easier in the future, when I'll get used to it.

What we need are:
Well, I'm familiar with Naruto, Bleach and One Piece. If by Eva you mean Evangelion, and by FF and FMA you mean Final Fantasy and Fullmetal Alchemist, then I'm familiar with them too.
However, even with Future and Lurker packs on the hands, it means a lot of work (=a lot of time) for just me and CherryWood. I'm not complaining, just warning you.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 02:30:52 PM
Boring!  :o :D
But if we aim for popularity then ok...
Because most of these are action stuff, I'm sure Haruhi is good, because she is popular and represent different kind of anime.
Also everything on that list is kinda old... I really suggest to add something that is popular and new (but old enough to have pictures), for example I wouldn't go without:
Puella Magi Madoka Magica
And this should be a popularity list and Miku and touhou is not here? What happened?  ??? :D

You need a system... I made girlpacks much faster than that :)
You are probably not a perfectionist picture-freak like me  :) 
Quote
PS: You have one Hinata pic under profile happy, where she looks really happy... but has been recently stabbed in the head with a sharp object... get rid of that :D
Ok, I removed that blood... but I though it was cute  :)




I put a textfile about girlmeet dialogues in my folder. But I'm still kinda clueless...

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 02:31:28 PM
Who would have thought it's so hard to think up more than one good event per trait, especially for undistinguished traits (like Silly, but still not Retarded). It takes about 4 hours to write it for 10 traits. I'll try to cover at least 15 traits per day, that means I need about 5 days to complete it. Hopefully it will become easier in the future, when I'll get used to it.

We need more than one?


Well, I'm familiar with Naruto, Bleach and One Piece. If by Eva you mean Evangelion, and by FF and FMA you mean Final Fantasy and Fullmetal Alchemist, then I'm familiar with them too.
However, even with Future and Lurker packs on the hands, it means a lot of work (=a lot of time) for just me and CherryWood. I'm not complaining, just warning you.

Plenty of time. We're not in any hurry, I am only managing to make significant code advancements on weekends, at least during the week we can discuss some aspects of the game.

Also making so many packs right now would be premature, there will be changes and more girls means extra work. I just need a full naruto pack for testing purposes.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 25, 2013, 02:39:41 PM
We need more than one?
Sure thing, at least two. With random selection, naturally. Some with general purposes, others for high reputaion or within a garden, if you have one. You can't expect from a healthy Nerd reading a book every damn time, can you?  :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 02:41:05 PM
Puella Magi Madoka Magica

...... .. .. . .. . . . . .. . .... .. .... .. ....

Ok, I removed that blood... but I though it was cute  :)

Unless you want me to throw in a text like: She took a break to get hit on the head and spit blood. She is really happy now! we can safely award her with a retarded trait after that  ::)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on February 25, 2013, 02:41:54 PM
Ok looked over the game a bit:
Is it really necessary to have the "She received %d Gold as payment and has split it with you (you get %d %%)." in every if clause of the whore job?
Besides that I went through a lot of the whoring and fixed some typos and tried making some of the sentences flow better. I still have to go through acts other than straight sex before I am done (I would like to have different sentences for the different acts), but I am pretty tired already so I will have to do that later.

I also changed the text of the training menu a bit.

Also made some changes to the UI in the girl profile screen again since I had some small formatting issues.
The alternating text colors in the stats part are supposed to make the data easier to read - not sure if I like how it turned out though.
I personally like the centered name and new placement of location, class and action though.
(on the matter of this screen: wouldn't it make sense to hide info that hasn't anything to do with her class? (There still should be a button there to show the info))

I think I found a bug too: A slave (TenTen) I used as service worker always has two entries in the next day screen. I haven't tried reproducing this yet with another girl but have dropped the savegame into my folder anyway if you want to have a look.


What we need are:
I am sadly not familiar enough with any of these to be of any help, sorry.
Distantly related to this I would like to ask how many girls we have that are service workers.
Also another thing I noticed is that some of the girls you can meet in the city right now are slaves - something that we should change I think.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 02:50:08 PM
Sure thing, at least two. With random selection, naturally. Some with general purposes, others for high reputaion or within a garden, if you have one. You can't expect from a healthy Nerd reading a book every damn time, can you?  :D

The more the merrier I guess. Also we'll throw dice, there is no point in having a trait related message every day...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 03:03:15 PM
Ok looked over the game a bit:
Is it really necessary to have the "She received %d Gold as payment and has split it with you (you get %d %%)." in every if clause of the whore job?

Not at all, some of that is left from testing purposes.

Besides that I went through a lot of the whoring and fixed some typos and tried making some of the sentences flow better. I still have to go through acts other than straight sex before I am done (I would like to have different sentences for the different acts), but I am pretty tired already so I will have to do that later.

Prolly to early for this, this might change many times.


I also changed the text of the training menu a bit.

Also made some changes to the UI in the girl profile screen again since I had some small formatting issues.
The alternating text colors in the stats part are supposed to make the data easier to read - not sure if I like how it turned out though.
I personally like the centered name and new placement of location, class and action though.
(on the matter of this screen: wouldn't it make sense to hide info that hasn't anything to do with her class? (There still should be a button there to show the info))

Looks good, screen will be reworked many times over I expect. We'll add that stuff later.

I think I found a bug too: A slave (TenTen) I used as service worker always has two entries in the next day screen. I haven't tried reproducing this yet with another girl but have dropped the savegame into my folder anyway if you want to have a look.

I'll run a test of service job but you can get 5 - 6 entries from one girl, it's a complex job...

I am sadly not familiar enough with any of these to be of any help, sorry.
Distantly related to this I would like to ask how many girls we have that are service workers.
Also another thing I noticed is that some of the girls you can meet in the city right now are slaves - something that we should change I think.

I've asked the crew to rework the files.  Game will check stuff like this on the start in the future, I haven't gotten around to that part of the code yet.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 03:16:48 PM
I put a textfile about girlmeet dialogues in my folder. But I'm still kinda clueless...

I've read your file but I am not entirely sure about personality types, simply because girls do not have personality types in the game right now and that is to much work.

I suggest just simpler approach. One, maybe two generic responses with a random chance for a response based on traits. You are starting to broad, simple generic responses first, rest later...

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 03:32:25 PM
I've read your file but I am not entirely sure about personality types, simply because girls do not have personality types in the game right now and that is to much work.

I suggest just simpler approach. One, maybe two generic responses with a random chance for a response based on traits. You are starting to broad, simple generic responses first, rest later...
There can be just trait's i didn't mean something with that. We already have a Shy trait and Kind trait and Meek trait... I just add a few and we can later simply write into modders guide "this is a trait that have girlmeet lines" or something.


Your suggestion is good, but I have done it in reversal... I already have lines and I want to put them somewhere. Because I'm not a native english speaker, It would take me to much time to do it in "normal" way.


----------------
This is for all who will work on pictures. Can we please create a file with names all picture categories whoever will use? We already have a lot of them and with all of these new suggested, It started to be a bit confusing for me...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 03:42:10 PM
I think I found a bug too: A slave (TenTen) I used as service worker always has two entries in the next day screen. I haven't tried reproducing this yet with another girl but have dropped the savegame into my folder anyway if you want to have a look.

You're right, Service job is f^cked up. I'll take a look at it before I fall asleep tonight. I've also added a translation function for location so it reports actual name of the brothel instead of an id and if girl is not in any room, it will report Outside for now.

=========================
Edit:

LoL

Thanks for noticing the bug, I just spent 10 minutes staring at the method like an idiot. Then it actually occurred to me: script that decides which service job to run should break out of service method if no costumers remain, instead of just removing the girl from working list :D

Service job can be run many times for the same girl, one girl can bar-tend, clean and serve tables all in one day. At least now it works as intended.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 03:46:25 PM
There can be just trait's i didn't mean something with that. We already have a Shy trait and Kind trait and Meek trait... I just add a few and we can later simply write into modders guide "this is a trait that have girlmeet lines" or something.


Your suggestion is good, but I have done it in reversal... I already have lines and I want to put them somewhere. Because I'm not a native english speaker, It would take me to much time to do it in "normal" way.


----------------
This is for all who will work on pictures. Can we please create a file with names all picture categories whoever will use? We already have a lot of them and with all of these new suggested, It started to be a bit confusing for me...

I don't want modders messing with girlsmeets unless it is for specific girls. If someone outside of dev team offers better options, I'll be happy to throw those in, otherwise modders should mod girls, not main game elements.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 25, 2013, 04:02:13 PM
I don't want modders messing with girlsmeets unless it is for specific girls. If someone outside of dev team offers better options, I'll be happy to throw those in, otherwise modders should mod girls, not main game elements.
maybe stripped down version of girlmeet screen that can be copied to girl script to simulate that?
...but lets leave that for later.


I can already add a lot of responses based only on one trait and leave thinking about how to handle combinations of traits for later (or do it your way later). When you will have time, throw a simple example of one at me and I start filling.
Thank you for your time
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 25, 2013, 05:48:15 PM
maybe stripped down version of girlmeet screen that can be copied to girl script to simulate that?
...but lets leave that for later.


I can already add a lot of responses based only on one trait and leave thinking about how to handle combinations of traits for later (or do it your way later). When you will have time, throw a simple example of one at me and I start filling.
Thank you for your time


LoL

Here is an example of running into a girl with retarded trait:


(http://img242.imagevenue.com/loc192/th_832522708_3_122_192lo.jpg) (http://img242.imagevenue.com/img.php?image=832522708_3_122_192lo.jpg) (http://img28.imagevenue.com/loc432/th_832531541_4_122_432lo.jpg) (http://img28.imagevenue.com/img.php?image=832531541_4_122_432lo.jpg)

I don't know how I would do it. I would prolly start with something small and built on it like I always do. I cannot really do one girlmeet for you because I would make most basic forms of  allgirlsmeets first, then as ideas would pop into my head, expand, expand and expand... it's a process with me, I am not a professional programmer so I almost never get these things right on the first try.
     
Anyway, there is a file pyt - screens - girlsmeets - labels.rpy in game's library folder in dropbox. All girlsmeets go there. If you have any questions, throw them at me tomorrow. I need some sleep.

PS: I know I've misspelled concern but it has been a hectic day, it's one a.m. and I am not English native speaker either :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 26, 2013, 12:47:55 AM
She took a break to get hit on the head and spit blood. She is really happy now! we can safely award her with a retarded trait after that
Haha, excellent text for acquisition of Retarded trait, and we already have such great picture for her.
You talked about events that activate only on certain conditions yourself, so now go ahead and code it  :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 01:30:23 AM
Haha, excellent text for acquisition of Retarded trait, and we already have such great picture for her.
You talked about events that activate only on certain conditions yourself, so now go ahead and code it  :D
 

I would if we had such a pic for all girls. I will be busy for the day, but I will try to code something tonight. Plan is to improve brothels screen and logic.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 26, 2013, 04:09:39 AM
Hey guys,

there was some talk about organizing the pictures into categories. Xela mentioned that it's a goal of this project to match pictures to picture description well (or even as close as possible?). This is also a goal of my own project, Pytherworld, so I worked on that already. Tools I developed to organize pictures and describe them in a way software can understand:

imgtag
A little application with a graphical user interface that can add user-defined tags, e.g. names for categories, to image files. Tags are stored inside image files as XMP metadata, so they will stay there even if the file is renamed or moved somewhere else in the filesystem. I was planning to add an option to export the tags in the image files to XML later.
Images can also be tagged based on the names of the folders they are in or, in mass tagging mode, based on their location in the file system.
System requirements: Windows (tested on Windows 7 64bit)
If no windows is available, it can be run from source, but you will have to install quite a few dependencies (not recommended). imgtag should run on Linux too, but I never looked into packaging it for Linux. No idea if all its dependencies run on MacOS.


ImageDatabase
Pytherworld uses a group of classes to represent the available picture repertoire. Currently, you can find all images in the database that...
...have every tag in a provided group of tags, e.g. all images with "charname - Mio", "sex - fuck" and "location - garden"
...have none of the tags in a provided group of tags
You can also rank a group of images according to how many tags of a given group of tags each image contains.
Combining these search options, powerful and detailed picture selection is possible.

The image database is a somewhat involved system, meaning it's a big chunk of code to understand, but it has been around for several months, has become quite stable, should be relatively easy to port and can be customized by subclassing it.

tagini
Tags can be defined by users via a INI configuration file. They are organized in categories so it becomes easy to ask questions like "Are there any sex-related tags on this picture". This little class reads the ini file and provides this information to the application, along with a few convenience methods for tag handling.


I tink especially imgtag could be a useful tool for this project as it is completely independent of PyTFall, can be customized by editing a text file and should be relatively easy to use because of the graphical user interface.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 04:58:44 AM
Hey guys,

there was some talk about organizing the pictures into categories. Xela mentioned that it's a goal of this project to match pictures to picture description well (or even as close as possible?). This is also a goal of my own project, Pytherworld, so I worked on that already. Tools I developed to organize pictures and describe them in a way software can understand:

imgtag
A little application with a graphical user interface that can add user-defined tags, e.g. names for categories, to image files. Tags are stored inside image files as XMP metadata, so they will stay there even if the file is renamed or moved somewhere else in the filesystem. I was planning to add an option to export the tags in the image files to XML later.
Images can also be tagged based on the names of the folders they are in or, in mass tagging mode, based on their location in the file system.
System requirements: Windows (tested on Windows 7 64bit)
If no windows is available, it can be run from source, but you will have to install quite a few dependencies (not recommended). imgtag should run on Linux too, but I never looked into packaging it for Linux. No idea if all it's dependencies run on MacOS.


ImageDatabase
Pytherworld uses a group of classes to represent the available picture repertoire. Currently, you can find all images in the database that...
...have every tag in a provided group of tags, e.g. all images with "charname - Mio", "sex - fuck" and "location - garden"
...have none of the tags in a provided group of tags
You can also rank a group of images according to how many tags of a given group of tags each image contains.
Combining these search options, powerful and detailed picture selection is possible.

The image database is a somewhat involved system, meaning it's a big chunk of code to understand, but it has been around for several months, has become quite stable, should be relatively easy to port and can be customized by subclassing it.

tagini
Tags can be defined by users via a INI configuration file. They are organized in categories so it becomes easy to ask questions like "Are there any sex-related tags on this picture". This little class reads the ini file and provides this information to the application, along with a few convenience methods for tag handling.


I tink especially imgtag could be a useful tool for this project as it is completely independent of PyTFall, can be customized by editing a text file and should be relatively easy to use because of the graphical user interface.

It's to advanced. We will use simpler system for Pytfall... This is a brilliant idea for a game with limited amount of pictures.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 26, 2013, 05:09:52 AM
How do you plan to match pictures to text descriptions in PyTFall?

Btw, I think my system is best suited for a game with lots of pictures. If the amount of pics is limited, it is easiest to just map a list of image file paths to every text line, so every match between picture and text has been checked by someone. My system really pays off if people add lots of pictures to it, because existing text descriptions will find their pictures based on tags. With my system, you can add new pictures to a text description without even knowing this text exists. Of course, if the tags on pictures do not describe the pictures well, the last point I made is actually a disadvantage of my system. However, sloppy picture description by girl pack authors will always lead to inferior results, whatever system you use.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 26, 2013, 05:55:36 AM
Well, I don't know how are these tools look like, but if they able to make pictures hunting and sorting at least a little easier and quicker, I'd like to try them.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 07:39:10 AM
How do you plan to match pictures to text descriptions in PyTFall?

Through picture categories like in WM.

Well, I don't know how are these tools look like, but if they able to make pictures hunting and sorting at least a little easier and quicker, I'd like to try them.

Have you actually read the suggestion?

 It is not meant to make anything easier. He is suggesting that you take every single picture for girls in PyTFall and tag it using a piece of software with GUI interface.

 It would require code to be adapted to PyTFall that I would guess take us a couple of weeks at our pace at least.

 Also, I want to final release of SimBrothel version to have at least 80 - 100 girls. Let's say 150 pictures per girl and 10 tags per picture (would hardly make sense to go through the trouble for less) and 5 seconds per tag (taking into consideration that you'd have to go get coffie, reload images, take breaks, get distracted and so on 5 second per tag is not even a realistic estimate). So that and just that comes to a workload of 200 hours if you're lucky enough to be able to work fast and without distractions. Not including the time needed to write the code enabling this to work in PyTFall.

 Basically, my answer is this: If someone tags all the pictures (not willing to tag, actually completes at least 70% of all workload), I promise to do everything possible to write code to adapt Rudi's tagging system to PyTFall. Otherwise, we proceed as planned, with image categories in WM style.

==================================
Edit:
+ It makes less sense in PyTFall for three reasons:
1) Most jobs are fairly straight-forward and not very numerous. Not very difficult to match.
2) For unique quests and events (those that are meant to work just with one particular girl) specific images will can be called with one single line of code so modder can pic exactly what is required.
3) Image categories are being created automatically giving us a lot of options (not as many as with tagging system obviously). For specific events, it's easy to create a category required.

Another issue is that you cannot tag everything (or you can but it will take you 1000 hours instead of 200 and it will likely cause a mess). For an event where four girls from the same 'Origin' go to onsen  together on rest job... It's not realistic to tag that. Code will still have to be written.

I know tagging just seems perfect for OtherWorld/PytherWorld, but I made packs for WM, I edited them, I am used to them and I want the same system in PyTFall cause it will not 'feel' the same to me otherwise...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 26, 2013, 09:00:11 AM
Have you actually read the suggestion?
Nope, sorry, I didn't read it at all, my previous post was written by my cat walking across the keyboard. Oh, wait a sec, it says it read the suggestion before walking, so that's all right, I guess. Good cat.

As you said,
Keep in mind that the more categories like bj_deep or rest_garden
Looks like we going to use a huge amount of categoties already. Maybe even more than any other brothel game had.
Not to mention the fact that pretty much every single job or even school ideally needs its own type of pictures. And we, hopefully, will have even more jobs or some other picture-related things (dance, singing, party, who knows what else).

I don't see many differences between renaming each of them (and you should keep in mind dozens of categories we going to use) and tag system (when you select right tags from dozens of suggested by software), except the second one may bea little more convenient and quick.

Remember, SimBrothel has its own tool for creating girls, and quite handy one. I always thought wm and wm ex could use something similar too (I know, they have one, but totally outdated and less handy).
----------------------------
OK, I feel some inspiration after taking part in this discussion. Back to texts  :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 26, 2013, 09:55:39 AM
Quote
Image categories are being created automatically
Now that can't be the whole truth. I'm not familiar with the way WM sorts pictures in categories, but I'm sure a human needs to sort them at some level. Do you create a category by copying the images in a folder (so all images of the garden category are in a folder called "garden")? Do you create a category by renaming the image files, so garden images would be called "garden01.png", "garden02.png" and so on?

Quote
It is not meant to make anything easier.
My suggestion is definitely meant to make handling pictures easier. If my tools actually can make handling images easier depends on what you want to do with them in PyTFall. That's what I'm trying to find out here.

Quote
He is suggesting that you take every single picture for girls in PyTFall and tag it using a piece of software with GUI interface.
You can do that with imgtag, yes. You can also use the folder method I described above (whole foldertrees are supported, so you can add several tags to each image this way; Adding more than three is tiresome, though).


Quote
80 - 100 girls [...] 150 pictures per girl and 10 tags per picture [...] 5 second per tag
So you would spend 50s to select 10 tags? How? I sort my picture files by character, so all tags describing the looks of the character are added based on the location of the image in the file system. In the GUI, I choose a location, an activity, one or two tags describing other characters in the image and a clothing style. Takes maybe ten seconds (4-5 clicks) and I end up with 7 tags from the file's location in the file system and 4-5 from the GUI.
Even ten seconds is a long time for 15000 pictures, so if the information is not needed in PyTFall, I would not invest the time. However, I can't imagine how you will match the description of what's happening to the picture if all you have is one category the picture is in. For example, if you are looking for a picture for a whorejob, and you fetch a picture from the "whorejob" category, how can you tell if the picture shows one or a group of customers, or a bedroom, a park or a bar as location, or even a male or female customer? Are you going to have conglomerate categories, e.g. "WhorejobOneManBedroom"?

Quote
+ It makes less sense in PyTFall for three reasons:
1) Most jobs are fairly straight-forward and not very numerous. Not very difficult to match.
2) For unique quests and events (those that are meant to work just with one particular girl) specific images will can be called with one single line of code so modder can pic exactly what is required.
3) Image categories are being created automatically giving us a lot of options (not as many as with tagging system obviously). For specific events, it's easy to create a category required.
1) I disagree, unless you plan on having a lot more generic description than I thought you would.
2) I agree. This usecase should not be solved with tags.
3) Human action is unavoidable, as explained above. Calling this process "automatic" is misleading.

Quote
to adapt Rudi's tagging system to PyTFall
This is an option, but not required to use imgtag. I could also add an export feature to imgtag that allows saving the "image category information" in a format PyTFall understands, e.g. XML.


Quote
Well, I don't know how are these tools look like, but if they able to make pictures hunting and sorting at least a little easier and quicker, I'd like to try them.
Well, none of my tools make picture hunting any easier. I don't really see what kind of tool could do that, unless one wrote a specialized version of google picture search.
They do help with sorting, however. The more keywords/tags/categories you want to add per image, the more help imgtag is. IMHO, more than three keywords per image file are terrible to pull of if only folders are used for sorting.

EDIT: I'm currently uploading my most stable version of imgtag into my dropbox folder. I've used this version successfully for some time now, so I know it works at my machine. It should also work on other Windows PCs. It still has a few bugs and is slow for large images (those problems are fixed in the dev version, which is not ready yet for other reasons). imgtagGtk comes with dummy tags and some random pictures, so you can try it right away. In order to use it, you would have to enter your own tags in settings.ini. I could do that for you if you feel that is too much tinkering.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 26, 2013, 03:58:25 PM
Ok, I add my option too
Basically, my answer is this: If someone tags all the pictures (not willing to tag, actually completes at least 70% of all workload), I promise to do everything possible to write code to adapt Rudi's tagging system to PyTFall. Otherwise, we proceed as planned, with image categories in WM style.
We planned to rework all of the girls. That means I have to look at every one of sakura/hinata/tenten pics again and choose category for it and rename it. Adding tags instead will only take a bit more time, so I don't see this as a problem at all if we choose to use them. (for me I mean, I'm not commenting need for new code)
--------------


From my experience I believe tags will not make creating girlpack easier, because "final  sorting" part is just a fraction of the required time to create one. I tried that program and I can't imagine using it before 90% of the work is already done. But because of the same reason, it's not a bother either.


Current system is working nicely now. I can see only one issue and that is when it comes to picture that should belong to more categories. This is a very minor problem in still relatively small number of categories in current version, easily solved by duplicating that picture. From my own modder perspective, for girl specific events it's easy and sufficient.

But if there is a plan to add a lot of generic repeatable events and messages that can take advantage of pictures belonging to more then one categories and more advanced sorting, there's no doubt that tag system would be great for that.
So it all come to question how much of these we want to add and how hard is to code this new system, and I don't know anything about that.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 04:05:44 PM
Do you create a category by renaming the image files, so garden images would be called "garden01.png", "garden02.png" and so on?

That's fairly close to it, yes.


Ok, lets say someone actually tags 15000 images... What's the next step? Can you explain me two things in Laymans terms:

1) How do we transfer these image tags into a Python class?

2) How do we call such an image?

It still seems like an insane idea to me... workload seems monstrous, it's like Daisy's approach to game design, to spend an year to slightly improve two or three things in the game instead of adding new kickass features...

I'll see if I can write at least 50 lines of code today before my head turns itself off completely :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 04:27:47 PM
So it all come to question how much of these we want to add and how hard is to code this new system, and I don't know anything about that.

Neither do I... In any case, I agree that our system as it is today kicks ass of every SimBro system and WM and most likely OW as well...

Remember, SimBrothel has its own tool for creating girls, and quite handy one. I always thought wm and wm ex could use something similar too (I know, they have one, but totally outdated and less handy).
----------------------------

...... yes, but I also remember another thing: That version of SimBrothel can only tell difference between profile picture type (Of which it allows one per game) and a max 8 more pictures that are not tagged or defined at all... basically that means that game is displaying text that girl gave a nice BJ while picture might show her being raped by a lizard.  ???
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 26, 2013, 05:05:44 PM
2) How do we call such an image?
As far as I understand, for now WM as well as PyTFall analyzes pictures in the characters folders during start-up and and creates a database. I know nothing about Python class, but since rudistoned says he "could also add an export feature to imgtag that allows saving the "image category information" in a format PyTFall understands, e.g. XML.", let's say such pics database will be created by his software, not the game, as a separated XML file inside character folder. So if you want normal sex, you call a random image with <nsex> tag or something.
 
That version of SimBrothel can only tell difference between profile picture type (Of which it allows one per game) and a max 8 more pictures that are not tagged or defined at all...
Wanna make a better editor for PitFall?  ;)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 05:13:14 PM
As far as I understand, for now WM as well as PyTFall analyzes pictures in the characters folders during start-up and and creates a database. I know nothing about Python class, but since rudistoned says he "could also add an export feature to imgtag that allows saving the "image category information" in a format PyTFall understands, e.g. XML.", let's say such pics database will be created by his software, not the game, as a separated XML file inside character folder. So if you want normal sex, you call a random image with <nsex> tag or something.

That question was aimed at Rudi, all two of us can do is guess :)

Wanna make a better editor for PitFall?  ;)

I want to, but I want to create this game even more. Editor can be built as part of a game later.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 26, 2013, 06:28:27 PM
==================================

Ok, my 50 lines of code for today are done...

Lets land our alien picturetagging spaceship for a moment and figure out a more down to earth issue at hand:

What fininsial stats do we need? This issue has been raised by GodDra once before. Me being a nub, not even considering that we may require such a thing, today way the first day I wrote a line of code with that in mind.

My next objective is to make a brothel screen a little bit prettier, add some stats and info to it.

Possibility 1:

I suggest the WM approach:

 - We add Brothel's profit to the brothel screen
 - We make sure that amount of cash earned and spent (per girl/per brothel/per event) is displayed in next day texts.

Workload 3 - 4 hours.

Possibility 2:

- We keep track of earnings (Work) and expenditures (Upkeep, wages, school fees, advertising, upgrades etc.) for the duration of the whole game and add that number to girl's profile screen and brothel's screen.

Workload 4 - 6 hours.

Possibility 3:

Same as possibility two but we log that info on per category bases and make a separate screen to access that info.

Workload 6 - 10 hours.

Possibility 4:

We create a new powerful recordskeeping class and record as much info as possible, like what job was performed on what day and how much a girl or brothel have made lost.

Workload 30 - 40 hours.

Possibility 5:

We rewrite the whole game and record everything...

Workload ? - ? hours. It's be done before the end of the world... I hope :)


I vote for option 1, maybe two. Any thoughts or requests? I'll be prolly coding this part next.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: fires_flair on February 26, 2013, 09:16:25 PM
I think it would be interesting to know how much each girl makes. (so you know if she's a profitable girl or not)
when you say keep track of the amount for the whole day, do you mean like just have a number (be it positive or negative), and just having the profit added or loss subtracted from that, or actually keeping track of them separately for the whole game.

Personally, I don't care which is done, because it's really not that big of a deal. But if you are going to keep track I'd just have the shift over view + total profit (or loss as the case may be) for each girl.
The shift over view, only so I can keep an eye on why the girl ain't making money, or if it's changed.

and on the picture part, have you guys thought of using file folders, instead of file names, I know it's been suggested before on the forum. if needed (though sorta complicates it) it could be file folder +file name (file: pregnant. file name: profile/ sex /group just for example). I am just thinking about the problems WM had getting preg picture to work properly (and myself remembering how to label them properly)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 27, 2013, 03:21:21 AM
Ok, lets say someone actually tags 15000 images... What's the next step? Can you explain me two things in Laymans terms:

1) How do we transfer these image tags into a Python class?

2) How do we call such an image?


1) read XMP metadata from the image file and remember which file paths are tagged with which tags; the classes associated with my ImageDatabase class do that;

2) A simple request could be:
img = imgdb.get_image("sex - blowjob", "character - Asuka")

In Pytherworld, I create a group of tags that describes the image I am looking for. For example, the code that selects a picture for a character that shows this character being sold at a slave auction:
Code: [Select]
        required, bonus, excluded = character.get_tags()
        bonus.add("other clothing - nude")
        bonus.add("sex - bondage")
        bonus.add("indoor - basement")
        sextags = core.tagini.get_tags("sex", categorized=True)
        sextags.remove("sex - bondage")
        sextags.remove("sex - lockdown")
        sextags.remove("sex - touch")
        excluded.update(sextags)
        excluded.add("misc - generic")
        excluded.add("misc - portrait")
        imgctrl = core.imgdb.select_image(required, bonus, excluded)
This code results in a search for a picture that fulfills the following conditions:
* It shows the character
* The character is not participating in any activity of the sex category, except for "sex - bondage", "sex - lockdown", or being touched
* The image is no generic image and also not a portrait
* Images where the character is nude, in bondage and in a basement-like location are preferred

Selecting a picture like that is hard to do with your system, unless you create a specific category for that. However, each additional category in your system means additional image files to copy and rename. An additional category in my system can be added as an afterthought without any involvment from the girlpack authors. Just select a combination of tags and you have created a new category.



Quote
It still seems like an insane idea to me... workload seems monstrous
I still don't get how copying a bunch of files into a folder and tagging them with imgtag should take longer than copying a bunch of files into a folder and rename each one of them.

Quote
to spend an year to slightly improve two or three things in the game instead of adding new kickass features...
My tagging system is a lot more powerful than the system we use here in PyTFall. It is also more complicated though. Since you are obviously convinced the current PyTFall system is good enough, I suggest we stick with it. I don't care either way as I don't have to work with it ;-)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 03:31:45 AM
I think it would be interesting to know how much each girl makes. (so you know if she's a profitable girl or not)
when you say keep track of the amount for the whole day, do you mean like just have a number (be it positive or negative), and just having the profit added or loss subtracted from that, or actually keeping track of them separately for the whole game.

Personally, I don't care which is done, because it's really not that big of a deal. But if you are going to keep track I'd just have the shift over view + total profit (or loss as the case may be) for each girl.
The shift over view, only so I can keep an eye on why the girl ain't making money, or if it's changed.

Well, I  thought about it when I was falling asleep and this seems to be a decent approach:

 - We keep track of girl earning (during Jobs) and log those in on per day bases without specifying the job she was doing.
 - We keep track of wages girl enjoys from doing jobs and upkeep, also per day. That is for free girls, for slaves we just record upkeep.
 - We keep track on Brothel fees like advertising and cleaning (Unless done by girls themselves).
 - We record players gold on hand each day.
 - We record money made from missions in the future.

 - Based on those logs, we can generate information on previous days earnings per brothel and per girl and also create a per day report on demand.


I think this will be enough. I don't want to add money spent on items or during quests here, for the simple reason that entire items system will be changed when we switch from SimBrothel version to WM version.



and on the picture part, have you guys thought of using file folders, instead of file names, I know it's been suggested before on the forum. if needed (though sorta complicates it) it could be file folder +file name (file: pregnant. file name: profile/ sex /group just for example). I am just thinking about the problems WM had getting preg picture to work properly (and myself remembering how to label them properly)

This will work worse than just filenames. It's easier to encode more info about the pics in files names or take Rudi's approach with tags. But system at place is already quite good, we may just leave everything as it is. Problems with preg type of pics will not find their way from WM to PyFTall, that's not possible.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 05:30:07 AM
Lets land our alien picturetagging spaceship for a moment
Too bad. I like sci-fi  :D

Possibility 2:

- We keep track of earnings (Work) and expenditures (Upkeep, wages, school fees, advertising, upgrades etc.) for the duration of the whole game and add that number to girl's profile screen and brothel's screen.

Workload 4 - 6 hours.
I think this is the best way. Question is, if we going to track many stats for many girls, how many RAM and free disk space game will need after a couple of ingame months or years?
Another thing is interface. I thought about graphs of some kind, at least for most important stats, but I don't know how well Python can handle such things.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 05:39:09 AM

1) read XMP metadata from the image file and remember which file paths are tagged with which tags; the classes associated with my ImageDatabase class do that;

2) A simple request could be:
img = imgdb.get_image("sex - blowjob", "character - Asuka")

In Pytherworld, I create a group of tags that describes the image I am looking for. For example, the code that selects a picture for a character that shows this character being sold at a slave auction:
Code: [Select]
        required, bonus, excluded = character.get_tags()
        bonus.add("other clothing - nude")
        bonus.add("sex - bondage")
        bonus.add("indoor - basement")
        sextags = core.tagini.get_tags("sex", categorized=True)
        sextags.remove("sex - bondage")
        sextags.remove("sex - lockdown")
        sextags.remove("sex - touch")
        excluded.update(sextags)
        excluded.add("misc - generic")
        excluded.add("misc - portrait")
        imgctrl = core.imgdb.select_image(required, bonus, excluded)
This code results in a search for a picture that fulfills the following conditions:
* It shows the character
* The character is not participating in any activity of the sex category, except for "sex - bondage", "sex - lockdown", or being touched
* The image is no generic image and also not a portrait
* Images where the character is nude, in bondage and in a basement-like location are preferred

Selecting a picture like that is hard to do with your system, unless you create a specific category for that. However, each additional category in your system means additional image files to copy and rename. An additional category in my system can be added as an afterthought without any involvment from the girlpack authors. Just select a combination of tags and you have created a new category.

I wonder how a XMP parser works... maybe it would be possible to do this?:

This is from an instance of sGirl class:

u'shop': [u'content/chars/naruto/Hinata/shop (2).jpg', u'content/chars/naruto/Hinata/shop (3).jpg'

method of the same class calls a category (shop) and randomly chooses an image from the list.
----------------------------
What if during the creation of an instance, we also read XMP tags and created a dict with picture path being a key and tags being values (another list).

Then we edit method as well, call it with a new kwarg 'tags' that goes through all images in shop category and tried to find the best match for the situation. This way almost nothing would have to be changed in game makeup and we would have a system that is not quite as powerful as the one in PytherWorld but still packs some heat and offers a good deal of possibilities.

PS: Renaming pics is easy in batches, I have a whole system for that.

My tagging system is a lot more powerful than the system we use here in PyTFall. It is also more complicated though. Since you are obviously convinced the current PyTFall system is good enough, I suggest we stick with it. I don't care either way as I don't have to work with it ;-)

I once wrote a post about game 'generations'. I don't remember where but the idea was:

First Generation Hentai Indie Sim Games:

SimBrothel
Slavemaker
Hentai Highschool

They had a fairly straightforward interface and logic and allowed none to little moddability.

Second Generation Hentai Indie Sim Games:

SlaveMaker 2
WM
SimBro 1x

These allow much better moddability, better graphics (In some cases), more advanced logic.

Third Generation Hentai Indie Sim Games:

SlaveMaker 3
OtherWorld

These allow unreasonable possibilities for moddability, better logic, more content and so on.

As you can see, WM and SimBrothel are missing from the list of third generation, because WM2 has never been created and all SimBrothel project that tried to climb up there failed miserably.

So my objective is to build a third generation SimBrothel and WM, with advanced job system where jobs effect one another, social system, slave training and multiple stat/skill variations, battleengines, quests, events and missions, highly graphical interface. I don't want to be sidetracked by making it to advanced, simply because there will eventually be Fourth generation at some point that might have even better jobs system, near perfect image handling, better quests system and so on. Maybe after I am finished with PyTFall projects, I will build a game like that, but for now I don't want to spend to much time on features that are overcomplicated.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 05:50:06 AM
I think this is the best way. Question is, if we going to track many stats for many girls, how many RAM and free disk space game will need after a couple of ingame months or years?

It shouldn't be to bad, text doesn't take to much ram or space. We can use .xml file or database otherwise, but that's not something I am eager to do...


Another thing is interface. I thought about graphs of some kind, at least for most important stats, but I don't know how well Python can handle such things.

Will take more time then it's worth, python is perfect for building a graph but RenPy will need  modified classes. Also there is another issue, I don't want to log stat increases through out the game, it will take even more effort, and you cannot build a graph without that.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 27, 2013, 07:00:41 AM
Question is, if we going to track many stats for many girls, how many RAM and free disk space game will need after a couple of ingame months or years?
Don't worry about system ressources, those are growing way faster than we can code. In addition, you need to throw A LOT of work on modern systems to even notice a delay. Just do what you think is the best way to solve your problem and only worry about performance if your program becomes to slow. Premature optimization is the root of all evil ;-)
The only platform which would be performance-sensitive IMHO are Atom-based Netbooks, but those will be obsolete soon enough.

Quote
I wonder how a XMP parser works...
Basically it opens the file, scrolls to the part of the file that contains XMP metadata, reads the data there, closes the file and returns the data as a Python object. Therefore, this is quite a lot slower then simply reading the file name from the file system. In Pytherworld, I do this at "compile time", when I package the game into an executable. I would not recommend doing that every time you create a sGirl instance, as it would slow down character creation tremendously. There is also no reason to to that, unless you intend to change tags in image files during runtime.

How your program remembers the relationship between tags and image file paths really depends on what you want to accomplish. What you suggest is certainly doable.

If you want, I could certainly create a draft of a comparatively simple ImageDatabase class. I had a much simpler concept than I use today implemented in an earlier version of imgtag.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 07:23:10 AM
How your program remembers the relationship between tags and image file paths really depends on what you want to accomplish. What you suggest is certainly doable.

If you want, I could certainly create a draft of a comparatively simple ImageDatabase class. I had a much simpler concept than I use today implemented in an earlier version of imgtag.

 Class... you're basically suggesting to create one single gallery class and throw all pictures in there... I was thinking about something simpler. Also there is no compile time with RenPy other than that happens on run-time, at least non that I am aware of.

 I would think that if there is a good parser, simple function would have to be written to use that parser to extract data and add it to a dict as values.

Can you write that function?


More to the point:

                for file in os.listdir(renpy.loader.transfn(imagedir)):
                    acttype = file.split()[0]
                    file = "%s/%s"%(imagedir,file)
                    if content[key].__dict__['gfx'].has_key(acttype):
                        content[key].__dict__['gfx'][acttype].append(file)
                    else:
                        content[key].__dict__['gfx'][acttype] = [file]


Instead, lets say you write a function that loads tags from the file and we call it "rudis_tagloader()" that takes file path and filename as argument (simply a variable called file in the above function) and returns a list or a dict of tags:

we rewrite that to:

                    if content[key].__dict__['gfx'].has_key(acttype):
                        content[key].__dict__['gfx'][acttype].append(dict(file = rudis_tagloader(file)))
                    else:
                        content[key].__dict__['gfx'][acttype] = [dict(file = rudis_tagloader(file))]               


If that is possible, we don't even have to change one thing, I'll simply rewrite img method to use tagged images if tag is requested as an argument of a method. We'll still have to rename all files but it's very easy to do and tags will be very helpful!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on February 27, 2013, 08:15:37 AM
Possibility 2:

- We keep track of earnings (Work) and expenditures (Upkeep, wages, school fees, advertising, upgrades etc.) for the duration of the whole game and add that number to girl's profile screen and brothel's screen.

Workload 4 - 6 hours.
Would get my vote - I would like option 3 but I don't think there would be anything to gain for a normal player there. Only thing I would like added to this is a simple screen for the brothel finances.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 08:29:43 AM
Would get my vote - I would like option 3 but I don't think there would be anything to gain for a normal player there. Only thing I would like added to this is a simple screen for the brothel finances.

I think I'll make that a part of the brothel screen itself. Or as a pop up screen on click of a button. In any case, option two it is.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 27, 2013, 09:02:00 AM
I postpone working on girls until you decide tags to prevent doing things twice, and start looking for location backgrounds instead and continue to gather girlmeet lines.


Because there are lot things changing a lot, I decided not to add them directly into a script now afterall. So I have a important question - and not only about girlmeet lines - do you want me to write texts I have now in a file, and if, how a file with written texts should look like to be easy for codder to use it, or should I just keep them for myself and wait until I fully understand where to place them and then do it (=later, but no work for anyone else)







Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 09:03:02 AM
As I worked with texts, I give some thought to adding Bisexual trait as well. Then again, since sexual orientation is something every character has, maybe we should use one variable somewhere in xml instead of 3-4 traits?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 10:34:11 AM
As I worked with texts, I give some thought to adding Bisexual trait as well. Then again, since sexual orientation is something every character has, maybe we should use one variable somewhere in xml instead of 3-4 traits?

You mean like male/female/shemale/futanari? That would mean that many texts and jobs be a subject to change and adaptation. Prolly not worth it.

I postpone working on girls until you decide tags to prevent doing things twice, and start looking for location backgrounds instead and continue to gather girlmeet lines.

Please proceed as planned. I've already decided to use picture categories or picture categories with tags combination if Rudi can create a function I asked for.

For background locations try taking a look on Roman's resources (that's the guy who I learned game programming from and programmer for Alkion). Folder names are in Russian but once you get inside, it's obvious what category you're in:

https://www.dropbox.com/gallery/11931230/1/Resources?h=8f251a

These are: City - Places of rest backgrounds for example:
https://www.dropbox.com/gallery/11931230/1/Resources/Backgrounds/%D0%93%D0%BE%D1%80%D0%BE%D0%B4%20-%20%D0%BC%D0%B5%D1%81%D1%82%D0%B0%20%D0%BE%D1%82%D0%B4%D1%8B%D1%85%D0%B0/?h=8f251a


Because there are lot things changing a lot, I decided not to add them directly into a script now afterall. So I have a important question - and not only about girlmeet lines - do you want me to write texts I have now in a file, and if, how a file with written texts should look like to be easy for codder to use it, or should I just keep them for myself and wait until I fully understand where to place them and then do it (=later, but no work for anyone else)

Can you throw what you've gathered for one of the girlsmeets to a text file? I'll take a look at it and we decide on what to do with the rest.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 27, 2013, 12:57:45 PM
Code: [Select]
import os
import pyexiv2
def load_tags(dirpath, filename):
    '''Returns a list of tags stored as XMP metadata in the file at imgpath.
    '''
    imgpath = os.path.join(dirpath, filename)
    # read the metadata of the file at imgpath
    metadata = pyexiv2.ImageMetadata(imgpath)
    metadata.read()
    # read the XMP tag information in the metadata
    if "Xmp.dc.subject" in self.metadata.xmp_keys:
        tags = metadata["Xmp.dc.subject"].value
    else:
        tags = []
    return tags
Here you go.

This code requires the pyexiv2 library to run. I'm not sure how to package external libraries with RenPy. I've uploaded the offical installer of pyexiv2 as well as a zip with the contents of the installer to my dropbox folder. I think if you just copy the contents of the installer directly into a directory that is in the PYTHONPATH you should be fine. To find a directory that is on the PYTHONPATH include "print sys.argv[0]" somewhere in your code.

Btw, 'file = "%s/%s"%(imagedir,file)' is kinda dangerous on Windows. If whatever you feed this path into expects a UNIX path, all is well, but if that thing expects a windows path, this code will fail. If it is unsure what path convention should be used, it is better to use 'file = os.path.join(imagedir, file)', because that will always return a path valid for the current OS.

Quote
Also there is no compile time with RenPy other than that happens on run-time, at least non that I am aware of.
You are very right, Python is an interpreted language and therefore Python programs don't have a compile time - that's why I put the expression in parentheses. What I meant was that I would read the tags in the images when the game is packaged for a release, not at runtime when players load the game and certainly not during instantiation of a new character. This will be really slow for 15000 image files (think 15 minutes here, maybe more).

EDIT: Just realized you wanted a function that takes the dirpath and filename. Fixed.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 01:51:31 PM
You mean like male/female/shemale/futanari? That would mean that many texts and jobs be a subject to change and adaptation. Prolly not worth it.
Nope, I mean Frigid, Lesbian, Hetero (I guess we can call it a "hidden trait", since if girl is not something else, she is a Hetero) and Bisexual.
I think it makes more sense than traits system. Because girl may or may not have any particular trait, but she can't have any sexual orientation at all. For example, take a look at Slavemaker, it has an "orientation bar" which changes during the game depending on girl actions rather than a fixed value.

You could tell the same about boobs, they can be small or huge, but they are exist anyway  :)
Current "boobs system" was taken from wm ex, but I begin to doubt that decision.
Of course, if it means a lot of work for you, than forget about it. Current system is working too, after all.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on February 27, 2013, 03:35:11 PM
I personally think all these are ok as traits. And please yes, add bisexual trait, I would like to use it.
And If I may suggest, remove average boobs trait, because it's unlogical to have it.
And maybe, because girl's magic power depends on stat, it would sound better to call magic traits "magic talent" or something and not "strong magic" because they can be overpowered by girls who just train more.


I also think, because traits are so easy to add and call, that there is not a reason to limit how much of them we create if they makes at least a bit sense. I was actually thinking of adding a lot of really minor traits just because I  have a few lines for them in girlmeets... But tell me if Im mistaken.


Also WM traits are not a superb example, because they were created for system that used random girls and not many of relevant text lines and events like we plan. For us, I believe, it would be best to look at, for example, at all of the girls from series that Xela requested and think what traits would be best to describe them...


To sum it, I believe that any quirk that at least 2-3 girls with enough pictures to be considered for game have, and you can think of at least one situation in game where it will be fun to use it, is traitworthy  :)  but that's me...



For background locations try taking a look on Roman's resources (that's the guy who I learned game programming from and programmer for Alkion).

These are great! Trully no need to look for more, unles we need something really special...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 03:55:55 PM
Code: [Select]
import os
import pyexiv2
def load_tags(dirpath, filename):
    '''Returns a list of tags stored as XMP metadata in the file at imgpath.
    '''
    imgpath = os.path.join(dirpath, filename)
    # read the metadata of the file at imgpath
    metadata = pyexiv2.ImageMetadata(imgpath)
    metadata.read()
    # read the XMP tag information in the metadata
    if "Xmp.dc.subject" in self.metadata.xmp_keys:
        tags = metadata["Xmp.dc.subject"].value
    else:
        tags = []
    return tags
Here you go.

Using self. inside a function, really  ::)

Actually this will not work in RenPy but it's my job to know that. Function should look something like this:

    def load_tags(imgpath):
        '''Returns a list of tags stored as XMP metadata in the file at imgpath.
        '''

        # read the metadata of the file at imgpath
        metadata = pyexiv2.ImageMetadata(renpy.loader.transfn(imgpath))
        metadata.read()
        # read the XMP tag information in the metadata
        if "Xmp.dc.subject" in metadata.xmp_keys:
            tags = metadata["Xmp.dc.subject"].value
        else:
            tags = []
        return tags


This code requires the pyexiv2 library to run. I'm not sure how to package external libraries with RenPy. I've uploaded the offical installer of pyexiv2 as well as a zip with the contents of the installer to my dropbox folder. I think if you just copy the contents of the installer directly into a directory that is in the PYTHONPATH you should be fine. To find a directory that is on the PYTHONPATH include "print sys.argv[0]" somewhere in your code.

Took me about an hour but I think I've figured it out... I believe pyexiv2 was properly imported.


Btw, 'file = "%s/%s"%(imagedir,file)' is kinda dangerous on Windows. If whatever you feed this path into expects a UNIX path, all is well, but if that thing expects a windows path, this code will fail. If it is unsure what path convention should be used, it is better to use 'file = os.path.join(imagedir, file)', because that will always return a path valid for the current OS.

You would've been absolutely right if it was pure Python, what you suggest however has not even the slightest chance of working in RenPy.

file = "%s/%s"%(imagedir,file)

This was done proper taking the framework into consideration.

You are very right, Python is an interpreted language and therefore Python programs don't have a compile time - that's why I put the expression in parentheses. What I meant was that I would read the tags in the images when the game is packaged for a release, not at runtime when players load the game and certainly not during instantiation of a new character.

There are two problems here...

1) I have no f%cking idea on how to do that, save creating some form of persistent data and ship that with the game, that would take me a while to figure out.

2) WM and SimBrothel are NOT OW where you have just 7 - 8 girls that are VERY hard to mod (due to paperdolls). Modders in WM and SimBrothel want to add girls by 100s. It's not going to work if they have to mess with persistent data or go through me every single time they want to add a new girl...

This will be really slow for 15000 image files (think 15 minutes here, maybe more).

This is likely to be a dealbreaker because this makes modding the game that much harder... I may have just wasted 3 or 4 hours, still I learned something about a new package and that there are tags inside picture files (I seriously never had heard of that :D )

I don't think this is worth it in the end and now knowing that adding tags will make adding girls a lot harder because they take to long to read on gamestart, I think most people in development team that sided with adding tags to PyTFall will agree that image categories are a better bet for Next Gen of SimBro/WM even if they are a lot less powerful.

Another thing, I do not understand why are you messing around with this tags inside images BS. If you just used xml for this, you could load the required amount of data about images on runtime in a matter of seconds and xml database is likely to be easier to maintain. You can simply check inside a method that calls for the image, if it no longer exists or has been renamed by some nub, game simply chooses a different image... It would also solve the issue with modders not being able to add girls on gamestart. Simply have game look for picture.xml file inside image folder of each girl and load info from there...

=============================================================
All and all, I just got this error in the end :D

Function needs some form of filter for filetypes... Windows is messing us up :) Developers of this package should have thought of that by the way.

IOError: D:\Dev\Dropbox\SimBro Dev\renpy-6.14.1-sdk\SimBro PytFall v0.26/game\content/chars/persona4/Rise_Kujikawa/Thumbs.db: The file contains data of an unknown image type
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 04:06:42 PM
Nope, I mean Frigid, Lesbian, Hetero (I guess we can call it a "hidden trait", since if girl is not something else, she is a Hetero) and Bisexual.
I think it makes more sense than traits system. Because girl may or may not have any particular trait, but she can't have any sexual orientation at all. For example, take a look at Slavemaker, it has an "orientation bar" which changes during the game depending on girl actions rather than a fixed value.

You could tell the same about boobs, they can be small or huge, but they are exist anyway  :)
Current "boobs system" was taken from wm ex, but I begin to doubt that decision.
Of course, if it means a lot of work for you, than forget about it. Current system is working too, after all.

We can add orientation bar if desired, it's 10 minutes for me to write logic and 5 - 30 (depending on if we use a new style and graphics for the bar or go with default) to create the bar, but may I suggest this for WM version?

We are not going to have a boob system that can change because it cannot be reflected with pictures. Only in OW it makes some sense because there are paperdolls there.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 04:15:16 PM
I personally think all these are ok as traits. And please yes, add bisexual trait, I would like to use it.
And If I may suggest, remove average boobs trait, because it's unlogical to have it.
And maybe, because girl's magic power depends on stat, it would sound better to call magic traits "magic talent" or something and not "strong magic" because they can be overpowered by girls who just train more.


I also think, because traits are so easy to add and call, that there is not a reason to limit how much of them we create if they makes at least a bit sense. I was actually thinking of adding a lot of really minor traits just because I  have a few lines for them in girlmeets... But tell me if Im mistaken.


Also WM traits are not a superb example, because they were created for system that used random girls and not many of relevant text lines and events like we plan. For us, I believe, it would be best to look at, for example, at all of the girls from series that Xela requested and think what traits would be best to describe them...


To sum it, I believe that any quirk that at least 2-3 girls with enough pictures to be considered for game have, and you can think of at least one situation in game where it will be fun to use it, is traitworthy  :)  but that's me...

 
These are great! Trully no need to look for more, unles we need something really special...

Sure, add as many traits as you like. Maybe we should make something other than traits...

I'll try to write another 50 lines of relevant code since all time today went into figuring out tagging system that may not even work out for us.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 04:26:29 PM
And If I may suggest, remove average boobs trait, because it's unlogical to have it.
Why? If you mean lack of stat changing, then this trait only task is to block 3 other boob traits to avoid any conflicts.
And if you mean it purpose, well, many girls should use this trait. If I remember correctly that system, A = Small, B and C = Average, D = Big, more than D (very rare, but still exists, in life and in many titles) = Abnormally Large.

And maybe, because girl's magic power depends on stat, it would sound better to call magic traits "magic talent" or something and not "strong magic" because they can be overpowered by girls who just train more.
OK, make sense.

I also think, because traits are so easy to add and call, that there is not a reason to limit how much of them we create if they makes at least a bit sense. I was actually thinking of adding a lot of really minor traits just because I  have a few lines for them in girlmeets... But tell me if Im mistaken.
There is a reason. Because I, you, Xela or someone else should also write texts, events and checks for each of them. If you want to add some traits, sure, go ahead. You even can add them in that xml in my folder, or make you own, if you prefer it that way. But please don't add too many, like 100-200  :)

For us, I believe, it would be best to look at, for example, at all of the girls from series that Xela requested and think what traits would be best to describe them...
I don't have any objections, but if we are going to use a very large number of traits describing every detail, we probably should use wm ex stat system as well, where traits are cores of characters, and stats depending on traits and items only. Otherwise we'll quickly end up with overpowered girls.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 04:32:52 PM
Otherwise we'll quickly end up with overpowered girls.

This should be avoided at any cost. We can also make traits "weaker".
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 04:46:42 PM
Oh, and besides, if we'll have a trait for any or almost any characteristic, then there is no need in initial stats, because the character is completely described by initial traits already, and initial stats are coded within them.
I personally don't have anything against this idea. I would prefer to use many traits rather then some traits and some initial stats.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 04:49:12 PM
Oh, and besides, if we'll have a trait for any or almost any characteristic, then there is no need in initial stats, because the character is completely described by initial traits already, and initial stats are coded within them.

Hgehe, that's what happened in Alkion... We'll figure it out when we seriously start to balance the game.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 27, 2013, 05:01:44 PM
Hgehe, that's what happened in Alkion...
That's not a good example  :D
I mean wm ex, as more or less playable game. It doesn't use initial stats, and it has more traits than wm. So if we take such system, and still allow player to train girls like in wm, we'll get a middle ground.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 27, 2013, 05:11:02 PM
That's not a good example  :D
I mean wm ex, as more or less playable game. It doesn't use initial stats, and it has more traits than wm. So if we take such system, and still allow player to train girls like in wm, we'll get a middle ground.

Controlling all stats when girl is being created is remarcably easy in PyTFall, if we decide to go with traits only, we will not even have to remove stats from .xml files.

I've done my 50 lines of code (or rather changed 50 lines of code) for tonight. To tired to continue coding...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 28, 2013, 03:40:29 AM
Using self. inside a function, really  ::)
I copied the code from a method, so I knew it was working and did not test it. Don't tell me a simple oversight like that caused you problems :P
You know, I could have just copied a nice, simple class that offers the same functionality. Would have been less effort for me and it would have worked without problems, because it's well tested code. However, I know you hate code not written specifically for PyTFall, so took the extra effort of copying together a function that does exactly what you asked me for. And here you are, complaining about an error that takes a few seconds to fix...

Quote
Actually this will not work in RenPy but it's my job to know that.
Why would it not work in RenPy? pyexiv2 knows nothing about RenPy, so giving it a path formatted RenPy-style should break, unless you are on Linux or pyexiv2 fixes the path itself. You told me specifically to write a function that takes a dirpath and a filename. Those two need to be joined into a filepath to be of any use. Don't come to me crying if I give you what you asked for...



Quote
Took me about an hour but I think I've figured it out... I believe pyexiv2 was properly imported.
Ah, the joy of using frameworks...


Quote
You would've been absolutely right if it was pure Python, what you suggest however has not even the slightest chance of working in RenPy.
It will definitely work in RenPy if you give it a correct path. Why should it not? RenPy does not prevent you from accessing the file system, does it?

Quote
This was done proper taking the framework into consideration.
I did not say something contrary to that statement. Read what I write.


Quote
There are two problems here...

1) I have no f%cking idea on how to do that, save creating some form of persistent data and ship that with the game, that would take me a while to figure out.

2) WM and SimBrothel are NOT OW where you have just 7 - 8 girls that are VERY hard to mod (due to paperdolls). Modders in WM and SimBrothel want to add girls by 100s. It's not going to work if they have to mess with persistent data or go through me every single time they want to add a new girl...
1) I already solved that problem and it is also not hard to do :P
It goes something like that
Code: [Select]
# store persistent data after it has been generated
import pickle
f = open(filepath, "wb")
pickle.dump(python_object_containing_data_to_store, f)
f.close()
# load persistent data when you need it
f = open(filepath, "rb")
python_object_containing_data_to_store = pickle.load(f)
f.close()

2) So? Have a button inside the games option menu, that recreates the persistent data when clicked. Or, if you think modders are too dumb to do that, detect changes automatically and recreate the persistent data when needed.

Quote
This is likely to be a dealbreaker because this makes modding the game that much harder... I may have just wasted 3 or 4 hours, still I learned something about a new package and that there are tags inside picture files (I seriously never had heard of that :D )
I warned you two times already that reading all image files upon character instantiation will be very slow. It's not my fault if you don't read what I write.
Btw, depending on how many characters you intend to instantiate at once, it might not be a real problem. One to five might be okay, fifty will be a problem. Still, IMHO it is not a good idea to recreate that information on every character instantation.

Quote
Another thing, I do not understand why are you messing around with this tags inside images BS. If you just used xml for this, you could load the required amount of data about images on runtime in a matter of seconds and xml database is likely to be easier to maintain.
You do realize Otherworld takes about one minute to load all the girl XML data, and they have fewer images than you plan to have? No, you can't load tags for 15000 images in a matter of seconds from XML, especially if they are spread over several hundred XML files (one file per girl).
I use tags inside images because they are easier to maintain than XML files (for example, they don't need to change if the path to the file changes...) and they can be loaded faster than XML files if you store the information in a pickled object (=the persistent data we were talking about before). XML files are persistent data too, are they not?

I also offered to do this in XML for PyTFall, but you never came back to me about that, so I assumed you don't want to do that.


Quote
Function needs some form of filter for filetypes... Windows is messing us up :) Developers of this package should have thought of that by the way.

IOError: D:\Dev\Dropbox\SimBro Dev\renpy-6.14.1-sdk\SimBro PytFall v0.26/game\content/chars/persona4/Rise_Kujikawa/Thumbs.db: The file contains data of an unknown image type
Well, they did think of that. That's why you get this nice error message telling you exactly what's wrong. They wrote a parser for image metadata, so why would you give it a non-image file?

I've solved all these problems already, but you want to learn the hard way. Here is your filter.
Code: [Select]
import os
filename, ext = os.path.splitext(filepath_or_filename)
if ext.lower() in ["jpg", "png"]:
    load_tags(filepath)

You know, Xela, I've tried being polite with you, but you either don't get polite or you don't like polite. So, here you go, an answer matching your tone.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 28, 2013, 06:09:44 AM
Finally Rest texts are done.
Except for Malicious trait, for unknown reason I was unable to think up any decent Rest event for it, so any suggestions are welcomed. Check for errors is welcomed too. Feel free to add even more events if you want.

Now when I'll have some free time, I'll begin to create Naruto girls packs step by step.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 06:57:04 AM
You know, Xela, I've tried being polite with you, but you either don't get polite or you don't like polite. So, here you go, an answer matching your tone.

I am not a big fan of polite but reasonably polite with a small joke or a little stab here and there doesn't hurt anyone. If I came straightout offensive at any point, I do apologize! I greatly appreciate any help people offer to develop PyTFall!


I copied the code from a method, so I knew it was working and did not test it. Don't tell me a simple oversight like that caused you problems
You know, I could have just copied a nice, simple class that offers the same functionality. Would have been less effort for me and it would have worked without problems, because it's well tested code. However, I know you hate code not written specifically for PyTFall, so took the extra effort of copying together a function that does exactly what you asked me for. And here you are, complaining about an error that takes a few seconds to fix...

LoL

It was a joke, it didn't cause problems and it did take a few seconds to fix.

Why would it not work in RenPy? pyexiv2 knows nothing about RenPy, so giving it a path formatted RenPy-style should break, unless you are on Linux or pyexiv2 fixes the path itself. You told me specifically to write a function that takes a dirpath and a filename. Those two need to be joined into a filepath to be of any use. Don't come to me crying if I give you what you asked for...

First, where the feck did you get a hint of crying?   ???

Quote from: xela
Instead, lets say you write a function that loads tags from the file and we call it "rudis_tagloader()" that takes file path and filename as argument (simply a variable called file in the above function) and returns a list or a dict of tags:

Quote from: xela
file = "%s/%s"%(imagedir,file)

Quote from: xela
content[key].__dict__['gfx'][acttype] = [dict(file = rudis_tagloader(file))]       

Not 'specifically', I actually said 'argument' that is a single variable that includes filename and filepath... But the function you wrote for me did exactly what is required otherwise so it's all good in the end!

It will definitely work in RenPy if you give it a correct path. Why should it not? RenPy does not prevent you from accessing the file system, does it?

I did not say something contrary to that statement. Read what I write.

Contrary to your statement, you should read what I write:

Quote from: rudistoned
Btw, 'file = "%s/%s"%(imagedir,file)' is kinda dangerous on Windows. If whatever you feed this path into expects a UNIX path, all is well, but if that thing expects a windows path, this code will fail. If it is unsure what path convention should be used, it is better to use 'file = os.path.join(imagedir, file)', because that will always return a path valid for the current OS.

You've basically said that it would have been better to use file = os.path.join(imagedir, file).

Quote from: xela
You would've been absolutely right if it was pure Python, what you suggest however has not even the slightest chance of working in RenPy.

file = "%s/%s"%(imagedir,file)

This was done proper taking the framework into consideration.

I said that it would have been better to use file = os.path.join(imagedir, file) if programming environment was pure Python. However changing that line of code in RenPy:

file = "%s/%s"%(imagedir,file)

to

file = os.path.join(imagedir, file)

simply breaks the game. The reason for that RenPy as it has it's own way of accessing system. It's not something you could have known and as I said in my previous post, it is my responsibility to know that, but you'll have to agree that it is not very useful or rpoductive for you to keep insisting that using file = os.path.join(imagedir, file) should work in RenPy, even after I specifically told you that it isn't, taking framework into consideration...

Ah, the joy of using frameworks...

LoL

You're right, that sucked. But I can do it in 2 minutes next time since I now have learned where to put the module and that two of RenPy modules have to be imported into every .py file for the reasons I did not fully understand.

Framework does have it's charms as well! It's not only downsides :)


1) I already solved that problem and it is also not hard to do :P
It goes something like that
Code: [Select]
# store persistent data after it has been generated
import pickle
f = open(filepath, "wb")
pickle.dump(python_object_containing_data_to_store, f)
f.close()
# load persistent data when you need it
f = open(filepath, "rb")
python_object_containing_data_to_store = pickle.load(f)
f.close()

2) So? Have a button inside the games option menu, that recreates the persistent data when clicked. Or, if you think modders are too dumb to do that, detect changes automatically and recreate the persistent data when needed.
I warned you two times already that reading all image files upon character instantiation will be very slow. It's not my fault if you don't read what I write.
Btw, depending on how many characters you intend to instantiate at once, it might not be a real problem. One to five might be okay, fifty will be a problem. Still, IMHO it is not a good idea to recreate that information on every character instantation.
You do realize Otherworld takes about one minute to load all the girl XML data, and they have fewer images than you plan to have? No, you can't load tags for 15000 images in a matter of seconds from XML, especially if they are spread over several hundred XML files (one file per girl).
I use tags inside images because they are easier to maintain than XML files (for example, they don't need to change if the path to the file changes...) and they can be loaded faster than XML files if you store the information in a pickled object (=the persistent data we were talking about before). XML files are persistent data too, are they not?

I also offered to do this in XML for PyTFall, but you never came back to me about that, so I assumed you don't want to do that.

Well, they did think of that. That's why you get this nice error message telling you exactly what's wrong. They wrote a parser for image metadata, so why would you give it a non-image file?

I've solved all these problems already, but you want to learn the hard way. Here is your filter.
Code: [Select]
import os
filename, ext = os.path.splitext(filepath_or_filename)
if ext.lower() in ["jpg", "png"]:
    load_tags(filepath)


All of your fixes and suggestions make sense, I'll have to try to adapt them to RenPy but I want to write some game code for now (Not exactly want to but I can rarely work on this undisturbed during the week and figuring these things out takes concentration and time) so I'll try to do it this weekend.

I remember that you offered .XML and I never came back to you about that because I had no knowledge of time that is required to load tags directly from images.

It is another option but I'll try to make it work as you suggest it right now first.

You do realize Otherworld takes about one minute to load all the girl XML data, and they have fewer images than you plan to have? No, you can't load tags for 15000 images in a matter of seconds from XML, especially if they are spread over several hundred XML files (one file per girl).

And why would either of us give a damn about what happens in OtherWorld? I wonder how fast PytherWorld can do it? We are programming our games in Python for a reason, do we not? Take a look at traits.xml file Dark and SW created for PyTFall, it's a very reasonably sized .xml file:

      x = 400
      while x > 0:
          traits = load_content('traits')
          x -= 1

This code loads it 400 times. Every trait (there are like 50 of them already, maybe more) becomes an instance of Traits class. load_content() function formats the data to the required structure using a xml parser and parse() function (called from inside of load_content()) iterates over every line of the file, making sure it's all parsed into the class properly, reformatting strings, taking care of booleans and so on.

It's a lot of work and it only takes 9 second for the game to load (entire game, not just to load traits file 400 times) so .xml can at least be used as a backup option.

You said it yourself, hardware gets faster than we can program :)


PS: And let's not fight over BS, I'll try to be more on target in future posts!


=========================================================
@Dark and SW:

You guys are not allowed to leave comments inside xml trunks:

   <trait

      id="Alien"   #For demons, angels, etc.

      desc="This girl has come from a distant dimension with absolutely other laws of physics, magic and society."
      temp='0'>

Do it like this:
   <trait

      id="Alien"   

      desc="This girl has come from a distant dimension with absolutely other laws of physics, magic and society."
      temp='0'> #For demons, angels, etc.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 28, 2013, 07:10:46 AM
You guys are not allowed to leave comments inside xml trunks:
OK. It should be fine now.
I suddenly remembered one more thing. WM has one unpleasant feature: if you want to add one or several girls in the game, you have to start a new game after adding their files, otherwise game will ignore them. I don't know if Aika and Crazy have fixed it, but Future has fixed it definitely.
Hopefully, PytFall won't have such restriction.
   
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 08:25:13 AM
OK. It should be fine now.
I suddenly remembered one more thing. WM has one unpleasant feature: if you want to add one or several girls in the game, you have to start a new game after adding their files, otherwise game will ignore them. I don't know if Aika and Crazy have fixed it, but Future has fixed it definitely.
Hopefully, PytFall won't have such restriction.
 


I am not sure it is possible to remove such a restriction in PytFall without taking extraordinary steps (Modifications to framework). What might be possible is to create a button that checks if new girls have been added to the game after you load the last save but it would be a weird button and I have no idea on which screen it belongs. It would have the same effect and would be quite easy to code (like 10 minutes). If it must be done automatically every time you load a saved game, I have to ask Roman (Alkion developer) or PyTom (RenPy developer) on how to approach that.

But I'll take a look on RenPy forum just in case.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 28, 2013, 09:54:26 AM
What might be possible is to create a button that checks if new girls have been added to the game after you load the last save but it would be a weird button and I have no idea on which screen it belongs.
I don't see any problems with a button, if it saves us a lot of time. Something like "Check for new girls in the city" in some public location, like City Hall, Market or City Gates, with corresponding tooltip.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 10:42:11 AM
I don't see any problems with a button, if it saves us a lot of time. Something like "Check for new girls in the city" in some public location, like City Hall, Market or City Gates, with corresponding tooltip.

I asked this question on forums, only if to learn something new. If noone knows of a good way (I know of a bad way actually, but it's way stupider than a button), I am 100% confident that I can make a failsafe button system :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on February 28, 2013, 12:17:00 PM
I am not a big fan of polite but reasonably polite with a small joke or a little stab here and there doesn't hurt anyone. If I came straightout offensive at any point, I do apologize! I greatly appreciate any help people offer to develop PyTFall!
It's okay, thank you for the clarification.



Quote
You've basically said that it would have been better to use file = os.path.join(imagedir, file).
No, I said it would be better to use "file = os.path.join(imagedir, file)" if whatever you need the path for expects a path formatted according to the conventions of the operating system ;-)

Quote
However changing that line of code in RenPy:

file = "%s/%s"%(imagedir,file)

to

file = os.path.join(imagedir, file)

simply breaks the game. The reason for that RenPy as it has it's own way of accessing system.
I realize that. My comment was aimed at bringing different path building conventions to your attention, so you don't try to use a RenPy-formatted path for pyexiv2, as that might break. Sorry if I told you something you already knew.


Quote
Framework does have it's charms as well! It's not only downsides :)
I know! I'm looking forward to people creating lots of nice quests :-)


Quote
All of your fixes and suggestions make sense, I'll have to try to adapt them to RenPy but I want to write some game code for now
Take your time. You can PM me if a question pops up.


Quote
And why would either of us give a damn about what happens in OtherWorld?
I used it as an example for a game that loads tag information from XML files. Yes, it's Flash, but I beleive that hard disk access is so slow that there will be almost no performance difference between reading XML from Flash and reading XML from Python.

Quote
I wonder how fast PytherWorld can do it?
Me too. I know loading my tag info for a several thousand image files causes a slight delay on a slow notebook harddisk, but I have to look up the exact number of tags loaded and measure how long it takes. Will report back on that one when I know more.

Quote
      x = 400
      while x > 0:
          traits = load_content('traits')
          x -= 1

This code loads it 400 times.
No it does not. The XML file is read once, maybe a few times, then the operating system will cache it somewhere and also the harddisk will cache it into it's RAM(?) cache. So, this code basically gives you one to a few harddisk accesses and 390+ times where the file is read from some kind of RAM, which tremendously faster than harddisk access. You would need 400 separate XML files to simulate reading 400 XML files.

Quote
You said it yourself, hardware gets faster than we can program :)
That is certainly true, but hard disk access is kind of an exception. They are getting faster much slower than the other components. Solid state disks are a big performance increase, but almost nobody has one. I'm not saying we should worry a lot about accessing files on the disk, but there are limits to what can be done in a few seconds.

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 12:57:56 PM
I realize that. My comment was aimed at bringing different path building conventions to your attention, so you don't try to use a RenPy-formatted path for pyexiv2, as that might break. Sorry if I told you something you already knew.

That is EXACTLY what I was thinking! And that is also what took me 3 hours to figure out. The only way to make it work was using RenPy formatted path. Maybe that is why you have to import something from RenPy into every single .py file of pyexiv2 module... but my knowledge of RenPy is also limited so I kept trying to reformat data using different os.path normalization methods on different stages of program and kept getting Windows path Errors and no such file exists errors.

It only occurred to me as the very last resort to try and force RenPy path transformation method and that is when pyexiv module started to function properly :)

This is something that seems insane to me but it was the only way to make it work.


Edit: One of the sh!ttiest things about RenPy is lack of advanced documentation, what is required to make a visual novel for someone who may not know nothing about programming at all is VERY well documented. Semi-difficult stuff like creating GUI elements in pure Python or RenPy languages is somewhat poorly explained and lack decent examples. But when it comes down to really advanced stuff, like inheritance from powerful RenPy classes to make your own custom ones, or unique cases when you want to do something out of general flow... I do not believe it is explained anywhere at all and it is assumed that you just have to open RenPy source files and figure it out for yourself, which is not really convenient to put it lightly :(



No it does not. The XML file is read once, maybe a few times, then the operating system will cache it somewhere and also the harddisk will cache it into it's RAM(?) cache. So, this code basically gives you one to a few harddisk accesses and 390+ times where the file is read from some kind of RAM, which tremendously faster than harddisk access. You would need 400 separate XML files to simulate reading 400 XML files.

That has never occurred to me...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 01:36:01 PM
http://www.mediafire.com/?8z8p6ulsb2b7tz2 (http://www.mediafire.com/?8z8p6ulsb2b7tz2)

Someone has created a track for PyTFall. This is supposed to be battle but is kinda better suited for some event, place or a cave. Kind of reminds me of when Crono's Trigger crew traveled to 65 000 000 y. B.C.


Oh and this is for Dark or anyone else who speaks Russian and likes RPG:

https://dl.dropbox.com/u/43556362/%D0%A2%D0%B5%D0%BC%D0%B0%20SAO%20-%20%D0%B3%D0%B8%D0%BC%D0%BD%20%D0%BF%D1%80%D0%BE%D1%85%D0%BE%D0%B4%D1%87%D0%B8%D0%BA%D0%BE%D0%B2%20-%2021%20-%20%D0%AF%20%D1%88%D0%B0%D0%B3%D0%B0%D1%8E%20%D0%BF%D0%BE%20%D0%BB%D0%B8%D1%81%D1%82%D0%B2%D0%B5....mp3 (https://dl.dropbox.com/u/43556362/%D0%A2%D0%B5%D0%BC%D0%B0%20SAO%20-%20%D0%B3%D0%B8%D0%BC%D0%BD%20%D0%BF%D1%80%D0%BE%D1%85%D0%BE%D0%B4%D1%87%D0%B8%D0%BA%D0%BE%D0%B2%20-%2021%20-%20%D0%AF%20%D1%88%D0%B0%D0%B3%D0%B0%D1%8E%20%D0%BF%D0%BE%20%D0%BB%D0%B8%D1%81%D1%82%D0%B2%D0%B5....mp3)


Edit:

Oh and looks like RenPy 6.15 is gonna be awesome, console and screens that take positional parameters are going to be beyond useful!

Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on February 28, 2013, 02:38:30 PM
Oh and this is for Dark or anyone else who speaks Russian and likes RPG:
Heh, remindes me another band, "Epidemic". Which band is this? I don't see its name in file properties, and even google is unable to find anything decent.

Someone has created a track for PyTFall
If you looking for tracks for various locations, I suggest trying this (http://animeost.info/15493/kamidori-alchemy-meister-sound-collection) OST from another game.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 02:44:26 PM
Heh, remindes me another band, "Epidemic". Which band is this? I don't see its name in file properties, and even google is unable to find anything decent.

No clue...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on February 28, 2013, 03:07:07 PM
OK. It should be fine now.
I suddenly remembered one more thing. WM has one unpleasant feature: if you want to add one or several girls in the game, you have to start a new game after adding their files, otherwise game will ignore them. I don't know if Aika and Crazy have fixed it, but Future has fixed it definitely.
Hopefully, PytFall won't have such restriction.
 

Done and done and without the need for any buttons :)

I received an answer on forums. One of those cases when RenPy really came through and it took me about 3 minutes to code it.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 06:06:04 AM
OK, let's clarify categories and their names once and for all to avoid any misunderstanding.

rest: rest_bed, rest_onsen, rest_garden, rest_beach and so on
blowjob pics: bj_deep, bj_titjob, bj_lickjob
normal sex: sex_69, sex_doggy, sex_got
anal: anal_69, anal_doggy, anal_got
lesbian: <------- which subcategories here?
mast for mastrubation
bdsm: <------- which subcategories here?
group: <------- which subcategories here?
a couple of battle sprites
profile with optional subcategories profileneutral, profilesad, profilehappy, profileangry
schools: dance, maid, etiquette, beauty, combat, (XXX = any sex pic, isn't it?)
shop for shopping
club for waitress (= maid school, isn't it?)
date, date_beach and so on
ent for entertainment (girl having fun of any kind or what?)
strip for striptease

Anything else? Like clean for cleaning (those pics are very rare even for popular characters)?
And do we still need quest sprites for each character? I doubt each of them will have a personal quest, after all. Or I'm wrong?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 01, 2013, 06:40:29 AM
Hey guys,

I timed timed tag loading in Pytherworld:
It took 2.7 seconds to load a database containing 4887 images and 44736 tags from a pickled python object in a binary file. This is necessary every time the program is loaded.
It took 216 seconds to create this pickled object by reading the tag information stored in the 4887 image files. This is necessary every time the program is released and every time a modder changes the tag information on the image files.

These times can probably be improved because I never looked into making this process faster - it was always fast enough for my requirements.


Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 07:23:47 AM
OK, let's clarify categories and their names once and for all to avoid any misunderstanding.

rest: rest_bed, rest_onsen, rest_garden, rest_beach and so on
blowjob pics: bj_deep, bj_titjob, bj_lickjob
normal sex: sex_69, sex_doggy, sex_got
anal: anal_69, anal_doggy, anal_got
lesbian: <------- which subcategories here?
mast for mastrubation
bdsm: <------- which subcategories here?
group: <------- which subcategories here?
a couple of battle sprites
profile with optional subcategories profileneutral, profilesad, profilehappy, profileangry
schools: dance, maid, etiquette, beauty, combat, (XXX = any sex pic, isn't it?)
shop for shopping
club for waitress (= maid school, isn't it?)
date, date_beach and so on
ent for entertainment (girl having fun of any kind or what?)
strip for striptease

Anything else? Like clean for cleaning (those pics are very rare even for popular characters)?
And do we still need quest sprites for each character? I doubt each of them will have a personal quest, after all. Or I'm wrong?

More or less, but please remove location properties for now. I still haven't given up on Rudi's idea of adding tags to images and location should definetly be a tag. Same for specific sexacts. Those should also definetly be tags. Otherwise we are keeping simpler image categories like data, maid, anal, rest and so on, also profileneutral, profilehappy and so on.

Work as we have until now but add new categories. Maid is for cleaning by the way, most popular girls have at least one of those. quests, I wanted there to be quests for any characters, not just unique once.


Hey guys,

I timed timed tag loading in Pytherworld:
It took 2.7 seconds to load a database containing 4887 images and 44736 tags from a pickled python object in a binary file. This is necessary every time the program is loaded.
It took 216 seconds to create this pickled object by reading the tag information stored in the 4887 image files. This is necessary every time the program is released and every time a modder changes the tag information on the image files.

These times can probably be improved because I never looked into making this process faster - it was always fast enough for my requirements.

I hope I can figure this out as well...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 08:06:38 AM
Very well. So, to put it in a single format:
**********************************************
sex-related: sex, anal, blowjob, les, bdsm, mast, group

work/school: maid, strip, combat, etiquette, beauty, dance

sprites: battle, quest

other: date, rest, ent, shop, nude, profile, profilehappy, profileneutral, profilesad, profileangry
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 08:44:12 AM
Very well. So, to put it in a single format:
**********************************************
sex-related: sex, anal, blowjob, les, bdsm, mast, group

work/school: maid, strip, combat, etiquette, beauty, dance

sprites: battle, quest

other: date, rest, ent, shop, profile, profilehappy, profileneutral, profilesad, profileangry

Exactly! We will need that no matter what, if I figure out tag system and it works out for us, we add tags and use checks for those after image category is called.

If I don't figure out tags, we will create even more specific image categories from the once we already have.

BDSM and Group? That is with future in mind I guess. If we add some form of events where the girl gets raped or injured by costumers if security fails, we could use something for that as well.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on March 01, 2013, 09:07:28 AM
a couple of battle sprites
Do you think we need more than one?
Quote
ent for entertainment (girl having fun of any kind or what?)
yup, it was part of dates nighthalkex suggested, where you take girl out to have fun. But because these are not written yet, I kind of randomly put something in for first Naruto girls as I'm not sure what would fit...
Quote
Anything else? Like clean for cleaning (those pics are very rare even for popular characters)?
By early Xela's request, I also added battle (probably part of warrior report) and nude (dunno where this was supposed to be) category. But that's his call :)
Quote
And do we still need quest sprites for each character? I doubt each of them will have a personal quest, after all. Or I'm wrong?
Yes, but it's set in a way that it will work fine with only questneutral 0.png (other three fall to it) to not force people into photoshoping that much.
If you (or anyone), by chance, feel not like creating them, just send applicable pics to me, as I kind of enjoy this type of work.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 09:11:00 AM
Do you think we need more than one? yup, it was part of dates nighthalkex suggested, where you take girl out to have fun. But because these are not written yet, I kind of randomly put something in for first Naruto girls as I'm not sure what would fit... By early Xela's request, I also added battle (probably part of warrior report) and nude (dunno where this was supposed to be) category. But that's his call :)Yes, but it's set in a way that it will work fine with only questneutral 0.png (other three fall to it) to not force people into photoshoping that much.
If you (or anyone), by chance, feel not like creating them, just send applicable pics to me, as I kind of enjoy this type of work.

Battle we need for schools and warrior job reports. Nude for events and maybe also with future in mind, for gameevents.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 09:23:41 AM
Do you think we need more than one?
Probably not, but some of them may look funny during the combat, so this just in case.

By early Xela's request, I also added battle (probably part of warrior report)
I guess they fall under the category of combat? We already use word "battle" for sprites, after all.

If you (or anyone), by chance, feel not like creating them, just send applicable pics to me, as I kind of enjoy this type of work.
Thanks, I would appreciate that. I hate such things.

Nude for events and maybe also with future in mind, for gameevents.
Ok, I added nude to my post.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 11:09:14 AM
One more thing I completely forgot about. Do we need Death category like in wm ex, for death and low-on-health events?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 11:23:01 AM
One more thing I completely forgot about. Do we need Death category like in wm ex, for death and low-on-health events?

 That usually leads to pics where girls are all blooded or had been ripped apart.

 No, Roman had a very good solution to this for Alkion, simply to use profile images paired with im.Sepia() that recolors image in greyscale. That paired with text will be more than sufficient.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 02:10:34 PM
OK, I have to clarify it. What do you expect from nude category, why don't use strip instead? Without any clothes at all or what?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 02:33:59 PM
OK, I have to clarify it. What do you expect from nude category, why don't use strip instead? Without any clothes at all or what?

Yeah, most girls would have pics that clearly belong in strip category. Nude is without clothes, I don't think we need it right now but it will be handy in the future.


==================================
On a separate topic:

I am working on logic and finances right now and planning to rework how the game works a little bit because I didn't take everything I should have into consideration (Like a fact that strippers basically do not make any money at all other than a small amount of tips and it would be retarded to leave it at that, several other issues as well).

So I decided to make a different system. Every free girl will expect a wage, there will be a button in girl profile menu to make sure she gets it every turn even if it doesn't go straight into her pocket from work she preforms. Prostitutes will STILL expect a cut of the profit even if it's bigger than the wage they should expect but that cut will depends on girls disposition towards you and will be eventually balanced in such a way that if her disposition is over 500 out of max of a 1000, she will be happy with working for 40 percent. Rest of the girls will be happy with just wages so you can basically set house percentage to 100 and pay them what they require to be happy. If you choose not to, their joy and disposition drop rapidly and they leave your service.

Under this system, slaves will cost more as you do not pay them a wage and have higher upkeep than free girls as you have to feed and take care of them otherwise, while free girls buy their own food. Another advantage of having a free girls working for you instead of slaves that would otherwise be overwhelmingly cheaper workforce, is that free girls will spend money they make to improve themselves and maybe buy an occasional item if they have enough cash.

I think this will be a fairly honest, intuitive and interesting system. If you have something to add, have a different system in mind, or other design tips, let me know.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 02:51:48 PM
Yeah, most girls would have pics that clearly belong in strip category. Nude is without clothes
Geez, that doesn't explain anything. Just tell what are you planning/going to use nude for.

Every free girl will expect a wage
There is an interesting feature in Brothel S.im: when you select girl wage via its bar, game also shows you how her disposition will change each turn with this wage, like -5 or +2. Quite handy.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 01, 2013, 03:08:11 PM
Geez, that doesn't explain anything. Just tell what are you planning/going to use nude for.

I don't remember, I though it would be useful while I was coding something, no longer remember what it was but it can be used for any event where girl has to be nude or in WM version when we add SM type of training and you wish to train her.


There is an interesting feature in Brothel S.im: when you select girl wage via its bar, game also shows you how her disposition will change each turn with this wage, like -5 or +2. Quite handy.

Perfectly doable. I'll add it after RenPy 6.15 is out, it's developer promised to fix that damn bar.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 01, 2013, 04:15:49 PM
CherryWood, I have created a Sprites folder in your dropbox folder. I'll put there pics for battle and quests whose background should be deleted, when you will have some free time. Thanks again.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 02, 2013, 08:37:53 AM
Xela, you mentioned Heal job once. Will we have it eventually? I thought about using Priest or Healer occupation for characters like Tsunade if yes.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 02, 2013, 08:52:29 AM
Xela, you mentioned Heal job once. Will we have it eventually? I thought about using Priest or Healer occupation for characters like Tsunade if yes.

Healer, yeah. That will work, maybe even a Medical-Nin.

But it is not likely to be a job before WM version. I want to keep it simple and I still need to add jobs for warriors. So for SimBro version, slave/free statuses and jobs that we have + jobs for warriors should be enough. For now, we'll make sure if there are girls in the same brothel who have healing traits, heal girls quicker.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on March 02, 2013, 11:27:07 AM
Finally went through the resting texts and dropped a modified text into your folder DarkTl.
Mostly fixed typos and made the texts read better (I hope I did at least) but the sadist and masochist traits should be probably be rethought completely with the sexual connotation in mind.
I also did not agree with your description of the lolita trait. I dislike having this discussion but we (or more likely Xela) should probably discuss what we want to bundle with the game with in that regard, since even drawn porn of characters that are of questionable age can get you in big problems in some countries.

I will try to write some replacement texts for the SM traits later today but I am not familiar with those fetishes so I am not sure if I am able to.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 02, 2013, 11:49:26 AM
Thanks a lot, GonDra. Please also check for errors traits descriptions in traits.xml when you'll have free time.
Any new texts are welcomed, of course.

About Lolita, I've taken it from wm ex, and wm ex has taken it from wm, and in wm all girls have minimum age = 18, if I remember correctly. It means that girl is adult, but behaves or even looks like lolita.
Still, this question need to be clarified. For example, Hyuuga Hanabi from Naruto (she even has packs for wm) can't be 18 years old no matter what game says, and since I make Naruto packs right now, we have to resolve the matter.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 02, 2013, 12:47:49 PM
Legally I don't give a damn myself. I would still like to avoid outright loli characters to be shipped with the main version of the game because it is a very serious issue in many countries where legislator's heads are full of BS. It will be available as an addon and supported by dev team (or at least me if anyone wishes to add loli characters as addons, by supported I mean that if anyone needs help with scripting for loli characters unique events, I will not refuse. There will be no content in the main game that assumes there are underage characters anywhere near brothel or slavetraining.).

Still, this question need to be clarified. For example, Hyuuga Hanabi from Naruto (she even has packs for wm) can't be 18 years old no matter what game says, and since I make Naruto packs right now, we have to resolve the matter.

There is a girl that ships with original WM that has a pic saying 3yo mother in Japanese (looking about the same as well) on it so WM or WM packs are poor examples. Sh!t like that should definitely be avoided and will be avoided in PyTFall official versions.

================
Edit:

As for what to consider loli, use your better judgement. We do not have age (nor do we really need it in a game with a daylong term). Hinata is not over 18 in the series but she easily passes for 20+ on most shippuuden pics. Hanabi is obviously out and will be released as part of an addon after game is completed.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 02, 2013, 02:24:33 PM
I guess "loli" means not girls only? I just have found a good pic with Temari and Konohamaru  :)

There is a girl that ships with original WM that has a pic saying 3yo mother in Japanese (looking about the same as well)
Really? And here I thought Hanabi is the youngest in its packs. Jeez...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 02, 2013, 02:40:30 PM
I guess "loli" means not girls only? I just have found a good pic with Temari and Konohamaru  :)

Like I've said, use your better judgement. Don't give a damn about what age characters are in the shows, just what they appear like on the pictures. Konohamaru from shippuuden might pass in a pic's contexts.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 03, 2013, 10:03:20 AM
Any notes about characters skills, maybe list of all skills in the game? Or it is better do not touch them at all yet?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 03, 2013, 11:21:55 AM
Any notes about characters skills, maybe list of all skills in the game? Or it is better do not touch them at all yet?

Skills will not come until WM version so it's to early. Maybe missions are more to the point. Due to lack of time, I didn't get us much done on the project as I hoped this weekend but I made some progress in advanced logic and girl's finances. If I finish that by next weekend, I'll do image tags then.

Past that point, modding guide, modding system, jobs for warriors, missions and jokers remain as larger code blocks + Screens redesign. Rest is content like new girls, location, texts, events, endings and balancing of the game.

It still sounds like a lot but I can see the end :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 03, 2013, 11:28:20 AM
So, all skills strings can be safely removed from data.xml?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 03, 2013, 11:29:58 AM
So, all skills strings can be safely removed from data.xml?

What do you mean by skills strings? I though there were non in current data.xml?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 03, 2013, 11:37:06 AM
All yours characters have some skills in their xml, and because of that mine have them too. You know,
Quote
        <bskill name = "FistAttack"/>
        <mskill name = "Fire 1"/>
        <mskill name = "Fire 2"/>
that kind of strings.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 03, 2013, 11:58:07 AM
All yours characters have some skills in their xml, and because of that mine have them too. You know,that kind of strings.

Nope, those stay, they are for battle engine and determine what attacks and magic spells girls have.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 03, 2013, 12:09:36 PM
So, it is better do not touch them at all yet? Or game does have a lot of them already? Like, wind magic for Temari instead of fire?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 03, 2013, 01:57:50 PM
So, it is better do not touch them at all yet? Or game does have a lot of them already? Like, wind magic for Temari instead of fire?

We need to add those, wind graphics effects and wind sound effects. It's a whole other online search, for now just use fire, earth and water. Preferably only level one of each per character or non at all. Attacks are claw, knife, sword and fist I believe.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 04, 2013, 07:26:43 AM
RenPy 6.15 has officially been released. I have already moved my dev version to it, I'll upload it to drop box after I had a chance to do more work on finances and advanced logic.

_ Bug where bar was not updating values in real time has been fixed.
_ Console works!
_ Several others updates and bugfixes as well.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 05, 2013, 02:39:55 PM
RenPy 6.15 has officially been released. I have already moved my dev version to it, I'll upload it to drop box after I had a chance to do more work on finances and advanced logic.

_ Bug where bar was not updating values in real time has been fixed.
_ Console works!
_ Several others updates and bugfixes as well.

I got caught up in checking out 6.15 abilities (which are awesome by the way, we can have slider screens with 5 - 6 lines of code. I want main menu to be this way) and some rl stuff :)
 
I'll start writing code again tomorrow or the day after (evening).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 05, 2013, 04:17:56 PM
Hey guys,

I made some good progress today on the quest system. The encounter mechanics work already, so I started implementing quest mechanics. A quest is a series of encounters.

To create a  linear quest from existing encounters, you can currently write this:
Code: [Select]
    trap = TrapEncounter()
    trap.difficulty = 5
    quest = BaseQuest()
    quest.add_encounter("quest", "always", "trap1", trap)
    quest.add_encounter("trap1", "always", "trap2", trap)
    quest.add_encounter("trap2", "always", "trap3", trap)
A quest like this will require the questing characters to master the encounters trap1, trap2 and trap3.

However, I decided the most natural way to represent a quest is a tree of encounters. This means there are branches, more than one way to complete a quest and different encounters along the way, depending on how the previous encounters in the quest turned out. To create a branched quest, you could write:
Code: [Select]
    quest = BaseQuest()
    quest.add_encounter("quest", "always", "trap1", trap)
    quest.add_encounter("trap1", "success", "trap2", trap)
    quest.add_encounter("trap1", "failure", "trap3", trap)
    quest.add_encounter("trap3", "always", "trap4", trap)
In this quest, the characters first have to face trap1. If they succeed, they have to face trap 2. If they failed in the trap1 encounter, they have to face trap3 and trap 4.

To implement the tree structure, I used well-established code: the element tree API. This means it will be very easy to load quest definitons from XML in the future. The above quest in XML looks like this:
Code: [Select]
<?xml version="1.0" ?>
<quest>
        <trap1 if="always">
                <trap2 if="success"/>
                <trap3 if="failure">
                        <trap4 if="always"/>
                </trap3>
        </trap1>
</quest>

I'm pretty happy how this turned out. IMHO it is a powerful, flexibel system and especially using it should be quite simple. What do you guys think? Questions? Did I miss something?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 05, 2013, 05:05:15 PM
Looks good. It checks only vs the highest of relevant stats, not a combination of all or several stats?

I'll have to adapt this to RenPy and PyTFall, this is a great option for warrior job.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 05, 2013, 05:33:18 PM
Which stats are used is independent of this system and up to the implementation of the specific encounter. In the case of TrapEncounter, the best stat among agility, defence and magic is determined. Then, the value of the best stat is combined with the fatigue of the character. The problem with the current implementation (which I just noticed) is that higher fatigue improves the odds of success, but in reality high fatigue should make it more difficult. I'll fix that.
Code: [Select]
        # find the main trap-defeating attribute of this char
        anti_trap_stats = ["agility", "defence", "magic"]
        mainstatname, normmainstat = get_highest_stat(char, anti_trap_stats)
        # factor in fatigue
        minfat = char.min["fatigue"]
        maxfat = char.max["fatigue"]
        normfatigue = normalize_stat(minfat, char.fatigue, maxfat)
        # calculate capability
        # (the main stat is two times as important as fatigue)
        result = (normmainstat * 2.0 + normfatigue) / 3.0
        capability = int(round(result))

fix:
Code: [Select]
        freshness = 100 - normfatigue
        result = (normmainstat * 2.0 + freshness) / 3.0
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 05, 2013, 06:23:53 PM
Sounds good. Still, it feels like all stats should be taken into consideration... I need to test this in the game to get a good grip on this system. I'll try to get back to coding tomorrow, I completely drowned in stuff we don't even need for the game like old fashioned alien shooters, objects becoming transparent the farther you move mouse from them, forced mouse pointer control, solitare card game with drag/drop, screens, buttons and pictures moving around the screen, flashing, exploding and bouncing off each-other.

If I get sucked into that, it'll be for a couple of weeks so tomorrow evening I am writing at least 500 lines of code for PyTFall :) I need to wrap up finances and jobs first (should be less than 1000 lines left). Then I'll add warrior jobs, one for guarding and one besed on your code. Then I'll make all screens look at the very least 'decent', fix some loose ends here and there and start writing a modding guide...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 06, 2013, 02:13:15 AM
Quote
Still, it feels like all stats should be taken into consideration...
Okay, easy change. Which stats are important for which encounter depends entirely on the capability method of said encounter. So, only TrapEncounter.capability needs to be changed if you think it should depend on different stats. So, what stats should it depend on in your opinion? Can you give me a formula, or a list where each relevant stat has a percentage that describes how important it is for the TrapEncounter?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 02:54:29 AM
Okay, easy change. Which stats are important for which encounter depends entirely on the capability method of said encounter. So, only TrapEncounter.capability needs to be changed if you think it should depend on different stats. So, what stats should it depend on in your opinion? Can you give me a formula, or a list where each relevant stat has a percentage that describes how important it is for the TrapEncounter?

Good morning! To much new information about PyGame and RenPy yesterday, still traces of headache remain... but it's a new day nonetheless :)

For trap encounter I think:

["agility", "defence", "magic"] This is a very good list, there should be 'intelligence' there as well since brains help avoid/get out of traps on occasion as well.

Maybe we can do it like this:

1) First check against intelligence and (in the future (For now just leave a TODO comment), level that we do not have today :( ). If intelligence and experience (level) failed...

2) Second check is against all three of these stats on equal bases: ["agility", "defence", "magic"]. Your normalization of fatigue to get freshness is also an  awesome idea, which should be taken into consideration on equal bases as well!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 06, 2013, 04:52:59 AM
Quote
1) First check against intelligence and (in the future (For now just leave a TODO comment), level that we do not have today (http://pinkpetal.org/Smileys/DarkB/sad.gif) ). If intelligence and experience (level) failed...

2) Second check is against all three of these stats on equal bases: ["agility", "defence", "magic"]. Your normalization of fatigue to get freshness is also an  awesome idea, which should be taken into consideration on equal bases as well!
I like the idea to check against intelligence and experience first to avoid a trap and check defensive stats only if the "spot the trap" check fails. It makes sense. However, the system currently is to simply to support that in one encounter.

Possible solutions
A) We create a SpotDangerEncounter. The capability for characters in this encounter would depend on intelligence, experience and possibly a stat that represents the senses (I think I saw a stat called something like awareness?). If the characters succeed, they avoid the trap/fight/other danger and continue with their quest directly. This can be realized with a branched quest. The caveat here is that only diverging branches are possibly, not converging branches (diamond structures). Bigger quests with multiple traps are hard to code without converging branches.
Example
Code: [Select]
# diverging branches are possible
quest start
       |
SpotDanger
     /   \
Trap    end 
    |
   end

# converging branches are (currently) not possible
quest start
       |
SpotDanger
     /  \
 Trap   |
     \  /
    end


B) We recreate the branching functionality of quests for encounters and define encounter checks also in an ElementTree. I would advise against that as it adds complexity we don't really need.


C) We create a new encounter base class that allows characters to perform one or several "spot the danger checks" and win the encounter if they succeed. That's probably the solution that is easiest to code for me. It makes creating new encounters more difficult as then there are two base classes new encounters can be subclassed from and they will work slightly different.


My opinion
I think the best approach is to go with solution A). We can stick with the current system as it's IMHO good enough and before we start loading quests from XML I will figure out how to do converging branches in quests. That way we can keep the encounter classes relatively simple and you don't have to jump from quest to encounter classes constantly if you want to figure out the sequence of checks necessary to complete a quest.


EDIT: added a solution C). That one would be doable too, but is not as flexibel as solution A) and we proably want converging branches for quests anyway.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 05:14:12 AM
Yeah, A) sounds more then sufficient. I am not sure this can be used for actual quests since those or at least most of those will be done in VN Style and require different approach. There should also be some form of string variable that these classes return so it can be appended to next day report lists, pictures here are obviously all combat (but that's on me), maybe tagged for better precision in the future.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: rudistoned on March 06, 2013, 05:30:22 AM
When I was talking about quests in the last few posts, I always refered to automated quests used for warrior jobs. These have nothing to do with quests the player character is involved in ;-)

The run_quest method of the quest classes, which is used to perform the quest, can return a string describing the results.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 06, 2013, 05:59:42 AM
A quick question: does game support animated gifs? Can't say there are a lot of them, but sometimes I come across ones.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 06:14:44 AM
A quick question: does game support animated gifs? Can't say there are a lot of them, but sometimes I come across ones.

Disadvantages:

- Does not support .gif, .swf or anything that has to do with Flash.


Actually there is now a way to port some flash, but it's in early stages of development.

Unless you want to to rip that gif apart, there is no way. RenPy is excellent with animations otherwise.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 06, 2013, 06:19:46 AM
Maybe I'll convert it to animated png then if I'll find really interesting gif.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 06:41:47 AM
Maybe I'll convert it to animated png then if I'll find really interesting gif.

Will not work either.

We'll have to use RenPy's own tools for animating an image or part of an image.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Mederic64 on March 06, 2013, 11:06:42 AM
You guys seem so motivated, I stongly wish you good luck.


If you need help with something, you can send me mps, I'll see what I can do.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 11:57:33 AM
You guys seem so motivated, I stongly wish you good luck.


If you need help with something, you can send me mps, I'll see what I can do.

Oh yeah, we are planning to get this done. Content design is always required, if you want to design places, events, NPCs with texts/personalities/pics or just can write interactions, texts and so on, just act, I'll make sure they get coded into the game...



===============================
Otherwise, I've coded about 100 short lines of code today but it wasn't for PyTFall, there is an awesome concept design called S.L.U.T. in my Head on LoK. Someones wishes to learn RenPy and Python to give building that game a shot and asked me to help him with "filling the squares based on stats":


(http://img219.imagevenue.com/loc650/th_583866509_1_123_650lo.jpg) (http://img219.imagevenue.com/img.php?image=583866509_1_123_650lo.jpg) (http://img149.imagevenue.com/loc165/th_583869934_2_123_165lo.jpg) (http://img149.imagevenue.com/img.php?image=583869934_2_123_165lo.jpg)
     
Took me about 20 minutes... I have still about four hours left for PyTFall tonight :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on March 06, 2013, 01:19:18 PM
DarkTl, I skimmed over the traits a bit ago and it looked mostly fine if a bit bland since they are so similar to the WM ones.
The only thing I am not completly sure we need right now from that list are the scar related ones, although I guess the warriors could have some use from them I guess.
Also added another argument to the artificial body in the rest text document.
I will still try writing some texts for the SM traits but it seems I burnt myself out writing my pet projects.

Xela that looks pretty nice, how far along is the project?
You wanted to do something on the ui front if I remember right, any chance you would make the text window for the event texts bigger?
Also if I might suggest placing the buy brothel button inside the brothel managing screen?

Edit: Found the file where I had begun describing traits, feel free to scavenge from it for the trait descriptions if you want. [google doc] (https://docs.google.com/document/d/1YUOTNf4jyZnnz1-UOGXD8Wlj57HCgmZuc9gUM0i9F9E/edit?usp=sharing)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 01:44:25 PM
You wanted to do something on the ui front if I remember right, any chance you would make the text window for the event texts bigger?
Also if I might suggest placing the buy brothel button inside the brothel managing screen?

I made a huge design flaw, Slaves should have been added ONLY to WM version, I am getting sick of with writing the code that has to track if girl is a slave all the time... It is becoming abundantly clear to me why they never made a distinction between how game handles slaves vs free girls in WM on higher level...

I'll do screen design after figuring out the finances, wages and personal girl reports.




Xela that looks pretty nice, how far along is the project?

Not far... there are a couple of coders trying to realize the design. Game has a pretty awesome concept so I am not surprised! Guy who wishes to code it in RenPy is not very good but at least willing to learn...

Edit: Found the file where I had begun describing traits, feel free to scavenge from it for the trait descriptions if you want. [google doc] (https://docs.google.com/document/d/1YUOTNf4jyZnnz1-UOGXD8Wlj57HCgmZuc9gUM0i9F9E/edit?usp=sharing)

I think that was inside of your DB folder.


Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 06, 2013, 02:45:46 PM
The only thing I am not completly sure we need right now from that list are the scar related ones, although I guess the warriors could have some use from them I guess.
Precisely. Failed trap check, loss of many hp during a combat, etc. = scar trait. This will enliven gameplay, I believe.

Also added another argument to the artificial body in the rest text document.
I don't see any new  arguments there. Maybe you forgot to save it or something?
 
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 06, 2013, 03:49:15 PM
Looks like we'll cover all Naruto characters which have enough pics to make a more or less decent pack when Cherry will finish Sakura and Ten-Ten.
I'm going to make Kos-Mos and maybe T-elos (if she has enough pics) from Xenosaga next, then I'll adapt Persona characters to new format. After that probably One Piece.

Also I think we should start to looking for another hosting for packs. My 3,4 Gb from dropbox is filled by 74% already.

We'll have to use RenPy's own tools for animating an image or part of an image.
So much for excellent with animations  :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 04:21:00 PM
Looks like we'll cover all Naruto characters which have enough pics to make a more or less decent pack when Cherry will finish Sakura and Ten-Ten.
I'm going to make Kos-Mos and maybe T-elos (if she has enough pics) from Xenosaga next, then I'll adapt Persona characters to new format. After that probably One Piece.

Sounds good. I am still struggling with damn wage [email protected] I came up with myself. Didn't get as much done as I would have liked but there is progress here and there. There will be two bars, one for the house percentage, other for wage mod and series of functions balancing everything out... should have kept things simpler but now it's to late to go back.


Also I think we should start to looking for another hosting for packs. My 3,4 Gb from dropbox is filled by 74% already.

I am still below 5% I think. We can use MEGA account or something similar to that.


So much for excellent with animations  :D

Animations used in battle engines are made with 5 - 6 lines of code and called with one. It's fast, can use either OpenGL or DirectX and is fairly easy to code. I would say it's excellent... lack of format support has never been considered a problem as far as I know because most developers would prefer animations that they could easily control and adapt.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 06, 2013, 04:54:35 PM
Animations used in battle engines are made with 5 - 6 lines of code and called with one
Oh yeah, that reminds me, since it's not supports any moving pics, it can't be easy to create magic effects in battle? You can't just find some random gif with a fire in the internet and throw it in an enemy, after all.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 06, 2013, 05:11:56 PM
Oh yeah, that reminds me, since it's not supports any moving pics, it can't be easy to create magic effects in battle? You can't just find some random gif with a fire in the internet and throw it in an enemy, after all.

Have you ever seen a game that could?

You need a number of images to make an animation. There was a good possibility for 'Light' spell in one of the RPG's you've ripped while looking for pictures of items.



===================================================================

And I am done for tonight, maybe not 500 lines but fairly close to that and I see a clear code-structure for basic finances logging and wage system that we're going for!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 03:51:10 AM
Have you ever seen a game that could?
Well, the game you mentioned widely uses small, short movies with transparent background for many battle animations. I had no idea that this is possible until I've ripped it.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 04:03:02 AM
Well, the game you mentioned widely uses small, short movies with transparent background for many battle animations. I had no idea that this is possible until I've ripped it.

That you could prolly use in RenPy, but animations would be better :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 05:12:22 AM
Well, the game you mentioned widely uses small, short movies with transparent background for many battle animations. I had no idea that this is possible until I've ripped it.

Here is a thought... open .gif in photoshop, you should get a number of layers, save those one by one as .png files and we can animate those with RenPy :)

==============================
Here, I've ripped a .gif and loaded it into RenPy (First animation I've ever made by the way, never used those prior, only read about):

https://dl.dropbox.com/u/43556362/Dice%20Animation-1.0-win.rar (https://dl.dropbox.com/u/43556362/Dice%20Animation-1.0-win.rar)

It is possible to move around entire screens with one/two lines of code. When I get around to screen design, idea is to add one of the girls pictures to startscreen and have another screen with nicks of development team members that "slides" from "out of bounds" if player hovers with mouse over the girls picture :)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 07:26:07 AM
Here, I've ripped a .gif and loaded it into RenPy
Nice  :)

I've found another RenPy game on Rutracker, "Science Girls". It has a similar battle system, take a look at it if you want to, maybe you can rip some good resources from it. I failed to find out where it stores animation and sounds.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on March 07, 2013, 07:58:44 AM
I don't see any new  arguments there. Maybe you forgot to save it or something?

Dammit, I usually hit the save shortcut so often unconsciously that I didn't bother to check if I actually had saved it before closing it.
Basically I argued that you wouldn't let a girl with such a limited understanding of 'organics' as your rest text implies near customers, besides that I can't think of any robot girls that would do something like that in anime or manga, most of them are depicted as very kind and aware of their powers. Besides that Artificial body can also be used to describe a cyborgs body, so you can't assume that a girl has no knowledge of 'organics'.

EDIT: Also the formating of the trait file xml looks fucked up in my editor of choice (notepad++).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 07:58:56 AM
Nice  :)

I've found another RenPy game on Rutracker, "Science Girls". It has a similar battle system, take a look at it if you want to, maybe you can rip some good resources from it. I failed to find out where it stores animation and sounds.

I've checked that game out long time ago to learn about how it was coded, is that a Demo or Full version on RuTracker??? Take a look inside and see if .rpa file is bigger than 16mb... All pictures are in RenPyAtchive file but it's not difficult to extract using RenPy, I have only a demo version and it is of somewhat limited use (there is a possibility for lighting effect there however... also couple of hex circles)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 08:16:35 AM
I've checked that game out long time ago to learn about how it was coded, is that a Demo or Full version on RuTracker?
That's not a demo, at least version for windows. Just follow the instructions in "Tabletko" folder, if you know what I mean  :)

Besides that Artificial body can also be used to describe a cyborgs body, so you can't assume that a girl has no knowledge of 'organics'.
Make sense. I guess we need a trait like Artificial Intelligence for pure robots and artificial, but organic characters then.

Also the formating of the trait file xml looks fucked up in my editor of choice (notepad++).
I use usual notepad. I'm not a big fan of notepad+ after it showed a complete inability to work stably with hex files even with plugins.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 08:44:56 AM
That's not a demo, at least version for windows. Just follow the instructions in "Tabletko" folder, if you know what I mean  :)

I do not have account on that tracker. I have no idea what you mean :(

Can you up that game to dropbox? I'll copy it and you can delete it afterwards... Just check if .rpa file is not the same one I have (bit smaller than 16mb) and I actually only need the archive.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 08:51:17 AM
If you mean sg.rpa, then its size is more than 32 Mb. I've put installer and, um, other files in shared folder.
---------------------
Or maybe we should use trait like Unemotional, not just for robots, but for all Rei-like characters.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 09:00:42 AM
If you mean sg.rpa, then its size is more than 32 Mb. I've put installer and, um, other files in shared folder.
---------------------
Or maybe we should use trait like Unemotional, not just for robots, but for all Rei-like characters.

Ok, the one I have is half that size...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: GonDra on March 07, 2013, 09:39:16 AM
Or maybe we should use trait like Unemotional, not just for robots, but for all Rei-like characters.
Unemotional is a good name for the trait.

I use usual notepad. I'm not a big fan of notepad+ after it showed a complete inability to work stably with hex files even with plugins.
Hmm... I never need to work with hex files, I fell in love with it because of the syntax highlighting and auto completion features, probably saved my ass a few times when I was late with homework (and that one Test where I fell asleep for half an hour).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 09:45:54 AM
Unemotional is a good name for the trait.
Btw, which of the names would be better, Unemotional or Emotionless?
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 10:17:31 AM
Btw, which of the names would be better, Unemotional or Emotionless?

I like 'Emotionless' or 'Impersonal', description should say "Almost completely devoid of emotion", cause even Rei expressed emotion on several occasions.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 12:53:33 PM
I like Impersonal, added.
you wouldn't let a girl with such a limited understanding of 'organics' as your rest text implies near customers
Why?  That would be a great event (https://dl.dropbox.com/u/79429937/1cf6f0af83171fe624dee0583c47a53c.jpg)  :D
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 01:02:47 PM
I like Impersonal, added.Why?  That would be a great event (https://dl.dropbox.com/u/79429937/1cf6f0af83171fe624dee0583c47a53c.jpg)  :D

LoL

I've unpacked .rpa. We can use construct Lightning spell based on that. Maybe more, we'll see.

========================================
Damn, been helping a relative to restore part of the wall infected by mold. Breathed in to many chems and I am fairly sure that I'm tripping... Going to get some air and then write 100 lines of code (I am actually wondering what that code will look like on fresh head tomorrow morning...) And I can't stop watching those damn dice flying around the screen  :P
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 07, 2013, 05:19:34 PM
Any suggestion about androids occupations? Most of them don't have strict moral principles (or any principles at all), more or less obedient and fight well too, so they are pretty much universal in terms of jobs.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 07, 2013, 05:26:26 PM
Any suggestion about androids occupations? Most of them don't have strict moral principles (or any principles at all), more or less obedient and fight well too, so they are pretty much universal in terms of jobs.

I suggest finishing with base code for advanced logic first and take care of that later...

=========================================
Ok, Almost 2 am but this time I can actually see some of the progress :)

There is new report on next day, kind of girl's personal report. It will be used in the future a lot I expect... Basically it checks and applies wage effects, does some basic stuff if girl has some AP left, counts for how many days girl's been working for you, logs in girls income/spending and so on... I've debugged it to the point where it no longer crashes the game as far as I can tell so this weekend I'll see if I can add new frames that give us a hint of finances...
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 08, 2013, 03:12:04 AM
I suggest finishing with base code for advanced logic first and take care of that later...
Very well. I'll go play something instead of creating packs then  8)
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 08, 2013, 04:02:56 AM
Very well. I'll go play something instead of creating packs then  8)

Or you could create packs and just use occupation randomly  ???

Just kidding, have fun playing "something".
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 08, 2013, 09:17:27 AM
One of the things I learned from my attempts to create the intro is punishability of initiative in this project without comprehensive, thorough consideration with dev team. I won't make this mistake again.
Usualy I have enough free time to create at least 1-2 packs per day, so I'd rather wait until we clarify all the details than make a lot of incorrect packs on my own. Naruto packs were for testing purposes, after all.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: CherryWood on March 08, 2013, 11:13:09 AM
That's good...
I tried again, but I'm just not able to create a girl in less then about 8 hours... I will probably not have basic form of NGE pack ready before next weekend.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: DarkTl on March 08, 2013, 12:51:36 PM
How many sources you use for packs? I use 6 right now, including google (great for profile pics, really).
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 08, 2013, 01:39:48 PM
8 hours is to long... especially at this stage where you cannot test most of this properly.

In any case, I was to busy today for coding but I'll try to put 4 - 5 hours into the project tomorrow.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 10, 2013, 02:11:31 PM
Quick update:

Downtimes on .uni.me are getting more and more troubling. Practically not a week goes by without them and last one lasted almost 24 hours instead of usual 2 - 6...

In any case, I wrapped up some logic and coded in checks on traits Dark wrote for rest act. Couple of bug fixes as well. I'll try to get girls and brothels basic finances displayed tomorrow.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 11, 2013, 08:21:56 AM
First prototype of Finance screen are ready:

 
  (http://img266.imagevenue.com/loc365/th_300850628_1_123_365lo.jpg) (http://img266.imagevenue.com/img.php?image=300850628_1_123_365lo.jpg)
     

Totals over the duration of the game comes next... (Done)


  (http://img267.imagevenue.com/loc198/th_014066670_2_123_198lo.jpg) (http://img267.imagevenue.com/img.php?image=014066670_2_123_198lo.jpg)
     

Will be adding one to Brothel as well.
         
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Drinflo on March 11, 2013, 11:56:33 AM
Hello, I quite like the looks of the game so I thought I should drop this reply. If you still need writers (as in text and not code) I would be more than willing to help. I am also a bit experienced with xml code (do not expect too much out of me). If you still need a writer and wouldn't mind a first time poster I would be glad to help in any way I can. ^^
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 11, 2013, 12:35:43 PM
Hello, I quite like the looks of the game so I thought I should drop this reply. If you still need writers (as in text and not code) I would be more than willing to help. I am also a bit experienced with xml code (do not expect too much out of me). If you still need a writer and wouldn't mind a first time poster I would be glad to help in any way I can. ^^

We're always in need of extra hands!

Figure out what you want to write, there are many options, just start with something and submit your writing, I'll code it into the game as time permits:

Possibilities:
 
 - Girls interactions. Basically chats/actions with girls and girl's replying to you based on their traits and stats.
 
 - Design NPC characters. Like in Otherworld or SlaveMaker. They should have their own personalities, interact and maybe give out some form of quests. Events with those NPC's and maybe unlocking something new in game after finishing those events.
 
 - Writing scenarios, like date in the park scenario or something similar.

Also if you're serious about helping us out, you need to familiarize yourself with game, like stats, conditions, traits and so on.
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Xela on March 12, 2013, 06:02:03 AM
 8) 8) 8) 8) 8) 8) 8) 8) 8)

One thing is to "brag" that RenPy can do it, other is to manage to actually do it for the first time :)

Fin screen now beautifully "slides" from out of screen bounds and disappears the same way when you close it!
Title: Re: SimBrothel: -PyTFall- Dev Thread: Writers needed!
Post by: Drinflo on March 12, 2013, 07:36:02 AM
I'd love to help, and I will write some