Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
0

Make your own interactive stories with the Elm Narrative Engine

A topic by enegames created Apr 07, 2021 Views: 323 Replies: 6
Viewing posts 1 to 3

Announcing the debut of the visual editor for the Elm Narrative Engine, a tool for making non-linear interactive stories, right in the browser.  With the visual editor you don't need to write any code, and you can collaborate in real time with others and test your game as you write it.  If you have used Twine or ChoiceScript or Ink or Inform 7 or similar tools before, give this tool a shot!

https://enegames.itch.io/elm-narrative-engine


Moderator

OMG, it's finally here? I just have to try this! Woo, it's been way too long.

Awesome, let me know how it goes for you.

Hi, thanks, it is awesome and possibilities are endless ! I tried playing around with the elm narrative engine and I wonder how you would model locations only reachable / visible from other locations without having to change the view logic, only the rules ? (I tried with a CAVE.location.hidden.neighbor_location=CAVE_HIDDEN_EXIT) but then I cannot figure out how to create a rule that makes only neighboring locations visible. Maybe you do have to change the view logic since one has to "view" locations connected to current location ?

Actually, I think I got it, I just need to query 

"*.location.neighbor_location=(link PLAYER.current_location)"

sorry for bothering you

Hi Clouddie!

Happy to hear you are enjoying the engine :)

This is a great question, and it sounds like you came up with a good solution too.  If you have any other questions, feel free to post them on https://enegames.itch.io/elm-narrative-engine/community so others can learn from too.  Also, I'd love to see what you make if you end up with something you'd like to share, and don't hesitate to reach out with more questions.

Here are a few more thoughts related to your question which may or may not be useful:

  • In my own games I ultimately would use a query very much like what you wrote in part of the view logic.  I'd like to add a setting where you can supply a header and query to show up in the view, instead of the limited defaults of the current theme.
  • The .hidden tag is a great way to toggle what should show up, but the default theme doesn't currently support that.  I think I should add it.  For now you could toggle the .location tag on and off to make locations appear or disappear.
  • In a custom game, the engine supports adding other component data to your entities, and I have used this before to model how locations fit together.
  • If you have a location that is linked to more than one other location, you'll get stuck, because links are only one-to-one.  You could use something like .north, .south, .east, .west to get around this.  I'm considering making a new time of link that is one-to-many, but it adds a fair amount of complications and I've gotten along without it in my games so far.
  • If you are toggling views on and off in your rules, just take care to remember to do the same if you have a specific rule that would override your generic "moving around" rule.  This is the primary reason I use a custom view query or separate component data in my own custom games.  I have plans soon to make it easier to create your own custom game shell.

Hi ! Thanks for your answer, helps a lot ! I hope to build a game soon, although time is a scarce commodity !