Ren'Py 6.15 Pre-Releases

In this forum we discuss the future of Ren'Py, both bug fixes and longer-term development. Pre-releases are announced and discussed here.
Message
Author
User avatar
nyaatrap
Crawling Chaos
Posts: 1824
Joined: Mon Feb 13, 2012 5:37 am
Location: Kimashi Tower, Japan
Contact:

Re: Ren'Py 6.15 Pre-Releases

#121 Post by nyaatrap » Wed Mar 13, 2013 2:02 am

I made a sample program:
memory_test-1.0-win.zip
The fullcode is:

Code: Select all

# The game starts here.
label start:
    while True:
        python:
            for k in ["1","2", "3"]:
                for j in ["1","2","3","4","5", "6"]:
                    for i in ["a", "b", "c", "f", "l", "n", "p", "s", "z" ]:
                         renpy.show("image", at_list=[truecenter], what=im.Composite((935,1280), (0,0),
                                "large/rio60.png", (0,0), "large/rio_%s.png"%i, (0,0), "large/rio_x%s.png"%j, (0,0), "large/rio_xx%s.png"%k))
                         renpy.pause(.0000001, hard=True)
    return
It consumes 1GB even the cache size is set to 800x600x8. When I press right click to stop this loop temporarily, cache is released. Otherwise, It stores all caches until composite all possibilities, or hit a memory limit.

I also think set config.skip_delay = 0 makes higher this cache stack problem. Though even I set config.skip_delay default, this out of memory error still happened when I used skipping normally.

BTW, from this investigation, I found LiveComposite is far memory efficient than im.Composite. im.Composite isn't useful especially on facial expression changes because of amount of RAM usage.

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4067
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Ren'Py 6.15 Pre-Releases

#122 Post by jack_norton » Wed Mar 13, 2013 12:10 pm

I can confirm that something is wrong... I build Planet Stronghold with 6.15 to test in release mode. After 5-10minutes of playing, doing a lot of skipping, game start crashing with really bizarre bugs, pointing to lines like a simple menu: statement and so on.
Rebuilt it with 6.14, no problems. Now if wasn't working even in 6.14 could be a problem of my horrible messy/outdated coding, but at this point I'm pretty sure is some memory leak/other bug too!
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 15893
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Ren'Py 6.15 Pre-Releases

#123 Post by PyTom » Wed Mar 13, 2013 3:32 pm

I'll be looking into these tonight.

If people can get me stand-along demos that exhibit these bugs, then that would make my life a lot easier - often, getting a bug to occur for me is harder than fixing the underlying problem.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
"Silly and fun things are important." - Elon Musk
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4067
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Ren'Py 6.15 Pre-Releases

#124 Post by jack_norton » Wed Mar 13, 2013 5:09 pm

