Foldit Wiki
Advertisement

The scriptlog is the output file for a Foldit recipe written in the Lua programming language.

The scriptlog is created in the install directory for the Foldit client, for example c:\Foldit.

The scriptlog is named:

scriptlog.*trackname*.xml

where *trackname* is the name of the current track, and is "default" by default.

Unless a different track is used, the scriptlog is named "scriptlog.default.xml". Without a change of track, the output from one recipe overwrites the output of a previous recipe. When running multiple clients from a single installation directory, use of tracks is necessary to keep recipe output separate.

The scriptlog contains the output of the print command.

The scriptlog may also contain XML tags generated by reporting section functions. The reporting section functions are recipe.SectionStart, recipe.ReportStatus, and recipe.SectionEnd. These functions are optional.

The lines generated by print and the reporting section calls also appear in the recipe output window.

The filename extension "xml" indicates the scriptlog is an XML file. The contents of recipe output window appear in a "ScriptOutput" tag.

The scriptlog also has a "Head" tag which contains the following tags:

  • ScriptName - the name of recipe
  • ScriptDesc - the description of the recipe
  • MacroID - the "node number" of the recipe (if shared)
  • MacroRevisionID - the revision number of the recipe
  • ParentID - the "node number" of the parent recipe
  • ParentRevisionID - the revision number of the parent recipe

The values are ScriptName and ScriptDesc are taken from the cookbook if the recipe has been saved locally. These fields are blank for an unsaved recipe run from the Foldit recipe editor.

The MacroID is available for recipes that have been shared. Shared recipes are uploaded to the Foldit website and receive a "node number". Each recipe has its on page on fold.it, and the node number is part of the address.

For example, a recipe with Macro ID 102599 has this page:

https://fold.it/portal/recipe/102599

The MacroRevisionID appears to be a revision number. Foldit recipe sharing allows the same recipe to be shared repeatedly. The MacroRevisionID probably identifies different versions of a recipe, but it's not shown on the Foldit website, and there's no known way to retrieve different versions of a recipe. The value of MacroRevisionID only appears in the scriptlog.

The ParentID is similar to the MacroID. Foldit can track parent-child relationships between recipes, and these are shown on the Foldit website. It appears that ParentID and ParentRevisionID are always zero in current recipe output, however.

All of tags in scriptlog are in the Foldit namespace, which is established in by the first tag:

<Foldit:Script xmlns:Foldit="http://fold.it/scriptlog">

As usual, the URL is just a formality, and returns a 404 "page not found" error.u

The namespace "Foldit:" appears on all the XML tags in the scriptlog:

<Foldit:MacroID>102599</Foldit:MacroID>
<Foldit:MacroRevisionID>203541</Foldit:MacroRevisionID>
Advertisement