Extensions (Click)

From Mario Fan Games Galaxy Wiki
Revision as of 21:29, 5 August 2006 by Xgoff (talk | contribs)

Extensions are segments of code added to an application in modular nature to increase its capabilities. Extensions help expand the functionality of The Games Factory and Multimedia Fusion by providing extra events, conditions, and actions. A list follows:

Graphical

Lens

The Lens Object is a Multimedia Fusion extention that allows the user to distort an area of the frame as if it was behind glass, either zooming in like a magnifying glass, or refracting. The Lens Object features many customizable options, allowing effects such as reflecting another location of the screen or the illusion of ripples on the screen, however, it takes a proper understanding to get the right effect, and it can cause much slowdown if used at a decently large size, or in high count. A possible alternative for some of the effects one may want this for is the Perspective Object, ironically by the same creator as the Lens Object. The Perspective object is usually much faster but at the cost of not allowing custom distortion maps.

Mode 7

The Mode 7 Object provides a "Mode 7" type of effect. Many complain about its low framerates, but its performance can be increased greatly by disabling interpolation and mip-mapping.

Perspective

The Perspective Object is an extension that allows users to distort the perspective of a location on the frame, though it appears to not act properly if not fully on screen. Unlike the Lens Object, the Perspective Object uses much less power, but also has that much more limitations. The effects it can create include Perspective, which gives a Mode 7 esqe flattening effect, Panorama, which gives an impressive kind of "barrel" type effect, such as one segment in The Legend of Zelda: The Minish Cap, Sine Wave, an effect comparable to the effect used in water levels in games such as Yoshi's Island, and Custom, which lets the user control how each "line" of the object is distorted. While impressive, these effects are somewhat lacking in customization, for example, the Sine Wave can be used for a heat wave or underwater distortion, however, the center of the Sine Wave appears hardly distorted while the outer areas are highly distorted. Skillful use of this object can produce a striking 3D illusion.

Sound and Music

DMC

Direct Media Control object, allowing one to load Modules, Samples, or Streams and play a large number of them simultaneously and across frames, as well as modifying the system's volume settings.

ModFx

See above

ModFusion

See above

Data Storage

Array

Arrays store data in a grid-like fashion. They come in three types: 1D arrays that can store a single "run" of data in a line, 2D arrays that store a "grid" of data, and 3D arrays that store a "cube" of data. Values or strings can be written to an X position in a 1D array, XY positions in a 2D array, and XYZ positions in a 3D array. Arrays are highly useful for storing information such as external level formats, where the grid-like nature of a 2D array can store tile information exactly where it would be located in-game, and a 3D array can additionally store Z-depth data. 1D arrays can be used to store player input, which can then be reloaded as replay data. Arrays, especially 3D arrays, can become quite large very quickly, so it is important to use them with care.

INI

INI objects allow rudimentary saving of data. However, the data can easily be changed in a text editor unless encryption is used. The INI object does not include encryption, so it has to be done externally. Due to limitations in Windows, INI objects are limited to 64KB in size.

SaveGame

The Savegame object is similar to the INI Object, but is more complex to use. Unlike INI, it automatically saves the data in such a way that it can't be edited easily.

Functional

FastLoop

Fastloop helps speed up certain events by running them many times per MMF/TGF loop. Thus, they are useful for static engines, where they are normally used to push objects out of floors and walls without an overlap being seen. Fastloops are also useful when many objects need to be created or positioned at once. The Fastloop extension assigns an ID number for each loop that is run. MMF 1.5 includes built-in Fastloops, however these use assigned ID strings instead.

Platform Object

Replaces the built-in platform movement, and provides a quick and easy alternative to static engines. The Platform object gives the user many features to adjust, such as acceleration, gravity, one-way platform emulation, and slope detection.

Pop-Up Window Object

Allows games to display a pop-up window after a certain event is triggered. Available for both TGF and MMF, the pop-up window object isn't used often in games, mainly just for RPGs or the occasional sprite lib.

See Also