You do not have permission to edit this page, for the following reason:
The action you have requested is limited to users in one of the groups: Users, Administrators.
Free text:
CPyMO is a visual novel engine implemented in C for Nintendo 3DS, Windows, Linux, and macOS. It is based on the PyMO Engine and supports two backends: SDL2 and 3DS Citro2D. This is working in progress, current version has support all of graphics features. == Installation == '''Note:''' Only run copies of games that you legally own. Instructions: *Create a directory named <code>pymogames</code> on your SD card. *Place your game data into <code>pymogames</code> and make sure that <code>pymogames/startup/gameconfig.txt</code> is accessible. *Note that the path should contain only alphanumeric characters and underscores. *Install the CIA file and start the application (or run the 3DSX file via Homebrew Launcher). You will also need to dump your 3DS's DSP firmware to enable sound. You can install that with [[Luma3DS]]: * Open Rosalina Menu with L+D-Pad Down+Select. * Select Miscellaneous > Dump DSP Firmware. == User guide == === Differences from PyMO === * CPyMO uses different save locations and formats compared to PyMO, so they are not interchangeable. * CPyMO does not support MID format audio playback. * The mask gradient animation effects in CPyMO differ from those in PyMO. * CPyMO applies easing effects to animation timing curves, while PyMO uses linear effects. * The menu and user interface in CPyMO are different from those in PyMO. * CPyMO does not support preloading; any preloading options will be ignored. * CPyMO ignores all font settings except font size, and automatically enables font shadows and anti-aliasing. === Debug mode === To view the CPyMO console, hold the L button while selecting a game from the list by pressing A. === Recommended settings for 3DS === Recommended settings for adapting PyMO games to the 3DS: * Resolution - 400×300 (3DS native resolution is 400x240 but supports full-screen expansion) * Audio Format - Ogg, 16-bit signed little-endian, 32000Hz * Background Format - JPG * Other Images - PNG with transparency; avoid additional mask grayscale images * Platform Parameter - pygame * Default Font Size - 28 * Video Format - H264 MP4, under 30FPS; only supported on New 3DS models === Fonts === The 3DS version of CPyMO does not load custom or TTF fonts from games but uses the [https://github.com/adobe-fonts/source-han-sans Source Han Sans (思源黑体)] font. This font is converted to the bcfnt format compatible with the 3DS and will be distributed with CPyMO for 3DS under its original [https://github.com/adobe-fonts/source-han-sans/blob/master/LICENSE.txt SIL license]. If the default font does not meet your needs, you can place a bcfnt-format font at <code>/pymogames/font.bcfnt</code> on your SD card. CPyMO will prioritize this font over the default. == Controls == Start - Quickly exit Select - Change screen mode CPyMO for 3DS supports 3D display; use the 3D slider to enable this feature. ZL/ZR buttons serve the same functions as A/Y buttons for single-handed operation. == Screenshots == https://dlhb.gamebrew.org/3dshomebrews/cpymo3ds2.png https://dlhb.gamebrew.org/3dshomebrews/cpymo3ds3.png https://dlhb.gamebrew.org/3dshomebrews/cpymo3ds4.png == Changelog == '''v1.1.9 2023/08/14''' Deprecated: * Removed PSP SDL 1.2 backend support. * Removed GameCube Makefile. * Removed WiiU Makefile. * Eliminated macros. * Removed <code>pymo-convert.ps1</code> and <code>pymo-convert-audio.ps1</code>. New Features: * Added the track "Song of PyMO" for use as startup music on some platforms. * "Song of PyMO" now serves as startup music on the PSP platform. * Save data is now compatible across different game resolutions. * Auto Mode: CPyMO ASCII Art now uses an alternative buffer and hides the cursor. * CPyMO ASCII Art now supports dynamic terminal resizing during runtime. * Replaced <code>pymo-strip.ps1</code> with <code>cpymo-tool strip</code>. * Replaced <code>pymo-convert.ps1</code> and <code>pymo-convert-audio.ps1</code> with <code>cpymo-tool convert</code>. * <code>cpymo-tool gen-album-cache</code> now automatically searches for <code>#album</code> commands, eliminating the need to manually input list names. Bug Fixes: * Fixed an issue where the screen did not refresh after clicking dialogue. * Fixed a bug where only one folder's games were displayed when <code>GAME_SELECTOR_DIR_2</code> was defined. * Fixed a bug where the logical render size was still set in the SDL2 backend under <code>ENABLE_SCREEN_FORCE_CENTERED</code> state. * Changed PSV optimization level to O2 to avoid strange behavior observed with O3 optimization. * Corrected drawing order errors between background effect layers and Fade layers. * Fixed a memory leak issue when exiting the <code>album</code> interface while displaying CGs. * Corrected undefined behavior caused by abnormal CG loading in the <code>album</code>. * Fixed segmentation faults caused by missing list files in <code>music</code> and <code>album</code>. * Fixed a segmentation fault triggered by the <code>change</code> command when script loading fails. * Corrected the misinterpretation of the <code>GOTO_ENDING</code> command in <code>mo2pymo</code>. * Fixed the issue where "Memories of Autumn 2" could not return to the main menu during the ending. * Fixed incorrect interpretation of the <code>namealign</code> field. * <code>cpymo-tool gen-album-ui</code> no longer overwrites existing image files. Optimizations: * Added memory trimming for cases where adequate memory cannot be allocated: ** During background loading ** During sprite loading ** When creating critical strings ** When playing BGM ** When using the <code>scroll</code> command ** When using <code>BG_FADE</code> or background fade time is 0, backgrounds will be loaded in a low-memory mode and retried * Background images will be unloaded when entering the <code>album</code> interface to reduce memory usage. * Improved the text extraction API <code>cpymo_engine_extract_text</code>. * Allowed responding to cancel actions in confirmation dialogs. * Improved header file imports, eliminating the need for manual <code>-I</code> option configuration. * Optimized the scaling ratio of the right-click menu background to prevent text from overflowing beyond the background. == External links == * GitHub - https://github.com/Strrationalism/CPyMO * GitHub - https://github.com/PyMO-Ecosphere/CPyMO-GUITool * GBAtemp - https://gbatemp.net/threads/release-cpymo-visual-novel-engine-port-for-3ds.606746/
Advertising: