{"id":16252324,"url":"https://github.com/jsfehler/entroponaut","last_synced_at":"2026-02-25T12:39:31.936Z","repository":{"id":221264338,"uuid":"716722841","full_name":"jsfehler/entroponaut","owner":"jsfehler","description":"GUI with improved NVL built on top of Ren'Py's default GUI system.","archived":false,"fork":false,"pushed_at":"2024-02-19T02:57:42.000Z","size":43743,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-22T07:41:52.298Z","etag":null,"topics":["renpy"],"latest_commit_sha":null,"homepage":"","language":"Ren'Py","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jsfehler.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-09T18:27:34.000Z","updated_at":"2025-01-25T03:54:34.000Z","dependencies_parsed_at":"2024-02-11T21:25:33.278Z","dependency_job_id":null,"html_url":"https://github.com/jsfehler/entroponaut","commit_stats":null,"previous_names":["jsfehler/entroponaut"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsfehler%2Fentroponaut","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsfehler%2Fentroponaut/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsfehler%2Fentroponaut/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsfehler%2Fentroponaut/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jsfehler","download_url":"https://codeload.github.com/jsfehler/entroponaut/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247845897,"owners_count":21005923,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["renpy"],"created_at":"2024-10-10T15:13:14.973Z","updated_at":"2026-02-25T12:39:31.855Z","avatar_url":"https://github.com/jsfehler.png","language":"Ren'Py","funding_links":[],"categories":[],"sub_categories":[],"readme":"- E N T R O P O N A U T -\n=========================\n\nA replacement GUI for a Ren'Py project, designed for the NVL text display format.\n\nLive Demo: https://jsfehler.itch.io/entroponaut\n\n.. list-table:: Features\n   :widths: auto\n   :header-rows: 1\n\n   * -\n     -\n   * - .. image:: screenshots/nvl.png\n         :width: 240\n         :alt: NVL\n     - Scrolling text window: The NVL window is enhanced with text that scrolls into view from the bottom.\n   * - .. image:: screenshots/passive_statement.png\n         :width: 240\n         :alt: Passive Statement\n     - Passive statement: A new statement called 'passive' darkens text and automatically advances to the next line. Useful for showing menu choices after their selection.\n   * - .. image:: screenshots/options.png\n         :width: 240\n         :alt: Options\n     - New Options screen: Rebuilt to allow for the easy addition of custom options.\n   * - .. image:: screenshots/set_save_name.png\n         :width: 240\n         :alt: Set Save Name\n     - Played-Defined Save Slot Name: Players can set custom names for their save files.\n   * - .. image:: screenshots/save_load.png\n         :width: 240\n         :alt: Save/Load\n     - New load/save screen: Reimagined to better handle user-defined slot names and slot metadata.\n\nInstallation\n------------\n\n- Download the latest release from `github. \u003chttps://github.com/jsfehler/entroponaut/releases/\u003e`_\n\nNew Project\n~~~~~~~~~~~\n\nThe Entroponaut project should be used as a template project.\n\n1 - If open, close the Ren'Py Launcher.\n\n2 - Unzip the release and move the `Entroponaut` folder into your Projects directory.\n\n3 - Open the Ren'Py Launcher, create a new project and select Entroponaut as the template.\n\n\nExisting Project\n~~~~~~~~~~~~~~~~\n\nEntroponaut assumes the following default files and folders are not in a project:\n\n- ``game/gui.rpy``\n- ``game/screens.rpy``\n- ``game/gui/``\n\nIf they are present and unmodified, deleting them is necessary. If they have\nbeen modified then they may require changes to work correctly with Entroponaut.\n\n.. warning::\n    When used in an existing project, it's the responsibility of the developer to\n    ensure their existing assets and screens are not overwritten or made incompatible.\n\n1 - Unzip the release and place the ``entroponaut_0.1.1/game/00_entroponaut/`` directory into your project's ``game/`` directory.\n\n2 - The default `options.rpy` file also needs minor changes:\n\nThe following transitions should be disabled or changed, depending on your game.\n\n.. code-block:: console\n\n    # define config.window_show_transition = Dissolve(.2)\n    # define config.window_hide_transition = Dissolve(.2)\n\nThe window icon must be changed, if you don't have your own:\n\n.. code-block:: console\n\n    define config.window_icon = f\"{entroponaut_gui.root_directory}/gui/window_icon.svg\"\n\nUsage\n-----\n\nTo enable the `Exit Save \u003chttps://www.renpy.org/doc/html/store_variables.html#var-_quit_slot\u003e`_, insert the following line at the top of the start label:\n\n.. code-block:: console\n\n    $ _quit_slot = \"quitsave\"\n\n\nWherever possible, Entroponaut will use Ren'Py's existing GUI system and config.\n\nNew GUI properties are inside the `entroponaut_gui` namespace.\n\nNew config properties are inside the `entroponaut_config` namespace.\n\nKnown Incompatibilities\n-----------------------\n\n- ADV text display and screen variant formats are currently unsupported.\n\n- The save/load screens remove the default pagination feature in Ren'Py.\nPagination is still available in the engine, the new UI simply removes the\nbuttons to toggle pages.\n\nLicense\n-------\n\nThe source code for this project is licensed under the GNU GPLv3, available to read here:\nhttps://github.com/jsfehler/entroponaut/blob/master/LICENSE\n\nThe fonts used have their own, separate licenses. They're available inside the `fonts/` directory.\n\nDevelopment History\n-------------------\n\nLarge portions of this code are originally from: https://jsfehler.itch.io/speed-metal-vimana\nWhile working on another project I took some time to extract relevant pieces into a more reusable kit.\n\nThere are no immediate plans to add new features and requests for new features will be ignored.\nPull Requests for new features will be considered.\n\nContributing\n------------\n\nPull Requests to fix known incompatibilities and/or bugs are welcome.\n\nFor filing bugs, please use the\n`GitHub issue tracker \u003chttps://github.com/jsfehler/entroponaut/issues\u003e`_\n\nNew Config Properties\n---------------------\n\n  .. code-block:: console\n\n      # Transform used for each item in the navigation menu.\n      define entroponaut_config.navigation_item_transform = alpha_easein\n\n      # Load/Save slots\n      define entroponaut_config.audio.ui.loadsave_slot_hover = None\n      define entroponaut_config.audio.ui.loadsave_slot_action = None\n      define entroponaut_config.audio.ui.delete_file_button_action = None\n\n      # Buttons\n      define entroponaut_config.audio.ui.button_hover = None\n      define entroponaut_config.audio.ui.button_action = None\n\nNew GUI Properties\n------------------\n\n  .. code-block:: console\n\n      # Default settings for buttons\n      define entroponaut_gui.button_borders = Borders(6, 6, 6, 6)\n      define entroponaut_gui.button_tile = False\n      define entroponaut_gui.button_font = f\"{entroponaut_gui.root_directory}/fonts/oswald/static/Oswald-ExtraLight.ttf\"\n      define entroponaut_gui.button_font_color = \"#b9d8db\"\n\n      define entroponaut_gui.prompt_font = f\"{entroponaut_gui.root_directory}/fonts/oswald/static/Oswald-ExtraLight.ttf\"\n\n      define entroponaut_gui.label_font = f\"{entroponaut_gui.root_directory}/fonts/noto_sans/NotoSans-Bold.ttf\"\n\n      # Quick menu\n      define entroponaut_gui.quick_button_font_idle_color = \"#b9d8db\"\n      define entroponaut_gui.quick_button_font_hover_color = \"#000\"\n\n      # Navigation buttons\n      define entroponaut_gui.nav_button_font = f\"{entroponaut_gui.root_directory}/fonts/oswald/static/Oswald-Light.ttf\"\n      define entroponaut_gui.nav_button_text_idle_color = \"#b9d8db\"\n      define entroponaut_gui.nav_button_text_hover_color = \"#000\"\n\n      # Checkboxes\n      define entroponaut_gui.checkbox_idle_color = \"#b9d8db\"\n      define entroponaut_gui.checkbox_hover_color = \"#66a3e0\"\n      define entroponaut_gui.checkbox_selected_idle_color = \"#b9d8db\"\n      define entroponaut_gui.checkbox_selected_hover_color = \"#66a3e0\"\n\n      # Radio buttons\n      define entroponaut_gui.radio_idle_color = \"#b9d8db\"\n      define entroponaut_gui.radio_hover_color = \"#66a3e0\"\n      define entroponaut_gui.radio_selected_idle_color = \"#b9d8db\"\n      define entroponaut_gui.radio_selected_hover_color = \"#66a3e0\"\n\n      # Sliders\n      define entroponaut_gui.slider_idle_color = \"#b9d8db\"\n      define entroponaut_gui.slider_hover_color = \"#66a3e0\"\n      define entroponaut_gui.slider_thumb_idle_color = \"#b9d8db\"\n      define entroponaut_gui.slider_thumb_hover_color = \"#66a3e0\"\n\n      # Save/Load\n      define entroponaut_gui.save_load_button_font = f\"{entroponaut_gui.root_directory}/fonts/noto_sans/NotoSans-Light.ttf\"\n      define entroponaut_gui.save_load_button_font_size = 19\n\n      # Save/Load carets\n      define entroponaut_gui.save_caret = \"▼\"\n      define entroponaut_gui.load_caret = \"▲\"\n\n      # Click to Continue caret.\n      define entroponaut_gui.continue_caret = \"►\"\n\n      # Used as a background for the input_confirm screen.\n      define entroponaut_gui.input_confirm_background = Solid('#000')\n\n      # The expected physical height of the font. Used for scrolling calculations.\n      define entroponaut_gui.menu_height_adjustment = 26\n\n      # The colour used for passive text\n      define entroponaut_gui.passive_text_colour = \"#787878\"\n\n      define entroponaut_gui.frame_alpha = 0.75\n\n      define entroponaut_gui.game_menu_frame_background = Transform(Solid('#000'), alpha=entroponaut_gui.frame_alpha)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsfehler%2Fentroponaut","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjsfehler%2Fentroponaut","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsfehler%2Fentroponaut/lists"}