Guest
Feb 23, 2012, 1:53 am UTCHome arrow Miscellaneous Programs arrow DragonSpeak Compile Verifier
header image
DragonSpeak Compile Verifier
Written by Dream Dancer   
Mar 27, 2011 at 12:53 PM

This will not address some of the functionality of the program, mainly the emit tagger part of the program, that can be found in this post here. This post is going to address the Dragonspeak Line counter part and the DragonSpeak Compile Verifier.

I decided from the onset in constructing this program that it was going to be a tad more strict with the syntax over the Furcadia compiler, as to better aid the user in locating errors in the code. Hence, while it will accept 0:9 as a proper command, it will flag 0:9 1:4 5:8 7 as an error because it's working on the assumption that every command in the script is on it's own line. As a side result, if you forget to fill in a parameter for any command, well, any command that expects a number, it will also raise an error over what the Furcadia compiler does, and that is the Furcadia compiler will up and eat the next available number for the missing parameter.

When you tell the program to Validate DS, it will open two windows, one will contain the actual script lines of the DragonSpeak file, with dsid numbers and the line number from the file, and the Conversion Results window. The Conversion window has 4 tabs in it, the DSB tab, which will contain a representative results of the compiler's output, and tabs with all the %variables, ~strings, and the compressed textlines from the file.

Overall, the DSB tab is darn useless, except for those interested in seeing what exactly goes into making the file. However the conversion dialog also has a menu selection: Compare DSB To Actual. Using this requires you to know where in your computer your temp folder for your uploaded dream is, and which one of the temp's is the dream with the dsb for the dragonspeak you're comparing the results of my program against.

This program DOES NOT open encrypted files nor decode a compiled DSB. If that's what you're looking for, go away.

If the program reports errors with the compare, but the DragonSpeak works as you expect, then it's entirely possible that your syntax in the file differs enough from normal to where I'm compilng your file wrong, let me know so that I can add that usage form into the compiler's structure. Otherwise, if you're using this program to locate errors with your file, then there's a right click option in the DSB window that permits you to jump to the offending line in the DS Line Index's window to see what the actual unencoded line is. (Likewise, just to be complete, there's also a kin right click menu to jump to the line in the DSB window from the Line Index list.)

There's also a Goto Line window available with CTRL+G, works as long as one of the windows is open. Goto Line uses the absolute line index of the commands, not the line index from the file. The Line Index window provides a line number for you to use when going through the actual file with the DragonSpeak editor itself.

In the other three tabs, there's also right click menu options for the list items there to help you in finding the variables and text lines used in your script. Plus the Text Lines tab also has an option to show the original text of the line for any of the compressed lines. Or any of the text lines for that matter due to the limited amount of space available in the darn list.

Compressed Text Lines: When any variables are crunched into the numeric equivalents for uploading.

This text ~messagethree variable %first to all
becomes
This ~8 variable %16 to all
for example.

The conversion of variable names into numbered indices into the variable tables does include the usage of array variables, plus the compiler will warn you on usage of an array designated variable as a normal variable. That's only a warning, no ill effects using the variable that way will result from doing that. But it will also warn you if you forget to use the [#] part of an array variable on first use.

When searching through the Line Index window for stuff, CTRL+UpArrow will jump to the previous instance, and CTRL+DownArrow will jump to the next instance. F3 will also jump to the next instance. In either case, the search will wrap top to bottom and visa versa. Search is Case Sensitive, just like the Furcadia's Case Sensitive nature for variables. This can be over-ridden with the use of the Find dialog, there's an option switch there to ignore case. CTRL+F to get that.

And finally, there's also a compare option to compare my Text Line generation against an actual text file as made by the Furcadia program itself.

If anything seems unclear, then please let me know about it in this Furcadia Forums Thread.

DragonSpeak Verifier.

Last Updated ( Mar 29, 2011 at 10:29 PM )
Next>
header image