devolution

Author Topic: General Discussion  (Read 3821673 times)

0 Members and 30 Guests are viewing this topic.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1260 on: October 30, 2013, 04:58:04 AM »
I don't have access to code right now but everything looks ok. Note that everything you've declared in the init will be reset each time game is loaded.

I recall making a method to jump back to the location in new girlsmeets class, it should be used instead of end_gm label. Otherwise there are couple of unnecessary brackets here and there and some of the calculations will result in float but it doesn't hurt anyone so it's all good :)

Maybe a new method to increase disposition with a nice animated pop-up and simple screen showing relevant information about the girl are in order, I'll see what can be done about that the day after tomorrow.
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1261 on: October 30, 2013, 09:10:07 AM »
You can make your code better readable by using booleans (True/False):

Code: [Select]
init:
    $ girlmeet_all_action_count = 0
    $ compliment_cute_count = 0
    $ compliment_cute_repeat_s = False  # Use booleans where appropriate.
    $ compliment_cute_repeat_f = False
    $ compliment_cute_s = False
    $ compliment_cute_f = False
    $ girlmeet_dice = 0
    $ girlmeet_disp_multiplicator = 1

   
label gm_interact_cute:             #just one of the labels with only few traits

    if compliment_cute_count > 1:
        $ compliment_cute_repeat_f = True
        $chr.disposition -= random.randint(10, 25)
       
    elif compliment_cute_count:      # You don't need > 0 here, == 1 would work as well.       #check if you do same thing more then once in one session
        if chr.disposition > 300:
            $ girlmeet_dice = 40
        elif chr.disposition > 9:
            $ girlmeet_dice = 30
        else:
            $ girlmeet_dice = 20
           
        if dice(girlmeet_dice):
            $ compliment_cute_repeat_s = True
            $chr.disposition += random.randint(5, 15)
        else:
            $ compliment_cute_repeat_f = True
            $chr.disposition -= random.randint(10, 15)

    else:                                                          #main part
        if chr.disposition > 300:
            $ girlmeet_dice = 90                            #chance to succes
            $ girlmeet_disp_multiplicator = 0.4        #compliment is worth less as relationship advances
        elif chr.disposition > 9:
            $ girlmeet_dice = 75
            $ girlmeet_disp_multiplicator = 1
        else:
            $ girlmeet_dice = 40
            $ girlmeet_disp_multiplicator = 1.2
           
        if dice(girlmeet_dice):
            $ compliment_cute_s = True                                 #type of text to show
            $chr.disposition += (random.randint(10, 20)*(girlmeet_disp_multiplicator))
        else:
            $ compliment_cute_f = True
            $chr.disposition -= (random.randint(5, 15)*(girlmeet_disp_multiplicator))

    if compliment_cute_repeat_s:  # No need for == 1                            #display of text
        $ compliment_cute_repeat_s = False  # I am thinking bools should be reset in the gm_end label.
        if "Impersonal" in  chr.traits:
            $chr_gm(random.choice(["Mhm... praised again... (impersonal RS)"]))
        elif "Well-mannered" in  chr.traits:
            $chr_gm(random.choice(["Thank you again.(polite RS)"]))
        else:
            $chr_gm(random.choice(["So much praise...(normal RS)"]))
           
    elif compliment_cute_repeat_f:
        $ compliment_cute_repeat_f = False
        if "Impersonal" in  chr.traits:
            $chr_gm(random.choice(["Not again. (impersonal RF)"]))
        elif "Well-mannered" in  chr.traits:
            $chr_gm(random.choice(["Sir, you are repeating yourself. (polite RF)"]))
        else:
            $chr_gm(random.choice(["I've heard that from you already. (normal RF)"]))
           
    elif compliment_cute_s:
        $ compliment_cute_s = False
        if "Impersonal" in  chr.traits:
            $chr_gm(random.choice(["…ok ((impersonal S)"]))
        elif "Well-mannered" in  chr.traits:
            $chr_gm(random.choice(["Thank you, I'm very pleased. (polite S)"]))
        else:
            $chr_gm(random.choice(["Thank you. (normal S) "]))
           
    else:
        if "Impersonal" in  chr.traits:
            $chr_gm(random.choice(["Bigmouth. (impersonal F)"]))
        elif "Well-mannered" in  chr.traits:
            $chr_gm(random.choice(["Please, don't bother me... (polite F)"]))
        else:
            $chr_gm(random.choice(["I've heard it all. (normal F)"]))   

         
    $ compliment_cute_count += 1
    $ girlmeet_all_action_count += 1
    if girlmeet_all_action_count > 2:
        jump gm_end
    else:
        jump girlsmeet



label gm_end:         #end after three actions (need to be done differently)
    $ girlmeet_all_action_count = 0
    $ girlmeet_disp_multiplicator = 1
    $ compliment_cute_count = 0
       
    $narrator(random.choice(["After awhile together, it comes time to say goodbye.", "You parted ways after another short while together."]))
   
    hide screen pyt_girlsmeet
    hide screen pyt_city_parkgates
    hide screen pyt_city_park
   
    jump pyt_city
Like what we're doing?

Offline CherryWood

  • Hero Member
  • *****
  • Posts: 643
Re: General Discussion
« Reply #1262 on: October 30, 2013, 10:16:22 AM »
Ok, thank you.  I'll gladly wait for anything (as I still have a lot to prepare anyway).


Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #1263 on: October 30, 2013, 11:54:55 AM »
Persona pack is not beta anymore and tagged.

