Enu 0.1.99
Enu 0.1.99 has been released! This is the final release before 0.2! Maybe!
I've also released a new demo video that uses Enu to create Inky: Isolation
, a simple survival game that stars Inky, the blue ghost from Pac-Man. https://youtu.be/9e9sLsmsu_o
0.1.99 is a big release, with a bunch of features that I wasn't planning to implement until after 0.2 that generally make it a better teaching tool. These include:
-
Signs. Text that can be shown in world, or displayed in the UI. These are written in a subset of markdown and support headers, lists, bold/italic text, links and inline code blocks. Notably absent are tables and multiple header sizes, but these will be added when I need them. Additionally, links can include
nim://
urls, which take code that gets evaluated in the context of the script that created the sign. This +strformat
makes it possible to create rudimentary dynamic UIs that can be used for things like menus. -
Tutorials. It's now possible to set
lock = true
andvisible = false
in a script which will make the object non selectable/editable/visible by default (this can be overridden by enablinggod_mode
in the enu config file). Combined with signs above, it's now possible to create tutorials in Enu that can respond to player actions, hide/show objects, and offer information to the player, and by settinglock = true
we can prevent the player from breaking anything by mistake. When enu is loaded for the first time a tutorial will be shown that explains the basics of the UI, and has the player code a robot to navigate a very simple maze. For 0.2 I plan to add tutorials around variables, loop, and conditionals, and post 0.2 there will be a tutorial that guides the player through the creation of theInky: Isolation
game. If you already have an Enu world on the go the tutorial won't be loaded, but you can see it by removing theworld
field fromconfig.json
, or setting its value totutorial-1
. -
Lots of new commands and object properties. The docs have fallen out of date unfortunately, but I'll make sure they're current for 0.2.
Still to do for 0.2:
-
Lots of bug fixes.
-
Update the docs.
-
Better testing of the Linux and Windows builds.
-
Automated builds.
-
An easy way to load worlds outside of the Enu data directory, to allow projects to be downloaded from Github.
-
An arrow that shows where the current draw position is, and which way
forward
will go. -
Make the draw position the center rotation point for an object, allowing the rotation point to be changed. Right now it will always rotate around the first block you drop.
And post 0.2:
-
Move script execution off the main thread.
-
An inventory.
-
More object types.
-
Pathfinding/navigation.
-
Custom block colors and textures.
And post-post 0.2:
- Multiplayer
Please report any bugs. I'm going to try to get some kind of forum up soon, but for now email [email protected] if you have questions. Thanks!