Phoenix goes Ren'Py

A place to discuss things that aren't specific to any one creator or game.
Forum rules
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
Message
Author
BigFish
Regular
Posts: 36
Joined: Thu Nov 22, 2007 4:13 pm
Contact:

Re: Phoenix goes Ren'Py

#46 Post by BigFish »

There's a freeware game that works very much like Phoenix when it comes to investigation and clue presenting : Fedora Spade (http://studioeres.com/games/fedora).
Woah! That looks awesome! Downloading it right now! :mrgreen:

Actually, I like the look. Reminds me a lot of Super Famicom Detective Club Part II, one of my favorite games.
If you really want the PW feeling though, you'll need some "in your face" stuff like the shouting or some 2 frames desk slamming animation.
Yeah, that could be done with the lip-sync script. Just the blinking and talking is what I'm talking about... that stuff would be hard. Your system (I think it's yours, I forgot... :lol: ) would be good for the court record and stuff. All the hard stuff is covered in it.

The hardest part to make would be the investigation parts. I've tried making an Adventure/Visual Novel in Ren'Py, and it's really hard. Ren'Py was not designed for adventure games at all. :( (The biggest problem is adding choices to menus.)

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Phoenix goes Ren'Py

#47 Post by Jake »

BigFish wrote:(The biggest problem is adding choices to menus.)
In what sense do you mean this? 'Cause what I'd normally think of as "adding choices to menus" is pretty easy in Ren'Py... what exactly are you having trouble with?
Server error: user 'Jake' not found

BigFish
Regular
Posts: 36
Joined: Thu Nov 22, 2007 4:13 pm
Contact:

Re: Phoenix goes Ren'Py

#48 Post by BigFish »

I mean, like adding extra choices to menus. Like:

BEFORE:
Ask About:
Alibi
Motive

AFTER
Ask About:
Alibi
Motive
Hamburger

If there's a good way to do it, I'd like to know. I've been using variables, if-then statements and two different menus, like:

Code: Select all

If var == 1:
  menu:
    "Alibi":
      pass
    "Motive":
      $ var = 2
      pass

If var == 2:
  menu:
    "Alibi":
      pass
    "Motive":
      pass
    "Hamburger":
      pass

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Phoenix goes Ren'Py

#49 Post by Jake »

BigFish wrote:I mean, like adding extra choices to menus. Like:

BEFORE:
Ask About:
Alibi
Motive

AFTER
Ask About:
Alibi
Motive
Hamburger
Check the reference manual on 'menu', specifically the last part of the example. What you need to do is write all of your extra options into the menu, and after the conditional ones add in the "if (condition)" as in that last example. So for your example above, you might write:

Code: Select all

menu:
    "Alibi":
      "Blah Alibi Blah Blah"
      $ seen_alibi = True
    "Motive":
      "Blah Blah Motive Blah"
      $ seen_Motive = True
    "Hamburger" if (seen_Motive == True):
      "Hamburger Blah Blah"
      $ seen_Hamburger = True
    "Screwdriver" if (seen_Hamburger == True):
      "Blah Blah Blah Screwdriver"
      $ seen_Screwdriver = True
and so on.
Server error: user 'Jake' not found

BigFish
Regular
Posts: 36
Joined: Thu Nov 22, 2007 4:13 pm
Contact:

Re: Phoenix goes Ren'Py

#50 Post by BigFish »

:shock:

I really need to start reading the manual more... I could have saved myself sooo much trouble... I actually redesigned parts of my script for that game to make it involve less if/then statements.... :cry:

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Phoenix goes Ren'Py

#51 Post by Jake »

BigFish wrote:I really need to start reading the manual more... I could have saved myself sooo much trouble
It's often the way! ;-)

Seriously, though, Ren'Py's pretty flexible; if you do get stuck on something like that, it's worth asking around on the forum - people are usually happy to help...
Server error: user 'Jake' not found

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: Phoenix goes Ren'Py

#52 Post by PyTom »

What's more, I tend to prioritize features like this that make game-making easier in easy cases. (As compared to stuff that is only applicable in rare cases.)
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

BigFish
Regular
Posts: 36
Joined: Thu Nov 22, 2007 4:13 pm
Contact:

Re: Phoenix goes Ren'Py

#53 Post by BigFish »

Seriously, though, Ren'Py's pretty flexible; if you do get stuck on something like that, it's worth asking around on the forum - people are usually happy to help...
Haha. Thanks. :)

But anyways, if an alternate resource Phoenix Wright project is started, I'm wondering if some of the more small resources from the real game be used. For example: The blips and the CTC thing. The SFX are a bit iffy, but they are really good for the purpose.

And, some technical details:

As a template for new characters, looking at how Eileen is declared in the def.rpy file would probably be best.

All court record items are stored in interface.rpy. Declare the pictures for the items in the init block, like:

Code: Select all

init:

    ## Items
    
    image ibadge = "itembadge.jpg"
    image ireport = "itemreport.jpg"
    
    ## People
    
    image igross = "itemgross.jpg"
    image ijack = "itemjack.jpg"
Then, to add said pictures to the starting court record, put them in these lists:

Code: Select all

label inititems:
    $ itemlist = ["ibadge", "ireport"]
    $ itemdetail = ["iphoto1","iphoto2"]
    $ peoplelist = ["igross", "ijack", "iphoenix", "idolly"]
    $ thumbdict = {'ibadge':"badge", 'ireport':"dossier", 'igross':"gross", 'ijack':"jack", 
        "iphoenix":"phoenix", "idolly":"dolly", "iphoto1":"photo", "ipayne":"payne",
        "iphoto2":"photo", "icold":"cold"
    }
    
Itemdetail is a list of items with details. To put these in, later in interface.rpy, you have to have a label like this:

Code: Select all

label iphoto1detail:

    show photo1 with dissolve
    $ ui.saybehavior()
    $ ui.interact()
    hide photo1 with dissolve
    
    jump record
Replacing photo1 with whatever picture you want.

The thumbdict is used to determine which spinning picture to show when you present that piece of evidence. The name of the thumbnail is determined by this piece in def.rpy:

Code: Select all

    ## Thumbs
    
    image thumb jack = "thumbjack.png"
    image thumb photo = "thumbphoto.png"
    image thumb phoenix = "thumbphoenix.png"
    image thumb dossier = "thumbdossier.png"
You leave the "thumb" out in the thumbdict.

Hope it helps! I'll put more up when I try tinkering with this system a bit. I made this just by looking at the source... :?

monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

Re: Phoenix goes Ren'Py

#54 Post by monele »

As Jake pointed out, it's not too hard to make conditional menus. I'm thinking of another way to do it with a bit more Python (using lists) which would result in code like this :

Code: Select all

$ topics = ['mary_moon','mary_yourself']
$ topicsdict = {'mary_moon': "The moon", 'mary_yourself': "Yourself", 'mary_past': "Your past"}

label mary_moon:
    phoenix "Tell me about the moon."
    mary "Well..."
    # follows moon discussion and somehow leads to talking about Mary's past
    $ topics.append('mary_past')

label mary_yourself:

label mary_past:
What's lacking here is the main part of the code that displays the menus based on what topics are available.

reaktor
Regular
Posts: 27
Joined: Wed Jun 04, 2008 7:25 am
Contact:

Re: Phoenix goes Ren'Py

#55 Post by reaktor »

I'm trying to run the game, but I'm getting this to phoenix.exe.log and game won't run:

Code: Select all

Traceback (most recent call last):
  File "<install zipextimporter>", line 1, in ?
zipimport.ZipImportError: can't find module 'zipextimporter'
Traceback (most recent call last):
  File "renpy.py", line 24, in ?
zipimport.ZipImportError: can't find module 'os'
Any idea about what's going on?

reaktor
Regular
Posts: 27
Joined: Wed Jun 04, 2008 7:25 am
Contact:

Re: Phoenix goes Ren'Py

#56 Post by reaktor »

strange... I got the game running from renpy launcher, but not from .exe , even though I builded new binaries through launcher...

monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

Re: Phoenix goes Ren'Py

#57 Post by monele »

I'm not sure either ô_o... What do you mean by "I builded new binaries through launcher"?

RidleyWright
Regular
Posts: 106
Joined: Mon Feb 18, 2008 7:23 pm
Projects: Blue Moon
Location: Portugal
Contact:

Re: Phoenix goes Ren'Py

#58 Post by RidleyWright »

Oh, this is good stuff. Here I was thinking that someday I'd try to recreate the first episode from the first game using Flash... But this is an amazing shortcut! Even the presenting evidence during cross examination is there. What seems to be missing is the health bar (maybe the patch has a fix for that? I haven't download it yet). Anyway, it's good way to mess a bit with Renpy. I'll be sure to try it out sometime. Thanks. :D

monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

Re: Phoenix goes Ren'Py

#59 Post by monele »

Nah, I don't think I ever implemented the health bar, nor any investigation part ^^;

Neon Lemmy Koopa

Re: Phoenix goes Ren'Py

#60 Post by Neon Lemmy Koopa »

I hate to bump topics, but can someone possibly reupload the Linux version of this?

Post Reply

Who is online

Users browsing this forum: No registered users