Giter VIP home page Giter VIP logo

renpy-vita's Introduction

renpy-vita

A Native Ren'Py Visual Novel Port for the PSVita

Based on renpy-switch by uyjulian (great work)

Yeah. It's finally here

About a year into the making (totally not because I can get a bit lazy), Ren'Py Vita is finally out.

A ton of frustration, troubleshooting, and long nights went into getting this to work. From cuevavirus making the base of the Python 2.7 port, to GrapheneCt making PVR_PSP2, to isage working on SDL additions. And we can finally release this gigantic project to you guys. Hope you like it, literally all I wanted to do was play the REAL DDLC on the Vita.
-SonicMastr

Want to make/port your own game? Use the Distribution Tool

I made a Ren'Py PSVita Distribution Tool to ease the process of creating a Ren'Py bubble with the required structure and assets.
It was designed to be used in tandem with the official Ren'Py SDK, so it's great for personal projects as well as ports
Give it a go in the Releases.

Known Issues

  • Load times can be pretty long and some image loading my cause hitches. This is sadly not something I can fix as it is a Vita hardware limitation.
  • Video playback will not work
  • Quitting will crash (But I kinda left that in. Doesn't do anything bad. I promise)
  • Some games will run into memory issues. I will continue to tweak memory usage as necessary, but the Vita is pretty sparse in memory, so I may not be able to pull a rabbit out of my hat when it comes to full compatibility.

Build Instructions

Pre-Req:

Linux (or WSL1/2)
Cython
Python 2.7.18
Git
Clone this repo
Grab PSVita_Release.zip and vitasdk_stubs.zip from PVR_PSP2 releases
Clone SDL
Clone Python Future

Steps:

  1. Copy the contents of vitasdk_stubs.zip into your VitaSDK lib directory
  2. Copy all of the files in include into your VitaSDK include directory
  3. Copy files WITHOUT underscores in python-future/src to the Python2.7 folder in your VitaSDK lib directory.
    (This will be removed in the future. Heh)
  4. Navigate to the SDL directory and run
    cmake -S. -Bbuild -DVIDEO_VITA_PVR=ON -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=Release
  5. Once complete, navigate to the newly create build folder and run make -j4 install
  6. Navigate to the renpy-vita folder and run git submodule init and then git submodule update
  7. Navigate to the renpy-vita/renpy/module folder and run RENPY_DEPS_INSTALL=$VITASDK/arm-vita-eabi RENPY_STATIC=1 python2 setup.py
  8. Navigate to renpy-vita/pygame-sdl2 and run PYGAME_SDL2_STATIC=1 python setup.py
  9. Navigate to renpy-vita/renpy-vita and run ./link_compile_pylibs.bash and then ./link_sources.bash (may need to chmod)
  10. Now run cmake -Bbuild -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=Release
  11. Navigate to the build directory and run make -j4
  12. And now you're all done

Ren'Py Vita Ports

Doki Doki Literature Club Vita
Contract Demon Vita

Thanks

uyjulian for the inspiration and base. This project wouldn't have been conceived without him
cuevavirus for the base port of Python 2.7 so I could actually work on fixing up the rest
strikersh for fixing Python threads
GrapheneCt for PVR_PSP2 and allowing me to also contribute to that to fix some specific bugs in Ren'Py :P
isage for his SDL contributions and lending me an early version with PVR_PSP2 support for me to dev on
Princess-of-Sleeping for devkit assistance and making me realize I was in Software Render mode
Ibrahim778 for getting on my ass about finishing this over and over and over again
The VitaSDK maintainers for adding requesting changes essential for Ren'Py to work

renpy-vita's People

Contributors

sonicmastr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

renpy-vita's Issues

VPK installation fails (Code 0x8010113D)

I have compiled my game with the Distribution Tool. When I try to install it on my Vita through VitaShell, the installation goes through until 99%, where it gets stuck for a bit, then fails with the error code in the title.
Details:

  • --I'm running the program through Wine in Ubuntu, Linux. I'm not sure if this causes any interference.-- UPDATE: Tried it on a Windows PC with another project, the problem persisted.
  • The game contains images directed for an Android distribution. (Splash, icon...)
  • I haven't modified anything of the game, I made it for Windows and Android. Though I don't believe that has anything to do with this problem, it happens during installation.
  • For the LiveArea images, I just put gray (corresponding) PNGs made in an image editor. Without any special modification.
  • I have tested with both compiled (.rpa files) and uncompiled (just the raw project and files) builds/games.

Vita Keyboard Input Bug

For creating the project I used: Ren'Py 7.3.5.606
Vita exporter shows 7.4.9 Ou

I was trying to use the user input keyboard within the vita:

    $ pName = renpy.input("Write your name and press enter to start the game.", length=10) or "Bunkai"

In contrast to the pc version, it first saves the input (or the lack of it). After that, it glitches out and prompts the keyboard again (this second time the input is not used). As a result, the dialogue for the input prompt and the dialogue right after your first input will be hidden by the keyboard screen.

Previous and following code after this snippet work as expected.

Virus in the Distribution program?

I don't exactly remember when this occurred, but I'd say when it was first released.

Basically, I downloaded the Distribution program from this repo and the antivirus that came with my laptop detected a virus, most specifically Trojan/Generic.ASBOL.C6AB.

Here's the file examined by VirusTotal: https://www.virustotal.com/gui/file/0b60f50cb628c11c111554ea425cb390e96ddd9802f000cd0940d2d6e4a6f99b/detection

Not sure if I can trust it since I'm not too familiar with Trojans, therefore, I don't know what a Trojan will do to my laptop.
I wanted to post this issue and see if others had this problem too.

An answer would be most appreciated.

Cheers!
-hatoving

Endless load & forced quit

Tried to port Everlasting Summer (RenPy v 7.0.0.196).When running only splash image is visible, no sound, and memory card led is not flashing at all.After minure or two game just closes.What have gone wrong?Maybe I should try android game sources?

Error 0x80101104 when trying to install the generated VPK

I followd all the instructions, used a valid game folder, the correct assets and template.xml. but every time it give me this error ons installing. I tried rebuilding a extracted vpk that i know it works but same thing ocour. I am realy dumb and i missing something trivial or is this a tool error?

Crashes when booting installed vpk

We're trying to port the game MetaWare High-School (Demo) (here's a link if you wanna check the code out) via the distribution tool, once installed, however, we found that when booting it'd crash right after the developer's logo would show up. (For context, when you boot up the game the developer logo shows up, fades out, then 5 character icons move slowly through the screen before going into the actual main menu shortly after they stop moving. If this makes no sense I can record it off of my pc and upload it here later)

