Jump to content
IGNORED

BlocklyVN8bit - Visual tool to make visual novels for 8-bit platforms


haroldoop

Recommended Posts

Hello;

 

This is my current project. It is a mashup between a previous project of mine and 8bit-Dude's 8bit-Unity. Together, these two tools allows one to use a visual scripting language to create visual novels for multiple 8-bit platforms. It's still on its initial stages, but it is already capable of generating working games.

 

Please note that, while the current version (0.1.0) does generate fully playable Lynx ROMs, they do have color palette issues.

 

 

Screenshot of the tool:

Tool.thumb.png.dd2c6cd1866516124858cbe196472bd3.png

 

C64 Example:

1254600410_C64Example.thumb.png.cfa6beefef894ebf6bf24b2286e74c62.png

 

Atari 8-bit example:

1667714759_Atari8bitExample.thumb.png.f4881ab7ebba9fe01a2d103aaa6560ed.png

Edited by haroldoop
Added images
  • Like 4
Link to comment
Share on other sites

6 hours ago, haroldoop said:

Hello;

 

This is my current project. It is a mashup between a previous project of mine and 8bit-Dude's 8bit-Unity. Together, these two tools allows one to use a visual scripting language to create visual novels for multiple 8-bit platforms. It's still on its initial stages, but it is already capable of generating working games.

 

Please note that, while the current version (0.1.0) does generate fully playable Lynx ROMs, they do have color palette issues.

 

 

Screenshot of the tool:

Tool.thumb.png.dd2c6cd1866516124858cbe196472bd3.png

 

C64 Example:

1254600410_C64Example.thumb.png.cfa6beefef894ebf6bf24b2286e74c62.png

 

Atari 8-bit example:

1667714759_Atari8bitExample.thumb.png.f4881ab7ebba9fe01a2d103aaa6560ed.png

Hi @haroldoop it has been a while since Always winter, never Christmas. It was fun to use your tool for that. Thanks for sharing.

  • Thanks 1
Link to comment
Share on other sites

3 hours ago, haroldoop said:

Hello, again;

 

Version 0.1.1 is now available; now, the build process is actually reliable, and works on almost every single try.

 

https://github.com/haroldo-ok/BlocklyVN8bit/releases/tag/0.1.1

Nice!

 

During the time I was workin with BlocklyVN I did add a method for playing notes in a ABCmusic notation. All the music on the cart was created this way.

 

I also have a C-interpretation of the reduced ABCmusic syntax that might be handy if you want to expand the BlocklyVN into sounds.

 

bitbucket.org/atarilynx/lynx/contrib/abcmusic/cversion

 

The idea is to use the Say keyword for playing music like "Say CCCE DDDF" would play notes C C C E D D D F. The implementation should be possible on any platform as most platforms can produce a beep. The first tune on the intro screen was Jingle bells that was written like this:

"I1V88T16 | e2 e2 e4 | e2 e2 e4 | e2 g2 c2 d2 | e6 z2 | f2 f2 f3 f | f2 e2 e2 e e | e2 d2 d2 e2 | d4 g4 | e2 e2 e4 | e2 e2 e4 | e2 g2 c2 d2 | e6 z2 | f2 f2 f3 f | f2 e2 e2 e e | g2 g2 f2 d2 | c8"

 

The first characters are my extensions for the sound:
I1 = instrument number 1
V88 = volume between 0..127

T16 = tempo, how many ticks per note, e2 means 2*16 = 32 ticks

  • Like 1
Link to comment
Share on other sites

21 hours ago, karri said:

Nice!

 

During the time I was workin with BlocklyVN I did add a method for playing notes in a ABCmusic notation. All the music on the cart was created this way.

 

I also have a C-interpretation of the reduced ABCmusic syntax that might be handy if you want to expand the BlocklyVN into sounds.

 

bitbucket.org/atarilynx/lynx/contrib/abcmusic/cversion

 

The idea is to use the Say keyword for playing music like "Say CCCE DDDF" would play notes C C C E D D D F. The implementation should be possible on any platform as most platforms can produce a beep. The first tune on the intro screen was Jingle bells that was written like this:

"I1V88T16 | e2 e2 e4 | e2 e2 e4 | e2 g2 c2 d2 | e6 z2 | f2 f2 f3 f | f2 e2 e2 e e | e2 d2 d2 e2 | d4 g4 | e2 e2 e4 | e2 e2 e4 | e2 g2 c2 d2 | e6 z2 | f2 f2 f3 f | f2 e2 e2 e e | g2 g2 f2 d2 | c8"

 

The first characters are my extensions for the sound:
I1 = instrument number 1
V88 = volume between 0..127

T16 = tempo, how many ticks per note, e2 means 2*16 = 32 ticks

That's nice! 8bit-Unity does have a "BleepSFX(unsigned char tone)" command, so, I guess it is feasible; the tool does come with music support, but it requires one to compose separate music files for each platform; maybe ABCmusic could be an alternative if the designer does not want to make separate music.

Link to comment
Share on other sites

Hello, thanks for your interest;

 

It comes with one example project, and it shows how variables can be used. You can access "File -> Load project" and select the project named "test".

 

There are no available tutorials, right now, but I might make some later; until that is done, there is an old video made for the old Blocklyvn32x briefly showing how to use it: 

 

Also, you might want to try "The Question for Blocklyvn32x "; while this project was designed for Blocklyvn32x, it should work okay on Blocklyvn8bit; the images will be automatically converted to the correct sizes.

Edited by haroldoop
Link to comment
Share on other sites

Hello;

 

Beneath the menu bar, there are tabs named "Blocks", "Overview", "C", "XML", "Backgrounds" and "Portraits":

 

Tool.thumb.png.dd2c6cd1866516124858cbe196472bd3.png

 

By clicking on either "Backgrounds" or "Portraits", the application will display a screen where you can view the existing backgrounds and portraits, and it will also show buttons for adding new images, or delete the existing ones. The images can be on either PNG or JPEG formats; in fact, any image format recognized by Chromium would, in theory, work.

Link to comment
Share on other sites

I did try to install the binary package of 1.1 on Win 10. The editor works but every compilation just "fails" whatever this means.

 

In my Lynx version I just created the xml trees and parsed them to produce the Lynx C-code.

 

The concept is really nice, but I believe it is better to create the VN part as a custom extension to a standard Blockly environment.

 

I was not able to find out how the compilation is supposed to work. The C-tab did not create any visuals at all.

 

As my main OS is linux I also prefer to run electron in that environment. It would also help to have a little documentation of how developers could contribute to the design.

 

Link to comment
Share on other sites

So far, I have only tested the application on 64 bit Windows 10.

 

You could try to take a look at the log panel at the bottom left of the screen to see if it says something.

 

As for how the compilation works, it generates a C source file representing the script itself, copies a few additional runtime C files containing the functions that will be used by the first file. It also copies the image files to the build directory, then uses 8bit-Unity's image conversionscripts to convert them to the correct size and palette for each target platform. Then, it generates a 8bit-Unity build script, and uses its build tool to generate the batch files for each platform; finally, it runs the batch fille in order to generate the disk or the ROM for the selected platform, and run the corresponding emulator.

 

As for Linux support, it shouldn't be too hard  to adapt the editor, but 8bit-Unity, itself is somewhat Windows-oriented 

 

--edit--

 

BTW, I registered some of the reported issues on the project "issues" page. so as to not forget: https://github.com/haroldo-ok/BlocklyVN8bit/issues

Edited by haroldoop
Registered issues on Github
Link to comment
Share on other sites

Hello, again;

 

Version 0.2.1 is now available; it fixes the bug that prevented the Lynx build from working when using portraits:

 

https://github.com/haroldo-ok/BlocklyVN8bit/releases/tag/v0.2.1

 

image

 

 

Known bugs:

- Background palette is still being displayed incorrectly on Lynx: https://github.com/8bit-Dude/8bit-Unity/issues/12

- Sometimes, the ".bat" file responsible from generating the Lynx ROM and calling the emulator will fail to function if executed from inside the editor; if that happens, please try to execute it manually by going to "Folder-Where-The-Application-Was-Installed\8bit-Unity\build\yourprojectname-lynx.bat"; see also: https://github.com/haroldo-ok/BlocklyVN8bit/issues/8

Link to comment
Share on other sites

48 minutes ago, haroldoop said:

Background palette is still being displayed incorrectly on Lynx

I don't think there is a problem with the code, simply (looking at the github repository) you are using two images with different palettes.

 

Lynx can ue only 16 colors at a time and all the images displayed need to use the same 16 colors palette. If you make a test using only images edited to have the same 16 colors (best if all the colors in the same order in the palette) probably the sceen will be ok.

Link to comment
Share on other sites

17 minutes ago, Nop90 said:

I don't think there is a problem with the code, simply (looking at the github repository) you are using two images with different palettes.

 

Lynx can ue only 16 colors at a time and all the images displayed need to use the same 16 colors palette. If you make a test using only images edited to have the same 16 colors (best if all the colors in the same order in the palette) probably the sceen will be ok.

Thanks for the tip! ?

 

Unfortunately, though, even after triple checking that all images were using the same palette as 8bit-Unity's examples, the problem persists. Strangely enough this seems to be affecting only the backgrounds, but not the portraits.

 

Anyway, I opened an issue on 8bit-Unity's repository: https://github.com/8bit-Dude/8bit-Unity/issues/12

Link to comment
Share on other sites

  • 7 months later...
  • 1 year later...

Hello, again!

 

Version 0.3.0 is now available.

 

New implementations since 0.2.1:

  • 0.3.0: Added blocks to allow setting position and size of dialogs:
    • It is possible to configure text windows and menus separately;
    • It is possible to set the x and y coordinates of the dialogs;
    • It is possible to set the width and height of the dialogs;
    • It is possible to set those informations in characters or in percentage;
    • When a negative value is informed to the x coordinate, it is understood as "count the position from the right, instead of the left";
    • When a negative value is informed to the y coordinate, it is understood as "count the position from the bottom, instead of the top".

Bugfixes since 0.2.1:

  • 0.2.2: Fixed a few compilation bugs that happened if the project wasn't named `test`;
  • 0.2.3: Corrected a bug where the height of the dropdown would exceed the height of the screen if there where too many images to list;
  • 0.2.4: Fixed a bug where it was looking for 8bit-Unity on the wrong directory, preventing the compilation from working at all;
  • 0.2.5: Due to a typo on the engine code, the selected character name wasn't being displayed, instead showing a fixed string. This was corrected;
  • 0.2.6: Clear keyboard buffer before and after the `say` command;
  • 0.2.7: Fix special characters on image names;
  • 0.2.8: Corrected problem where background image height was being set to 202 instead of 200.

 

Release 0.3.0: https://github.com/haroldo-ok/BlocklyVN8bit/tree/v0.3.0

Page on itch.io: https://haroldo-ok.itch.io/blocklyvn8bit

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...