NVList v3.3

nvlist-3.3-tiling

Aside from the usual list of bugfixes, NVList 3.3 adds some usability features to the build system. The resource optimizer is no longer a separate window, but will instead integrate into the build system window itself. You’ll also get a warning now when trying to close the window while a build task is still running.

My favorite new feature is the support for tiling textures. Marking an an image as tiling causes it to repeat for UV coordinates outside the [0.0-1.0) range. These UV coordinates can be set using a new setUV method for image drawables. The most obvious use for tiling is an animated fog effect (Days of the Divine uses it in that way), but I’m looking forward to more creative uses in the future.

The improvements on the Android side are a lot more noticeable. JNG images are finally supported on Android as well, bringing with them a significant reduction in file size over PNG. By far the biggest change however is the addition of a new OpenGL ES 2.0 rendering back-end for devices with the required hardware support (almost everything supports GLES 2.0 these days). On older hardware, the old rendering back-end will still be used. The GLES 2.0 renderer fully supports bitmap tweens and shaders, closing the gap between desktop and mobile almost entirely.

→ NVList project page

Changelog:
2013/06/21 — 3.3 (r101)

enhancements:
– Added support for tiling textures, see ch11-resources.xml for more details.
– Images now let you specify a custom UV-range to control the texture offset.
– Added a fast mode to the texture composite function that skips alpha blending.
– skipScene() is now cancelable by pressing the text continue key.
– Improved analytics responsible for generating preloader.bin, handles multiple
  image loads generated from a single line better.
– Better error messages in case of syntax errors in loaded modules.
– Closing Build.jar will now show a warning if a build task is still running.
– The resource optimizer window has been integrated into its parent window.
– Android: Resource optimizer will only be re-run when necessary.
– Android: Added prefs-default-android.ini which allows preference overrides
  to be used for an Android port.
– Android: Added a GLES 2.0 rendering backend with support for bitmaptweens and
  shaders.
– Android: Support for JNG images.
  
bugfixes:
– setScale() erroneously stopped accepting non-positive values.
– Running in Java 7 could under specific circumstances result in an
  IllegalArgumentException.
– Newline characters in text commands weren’t being handled properly.
– Built-in word count incorrectly counted punctuation as words.
– Changed the rendering implementation of TriangleGrid to avoid a potential GC
  in the middle of rendering.
– Retrieving the pixels for certain texture types didn’t work.
– Fixed a possible OutOfMemory exception when using the skip mode on Java 7
  continuously for very long stretches of time.
– Android: Will not try to download an XAPK if no valid LVL key is specified.

→ NVList project page

7 thoughts on “NVList v3.3

    • The Android port is better. NVList can switch between different pre-scaled image sets based on the window size which lets you make a 1920×1080 game that runs at full speed (in 1024×576) on a netbook. In general, the scripting in NVList is more low level (mostly just plain Lua code) but that saves you from having to use a confusing mix of Ren’Py+Python+ATL+screen language.

      There are a bunch of other small advantages — an automatic resource optimizer, asynchronous texture uploads, no need to define images before using them, shader support, etc.

  1. This engine seems great so far. I’m not a fan of Ren’Py’s scripting language, so I started studying Japanese VN Engines, and almost began using LiveMaker, until I found this engine. I just have a few questions about the system:

    *Is it possible to customize the backlog for PC games?
    If possible, I’d like to design the backlog to fit my game’s UI theme, including the scrollbar. (The current backlog works great for android games, but it’s a bit offputting for PC games.)

    *Is there a way for me to get rid of the advanced options in the toolbar? While playing a game made with NVList, I goofed up and toyed with the image options, breaking the game completely. I had to uninstall and start over. I’m afraid that other players will do this to my game, and it might be a problem for them if they paid for my game.

    I hope these questions don’t sound like complaints, since I actually enjoy this engine so far. I understand that these issues might just be a problem to me alone, and I was just curious to know if it was possible to change these in the engine itself, or if there are any plans to change this in the future, or possibly add customization options(like backlog and toolbar options) for creators to choose from during the scripting process. There might not be any plans for this, but I was just wondering about it.

    • >*Is it possible to customize the backlog for PC games?
      Yes. The easiest way would be to just change the images it uses (img/gui/textlog.png). You can also directly edit the code that defines the backlog: script/screens.lua (TextLogScreen).

      >*Is there a way for me to get rid of the advanced options in the toolbar?
      Not currently. I want to eventually get rid of the whole menu bar in favor of an in-engine config screen, but it hasn’t been a priority yet. For the time being, if one of your users screws up you can tell them to delete save/prefs.ini

  2. I’m sorry guys, but WTF is this? Appears every time when I try to rebuild my project:
    Waiting for process to start…

    Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre8\lib\tools.jar

    I installed JRE and JDK both, but nothing has happened. Help pls.

Leave a comment

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>