Module support on renpy 8

In this forum we discuss the future of Ren'Py, both bug fixes and longer-term development. Pre-releases are announced and discussed here.
Post Reply
Message
Author
User avatar
Andredron
Miko-Class Veteran
Posts: 700
Joined: Thu Dec 28, 2017 2:37 pm
Location: Russia
Contact:

Module support on renpy 8

#1 Post by Andredron »

In the future, when serious bugs are fixed in the new version of renpy. I would like this module to be installed.

Github
https://github.com/kivy/kivy
https://github.com/kivy

Doc
https://kivy.org/doc/stable/

The Kivy framework has been in development since 2011. Since the release, many projects have been built on its basis for the Andirod platform.

If we compare Kivy with other Python libraries in terms of the set of functions, then PyQT can be distinguished among the major competitors. All other libraries will obviously be inferior in functionality.

Buildozer: generic Python packager for Android and iOS.
Plyer: platform-independent Python wrapper for platform-dependent APIs.
Pyjnius: dynamic access to the Java/Android API from Python.
Pyobjus: dynamic access to the Objective-C/iOS API from Python.
Python for Android: toolchain for building and packaging Python applications for Android.
Kivy iOS: toolchain for building and packaging Kivy applications for iOS.
Audiostream: library for direct access to the microphone and speaker.
KivEnt: entity-based game engine for Kivy.
Garden: widgets and libraries created and maintained by users.
Oscpy: a fast and tested python2/3 implementation of OSC.

It's free

Multi-platform, by writing 1 code, it will work on different devices

Supports python from version 3.7 to 3.10
Last edited by Andredron on Tue May 24, 2022 11:47 am, edited 1 time in total.

User avatar
PyTom
Ren'Py Creator
Posts: 16088
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: Kivy module support on renpy 8

#2 Post by PyTom »

There is no chance this will happen.

Kivy is great if you'd like to build multitouch apps, but it's basically an alternative for what Ren'Py is doing, with its own event loop and way of doing things. It's not something that one could include as part of Ren'Py. (We do use several of the tools they've developed - both Pyjnius and Pyobjus are part of Ren'Py on the appropriate platform.)

They also use some of the technologies we've developed - Python for Android was, at least for a long time, based on RAPT. (I think it's diverged quite a bit since then.)
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
Andredron
Miko-Class Veteran
Posts: 700
Joined: Thu Dec 28, 2017 2:37 pm
Location: Russia
Contact:

Re: Kivy module support on renpy 8

#3 Post by Andredron »

Thank you for explaining)

User avatar
Andredron
Miko-Class Veteran
Posts: 700
Joined: Thu Dec 28, 2017 2:37 pm
Location: Russia
Contact:

Re: Module support on renpy 8

#4 Post by Andredron »

Just in case, I will offer modules of social networks.

Vk(Russian)
https://github.com/python273/vk_api

Wechat(China)
https://github.com/wechatpy/wechatpy

Facebook (Usa)
https://github.com/mobolic/facebook-sdk

Twitter(Universal News Feed)
https://github.com/bear/python-twitter/

Why are these modules needed?
The first thing that came to mind was a date stimulator (from Uncle Mugen, as an example), coins were introduced there, for passing, the user does not have enough coins, he can buy them, or he will receive these coins for a post on his Page. And no more than 2 times a day. On the one hand, a user who is not ready to spend money on a game anyway will be able to advertise the project at least a little.

At least completely different people will hear about the project and the developer himself.

And the rest is to read fully api modules. 1 has a lot of restrictions, others have more opportunities

User avatar
PyTom
Ren'Py Creator
Posts: 16088
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: Module support on renpy 8

#5 Post by PyTom »

In general, things like these don't make sense to include in a game. Without looking too close at any one of these, I'd expect them to require some sort of API key to access the social network site. If such a key is included, then anyone that key could impersonate you to spam.

What you generally want is to have your own website, that intermediates access between the game and the social networks. So your game would use the built-in requests module to talk to your webserver to verify the social post has been done, and then your website will take care of contacting the social networks to request the entire data that you need.

This also lets you update the supporting website in the (likely) even that one of the social networks changes its API, and not have to deploy that change to all the games in the field.
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
Andredron
Miko-Class Veteran
Posts: 700
Joined: Thu Dec 28, 2017 2:37 pm
Location: Russia
Contact:

Re: Module support on renpy 8

#6 Post by Andredron »

Not a cropped, but a full version of the pygame module.

https://www.pygame.org/docs/

I'll start from afar, talking to 1 person who is an experienced pythonist, he gave me the main reasons why he did not work with the 7.x series version, and he has high hopes for 8 renpy.
No matter how old he was, he was never picked up by renpy.
And without this module, the repai is worthless.

Yes, he does text novels, but nothing more.

-Why?

-Yes, take at least Rollback, renpy does not need it at all.
This is his problem. A large and well-known publisher from Japan does not have it and instead of it there is a history of messages. And because of this notorious rollback, everyone suffers. Because it is almost impossible to determine what should be preserved.

And so, this is the whole engine only for simple short stories with direct transitions.
If there is a complex calculation by keys, then it is pointless to make standard saves.
You need to write the save and load script yourself.
And therefore, you also need to write saves yourself. And make it possible to save at checkpoints.

And there is one more unpleasant problem in renpy.
No management of own layers.
You need to implement it yourself.

The fact is that in games there is a mode that removes the dialog box layer and leaves the picture.
That is, all other layers remain.
And there is no variable that would set the behavior of the created layer.

You need to create it yourself and then expand the list of hidden windows.

-You mean layers?

There is a zorder,

https://www.renpy.org/doc/html/displaying_images.html

there are a bunch of all sorts of layers with their own names

https://www.renpy.org/doc/html/displaying_images.html

- No, I meant something else.

There are predefined layers in renpy.
In all situations, their behavior is written in the corresponding functions.
But if I define my layer, apart from the fact that it is created, there is no way to control them, except that I have to override the standard functions.

if I need to hide a layer along with others in a certain mode, then I need to write it myself.
No to have a layer management feature

Which were just flags.
In such and such a mode, like this.
It's different in this mode.

and what you gave links is completely different

how to put the layers, in what order it is and it's not a problem.
The problem is their interaction with the standard in different modes.

-Rollback can be disabled, how can it interfere, then?

-that's it. no one thinks about the rollback.

The blog often asks questions related to these things.
and we are talking about the Pygame module, which you call an old woman.


But nevertheless, they promised to include it in renpy.

It's about events that are not in the renpai.
and it is impossible to write blocks in real time.
And drawing in renpai is impossible.

- like this? Here is viewtopic.php?t=51370

-What you gave is just an imitation. There is a huge grid and it simply displays sprites that create a large-pixel image.
And so, to take a layer and give a command: draw a circle or a line - no.


Judging by what they write, they are doing absolutely unnecessary things.

By type: nothing should happen for the user. Like, I couldn’t even notice the change of versions.

Maybe they will add something, but for the sake of making old projects work in the regular mode, they do not make really worthwhile changes.

I remember when they wrote that as soon as renpy switches from 2.7 to 3.x, then pygame will be installed by default. And having studied 8 renpy, I didn’t see anything worthwhile. Everything is still treading water in place.


User avatar
PyTom
Ren'Py Creator
Posts: 16088
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: Module support on renpy 8

#7 Post by PyTom »

I don't have plans to revert to pygame at this point. (I'm probably going to be renaming pygame_sdl2 to renpygame at some point, to make it clear it's primary user is Ren'Py.)

I'm not sure this thread has much purpose. I don't plan to make major changes to the set of modules included with Ren'Py. (Except, perhaps, for no-dependency standard library modules.)

We have a steady stream of high-quality visual novels being produced with Ren'Py.
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: No registered users