Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

RenPy Switch: Difference between revisions

From GameBrew
m (HydeWing moved page Ren Py Switch to RenPy Switch without leaving a redirect)
No edit summary
Line 1: Line 1:
{{Infobox Switch Homebrews
{{Infobox Switch Homebrews
|title=Ren'Py
|title=Ren'Py for Nintendo Switch
|image=renpyswitch.png
|image=renpyswitchnx.png
|description=Ren'Py port to Nintendo Switch.
|description=Open source port of Ren'Py to the Nintendo Switch.
|author=uyjulian
|author=uyjulian
|lastupdated=2020/12/20
|lastupdated=2020/12/20
Line 8: Line 8:
|version=1.7.5
|version=1.7.5
|license=MIT
|license=MIT
|download=https://dlhb.gamebrew.org/switchhomebrews/renpyswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/renpyswitchnx.7z
|website=https://gbatemp.net/threads/renpy-port-to-nintendo-switch.539953/
|website=https://gbatemp.net/threads/renpy-port-to-nintendo-switch.539953/
|source=https://github.com/uyjulian/renpy-switch
|source=https://github.com/uyjulian/renpy-switch
|donation=
|donation=
}}
}}
{{#seo:
{{obsolete}}
|title=Switch Homebrew Games (Game engine) - GameBrew
This is a port of Ren'Py, a visual novel game engine, to the Nintendo Switch for homebrew purposes. If you are looking for a commercial port for publishing to the Nintendo eShop, contact [https://www.ratalaikagames.com/services/renpy.php Ratalaika Games].
|title_mode=append
|image=renpyswitch.png
|image_alt=Ren'Py
}}
{{cleanup|article|Needs cleanup}}
Ren'Py port to Nintendo Switch.


==Media==
'''Note:''' Project archived, please use [https://switchroot.org/ Switchroot Android] with the [https://renpy.org/ official port of Ren'Py].
<youtube></youtube>


==User guide==
For users wanting to take a sample of the functionality of Ren'Py, place "renpy-switch-the-question-vXXX.nro" in the "switch" folder of your SD card.


==Screenshots==
For game authors wanting to port to the Nintendo Switch, use the "renpy-switch-sdk-vXXX.7z" package. Read "README.html" for instructions on how to port your project.
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-01.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-02.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-03.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-04.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-05.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-06.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-07.png
https://dlhb.gamebrew.org/switchhomebrews/renpyswitch-08.png


==Changelog==
==Changelog==
'''v.1.0'''
'''v1.7.5 2020/12/20'''
* First Release.
*Add required <code>pygame_sdl2</code> modules.
*<code>renpy-switch-the-question-v1.7.5.nro</code> is a sample visual novel entitled "The Question" that can be run on your Nintendo Switch.
*<code>renpy-switch-sdk-v1.7.5.7z</code> contains the files needed to build your own game, documentation named <code>README.html</code>, and an <code>.elf</code> file containing debugging symbols in the event an error occurs to assist in debugging.
'''v1.7.4 2020/12/20'''
*Revert usage of <code>virtmemFindAslr</code> and <code>svcMapPhysicalMemory</code>.
'''v1.7.3 2020/12/20'''
*Update to libnx 4.0.0.
*Sync renpysound module and related files to upstream.
*Use <code>virtmemFindAslr</code> and <code>svcMapPhysicalMemory</code> for memory allocation to reduce heap fragmentation.
*Re-enable applet mode (however, no guarantee that it will work properly).
*Use fixed buffer for error reporting instead of allocating memory on the heap.
*Revert unbuffered file operation changes.
'''v1.7.2 2020/07/30'''
*Use unbuffered file reading.
*More allocation related checks in media subsystem.
'''v1.7.1 2020/05/26'''
*Now actually using CPython 2.7.18 with the additional modules.
*Update to libnx 3.2.0.
*Correct aspect ratio when aspect ratio of project is not 16:9.
*Partially automated packaging.
*Added instructions on how to create nro using the files from the SDK archive.
*Corrected 3rd party library build instructions.
'''v1.7 2020/05/03'''
*Out of memory workaround removed (making it more likely that you can rollback, save, and restart the game).
*Overclock removed.
*Better error messages with error applet.
*Mostly complete <code>libnx</code> bindings.
*<code>_socket</code>, <code>_hotshot</code>, and <code>imageop</code> modules added.
*<code>pymalloc</code> now allocates memory aligned to page boundary.
*Show a helpful error message and quit when launched as applet.
*Update to libnx 3.1.0.
*Update to CPython 2.7.18.
*Python libraries are now imported from zip file using <code>zipimport</code>.
*Integrated extra libraries into main distribution.
*Update to switch-sdl2 2.0.12.
'''v1.6.1 2019/10/11'''
*Remove extra "renpy" directory in SDK.
'''v1.6 2019/10/09'''
*Simplified build system.
*Fixed controller support.
*Trimmed down executable size by using a special build of ffmpeg.
*Partial libnx bindings.
*Automatically change clock based on if expensive operations are being done.
*Join audio playback threads after they are finished.
*Updated to Ren'Py 7.3.4; includes rendering bugfixes.
'''v1.5 2019/10/02'''
*Simplified build system.
*Touch screen support.
*Updated to Ren'Py 7.3.3; includes changes to reduce chance of running out of thread resources.
'''v1.4 2019/09/22'''
*Enable optimization mode; now uses <code>.pyo</code> files instead of <code>.pyc</code> files.
*Reverted changes to threading; now using pthread again.
*Use <code>pthread_exit</code> when exiting thread instead of doing nothing.
*Add gl2 subsystem modules; not fully working yet.
*Add patches for video playback.
*Disable Mesa debugging.
*Clear some memory when loading image assets has failed; may reduce the chance of data aborts.
*Compiled with libnx v2.5.0, fixing controller input on firmware 9.0.0.
'''v1.3 2019/09/03'''
*Removed displaying errors by console; now requires nxlink to view errors.
*Added more built-in modules.
*Rebased Ren'Py changes on top of 7.3.2.
*Disable writing bytecode when using RomFS.
*Update building documentation.
'''v1.2 2019/06/05'''
*Fixed threading support.
*Fixed exiting.
*Improved building documentation.
*Optimized Python.
'''v1.1 2019/06/05'''
*Issues relating to path handling is fixed.
*RomFS support is added to allow building a game into a single NRO file.
*Patch set against Ren'Py has been reduced.
*Save data path is fixed to <code>sdmc:/Ren'Py Data/</code>.
*Logs path is fixed to <code>sdmc:/Ren'Py Logs/</code>.
*Python modules not needed for operation of Ren'Py are removed from the distribution.
'''v1.0 2019/06/03'''
*Initial release.


== External links ==
== External links ==
* Gbatemp - https://gbatemp.net/threads/renpy-port-to-nintendo-switch.539953/
* GitHub - https://github.com/uyjulian/renpy-switch
* Github - https://github.com/uyjulian/renpy-switch
* GBAtemp - https://gbatemp.net/threads/renpy-port-to-nintendo-switch.539953/
* Reddit -
* Lemma Soft Forums - https://lemmasoft.renai.us/forums/viewtopic.php?p=512484
* Lemma Soft Forums - https://lemmasoft.renai.us/forums/viewtopic.php?f=32&t=55503

Revision as of 10:17, 30 April 2023

Ren'Py for Nintendo Switch
Renpyswitchnx.png
General
Authoruyjulian
TypeGame engine
Version1.7.5
LicenseMIT License
Last Updated2020/12/20
Links
Download
Website
Source

This is a port of Ren'Py, a visual novel game engine, to the Nintendo Switch for homebrew purposes. If you are looking for a commercial port for publishing to the Nintendo eShop, contact Ratalaika Games.

Note: Project archived, please use Switchroot Android with the official port of Ren'Py.

User guide

For users wanting to take a sample of the functionality of Ren'Py, place "renpy-switch-the-question-vXXX.nro" in the "switch" folder of your SD card.

For game authors wanting to port to the Nintendo Switch, use the "renpy-switch-sdk-vXXX.7z" package. Read "README.html" for instructions on how to port your project.

Changelog

v1.7.5 2020/12/20

  • Add required pygame_sdl2 modules.
  • renpy-switch-the-question-v1.7.5.nro is a sample visual novel entitled "The Question" that can be run on your Nintendo Switch.
  • renpy-switch-sdk-v1.7.5.7z contains the files needed to build your own game, documentation named README.html, and an .elf file containing debugging symbols in the event an error occurs to assist in debugging.

v1.7.4 2020/12/20

  • Revert usage of virtmemFindAslr and svcMapPhysicalMemory.

v1.7.3 2020/12/20

  • Update to libnx 4.0.0.
  • Sync renpysound module and related files to upstream.
  • Use virtmemFindAslr and svcMapPhysicalMemory for memory allocation to reduce heap fragmentation.
  • Re-enable applet mode (however, no guarantee that it will work properly).
  • Use fixed buffer for error reporting instead of allocating memory on the heap.
  • Revert unbuffered file operation changes.

v1.7.2 2020/07/30

  • Use unbuffered file reading.
  • More allocation related checks in media subsystem.

v1.7.1 2020/05/26

  • Now actually using CPython 2.7.18 with the additional modules.
  • Update to libnx 3.2.0.
  • Correct aspect ratio when aspect ratio of project is not 16:9.
  • Partially automated packaging.
  • Added instructions on how to create nro using the files from the SDK archive.
  • Corrected 3rd party library build instructions.

v1.7 2020/05/03

  • Out of memory workaround removed (making it more likely that you can rollback, save, and restart the game).
  • Overclock removed.
  • Better error messages with error applet.
  • Mostly complete libnx bindings.
  • _socket, _hotshot, and imageop modules added.
  • pymalloc now allocates memory aligned to page boundary.
  • Show a helpful error message and quit when launched as applet.
  • Update to libnx 3.1.0.
  • Update to CPython 2.7.18.
  • Python libraries are now imported from zip file using zipimport.
  • Integrated extra libraries into main distribution.
  • Update to switch-sdl2 2.0.12.

v1.6.1 2019/10/11

  • Remove extra "renpy" directory in SDK.

v1.6 2019/10/09

  • Simplified build system.
  • Fixed controller support.
  • Trimmed down executable size by using a special build of ffmpeg.
  • Partial libnx bindings.
  • Automatically change clock based on if expensive operations are being done.
  • Join audio playback threads after they are finished.
  • Updated to Ren'Py 7.3.4; includes rendering bugfixes.

v1.5 2019/10/02

  • Simplified build system.
  • Touch screen support.
  • Updated to Ren'Py 7.3.3; includes changes to reduce chance of running out of thread resources.

v1.4 2019/09/22

  • Enable optimization mode; now uses .pyo files instead of .pyc files.
  • Reverted changes to threading; now using pthread again.
  • Use pthread_exit when exiting thread instead of doing nothing.
  • Add gl2 subsystem modules; not fully working yet.
  • Add patches for video playback.
  • Disable Mesa debugging.
  • Clear some memory when loading image assets has failed; may reduce the chance of data aborts.
  • Compiled with libnx v2.5.0, fixing controller input on firmware 9.0.0.

v1.3 2019/09/03

  • Removed displaying errors by console; now requires nxlink to view errors.
  • Added more built-in modules.
  • Rebased Ren'Py changes on top of 7.3.2.
  • Disable writing bytecode when using RomFS.
  • Update building documentation.

v1.2 2019/06/05

  • Fixed threading support.
  • Fixed exiting.
  • Improved building documentation.
  • Optimized Python.

v1.1 2019/06/05

  • Issues relating to path handling is fixed.
  • RomFS support is added to allow building a game into a single NRO file.
  • Patch set against Ren'Py has been reduced.
  • Save data path is fixed to sdmc:/Ren'Py Data/.
  • Logs path is fixed to sdmc:/Ren'Py Logs/.
  • Python modules not needed for operation of Ren'Py are removed from the distribution.

v1.0 2019/06/03

  • Initial release.

External links

Advertising: