yet another phone for renpy
# How this scene is implemented: nvl_narrator "Nighten added Eileen to the group" n_nvl e2m2 "Hey! Welcome to the demo Eileen!" e_nvl "who's this?" n_nvl e2m1 "haha, silly you" n_nvl e1m2 "We talked about showing off the phone the other day, remember?" e_nvl "it's today? {image=emoji/fear.png}"
A simple messaging system, built on top of the NVL mode and therefore more intuitive to use :)
Instructions:
- Add the images and PhoneTexting.rpy to your project folder
- In this file, change the name of the main character to yours (MC_Name)
- Edit the nvl screen in screen.rpy as follow:
screen nvl(dialogue, items=None): #### ADD THIS TO MAKE THE PHONE WORK!! :) ### if nvl_mode == "phone": use PhoneDialogue(dialogue, items) else: #### ## Indent the rest of the screen window: style "nvl_window" # ...
- Change gui.nvl_list_length in gui.rpy to None, so that all the message are shown
- You'll then have to make a nvl character speak!
- To use the regular nvl screen again, change the nvl_mode variable to something else, like "classic"
- To include emojis and pictures, you can simply add use an image tag; make sure they are the right size for the phone screen.
Video tutorial by Matthew Vimislik, aka Vimi
Credits:
The background is made by Uncle Mugen. All the other art assets are done by me, Nighten, and free to use in your project if you want (the sources file are available).
And if you need more help for your project, you can hire me as a programmer! :) ✨
Have a nice day!
Status | Released |
Category | Assets |
Rating | Rated 4.9 out of 5 stars (58 total ratings) |
Author | Nighten |
Made with | Ren'Py |
Tags | asset, Ren'Py, sourcecode |
Code license | MIT License |
Asset license | Creative Commons Zero v1.0 Universal |
Average session | Days or more |
Download
Download NowName your own price
Click download now to get access to the following files:
yetanotherphone-1.0-mac.zip 39 MB
yetanotherphone-1.0-pc.zip 74 MB
Comments
Log in with itch.io to leave a comment.
I'm having trouble with the text icons as it only shows the received icon is there a way i can prevent this??
Hey there! This took me a little bit to learn how to fully work and adjust, but this phone system has been working great for my next title. I'll be sure to give credit when I release it. Thank you~
Hello! When trying to use the phone thing it keeps sending same errors no matter what :(
```
I'm sorry, but an uncaught exception occurred.
While running game code:
File "game/script.rpy", line 63, in script
nvl_narrator "Nighten added Eileen to the group"
File "renpy/common/00nvl_mode.rpy", line 354, in do_add
if store._nvl_language != _preferences.language:
AttributeError: 'StoreModule' object has no attribute '_nvl_language'
-- Full Traceback ------------------------------------------------------------
Full traceback:
File "game/script.rpy", line 63, in script
nvl_narrator "Nighten added Eileen to the group"
File "C:\Users\*****\Desktop\******\renpy-8.1.3-sdk\renpy\ast.py", line 2560, in execute
Say.execute(self)
File "C:\Users\*****\Desktop\****\renpy-8.1.3-sdk\renpy\ast.py", line 615, in execute
renpy.exports.say(who, what, *args, **kwargs)
File "C:\Users\*****\Desktop\*****\renpy-8.1.3-sdk\renpy\exports.py", line 1494, in say
who(what, *args, **kwargs)
File "C:\Users\****\Desktop\****\renpy-8.1.3-sdk\renpy\character.py", line 1387, in __call__
self.do_add(who, what)
File "renpy/common/00nvl_mode.rpy", line 354, in do_add
if store._nvl_language != _preferences.language:
AttributeError: 'StoreModule' object has no attribute '_nvl_language'
okay nevermind i fixed it :)
whats the recommended size for an image tag? in 1920 1080 resolution?
Wondering if i it's possible to add a date and time function to it.
sorry for disturbing but i have a problem with android port of game with this plugin.
when i ported my game on my phone and going to the moment of chatting, i see that the mc_name part just has only bubbles, without any text. but another person's bubbles working great, everything is visible. i don't know how to solve these problem, please help.
* on photo is native ren'py emulator, but its the same as real phone
What numbers do I need to change to make it work at 1280 by 720?
Later versions of Renpy 8 now support emoji use natively🎉👏 The image tag method is still nice for anyone wanting a customized emoji experience however.
https://www.renpy.org/doc/html/changelog.html#emoji-related-text-improvement
Thank you so much Nighten for this system! If somebody has the last text do a weird animation before hiding the phone you need to put None in "config.nvl_adv_transition" on your main script.
I have one question, when I finish using the phone, I see that there isn't a disappearing animation, I tried making one but I don't know where to put it so it can be played. If somebody knows were to put it, or has a different solution it would help me a lot. Thank you :)
Hi! I know this is 4 months too late but first of all, thank you for the "config.nvl_adv_transition" tip, it saved me from a lot of frustration.
You probably found it, but towards the top of the PhoneTexting.rpy file there are these two transforms:
You can add the hide animation to the top one.
I did a quick test and it seems to be working, I don't know if it would cause any problems but it would at least give a starting point.
Hiiii, thank you so much for your help!!!
I have tried it, and it seems that the hiddinganimation works, but it also plays every time a new message appears.
I will be trying to find a way to only play it when there is no more messages to send.
I'll keep you updated if I find the solution ;D
Hi TruitaDPatata, thank you so much for the nvl_adv_transition tip. Please let me know when you find out the solution to the hiding animation when closing phone too. Thank you!
Greetings!
I don't suppose anyone would know how to make each text box wrap around the text as opposed to being a set width? I've tried a few things from changing xfill/yfill to false or removing any xmaximum values but nothing seems to work. 💦
I have a issue where if I try and use [povname] as the MC_Name the phone only sends receive messages and not send messages, anyone know a way to fix this?
Mc won't show as send(yellow) in game
Whoever the sender is, it should be the MC_Name variable. For instance, if you want 'Zellous' to be the sender, then the MC_Name would have to be 'Zellous'.
It's in PhoneTexting.rpy Line 4
Thank you so much for providing this! I used it for my NaNoRenO demo entry and I loved being able to add texting to my story. I don't think I would've been able to figure it out without this system. Thanks again :)
Bonjour, merci pour ce super téléchargement :).
Je souhaite mettre le téléphone plusieurs fois dans mes chapitres, les messages reçus seront de personnes differentes.
Est ce que c'est possible? si oui comment dois-je procéder s'il vous plait?
S'utilise que pour une personne?
Merci :)
Bon courage.
This is my first time coding the text massage to try it. I did watch the massage code no matter hard I really try with it but it just gotten failed and now i feeling pretty abit stress out. And I don't know what else can possibly do?
This is great! Way better than what I cooked up on my own. I replaced my system with this fairly easily.
I've been able to modify just enough that I can have multiple characters texting from different phones.
Eg. most texts are from husband's phone to other people however there are scenes where the wife is texting someone else. I was able to set it up with a little tinkering.
Inline photos also work great!
(Sorry if you got a ghost notification, I accidentally commented on the other phone template you have!! Also I've apparently commented before, so apologies for asking for your help once again LOL)
I was wondering, I really want to have text conversations with multiple characters, which I *can* do with the names, but for the sender (whoever's chatting on the left), their icons ALL change to whoever the most recent character chatting is. Is there a way to have multiple people in a chat while maintaining everyone's icons as separate from each other?
Hey, I was wondering if you can do ____ is Typing thing that disappears after a text has been sent?
I will try to port it to Godot using my Rakugo project: https://rakugoteam.github.io
i like it very much, but it would be great if you could send images in it
Hi! Thank you so much for the code! Is there a way to keep the phone screen up while still showing the textbox? Currently the phone disappears when I have the main character thinking to herself in the game textbox, and would like the phone screen to stay up while she thinks to herself. Thanks in advance!
Hello, I have been using this phone UI for my game for a little while now, but I was wondering if I could change something when the phone disappears. I was curious if either 1) The phone could reverse its appearance animation when the conversation is done (a downward easing animation), or 2) when the phone fades out, the last element of the text (the final message) still plays the message appear animation. Is it possible to have the message stay still when the phone disappears?
Thank you for your time, and I really appreciate this pack! Just that one little edit to the exit animation would make it perfect for me.
Hello, can someone tell me how I can have a zoom of the photo sent to the smartphone please? Thx
I just realized that I had rated the wrong messenger code, no matter now you get another 5 :)
Regards
Tom
How do I remove text history? My VN has multiple perspectives, so it wouldn't really make sense for them to have the same text history as each other.
nvl clear
Hello, I was wondering if it's possible to add videos besides pictures.
I tried with a gif but it shows a static picture, do you know if there's a way? :)
we figured out a way, but it is not inside the nvl dialog itself - you'll need to make some screens in your favorite graphics tool. This example produces a "full screen" video effect on the phone, then returns the player to the phone chat.
Basically, we use 2 screens:
A ('phone_frame') is an image of the MC's hand holding the phone over a background, with the phone screen transparent
B ('phone_bg') is an identical image of the MC's hand holding the phone, but the phone is opaque and blank, and the background is transparent
A displays on top, then the nvl screen from nighten's code, then B displays behind both.
The video we want to show is a ren'py Image called vid_01 that uses Movie(play="file") in its declaration.
So the text chat happens in the nvl screen, then when we want the player to receive the video, we do:
nvl_narrator "Video Stream Starting..."
show vid_01 behind phone_frame
$ renpy.pause() # in our case, player watches video loop "on" the phone until click
hide vid_01
nvl_narrator "Video Stream Ended"
# text chat carries on
Hi! I'm having a bit of an issue with the Phone on Android builds, the protagonist's messages don't show up on the screen (only the background block color shows up). It works perfectly on the other builds (PC, Linux, and Mac). Could you help me with that? Let me know if you need more details or screenshots to better understand the issue. Thank you!
Here is a little "hack" that worked for me:
Find these lines in PhoneTexting.rpy:
Replace the xpos -580 with this:
Now the whole code should look like this:
Hi, I was wondering how to keep the phone animation when it pops on screen. The first time it shows the animation of it sliding in but the second and third time it skips the animation all together! Thank you so much!
Hi! The animation is tied to the length of the conversation; basically I made it so it slides in only when there is one message, so either when the game start or after a "novel clear".
In a previous version it was tied to a variable that you would turn on and off to play the slide animation once (or else it would play for every message). It was just way too many repetition since you would need to change the variable a lot throughout the game; but ping me again later and I will give you the instruction to edit the code, so that you can play the animation when you want to (I can't at the moment, but I would be happy to help later)
Hey! If you have the time today, could you should me how to do it? I was also wondering if there was a way to clear the phone messages so when the phone pops up next it doesn't show the old texts? Thanks for getting back to me!
nvl clear # removes old texts
omg thank u
Hi, I was wondering if anyone else has issues with using speech bubbles in Ren'py 8.1.1 with the phone and if anyone has found a workaround. Here is the exception:
raise Exception("A speech bubble is being used, but bubble.properties has not been set."
Hello! This code has been published long before Ren'py added the speech bubble feature.
You can refer to the documentation here to add support to this project:
https://www.renpy.org/doc/html/bubble.html#adding-bubble-support-to-a-game
Used it for https://azurecoffin.itch.io/magicalgirldndzoom! Thank you so much! We couldn't have completed our game without your help!!
In my game phone appears twice. First time for just a moment fixed on the spot, immediately after appears for the 2nd time from the bottom.
Is there a way to make the text from the MC align to the left instead?
Hi, while I can't give you the answer, I can give hope :) I have done exactly what you asked long ago while messing with the texting. Control f search "align" and it should be located wherever the Players chat box is ran
Late. But hard-coding the mc_name worked for me.
Phone is not showed in my game. Am I doing something wrong?
You have to add the "PhoneTexting.rpy" to your "game" folder. Then you have to replace the nvl screen in the screens.rpy with the nvl section from the asset pack. look for the comment
#### ADD THIS TO MAKE THE PHONE WORK!! :) ###
and then add the phone image files from the asset pack as well.
Thank you!
if anyone knows how to change the font and icon sizes please let me know.
Hello, thank you for the awesome work! It really helps me but i have a question.
is it possible to change the text size of the dialogue on the phone?
if you go to the PhoneTexting.rpy file there is a screen called nvl_phonetext. look for vbox about 42 lines down. now find text d.who and simply add the size attribute, like this:
this changes the characters name size displayed on the phone, if you liked the size before, simply don't add the code above.
for the text sizes in the messages it's basically the same except it's text d.what. you can find this a little further down. it already has attributes assigned, so just add the size underneath those.
the sizes i put in there are just suggestions, you can put in whatever you like best.
hope this helped!
Hey! Awesome work! :)
May I ask how did you manage to create a "chat log"? I mean, how did you manage to make the messages stay on screen and scroll?
Thank you in advance!
Hello, anyone know why i don't see my MC name ?
You would see your Mc's name in the script file, not in the phone file.
define the mc for the nvl mode
example:
define mc_nvl = Character("Mc_name", kind=nvl, image="me", callback=Phone_ReceiveSound)
something like that...