Btw, Cherry, if you don't have much time, I could tag your packs after I'll finish with mine.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1264 on: October 30, 2013, 01:41:23 PM »
Ok, thank you.  I'll gladly wait for anything (as I still have a lot to prepare anyway).

We should prolly do this post beta, when we get to screens remodeling. I want to have text animation when stats change during conversations.

It looks good, take you time and keep working on it :)
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1265 on: October 30, 2013, 02:10:47 PM »
Does anyone have any requests/ideas for the Alpha version Arena? I'll resume programming the day after tomorrow and I need to know if anyone has any requests?
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #1266 on: October 30, 2013, 02:44:06 PM »
Well, you know my ideas. If you want a bet system at Arena, it should be like a minigame.
Arena battle itself could be a minigame too, like you should defeat your enemy for a certain number of turns, with a certain set of skills (like don't use magic or use only fire magic), don't let your health drop below N%, etc. But all this will require a new BE, obviously.

One thing that you probably could make even now is a survival mode of some kind, where you fight (with monsters?) as long as you can nonstop (without belt items, maybe). The more battles you win, the more money/fame/whatever you will get. Every 10 (20? 50?) rounds you can exit and take your reward. If your party was defeated, then no reward.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1267 on: October 30, 2013, 03:05:09 PM »
One thing that you probably could make even now is a survival mode of some kind, where you fight (with monsters?) as long as you can nonstop (without belt items, maybe). The more battles you win, the more money/fame/whatever you will get. Every 10 (20? 50?) rounds you can exit and take your reward. If your party was defeated, then no reward.

Decent idea! I'll add code to allow importing mobs into Arena the day after tomorrow and code in the sequence as you suggest, this sounds like fun :)
Like what we're doing?

Offline CherryWood

  • Hero Member
  • *****
  • Posts: 643
Re: General Discussion
« Reply #1268 on: October 30, 2013, 04:41:27 PM »
@Xela:   
[/size]I still have those welcome lines I mentioned earlier ("...Do you want something? ", "Hey, how's it going? ", "Ah, Hello~ ♪ ", "You're in my way. Get lost. " etc...) that I could sort by disposition/traits too. Just don't know where to not mess the screen.
« Last Edit: October 30, 2013, 05:54:54 PM by CherryWood »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1269 on: October 30, 2013, 06:49:40 PM »
@Xela:   
[/size]I still have those welcome lines I mentioned earlier ("...Do you want something? ", "Hey, how's it going? ", "Ah, Hello~ ♪ ", "You're in my way. Get lost. " etc...) that I could sort by disposition/traits too. Just don't know where to not mess the screen.

For now, use pyt - screens - girlsmeets.rpy file. Split the python block in the label in two and put greetings in between:

Code: [Select]
label girlsmeet:
    $renpy.scene()
    $renpy.show(pytfall.gm.bg_cache)

    hide screen pyt_city_parkgates
    hide screen pyt_city_park
    hide screen pyt_main_street

    python:
        chr_gm = Character(chr.name, color="#c8ffc8")
        player_gm = Character(hero.name, color="#c8ffc8")
        nvl_gm = Character(None, kind=nvl)

        renpy.show_screen('pyt_girlsmeet')
        renpy.with_statement(dissolve)
       
    # ----------------------> Split here.
       
    chr_gm "Hello!" # <--- Greetings go here... use it as you would any other label.

    # ----------------------> Split here.   
    python:   
        while true:
            result = ui.interact()
           
            if result[0] == 'act':
                pytfall.gm.jump('gm_interact_%s'%result[1])
           
            if result[0] == 'menu':
                if result[1] == 'back':
                    pytfall.gm.return_to_menu()
                else:
                    setattr(pytfall.gm, 'show_gm_menu', false)
                    setattr(pytfall.gm, 'show_gm_menu_' + result[1], true)
                   
            if result[0] == 'control':
                if result[1] == 'back':
                    renpy.scene()
                    renpy.hide_screen('pyt_girlsmeet')
                    jump(pytfall.gm.label_cache)
               
                if result[1] == 'return':
                    break
                   
    hide screen pyt_girlsmeet
    hide screen pyt_city_parkgates
    hide screen pyt_city_park
   
    jump pyt_city
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #1270 on: October 31, 2013, 08:54:33 AM »
Queen's Blade pack tagged.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1271 on: October 31, 2013, 11:18:54 AM »
Queen's Blade pack tagged.

Kewl... tomorrows coding is canceled as well, next update will be this weekend...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #1272 on: November 01, 2013, 10:01:06 AM »
SAO, Seiken Densetsu, Soukou Akki Muramasa, Soul Eater packs tagged.

Offline CherryWood

  • Hero Member
  • *****
  • Posts: 643
Re: General Discussion
« Reply #1273 on: November 01, 2013, 10:16:57 AM »
Btw, Cherry, if you don't have much time, I could tag your packs after I'll finish with mine.
Thanks, but no. My packs are not ready for tagging now, they all need updates and I still hope I will be able to do it.


But there is something else where I could use help. I'm not very confident in my knowledge about Naruto and Bleach, so if you are, and if you would be willing do help me with creating girls .xmls, it could save me a lot of wiki studying. (But I don't really mind as it's usually interesting reading  :) [size=78%]).[/size]

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #1274 on: November 01, 2013, 11:01:48 AM »
Well, it's great to see some progress, it's been a hectic week for me and for tonight I'm proclaiming beer a medicine :)

Tomorrow I'll add team formation through JSON and mobs chain fighting into Arena, NPC Arena fighters are already working with one last bug that I still gotta kill.
Like what we're doing?