Ren'Py 6.11.0 Pre-Released

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Message
Author
User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#106 Post by jack_norton »

Ok thanks :) What about the other problem, can I pass a variable as displayable and use %s in the screen add command ?
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#107 Post by PyTom »

For parser reasons, you have to put complicated expressions in parenthesis. Also, you can't include ATL directly in screen language. So you'd have to write:

Code: Select all

transform ease_in_char:
    xalign 2.5 yalign 0.8
    easein 4.0 xalign 0.5

screen shownewchar:
    add ("%s" % ch) xalign 0.5 yalign 0.0
    add "gfx/i_tom.png" at ease_in_char
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#108 Post by jack_norton »

Thanks a lot, now works. However, there's an equivalent of the renpy.pause() python command, or how I can get back to the main program execution? I mean after the animation finished playing the game stops, you can't return back to the next line after the "call screen name" statement ?
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#109 Post by PyTom »

Putting

Code: Select all

timer 1.0 action Return(True)
in the screen is one way to do it. Another would be:

Code: Select all

show screen test
pause 1.0
hide screen test
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#110 Post by jack_norton »

Ahh ok thanks. Found 2 more bugs though:
1) I have a global overlay displaying a menu on the right (you can see it in previous screens of the game) and I use renpy.current_interact_type() to check, if is "say" I display it, otherwise I hide it because is a cutscene. However using your 2nd example with pause 1.0 the game still shows the overlay, while if I put $ renpy.pause(1.0) it works correctly (it hides it). So I think the current_interact_type value maybe need a check ?
2) I used the code:

Code: Select all

screen shownewchar:
    add "i_landing" at t_dissolve(1.0)
    add ("%s" % ch) xalign 0.5 yalign 0.0 at t_dissolve(1.0)
    add "gfx/i_tom.png" at ease_in_char
    text "Lieutenant of Planet Stronghold army" at text_s style "tip2"
to show the new character (2nd line). However I wanted a fade-in so I had to made the transform:

Code: Select all

transform t_dissolve(t):
    alpha 0.0
    linear t alpha 1.0
and I noticed that the xalign / yalign aren't passed to the transform, right? I took two screenshots, one if you play the game advancing (correct), while the second if you attempt to rollback, and the view is not the one of before :D
I found a solution, to put the x,y as parameters to dissolve, so maybe isn't a real bug, but just something that perhaps could be useful to note in the docs for people wondering why they get different results using ATL and screens together.

Sorry about filling the thread with all those screens :mrgreen:
Attachments
screenshot0002.jpg
screenshot0001.jpg
follow me on Image Image Image
computer games

Mihara
Regular
Posts: 119
Joined: Thu Mar 11, 2010 2:52 pm
Contact:

Re: Ren'Py 6.11.0 Pre-Released

#111 Post by Mihara »

Found a lovely new bug. Apparently introduced in 6.11c, because I didn't see that happening in 6.11b - but since I no longer have a copy of 6.11b I can't confirm that.

options.rpy:

Code: Select all

    config.screen_width = 640
    config.screen_height = 480
(The effect also appears at 800x600 with the same transition image, but the image is 640x480 so you can't see the distortion. I noticed it in my 640x480 project. It may be specific to that transition image size.)

The full minimal script:

Code: Select all

# You can place the script of your game in this file.

init python:
    smoothwipe = Image("smoothwipe.png")
    smoothwipeleft = ImageDissolve(smoothwipe,0.5,alpha=True)
    smoothwiperight = ImageDissolve(smoothwipe,0.5,alpha=True,reverse=True)

init:
    image eileen happy = "eileen_happy.png"
    image eileen concerned = "eileen_happy.png"
    image bg washington = "washington.jpg"
    image bg whitehouse = "whitehouse.jpg"

    # Declare characters used by this game.
    $ e = Character('Eileen', color="#c8ffc8")


# The game starts here.
label start:

    scene bg washington
    show eileen happy
    with dissolve
    
    e "Minimal test case."
    
    scene bg whitehouse
    show eileen concerned
    with smoothwipeleft
    
    e "It shouldn't be doing that, should it?"
And here's what I get while the transition is in progress:
'Py Game.png
The distortion looks exactly the same if all the images are the appropriate sizes for a 640x480 project, I'm just using the ones from the tutorial for repeatability.

The distortion is not present if the window was resized at the time of the transition, but reliably reappears when the window size is exactly the original.

Transition image included, opengl.txt included.

P.S.: Which reminds me. Can we have a Gradient() in addition to a Solid()? :)
Attachments
smoothwipe.png
smoothwipe.png (1.93 KiB) Viewed 1170 times
opengl.txt
(5.34 KiB) Downloaded 77 times

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#112 Post by PyTom »

