Lemma Soft Forums

Supporting creators of visual novels and story-based games since 2003.


Visit our new games list, blog aggregator, IRC, and wiki.
Activation problem? Email [email protected]
It is currently Wed Jun 19, 2013 6:43 pm

All times are UTC - 5 hours [ DST ]


Forum rules


Ren'Py specific discussion will be moved to the Ren'Py support forum.



Post new topic Reply to topic  [ 12 posts ] 
Author Message
 Post subject: Text Games
PostPosted: Sun Mar 18, 2012 4:51 pm 
Newbie

Joined: Sun Mar 18, 2012 4:44 pm
Posts: 3
Sad to say, I can't draw. I've written and released several text games, but I'm not satisfied with the way these games are displayed visually. I'm hunting for a system that will allow me to write a complex text game, yet give me a great deal of control over the visual presentation.

Has anyone used Ren'Py to create text-heavy, non-illustrated games?

I understand that there would be no parser for text input from the user, so all user input would be by clicking/tapping. Does Ren'Py support hyperlinks within text blocks? Can these be used to print new output to the main window? If a text block is too long for the visible window, can it be scrolled?

Can Ren'Py games (specific spots within the story) be saved and restored by the user? Is an undo function provided?

Sorry to ask such basic questions, but I figured it would be easier to ask the experts than to spend an hour poring over the documentation.


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Sun Mar 18, 2012 5:38 pm 
Arbiter of the Internets
User avatar

Joined: Tue Aug 26, 2003 4:37 am
Posts: 3354
Completed: Cute Knight, Fatal Hearts, Date Warp, Magical Diary, Long Live The Queen, The Royal Trap
Projects: Black Closet
Organization: Hanako Games
Quote:
Has anyone used Ren'Py to create text-heavy, non-illustrated games?


Look up Digital: A Love Story :)

RenPy can do text input, but most people aren't up to the job of writing a robust text-adventure parser from scratch, so it's usually only used for prompting the user for specific information. Clickable thingies and changing the current display based on them is certainly feasible. I have been *told* that scrolling is more complicated than would be nice; I haven't personally messed with it.

Load/save is basic and built in. There is a very robust undo IF you are working with standard renpy codes - just rolling the mousewheel up will reverse your course through the game and undo any changes made. It is possible, though, that if you hack things far enough you will encounter situations that break rollback or cause it to behave in an unexpected manner.

_________________
Hanako Games


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Sun Mar 18, 2012 6:06 pm 
Miko-Class Veteran
User avatar

Joined: Mon Dec 13, 2010 9:30 am
Posts: 843
Location: New Brunswick, Canada
Projects: Camp Renard
You might also want to look at some javascript hypertext frameworks. They work well with text.

Undum: http://undum.com/
Vorple: http://vorple-if.com/ (Built on Undum and now Parchment)

The Play: http://www.deirdrakiai.com/theplay/ (an awesome IF written with Undum)

Twine: http://gimcrackd.com/etc/src/ (Visual editor)

Textallion: http://anamnese.online.fr/site2/textall ... ation.html (Can make CYOA and export to Pen'Py)

I have seen some Ren'py projects that work like a story book, so I'm certain an all text story would certainly work well.

What have you used for your text games?

Susan

_________________
In order to understand recursion, one must first understand recursion. (Anonymous)


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Sun Mar 18, 2012 6:57 pm 
Newbie

Joined: Sun Mar 18, 2012 4:44 pm
Posts: 3
Thanks, Susan. I've been looking closely at Undum/Vorple. At present, it is fatally flawed, in that the reader/user/player cannot save multiple game/story states and then reload a given state as needed. For any type of complex, branching interactive story, that limitation is a flat-out deal-breaker.

That's why I'm looking around for other options.

It turns out there's a mechanism in HTML 5 called localStorage, which should be able to store Undum story states. Maybe only a few lines of Javascript need to be added. But I don't want to spend weeks learning Javascript until I know that at the end I'll be able to produce a story.

localStorage has limitations: Saved games apparently won't be transferrable between one browser and another. But that's not a deal-breaker, it's just unfortunate.


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Sun Mar 18, 2012 7:01 pm 
Newbie

Joined: Sun Mar 18, 2012 4:44 pm
Posts: 3
papillon wrote:
RenPy can do text input, but most people aren't up to the job of writing a robust text-adventure parser from scratch, so it's usually only used for prompting the user for specific information. Clickable thingies and changing the current display based on them is certainly feasible. I have been *told* that scrolling is more complicated than would be nice; I haven't personally messed with it.

Thanks for the details. I'm not planning to write a text parser ... I'm not nearly that masochistic. At the moment I'm interested in text output -- I should have been more specific with my question. In order to structure an interactive story, it is often (almost always) necessary to assemble blocks of text "on the fly" before outputting them to the window display. I'm pretty sure Python will let you concatenate strings, so that shouldn't be a big problem, though I would expect it to be more work than in a dedicated text game authoring system.


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Tue Mar 20, 2012 8:43 am 
Regular
User avatar

Joined: Sat Dec 31, 2011 7:05 pm
Posts: 98
Location: DC
Projects: Kangaroo, Terminal Love
I've been working on a (mostly but not entirely) text-based game in C, building the interface and everything essentially from standard functions. Though I've been enjoying myself, I wouldn't recommend doing that because you likely won't be able to get it to be cross-platform without modifying the code significantly for different operating systems, so I guess that'd be a good example of what not to do.


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Tue Mar 20, 2012 10:07 am 
Eileen-Class Veteran
User avatar

Joined: Thu Oct 14, 2010 3:53 am
Posts: 1110
Location: NC, USA
Completed: Torrey & the Vampire, Faery Tale, Madaline's Missing Miscellany, Alchemical Ink, Yaoi Story, The Visitor, Erotic Story Generator, What Kind of Fiction Should YOU Write? (Quiz Game), Falling, The End of the Raven, The Deep Dark
Organization: Erotic Visions - VNs
midiguru wrote:
Sad to say, I can't draw. I've written and released several text games, but I'm not satisfied with the way these games are displayed visually. I'm hunting for a system that will allow me to write a complex text game, yet give me a great deal of control over the visual presentation.

Then Renpy would work for you. However you'd only be using a tiny fraction of what the system is capable of -- even at its most basic level. I can't draw either, (not enough to support an entire game, anyway,) so I use Photoshop and images gleaned from stock sites to make my pictures.

midiguru wrote:
Has anyone used Ren'Py to create text-heavy, non-illustrated games?

I don't know of any games done that way off hand, but YES it can. Renpy is fully capable of reproducing any of the text games found on Choice of Games," for example, only WITH graphics and sound effects.

I'm an author, I write books, so working with strictly text is actually far easier than working with pictures, music, and sound effects. That's why I originally went with Renpy, because I could use the full extent of my writing abilities PLUS add music.

midiguru wrote:
I understand that there would be no parser for text input from the user, so all user input would be by clicking/tapping.

There IS a way to have the player input text. I did a huge Mad-Libs game using this aspect.

midiguru wrote:
Does Ren'Py support hyperlinks within text blocks?

Yes.

midiguru wrote:
Can these be used to print new output to the main window?

If you use a hyperlink, it opens in a browser, not the game.

midiguru wrote:
If a text block is too long for the visible window, can it be scrolled?

Having a scroll bar is possible, but the coding is old. It isn't readily compatible with the new coding, but it DOES exist. A better way, would be to use what Renpy has built into its system; simply allow the page to fill with text and have it stop. When the player hits the spacebar, the text clears and it fills with more text.

midiguru wrote:
Can Ren'Py games (specific spots within the story) be saved and restored by the user?

YES. In fact it's built into the system and the number of saves possible is Unlimited.

midiguru wrote:
Is an undo function provided?

As in where the player can go back a page or two and make a different choice? YES. That's also built into the system simply by using the Page Up key.

midiguru wrote:
Sorry to ask such basic questions, but I figured it would be easier to ask the experts than to spend an hour poring over the documentation.

Not True. The tutorials on the Wiki page: http://www.renpy.org/wiki/renpy/doc/tutorials/Tutorials are actually very easy to follow.

FAQ: http://www.renpy.org/wiki/renpy/FAQ <-- Read this first.
Quickstart Manual: http://www.renpy.org/wiki/renpy/doc/tutorials/Quickstart
Novel Mode: http://www.renpy.org/wiki/renpy/doc/tutorials/NVL-Mode
How to make an Otome Game: http://www.otome-games.com/index.php/make-your-own-otome-games/13-how-to-make-a-simple-otome-game (This is actually the easiest tutorial to follow, and it covers ALL the basics from playing with text to making menus to setting up flags.)

The Renpy system is quite user friendly to beginners, especially those who prefer to work with text. It's when you start designing complicated graphic interfaces and puzzle games that it becomes complicated.

Even better, this is an extremely active forum. By using the search function in the Renpy Questions part of the forum, you can find coding for just about any function you could think of, from how to make a hidden object game, to how to change every single aspect of the strictly coded framed buttons into a fully graphic user interface.

Just about anything you can think of can be done with Renpy -- Except true Animation. Renpy will not do anything beyond moving something around the screen. Gif images are right out.

Just to keep the record clear, "I" am a beginner, and I've completed 4 games of my own. :)

The first was strictly text, pictures, and music.
The second was a large scale Mad-Libs game
The third was a full Choose Your own Adventure game.
The last and most recent, was a Hidden Object game.

If I can do this much without knowing a single thing about coding, imagine what you could do.

_________________
Ookami Kasumi ~ Purveyor of fine Smut.
Erotic Visions ~ Visual Novels

"No amount of great animation will save a bad story." -- John Lasseter of Pixar


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Tue Mar 20, 2012 11:42 am 
Miko-Class Veteran
User avatar

Joined: Mon Dec 13, 2010 9:30 am
Posts: 843
Location: New Brunswick, Canada
Projects: Camp Renard
OokamiKasumi wrote:
midiguru wrote:
Is an undo function provided?

As in where the player can go back a page or two and make a different choice? YES. That's also built into the system simply by using the Page Up key.


Being able to Undo is the default.

You can also set up blocks to prevent undo-ing after a certain point. In my NaNo game I am giong to let the player undo through the conversations, but now through combat.


MoPark wrote:
I've been working on a (mostly but not entirely) text-based game in C, building the interface and everything essentially from standard functions. Though I've been enjoying myself, I wouldn't recommend doing that because you likely won't be able to get it to be cross-platform without modifying the code significantly for different operating systems, so I guess that'd be a good example of what not to do.


That sounds awesome. It's a great way to flex your programming powers.

I like Frankensteining code together. I am currently working on a mini project to implement Eliza (http://www.manifestation.com/neurotoys/eliza.php3) in Ren'Py. :D
[EDIT] To clarify: the website I pointed to is just an example of Eliza. That isn't my project.
Susan

_________________
In order to understand recursion, one must first understand recursion. (Anonymous)


Last edited by SusanTheCat on Tue Mar 20, 2012 12:00 pm, edited 1 time in total.

Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Tue Mar 20, 2012 11:50 am 
Miko-Class Veteran

Joined: Tue Jun 22, 2010 12:54 am
Posts: 572
Location: Zion Island, Solario
Completed: Christmas
Projects: [R-R]Christmas, (Un-named VN), I'M NOT A KILLER
SusanTheCat wrote:
I like Frankensteining code together. I am currently working on a mini project to implement Eliza (http://www.manifestation.com/neurotoys/eliza.php3) in Ren'Py. :D

Susan


Really? :shock:

Good luck.
I had it's DOS version and I really used to enjoying *chatting* with it...

_________________
"You can't wait for inspiration. You have to go after it with a club." --Jack London
“One must be careful with words. Words turn probabilities into facts and by sheer force of definition translate tendencies into habits.” ― Fay Weldon
"A writer who waits for ideal conditions under which to work will die without putting a word on paper." -- E.B. WHITE
"I love writing but hate starting. The page is awfully white and it says, "You may have fooled some of the people some of the time but those days are over, giftless. I'm not your agent and I'm not your mommy. I'm a white piece of paper, you wanna dance with me?" And I really, really don't." -- Aaron Sorkin

My Completed Games: Christmas


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Tue Mar 20, 2012 4:36 pm 
Veteran
User avatar

Joined: Sun Oct 09, 2011 11:15 pm
Posts: 392
Projects: Dream's Dénouement
Organization: Team ANARKY
OokamiKasumi wrote:
midiguru wrote:
Can these be used to print new output to the main window?

If you use a hyperlink, it opens in a browser, not the game.

Actually I thought they only do in-game calls, so I checked the documentation - http://www.renpy.org/wiki/renpy/doc/ref ... #Text_Tags

Hyperlinks open in a browser, if they begin with "http". Otherwise, clicking a hyperlink will call a label with that name. This is useful for in-game definitions.

_________________
Image Free hosting or website for your VN


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Thu Mar 22, 2012 9:19 pm 
Veteran
User avatar

Joined: Mon Aug 29, 2011 5:31 pm
Posts: 402
Projects: That's the Way the Cookie Crumbles, Ibuki Magica
Organization: Twin Turtle Games
Incursion is a text adventure made with Ren'Py, so you could draw some inspiration here.

_________________
ImageImage Image

Petit Fours and Sushi: The best name for a Tumblog I could think of.
,%,..@@@,.Þ%,.@G,.@@,.% ...What? It makes sense to me.


Top
 Profile Send private message  
 
 Post subject: Re: Text Games
PostPosted: Sat Mar 24, 2012 2:02 am 
Regular
User avatar

Joined: Sat Dec 31, 2011 7:05 pm
Posts: 98
Location: DC
Projects: Kangaroo, Terminal Love
SusanTheCat wrote:
MoPark wrote:
I've been working on a (mostly but not entirely) text-based game in C, building the interface and everything essentially from standard functions. Though I've been enjoying myself, I wouldn't recommend doing that because you likely won't be able to get it to be cross-platform without modifying the code significantly for different operating systems, so I guess that'd be a good example of what not to do.


That sounds awesome. It's a great way to flex your programming powers.


I suppose that's one way to put it, hah. Really though, I needed something with a Unix terminal-like feel for the effect of the game, and while I could have used a more advanced system with some clever graphics manipulation to get the same feel, I decided to simply build up from nothing but a black box terminal. Glad I did, learned a lot more about coding by doing that. Randomly in the process I even figured out how to code malware which is lol.

Unfortunately it still has some serious problems I'm trying to work on, especially in terms of lag on low-level systems. Probably should have used the Allegro libraries for C/C++, which would have made it cross-platform, but oops... Next time though, for sure!


Top
 Profile Send private message  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 12 posts ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: Google [Bot]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Protected by Anti-Spam ACP
Powered by phpBB® Forum Software © phpBB Group