Visual Novels
Pages: 1 2
Nicholas Kingsley (8237) 8 posts |
I was wondering whether anyone has tried to convert Ren’Py to RISC OS I have various visual novels that I would like to convert (or have converted) to RISC OS and being written in Ren’Py, it would be easier to keep it like that. However, if it all needs recoding (probably in WIMP to reduce the need for word splitting), then so be it. |
Steve Pampling (1551) 8182 posts |
Interesting idea. I wonder if Rick has considered this, alongside the Manga reader. |
Andrew Rawnsley (492) 1445 posts |
One of the forums suggests that 2.7.x (which exists on RISC OS) is used by RenPy. The thread was dated mid-2018. So, it may have changed, but maybe not. Of greater concern is that it requires a lot of supporting libraries, and there’s a mix of C and python files forming “module”. Not quite sure how that fits together, but I know one of the issues with RISC OS python is in mixing shared libraries etc which I think is possible under Linux but not RISC OS. (?) Also, all “supported” OSs have a min sys requirement of OpenGL 2.0. I suppose we have Mesa, but we’re rather limited in that regard. There may be support for other renderers of course – an SDL 1.2 backend would be perfect ;) OK, so you’d probably want to port RenPy 6.18 or thereabouts. After that (6.99+), it moves to SDL2.0 and Pygame_SDL20. AFAIK SDL 2.0 mandates 3D support (OpenGL) so we don’t really have that. Earlier versions run on PyGame for SDL 1.2. Unfortunately that’s a 2014 edition, so I have no idea on compatibility etc. Probably wouldn’t be a bad thing to have a port of that, but equally, our way forward might well be to have a more capable browser with HTML 5 support and go that route for RenPy content (there’s a “save as HTML 5” option in the RenPy editor). |
Rick Murray (539) 13861 posts |
No. I’ve never actually read a visual novel. Looking at some pictures on the internet (all of which look like they fell out of any number of highschool based animé series!), it looks like some sort of pretty backdrop with a text frame containing blended text, and some sort of foreground sprite representing the character. Not that I’m suggesting writing anything (I know exactly zero python), I’m just wondering what sort of complexity a visual novel has. Here’s a random cute picture: Looking at this from the point of view of scene assembly – the classroom will be a backdrop image. There may be overlay sprites if, for example, the TV comes on or something. |
Nicholas Kingsley (8237) 8 posts |
Unfortunately the HTML export in Ren’Py is only for simple visual novels – it works for the demo ones, but very limited for anything more complex. It does sound like too much trouble converting Python and then Ren’Py, and would be easier to code it in C or BASIC. Usually it’s a static background with one or more characters (usually simple animation) and a semi-transparent bar over that. This is one of mine : https://steamcommunity.com/sharedfiles/filedetails/?id=1813102365 This one has no action bits in it (others do, but even so they are simply done), but there are branches, sound effects and of course music (none of which would pose much of a problem) |
Andrew Rawnsley (492) 1445 posts |
Rick – I’ve played a few, although rarely get too far in them because, well, the gameplay is somewhat limited for the length of time they take. Watching an anime conversion is often more pleasurable (eg. Stein’s Gate – cracking show). A basic VN is literally what you describe – static backgrounds with text boxes (which may/may not be transparent). There may be some fade effects. There will be controls to change text speed/auto-advance and possibly rewind/log facilities to recap previous text. The next step up adds character portraits on top of the backgrounds (see your example above). Better yet are the ones that animate the character portraits slightly (eg. to give the impression of breathing, or movements at key moments). However, I’d really only recommending playing ones which incorporate game elements. This might be as simple as “choose your own adventure” elements (ie. choices) or other actual game elements (eg. combat). Stein’s gate had a system where your in-game phone would pop up with messages etc, and you could choose how to reply to the characters. The phone was interactive in the sense that it had a few screens and you could look stuff up, change settings, unlock ringtones and other bits and bobs. The story changed subtly (or not so subtly) based on how you did things. Finally, some VNs are fully or partially voiced. The quality of this tends to vary wildly, and as with anime shows can end up on the wrong side of the screeching/squeeling-female(s) line [far too common in JRPGs too sadly]. My main “beef” with VNs is that there tends to be quite a lot of fanservice (at best) which can be off-putting, even in the good ones. But I suppose that has more to do with Japanese / Otaku culture than the medium itself. |
Rick Murray (539) 13861 posts |
But in the end Mayuri always dies. :-(
That’s the biggest issue I have with Highschool Of The Dead. Nice zombie action series absolutely stuffed with s**ding fanservice. It must be a very sad person that gets off on drawings of panties… So, apart from elements such as speech and music, it seems as if it is “follow some sort of narrative” (perhaps with choices) that arrive at a scene to draw and some text to overlay. |
Steve Pampling (1551) 8182 posts |
I know a guy who doesn’t mind squeaking, squealing or other high pitched vocal emissions from ladies. |
Andrew Rawnsley (492) 1445 posts |
Rick – not in the true end ;) We just watched Steins Gate 0 which explains the events leading to the true end (sort of). Highly recommended. Anyway back to VNs, “yes” to your description, although the average z-code IF game (not even mentioning Infocom) is invariably more interactive in terms of being able to navigate/explore the game. VN’s don’t tend to have very much interactivity, but do tend to change illustration every few paragraphs. Often the illustrations repeat (say, a classroom background), with different foreground characters overlaid. In all honesty, imagine some of the cheaper anime shows, where they can only budget for a few animation frames, so reuse a lot of scenes and just have voice acting/subs over fairly static displays. That’s a VN. Only the VN version will drag on for 20+ hours. |
Nicholas Kingsley (8237) 8 posts |
Some are very short, some are medium length and some are long. All depends on the story… |
Andrew Rawnsley (492) 1445 posts |
Yes, sorry Nicholas, I’m being rather (gah, can’t remember the adjective) – where you generalise and make wide-ranging comments more for effect than for accuracy. It’s more a case that there are several VNs that I’ve very much wanted to be able to enjoy and finish, and I never do. It leaves me feeling frustrated. My wife and I loved Steins Gate, and I know there’s much more detail in the VN than the anime, but I’ll never see it because I’m never able to find time/enthusiasm to progress. Sigh. Never enough time. I have nearly a dozen split across PS3, PS4 and vita. And more than half of them were good. Sigh. |
nemo (145) 2569 posts |
I do not want to know what he does for a living. |
Nicholas Kingsley (8237) 8 posts |
That’s okay ! I don’t buy many at the moment (mainly because I’ve got several VNs in development – and they have priority), although the ones I have played so far have been great. There was one I took an instant dislike to straight away, but that was due to spelling/grammar and font problems. Anyway, I was wondering whether anyone would be interested in converting any of mine to RISC OS ? Whilst I would have no problem coding the simpler ones myself, time (with one being coded, one being scripted and graphics for two others being done) is something I don’t have to spare. Even if it’s for a commercial release – I wouldn’t mind. |
Rick Murray (539) 13861 posts |
Well… That’s about 19¾ hours longer than my attention span. Does anybody have a pointer to a good free (oxymoron, I know!) VN that will run on something of XP generation (or DOSbox?), Android (if no weird permissions), or in a browser?
I would imagine the simplest method would be to create it as a script interpreter, so a generic back end can be recycled for each of them. Here’s a question – how are they written now? You said RenPy above – is that a sort of programming language for novels? |
Rick Murray (539) 13861 posts |
https://www.rnpy.org/dl/4.3/example.html It it actually written in Python? What’s with the indenting? [sorry – I don’t know anything about Python, never used it before] |
Nicholas Kingsley (8237) 8 posts |
Yes, Ren’Py is written in Python, which uses indentation to mark blocks, instead of using curly brackets, for example. Ren’Py is a scripting language for visual novels (it can also do a lot more, but VN’s are it’s main raison d’être) A small example :
I was thinking of doing it as a sort of CSV based interpreter. It would be easy enough to evaluate the strings in text and scene changing would be no real problem Movement would be a problem, but not insurmountable. Music and sound effects wouldn’t a problem either. It would just a matter of making sure that only the graphics and characters needed for a particular scene are needed to save memory space |
nemo (145) 2569 posts |
|
Steve Pampling (1551) 8182 posts |
I have only one question: Is it Python that’s causing the requirement for escaped quotes or the RenPy engine. Just seeking to identify the idiot1. It’s always best to narrow the field. 1 Been doing a lot of that today, long list and I only started swearing at 3pm2 after six hours of idiots. 2 Be honest, does 172.18.220.175 look like it s part of the 172.18.160.0/22 block? |
nemo (145) 2569 posts |
Without any knowledge of the precise specification, it does look like the ‘verbs’ need single parameters (and not a variable-length parameter list) and so the sentence must be atomic – a string, not a command tail. The use of double quotes as string delimiter shows a degree of lack of thought which we should all be getting used to by now, but which still rankles here at nemo towers. PostScript uses parentheses precisely because quotes are more common in text than parentheses, though it’s a pity they didn’t use {braces} for strings and (parentheses) for the executable form of [brackets] but it’s much too late now. Anyone? PostScript language nerds? Just me then. There is precedent in some languages for self-specifying string delimiting, ie you can start a string with one of a number of delimiters depending on what other characters you want in the string – ‘so you can “quote” quotes’. |
Rick Murray (539) 13861 posts |
Should make it easier to parse…
Not a big deal. We’d need to step through the string byte by byte in case of any UTF-8, so noting and acting upon the ‘\’ character isn’t an issue worth getting upset over. |
Rick Murray (539) 13861 posts |
There’s a video of Chi2 on YouTube. Bloody impressive title sequence, better than quite a few anime openings. Sad news – you won’t be able to do that under RISC OS. With rendering being done by software and no GPU assist, the average Pi sort of manages about 360p. What might have worked is if Acorn Replay was continued. It permitted that sort of resolution on a 25MHz ARM3, so I’d imagine today’s tech would be able to pump out HD easily enough. Maybe better… Unfortunately Replay is stuck in the 26 bit era. |
Andrew Rawnsley (492) 1445 posts |
Can you link that video so we can see what you’re referring to please Rick? I tried googling it, but for once (!) google was not my friend :( |
Steve Pampling (1551) 8182 posts |
I presume Replay is one of those items that sits in the “if only we could find all the rights holders” pile. |
Andrew Rawnsley (492) 1445 posts |
IIRC it was somewhat absent in the RISC OS Ltd deal back in ’99. My gut is that Sophie wanted to take it with her to E14/Broadcom, but it is possible that Pace tried to grab it for the IPTV stuff. It is also possible that Eidos bought it because some of their video tech used it back in the day, and it may have been worth more to them as “owned” IP. As you say, it would really need some digging around and chasing people. If you actually look at the quality of most replay movies, it was pretty poor. I’m not saying it couldn’t be improved upon with higher bandwidth etc, but I don’t think it is about to make a resurgence! Possibly better to look at Andre’s work on MPEG2 in KinoAmp? Alternatively, are codecs like MJPEG lighter? |
Nicholas Kingsley (8237) 8 posts |
Oh yes – the title and end credits would no doubt have to be somewhat more static, but they are a very small part of the whole thing. I suspect Rick means this : https://youtu.be/OHA9ooftVHs It was the second visual novel I wrote (the first being a test and was originally going to be the defacto first episode – which I later updated and upgraded). Got a list of all the intro sequences for my VN’s if you want them :) |
Pages: 1 2