Japanese English
BETA-8 has been released. (1/25/20)
BETA-7 has been released. (11/28/19)
BETA-6 has been released. (10/12/19)
BETA-5a has been released. (8/14/19)
BETA-5 has been released.(8/13/19)
BETA-4 has been released.(7/15/19)
Changed the layout of the reference to make it easier to read.(6/22/19)
BETA-3 has been released.(6/2/19)
Post an article "How to reduce input for Tyranoscript's label-and-jump operation" to Qiita.com(5/26/19)
Post an article "How to play TyranoScript sample and use an example" to Qiita.com(5/14/19)
Post an article "A background of general purpose visual programming tool development" to Qiita.com(5/6/19)
BETA-2 has been released.(5/5/19)
Improved JavaScript sample (4/20/19)
BETA-1 has been released.(4/16/19)
Added "15 puzzle" Javascript sample. (4/14/19)

What is StateGo?

StataGo is a visual programming tool that performs both [Process Flow Design] and [Program Implementation].

Proceed as follows.

1. Create nodes that are called state has a branch section, and connect with arrows to construct process flow.
2. Write data or program in the data table of each state to implement processing details.
3. Finally, generate real code with a customizable conversion template.

At design time, we strongly support with information mask, thumbnail input, document link, and simple user interface.

At the time of implementation, 【Improvement to various programming languages】 and 【Program input assistance and customizable conversion function】 improve code accuracy, safety and productivity.

In other words, StateGo is a general-purpose and versatile visual programming tool that combines both processing flow design and implementation, and can be customized for multi-programming languages.

Below is the explanation for each point.

An ideal visual programming tool that professional computer programmers want.

So far visual programming tools were only for beginner study or used for limited fields or specified languages. Therefore, it was hard for professional computer programmers to use visual programming tools for all projects because they have to respond to high level needs and complicated specifications. This visual programming tool can be used for professional programming and solve many problems in your projects with benefit of visualizing. This visual programming tool is for general and universal purposes.

Many programing languages can be visualized.

This tool is not for a specific programming language. For example, JavaScript that is the highest demand programming language, C# that is a popular language used for casual games, TyranoScript that is a famous graphic novel game language used by individual game developers, C++ that requires strict coding, and even the most primitive machine assembler etc. This tool is theoretically applicable for any programming language.

Coexistence both conventional and visualized programming.

This tool can be used in conjunction with conventional programming. For example, ...
・ After creating the whole transition with this tool, individual processing is implemented by conventional programming.
・ Create high difficulty parts with this tool and implement individual processing by conventional programming.
・ Use this tool in parts with many pattern repeats.
It is not necessary to implement the primitive loop processing seen in other visual programming tools. You should write the source code, if it is better than visual programming. Visualize in a necessary place, otherwise do programming as usual. It's a tool to facilitate learning / understanding how to use each strength. You will not waste the programmers' skills or resources.

Intuitive GUI

Basic operation can be performed with only the mouse with one button, it will not disturb your work.
`Help browsing`, `commenting`, `image adding` and `reference linking input` help.

Excel Sheets for output.

The data generated by this tool is recorded on the excel sheet. Using the Excel sheet, you can list the data of each state. It is possible to raise the precision of the program by using the functions of Excel such as data search, comparison and extraction.

Live Edit

Click on the state (or node), you can view the source code after conversion. While changing template, macro and data, you can always check what kind of source code is output, without waiting for conversion. You can ensure the quality of the output program.

Flexible data placement

This tool expresses the state of a program as one node. You can freely design the data that the state holds. For example,
・ Write numerical values and text
・ Write program code
・ Write a conditional expression and so on.
You can freely design according to your purpose.

Document Oriented

It is possible to match documents and implementations that have been a longtime dream. Create a document using this tool in the upper process, then implement it in the lower process. Since it is modified from the document when changing the request, it is possible to match the product and the document during the whole term of the project.

Improve productivity, quality and maintainability

The benefits of visualization can be shared throughout the team. The editor of this tool can be operated even with lower IT literacy people. Therefore, it is possible to ask another person for simple processing such as change of transition, simple copy, value modification etc. The visualized flow makes it possible for many coworkers to review and detect problems. Because it is document oriented, it enables early detection of modification points during maintenance.


This tool can be used for free.



Windows 8/10
Excel Office 365 (recommend)

BETA-8 version 0.63.4255

■ Added key operation ■

Shortcuts feature has been added.

Please refer the shortcuts list to know its detail.

Shortcuts list

■ Added specific feature for Mouse right button and left button respectively. ■

Single Mouse Button Mode has beed defined as the operation that has been used to.
Multiple Mouse Button Mode was added. Different functions for left and right mouse buttons are specified.

Please refer the mouse operation list to know its detail.
Mouse operation list
See the picture below to know where to change the mode.

■ Assist to move the focus ■

It was added the assist feature to move the focus of state.
  • Added new menu items of moving the focus to inflow states or outflow states to the context menu.
  • Added moving the focus to inflow and outflow states by using cursor keys.
  • Added new select context menu for moving the focus in a case of multiple destination.

  • ■ Added the changing history panel ■

    You may confirm backward and forward changing operation.

    ■ Added the focus record panel ■

    You may confirm backward and forward focus operation.

    ■ Improving zoom feature ■

    Zoom labels on the windows menu bar has been improved.
    Current scale shows as red mark on the labels.

    ■ The right edge of Window menu bar shows what is changes ■

    You may know which viewing group, positin or value to change.
    Therefore, you can decide to save or not.

    ■ Added changing state type mark ■

    Marks of State type (Start|End|Loop|Gosub e.t.c) can be changed.
    We understand what state is easily.

    ■ Fixed bugs ■

    Fixed bugs.

    Download BETA-8 Non-installer-type

    BETA-7 version 0.62.11315

    ■ Improvement of "Create New Form" ■

    "Create New Form" has been improved to make it easier to use.

    ■ Improvement of Starter-kit Configuration files. ■

    It allows to use the editor's output files as starter-kit configuration files.
    ■ Added "create a state by purpose" feature. ■

    It allows to create a state by your purpose.
    Each state with purpose attaches a mark for its purpose.
    ■ Added "Gosub" feature. ■

    It allows to use "Gosub" feature to call a subroutine.
    ■ Added "Loop" feature. ■

    It allows to use "Loop" feature that calls a subroutine during looping.
    ■ Improvement of programming language starter-kits. ■

    New starter kit uses "Gosub","Loop", "Branch" as sample use.
    The followings are released.

    - Angular Typescript
    - Bash
    - C
    - C++
    - C#
    - Unity C#
    - Excel VBA
    - Javascript
    - Tyranoscript
    - Visual Vask
    - Win batch

    Note : The previous starter-kits are still available.

    ■ Others. ■

    Purified features.
    Fixed bugs.

    Download BETA-7 Non-installer-type

    BETA-6 version 0.61.9335

    ■ Change of saved data format and internal data structure ■

    The saved data was reviewed and changed to save in PSGG file in text format, and the internal data was changed to improve the conversion efficiency.

    Specifically, the Excel file is no longer a required file and all data is saved in the psgg file.

    In order to maintain the previous compatibility, Excel file input / output is provided as an option.

    The benefits of this change are:

    1. The difference can be confirmed with GIT etc. by the save file in text format.

    2. Significantly reduced conversion time
    Transformation with more than 300 states in about 2 seconds with 10 times speedup

    3. Remove Excel file from the minimum configuration
    Excel file is now an option, so the minimum configuration is both PSGG files and output sources, improving file management convenience

    4. Bitmap bug fixes
    ➡Thumbnail can be copied.


    ■ Provides converter to new saved data format ■

    A converter is provided to convert the existing data (Excel file) to the new saved data format.
    The converter starts automatically when the file to be opened is in the previous format.

    ■ Improved convenience for state usage ■

    There are three uses for states: states, built-in, and comments. So far, the usage has been changed in the state editor after the state is created.

    In this change, it changed so that a state might be created according to a use.
    Changes after creation are changed from the context menu.

    ■ Improved template display ■

    Implemented filter display according to template usage.

    The template information is optimized by the filter.

    Each time you click on the template display panel, it changes from source to filter template to all templates.

    We are planning to use it to narrow down and display information on subroutines and loop processing that are scheduled soon.

    ■ Implementing item list export / import ■

    Provides a mechanism to easily reflect new items and item information (help and input methods) to another StateGo.

    An import / export button has been prepared in the item list editing window.

    ■ Bug fixes ■

    -Eliminates hang when searching


    ■ Other ■

    -Restores the optimal display when editing items

    -Show comments for group currently displayed in window title bar

    -Add reverse button when selecting items

    Download BETA-6 Non-installer-type

    BETA-5a version 0.55.15644

    8/13/19 BETA-5
    ■ About Start dialog ■
    Added convenience features for the start dialog.
    1) Stopped to copy helpweb.html
    StateGo opens helpweb.html in the starterkit directory.

    2) New features are hiding at beginning..

    Clicking "collapse" on the bottom right of the dialog causes to display new features.

    3) Input a part of file name and searcgh
    Inputting a part of file name causes to find the file in the history list. Finding process will search all folders upper and lower using the history list.
    ➡This feature is very convenient because of searching using from one character of the filename.

    4) Dropping a file and open.
    Dropping StrateGo relating files(*.psgg, *.xlsx and generated files) causes to open StateGo.
    ➡It is convenient when you want to open from generated file.

    5) Added Simple path input feature when creating new state machine.

    ➡I made it easy for beginners to use.

    ■ About focus ■
    The focusing target feature enhanced.

    1) Clicking a state on treeview causes to focus its state on State Edit Panel.

    2) Leaving a group causes to focus the leaving group when viewing the upper group.

    3) Focus on states outside the group.

    4) Added "Focus the specified state" feature in State Select Dialog.

    5) Clicking the result of Find Dialog causes to focus its state.

    ■ Others ■
    1) Enlarged mouse reaction zone in the outflow part of the state.

    2) Added "Open Source" to state context menu.

    3) Item description added to the state edit panel.

    4) Adjusted colors。

    5) Added $statemachine$ macro.

    6) Added a feature that the tool records its StateGo file path in generated source.

    ■ Fixed bugs ■
    1) Fixed the problem that comments in a group disappear when copying and other group bugs
    ➡I'm sorry your inconvenience.

    8/13/19 BETA-5A
    ※Beta5a was Released because of a specification bug that disable to input comment.

    Download BETA-5a Non-installer-type

    BETA-4 version 0.54.1225

    ・Using mouse wheel causes enlarging and shurinking State Edit Panel's image.
    ・Clicking the question marks ()in the tool causes opening browser with the url to its description.
    ・Embed node's color and comment node's color were changed.
    ・Solved about the group node copy problem.
    ・Trying opening the same StateGo file that has been already opened causes focusing the existing window.
    ・Use external editor to edit item's text.
    You can use features of external editors (Visual Stduio etc.)

    Download BETA-4 Non-installer-type

    BETA-3 version 0.53.793

    ・Input assist feature in Branch Edit was added. 
    Handling of IF / ELSE IF / ELSE at branch editing has been simplified.
    Since it is limited automatically which of IF / ELSE IF / ELSE can be input, you can suppress grammatical errors. (reference movie)

    ・A case that it was hung at changing font size.
    ・Tyranoscript Starter Kit was improved.

    Download BETA-3 Non-installer-type

    BETA-2 version 0.52.682

    ・A case that it was hung at the starting has been fixed.
    ・English language mode should been saved.
    ・Fixed the layout disorder after Windows update.

    Download BETA-2 Non-installer-type

    BETA-1 version 0.51.1337

    ・Implemented copy and paste.
    Therefore, I obsleted odrinary copy and export & import.
    ・fixed bugs

    Download BETA-1 Non-installer-type

    PRE-BETA-14 version 0.23.1204

    Added more Japanese messages
    Added a function to jump using the editor's line specification to the source location of the relevant state
    Added special correspondence at the time of VisualStudio regarding the above functions(Added corresponding option to editor specification dialog)
    Added StateGo file search function
    Stopped Serial function
    Repaired displaying histories at the start
    Made height of comment field to non-fixed
    Added changing font size function for comments and contents
    Fixed bugs

    Download PRE-BETA-14 Non-installer-type

    PRE-BETA-13 version 0.22.1266

    Additional function to state group focused by control key + click
    Message correction
    Provision of executable file for non-installer

    Download PRE-BETA-13 Non-installer-type

    PRE-BETA-12b version 0.21.12861

    Fixed the bug that grouping can not be done under certain conditions.
    Added content hiding option for "basestate".
    Added comment input when branching.
    Changed branch display field to comment priority display.
    Added hide comment option in branch display field.
    Change the clear button in the text edit box.
    Added the string comparison for the template directive "<<<?".
    Activate "Code" when the value of item "hoge" equals to ""
    Fixed bugs in pre-beta-12. (20/1/2019)
    Fixed bugs in pre-beta-12a. (22/1/2019)

    Download PRE-BETA-12b

    PRE-BETA-11a version 0.20.2681

    - Added a feature that registering serial allows to remove advertisement.
    Note that a serial for pre-beta is offered.
    How to register pre-beta serial code.
    - Added the input item edit feature.
    "Item name", "help text", "input method" and "on or off at in edit box" can be modifiable. (See.)
    - This tool name was changed from SYN-G-GEN to StateGo.
    "Application name", "Icon" and "Splash screen" were chaneted.
    - Enhancement of "basestate feature"
    * Added "<name of basestate>" at the head of the state name in the box.
    * Additonally, provided abbreviated name "<>" with the option.
    * Fixed its related bugs.
    - Enhancement of "gosubstate feature"
    * When using "gosubstate", it displays "gosub:state name" in the box, then allow to edit by arrow moving.
    * Fixed its related bugs.
    - Changed custom line color's default.
    Display a gray arrow when its distination's name contains "BACTO".
    - Adjusted the edit value dialog position.
    - Fixed that thumbnails cannot be deleted.
    - Fixed hang bugs.
    - Fixed hang bug of pre-beta-11

    Download PRE-BETA-11a


    Unity Tutorial  Unity Menu Sample  Unity Game Sample  Unity Simple Animation Sample  Angular Typescript Sample  Javascript Sample  Java Sample  Delphi Object Pascal Sample  Python sample  PHP Sample  Windows batch Sample  C Sample  Bash Sample  Tyranoscript Sample  Excel VBA Sample  Visual Basic Sample  C++ Sample  Swift Sample