The log file mentions an Out of memory error which will probably not be a surprise since you do say some games will run into memory issues. You also mention tweaking them as necessary though so we were wondering if you could do that?

I'd like to think I'm somewhat decent at Python and Ren'py, but actual vita development is something I can't understand at ALL, so sorry if I didn't provide enough info. Here's the log file that mentions the out of memory thingie.

log.txt

The game crashes on startup

The game crashes on startup

log:

Sun Nov 28 17:37:09 2021
vita-32bit
Ren'Py 7.4.9.0u
 

Bootstrap to the start of init.init took 1.83s
Early init took 0.06s
Loader init took 6.36s
Loading error handling took 2.26s
Loading script took 163.37s

Full traceback:
  File "./renpy/bootstrap.py", line 331, in bootstrap
  File "./renpy/main.py", line 500, in main
  File "ux0:app/RNPYNESHS/renpy.py", line 106, in path_to_saves
    return "ux0:/Ren'Py Data/" + save_directory
TypeError: cannot concatenate 'str' and 'NoneType' objects

After loading the script.
TypeError: cannot concatenate 'str' and 'NoneType' objects

File is empty: traceback.txt

can't make normal vpk

Hi. I try to make VPK with your tool. But VPK file what i got is broken. When i install it, i get error (0x8010113D) on 99%...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.