EMFF Documentation

Quick Installation Guide

  1. Download and extract the latest ZIP file from https://sourceforge.net/project/showfiles.php?group_id=121753
  2. Use the Code Generator to create your own HTML code
  3. Copy the approriate skin file (e.g. "emff_standard.swf") from the "skins" directory to your website directory
  4. Have fun! :-)

Modifying or creating your own skins

The new EMFF 0.5 has a pretty easy skin system - every skin has its own directory in the "skins" directory, e.g. all the source files for the "standard" skin are in the directory called "standard".
In order to modify or create new skins you have to install a simple build system (no commercial tool needed, all programs are free software).

Installing the build system

  1. Install the latest Java Runtime Environment (JRE) or the latest Java Development Kit (JDK).
  2. Download and extract the latest version of MTASC (Linux users: Check if a prebuild package is available for your distribution - if so, just install it).
  3. Download and extract the latest version of swfmill (again, Linux users may have it easier).
  4. Make sure the binaries java, mtasc and swfmill are in a directory of your PATH environment variable. That is important because otherwise the build program will not find the programs! Windows users may want to read this article.
  5. Check if the binaries are accessible via console (from any directory) - e.g. just type the commands java, mtasc and swfmill on your console. The programs should be called and give standard help information. If not please return to step 4.

First test

You installed the build system? Great, then we can do the next steps:

  1. Open a console and change into the "tools" directory from the place where you uncompressed the EMFF zip file.
  2. Type in the command java -cp . CreateSkin. If Java is correctly installed the build program should give out a simple help information.
  3. Type in the command java -cp . CreateSkin standard. If an error occurs you did not install the build system correctly. If no error occurs: Congratulations, your build system is ready! :-)

Understanding the build system

You are now ready to modify existing skins or creating your own. The java program "CreateSkin" (that you have met already) reads the files in a skin directory and calls the MTASC and swfmill binaries - which means less work for you.
The build system does the following things:

  1. It searches for the file "SKIN" (uppercase letters!) in all possible directories. If this file is missing the skin will not be found.
  2. It looks for a file "skin.swf" in the appropriate skin directory. If it does not exist, it calls swfmill to create it. swfmill needs an input XML file which is called "skin.xml".
  3. Then it calls MTASC to compile the ActionScript 2.0 code from the file "Skin.as". The swf file from step 2 is now filled with the compilation of MTASC.
  4. The final SWF file (in our example: "emff_standard.swf") is then placed in the "skins" directory, where all other SWF files lie.

Of course you may want to recreate all skins if you made global changes to the EMFF code. That's just a simple command away:
java -cp . CreateSkin ALL

Working on

To modify an existing skin, simply edit the files in its directory and call the command java -cp . CreateSkin <skinname> in the "tools" directory. Note that some programming knowlegde is needed if you want to change the behaviour of a skin.
The following documentations can be useful if you go further:

To create your own skin, make a copy of an existing one and name the new directory to a name you want (only lower case letters, numbers and the character "_" are allowed). Edit the "SKIN" file to your needs.

Happy working! Please send me a copy of your skin - if it looks great I will add it to the official skin selection! :-D


The EMFF and all other contents (like the Code Generator and this documentation) are licensed under the GPL.
You can read this license in the file COPYING and online at http://www.gnu.org/licenses/gpl.html.

You are allowed to use the EMFF in uncommercial and commercial projects (if you do not modify the EMFF itself).