Ren'Py Interactive Director 2.0 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.
Post Reply
Message
Author
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:

Ren'Py Interactive Director 2.0 Released

#1 Post by PyTom »

I'm pleased to announce version 2.0 of the Ren'Py Interactive Director. This is a tool for adding scene, show, hide, and with statements to your Ren'Py game. It works by editing both the script file and the in-memory version of the script, without reloading (except when entering the ID for the first time.) Here's a video of my talk introducing version 1.0 at Visual;Conference, version 2.0 adds a few things beyond this.



Version 2.0 is the first version to work with a released version of Ren'Py. It also adds the director.show_tags set, which lets you specify a set of tags that are displayed with the show statement. (This is useful if there are only a few interesting character portraits in your game.) It also supports the "behind" clause, which lets you show one character behind another.

To use version 2.0, download it from the directory below, unzip it, and place it in your Ren'Py sdk. You can also copy the id.rpy file from the interactive director release into your own game, making this release suitable for use with your own projects.

The Ren'Py Interactive Director is free for non-commercial use, where commercial use includes things like kickstarters and patreon-funded games. (I want to make it available for commercial use, but I need to figure out how I'm going to do that. This version requires Ren'Py 6.99.12.3.

https://www.renpy.org/dl/id/

You can also see the source code (which isn't open source, since commercial use isn't permitted) at:

https://github.com/renpy/id

The github page also has a reasonably formatted README file that has the license in it and explains how to use things. As usual, I'm looking forward to seeing what you make with this. This is all fairly new, although I've gotten some great feedback from the community already, feedback that I've used to improve things.
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
xavimat
Eileen-Class Veteran
Posts: 1461
Joined: Sat Feb 25, 2012 8:45 pm
Completed: Yeshua, Jesus Life, Cops&Robbers
Projects: Fear&Love
Organization: Pilgrim Creations
Github: xavi-mat
itch: pilgrimcreations
Location: Spain
Discord: xavimat
Contact:

Re: Ren'Py Interactive Director 2.0 Released

#2 Post by xavimat »

I can't get it to work.
- Downloaded id-2.0.zip from https://www.renpy.org/dl/id/
- First run of the test game,
- first click on "Interactive Director" button at the top of screen.
- The "reloading script" screen appears, and then the error:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "renpy/common/00gltest.rpy", line 361, in <module>
    $ __gl_test()
  File "renpy/common/00gltest.rpy", line 287, in _m1_00gltest__gl_test
    _gl_performance_test()
  File "renpy/common/00gltest.rpy", line 304, in _gl_performance_test
    ui.interact(suppress_underlay=True, suppress_overlay=True)
  File "game/id.rpy", line 222, in interact
    show_director = interact_base()
  File "game/id.rpy", line 202, in interact_base
    change_action = ChangeStatement(lle, node)
  File "game/id.rpy", line 657, in __init__
    self.tag = node.imspec[0][0]
TypeError: 'NoneType' object has no attribute '__getitem__'

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

Full traceback:
  File "lib/windows-i686/00start.rpyc", line 188, in script call
  File "lib/windows-i686/00gltest.rpyc", line 361, in script
  File "C:\Users\username\Documents\renpy\renpy\ast.py", line 814, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Users\username\Documents\renpy\renpy\python.py", line 1715, in py_exec_bytecode
    exec bytecode in globals, locals
  File "renpy/common/00gltest.rpy", line 361, in <module>
    $ __gl_test()
  File "renpy/common/00gltest.rpy", line 287, in _m1_00gltest__gl_test
    _gl_performance_test()
  File "renpy/common/00gltest.rpy", line 304, in _gl_performance_test
    ui.interact(suppress_underlay=True, suppress_overlay=True)
  File "C:\Users\username\Documents\renpy\renpy\ui.py", line 285, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "C:\Users\username\Documents\renpy\renpy\display\core.py", line 2500, in interact
    i()
  File "game/id.rpy", line 222, in interact
    show_director = interact_base()
  File "game/id.rpy", line 202, in interact_base
    change_action = ChangeStatement(lle, node)
  File "game/id.rpy", line 657, in __init__
    self.tag = node.imspec[0][0]
TypeError: 'NoneType' object has no attribute '__getitem__'

Windows-8-6.2.9200
Ren'Py 6.99.12.3.2123
Interactive Director Test Game 1.1
Another thing:
Shouldn't this line in the screen director() be prepared for translation?:

Code: Select all

text "The interactive director is licensed for non-commercial use only."
# So:
text _("The interactive director is licensed for non-commercial use only.")
Comunidad Ren'Py en español: ¡Únete a nuestro Discord!
Rhaier Kingdom A Ren'Py Multiplayer Adventure Visual Novel.
Cops&Robbers A two-player experiment | Fear&Love Why can't we say I love you?
Honest Critique (Avatar made with Chibi Maker by ~gen8)

User avatar
Lodratio
Regular
Posts: 45
Joined: Wed Feb 24, 2016 7:22 pm
Projects: S P H I N X
Contact:

Re: Ren'Py Interactive Director 2.0 Released

#3 Post by Lodratio »

This is some next gen stuff! Thanks for your hard work.

User avatar
stuartwakefield
Newbie
Posts: 7
Joined: Wed Feb 01, 2017 6:45 am
Completed: 0
Projects: 1
IRC Nick: stuartwakefield
Tumblr: mixedsignalsgame
Deviantart: stuartwakefield
Location: UK
Contact:

Re: Ren'Py Interactive Director 2.0 Released

#4 Post by stuartwakefield »

This looks like it's going to be really useful. Thank you, Tom!

I'll give it a whirl tomorrow :)

Stu

User avatar
Lodratio
Regular
Posts: 45
Joined: Wed Feb 24, 2016 7:22 pm
Projects: S P H I N X
Contact:

Re: Ren'Py Interactive Director 2.0 Released

#5 Post by Lodratio »

This really does make implementation far less timeconsuming. Write your dialogue and narration first, then do a second pass where you add in backgrounds sprites and sfx and you're good.
Would it be possible to add sound channel support to this assistent as well? Being able to insert music in real time should give creators a better feel of how much of a single piece of music is going to play for the reader before a switch.

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 Interactive Director 2.0 Released

#6 Post by PyTom »

Yes, music and sound support is the next thing I'll be adding.
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

Post Reply

Who is online

Users browsing this forum: Google [Bot]