[Tool] Chronicler - ChoiceScript Visual Code Editor


Hey, sorry I missed your messages.
I literally graduate next week and become a free man.
As such, I’ve been focused on my education and all the homework and tests that entails. Which essentially means I haven’t checked my email or done much of anything on the interwebs for the past couple weeks or so.

Regarding your issue, I suppose I really should add a note in the main topic.
Essentially the Mac issues boil down to the fact that I do not own one and had to rely on a generous forumite to help me build it.
Turns out that Mac is extremely picky about it’s programs, and Chronicler only seemed to run on their specific system. I posted the download anyway, and some people can run it without issue, but many have reported a similar error message.

Unfortunately, as I pointed out, I have no way of testing or debugging it myself and thus can’t offer much in the way of support.

However, it may be possible for you to run the Linux version. There should be several tutorials on the internet for running Linux apps on Mac.

Your other option is to simply remain patient for a few more months while I finish the new web version of Chronicler. It should be a much more stable program and run in any web browser, and hence any system.

I apologize that there is not much more I can do at the moment…

I hope to resume posting regular updates regarding the new program in the relatively near future.
Rest assured all that work is not abandoned and I fully intend to finish what I started!

  • BenSeawalker


Does Chronicler for Apple only work on a certain kind of OSX?


@enrique.arcilla, see my previous post.


I’m glad you replied! I’m sorry for taking time from your busy schedule, I hope your graduation goes well!

As for the issue, no need to apologize, It’s reassuring that you replied and it’s someone who genuinely cares, so I think I’ll just wait, I’m impatient but for something like Chronicler, I would say it would be worth the time, it’s truly an amazing app and I thank you for making something like this! It’s more than enough that you tried to make it available for Mac and got some people to access it.

Nonetheless, continue the hard-work, I’ll be cheering you on in the sidelines lol, but don’t go overboard, and once again, good luck on your graduation!


Sounds like a really great tool


Oof, somehow the Mac version does not work for me.

It just tells me “Chronicler-Next cannot be opened because of a problem.” whenever I try to open it.


Sorry, didn’t realized that Ephemeral posted the same thing earlier.


Graduation turned out just fine, thanks to your cheering no doubt :blush:

@Boodini no problem, it’s mainly my fault for the lack of communication.

I’ve resumed work on Chronicler Online, but right now I’m helping several family members move to a different State, I’ve also got jobs to apply for, so I can’t guarantee regular updates just yet. It does feel good to be working on a project that personally interests me again, and hey, I guess I won’t have to spend time on homework assignments again unless I decide to go for my masters at some point, but I don’t plan on that anytime in the near future.

Again, thanks for your patience while I make Chronicler Online the absolute best product possible


Hey all, I’ve started working on the new flowchart.

Originally I intended it to automatically layout the nodes for you. In other words, there wouldn’t be any interactivity other than moving the screen around and clicking on nodes to edit them. I intended this to save time on the part of the author.

Unfortunately, problems arise due to the fact that Choicescript allows for branching across scenes and looping paths back to previous nodes.
There doesn’t currently seem to exist an algorithm for laying out such a complex tree.
Undaunted, I came up with my own algorithm that simply sorts the nodes into rows below their “lowest” parent. It also ignores looping paths so it doesn’t get stuck infinitely moving nodes below each other.
It actually works fairly well and may actually look good when I figure out how to horizontally space the nodes.
It also doesn’t currently know how to handle nodes that don’t have any connections.
However, it just looks plain ugly with lines being drawn all over the screen and crossing each other and generally creating a confusing mass of information. There does exist algorithms to reroute lines so that they don’t cross each other, but it will take time to implement that and I can’t be sure the result will actually look any better.

Considering it more, I’m leaning towards making the flowchart interactive like it is in the desktop version. I plan on making it much more intuitive though.

  • Double clicking an empty spot will create a new node at that location
  • Nodes can be dragged to the desired location
    Simply clicking on them will take you to the node editor
  • Nodes can be themed with a color, although to simplify things there will probably only be 5 or 6 colors to choose from rather than a full color picker palette.
  • Nodes will be circular in shape with labeled connection handles around the edges.
  • Connection handles are draggable to connect them to other nodes.
  • Double clicking a handle will remove the connection.

I’m considering combining all scenes into the same flowchart view. They will be areas surrounding the nodes with a darker background and border. Scene names will be listed at the top where the scene currently in view will have it’s name highlighted. Clicking a scene name will jump to its starter node.
Zooming further out will hide the nodes and scenes themselves will be draggable. They will also have “default connection” handles that can be attached to another scene. This will be what happens to nodes without a connection leading out of them (unless the node specifies that it is an *ending). I’m not sure this will be more intuitive or not, but it eliminates the problem of visually representing connections between nodes in different scenes.

As I mentioned before, nodes themselves are merely containers for story text and choicescript actions that end in a link of some kind (*goto/*pagebreak, *if, *choice, etc.)
They will have a searchable “toolbox” on the side containing choicescript text and actions. Each one will have a link to the relevant wiki page for ease of learning and reference.
Components in the toolbox can be dragged into the node’s list or double clicked to immediately append them to the end.

Anyway, that’s it for the progress update. Let me know what you think about these ideas for the new interface. A simple like will be a vote otherwise post alternative suggestions :slight_smile:



I’d suggest allowing the user to add consolidation points onto the graph, kind of game-flow teleports. They wouldn’t have any code effect, like gotos or choices (although many goto/label pairs could correspond to them); their only purpose would be to simplify the graph visually.

Here’s the graph I made while I was writing the first chapter of Machinations, trying to keep it all straight. The boxes represented choices; the green circles are the consolidation points. Using them reduced the number of lines running all over the place, and also helped keep the gameplay flowing (mostly) from top to bottom.



That’s actually a fantastic idea. I may reconsider the automated layout again and use those “consolidation points” to represent loops and links to other scenes.
I thinking that I’ll just add it as a button the user can push to auto-sort their layout if they so desire, but still give them the opportunity to manually edit it.


Interface idea: click (or double-click) on a consolidation point input to jump to and select the corresponding output point.


Just tossing ideas around in my head, I’m wondering if I’m going about nodes in the wrong way.
Really, what truly makes IF what it is is the choices that are made.
So what if the new program was entirely based around branches? By that I mean rather than choices being a component in a node, the choice itself is the major component.

For example: you click on a node in the graph, a radial menu pops up with “plus”, “edit”, and “delete” options.
Press “plus” and a larger radial menu pops up with the type of branch (goto, choice, if).
Select choice and a new choice node is automatically aligned below it with the textbox highlighted for immediate editing.
Type in the text of the choice then hit the “plus” button again. This time it doesn’t ask you for the type of branch, it simply appends another choice for you to fill out (which you do).
Select the first choice and hit the “edit” button. You are taken to the editing screen where you can change the text of the choice and add story text and choicescript actions as components.
Hit the save or cancel buttons and you are returned to the flowchart view.
From there you can add sub-choices to those choices and so forth.

Eventually you want to return to the main path so you select the final choice and add a goto branch. You can either choose an existing node to link to or add a new one.
If you add a new one then a label branch is added, you can then select the other choices and give them goto branches to the new label branch.

It may look something like this:

Inside each of those choices would be unique story text and actions such as setting variables.

I think this kind of hierarchical structure makes more sense and puts the focus on the branches of the story where it belongs. It also makes the flowchart more useful.


That type of flowchart would help non-programmers visualize the CS bedrock code involved and allow them to relate mechanics to their story better.


Makes a lot of sense to me.

Maybe add a little button to press on each *choice to expand/collapse all of its #options together: