Download the ISOengine 1.3.1 Update

* Click Here to
Take a look at the new shockwave MUS Beta Demo made with ISOstudio!


March 03, 2005

Free ISOengine update and new behaviors.

What is the update?

  • A work around for inconsistent the blocked tile issue.
  • Some stability fixed for the ISOengine
  • New multiple selection avatar behavior
  • New avatar behavior

The "blocked tile issue" it was not supposed to be a bug, but it does produce inconsistent results. The explanation is below:

If clicked in a blocked tile the engine looks for "near free nodes" (only the closer 8 nodes) and then switches the end tile to this tile (if there is on). After that this tile is set to closed so next time you click on the same tile it will not recognize it as "useful" and gets another tile near this one, and so on.

For example let’s say the avatar is on tile 10 (just using some number for this expample).

Then the user clicks in tile 20, which is closed so the engine looks around for free tiles (or nodes) and the first free node it get it node 21, so the avatar moves to tile 21 and when it reaches the tile, it is set to be closed.

So far so good, but now the user clicks again in tile 20 (which is closed) and the engine looks for free nodes again. The firs time it returned tile 21 but now it is occupied by the avatar, and as such it is closed, so the engine return tile 23. Now tile 21 is released (set to open again) and the avatar moves to tile 23.

And so on.

That’s why a user may see the avatar going and coming when click on the same closed tile.

We have been looking into that and figure out a workaround, so there is a new engine version 1.3.1

Now the function looks like

pISOengine.IIgetPath (startLoc, endLoc, pPathInterpolation, my , true )

The new parameters my and the lastone ( boolean ) where added to make it a little more flexible and also to fix this issue.

The boolean (last parameter) tells the engine if it should or not look for "near free nodes" when click on a closed node. Default is true . So if you set it to false then if you click on a closed node the engine will return an empty path []

The my parameter is a fixed parameter. It tells the engine which avatar is in that tile, so if the engine looks for free nodes it will omit this tile if the call was from the same avatar, but if other avatar it looking for a free node it will use it just as any other closed node and return a free node near it.

The function to get the near free nodes ONLY looks in the nearest 8 directions, so if you click in a tile surrounded by more than one "row-col" of closed nodes it will return an empty pah []. This is just to make it fats, because if you have a lot of closed nodes then it can take a while to find the open node and then the engine needs to trace the path and all of that may produce a delay.  

This issue was found by a custome and as a result we will open a new section in the ISOinteractive.com site to post all the users ideas and scripts, so it may be available soon.