Download LVNAuth
A stable release is available for download as a Flatpak and Snap package for Linux.
Snap Package
Flatpak
It's possible to download the latest development version of LVNAuth that is still in-development. The advantage is being able to try out the latest features before being officially released. However, development versions of LVNAuth can be less stable, so it's not recommended for production use.
The latest development version is available as a Snap package in the latest/edge channel.
The command is:
snap install lvnauth --edge
To go back to the stable channel, use:
snap install lvnauth --stable
If you have questions or find any issues, visit:
https://github.com/jrezai/lvnauth/issues
November 1, 2024
Added a feature to edit existing commands by right-clicking and choosing the menu, 'Edit line'. This will allow you to change the values of commands using the Wizard window. Prior to this, the Wizard window was only able to generate new commands; but now the Wizard window can edit commands that are being used in a visual novel.
Added the ability to play from the Startup scene via the Play button, without the launch window. Before, it would show a Launch window first. Starting the visual novel from the Launch window is still an option, however.
Added optional arguments support for the <call>
command in the Wizard window.
Added optional arguments support for the command: <after>
. This allows arguments to be passed to a reusable script.
Fixed bug with the <case>
command causing an error when no condition name was provided. The condition name is optional unless you want to use <or_case>
later on.
Fixed bug with the variables editor window not saving numeric values.
Cleaned up the command helper descriptions that show up near the bottom of the editor window. For example, instead of the description 'Character sprite to load (no extension)', it now shows 'Character sprite name'. Also, a few inaccurate parameter descriptions were corrected.
The visual novel project will now be saved automatically just before being played via the 'Play' button in the editor window. This way, the latest changes will be saved without needing to manually click the 'Save' button every time before playing your visual novel.
September 16, 2024
Added the new load as keyword (introduced in v0.6) to the Wizard window so that it's easier to spawn copies of sprites without needing to memorize the command.
The Wizard window's command list now contains a background color for each row. The colors are grouped by the category of each command. For example: commands related to fades will be in one color and commands related to rotation will be in a different color. This makes it easier and faster to find specific commands. Also, command category names are now listed on the same row as the command names.
Added a command helper near the bottom of the main window. If you place the blinking cursor over a command parameter, the name of the parameter that you're currently on, will be shown. This is especially useful for commands that contain many parameters, such as <text_dialog_define>
.
Fixed a bug that caused a sprite's text animation to unnecessarily run again even if the text's animation had already finished, when swapping the sprite out with a different sprite.
May 16, 2024
Let's say you want to show 5 button sprites in your visual novel at the same time. Before, you would have to add 5 sprite files/images to your visual novel, one for each button, even if they were the same image. Now you can use the same sprite (1 sprite file) to spawn multiple copies with unique names.
For example, typically you would load a dialog sprite like this:
<load_dialog_sprite: button, buy button>
The line above will load a dialog sprite named button and will give it an alias buy button. The line above works fine for 1 sprite. But what if you want to show 2 buttons? Instead of adding the same sprite file to your visual novel multiple times (which would unnecessarily increase the file size of the visual novel), you can now load the same sprite multiple times to create copies with different names, like this:
<load_dialog_sprite: button load as button 2, sell button>
So now it's taking the same sprite as before (named button) and loading it with a new name: button 2, and giving it an alias of sell button. With this update, it's now possible to load one sprite multiple times.
Added condition support which allows specific lines in a script to run depending on a variable's value. This will make it possible to branch out your visual novels in creative ways. For example: you could have a character say something specific based on the viewer's choices. Or you could show different scenes based on the viewer's choices.
The new conditional commands are:
1. <case>
2. <or_case>
3. <case_else>
4. <case_end>
Added a new <exit>
command which allows you to stop a script before it has a chance of reaching the end. A possible use-case is, for example, when you have a store owner as a character and the viewer of your visual novel is a customer. If the viewer (the customer) doesn't have enough credits, then the store owner won't have anything else to say, so you could exit the script with this new command.
Added a new <halt_and_pause_main_script>
command which pauses the main script. This was made to prevent the main script from advancing until a sprite (such as a button sprite) has been clicked to advance the dialogue text. To unpause, use the new command: <unhalt_and_unpause_main_script>
. The difference between pausing the main script and using the <halt>
command is that with the <halt>
command the viewer can click anywhere in the visual novel to advance the story. However, when it's paused using <halt_and_pause_main_script>
, clicking won't advance the story. Other than that, they are similar.
Fixed the command <dialog_sprite_start_scaling>
not starting a scaling animation.
Fixed the command <sprite_text>
not adding text to sprites that have no animation. It used to only show text with sprites that were going through some kind of animation, such as fading, rotating, scaling.
Fixed an error message from occurring when a sprite's image was changed during a gradual letter animation.
Fixed commands with trailing or leading spaces not being read.
March 19, 2024
Added text support for sprites. You can now show text on character sprites, object sprites, and dialog sprites. The purpose of showing text on sprites is to make way for eventually being able to create buttons in a future version. Click on the 'Wizard' button and choose the Font category to see the new sprite text-related commands.
The screen for a visual novel is now updated all at once on each frame instead of multiple rectangular areas. This should help improve performance and make it easier to maintain the code.
Added Flatpak support.
Fixed bug: when a non-animating scale or rotate was applied to a sprite and then a gradual fade was applied, it lost the scale/rotate values.
Fixed bug with commands such as <character_show>
not swapping out a sprite that is queued to become visible. In some cases, this caused two sprites with the same alias to appear on the screen.
Fixed bug with the new project window not showing a proper error message box when a new project can't be created in the specified directory.
January 11, 2024
Added variable support. You can now define preset text to a variable and use variables in your scripts using the $ symbol inside parantheses. For example: <character_show: ($myvariable)>
. There is also a new command for setting values for variables: <variable_set>
.
Added a new right-click context menu to rename chapters, scenes, objects, etc and to move treeview items up and down.
Added an 'Episode' field to Story Details, which can be used for specifying an episode number for your visual novel.
When a new folder is created, it is selected in the treeview so it's easier to see the newly created folder.
The Launch window is now centered on the screen by default.
Fixed bug with <wait_for_animation>
showing an error when waiting for a screen fade.
Fixed bug with visual novel window not closing sometimes, causing the window to freeze.
Fixed chapter/scene display orders being out of order sometimes in the Launch window.
December 3, 2023
Added syntax highlighting when writing scripts. This will make it much easier to see commands and dialog text.
Added the ability to create and edit color presets via a new Colors toolbar button.
Added three commands to the wizard: <dialog_sprite_center_x_with>
, <object_center_x_with>
, <character_center_x_with>
Fixed display of 'Fade-out speed' showing as 'Fade-in speed' in the <scene_with_fade>
wizard screen.
Fixed the scenes drop down menu in the wizard only showing scenes in the first chapter.
The numpad Enter key can now be used when writing scripts (before, pressing the numpad Enter key did nothing).
Clicking on the middle mouse button (scroll button) no longer pastes text from the clipboard to the script editor.
Fixed sprite rotation not starting when set to rotate to a specific angle.
Fixed stop angle being off when rotating clockwise (for example: specifying a stop angle at 45 degrees was stopping at 315 degrees, due to the way clockwise angles are specified in pygame.
Fixed <wait_for_animation>
sometimes unnecessarily waiting for a fade animation even after the fade finished.
November 10, 2023
Released in the Snap Store
Reusable scripts can now use tokens. For example, in a reusable script, if you have (@character)
, you can use <call: some script, character=Bob>
and the (@character)
token inside the reusable script will get replaced with the name of the character (in this example: Bob).
Added a new command: <scene_with_fade>
, which is used for fade-transitioning to a new scene. You can use <scene>
by itself if you don't want to use a fade effect when transitioning to a new scene.
Added a new command: <wait_for_animation>
, which waits for specific type(s) of animations before resuming a scene's script. It does not pause reusable scripts, but can be called from a reusable script.
Added <no_clear>
to the wizard.
Fixed a display bug with the dialog rectangle which caused the border to get stuck when fading out.
Fixed: the on_halt and on_unhalt reusable scripts run at the right times now, regardless of the font animation.
Fixed a bug where sometimes dialog text was skipped after using
Proper support for multiple audio channels. An implementation existed before, but it didn't fully utilize pygame-ce audio channels.
Prevent on_halt reusable script from starting when halt_auto is used.
The
Added hidden scene support. Hidden scenes will not show up in the Launch window. This is useful for creating small, maintainable scenes that are part of a bigger scene. The purpose is to be able to quickly preview small hidden scenes from the Editor without having to re-watch and entire scene from the beginning. To create a hidden scene, include a period in the beginning of a scene's name. For example: .Outside scene
Added 'c' key shortcut for copying the locations of visible sprites when previewing a scene in the editor.
Added 'h' key shortcut to hide/re-show the mouse coordinates at the top of the visual novel, when previewing a scene in the editor.
October 9, 2023
October 9, 2023 - First beta release
Last updated: Fri 01 November 2024