forio Toggle navigation

Forio SimLang: Migrating from Simulate

Simulate is the previous version of Forio's platform. Like Epicenter, Simulate allows creation of projects whose models were written in Forio SimLang.

To migrate your SimLang model from Simulate to Epicenter,

  • Save your model from your Simulate account.
    • In Simulate, under the Model tab, copy the equations.
    • Paste them into a new text file.
    • Name the file with the extension ".eqn", e.g. "My Model.eqn".
  • Upload your .eqn file to the Model folder of a project in your new Epicenter account.
  • Create an interface for your project.

In most cases, the migration process is just that simple! See the SimLang overview page for additional details on these steps.

However, there are minor differences between SimLang as implemented in Simulate and SimLang as implemented in Epicenter. Specifically, a few properties and functions available in SimLang as implemented in Simulate are NOT recognized in SimLang as implemented in Epicenter. If not recognized, they are ignored. If these properties or functions are used in your model, you may need to make minor alterations to your model as part of the migration process.

Properties Specific to Simulate

The following model, variable, or decision properties are available in SimLang as implemented in Simulate but are NOT recognized in SimLang as implemented in Epicenter. If these properties exist in a model in Epicenter, they will not cause errors — they are simply ignored.

Most of these properties are variable or decision properties that relate directly to how the variable or decision is displayed. In Epicenter, the model and the user interface for each project are less tightly coupled than they are in Simulate, so you should set display properties in the user interface itself.

  • DecisionMax
  • DecisionMin
  • Documentation
  • GraphMax
  • GraphMin
  • InitialSteps
  • Label
  • MultiPlayerRolesRange: In Epicenter, multiplayer worlds and their roles are configured in the Epicenter authoring interface, in the Multiplayer Settings section of the Project Settings, or via the MultiPlayer API. They are not configured in the model directly.
  • NumberFormat
  • SaveFinalResult
  • SaveResult: In Epicenter, mark a decision or variable to be saved (and available to show comparisons between runs) by using the save property in the context file.
  • StartVariable
  • StepsPerInterval
  • StepsPerSave: In Epicenter, mark how frequently a decision or variable is saved by using the savePer property in the model context file.
  • TimeFormat
  • TimeSeries
  • UseDecisionMax
  • UseDecisionMin
  • UseGraphMax
  • UseGraphMin

Functions Specific to Simulate

The following functions are available in SimLang as implemented in Simulate but are NOT recognized in SimLang as implemented in Epicenter. If these functions exist in a model in Epicenter, they will not cause errors — they are simply ignored.

Most of these functions were originally included in Simulate only for legacy or compatibility reasons.

A few of these functions relate to multiplayer worlds (games). In Epicenter, multiplayer worlds and their roles are configured in the Epicenter authoring interface, in the Multiplayer Settings section of the Project Settings, or via MultiPlayer API. They are not configured in the model directly.

  • CHIDIST
  • CHIINV
  • MULTIPLAYER
  • MULTIPLAYERROLE
  • MULTIPLAYERROLECOUNT
  • MULTIPLAYERTEAM
  • SD_PULSE
  • SD_RAMP
  • SD_SAMPLE
  • SD_SMOOTH
  • SD_STEP
  • SD_V_PULSE
  • SD_V_SMOOTH
  • SD_V_SMOOTH3
  • V_PULSE
  • V_SMOOTH
  • V_SMOOTH3