Login | Register
Review: Jugglor 2.1

Review: Jugglor 2.1

Now here's a classic! Jugglor was one of the first projector tools I heard of, but I'm sad to say it still looks much like what I saw back then. A lot of new features have been added, but the way it works is painfully alike how it used to be back in 1999.

Jugglor is one of several programs developed by 3rd Eye Solutions / FlashJester. It's easy to see that they have focused their efforts on other products than Jugglor lately. Their new flagship software is called Slick TV, and it can be used to build quite fancy multimedia applications, but it's not a Projector tool for Flash.

This tool has a base set of only 52 functions. It is "Not for the hardcore Flash Actionscript developers", but rather designers that want to add functionality easily. To add i.e. joystick support, you just check the joystick option when exporting. No scripting required. There are however additional options for extending the product. To get functionality that is anywhere near Zinc or SWF Studio, you will have to buy plugins for almost $500! In addition, you'll need Jugglor 2.1 Pro at $396, so that's almost $900 alltogether. You will get a lot of cool features for all those dollars, but we are not sure it will be worth it considering how complex it is to program Jugglor.

Ease of use
The tool and how you use it is like the other tools. To make a file in Jugglor you create the SWF, adding any FSCommands you want to use. You may also export a projector file and open that in Jugglor for some extra speed. You open the SWF or EXE in the Jugglor program itself and set a lot of options. Some of these screens are really complex, but there is help available.

image

The problem is that the help files are really sketchy in some areas and the Commands are fairly complex. Jugglor still relies on FSCommands and they are so complex in syntax that a special program, the FS (Command) Generator is included to help you creating them.

image

In addition, the examples for each entry varies for the kind of projectors being Juggled, ActiveX (SWF) or Projector (EXE). On the Jugglor website there are examples on how to use some of the commands in context, but that doesn't help for the entries that have no examples. Just to highlight the complexity, this function needs to be added for the jSystem plugin to work:

function EncodeForJugglor(x) {
Result = ""; trace(x);
for (i=0; i
c = x.substr(i, 1);
if ((c == '.') or (c>='a') and (c<='z') or (c>='A') and (c<='Z')) {
Result += c;
} else {
Result += '_'+ord(c).toString(16);
}
}
return Result;
}



We understand that this is needed, but why must we care about such a thing? The help file goes on to say that if you use these commands with a Projector (EXE), you will also have to add this script:

function GetVars()
{
LoadVariables('EngineVars.txt',_root);
}
setInterval(GetVars,55);



This is not programmer friendly at all, but it does work when done properly. When it doesn't work, you bump into yet another problem: debugging. Here you are back to use text fields for displaying the results of commands. There are no trace-commands or something similar.

Since FSCommands are asyncronus, you need to create and delete MovieClips that have enterFrame events listening to see if the result of a command is there. This cumbersome process makes for a lot of unwanted coding and is a nightmare to maintain.

FlashJester should really look more at what their competitors do. It's not too hard to make a set of ActionScript-like commands that wraps all the FSCommands and adds event support so that the complexity (or rather mess) is hidden from the user. Why not spend time on that rather than tweaking transparency for Windows 95? The help files actually state "It has taken well over 12 months for the Flashjester Jugglor development team to develop and test this feature and we have finally got it." We'd rather they have spent that time updating the tool to make it easier to code in, but as they say - programmers is not what they are targeting.

Support
Jugglor is supported via both email and a forum. Questions asked in the forums are usually answered really prompt, so you'll get help when you get stuck. If the syntax of commands where more understandable, they could probably save weeks of support work as many of the questions in their forums are around how commands work.

Platform Support (PC)
Jugglor is PC only, but claim they have the only tool to support all the current Windows platforms (95/98/ME/NT/2000/XP). Claiming that Windows 95 is a current platform is a rather bold claim as browser stats now tell that Win95 is below 1% for all users. Spendig time to support Win95 is praiseworthy, but we could do well without it.

The EXE files produced with Jugglor are really small. Our file-opening example comes in at only 465Kb and that's including the Flash plugin. The closest competitor is mProjector at 722Kb, so if file size is important, Jugglor could be your tool. Jugglor is also rumored to create very stable projectors for all platforms. We actually experienced a crash while working with the tool, but that may have been due to a malformed FSCommand or something like that.

Extensibility
Jugglor can be extended via special plugins available separately. These cost between $59 and $149 and this is the thing we really dislike about the product. Other vendors give you all these functions as part of the base product at a much lower price. If you got all the plugins for free as part of the Pro version of Jugglor, it would compare better to the other tools in this showdown.

File Opening Example
We had great problems getting this example to work and we had to resort to email support. As you can see from the final script, the MovieClips used to monitor variables make the file much messier than i.e. mProjectors.

import mx.controls.TextArea;
import mx.controls.Button;
// GUI
var tArea:TextArea;
var tButt:Button;
// Setup text field for displaying the text
tArea = createClassObject(TextArea, "my_tf", 999, {html:true, border:true, _y:40});
tArea.setSize(300, 160);
// Make a Browse-button
tButt = createClassObject(Button, "my_tb", 998, {label:"Browse", _x:10, _y:10});
tButt.clickHandler = function() {
browseForFile();
}
//This fuction is required for projects using a projector file
function EncodeForJugglor(x) {
Result = ""; trace(x);
for (i=0; i
c = x.substr(i, 1);
if ((c == '.') or (c>='a') and (c<='z') or (c>='A') and (c<='Z')) {
Result += c;
} else {
Result += '_'+ord(c).toString(16);
}
}
return Result;
}
// Functions used
function loadFile():Void
{
var openParams:String = "";
fscommand('exec',_root.EncodeForJugglor( 'j:sy:loadfromfile:"'+FileName+'",ResultVar' ));
_root.createEmptyMovieClip("waitForLoad",_root.getNextHighestDepth());
_root.waitForLoad.onEnterFrame = function(){
i++;
if(ResultVar != "" ){
_root.myOnLoad();
this.onEnterFrame = undefined;
}
}
}
function myOnLoad():Void
{
tArea.text = ResultVar;
}
function browseForFile():Void
{
fscommand("exec", _root.EncodeForJugglor('j:sy:SelectFile:Open,"Text
file|*.txt",FileName'));
_root.createEmptyMovieClip("waitForFile",_root.getNextHighestDepth());
_root.waitForFile.onEnterFrame = function(){
if(String(FileName).substr(0,1) != ':' ){
_root.loadFile();
this.onEnterFrame = undefined;
}
}
}



Compare this example to the other tools and you will see how much extra code is required when you're using Jugglor.

Full Application Example - M&Ms desktop toy
A screenmate that "lives" on the desktop made for M&Ms. The screenmate provides movie news once a day, or when requested. The content comes from different sources. (our own M&Ms website but also the movie theatres website). In the case study at FlashJesters own site, the producer, BBDO Belgium, states what we've also learned in this review "The only inconvenience was maybe that the documentation of the Jugglor FScommand wasn't always very clear. Maybe some clear examples would help."
Read the case here
Read more about Jugglor at FlashJester

 

Rate this article
 

 

Comments

No comments for this page.

Submit a comment

Only registered members can comment. Click the link at the top of this page to register.