3DARCADE / EMULAXIAN FRONTEND 0.91
by Peter
Vogels, aka )p(,
mailto:peter@i-modernist.com
license: free
for personal non commercial and non public use…
website emulaxian cabinet
http://www.i-modernist.com/emulaxian
frontend support website
http://3darcade.mameworld.net
lastest version of this document
http://3darcade.mameworld.net/frontend/fereadme.htm
Introduction
Quote from the
first intro text of the first version of the frontend:
"...I wanted
to create an arcade cabinet for mame that kept the feel of the original Galaxian
cabinet. Also I wanted to achieve that the end result would feel as an organic
whole, were everything fits together. The best way to realize this was, in my
opinion, to create my own frontend that takes up the Galaxian/Emulaxian theme.
Therefore I use the side-art of the cabinet as a backdrop in the frontend. And
the Galaxians are everywhere...and yes... they come and fly by in formation...and
yes... you can shoot them... ;-) Also I made a banner that morphs from Galaxian
to Emulaxian when you go from the gamelist selection screen to the game selection
screen and from Emulaxian to Galaxian when you go from the game select screen
to the gamelist selection screen were the Galaxians fly in and you have to shoot
one to select a gamelist. ..."
OK that was the
beginning... Emulaxian/fe-3darcade has grown into a very complete and fully
skinnable and rotable frontend that can launch just about anything. It
features powerful
and fully customizable search and filter functions to find games fast.
What makes it unique besides the sheer number of media that it supports
to make your skins are the menu styles it can use. Besides the normal listbox
with screenshots/cab layout you have a game like menu were you shoot at
sprites to select menu items. And then there are the two virtual arcade
interfaces were you can walk around in rooms filled with 3d models of cabs,
select mp3's on a working jukebox and watch some movies on a movie screen.
These arcades are also fully customizable...create your own personal arcade!
^
1. Overview, setup and use.
1.1 Overview
The frontend features 4 different menu
types to represent menu items:
The 3darcade menu interface
where you can select games and other menu items in a virtual arcade. There
are two variants of this menu type, the cylinder arcade and the fps arcade:
the cylinder arcade
In the cylinder 3d
arcade interface games are placed in a circle with the camera facing towards
them. When the camera rotates a cabinet is added in the direction the camera
is moved
and removed from the other side. This way the user can rotate indefinitely
through any size gamelist. The user can adjust his view of the virtual
arcade by changing the camera
position.
Besides rotating horizontally for selecting games he can rotate the camera
vertically, move the camera up and down and most important zoom in and
out on
the cabinets. This version of the 3d arcade works best as a flexible frontend
in combination with all the jump, search and filter features of the frontend.
It also can be used as an ultracade like wheel interface. See
here for
an example.

the fps arcade
The second 3d arcade
interface uses a fps style interface. The user walks
around in a virtual room representing an arcade filled with games, recreating
the experience of being in a real arcade. Each fps arcade setup
contains a fixed, although adjustable, maximum number of games that can
be displayed at the same time. The user can replace the current
selection of games from the gamelist that is displayed with
the next or previous
set of games and cycle through the complete list. This method is a lot
less flexible
and powerful then
the methods use to select games in the other
interfaces. To overcome this issue
this interface is closely integrated with the other menu types. For
example select a different set of games by using filters, for example the
filter random
games can be used to get a random selection from the current gamelist
in the fps arcade. Integration with the other menu types is further enhanced
by the teleporter which will put the users right in front of the currently
selected game when you switch back to the fps arcade...a great way to find games fast even in very big fps arcades.

The listbox menu
type displays menu items in a listbox and supports two variants. The paging
menu variant displays menu items from a list in pages of 16 text items,
with
a 3d model or two bitmaps (for mame a games marquee and screenshot) representing
the highlighted item. The scrolling menu variant displays menu items in
a linear
scrolling list.

The shooting menu
type were you shoot
at galaxians to select a menu item. Only the first 8 items from a list can
be
shown. In
principle this
menu can be replaced by other menus made in flash that have been designed
to correctly communicate with the frontend.
The texture overlay menu type
works like the paging menu and is overlayed on a texture on a 3d model in the arcade. It supports all search and filter functions of the fe just like the paging menu. This can be any texture on any model. It is used to select mp3's, movies and to display the gamelist (gl), gamelist selection (gs) and selectionset selection (ss) menus inside the 3d environment to function as a gate to new arcade environments or to launch games. Select a menu item with a mouse double click or with the
kstartgame (default=1) key. Exit the overlay menu with a
right mousebutton click or with the
kwhichmenu (default=6) key.

For the game selection menu (gl)
the user can switch on the fly between cylinder arcade, fps arcade and
listbox representations
of the list. The default menu system to be used for the game selection
menu (gl) as the fe boots is setup in the general configuration file. Which
menu system to use for the gamelist selection menu (gs) and the selectionset
selection
menu (ss) is
setup in the skin cfg file for the current skin.
Frontend features
The frontend is completely skinnable. And I mean
everything, every visible object be it backdrop bitmaps, text, video,
the 3d arcade sprite, even the
shooting menu...whatever… All have their parameters like the file to use,
position, scale, blend etc. exposed in a cfg file in the skins folder.
Skins can easily
be created and adjusted with the internal active skinner. Just go into
skinner mode and all sprites become draggable with
the
mouse. Move, resize and rotate them on the fly.
And double clicking a sprite will popup a menu with all detailed options
for
that sprite.
Both arcade interfaces have a skinnable
animated background, floor and ceiling. Each gamelist can have it’s own!
Create your
own arcade! Animations can easily be created from a set of
images in the internal cfg utility. The fps style arcade also has the option to use besides the cylinder,
a custom model as the arcade environment. This can be anything from a simple
box to a complete reproduction of an arcade with additional lighting and
animations. You can also grab cabs and move them around
to create your own layouts…the new positions will be saved automatically
after you hit the movecabs key again... You can also define additional
rules which 3d model to show when no model was matched the normal way. For example
use the same model for all horizontal games, all driving games etc. when no specific
model was found. And you can get rid of my emulaxian model and set another model
as the default. These rules are defined for each arcade in its arcade
cfg file.
The models can also have, in the
listbox, arcade and textureoverlay interfaces, video with sound on the
screenshot texture. This works very cool with videos from attract modes
or in game gameplay. It really brings the 3d models come alive. You can
use real media streams (*.rm files) and any format windows mediaplayer
supports. In addition to video on the screenshot texture
of the selected model the frontend can also cycle
between bitmaps on the other models which for example can be used to create
the illusion of attractmodes running on all models in the arcade environments.
Search and filter games
just like you would enter high scores. Filters can be added by the user based
on any entry
in the gamelist. It is also used to select a set of 1,10,25,50 or 100 random
games from the current gamelist. And for sorting games alphabetically, by times played and by duration played.
Gamelists for mame can automatically be generated with the internal parser. The gamelist for mame can also be created with Sortinfo a great
program by Robert Palmqvist and can have any name and size. I use favorites,
originals, platform, shooter, maze, puzzle, fighter, sports, and misc. I also
added support to switch between two gamelists with a key press. I use it for
switching between favorites and all games and between all original games in
a category (maze) and all games in a category (maze_all). For other emulators
you have to create your own...the internal parser can create gamelists from the file names in a directory and from crc’s
for visual pinball games.
For each mame game the frontend can display a game
info screen with the marquee, flyer, cabinet (picture, video or quicktime
vr movie), title, year, manufacturer, controllers, etc. Also category information
from a catver.ini file and the information for that game from mame's history.dat.
For other emulators you can put in the gamelists whatever you want to be displayed on the game info screen. For other emulators you can also display a text or basic html file
with for example game manuals instead of the history.dat file. When using the
listbox system for selecting selectionsets and gamelists you get the same
kind
of info screen, here you can put for example the mame readme file and pictures
of consoles etc. Or anything else remember everything and every screen are
individually
skinnable... All the menus have also a help screen that can among others be
used to show pictures of control panel layouts for each game retrieved from
the help path setup in the emulator cfg files. When nothing is found a picture
is shown that is defined in the cfg file for the current skin.
Speech... The frontend will say the
name of the current selected game when a sapi 4 or 5 compatible text to speech
engine is installed. Windows XP users already have it on their system.
If you have such an engine installed then just enable speech in the fe by setting
the dospeech option in
fe.cfg to true.
The frontend can play two simultaneous mp3 streams
in the background. The first stream uses by default an arcade ambience sound
loop. The second stream is used for playing music playlists and can even
be chosen directly on a fully functional model of a jukebox!
Each emulator
supports an alternative emulator executable. You can set to use the 2, 5, 6
and 25 entry of a game in a gamelist to select the alternative executable for
certain games or categories...for mame these correspond with rom, clone of,
rom of and driver. For other emulators you can create your own.
Support for commandline
options. They can be set for individual games or any other entry from the gamelist
for each emulator. For example you can set a commandline options for every horizontal
game or every maze game etc. with only one entry in the commandline configuration
file for that emulator. There is also an option to combine two entry's with
a logical AND.
The frontend should be able to
launch everything that can be run from a commandline. For launching non commandline
based emulators, like Modeler, Impact etc. you can use the
wrappers
from the
Lazarus frontend.
Cabinetmode. Hide the taskbar, hide
the mouse pointer, hide all windows so you won’t see those
ugly boxes and disable window keys for that real cabinet feel...but be careful,
selecting this option, can lockup your system, or better lock you out ;-)
And more…
^
1.2 How to install the frontend
Just taking a peek at the
cfg folder could scare
anyone. Yes it is true the frontend has lots options... But if you only want
a basic mame frontend along the lines of the default setup, it only takes
a few adjustments to get things going. And for those who don't want to bother
with cfg files the fe now supports a fully featured internal configuration
utility, with an easy to use point and click interface, to setup all the
features of the frontend. The choice is yours! The configuration utility
can be reached
from within the fe with the
kcfgmenu key (default=pagedown) or doubleclick "go
directly to configuration menu.bat" to go directly to it. Section
"1.2.1 Quick Setup" will
guide you in how to get the fe going. Section
"1.2.2 Quick how to use the frontend" shows you how to use it. Section
"1.3 Some suggestions to start customizing the basic setup" guides you in making your first adjustments to the basic setup to customize
the fe to your own needs. Please read section 1.3 as it covers most of the setup
questions I get!
1.2.1 Quick setup
Unzip the frontend in a new folder. Keep the subfolder structure.
Install mame and some roms for it. It is recommended to use the regular windows commandline version of mame. Get it here.
Screenshot and title images can be found here.
Marquees here, here and here.
Flyers and cabinets here.
First we will setup the fe to work with mame by adjusting the pathnames and executable options for the mame emulator. In the main configuration menu [access with kcfgmenu key (default=pagedown)] select the listmanager. Then click on the mame emulator in the emulator section and choose edit emulator.
In section 1 point emupath and workingdir to your mame folder. It is recommended to setup your rompaths in mame's own ini file. If you do that keep gamepath empty. If not point gamepath to the folder you keep your roms in.
In section 2 point sshot, titles, marquees, flyers and cabinets to their folders on your system.
In section 3 point mame to your mame executable. That is all!
(These options can be setup by hand in cfg\emulators\femame.cfg)
Optionally put models from the 3d arcade site unzipped in the models folder. I would suggest only add new models after you got the fe up and running.
Run fe3darcade.exe and when you did setup the mame emulator configuration correctly you will have a fully functional mame frontend and you will find yourself in the favorites gamelist from the arcades selectionset of gamelists using the fpsarcade menutype.
If you run the fe after unzipping and it crashes on you be sure you unzipped it keeping the folder structure. If that is ok try a different renderer in the general configuration menu by adjusting the prefrenderer option in section 4 to a different renderer. Or adjust the general
configuration file directly in cfg\fe.cfg. You will have to exit the fe and restart the fe before changes to the renderer will take effect. It is always a good idea to try the different renderers to see which one works
best for your machine.If the fe is slow when you come back from a game the frontend has probably dropped to software mode. If you see that first try a different renderer. If that does not help set the renderfix option to true in section 4 of the general configuration menu. For ati and nvidia cards I would suggest to start with the opengl renderer and renderfix set to false.
I STRONGLY recommend to batchresize your marquee's and screenshots and all other artwork you plan to show inside the 3d environment to a power of 2 format. I would suggest 256x256 for screenshots and marquees. And if your graphic card can handle it 256x512 for pinball playfields. This will depending on your videocard give a nice perfomance boost while texturizing models on the fly. This is essential for good performance in cylarcade mode and with the cycling of bitmaps on the screenshot texture in fpsarcade mode. Irfanview is a free program that can do this for you with ease. In irfanview select under file batch conversion/rename and in the next screen you will see in the lower right part set advance options, click on set advance options and set the size to 256x256.
1.2.2 Quick how to use the frontend
This will briefly introduce how the use the frontend
using the default arcade selectionset.
How to navigate through a gamelist to select games?
For the scrolling version of the listbox menutype use kgameup (default=up)
and kgamedown (default=down) to scroll through the list and kgameleft (default=left) and kgameright (default=right) to scroll fast through the list. For the cylarcade menutype kgameleft and kgameright will walk through the gamelist and kgameup and kgamedown will zoom in and out of the cabs. In the fpsarcade mode these keys are used to move around. The game you are looking at when you stop will be selected. Use mouselook and or the camera keys to look right at the cab. krotvertup (default=g) rotates the camera view towards you. krotvertdown (default=d) rotates the camera view away from you. kcameraup (default=r) moves the camera up. kcameradown (default=f) moves the camera down.
In the cylarcade and listbox menutypes jump through
the list by letter with kgotoaz (default=x) and kgotoza (default=z). Search for a game just like you would enter highscores with ksearch (default=v).
And filter gamelist in the same way with kfilter (default=b). kgameleft and kgameright scrolls through the available filters and kgameup and kgamedown
scrolls through the options for each filter. Filters can for example be used to select only vector games, vertical games, a random selection of games, etc. from the current gamelist.
Launch the selected game with kstartgame (default=1) or by doubleclicking the mouse. Popup the information screen for the selected game with kinfo (default=3) which will show things like the flyer and information from history.dat. Switch between fpsarcade and cylarcade on the fly with kwhicharcade (default=6) and between the listbox and the last used arcade menutype with .
A selectionset contains a selection of the available gamelists setup in pairs. The first pair in the arcade selectionset is a favorites list and a list with all original games. Then follow lists for the basic categories. Switch with korig (default=tab) between favorites (favorites.atf) and all games (originals.atf) and between all original games in a category (maze.atf) and all games in a category (maze_all.atf).
Use kgsmenu (default=4) to go to the gamelist selection menu to select a new gamelist pair from the available ones in the current selectionset. To add and remove games form the favorites list use kfavorites (default=space). If the favorites list is selected the currently selected game will be removed from it. If another gamelist is selected then the game will be added to the favorites list.
Rightclicking the mouse will toggle mouselook on and off so you can click on buttons and on the chat sprite to enable and disable chat input.
^
1.3 Start customizing the setup
1.3.1 Change the keymappings
Keys are remapped in section 1 of the general configuration menu and are saved in cfg\fe.cfg. From the main configuration menu select general configuration. Wow there are lots of them...but you don't have to map them all, only the ones you plan to use, and you can map a lot of them to the same keys. For example use up and down to scroll through the gamelist in the listbox menu and use the same keys to scroll the text in the history field of the information screen. To change a keymapping click on it and select the new key you want to use from the popup. It is recommended to set non used ones to empty.
1.3.2 Change the startup menutype
First go to section 3 of the general configuration menu.
If you want the fe to startup like regular frontend with the listbox menutype. Then set show3dmenu to false. If you also don't want to see the 3dmodel but instead bitmaps for the screenshot and marquee then set also showglcabsorpics to false.
If you want the fe to startup with the fpsarcade menutype. Then set show3dmenu to true and set show3dwhich to fpsarcade.
If you want the fe to startup with the cylarcade menutype. Then set show3dmenu to true and set show3dwhich to cylarcade.
While in the fe you can switch on the fly between fpsarcade and cylarcade with the kwhicharcade key (default=7). And you can switch between listbox and the
last selected arcade menutype with kwhichmenu key (default=6).
1.3.3 Adding a new arcade environment
We will take the exhibition arcade as an example. It takes just a few clicks. Unzip the exhibition zip in the fe folder keeping the folder structure. Now we have to add the gamelist for the exhibition arcade to the arcade demos selectionset.
Select the listmanager from the main configuration menu. Click on the arcade demos entry in the selsets field and select edit... from the popup. Click anywhere in the field with gamelists and select add a new gamelistpair from the popup. In the dialog select the exhibition gamelist, exhibition.atf. Give it a descriptive name and select cancel when asked for a w3d to show in the ssmenu.
Now we have to associate the gamelist with the exhibition arcade cfg file so the fe shows the exhibition arcade when this gamelist is selected. Click on the newly added exhibition gamelist entry and select edit left gamelist. Click in the arcade field and select select a new gl arcade from the popup. In the dialog select the exhibition arcade cfg, exhibition.cfg. Select close, save, save, done.
The cfg\lists\exhibition.atf gamelist has now been added to the arcade demos selectionset and the fe has been told to use the arcades\exhibition.cfg arcade cfg file when this gamelist is selected.
So now lets make some changes to the arcade configuration files themselves. Let us adjust the maximum number of models at the same time. In the listmanager in the arcades section click on an arcade cfg file and select edit... from the popup. The utility will now show all the options in this arcade configuration file. Go to section 4 and click on fpscabsmax and change the value. If you want another model then the Emulaxian model to be the default model then click on defcab and choose the model you want to use in the dailog box. Click close and save, done!
More information on the arcade environments and how to assign them to selsets and individual gamelists can be found in the "3.4 How to create and assign arcades" section of this document. Hint be sure to checkout how to move cabs around to create your own layouts!
1.3.4 Experiment with the active skinner
Selecting gamelists by shooting at galaxians if fun but will not fit with the theme of most skins. So how to change it to for example the listbox menutype. From the main configuration menu select the skinner. Then from the general skinner menu select general options. Then doubleclick the background to get the popup with the options and find the gs menu. Click on its value field and select listbox from the popup. If you are using the default horizontal skin this will set the gsmenu option in skins\horizontal.cfg to gsmenu|listbox|
. Go back to the general skinner menu and close and save, done!
Custom skins can be created dynamically in the fe with its build in active skinner. See "3.5 How to create and assign
skins" section of this document. To take a peek go into skinnermode by pressing the kskinner key (default=pageup) and drag the sprite around. Then doubleclick on a sprite to see the popup with all the detailed options for that sprite. Don't be scared to ruin the skin you will be asked if you want to save your changes if you leave skinner mode...
1.3.5 Connect to the multiuser arcades
From the main configuration menu select general configuration. Go to section 5. Click on user and enter a unique name. Then select how you want to connect to the internet by clicking on mugroup. Enter lobby if you want to use the fe normally but want to be able to see who is in the online and chat with other users in lobby mode. Enter the name of the online arcade, for example mudemo, if you want to go directly to an online arcade. In online arcades connected users can see each other walking around as avatars and chat. To select a different avatar for yourself click on avatar and select an avatar model from the list. The name of an avatar model normally start with av, so avpacman.w3d. If the server has changed you can adjust it by clicking on server. Which server is being used is always listed at the multiuser section of the forum at the 3darcade website. For information on how to chat and how to see who is online and more see the "3.7 How to use the online multiuser arcades" section of this document.
^
1.4 Files needed for the frontend to work
What follows is a reference of all the elements the frontend uses to do its thing.
The cfg folder contains the general configuration file and all configuration files related to gamelists.
cfg/fe.cfg --the main configuration file for the frontend itself. Please read the comments in there before you contact me…
cfg/feselsets.cfg --contains a list with the selectionsets the fe can use and is displayed in the selectionset selection menu.
cfg/feemulators.cfg --contains a list with emulators the frontend can use…when you add a new emulator cfg file you must add an item for it in here.
cfg/fewhichselset.cfg --In this file the frontend stores the currently selected selectionset
cfg/selsets/fe(selectionsetname).cfg --the main configuration file for each selectionset. A selectionset is a selection of one or more gamelists. The cfg file defines which gamelists are in the set and it also contains the filters used for these gamelists.
cfg/selsets/fe(selectionsetname)list.cfg --the last used gamelist for this selectionset by the frontend, by problems reset to: namegamelist|1.0000|1.0000|
for each emulator:
cfg/emulators/fe(emulatorname).cfg --the main configuration file for each emulator or any other executable.
cfg/emulators/fe(emulatorname)cloptions.txt --in this file you can setup commandline options for the primary executable for an emulator triggered by most of the entries in the gamelist. An fe(emulatorname)cloptions.txt has to be available for all. The same for fe(emulatorname)cloptions.txt.
cfg/emulators/fe(emulatorname)cloptions.txt --in this file you can setup commandline options for the alternative executable for an emulator triggered by most of the entries in the gamelist.
...and the gamelists in cfg/lists
The dummys folder contains the dummy files.
fedummy.png
marqueesdummy.png
sshotdummy.png
The dummys folder contains also subfolders were the fe will search for pictures, text files, videos etc. when they are not found in the paths setup in the emulator cfg files.
The arcades folder contains all things related to the 3d arcade environment.
arcades/default.cfg --the default layout off the arcade environment…each selectionset and gamelist can have its own. The fe first searches for arcade(gamelistname)|whicharcadecfgfile|
entry in the current selection set configuration file. If not found it will search for an arcades|whicharcadecfgfileinglmenu/-gsmenu|
entry in there. If that is not found it will use the default settings in fe.cfg. arcades|whicharcadecfgfileinglmenu/-gsmenu/-ssmenu|
.
The skins folder contains all things related to the visual layout of the frontend except the 3d environment.
skins/horizontal.cfg and skins/vertical.cfg are the configuration files for the default Emulaxian horizontal and vertical skins. The fe first searches for a skinset(gamelistname)|skin/altskin|
entry in the current selection set configuration file. If not found it will search for a skinset|skin/altskin|
entry there, If that is not found it will search for the same entry in fe.cfg
. This way you can have different skins for gamelists, selsets or the whole fe.
The frontend root folder.
fe3darcade.exe –the frontend exe
arcadetemp.cst, arcadetemp2.cst and arcadetemp3.cst –required dummy files for the animated arcade background and other animated textures
history.dat --the frontend reads this file to extract history info about the games
optional:
models/(name).w3d –additional 3d models for the fe to use
utilities/feparser.exe --creates the standard mame gamelists. There is now also a different parser inside the fe's cfg utility in the fe itself.
utilities/feparserfav.txt --list with roms the parser uses to create the favorites gamelist...change them to your own fav's...
utilities/feutilities.exe --creates gamelists from directory contents and crc’s for visual pinball games. It also can create background animation's from a folder with image files for the 3d arcade. This is also handled by the internal cfg utility now.
utilities/crc.exe -calculates crc's from files. Used with the visual pinball parser in combination with vplauncher's datfile.
^
Structures & Configuration
2.1 The lists hierarchy
The frontend operates under a hierarchy of lists.
Above all others is the SELECTION SET. This is a
list of lists, basically. Beneath that you have GAMELISTS, which contain
references
to individual GAMES that use specific EMULATORS.
Hence:
- Selection Set
- Gamelist
- Specific Game / Emulator
- Specific Game / Emulator
- Gamelist
- Specific Game / Emulator
- Specific Game / Emulator
- Specific Game / Emulator
- Gamelist
- Selection Set
- Gamelist
- Specific Game / Emulator
- Specific Game / Emulator
- Gamelist
...or, to put it in a more concrete example, here's
how you could potentially have your frontend set up:
- Arcade Games
- Fighters
- Mortal Kombat / MAME
- Furniture Warriors / MAME
- Rival Schools / Zinc
- Classics
- Pac-Man / MAME
- Dig Dug / MAME
- Dragon's Lair / Daphne
- Console Games
- Platformers
- Super Mario Brothers / NES
- Super Mario World / SNES
- Ducktales / NES
- RPGs
- Chrono Trigger / SNES
- Phantasy Star / SegaMasterSystem
- Final Fantasy Adventure III / Gamebo
Making sense now? Selection sets of gamelists of games
which use emulators. You can have any number of selection sets which have any number of gamelists which use any number of games.
Selection sets are selected in the selectionset menu (ss). Gamelists are selected in the gamelist selection menu (gs). And games are selected in the game selection menu (gl). The next section describes the working of each of these menus in more detail.
^
2.2 Structure of the menus
2.2.1 Selectionset Selection menu (ss default key 5)
This menu shows all selection sets available to the frontend. This list is retrieved from cfg\feselectionsets.cfg.
It is used to select a new set of one or more gamelists. The name of the selected set is stored in cfg/fewichselset.cfg. Then the name of the last used gamelist of this set is retrieved from cfg/selsets/fe(shortname)list.cfg and this gamelist will be loaded.
This menu can be either fpsarcade, cylarcade, listbox or shooting (setup in the skin cfg file) and or texture overlay on any 3d model (setup in a gamelist entry arcgatess).
Artwork, videos, text etc. to be displayed in this menu and associated info and help screens are pulled from the the dummys subfolders. The fe looks here for items with the shortname of the selection set. (For example download the quicktime version of Dave Dries
fantastic arcade 84 video…rename it to arcade.mov and put it in the dummys quicktime folder (dummys/qt/arcade.mov) now go to the selectionset menu (default=5) and highlight Arcade Games then hit the info screen key (default=3) and in a few seconds you will see the movie playing in the info screen! Why because the shortname of this selectionset is arcade…so it will find a movie called arcade.mov. Do you find the quicktime movie to small or to large…no problem open up the skin configuration file and make it as small and large as you want :-)

2.2.2 gamelist selection menu (gs, default key 4)
This menu shows all gamelists from the currently selected selection set. If this selection set is for example "shortname" then this list is retrieved from cfg\selsets\fe(shortname).cfg.
It is used to select a gamelist from the current selectionset. The name of the selected gamelist will be stored in cfg/selsets/fe(shortname)list.cfg for the current selection set and then this gamelist will be loaded from the cfg\lists folder.
This menu can be either fpsarcade, cylarcade, listbox or shooting (setup in the skin cfg file) and or texture overlay on any 3d model (setup in a gamelist entry arcgategs).
Artwork, videos etc. to be displayed in this menu and associated info and help screens are pulled from the dummys folder based on the shortname of the gamelist and if not found of the shortname of the selection set.
2.2.3 game selection menu (gl)
This menu shows all items from the currently selected gamelist in the currently selected selection set.
used to launch games listed in the current gamelist. Data on how to launch the game is pulled from the cfg file for whatever emulator the game is associated with. You can specify which emulator to use in the 10th data field. Emulator cfg files have to be placed in cfg/emulators. And all emulators used by the fe have to be listed in cfg/feemulators.cfg.
this menu can be either fpsarcade, cylarcade, listbox,shooting or texture overlay on any 3d model (setup in a gamelist entry arcgategs). You can switch between listbox and arcade by key press (default=6). In arcade mode you can go to a full screen view of the arcade with the arcadefull key. Which menu type to load upon startup is defined in fe.cfg. It is also possible while you are in one of the two arcade modes to switch between fpsarcade and cylarcade by pressing a key (default=7).
artwork, videos etc. to be displayed in this menu and associated info and help screens are pulled from the relevant path's setup in the cfg file of the with this game associated emulator. The fe will search these paths for files with the shortname of the game. If nothing is found the fe will search the dummys for files with the shortname of the associated emulator.
OK that is more or less the structure…but lets look a little deeper and we will see that the fe handles each menu item in the same way:
For example the arcade selection set (cfg/selectionsets/fearcade.cfg) contains
a gamelist favorites and the gamelist favorites contains a game entry 1941. Lets look at the entry's in their corresponding menus:
2.2.4 A game as a menu item:
1941 is a menu item in the game selection menu like this:
|1941 - Counter Attack (World)|1941|1990|Capcom|||Shooter / Flying Vertical|.33b05|Yes|mame|arcade|||Raster|Vertical|224x384|3x4|60.000000|Unknown|No|Joy 8 Way|2|2|2|cps1.c|Good|Good|Good|||||||||
the relevant parts are the 1,2,5,6,10,11,12 item.
the first item is displayed in the fe as the name of this menu item.
2 if not found then 5 and if not found then 6 (for mame corresponding with rom name, clone of and rom of) are used to find artwork, videos and text files etc. to be displayed in the fe. Were to find them the fe retrieves first from the pathnames setup in the cfg file for the with this game entry associated emulator in entry 10. In this case that is mame (cfg/emulators/femame.cfg). If not found it will search the relevant sub folders in the dummys folder based on the emulator name. The emulators the frontend can use have to be listed in
cfg/feemulators.cfg. Note emulators can be any exe!
11 entry see below
12 entry name of the 3d model to be shown in the menu…when this is empty the fe will try to show a model based on the names of the 2,5,6 entry's…
2.2.5 A gamelist as a menu item:
The Gamelists for the current selectionset are setup in the cfg file for the current selectionset. In this case cfg/selectionsets/fearcade.cfg For favorites this is:
favorites|/Favorites/favorites////////arcade/console/Emulaxian/////////////////////////|
Look at the part between || and notice how it looks like the 1941 game entry!
1 item is again shown in the fe as the name of the menu item
2,5,6 are again used to find artwork etc. now always in the dummys sub folders. And if not found it will search for files with the name of 10 entry in dummys
11 entry see below
12 entry name of the 3d model to be shown in the menu…when this is empty the fe will try to show a model based on the names of the 2,5,6 entry's…
2.2.6 A selectionset as a menu item:
The frontend retrieves the selectionsets it displays in the selectionset selection menu from cfg/feselectionsets.cfg:
This is the entry for fearcade.cfg
|Arcade Games|arcade||||||||arcade|console|Emulaxian|||||||||||||||||||||||||
Again notice the similarites between this item and the ones above. For the fe they all are just a list of items to show!
1 item is again shown in the fe as the name of the menu item
2,5,6 are again used to find artwork etc. now always in the dummys sub folders. And if not found it will search for files with the name off the 10 entry in dummys
11 entry see below
12 entry name of the 3d model to be shown in the menu…when this is empty the fe will try to show a model based on the names of the 2,5,6 entry's…
2.2.7 Emulator Types
11 entry has to be either arcade, console, app, pinball, arcmusic, arcmovies, arcgatess, arcgategs, arcgategl
arcade= for mame only…it is used to know that the fe should search for history dat etc. and some special formatting like for the display of game info in the format (name) made by (manufacturer) in (year) genre (category)
console=the same as mame but it will display text files instead of info from history.dat and a more general approach of displaying some stuff
app=the same as console now.
pinball=for vp only…when set to pinball the fe will launch vp in a special way…see fepinball.cfg for details…if you want vp to be launched like the others set this to console or app for vp games.
arcmusic=when you press the kstartgame (default=1) key when this item is found the fe will not launch a game but display a menu on the 3d model for this entry and show a list with playlists to choose from. Which list of playlists to show is defined in the cfg file for the current arcade environment. See for example arcades/default.cfg. The list of playlists itself contains references to the actual playlists in cfg/lists. These playlists contain the actual references to mp3's and can be generated automatically by the feutilites.exe utility.
arcmovies=when you press the kstartgame
(default=1) key when this item is found the fe will not launch a game but display a menu on the 3d model for this entry and show a list of movies to choose from. Which list to show is defined in the cfg file for the current arcade environment. See for example arcades/default.cfg. These lists can be generated automatically by the feutilites.exe utility.
arcgatess=when you press the kstartgame
(default=1) key when this item is found the fe will not launch a game but display the selectionset selection menu on the 3d model for this entry.
arcgategs=when you press the kstartgame (default=1) key when this item is found the fe will not launch a game but display the gamelist selection menu on the 3d model for this entry.
arcgategl=when you press the kstartgame (default=1) key when this item is found the fe will not launch a game but display the gamelist with the name of the current item on the 3d model for this entry. You can then select an item from the gamelist on the model and press the kstartgame (default=1) key to launch it.
arcgategl:selsetname:gamelistname:gamename=when you press the kstartgame (default=1) key when this item is found the fe will not launch a game but load the specified gamelist from the specified selset with the game specified as the currently selected game.
^
2.3 Configuration files
The frontend uses a number of configuration files to get things going. All these files can be configered from within the frontend itself. The config utility uses templates with the defaults for the general, emulator and arcade cfg files. This means if you go to the internal configuration utility and resave one of these cfg files the new options will automatically be added to your configuration files! When available the latest comments how to set and use an option will also be added to the files when saved or resaved. And for a lot of options the cfg utility will guide you in choosing options with popups and dialogs.
The general and gamelist related configuration files are located in the cfg folder. The general configuration file, cfg\fe.cfg, contains all options that relate to the frontend as a whole. Then there are three subfolders that contain the configuration files that correspond to the list hierarchy as described above. Selectionsets in cfg\selsets, gamelists in cfg\lists and emulators in cfg\emulators.
The visual layout of the frontend is handled by skins in the skins folder with the exception of the 3d arcade environments which have their own cfg files in the arcades folder. The skin cfg file refers to the layout of all the visual elements of the fe called sprites. The arcade cfg refers to the internal layout of one of these sprites; the 3d sprite. In other words the arcade cfg file refers to what happens inside the 3d world inside the bounderies of the 3d sprite. Skins and arcade configurations can be associated with an individual gamelist, with a selectionset or set as the default for the frontend as a whole when no specific one is found for the current gamelist or selectionset.
For details of all the options see the comments in the individual configuration files themselves. These and additional comments
are also shown in the lower part of the internal configuration utility.
^
3. How To...
3.1 How to create new gamelists
Lists go into the cfg\lists\ folder. The easiest way to create mame gamelists is to use the included parser in the internal cfg utility. It will create and update gamelists setup in cfg\parser\mame.cfg and if this file is not found it will create and update the default set of gamelists the fe ships with. It will keep any non mame gamelist entry in it. So don't be afraid to mix emulators in gamelists. It will also keep values added by the user into fields of a gamelist entry that the parser does not update.
From the main configuration menu go to the listmanager. Then click on the gamelist section and select create/update mame lists from the popup. The parser uses catver.ini to get category information for games. The latest version of Triggerfin's Catver.ini can be found here. Use the regular (CatVer) not the smaller version (GenreV) of the catver.ini file as is still wrongly stated on Triggerfin's site ;-).
Ok but I don't like the default set of mame lists. What do I do? There are a few options:
Experienced users can update cfg\parser\mame.cfg with references to their own set of gamelist. Lets take a look at two entrys from the default one to show how it works.
|fighter|7/starts/Fighter/5/equals/none|add|
|favorites|10/equals/mame/|update|
The first field is the name of the gamelist to create and/or update. In our example cfg\lists\fighter.atf and cfg\lists\favorites.atf.
The third field has two options. If it contains "add" then all games matching the filter criteria will be added. If it contains "update" then it will only update the games matching the filter criteria in the current list and not add new ones to the list.
The second field contains a list of filters just like the autofilter option in selectionsets. In this case for the fighter list the parser will filter all entrys that start with the word "Fighter" in field 10 and where the content of field 5 equals to "none". And for the favorites list the parser will filter all entrys where the contents of field 10 equals "mame".
Less experienced users could for example set the fe to use the all.atf list that contains all mame games. Then use the on the fly filters to make the selection you want. Then go to the cfg utility (default=pagedown) and choose the option to save the gamelist in its current form. Another option is to use the autofilter function. See for more info how to use filters here.
Gamelists for other emulators can be created from directory contents from within the frontends internal cfg utility or with the older utilities\feutilities.exe utility. For visual pinball it can use vplauncher’s dat file and check for crc’s.
If the internal parser give problems you can still use the older ones from utilities\. Be careful the old mape parser will replace your current favorites list.
For more information about creating gamelists with feparser.exe and feutilities.exe see the documentation text files for them in the utilities folder.
You can also create gamelists by hand. This is the gamelist format for mame:
|Description|Name|Year|Manufacturer|Clone|Romof|Category|VersionAdded|Available|Emulator|Type|Model|Favorites|Video|Orientation|Resolution|Aspect|Frequency|Depth|Stereo|Controltype|Buttons|Players|Coins|Driver|DriverStatus|SoundStatus|ColorStatus|HtmlLinks|TimesPlayed|DurationPlayed||||||
For other emulators I suggest the following format:
|Description|romname|||romnameparent|emulatorname|||||||||||||||||||usealtemu||||||||||||
|Donkey Kong (euro)|dkeuro|||dk|coleco|||||||||||||||||||altemu||||||||||||
If the entry altmame from fe(emulatorname).cfg contains the "usealtemu" entry and the entry in the gamelist for the chosen
game contains "usealtemu" then the alternative emulator exe is used.
By setting the romnameparent at position 5 and the emulatorname at position 6 they will function like the clone parent relation in mame...ie if dk.png screenshot is not found it looks first for dkeuro.png and then for coleco.png as an alternative. (But the bitmap and info files for the emulator itself should be put in the corresponding sub olders in the dummys folder, the fe will find them there automatically…)
And because the emulatorname entry is always present it is useful to use this entry for setting commandline options that are used by all games for an emulator.
Put whatever you want in the empty entrys... they will be displayed in the info screen or can be used to set specific commandline options...etc...
In principle the number of entry's can be any size. But I would suggest using the standard 36 entry's for all emulators. This way you can mix game entry's from different emulators/systems in a gamelist.
^
3.2 How to set commandline options
You can set commandline options in the fe(emulatorname)cloptions.txt file for the primary exe and in the fe(emulatorname)cloptionsalt.txt for the alternative exe. You can create and adjust these files by hand. Or let the fe handle them in its internal cfg utility.
An example:
|Description|Name|Year|Manufacturer|Clone|Romof|Category|VersionAdded|Available|Emulator|Type|Model|Favorites|Video|Orientation|Resolution|Aspect|Frequency|Depth|Stereo|Controltype|Buttons|Players|Coins|Driver|DriverStatus|SoundStatus|ColorStatus|HtmlLinks|TimesPlayed|DurationPlayed||||||
The second entry is the name of the rom. When we want to set a commandline option when this rom is executed we add to the fe(emulatorshortname)cloptions.txt:
entry number|entry name|commandline option(s)
2|viewpoin|-soundcard 1 -rol|
Another example: When we want all horizontal games rotated with rol we can add:
15|horizontal|-rol|
You can also combine two entry’s with an logical AND. For example set the -joy option for horizontal games with a 8way joystick:
15 21|horizontal|joy 8 way|-joy fspro|
etc..
^
3.3 How to create and assign gamelist filters
Filters come to you in the frontend in two flavours, filters and autofilters.
Search and filter games just like you would enter high scores. Toggle filter mode on and off with the kfilter key (default=b). kgameleft and kgameright scrolls through the filters. kgameup and kgamedown scrolls through the items of the current filter.
Each filter has an All entry, this will reset the gamelist. A random games and sort games filter is always automatically added to a set of filters to select
a set of 1,10,25,50 or 100 random games from the current gamelist. And to sort the gamelist on the fly alphabetically, by times played and by duration played. If
the scrolling through the filter items is to fast there is the waiths option in cfg\fe.cfg to slow it down.
The default arcade selection set contains lots of filters to use with mame. Filters can also be added by the user based on any entry in the gamelist and are are setup in the cfg file for a selectionset. Setup filters for any gamelist entry with the following format:
Filter|numberoffilters filterdelimiter|
Filter1|entrynumber operator$filter_description search phrase|
Filternumberoffilters|entrynumber
operator<filterdelimiter>filter_description search phrase|
Don’t use spaces in filter_description
Example from mame:
filter|7 $| --the number of filters below and the item delimiter used
filter1|15 contains$Video$Raster_Games Raster$Vector_Games vector|
etc.
In plain words the filter above will search field 15 of a gamelist entry for "Vector". If the field contains "Vector" this gamelistentry will be kept in the gamelist. If not, it will be removed from the gamelist.
Filters can use as operators contains, equals, larger, smaller, starts, notcontains, notequals, notstarts. Starts matches when the searchphrase equals the first word of the field the filter is set to operate on.
Filtersets can also be setup for individual gamelists by adding the name of the gamelist to the filter property. If you do it by hand just add the gamelist name after filter. For example for a gamelist favorites it would be filterfavorites|5 $|
fiterfavorites1||
fiterfavorites2||
etc. If a set is found for a gamelist this set will be used instead of the general set. This way you can have different filters for each gamelist in a selectionset.
Renaming games with the good utilities gives a lot of interesting filtering options. Example:
filter|2 /| --the number of filters below and the item delimiter used
filter1|3 contains/Manufacturer/Activision (Activision)/Atarisoft (Atarisoft)/Epyx (Epyx)/Imagic (imagic)/Parker_Bros (Parker Bros)|
etc.
Autofilters
Gamelists can be automatically filtered when they get selected using the autofilter|searchfield/operator/searchphrase/etc|
for all lists in a selset or autofilter(gamelistname)|searchfield/operator/searchphrase/etc|
for a specific
gamelist in a selset.
For example to filter out all adult games for the puzzle.atf list when it gets selected in the fe:
autofilterpuzzle|7/notcontains/Mature|
or to show only the horizontal games made by taito from the list:
autofilterpuzzle|15/contains/Horizontal/4/contains/Taito|
^
3.4 How to create and assign arcades
The arcade environment in the fe is completely customizable
or better put, completely interchangeable. The configuration of arcade environments is handled by the fe in cfg files which can be found in the arcades folder. The management of these files can now be done from within the fe. But I think it is useful to try to understand the underlying structure...so...
For the game selection menulevel (gl) each gamelist in a selectionset can have its own arcade environment by pointing an arcadegamelistname|arcadename/arcadename|
item in the cfg file for the current selset to an arcades\(arcadename).cfg
file for the gamelist cfg\lists\gamelistname.atf. Example - If I
had a arcade cfg file named "arcades\oldarcade.cfg" and a gamelist "lists\capcomfighters.atf" the line would look like this - arcadecapcomfighters|oldarcade/oldarcade|
If no specific arcade cfg file is found for a gamelist then the fe will search in the cfg file for the current selset for an arcades|arcadename/arcadename|
item. Example - Using the same names as in the previous example it would look like this - arcades|oldarcade/oldarcade|
If that one is also not found then the defaults in
the entry arcades|arcadename/arcadename|
from fe.cfg will be used. Example - Using the same names as in the previous
example it would look like this - arcades|oldarcade/oldarcade|
For the gamelist selection menulevel (gs) the fe will start its search with the arcades property from the selectionset cfg and if not found it will use the defaults from fe.cfg. And for the selectionset selection menulevel (ss) it will always use the defaults from the arcades property from fe.cfg. Notice also that arcades are setup by pairs so you can switch between them on the fly. For example if you have a rotatable monitor.
The positions of models associated with gamelist items are now integrated in the main cfg file for an arcade! These positions
are automatically updated when you move cabs to a different location in an arcade environment.
Models:
The arcade environment consists of a number of models. Each model is build from a modelresource that consists of a group of meshes. To be visible each mesh has a shader attached to it and each of these shaders can have a texture attached to them. For use in the fe the name of the model, the filename that contains the model and the name of the modelresource have to be the same. Also the names of the shaders and textures have to be unique. If they are not, they can appear on other models that use the same name for a shader and or texture. Therefore start the shadername with the name of the model and for the texture attached to that shader add map to the shadername. For example for a model called Gyruss: model=gyruss shader=gyruss-bezel texture=gyruss-bezelmap.
The models the arcade environments are build from are devided in 3 basic categories:
1. the arcade evironment model
This model forms the basic 3d environment. It should contain at least all static parts of the arcade environment that are not representations of gamelist items.
The fe contains a basic cylinder and a basic box model that can be used both with the fps and the cyl variant of the arcade when no other custom model is available. These models can be skinned for each arcade cfg file with custom textures loaded from the arcades\arctextures folder and an animated texture loaded from the arcades\arcanimtextures folder. Animated textures can be created from a set of bitmaps in the arcade configuration manager in the fe or with feutilities.exe in the utilities folder. Use #box or #cylinder instead of a external w3d filename to show either the internal box or cylinder. When #box or #cylinder is used it is possible to adjust position, size and scale of the #box or #cylinder with fpsarcmodelpos and cylarcmodelpos just like for externally loaded environment models.
Alternatively you can setup each arcade cfg file to load a custom model from the arcades\arcmodels folder to form the basic environment. This can be any model from a simple cube to a realistic recreation of an actual arcade. An animated texture can be mapped onto this model by setting the "fpsarcadeanimtxtname" property to the name of one of the textures from the model. This corresponds in 3d studio max to the name of the map from a material not to the filename of the texture...so in our example gyruss-bezelmap.
2. Models associated with gamelist items.
Items in the gamelist are represented in the fe as a 3d model. These models are preloaded from the \models folder when the frontend is started. To match models with gamelist entry the fe will first look in field 12 of a gamelist entry for a specific model. If not found it will try to match a model with the contents of field 2,5,6. These are by default for mame the rom, clone and romof names. If no match is made the fe will look for gencab entrys in the current arcade cfg file. These are used to match a model by setting up a set of conditions. The format is:
gencab1|modelname/field1/string1/field2/string2/field3/string3|
gencab2|...|
etc.
So if field1 contains string1 and field2 contains string2 and field3 contains string3 then use modelname model for the currently selected gamelist item. If no match can be made with any of the gencab entrys the fe will look for the default model in the current arcade cfg file, defcab|modelname|
When a model gets loaded into the arcade environment the textures from the first and second shader are replaced by custom textures loaded from the marquees and screenshot folders. Those folders are pulled from the cfg file for the emulator this gamelist item has been associated with. If available the texture of the second shader can be replaced by a realmedia video file in the same way. In addition to the video on the selected model the fe can also cycle between bitmaps on the other models. For example cycling between titles and screenshot bitmaps will give the illusion that attractmodes are not only running on the selected model using the video texture but als orunning on other models. Works really well in cylarcade where you see a lot of models in one view. Be sure to only use the cycling option with the fpsarcade when you have resized the bitmaps to powers of 2, 256x256 will work best in most cases.
To create a model that conforms to this standard in 3d studio max the parts of the model that get their textures replaced should have names that come first alphabatically. I use "aamarquee" and "amonitor" for these meshes. Do a select by name and then group the selected parts together. Also make sure the two materials of these two parts have a map attached to them. The name of the group will become the name of the model. The last thing you will need to do before exporting is moving the model up so that it rests on the x-axis and then set the pivot point of the group to 85. Then export it to w3d using the groupname as the name for the w3d file. Use these settings for exporting the model.
These models can literally be moved around by the user to create their own arcade layouts. The kmovecabs key (default=b) turns movecabs mode on and off. Move the cabs around any way you want after you are done hit this key again and the new layout will be saved in the current arcade cfg file. See the movecabs mode section below.
3. Additional models not associated with gamelist items.
Each arcade cfg file can contain a set of additional models that do not represent an item in the current gamelist. These are ideal for things like non player characters and sliding doors. I would suggest only using these for items that can not be made a part of the environment model. This means in practice for animated objects. Especially when the models uses one of the interactive animation triggers. In the case of interaction the model can not be made a part of the environment model. In other cases it is better to make models as much as possible a part of the environment model because that will render faster. However for those people that have no access to or know how to use a 3d modeler movecabs mode has been expanded to cover thse additional models. You can move, scale, rotate and even texturize these models on the fly. A great way to for example add a wall to a room etc. For more information see the movecabs mode section below. Besides bone animation these models also support keyframe animation in the form of a path to follow. These animation paths are saved into seperate w3d files with only the animation output selected in the exporter and can be used with every additional model. They are very easy to make. Just draw a path line in 3dstudio then attach it to a dummy model. Export the animation to a w3d file with the name of the dummy model.
Movecabs mode:
kmovecabs (default=b) turns movecabs mode on and off in the fpsarcade menutype. Grab cabs and move them around to create your own layouts… The new positions will be saved automatically after you hit the movecabs key again.
Key functions: Grab cabs with kgrab (default=v) and move the cabs around any way you want. Hit kgrab again to release the cab. You are still in movecabs mode. You can manipulate the model with the kcabr (default=l), kcabl (default=j), kcabf (default=i), kcabb (default=k), kcabu (default=o) and kcabd (default=u) keys to fine position, scale and rotate the model. And for fpsxtramodels you can also interactively change the textures of the model using kcabl and kcabr to highlight the textures you want to change. Then use kcabf to select a new bitmap form the file dialog popup. For those who want to know the bitmap
will be automatically copied and renamed to "arcades\ arctextures\ nameofthearcadecfgfile\ fpsxtramodelx\ texturex.png" !
The kmovecabsoperator (default=m) key cycles through positioning, scaling, rotating and replacing textures with the kcab keys.
Mouse functions: Click on a model to select it. Hold down the mouse to move the model around. Press shift to move the model up and down. Pressing crtl and alt will respectively rotate the model around its y-axis and x-axis. Pressing both while moving the mouse with the mousebutton down will rotate the model around its z-axis. Be aware that the model moves in model space. For intuitive movement first rotate the model around its y-axis so it faces the camera. Then drag it to its place. You can not move models while mouselook is on. Turn it temporarily off with a mouse right-click.
Xtramodels can be added to an arcade configuration in the arcade cfg section of the listmanager for the arcade cfg file you want to use. Click on the xrtamodels field and choose add...and then choose a model from the file dialog. I included a basic cylinder (arcades\arcmodels\prop-cylinder.w3d) and box (arcades\arcmodels\prop-cylinder.w3d) to experiment with. More prop models at the 3darcade site when they come available. Contributions of prop models are very welcome!
Animation:
The fe can play bones animation on all models including the environment model...why bones?...it is more clean then keyframe animation and you can do anything with it you could do with keyframe animation. Keyframe animation is only supported for animation paths for the fpsxtramodels. This gives the ability to easily create a lot of animation paths for all models to use just by exporting the animation of a dummy model.
Each model can "only" contain one bone hierarchy and must have at least one animation property added to it before exporting to w3d. I said "only" because in practice this is no limitation because you can fork a hierarchy as deep as you want.
the format is: animation(when) = where|replace|times|speed|start|end|auto
blend|blend option|lock translation|position reset|rotation reset|rootlock|sound
filename|sound times|sound volume or [soundmaxvolume, innerwidth, outerwidth]|
when = load: show animation when the model is loaded,
select: when the model is selected by looking at it, start: when the start key is pushed
where = tells the fe in which menutype (fps,cyl,listbox) the animation will
show up in...so fpscyl for this field will show the animation in the fps and
cylinder menus and not the paging/listbox menu.
replace = true will remove all current animation, false will insert the new
animation in the playlist at position 1. after it finishes the old animation
will resume
times = how many times the animation is repeated, 0 is loop endlessly
speed = speed of the animation
etc.
example: animationload= fpscyl|yes|0|1|0|2000|true|500|none|true|all|false|effect.wav|1|80|
^
3.5 How to create and assign skins
The frontend has an active skinner. Just go into skinner mode (default key = pageup) and you can dragg all sprites with the mouse. Move, resize and rotate them on the fly. And double clicking a sprite will popup a menu with all detailed options for that sprite.
Enter skinner mode directly with the kskinner key (default=pageup) to skin the current screen. Or first go to the cfg menu with kcfgmenu key (default=pagedown) and select skinner. From there you can go to all the screens in the fe and skin them.
In skinner mode you can dragg the sprites with the mouse. Click a sprite to select it. When a sprite is selected you can use keys to move (default cursor), resize (default d,f,gr, and j,k,l,i) and rotate (default e,r and u,o) the sprite. Doubleclicking on a sprite will popup a menu with all the detailed options for that sprite. For some options you enter values but for a lot of options the fe will make life a bit easier by letting you choose from valid options through popups, file dialogs, color pickers etc. The next and previous buttons in the popup menu let you cycle between the detailed options of all sprites in the current screen. It is also possible to go from here to the general skinner menu to skin other parts of the fe. Finally there is a toggle button that toggles between changes to the sprites affecting only the current menu level or all menu levels (gl, gs and ss). Be aware that when a sprite has a transparent part and has a z-order higher then a sprite showing through you can't directly select and dragg the sprites under it...the sprite with the highest z-order under the mouse will always be selected. You can then temporarly lower the z-order of the sprite with the high z-order by setting it to a low value, even a negative value, in its popup.
You can leave skinner mode by hitting the skinner key again. The fe asks if you want to save your changes. If you select no, the changes will only stay in effect until you change the current menu level. This is handy for if you want to temporarily move something. If you went to the the general skinner menu either directly or from one of the sprite popups...you will go back there when you hit the skinner key...Closing the general skinner menu will bring you in this case to the main configuration menu...closing that will reload the fe...
how to use skins:
The fe first looks on the game selection menulevel (gl) for a skinset gamelistname|skin1/skin2|
in the current selectionset cfg file. if that is not found it searches for skinset|skin1/skin2|
in the current selectionset cfg file. if that is also
not found it uses the defaults from skinset|skin1/skin2|
in fe.cfg. So it first searches for a skinset for the current gamelist, then for the the current selset and then for the default one. Setting these up can be done by hand or from the cfg utilty within the fe. For the gamelist selection menulevel (gs) the fe will start its search with the skinset from the selectionset cfg and if not found it will use the defaults from fe.cfg. And for the selectionset selection menulevel (ss) it will always use the defaults from the skinset from fe.cfg. Notice also that skins are setup by pairs so you can switch between them on the fly. For example if you have a rotatable monitor.
general options
In the main skinnermenu there is a general options field. When you click it you get a screen with only a background and the loading text sprite.
Doubleclicking the background will popup the general options. Here you can set the general camera rotation for rotated or flipped skins. The position of the text overlay in fullscreen rcade mode. The menu type used for the gs and ss menus. And optionally the menu type you return to when you go back to the gl menu. Keeping these empty will bring you back to the menu type in the gl menu you were in before you went into the gs or ss menu.
text restrictions:
Director can use two systems for displaying text, named text and field. At the moment the listbox scrolling type, the chatinput, the chatoutput, the history and the information sprites can be either field or text. All others are text sprites. Text sprites have the advantage of optional beautiful anti-aliasing and being rotatable. They can also show in the information menu basic html formatting and hyperlinks. The disadvantage is they are slower. Also they don't scale down as good making them less suitable for tv and arcade monitors. Although probably not much. They looked good last time I checked them using a scart tv. The plan is to make it a choice in the skinner for all text to be either field or text sprite.
buttons:
Click on the red galaxian...you will jump to the info menu...how does this work?...go into skinner mode...and double click the sprite...you will see that you can change all aspects of the button. Note that you can only use gifs and animated gifs for bitmaps and wav's and mp3's for sound. Change the action for the button by clicking the value field for the simulated key action...a popup will appear with all available key actions...
background restriction:
Although the size and position sprite parameters are saved in the skin for the background they currently are ignored by the frontend. Therefore the frontend always expects 1024x768 bitmaps for the background. If you want to make a skin for a monitor set to a lower resolution and you don't use the resize option then put the image for the visible area of the screen in the middle of the 1024x768 bitmap.
resize skins or skin only the visible area:
The native resolution of the frontend is 1024x768. For tv or arcade monitors the fe can be set to resize itself automatically to fill the screen. An alternative is not to use resizing option but skin only the visible area. This way no resizing is nescessary which might improve visual quality (mainly sprites of type text) and performance. And would probably be the way I would do it if I did not use a pc monitor.
gamelist titles and gamelist logo bitmaps:
The arcade and listbox menutypes now supports showing a title text using its descriptive name of the current gamelist and showing a bitmap logo for the current gamelist. How does the fe find the bitmaps? In gl menu the fe will first search for dummys\logos\gamelistname.png, if not found it will search for dummys\logos\gl.png, if not found nothing will be shown. in gs menu the fe will first search for dummys\logos\selsetname.png, if not found it will search for dummys\logos\gs.png, if not found nothing will be shown. in ss menu the fe searches for dummys\logos\ss.png, if not found nothing will be shown.
stretch options for bitmap sprites:
Stretch to fit, fit, this will resize the bitmap to fill the rectangle of the sprite completely.
Stretch keep aspect ratio, aspect, this will resize the bitmap to the largest size that will fit in the sprite's rectangle while keeping the aspect ratio of the bitmap.
Stretch to orientation, orientation, if "vertical" is found in field 15 of a gamelist entry then it will resize the bitmap to the largest size that will fit in the sprite's rectangle while keeping an aspect ratio of 3:4. If not found it will use 4:3. Useful if you have resized screenshots and marquees to 256x256 or another powers of 2 size for optimal 3d performance.
Stretch to aspectratio, aspectwidth:height for example aspect4:3, will resize to the largest size that will fit in the sprite's rectangle with while keeping the specified aspect ratio
Stretch to orientation-aspect, orientation-aspect, this will first search for "vertical and "horizontal" and if one of them is found Stretch to orientation will be used else Stretch to aspect ratio will be used.
Stretch to orientation-fit, orientation-fit, this will first search for "vertical and "horizontal" and if one of them is found Stretch to orientation will be used else Stretch to fit will be used.
animated bitmap cycling:
Because the main use is to create the illusion of attractmodes on all cabs in cylarcade and fpsarcade these are setup in arcade cfg files. But they can also be used to cycle between bitmaps on the screenshot sprite and the flyer sprite. (Flyer sprite cycling currently works only in the listbox menutype.)
cyclesshotscylarcade|linear/100/sshot,titles/fit,fit/false|
cyclesshotsfpsarcade|false/200/sshot,titles/fit,fit/true|
cyclesshotslistbox|true/500/sshot,titles/orientation-fit,orientation-fit/true|--on the screenshots sprite and the 3d model when no video is found in the listbox menu
cyclesflyerslistbox|true/5000/flyers,cabinets/aspect,aspect/false|--on the flyers sprite in the listbox menu
Item 1 can be linear, random or false. Set to false to not use cycling.
Linear will start at a random item in the cyclelist and then cycle sequentionally. Random will cycle the elements of the cycle list randomly.
Item 2 minimum number of milliseconds between updates. More updates less time to do other things like displaying the video on a cab...
Item 3 a list with pointers to paths with bitmaps to cycle through, these paths are retrieved from emulator cfg files so a path called sshot256||
is here sshot256.
Item 4 list with stretch options for each element of the cycle list.
Item 5 set to true to pause cycling of bitmaps while video is playing. Set to false to cycle bitmaps while video is playing.
It is not recommended to use bitmap cycling with the fpsarcade menutype when you don't have the bitmaps rescaled to powers of 2, for example 256x256.
If your not using videos on the cabs you can try lower the update time from 200 to 1 in cyclesshotsfpsarcade|linear/200/sshot,titles|
.
If you are using videos and this hurts the perfomance of the attract mode video to much then increase the value from 200. Or set item 4 to true to pause the cycling while.
transparencys and layering:
The skinner has full control over ink effects including transparencies and
the overlapping order (z-order) of bitmap and 3d sprites. For example giving
the background bitmap a higher z-order then the artwork bitmaps and using a
png with a tranparency chanell, the background bitmap will
become the foreground with the artwork bitmaps showing up behind the transparent
parts. Be aware that in skinner mode in this case clicking anywhere will popup
the details of the background sprite. So while skinning
temporarily set the z-order of the background sprite to a low or even negative
value.
When you turn off the direct to stage property of the 3d sprite it also can
be layered like all other sprites. For example by setting the sprite's ink
to backgroundtransparent and turning the environmental model of it will appear
to float. But turning direct to stage off will result in a big performance
loss. To get the same effect and much more while keeping the direct to stage
property on I added support for overlays and backdrops to the 3dsprite.
overlays and backdrops:
These options are setup in the arcade cfg files and not in the skinner as they
refer to what is shown in the 3dsprite itself. There are two layers of overlays
and two layers of backdrops. Each can show bitmaps, bitmap cycles, video's
and animated textures. The first overlay and backdrop when used have some special
additional features.
The first overlay is created from a snaphot of the background
bitmap behind the 3d sprite. When the background bitmap has no transparency
the 3d sprite will seem to disappear but when the background has transparency
the 3d sprite will appear to show behind the background. Especially useful
to get rid of the rectangle borders of the 3d sprite.
The first backdrop will take a snapshot of the stage behind the 3d sprite, giving the effect
that you can see through the 3d sprite resulting for example in the ability
to let the 3d sprite hover above the background.
There are a lot of possibilities for each overlay and backdrop. To make it
easier to use I allready did setup some useful defaults that can be turned
on and off by setting the first field either to true or false for each overlay
and backdrop.
These are the options for each overlay and backdrop:
overlayfpsarcade|add this overlay=true,don't =false/blend/renderformat/video,foreanim,backanim
or false/options/bitmapsprite/options/bitmappath/options|
The fe will first try to show a video or animated texture setup in field
4. If none is found or set to false the fe will then try to show the current
bitmap from either the marquees, screenshot or flyer sprite setup in field 6. If
not found or set to false it will try to find bitmaps from the pathname setup
in field 8 that refers to a path setup in emulator cfg files. Either one of
the existing paths like flyers, sshot or a custom path defined by the user.
Ahum I went nuts here...almost anything can be done ;-)
Renderformat in field 3 refers to how the overlays and backdrops will be rendered. By default 16bit colordepth and a 1bit alpha chanell will be used. For a full alpha chanell set this field to rgba8888. Foreanim and backanim refer to animated textures created from a set of bitmaps
and stored in arcade\arcanimtextures. These are the same as used on environment
models. To create them just put a set of bitmaps in an empty folder and use
the option in the cfg utility to automatically
create the animated texture. The options in field 5 are /(file to use:name.cst),(pause
animation while moving through the list=pause or don't pause=play),(animation
update frequency in milliseconds)/ for example /driesmamelogo.cst,pause,100/
For full control to show or not to show the 3d environment model for example
to create the illusion of a hovering cabinet model you can override the
general showarcade property from fe.cfg with the showarcade property in
an arcade cfg file:
showarcade|true/true/true|#editable|Show (true) or hide (false) the evironment
model by default in respectively the fpsarcade, cylarcade and listbox menu
type|
^
3.6 How to setup texture overlay menu's for jukebox, movies and gate
In fact these are all variants of the texture overlay
menu and can be mapped on any model. But using the jukebox model voor mp3's
seems to be more logical then for example the Tempest model ;-) The fpsdemo2
selection set gives a demonstration of the use of these menus.
Two examples demonstrate how to setup these menu's.
The first will setup a jukebox to play mp3's. The second shows a much less
complex example, namely how to setup a texture overlay menu to select games
from a gamelist on a
model using arcgategl.
Example 1: how to setup a jukebox
Lets us trace the setup for getting a jukebox working
for the fpsdemo2 arcade. The fpsdemo2 gamelist in cfg/lists/fpsdemo2.atf
contains the following entry:
|Select playlist|jukebox|||||||Yes|jukebox|arcmusic|Jukebox|||||||||||||||||||||||||
When you press the kstartgame (default=1) key when
this item is selected the fe will not launch a game, but display a menu on
the 3d model for this entry and shows a list with playlists to choose from.
How does the fe know to do this...easy it looks at the 11th item and it finds
arcmusic! Also relevant is the 12th entry this will as always override which
model to use from the models folder for this entry. If you set this item
to Jukebox like here you are sure that the fe will show the jukebox model
from models/jukebox.w3d. Further as always the 10 entry has to point to
a valid emulator cfg file. In this case cfg\emulators\fejukebox.cfg.
How does the frontend know which list of playlists
to show? It retrieves the list to show from the cfg file for the arcade environment
associated with this gamelist. In arcades/fpsdemo2.cfg you will find this
entry:
musicmenulist|playlistmusic.atf|
Select an item from this list and hit the kstart
key again. The playlist will immediately be loaded and start playing the
first song or a random song at a certain volume from the playlist depending
on the musicrandom and musicvol setting in the arcades/fpsdemo2.cfg cfg file.
How does the fe find this song to play...look at
an entry in the list of playlists the menu displays. In arcades/playlistmusic.atf:
|PJ Harvey songs|PJHarvey.atf||||||||jukebox|arcmusic|Jukebox|||||||||||||||||||||||||
PJHarvey.atf is the playlist this menu entry refers
to so in cfg/lists/pjharvey.atf we will find the songs for this playlist.
(Notice that playlists are in the same folder as the gamelists.)
This is the first song in the cfg/lists/pjharvey.atf
playlist:
|PJ Harvey - A Place Called Home|PJ Harvey - A Place Called Home.mp3||||jukebox|||Yes|jukebox|arcmusic|Jukebox|||||||||||||||||||||||||
The second entry is the actual mp3 file the fe has to play now. But how does
the fe find it. Easy just like it finds games..from an "emulator" cfg
file in cfg/emulators! So for this entry this is the 10th item...jukebox so:
in cfg/emulators/fejukebox.cfg we find:
gamepath|d:\mp3\|
Now the fe knows how to play "d:\mp3\PJ Harvey - A Place Called Home.mp3"
I hope you get it...just like a selection set cfg
file points to a number of gamelists (cfg\lists\gamelist.atf), the musicmenulist
points to a number of playlists (cfg\lists\playlist.atf). And for the fe
internally they are the same :-)
Notes:
You can create the playlist files from the contents of a folder with feutilities.exe
or with the similar utility in the internal gamelist manager.
-You don't have to use the jukebox to have a list
of mp3's play in the background. When you point musicplaylist in an arcade
cfg file to a playlist in your cfg\lists folder then this list will be played
when the arcade cfg file is loaded. Normally it will start with the first
mp3 in the list. If you also set musicrandom to true then it will play the
list in random order.
If you have your mp3's in more then one folder you will have to setup more "emulators" like
fejukebox.cfg to point to the proper folders.
-For turning the mp3 sound of just make a dummy
entry that points nowhere... When you select this item on the jukebox the
currently running mp3 playlist will be stopped and replaced with nothing...silence
;-)
As always the 10 field refers to an emulator cfg file. The fe first searches
here for relevant artwork paths and if nothing is found it searches the dummy
folders. As we have seen the text is overlayed on the screenshot texture.
This way the screenshot of the highlighted item will form the background
to the text and can be used for example to show album covers...or using the video's even music
videoclips right on the jukebox :-)
Notice the sshot|d:\fe066test\dummys\screenshot\|
entry in cfg/emulators/fejukebox.cfg this points to a dummy screenshot to put on the model that is why the 2th item
from the cfg/lists/fpsdemo2.cfg entry above is set to jukebox.
Arcmovies, arcgatess, arcgategs, arcgategl overlay menus work similar.
For the arcgate versions you only have to setup an entry in the gamelist you want to use them with.
Example 2: The gl menu on a texture using arcgategl
With this menu you can select and launch games or
anything you want from a menu on a texture on any model yo want. Add an entry
for an arcgategl texture overlay menu in your gamelist that points to the
gamelist you want to be shown on the texture. for example:
|Favorites Gamelist|favorites|||||||Yes||arcgategl|Videowall|||||||||||||||||||||||||
This will show the cfg\lists\favorites.atf gamelist on a Videowall.w3d model.
Background screenshots and video's will be pulled automatically in the normal
way from folders the emulator cfg file the gamelist entry points to. That is
all :-)
^
3.7 How to use the multiuser online arcades
The frontend supports the ability to connect users
together through the internet. The idea is that arcades were social spaces and
it would be cool to also recreate virtually that importent aspect of the old
arcades. The frontend does this in two ways.
In lobby mode (mugroup|lobby|) the frontend can be
used nomally but you will be connected to other users and be able to chat with
other users who are also online and in the lobby.
Then there are the online arcades that get added to
your menus when you connect to the internet. In an online arcade users will
see each other in the fps arcade environment walking around in the form of avatar
models and they can chat with each other. And you can also send private messages
in online arcades to the avatar you are looking at...this can bring real arcade
gossip to the virtual arcade ;-)
To make sure all users are in the same environment
these online arcades are downloaded from the server automatically and everytime
you go online the fe will check if you got the correct files. If not it will
download them again. If you leave an online arcade you will be back in lobby
mode. And as said before you will be able to use the fe just like you would
when you were not connected. So if you your cab is online the prefered mode
to use the fe would be mugroup|lobby|. If you want to go directly into an online
arcade environment instead of the lobby you enter the name of that arcade, ie
mugroup|mudemo|. If you don't want the fe to connect to the server use mugroup|false|.
You toggle chat on and off with
the kchat key (default=end) or with the mouse by clicking on the chat input
box. The chat toggle also toggles mouselook on and off for convenience. But
you can also only use the mouse and toggle mouselook on and off with the right
mouseclick. When chat is on, blinking cursor in the chat box, you can see who
else is online with the kusers key (default=home). It will list all people online
and where they are.
The multiser settings can be found
in cfg\fe.cfg and can also be adjusted with the internal configuration utility.
Keys to use are in section 1.f and the multiuser options can be found in section
5.
user|youruniquename|
server|| The name of the multiuser
server you use to connect. Check the 3darcade website which server is currently
being used.
avatar|| The name of the avatar
model without extension you want to use in the online arcades to represent you.
When left empty the fe will use a default pacman model with a random color.
Currently there is also avpacman and animated pacman and ghost a pacman ghost.
mugroup|| false= don't connect
to the server, lobby=connect to server and enter the chat mode. you can use
the fe normally in this mode but also chat with others users online and in lobby
mode, see who is in the online arcades and the multiuser selectionset is added
at startup and your files are checked on bootup and if nescessary updated on
bootup so you can join in :-), shortname of an online arcade=boot directly into
an online arcade room.
mufunction|]| At the moment this
is only used for private messages...when you start your message with this character
it will only be send to the user off the avatar you are currently looking at.
In later versions it will also be used for issuing commands, ie commamd].
^
3.8 How use a screensaver or random game screensaver
The frontend can either set a windows screensaver
or launch random games that can function as a random game screensaver.
The screensaver options can be found in fe.cfg:
screensaver|completetepath\screensaver.scr| -sets
the windows screensaver, keep this empty if you don't want to use a screensaver
or if you want to use the random game screensaver
randomscreensaver|false| -launches a random game, keep this false when
you are using a windows screensaver
screensaverwait|600| -after how many seconds idle time the screensaver
kicks in
When randomscreensaver is set to true the fe will launch a random game after a certain idle time. In
combination with advance mame's idleexit option or lazarus commandline launcher wrapper's -wait option they will quit to the fe after a
certain time no keys have been pressed. So when you see a glimpse of a game you wanna play...just go over to the cab and start playing it...
in fe.cfg you add:
randomscreensaver|true|
screensaverwait|seconds|
if no keys are pressed for "seconds" then
a random game from the current list is launched
using the wrapper:
put cmd-launch4.exe and lconfig.ini in the folder
you have your mame exe.
adjust the name of the exe to match your mame exe in lconfig.ini
adjusting cfg\emulators\femame.cfg to work with the wrapper:
-change the mame|yourexe/youraltexe| to mame|cmd-launch2.exe/youraltexe|
or even better only use the wrapper when the screensaver launches a game by
making it the alternative exe, in that case
-change the mame|yourexe/youraltexe|
to mame|yourexe/cmd-launch2.exe|
and add
randomscreensaver to the altmame option list, ie altmame|randomscreensaver|
example:
mame|mamepp.exe/cmd-launch2.exe|
altmame|randomscreensaver|
the wrapper has two new commands -wait x and -reset/-noreset:
-wait x , when no key has been pressed for x seconds exit the emulator
-reset, when a key is pressed reset the wait timer to 0
-noreset, when a key is pressed don't exit automatically after an x idle period
add these options to cfg\emulators\femamecloptions.txt or if you use the alternative
exe to cfg\emulators\femamecloptionsalt.txt
example:
10|mame|-wait 300 -reset|
never revisions of the wrapper also have:
-nosound, disables sound while cycling
through games
-nomsg don't show a message while loading a game
^
4.0 Miscellaneous information and tips
For more up to date tips see the faq and tips section
of the forum at the 3darcade website.
When you make changes to any of the cfg files from within the the fe, it will save the old cfg's to the backup folder. Almost anything gets backupped there, from the gamelists to the skins.
The frontends native
setting is 1024x768. I recommend using that if you can to start with.
You can also force this resolution by setting resize and force 1024x768
to true in fe.cfg. For users with a desktop lower
then 1024x768 set the resize option in fe.cfg to true. This will automatically
resize the frontend to fit. Alternatively you could make custom skins that
only use the visible area. Because no resizing is needed this may improve
quality and performance. On older machines using a 16bit desktop may
also result in better perfomance.
Toggle the ktest key from fe.cfg:
it will show you the renderer currently being used. If experience bad framerates
and/or picture quality or you see a dramatic decrease in performance the
frontend
probably switched to software mode... You can experiment with different
renderers with the prefrenderer option in fe.cfg. Values are (auto, openGL,
directX7_0,
directx5_2, software) experiment with these settings to get the best performance
and picture quality. If the framerate drops sharply then the frontend
has probably
switched to software mode. This happens to me with directx7_0 when I come
back from a game...so I use opengl which looks great on geforces...If
you also experience
this and have tried all renderers then the only thing you can do is to
try out different display drivers for your card.
Batch resizing your marquees and
screenshots to a power of 2 format can speed up the cylarcade dramatically!.
Especially some of Eldio's marquees are very large. And the fe will have to
resize the texture to a power of 2 if it is not allready in that format. I have
all my marquees and screenshots resized to 256x256. On older vidcard you could
try 256x128. to save some video ram.
The animated textures that can
be used in arcade environments can take a lot off resources especially big ones
like the ones the fe ships with (512x512). Disabling them can improve performance.
I recommend using the mpeg versions of the videos instead of rm. But the frontend can stil also use real player for
video on the screenshot texture of the 3d models. If you don't have it
on your system and don't want to install it then remove "rm" form the videoextension property in fe.cfg! Use real player 8 with the fe. I have got conflicting
reports about using the real one player with the fe. It seems that it won't
work at all or very poor with the fe in some cases...
It is very unoptimized yet. I
use a geforce 2mx with 32mb which seems to be enough to get good framerates
and does not get out of videoram. From the reports I have gathered you need
at least 16mb vidram...
Zoom in to rotate faster through
the gamelist.
The frontend searches for screenshots
and marquees first for the romname of the game itself, then its parent, then
the romof, then for emulatorname.png in the subfolders of /dummys and then for
the Dummy in /dummys The 3darcade will be a bit faster if you have as many parent
shots as possible ;-) (The on the fly marquee creation when no image is available
is a bit slow…you can disable it in fe.cfg…)
On slow systems set rotates in
cfg/fe.cfg to a lower value, for example 2. Setting it to 1 gives also an interesting
effect ;-)
Also on slow systems
switching to the displaying a marquee and screenshot picture in the listbox
variant of the menus instead of the 3d model will be faster. not that much because
the 3d model still will be updated.
^
Credits and thanks
NB!!! Stefan Gagne made a great tutorial
on how to setup Emulaxian! With version .75 of the frontend and the addition of the internal cfg utility
this tutorial is rather outdated. But the selectionsets and gamelist structure
is still the same. And it describes them very well from a users perspective. It is in the docs folder and
available online here!
Thanks a lot Stefan!!!
NB!!! YOU CAN
HELP! By making 3d cabinet models and arcade models for the virtual arcade and
by making backglasses or fields from screenshots of vp games. Also we will gladly
make any skins, arcade environments, arcade layouts etc. you make available
on the site! If you are interested please contact me!
NB. Default animated arcade background and ambient arcade sounds with real
sounds
from 80 arcades by James Widmark.
NB. The internal defaultver and defaulthor models
for respectively horizontal and vertical games were made by DeNiro for the
fe.
NB. The dhtml version of the manual was made by DeNiro. Thanks a lot!
NB. The console sytems background bitmaps in the default skin were made by Cave and PucPuc, thanks!
NB. The old mame parser is based on Emuloader source…thanks Ciro!
NB. The gamelist creator can use Roland Scholz's and Datadragon's dat file from
Roland Scholz's Vplauncher, http://vplauncher.rolandscholz.de/
, a really great VP frontend, for CRC checking. Contact Datadragon ( mailto:datadragon@home.com ) if you find
errors in the database that are not related to Emulaxian.
NB. The backglasses included with this release were done by Marshall Brooks.
NB. The pinball
3d model is adapted from a model by Niels 't Hart.
NB. The jukebox model is adapted
from a model by G. W. Chapman. I got it from http://www.3dcafe.com/.
NB. The animated texture in the
fpsdemo2 arcade is ripped from Dave Dries beautiful 3d mame logo movie. Get
the original movie and more cool stuff at http://www.cinemarcade.com.
NB. The high score search feature is based on an
idea by Sirpoonga.
NB. Special thanks to Howard for
making wrappers available
that can be used with Emulaxian/FE-3Darcade to launch non commandline based
emulators, like Modeler, Impact etc.
NB. And ...thanks to all the folks and especially
the other fe authors (Boris, Drake, Ed, Howard etc.) on the byoac message boards
for keeping this stuff fun!
I take no responsibility for any
damages the frontend, this information etc. can cause...yeah yeah...
)p(
^
About this manual
Legend:
Links look like this.
Local files/directory references Has/this.look
References to keyboard shortcuts/mouse clicks within the FE Will have this look
"Pseudo" config file contentsIs looking like this, and will most certainly cause errors if used directly within a config file
Real Config file contentsIs looking like this, and will work if used within the proper config file