Looks like you've found the new "random cubism" easter egg.

More seriously: That was a really good bug report.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

Mihara
Regular
Posts: 119
Joined: Thu Mar 11, 2010 2:52 pm
Contact:

Re: Ren'Py 6.11.0 Pre-Released

#113 Post by Mihara »

PyTom wrote:More seriously: That was a really good bug report.
I did forget to add something, though. :)

The distortion is not present on the Eee 901/Linux that I referred to previously when reporting the cutscene movie playing bug. This may, however, be related to running the netbook version of Ubuntu, which includes Maximus and maximizes all windows every chance it gets -- I'm not sure if unmaximizing them gets the original size back or not.

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#114 Post by PyTom »

jack_norton wrote:and I noticed that the xalign / yalign aren't passed to the transform, right?
That's what config.transform_uses_child_position controls. If it's true (the default), the transform takes xalign (et al) from the the child. If it's False, it ignores them.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

Mihara
Regular
Posts: 119
Joined: Thu Mar 11, 2010 2:52 pm
Contact:

Re: Ren'Py 6.11.0 Pre-Released

#115 Post by Mihara »

Relaying a confirming report of the ImageDissolve bug I just mentioned above from a similar project a friend's making. (He's not registered on this forum, so.) His project is 960x480, and the symptoms match completely.

opengl.txt included, pardon the spam as it's been copypasted for delivery:

Code: Select all

Ren'Py 6.11.0c
windowed mode.
Screen sizes: virtual=(960, 480) physical=(960, 480)
Vendor: 'NVIDIA Corporation'
Renderer: 'GeForce 8800 GT/PCI/SSE2/3DNOW!'
Version: '3.2.0'
Extensions:

GL_ARB_color_buffer_float
GL_ARB_compatibility
GL_ARB_copy_buffer
GL_ARB_depth_buffer_float
GL_ARB_depth_clamp
GL_ARB_depth_texture
GL_ARB_draw_buffers
GL_ARB_draw_elements_base_vertex
GL_ARB_draw_instanced
GL_ARB_fragment_coord_conventions
GL_ARB_fragment_program
GL_ARB_fragment_program_shadow
GL_ARB_fragment_shader
GL_ARB_framebuffer_object
GL_ARB_framebuffer_sRGB
GL_ARB_geometry_shader4
GL_ARB_half_float_pixel
GL_ARB_half_float_vertex
GL_ARB_imaging
GL_ARB_map_buffer_range
GL_ARB_multisample
GL_ARB_multitexture
GL_ARB_occlusion_query
GL_ARB_pixel_buffer_object
GL_ARB_point_parameters
GL_ARB_point_sprite
GL_ARB_provoking_vertex
GL_ARB_seamless_cube_map
GL_ARB_shader_objects
GL_ARB_shading_language_100
GL_ARB_shadow
GL_ARB_sync
GL_ARB_texture_border_clamp
GL_ARB_texture_buffer_object
GL_ARB_texture_compression
GL_ARB_texture_compression_rgtc
GL_ARB_texture_cube_map
GL_ARB_texture_env_add
GL_ARB_texture_env_combine
GL_ARB_texture_env_crossbar
GL_ARB_texture_env_dot3
GL_ARB_texture_float
GL_ARB_texture_mirrored_repeat
GL_ARB_texture_multisample
GL_ARB_texture_non_power_of_two
GL_ARB_texture_rectangle
GL_ARB_texture_rg
GL_ARB_transpose_matrix
GL_ARB_uniform_buffer_object
GL_ARB_vertex_array_bgra
GL_ARB_vertex_array_object
GL_ARB_vertex_buffer_object
GL_ARB_vertex_program
GL_ARB_vertex_shader
GL_ARB_window_pos
GL_ATI_draw_buffers
GL_ATI_texture_float
GL_ATI_texture_mirror_once
GL_EXTX_framebuffer_mixed_formats
GL_EXT_Cg_shader
GL_EXT_abgr
GL_EXT_bgra
GL_EXT_bindable_uniform
GL_EXT_blend_color
GL_EXT_blend_equation_separate
GL_EXT_blend_func_separate
GL_EXT_blend_minmax
GL_EXT_blend_subtract
GL_EXT_compiled_vertex_array
GL_EXT_depth_bounds_test
GL_EXT_direct_state_access
GL_EXT_draw_buffers2
GL_EXT_draw_instanced
GL_EXT_draw_range_elements
GL_EXT_fog_coord
GL_EXT_framebuffer_blit
GL_EXT_framebuffer_multisample
GL_EXT_framebuffer_object
GL_EXT_framebuffer_sRGB
GL_EXT_geometry_shader4
GL_EXT_gpu_program_parameters
GL_EXT_gpu_shader4
GL_EXT_multi_draw_arrays
GL_EXT_packed_depth_stencil
GL_EXT_packed_float
GL_EXT_packed_pixels
GL_EXT_pixel_buffer_object
GL_EXT_point_parameters
GL_EXT_provoking_vertex
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_shader_objects
GL_EXT_separate_specular_color
GL_EXT_shadow_funcs
GL_EXT_stencil_two_side
GL_EXT_stencil_wrap
GL_EXT_texture3D
GL_EXT_texture_array
GL_EXT_texture_buffer_object
GL_EXT_texture_compression_latc
GL_EXT_texture_compression_rgtc
GL_EXT_texture_compression_s3tc
GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_add
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_integer
GL_EXT_texture_lod
GL_EXT_texture_lod_bias
GL_EXT_texture_mirror_clamp
GL_EXT_texture_object
GL_EXT_texture_sRGB
GL_EXT_texture_shared_exponent
GL_EXT_texture_swizzle
GL_EXT_timer_query
GL_EXT_vertex_array
GL_EXT_vertex_array_bgra
GL_IBM_rasterpos_clip
GL_IBM_texture_mirrored_repeat
GL_KTX_buffer_region
GL_NVX_conditional_render
GL_NVX_gpu_memory_info
GL_NV_blend_square
GL_NV_conditional_render
GL_NV_copy_depth_to_color
GL_NV_copy_image
GL_NV_depth_buffer_float
GL_NV_depth_clamp
GL_NV_explicit_multisample
GL_NV_fence
GL_NV_float_buffer
GL_NV_fog_distance
GL_NV_fragment_program
GL_NV_fragment_program2
GL_NV_fragment_program_option
GL_NV_framebuffer_multisample_coverage
GL_NV_geometry_shader4
GL_NV_gpu_program4
GL_NV_half_float
GL_NV_light_max_exponent
GL_NV_multisample_coverage
GL_NV_multisample_filter_hint
GL_NV_occlusion_query
GL_NV_packed_depth_stencil
GL_NV_parameter_buffer_object
GL_NV_parameter_buffer_object2
GL_NV_pixel_data_range
GL_NV_point_sprite
GL_NV_primitive_restart
GL_NV_register_combiners
GL_NV_register_combiners2
GL_NV_shader_buffer_load
GL_NV_texgen_reflection
GL_NV_texture_barrier
GL_NV_texture_compression_vtc
GL_NV_texture_env_combine4
GL_NV_texture_expand_normal
GL_NV_texture_rectangle
GL_NV_texture_shader
GL_NV_texture_shader2
GL_NV_texture_shader3
GL_NV_transform_feedback
GL_NV_vertex_array_range
GL_NV_vertex_array_range2
GL_NV_vertex_buffer_unified_memory
GL_NV_vertex_program
GL_NV_vertex_program1_1
GL_NV_vertex_program2
GL_NV_vertex_program2_option
GL_NV_vertex_program3
GL_S3_s3tc
GL_SGIS_generate_mipmap
GL_SGIS_texture_lod
GL_SGIX_depth_texture
GL_SGIX_shadow
GL_SUN_slice_accum
GL_WIN_swap_hint
WGL_EXT_swap_control
Number of texture units: 4
Using shader environment.
Using copy RTT.
About to quit GL.
Finished quit GL.
Offending transition image included, but I doubt the image itself is to blame, looks like it's the vertical size.
Attachments
witchfade.png

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#116 Post by PyTom »

Hm... my earlier post about this didn't seem to go through. Maybe I forgot to submit it.

I've fixed the imagedissolve bug. The problem was that I was assigning texture units to shaders incorrectly. For whatever reason, at 800x600 it would work, but at other sizes, the coordinates would be totally wrong - and cubism mode would enable.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#117 Post by jack_norton »

Thanks for the clarification about xalign/yalign. I think my difficulties are mainly because I'm modifying a game with LOT of custom python stuff already made for previous versions. And you should make a competition, "best bug report" :D
follow me on Image Image Image
computer games

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#118 Post by jack_norton »

I'm doing something but not sure if renpy should allow it, or if I'm doing something to avoid.
In my battle the screen is divided into 3 parts. So thought to make 3 "screens" even if each one is just a layer: top, main view, bottom.
In the game code I just use: "show screen b_topinfo" and so on, but the screen in question is:

Code: Select all

screen b_enemies:
    python:
        #draw enemies
        ui.frame(xalign=0.5, yalign=0.6, style="default")
        ui.hbox(4)
....etc etc
so not like your example of init python. I don't actually even define a screen if I understood correctly. Is possible to do it that way or I should avoid it?

Also I'm going nuts on what should be a very simple thing: I want to display a shadow on the bottom of the enemy displayable. But if I try with python commands the shadow "pushes away" the enemy. This is a problem I always had with renpy, displayables "pushing" others out of the way :D
In flower shop I solved that problem with an overlay for the various effects on the plants, and also using fixed x,y. But in this case I would like the shadow to always stay on bottom (yalign=1.0) but the enemies have all different sizes, so that's what makes this difficult.
I think there must be an easier / more correct way, maybe with the new screen language? :oops:
Attachments
wrongshadows.jpg
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 16096
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.11.0 Pre-Released

#119 Post by PyTom »

I'm not sure what you mean by your first post. While you can do python-in-screen-language, you lose some benefits by doing it that way. (Most notably, the automatic assignment of ids to displayables.) I'm not sure what your first example has that:

Code: Select all

screen b_enemies:
        frame align (.5, .6) style "default":
            hbox:
                #...
doesn't.

With the second thing, I'd use a fixed, probably.

Code: Select all

screen creature:
    fixed area (100, 100, 300, 400):
        add "shadow.png" align (.5, 1.0)
        add "creature.png" align (.5, 1.0)
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4085
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.11.0 Pre-Released

#120 Post by jack_norton »

Ah understood. I'm indeed converting the python into the new language system (that was my 6.10 python code to display stuff on screen). So far converting it seems rather simple! :)
I tried using the fixed already, but forgot about the area thing, now works!
I have another problem though, probably due to the fact that I'm doing a mix with old system and new method: I now defined all the robot display as screen so I can have also effects in a easy way. however I have troubles with zorder as you can see from the screen. I tried using ui.layer("screens") and they appear above the "background screen", but then have troubles (like if I want to remove them).
There's some way to put a screen behind all ui functions like if was a background? (I tried putting zorder to 0 but doesn't work still). Layers are fixed or can be modified ? (sorry about all the questions)
Attachments
screenshot0001.jpg
follow me on Image Image Image
computer games

Post Reply

Who is online

Users browsing this forum: Bing [Bot], Google [Bot]