designMaster sessions college
color bar
design interviews
career center
software & design tips
design publications

Macromedia Flash Tips, Tricks & Tutorials


Guides stay behind
Remember that guide layers that are not used for motion tweens are not exported with the file, and consequently they do not add to the final file size. This makes them useful for notes or image samples that may be used for reference or communicating with others also working on the file. In addition, you can convert a normal layer to a guide layer to hide its contents while testing or trying out alternatives.

Referrer issues
Usually an HTML link will send additional data inside the header of its request. This often includes the referrer information, which in turn includes the page where the link was activated. This information is used by hosting companies to track from which sites hits are originating.

When using an http request (for example, through the use of loadMovie(), getURL() or loadVariables()) from a Flash SWF, the "referrer" information is not included in the header. The SWF format does not support HTTP referrer information when sending http requests. Right now there is no workaround for this situation, but we expect Adobe to find a solution soon.

Component sizes
Although adding a component increases the size of a file, adding additional ones does not always do so. This is because of the way Macromedia components are constructed; they share a lot of common code. Therefore, if you plan to use one component, you can often save time by creating the basics with premade components. Premades are also a good quick way to prototype a project. Either way, you should still optimize when you have finished.

Converting symbols
When using the Pencil, Oval, Rectangle or Line tool to create shapes or draw objects, remember to convert them to symbol (F8) before applying a motion tween, otherwise it will not work.

Save space
If a Flash file has a background color, the file size can be reduced by not using a background layer filled with that color, but rather by choosing a background color in the Modify>Movie dialog.

Smoother animations
The Easing control, in the Properties palette, is an effective way of bringing two, or more objects together in an animation. Slowing down the objects as they approach can often give the animation a more "crafted" appearance. Positive values will cause objects’ motion to decelerate and negative values will cause them to speed up.


Flash to PowerPoint
If you ever have the need to insert Flash movies into a PowerPoint presentation. There is a simple six step tutorial, using the Shockwave Flash Object, on how to do this, that can be found at

Target labels, not numbers
When writing ActionScripts you should always target frame labels, rather than frame numbers, as the labels will automatically update as the timeline gets changed.

View movies in debug mode
With movies embedded within other movie objects, especially with multiple embedded objects it is very difficult to see what is happening in debug mode, as this will only give you access to the topmost movie. To access the local variables in any movie object make that scene viewable and then press Command/Ctrl+Option/Alt+Enter to go into that scene's debug mode.

Link to frame not text
If the text in a button is the active link, it can sometimes be difficult to hit the link, as spaces between letter become inactive. A much better idea is to make a larger hit area. Draw your text and make it into a button symbol.

Select the button and choose "Edit Symbol". Select the frame labeled "Hit" and create a new keyframe (F6). Draw a rectangle in that frame. You can draw the rectangle to accurately surround the text using onion skinning to guide you. Turn onion skinning on (2nd button under the timeline) and select "onion all" (the 4th button). Turn off onion skinning afterwards.

Showing JPEG
Remember that in Flash MX the LoadMovie() action can also load external .jpg files.

No loops
When creating buttons for a rollover movie that are not meant to loop, make sure there is a stop() action in the last frame. This will stop the loop. There are two good ways to make animated buttons. The first is to create a movie clip containing all the animations, using frame labels and stop() actions to separate the different parts on the time line. Then create an invisible button and target the movie clip for different states of the invisible button. The second way, for MX users is simply to create a movie clip button.

Working online as well as locally
URL (Windows>Action) remember that you must use the http:// prefix for the link to work. It may work well without it on your local machine, but will need it when the SWF is on-line.

Flash Usability
In a report on Flash usability, the Nielsen Norman Group identifies several basic issues relating to Web-based functionality. The tests examined the way people use applications to achieve tasks. The report contains many guidelines that will make Flash applications more aligned with human behavior and thus easier to use. The writers suggest that sites must be immediately understandable and that requirements for the Web are very strict. They estimate that companies can double the return on their investment in Flash applications if they improve the quality of the user experience and overcome the usability problems they have identified. The report is filled with screenshots, showing designs that worked well for users as well as designs that caused them usability problems. ñApplications have to go much further than simply answering questions. They need features„the right ones, and not too many„ presented in ways that empower users. This is a much tougher design challenge than simply providing information. Flash applications require a new level of usability commensurate with their status as ephemeral applications. A focus on simplicity will be key, as will a much deeper understanding of users' needs than has characterized the first decade of Web design.î If Flash is being used for site interfaces, it is worth reading this report carefully. The full 188-page report is available for download.

Turn it on, not off
Many users find background music annoying, especially people surfing while they should be working, so if you have a music track, create an on/off button and keep the default to off.

Label everything
It is always a good idea to include a text label with every button and icon, then uses will know what they are about to do, and will not need to randomly click to see what happens.

Button storage
If you find that you are using the same buttons over and over, or you are designing a variety of sites and movies for many clients, consider creating a document that contains only buttons, and add to it when you create variations or completely new ones. This way you can also keep experiments and reuse them at a later time. Just open this file and drag and drop buttons onto new sites. Alternatively you can place them into a shared library, but this may be a little harder to see the variety.

Snapping on and off
When you have Snap to Pixels on, pressing the C key will temporarily turn off pixel snapping; turn it back on with the same key. Pressing X will hide and reveal the pixel grid.

Masking advice
When making masks, if you have two layers on your timeline, right-click on the first layer and select Mask. You will find that the second layer automatically becomes masked. If you have more than two layers, only the layer that acts as the mask and the layer below it will be masked.

Flash, Wacom and Tiger
If you find that Flash crashes with Tiger installed it probably needs to have an updated driver from Wacom. This has happened to many tablet users. Driver 4.78 will not work with OS 10.4. You will need to install version 4.79-2. This applies to users of the Intuos, Graphire, and Cintiq tablets.

Making SWFs smaller
The space-consuming manner in which Flash movies are embedded within an HTML page, which has been with us since Flash 4, includes using two main tags to embed the movie„once for Internet Explorer and once for Netscape, et al. You can extend the <object> tag (IE) and remove the <embed> (Netscape) and utilize the Flash Player ability to respond to content with a MIME type, resulting in much leaner code. Read the whole article at

Keeping scripts visible
When you've entered a frame script, it will disappear when you select a different frame. To prevent this from happening and keep it visible, simply click on the Pin ActiveScript button at the bottom of the script pane.

Tween jerk
If your tweening is a little jerky, you can always add frames to the tween afterward. At the default rate of 12 fps, the regular four frames may end up passing too quickly and leave a jerky motion. To add extra frames, select one of the internal frames, not a start or end frame, and add a frame. You can use F5 (Insert>Timeline>Frame) to quickly add frames until the action becomes smooth. Of course, if you select multiple frames and use F5, they will all be copied.

Learn to animate (Images)
If you want tutorials about animating, there is a comprehensive Breeze demo on the Macromedia site that shows just about every thing you need to know to animate cartoon characters. You can find the online tutorial at

The tutorial goes on for over an hour, so make yourself comfortable with a pen and paper. The seemingly simple animation that is being discussed can be seen at

Consecutive movies
When you want to make a second SWF play directly after one clip plays, in the last frame of the loaded movie use:

This _parent statement in the loaded movie tells it to go one level up and then perform the goto statement. But scene names are very unreliable because they don’t exist once you compile the swf. Instead use a frame label. Label the next SWF something like
and then use

Stick to lower-case
Because ActionScript 2.0 is case sensitive, it is not wise to name anything with capital letters. Addressbutton is different from addressbutton, which is different again from AddressButton. This can lead to a lot of confusion, which sometimes can take hours of troubleshooting. So to be safe, try to limit all names to lowercase. This will also make it easier to see uppercase mistakes.

sessions college