Yes I can imagine... the problem in this case is that I'm not really sure what is triggering the bug. I tried again playing BH2 and worked fine even with skipping. When you have big games is a problem to isolate the piece of code that's causing the bug :(
follow me on Image Image Image
computer games

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4067
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Ren'Py 6.15 Pre-Releases

#125 Post by jack_norton » Wed Mar 13, 2013 5:17 pm

Not sure if can help:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game\warchived.rpy", line 1074, in script call
  File "game\data.rpy", line 1972, in script
  File "game\data.rpy", line 1978, in python
IndexError: list assignment index out of range

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "C:\- indie dev -\games\renpy\renpy\execution.py", line 288, in run
    node.execute()
  File "C:\- indie dev -\games\renpy\renpy\ast.py", line 718, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\- indie dev -\games\renpy\renpy\python.py", line 1258, in py_exec_bytecode
    exec bytecode in globals, locals
  File "game\data.rpy", line 1978, in <module>
    Inv[10]=[]
  File "C:\- indie dev -\games\renpy\renpy\python.py", line 483, in do_mutation
    return method(self, *args, **kwargs)
IndexError: list assignment index out of range

Windows-7-6.1.7601-SP1
Ren'Py 6.15.2.281
that line is:

Code: Select all

label blueprints:
    python:
        renpy.music.play("snd/soft2.ogg",fadein=3.0)
        genhelp=2;advice=0;pt=0;adj = ui.adjustment();styp="newinv";iFull=False;SFilter=[1,1,1];active_hero=0
        #TERRIBLE CODING HERE
#        ShopInv=[ [ [1,99],], ]
#        Inv.append(list(ShopInv[0]))
        Inv[10]=[]
        for i2 in range(57,146):
            Inv[10].append(list([i2,99]))
more precisely the line Inv[10]=[] which seems fine to me (and works in 6.14).

Then this is even more strange:

Code: Select all

While running game code:
  File "game\story.rpy", line 293, in script
TypeError: list indices must be integers, not str

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "C:\- indie dev -\games\renpy\renpy\execution.py", line 288, in run
    node.execute()
  File "C:\- indie dev -\games\renpy\renpy\ast.py", line 1302, in execute
    next_node(self.items[choice][2][0])
TypeError: list indices must be integers, not str

Code: Select all

    #win or lose?
    if _return=="win":
        scene i_hangar
        show i_tom happy at scale(.55),topright
        show expression ("%s happy" % mainc)  at scale(.5),baseleft with dissolve
        ts "You fought well, Nelson!"
        menu:
            "Thank you, sir!":
                ts "You have already made quite an impression and you've only just arrived-"
                scene i_hangar
                show i_rebecca angry at top with dissolve
                rf "Come on, Tom. That was an easy fight! Only give credit where credit is due."
                rf "We don't need any more new recruits with big heads. I've got plenty to give you if that's what you're going for."
                psc "(Thanks for ruining the mood.)"
            "Well, I wasn't the best recruit in the whole academy for nothing.":
                ts "Well, it seems they didn't teach you much about modesty at the academy. In any case -"
                scene i_hangar
                show i_rebecca angry at top with dissolve
                rf "%(He)s seems to be overly confident in %(his)s worth to me."
the line is the one where says menu:
Probably those won't help, but thought to still try posting them... good luck!
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 15893
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Ren'Py 6.15 Pre-Releases

#126 Post by PyTom » Wed Mar 13, 2013 10:51 pm

jack_norton wrote:Yes I can imagine... the problem in this case is that I'm not really sure what is triggering the bug. I tried again playing BH2 and worked fine even with skipping. When you have big games is a problem to isolate the piece of code that's causing the bug :(
Yes, but it's work that needs to be done - or it's possible the bug is not in Ren'Py itself.

The Inv[10] bug looks like it would be triggered if Inv has less than 11 items in it.

The menu one would trigger if there was a bug in the menu screen that meant it could possibly Return something other than one of the actions that was supplied for it to return.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
"Silly and fun things are important." - Elon Musk
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4067
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Ren'Py 6.15 Pre-Releases

#127 Post by jack_norton » Thu Mar 14, 2013 3:53 am

Yes true, will make better investigations :)
follow me on Image Image Image
computer games

User avatar
nyaatrap
Crawling Chaos
Posts: 1824
Joined: Mon Feb 13, 2012 5:37 am
Location: Kimashi Tower, Japan
Contact:

Re: Ren'Py 6.15 Pre-Releases

#128 Post by nyaatrap » Thu Mar 14, 2013 7:15 am

Another bug on bar with toottip.
When I make Tooltip and applied on bars as hovered property, Ren'py crashes when tt value is non-empty string.
Test code is following:

Code: Select all

init 100: #to override template
    screen preferences:
    
        tag menu
        
        default tt=Tooltip("")
    
        # Include the navigation.
        use navigation
    
        # Put the navigation columns in a three-wide grid.
        vbox:
            style_group "prefs"
            xfill True
            frame:
                style_group "pref"
                has vbox
    
                label _("Text Speed")
                bar value Preference("text speed"):
                     hovered tt.Action("aaa")
                     
            frame:
                style_group "pref"
                has vbox
    
                label _("Music Volume")
                bar value Preference("music volume"):
                     hovered tt.Action("")
Clicking a bar with hovered tt.Action("") doesn't crash. But clicking a bar with hovered tt.Action("aaa") crashes.

edit: there's also another weird issue in bar tooltip. when both button and bar shares same Tooltip instance, tt value of buttons couldn't show correctly

Code: Select all

  default tt=Tooltip("")
  button hovered tt.Action("button tips")
  bar hovered tt.Action("bar tips")
  text tt.value
the above code only shows bar tips correctly.

User avatar
nyaatrap
Crawling Chaos
Posts: 1824
Joined: Mon Feb 13, 2012 5:37 am
Location: Kimashi Tower, Japan
Contact:

Re: Ren'Py 6.15 Pre-Releases

#129 Post by nyaatrap » Fri Mar 15, 2013 5:11 am

I confirmed memory leak is proportional to config.skip_delay.
When I set it to 10, it never release cache and crashes soon.
When I set it to 20, it releases cache normally and safe to use skipping.

same thing occurred to renpy.pause

Code: Select all

while 1:
    renpy.show("image")
    renpy.pause(.01, hard=True)
this code never release cache, but

Code: Select all

while 1:
    renpy.show("image")
    renpy.pause(.02 hard=True)
this code releases cache normally.

Took me several weeks to investigate it but I found how to fix my scripts finally =D

User avatar
nyaatrap
Crawling Chaos
Posts: 1824
Joined: Mon Feb 13, 2012 5:37 am
Location: Kimashi Tower, Japan
Contact:

Re: Ren'Py 6.15 Pre-Releases

#130 Post by nyaatrap » Fri Mar 15, 2013 10:24 am

PyTom, I have a question about copyright notice on the template.
I know screens.rpy is in the public domain. But how about options.rpy and Readme.HTML? Can I treat them as if they're in the public domain, or is there something I should consider? Since I'm making a Japanese template and want to release it in the public domain.

User avatar
PyTom
Ren'Py Creator
Posts: 15893
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Ren'Py 6.15 Pre-Releases

#131 Post by PyTom » Fri Mar 15, 2013 12:11 pm

Yes, you can treat those as public domain.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
"Silly and fun things are important." - Elon Musk
Software > Drama • https://www.patreon.com/renpytom

User avatar
Sapphi
Eileen-Class Veteran
Posts: 1685
Joined: Fri Jun 05, 2009 3:31 am
Completed: Boku no Taisetsu na Yumeko
Projects: Twelve, PAW ★ PRINTS
Organization: Kitsch-soft
Location: Illinois, USA
Contact:

Re: Ren'Py 6.15 Pre-Releases

#132 Post by Sapphi » Sun Mar 17, 2013 3:01 pm

Downloaded 6.15 fresh from website just now.
Upon start-up I was asked to update DirectX. Updated with seemingly no problems.
Then tried to restart Ren'py with the given in-program "Restart" button and received this:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "renpy/common/00start.rpy", line 99, in script call
  File "renpy/common/00gltest.rpy", line 356, in script
  File "renpy/common/00gltest.rpy", line 368, in python
WindowsError: [Error 193] %1 is not a valid Win32 application

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "C:\Documents and Settings\Sapphi\Desktop\renpy-6.15.2-sdk\renpy\execution.py", line 288, in run
    node.execute()
  File "C:\Documents and Settings\Sapphi\Desktop\renpy-6.15.2-sdk\renpy\ast.py", line 718, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Documents and Settings\Sapphi\Desktop\renpy-6.15.2-sdk\renpy\python.py", line 1258, in py_exec_bytecode
    exec bytecode in globals, locals
  File "renpy/common/00gltest.rpy", line 368, in <module>
    subprocess.Popen(sys.argv)
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/subprocess.py", line 679, in __init__
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/subprocess.py", line 896, in _execute_child
WindowsError: [Error 193] %1 is not a valid Win32 application

Windows-XP-5.1.2600-SP3
Ren'Py 6.15.2.281
Ren'Py Launcher 6.15.2.281
Closed out of Ren'Py. Opened Ren'Py again.
It showed me the Performance Warning again as though I had never updated DirectX.
Tried to update DirectX again. Updater informed me that a newer or equivalent version had already been installed and no updates were necessary.
Closed out of updater and tried to restart Ren'Py again via in-program "Restart" button.
Returned the same error.
"It is [the writer's] privilege to help man endure by lifting his heart,
by reminding him of the courage and honor and hope and pride
and compassion and pity and sacrifice which have been the glory of his past."
— William Faulkner
▬▬▬▬▬▬▬▬▬▬..+X+..▬▬▬▬▬▬▬▬▬▬
Image

User avatar
PyTom
Ren'Py Creator
Posts: 15893
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Ren'Py 6.15 Pre-Releases

#133 Post by PyTom » Sun Mar 17, 2013 3:08 pm

Sapphi, can I see your log.txt?
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
"Silly and fun things are important." - Elon Musk
Software > Drama • https://www.patreon.com/renpytom

User avatar
Sapphi
Eileen-Class Veteran
Posts: 1685
Joined: Fri Jun 05, 2009 3:31 am
Completed: Boku no Taisetsu na Yumeko
Projects: Twelve, PAW ★ PRINTS
Organization: Kitsch-soft
Location: Illinois, USA
Contact:

Re: Ren'Py 6.15 Pre-Releases

#134 Post by Sapphi » Sun Mar 17, 2013 3:12 pm

There... doesn't seem to be a file "log.txt" in the whole of the 6.15 folder...
"It is [the writer's] privilege to help man endure by lifting his heart,
by reminding him of the courage and honor and hope and pride
and compassion and pity and sacrifice which have been the glory of his past."
— William Faulkner
▬▬▬▬▬▬▬▬▬▬..+X+..▬▬▬▬▬▬▬▬▬▬
Image

User avatar
PyTom
Ren'Py Creator
Posts: 15893
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Ren'Py 6.15 Pre-Releases

#135 Post by PyTom » Sun Mar 17, 2013 6:52 pm

Try launching the tutorial, then look in the tutorial directory. It should be in there.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
"Silly and fun things are important." - Elon Musk
Software > Drama • https://www.patreon.com/renpytom

Post Reply

Who is online

Users browsing this forum: No registered users