HackerTrans
TopNewTrendsCommentsPastAskShowJobs

Nialna

no profile record

Submissions

Narrat – A narrative game engine made in TypeScript and Vue.js

get-narrat.com
3 points·by Nialna·hace 5 años·1 comments

Migrating a blog from Jekyll to Gatsby with the jamstack

liana.one
1 points·by Nialna·hace 5 años·0 comments

Show HN: Rust CLI tool for migrating Jekyll blog posts to a Gatsby website

github.com
3 points·by Nialna·hace 5 años·1 comments

Narrat – Narrative HTML5 game engine, inspired by renpy and Disco Elysium

github.com
2 points·by Nialna·hace 5 años·2 comments

comments

Nialna
·hace 5 años·discuss
I've been working on this for a while. This engine is being developped alongside a narrative RPG made in it by someone else as a use case.

It is similar to ren'py in syntax to write dialogue, but is made for web and has a layout structure similar to games like Disco Elysium, as opposed to the standard visual novel layout of dialog boxes at the bottom of the screen.

The game it's currently being used on has 30,000 words in it and has been working fine so far so I think the engine is pretty useable in its current state. Documentation is still pretty early though.

Some of the features:

* Flexible dialog writing with branching and conditions

* Multiple script files support with labels and jumps to organise script writing

* Skill check rolls for branching or in choice options (Feature still early, needs a UI for viewing skills and creating characters)

* Multiple speaking characters support with icons and poses

* Custom variables in scripts to create flags or other data the game needs to track

* Seamless saving and reloading

* Visual game UI on the side of the dialog with buttons that can be used to trigger scripts (this effectively allows you to create game maps, or point n click style gameplay

* Sound and music support

* Delays between script lines for effect

* Electron build to turn the game into a pc/mac/linux app (the template already has it setup and ready to use)
Nialna
·hace 5 años·discuss
Well it already happens when big wildfires happen and people have dangerous air around for days. In the short term, keeping everything closed and using masks is probably enough.

If you mean as a permanent thing, you'd need houses to start having filters on air intake and no openable windows, with instead all air being circulated by the place that has a filter
Nialna
·hace 5 años·discuss
I was working on updating my personal dev blog which used to be on Jekyll and wanted to try out Gatsby for increased flexibility in making my own things. Along the way I realised that the format for Markdown posts in Jekyll blogs is slightly different from the one used in Gatsby (Jekyll relies on a specific filename format for slugs and dates, whereas Gatbsy reads this data from frontmatter blocks in the markdown header).

I figured it would be a good occasion to write a small Rust project (I'm very new to Rust) so I made a tool to batch update my posts, with loads of options to choose exactly how to migrate the files. Pretty impressed with the speed of Rust as it processes about 30 blog posts instantly (despite having a regex that scans the entire file), I'm almost sure if I made a node.js tools it would have been slower.

It's published on cargo and can be installed from there, I've also been trying to use Trust (https://github.com/japaric/trust) to automatically generate binaries in CI for people to install, although the deployment isn't working yet.
Nialna
·hace 5 años·discuss
This engine is still in early phase and not quite production ready, but you can already make complex narrative games with it. The scripting language is strongly inspired by renpy so it should feel familiar to anyone who's used it.

It is built in TypeScript with Vue.js and so games made with it run directly on the web. It uses VueX to manage the entire state of the game.

The scripting language is turing complete (taking advantage of JavaScript for some features like conditions), also has saving and loading, labels for separating game script in files and functions, and features like skill checks.