PDA

View Full Version : SNES Programming Language = SIGIL


Producer
09-11-2007, 12:02 AM
Hello, i hope that is the correct area for this Topic and everybody understand my (bad?) english,

I found at the Web Informations about a Programming Language Exclusively for the SNES / SFC from Squaresoft (now Square Enix).
They develop Titles how "Secret of Evermore", "Seiken Densetsu 2 & 3" (bzw. "Secret of Mana 1 & 2")...
I read often that all SNES Games programmed in 65816 ASM but Square had a Script / Programming Language that maked coding for Super Famicom much easier. (Developed by Brian Fehdrau)
This called SIGIL (Squares Interpreted Game Intelligence Language)..

Here is a link with a Article from the German "Club Nintendo Magazin" equivalent to "Nintendo Power" from America who Doug Smith (Lead Programmer of Secret of Evermore) and George Sinfield (Idea and Story of Secret of Evermore) was interviewed.

The importants of the Article:
Club Nintendo: Doesn't one have to be computer science genius, in order to be able to program a video game?

DS: Naturally we have a quantity of computer genius with Square also like for example Brian Fehdrau. It has a programming the language with some S.I.G.I.L. (Squares Interpreted Game Intelligence LANGUAGE) develops. S.I.G.I.L it is so simple that even laymen can program small expirations of play themselves within shortest time.

Gs: [..] The S.I.G.I.L. - Instructions are ajar against the English language. For example one could instruct move 3 step right of the play figure with the instruction to go to 3 steps to the right. S.I.G.I.L is particularly useful for the Texter very [...]

Had anybody other Infos about Sigil?

Had anybody the SIGIL SDK? :oh:

Or know anybody other Sources/Documents about SIGIL?

Links:

Article translated by google (http://translate.google.com/translate?u=http%3A%2F%2Fwww.classic-zone.de%2Fartikel.php%3Fid%3D2&langpair=de%7Cen&hl=de&ie=UTF-8&oe=UTF-8&prev=%2Flanguage_tools)

Orignal Article in German (http://www.classic-zone.de/artikel.php?id=2)

Dr_Slump
09-11-2007, 01:31 AM
Never heard of it really. Is it a real language or just an RPG engine they called like that?

CrAzY
09-11-2007, 01:40 AM
Wow! This is very interesting!:thumbsup: Sorry I cant add anything to this, but this is the first time I have ever heard of this... Hopefully someone comes in knowing more... :nod:

Calpis
09-11-2007, 01:40 AM
As the name suggests it's probably a language for in-game objects only.

<perhaps offtopic>To have a reasonably fast game on slow platforms you have to optimize, back in SNES days that meant rewriting assembly. Today you can use very good code profilers. I don't know why everyone wants to program old consoles in high level languages so badly. Old consoles without standard libraries need the game code to carry out endless hardware interaction and the easiest way to bit-bang is to use assembly. Assembly really isn't that difficult to learn, look at all the idiots on ROM hacking sites.

kammedo
09-11-2007, 02:47 AM
Having hacked some Squaresoft games i can tell theres some kind of base engine for managing the graphics / scripts. Its like some kind of interpreted language actually. It could be the result of a compiling based on a script skeleton. The square games i saw used some kind of scripting values to denote the game execution, but thats usual in games. Probably you are referring to the engine used for the square games, not the programming language itself?

Producer
09-12-2007, 12:15 AM
As the name suggests it's probably a language for in-game objects only.
<perhaps offtopic>To have a reasonably fast game on slow platforms you have to optimize, back in SNES days that meant rewriting assembly. Today you can use very good code profilers. I don't know why everyone wants to program old consoles in high level languages so badly. Old consoles without standard libraries need the game code to carry out endless hardware interaction and the easiest way to bit-bang is to use assembly. Assembly really isn't that difficult to learn, look at all the idiots on ROM hacking sites.
I think so, too.
Used for handling graphics/animations and sounds (To example to move NPCs or Player)... Naturally is SIGIL not a alternative to assembler but it can make Logical decision a lot of easier and the developmenttime for a big project (not for Demoscene ROMs) many shorter. I referring to the engine.
I thing SIGIL is less intresting for develop SNES Game separate many more to learn more about Coding Technics from Squaresoft (or Gamedeveloper from SNES generally).

But how it seems has here nobody documents or files to this engine, or? :shrug:

Calpis
09-12-2007, 02:05 AM
Stuff like this isn't documented because it can't really be extracted from games. To a person just looking at the game code, there is no such thing as SIGIL, just machine instructions and data.

d4s
09-12-2007, 05:58 AM
hi und willkommen im forum!

it has already been established to a degree that this so-called programming language is actually some kind of script-parser that enables storywriters without any programming knowledge to create scripted events within the game and edit the game`s flow.

in fact, the interview you quoted gives it right away:

Zum Beispiel könnte man mit dem Befehl Move 3 Steps Right der Spielfigur befehlen, 3 Schritte nach rechts zu gehen. S.I.G.I.L. ist besonders für die Texter sehr nützlich - andere Spielelemente wie Grafiken, Gegner und Wertungssystem werden auch auf herkömmliche Weise programmiert.

bold part: the remaining game mechanics such as graphics, enemies etc. are programmed in traditional fashion.(=in assembler)

as kammedo said, these events appear as special commands scattered throughout the games dialogue script.
while square may have had a fancy tool to write these scripts, reverse-engineering these script commands isnt too difficult.

you might want to have a look at temporal flux, a chrono trigger editor.
might give you a rough idea of what you can and cant do with the script.
http://geigercount.net/crypt/

Producer
09-12-2007, 04:30 PM
you might want to have a look at temporal flux, a chrono trigger editor.
might give you a rough idea of what you can and cant do with the script.
http://geigercount.net/crypt/

thx for the link :thumbsup: - Its looks very intresstant…