VNDS-LOVE 3DS: Difference between revisions

From GameBrew
(Created page with "{{Infobox 3DS homebrew | title = VNDS-LOVE | image = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.jpg|250px | type = Other Apps | version = v0.0.11 | licence = Mixed | auth...")
 
No edit summary
Line 3: Line 3:
| image = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.jpg|250px
| image = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.jpg|250px
| type = Other Apps
| type = Other Apps
| version = v0.0.11
| version = v0.0.12
| licence = Mixed
| licence = Mixed
| author = ajusa
| author = ajusa
| website = https://github.com/ajusa/VNDS-LOVE
| website = https://github.com/ajusa/VNDS-LOVE
| download = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.rar
| download = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.rar
| source = https://dlhb.gamebrew.org/3dshomebrew/VNDS-LOVE.rar
| source = https://github.com/ajusa/VNDS-LOVE
}}
}}
<youtube>PoImIj0ZJj8</youtube>
<youtube>PoImIj0ZJj8</youtube>


<img src="icons/icon.jpg?raw=true" width="128" height=128>
VNDS-LOVE is a cross platform program that plays '''V'''isual '''N'''ovel '''D'''ual '''S'''creen formatted novels. Many famous visual novels have been ported to this format, which was designed for the Nintendo DS.
# VNDS-LOVE
 
[![Build Status](https://github.com/ajusa/VNDS-LOVE/workflows/VNDS-LOVE/badge.svg)](https://github.com/ajusa/VNDS-LOVE/actions)
== What is VNDS? ==
[![Discord](https://img.shields.io/discord/716444798432575518.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2)](https://discord.gg/q8wjpt2)
 
[![Guide](https://img.shields.io/badge/View-Guide-blue)](https://docs.google.com/document/d/e/2PACX-1vRoZeD_wTko3X7FnARS2HtUerTUABwqnfnEJQpuEG9GQ0UvbnWFdbhvg7eEYsFNnMxTUJ7F9dupMCjQ/pub)
VNDS is a specification designed for visual novels in order to run them on the Nintendo DS. Many of the original sources for the project no longer exist, but you can find further information on it [https://github.com/BASLQC/vnds/wiki at this wiki page.]
VNDS-LOVE is a cross platform program that plays **V**isual **N**ovel **D**ual **S**creen formatted novels.
 
Many famous visual novels have been ported to this format, which was designed for the Nintendo DS.
VNDS novels only have a few commands. As such, they don’t have any support for animations, videos, or other fancier graphical capabilites of newer visual novels. They support basic audio and image based storytelling.
## What is VNDS?
 
VNDS is a specification designed for visual novels in order to run them on the Nintendo DS. Many of the original sources for the project no longer exist, but you can find further information on it [at this wiki page.](https://github.com/BASLQC/vnds/wiki)
== Project Status ==
VNDS novels only have a few commands. As such, they don't have any support for animations, videos, or other fancier graphical capabilites of newer visual novels. They support basic audio and image based storytelling.
 
## Project Status
Mostly functional. There are no known VNDS related bugs. Note that some features from other visual novel engines might be missing. If they are, file an issue along with a general description of the feature.
Mostly functional. There are no known VNDS related bugs. Note that some features from other visual novel engines might be missing. If they are, file an issue along with a general description of the feature.
## Supported Platforms
 
== Supported Platforms ==
 
Windows, Mac, Linux, and the Nintendo Switch are all fully supported. Note that you need to have a Switch capable of running homebrew. For more information, see the guide below.
Windows, Mac, Linux, and the Nintendo Switch are all fully supported. Note that you need to have a Switch capable of running homebrew. For more information, see the guide below.
### Nintendo 3DS
 
This is only partially supported and a work in progress. I do provide builds (3dsx files) for the Nintendo 3DS, however the image format that the 3DS needs is custom (.t3x) so PNG/JPG files do not work on it without being converted. At some point I do intend on writing a cross platform conversion tool, however that won't be for a while most likely. Text and audio still work fine without any conversion.
=== Nintendo 3DS ===
Performance on the 3DS is also lacking at this moment. You can see this being tracked in [this issue.](https://github.com/ajusa/VNDS-LOVE/issues/16)
 
### Android
This is only partially supported and a work in progress. I do provide builds (3dsx files) for the Nintendo 3DS, however the image format that the 3DS needs is custom (.t3x) so PNG/JPG files do not work on it without being converted. At some point I do intend on writing a cross platform conversion tool, however that won’t be for a while most likely. Text and audio still work fine without any conversion.
Android is also only partially supported. There aren't any touchscreen controls at this moment. You can still play through novels by hooking up an external gamepad, such as a Switch Joycon over bluetooth or a Wii Remote. Audio, images, and text all work fine.
 
# Installation Instructions
Performance on the 3DS is also lacking at this moment. You can see this being tracked in [https://github.com/ajusa/VNDS-LOVE/issues/16 this issue.] ### Android Android is also only partially supported. There aren’t any touchscreen controls at this moment. You can still play through novels by hooking up an external gamepad, such as a Switch Joycon over bluetooth or a Wii Remote. Audio, images, and text all work fine.
If you are a **user** who wants to install this, go to the guide [here](https://docs.google.com/document/d/e/2PACX-1vRoZeD_wTko3X7FnARS2HtUerTUABwqnfnEJQpuEG9GQ0UvbnWFdbhvg7eEYsFNnMxTUJ7F9dupMCjQ/pub).
 
If you encounter any issues, feel free to pop in our Discord [here.](https://discord.gg/q8wjpt2)
= Installation Instructions =
If you don't want to use Discord for some reason, feel free to open a Github issue.
 
## Having an Issue?
If you are a '''user''' who wants to install this, go to the guide [https://docs.google.com/document/d/e/2PACX-1vRoZeD_wTko3X7FnARS2HtUerTUABwqnfnEJQpuEG9GQ0UvbnWFdbhvg7eEYsFNnMxTUJ7F9dupMCjQ/pub here]. If you encounter any issues, feel free to pop in our Discord [https://discord.gg/q8wjpt2 here.]
Go to the [issues](https://github.com/ajusa/VNDS-LOVE/issues/) and search for an issue similar to yours.
 
If there are no similar issues, go ahead and make a new one! Fill out as much information as you can.
If you don’t want to use Discord for some reason, feel free to open a Github issue.
# Development Instructions
 
ONLY FOLLOW THESE INSTRUCTIONS IF YOU WANT TO COMPILE VNDS-LOVE!
== Having an Issue? ==
IF YOU JUST WANT TO PLAY VISUAL NOVELS, GO TO THE GUIDE!
 
**Note:** Right now, building an NRO file is only supported on systems that you can install devKitPro on.
Go to the [https://github.com/ajusa/VNDS-LOVE/issues/ issues] and search for an issue similar to yours. If there are no similar issues, go ahead and make a new one! Fill out as much information as you can.
You can still easily test, but you won't be able to generate a final package.
 
You should be able to develop on Windows, Mac, and Linux. If you encounter any errors when trying to do that, [create an issue.](https://github.com/ajusa/VNDS-LOVE/issues/new)
== Development Instructions ==
## Quickstart
 
ONLY FOLLOW THESE INSTRUCTIONS IF YOU WANT TO COMPILE VNDS-LOVE! IF YOU JUST WANT TO PLAY VISUAL NOVELS, GO TO THE GUIDE!
 
'''Note:''' Right now, building an NRO file is only supported on systems that you can install devKitPro on. You can still easily test, but you won’t be able to generate a final package.
 
You should be able to develop on Windows, Mac, and Linux. If you encounter any errors when trying to do that, [https://github.com/ajusa/VNDS-LOVE/issues/new create an issue.]
 
== Quickstart ==
 
If you are an experienced developer, try reading through the Dockerfile and the main.yml workflow in the repository to get an idea of how the entire thing is built. If you want step by step instructions, follow along below.
If you are an experienced developer, try reading through the Dockerfile and the main.yml workflow in the repository to get an idea of how the entire thing is built. If you want step by step instructions, follow along below.
## Guide
 
1. Install [LuaRocks](https://luarocks.org/)
== Guide ==
2. After making sure that LuaRocks is on your path (`luarocks --help` has output), run the following:
 
```
# Install [https://luarocks.org/ LuaRocks]
luarocks install moonscript
# After making sure that LuaRocks is on your path (<code>luarocks --help</code> has output), run the following:
 
<pre>luarocks install moonscript
luarocks install busted
luarocks install busted
luarocks install alfons
luarocks install alfons</pre>
```
<ol start="3" style="list-style-type: decimal;">
3. Clone the repository (`git clone https://github.com/ajusa/VNDS-LOVE`)
<li>Clone the repository (<code>git clone https://github.com/ajusa/VNDS-LOVE</code>)</li>
4. `cd` to the cloned directory (`cd VNDS-LOVE`)
<li><code>cd</code> to the cloned directory (<code>cd VNDS-LOVE</code>)</li>
5. Install [Love2D](https://love2d.org/) and make sure it is also on your path.
<li>Install [https://love2d.org/ Love2D] and make sure it is also on your path.</li></ol>
Run `alfons compile` to compile the moonscript source to lua.
 
Run `alfons run` to run VNDS-LOVE using the installed copy of `love`.
Run <code>alfons compile</code> to compile the moonscript source to lua.
Run `alfons test` to run the busted unit tests, which are located in `spec`
 
## Building
Run <code>alfons run</code> to run VNDS-LOVE using the installed copy of <code>love</code>.
Building binaries requires additional steps.
 
If you are able to run VNDS-LOVE with changes using Love2D, you do not need to build the program.
Run <code>alfons test</code> to run the busted unit tests, which are located in <code>spec</code>
You can submit a [Pull Request](https://github.com/ajusa/VNDS-LOVE/pulls) without building the program.
 
Building is just for distribution.
== Building ==
 
Building binaries requires additional steps. If you are able to run VNDS-LOVE with changes using Love2D, you do not need to build the program. You can submit a [https://github.com/ajusa/VNDS-LOVE/pulls Pull Request] without building the program. Building is just for distribution.
 
With that out of the way:
With that out of the way:
### Building for Windows, Mac, and Linux
 
1. Try running `luarocks install --server=http://luarocks.org/dev love-release`
=== Building for Windows, Mac, and Linux ===
2. Install `libzip-dev` on your OS if the above command fails.
 
3. Run `alfons build`, and the build files should appear in a `build` folder, including a `.love` file.
# Try running <code>luarocks install --server=http://luarocks.org/dev love-release</code>
### Building for Switch and 3DS
# Install <code>libzip-dev</code> on your OS if the above command fails.
Github Actions is set up to do these builds. If you want to do this locally as well,
# Run <code>alfons build</code>, and the build files should appear in a <code>build</code> folder, including a <code>.love</code> file.
follow the "Dependencies" instructions on the LovePotion wiki [here](https://turtlep.github.io/LovePotion/wiki/#/building).
 
1. Install [lovebrew](https://github.com/TurtleP/lovebrew) and make sure you can run `lovebrew -h`
=== Building for Switch and 3DS ===
2. Create a directory called `bin` in the root of the project
 
3. Download the latest [LovePotion release](https://github.com/TurtleP/LovePotion/releases), and save `LovePotion.elf` in `bin/switch.elf`.
Github Actions is set up to do these builds. If you want to do this locally as well, follow the “Dependencies” instructions on the LovePotion wiki [https://turtlep.github.io/LovePotion/wiki/#/building here].
4. Run `lovebrew` in the project directory.
 
This should output a `VNDS-LOVE.nro` file in the project root directory to test with.
# Install [https://github.com/TurtleP/lovebrew lovebrew] and make sure you can run <code>lovebrew -h</code>
# Create a directory called <code>bin</code> in the root of the project
# Download the latest [https://github.com/TurtleP/LovePotion/releases LovePotion release], and save <code>LovePotion.elf</code> in <code>bin/switch.elf</code>.
# Run <code>lovebrew</code> in the project directory.
 
This should output a <code>VNDS-LOVE.nro</code> file in the project root directory to test with.

Revision as of 04:07, 5 September 2021

Template:Infobox 3DS homebrew

VNDS-LOVE is a cross platform program that plays Visual Novel Dual Screen formatted novels. Many famous visual novels have been ported to this format, which was designed for the Nintendo DS.

What is VNDS?

VNDS is a specification designed for visual novels in order to run them on the Nintendo DS. Many of the original sources for the project no longer exist, but you can find further information on it at this wiki page.

VNDS novels only have a few commands. As such, they don’t have any support for animations, videos, or other fancier graphical capabilites of newer visual novels. They support basic audio and image based storytelling.

Project Status

Mostly functional. There are no known VNDS related bugs. Note that some features from other visual novel engines might be missing. If they are, file an issue along with a general description of the feature.

Supported Platforms

Windows, Mac, Linux, and the Nintendo Switch are all fully supported. Note that you need to have a Switch capable of running homebrew. For more information, see the guide below.

Nintendo 3DS

This is only partially supported and a work in progress. I do provide builds (3dsx files) for the Nintendo 3DS, however the image format that the 3DS needs is custom (.t3x) so PNG/JPG files do not work on it without being converted. At some point I do intend on writing a cross platform conversion tool, however that won’t be for a while most likely. Text and audio still work fine without any conversion.

Performance on the 3DS is also lacking at this moment. You can see this being tracked in this issue. ### Android Android is also only partially supported. There aren’t any touchscreen controls at this moment. You can still play through novels by hooking up an external gamepad, such as a Switch Joycon over bluetooth or a Wii Remote. Audio, images, and text all work fine.

Installation Instructions

If you are a user who wants to install this, go to the guide here. If you encounter any issues, feel free to pop in our Discord here.

If you don’t want to use Discord for some reason, feel free to open a Github issue.

Having an Issue?

Go to the issues and search for an issue similar to yours. If there are no similar issues, go ahead and make a new one! Fill out as much information as you can.

Development Instructions

ONLY FOLLOW THESE INSTRUCTIONS IF YOU WANT TO COMPILE VNDS-LOVE! IF YOU JUST WANT TO PLAY VISUAL NOVELS, GO TO THE GUIDE!

Note: Right now, building an NRO file is only supported on systems that you can install devKitPro on. You can still easily test, but you won’t be able to generate a final package.

You should be able to develop on Windows, Mac, and Linux. If you encounter any errors when trying to do that, create an issue.

Quickstart

If you are an experienced developer, try reading through the Dockerfile and the main.yml workflow in the repository to get an idea of how the entire thing is built. If you want step by step instructions, follow along below.

Guide

  1. Install LuaRocks
  2. After making sure that LuaRocks is on your path (luarocks --help has output), run the following:
luarocks install moonscript
luarocks install busted
luarocks install alfons
  1. Clone the repository (git clone https://github.com/ajusa/VNDS-LOVE)
  2. cd to the cloned directory (cd VNDS-LOVE)
  3. Install Love2D and make sure it is also on your path.

Run alfons compile to compile the moonscript source to lua.

Run alfons run to run VNDS-LOVE using the installed copy of love.

Run alfons test to run the busted unit tests, which are located in spec

Building

Building binaries requires additional steps. If you are able to run VNDS-LOVE with changes using Love2D, you do not need to build the program. You can submit a Pull Request without building the program. Building is just for distribution.

With that out of the way:

Building for Windows, Mac, and Linux

  1. Try running luarocks install --server=http://luarocks.org/dev love-release
  2. Install libzip-dev on your OS if the above command fails.
  3. Run alfons build, and the build files should appear in a build folder, including a .love file.

Building for Switch and 3DS

Github Actions is set up to do these builds. If you want to do this locally as well, follow the “Dependencies” instructions on the LovePotion wiki here.

  1. Install lovebrew and make sure you can run lovebrew -h
  2. Create a directory called bin in the root of the project
  3. Download the latest LovePotion release, and save LovePotion.elf in bin/switch.elf.
  4. Run lovebrew in the project directory.

This should output a VNDS-LOVE.nro file in the project root directory to test with.

Advertising: