#summary Frequently asked questions
#labels Phase-Support,Featured
#sidebar TableOfContents
<wiki:toc max_depth="3" />
=Frequently Asked Questions=
==General==
===Where can I find discussions about this game?===
On the [http://fretsonfire.net FretsOnFire Fan Forum].

More specifically, in the [http://www.fretsonfire.net/forums/viewtopic.php?f=11&t=34231 FoFiX Development & Discussion Thread]

----
----

==Playing the Game==
===LAG - Recommended Settings===
We recommend the following important settings to minimize lag:
  * Performance -> Killswitch FX -> STATIC (Animated takes a bit more procesing time)
  * Fretboard -> Board Speed -> PERCENTAGE (all other settings involve at least 2 more floating-point calculations during BPM changes)
  * Fretboard -> Speed Percent -> 100 (this can be any number without affecting lag in Percentage mode, other than trying to draw too many notes at once for extremely slow settings)
  * Performance -> Set Priority -> ABOVE NORMAL (this helps a great deal as well with lag, especially if you have other applications running)
  * Theme -> MegaLight (very low-overhead theme)

----

===Memory Leaks===
IMPORTANT - Note on the memory leak and how to handle it:
Python version 2.4 (which Frets on Fire 1.2.451 is built on) has an inherent memory leak problem. As you play more songs, this leak will eat more and more of your physical and virtual memory until the game runs unplayably slow.
Every so often, it is recommended that you quit the game completely and restart it. This clears all memory used and restarts the game fresh.

*Update:* Windows users have a workaround option to handle the memory leak -- _[http://www.snapfiles.com/get/minimem.html MiniMem]_ can be set to automatically "optimize" memory usage and free leaked memory for {{{FretsOnFire.exe}}}

----
===Audio Glitches===
*Problem*: When I play FoFiX, all of the audio has static in it. 
I get the noise with all audio from the game including songs.
FoFiX is the only program for which I have this issue.

*Solution*: Increase the Audio buffer size. Pick one of these two procedures.
====Through the menus====
  # Start FoFiX, select Options then Advanced Options
  # You're back in the main menu, select Options, Audio Settings and then Advanced Audio Settings
  # You should now see the Buffer Size value. Increase this value and restart FoFiX.

====By editing your fofix.ini file====
Increase the buffersize value located in the audio section.

The possible values are: 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536.

----

===Animated Stage Selection===
Under "Theme Settings" there is a setting for "Animated Stage"

"Normal" is the default, and works like before; the game will look in `data\themes\<themename>\stages\` for .png files to display in-game.
If you see "None" - this means that no Stages folder was found at all. You will always have a blank stage until you fix this.
Any sub-folders in the Stages folder will be selectable here; the game will look in the selected folder for .png files to display in-game.

"Random" will only be available if the game detects more than one animated stage subfolder to choose from. It will choose from one of these subfolders each time a song loads randomly, always ignoring the `stages\` folder.

Normal, non-rotating stage modes still function as normal - and will ignore these animated stages sub-folders.

Rotation Delay is the delay between stage images in `stages\` (slideshow)
Animation Delay is the delay between stage frames in an animsated stage subfolder

To summarize:
The stages folder is for the standard slideshow stage rotation with a long delay. The animated subfolders are for frames, meant for display with a short delay. You wouldn't want the standard slideshow animating fast, and you wouldn't want a random static background frame from one of the animated subfolders...

----

===Backing up / Restoring Careers===
====Backup====
The following is a manual procedure for backing up a Frets on Fire career in Windows (assuming you have WinRAR installed):
  # Navigate to your songs folder and open up the folder containing the career you'd like to make a back-up of.
  # Click on the "Search" button on the toolbar (or press CTRL-F) to open the Search panel for this folder.
  # Click on "All files and folders" under "What do you want to search for?" to bring up the real Search dialog.
  # Type `*.ini` under "All or part of the file name:" (be sure to leave the "Look in:" box alone, this contains the current folder by default)
  # Click Search. This should result in a `titles.ini` and `song.ini` for each song in the career appearing in the right panel.
  # Click the Edit menu, and then Select All (or just CTRL-A) to highlight all of these search results.
  # Right-click on any one of the highlighted files, and then click "Add to archive..." in the menu that pops up. This will bring up WinRAR almost ready to back up your career.
  # Click the "Browse..." button, navigate to the folder you'd like to create the backup archive in, name the backup archive, and click Open.
  # Click "OK" to create the backup. The resulting file will contain everything necessary to later restore this career (including the exact & absolute folder structure of this particular career, as well as a snapshot of your scores from the time of backup).

*NOTE*: Changing folder names, or relocating this career to a different folder (altering it's absolute folder structure in any way) will require you to perform some extra manual folder manipulation to restore.

====Restore====
The following is a manual procedure for restoring up a Frets on Fire career in Windows, backed up using the above method (assuming you have WinRAR installed, and that you haven't altered the folder structure leading to this career):
  # Locate your previously-created backup archive file. Right-click on this file, then click "Extract files..." -- this will bring up a folder browser.
  # Select the drive where your career was originally located (yes, just the root folder, such as C:\). Click "OK"
  # A box will pop up, notifying you of a file replacement. Click "Yes to All". Your backed-up career has been restored (as well as a snapshot of your scores from the time of backup).

----

===Stage Backgrounds / Stage Modes / Stage Rotation===
Stage determination logic / psuedocode: ("End" means, stage background policy has been determined.)

Stage mode: Blank takes precedence over everything else - no matter what, you will have a blank background. End.

Otherwise:
If you are in Practice mode, and there is a `practice.png` in your `themes\(themename)\stages\` folder, then it will be displayed. End.
If you are in Practice mode, and there is no `practice.png` in your `themes\(themename)\stages\` folder, then it will force Blank stage mode (Practice mode should have no distractions anyway). End.

If you have a song-specific `background.png` in the current song's folder, and your Song Stages option is On, then it will display the song-specific background.png. End.
If no song-specific `background.png` exists in the current song's folder, or your Song Stages option is Off, (also at this point, you do NOT have Blank Stage mode selected, and you are NOT in practice mode) then:

If Stage Rotation is set to anything but Off, the stages will rotate as described by the setting (i.e. Random, BackNForth, In Order). `practice.png` will be ignored. End.

Otherwise:
If Stage mode: Default is selected,
if `themes\(themename)\stages\default.png` exists, then `default.png` will be displayed. End.
If the default stage does not exist, Blank stage mode will be forced. End.

If Stage mode: Random is selected,
A random stage will be selected from the available stages in `themes\(themename)\stages\`, excluding `practice.png`.
This stage will be displayed. End.

The Stage modes (except Blank, which takes precedence) are completely over-ridden by the Rotation setting.

When Rotation is off, Stages: Default shows the default stage. Stages: Random shows a random stage.

They could be in one setting, I'm just limited in how long the setting names can be. "Stages: Rotate Random" and "Stages: Rotate BackNForth" would probably be well off the screen, for example.

----

===Star Scoring===

===="RB" (Rock Band style) scoring ====
  * 5.3x average multiplier for gold stars (guitar)
  * 4.8x average multiplier for gold stars (bass)
  * 4.65x average multiplier for gold stars (drums).

==== "GH" (Guitar Hero style) scoring ====
  * 100% notes hit for gold stars.

==== "RB+GH" hybrid scoring ====
Either of the above conditions result in gold stars (high enough avg multiplier OR 100% notes hit)

I know the 5.3 avg multiplier is actually unreachable with some songs
(with very little or no sustains) but that's the way it's supposed to be,
if the real game is any indication.

==== "FoF" scoring ====
Based on accuracy alone.
i.e., 95%+ is 5 stars, no matter if you have a 1x avg multiplier (you overstrummed every single one of those notes at least once).

----

===Tutorial Song===
In order for the Training -> Tutorials menu option to work,
you have to have at least one tutorial song in the game's {{{data\tutorials}}} folder.

The original FoF Jurgen Tutorial may be downloaded from mediafire at this URL (included with full release 3.021 or later):
[http://www.mediafire.com/?zm1jjlwxnyr]

----

=== Multiplayer ===

====Multiplayer > Party Mode====
Looks like a single player mode, but if you'll notice there's
a countdown (that you can set in the Options menu)...
the game switches between 1st and 2nd player controls every 30 seconds
(or however long you set) to play a single track in a song.
It is the original multi-player mode from a way earlier version.

Party mode actually was designed to be for as many players as could switch guitars during a given song.  See, the way Party Mode is supposed to work is (if you have more than two players):

  * The first player starts out playing Guitar 1, and the second player is holding Guitar 2 - ready to take over after the countdown.
  * Then, while player 2 is playing guitar 2, player 1 hands off guitar 1 to player 3, who gets ready to take over after the countdown.
  * Then, while player 3 is playing guitar 1, player 2 hands off guitar 2 to player 4, who gets ready to take over after the countdown.
...
...
until all players have played (if the song is still going at this point), then player 1 just gets in the rotation again and it starts over.

The Party Mode timer can be adjusted in the basic options, in case 30 seconds is too long or too short for your particular party.

====Co-Op====
This is probably the mode you're looking for.  Recently added to FoFiX, this is the newest and most popular 2-player mode.  This closely resembles the 2-player cooperative mode found in the original Guitar Hero console game.  

Each player gets their own note streak counter and starpower / overdrive meter, but share a single rockmeter, a single rockmeter arrow, a single combined score, and a single combined star score.  When one player activates starpower / overdrive, only that player's "increases" to the rockmeter benefit from the starpower / overdrive.

At the end of a song, both players' individual scores will be remembered and uploaded to highscore charts as usual (if enabled) - co-op scores currently have no mechanism to be stored or ranked or even categorized for all the different instrument / difficulty combinations.

You can play co-op with Jurgen by enabling him and setting him to player 2 only.  However, only your individual score will be retained and uploaded (if enabled).

====Face-Off====
This was the first two-player mode, from the old Alarian mod.
This mode completely duplicates the first player game window for the second player, complete with separate rock meters and scores.  This is considered to be the laggiest mode in the game, as it requires the most resources to operate.

====Pro Face-Off====
Pro-Face Off is a bit strange, and is tough to keep fair unless both players are playing the same instrument and difficulty.  Each note player 1 hits decreases player 2's rock meter, and vice versa (along with the normal increasing / decreasing of each player's rock meter based on notes hit / missed).  Eventually one player will "make" the other player fail.

You can face Jurgen by enabling him and setting him to player 2 only.  Good luck!

----

=== Practice Mode ===
If you want to practice a multi-track song with all instruments playing...
make a copy of that song's folder, edit the title in the `song.ini` so you
can tell the difference, merge all the .ogg tracks into the `song.ogg`, and
delete all .ogg files except `song.ogg`.

To add practice sections to a song with NO text / section events at all (no solo markers),
just add text events or section markers wherever you'd like a practice marker. (GH1-style)

If you would like to add practice sections to a song that already has guitar solo markings, and those solo markings are actual section markers (like in Rock Band), you must add
more section markers to designate practice sections.

----

=== Analog Killswitch Notes ===
Analog killswitch fades volume to the whammy position, scaled to the kill volume.
Digital killswitch cuts volume immediately to the kill volume.

The way the analog killswitch works is a little different than digital killswitch as far as when you get extra starpower.
Instead of having to hold down the digital killswitch to constantly receive starpower,
the analog killswitch checks against the last position you were at.
As long as you are moving the whammy, you will get points.
Hold the whammy in one position and you will only get one "chunk" of starpower before moving it again.

If you are using a PS2 guitar through a USB adapter:
As long as the PS2 guitar is in analog mode (if this is settable in your adapter control panel)
the whammy can be used as the killswitch control.

If your guitar is in digital mode, the whammy bar will most likely register as strums.
Look in your PS2 - USB adapter manual for instructions how to change to analog.

----

=== Note Hit Accuracy Display ===
Under "Visual Settings," you can enable a note hit accuracy display by setting the "Accuracy" option as follows:

  * "Off" will display no feedback on your hit accuracy.
  * "Numeric" will display the game's numerical representation of your hit accuracy
    * In the game, a number will appear when you hit a note. This number represents your hit accuracy.
      * An accuracy of 0 means you hit the note exactly at the right time.
      * An accuracy of greater than 0 means you hit the note early.
      * An accuracy of less than 0 means you hit the note late.
      * The accuracy will dissappear when you miss, or pause the game.
      * If you are always hitting late (negative numbers), try DECREASING your audio delay.
      * If you are always hitting early (positive numbers), try INCREASING your audio delay.

  * "Friendly" will display colored text based on the following logic:
    * RED: "Very Early" when you are hitting close to the early edge of the hit window
    * YELLOW: "Early" when you are hitting a bit better
    * YELLOW: "Slightly Early" when you are hitting even better
    * GREEN: "-Excellent!" when you are hitting almost perfect but a little early
    * GREEN-BLUE: "Perfect!!" when you are actually hitting with a 0 error (-1.0 to 1.0, small window)
    * GREEN: "+Excellent!" when you are hitting almost perfect but a little late
    * YELLOW: "Slightly Late" when you are hitting a bit later
    * YELLOW: "Late" when you are hitting a bit later
    * RED: "Very Late" when you are hitting close to the late edge of your hit window

  * "Both" will display the friendly text and the numerical representation below it

----

=== Browsing Uploaded Scores ===
To check Divra's world charts (for us, with starpower), you need to go to this URL:
[http://www.wembley1967.com/chart/]

----

=== HO/PO System Details ===
Ho/Po is short for Hammer On / Pull-off
A Note which is marked differently than usual is a Ho/Po-note.
This means that the note is tappable and doesn't require a strum/pick.

Thanks to Myfingershurt, FoFiX has several options for the Ho/Po-
system:

  *"None" = No tappable notes at all.
    * Every note (or chord) requires a strum.

  *"RF-Mod" = Original Ho/Po system from RF-Mod 4.15.
    * The first note in a string of the same notes can NOT be tapped.
    * The note before a chord can NOT be tapped.
    * You can NOT strum a tappable note while holding a lower fret.
    * You can NOT tap an incorrect fret in between Ho/Pos
    * You CAN hold a higher fret and tap a lower fret
    * You can NOT perform a chord pull-off

  * "GH2 Strict" = Guitar Hero 2-like Ho/Po system with strict rules.
    * The first note in a string of the same notes CAN be tapped.
    * The note before a chord CAN be tapped.
    * You CAN strum a tappable note while holding a lower fret.
    * You can NOT tap an incorrect fret (hammer-on) in between Ho/Pos.
    * The penalties for this are: a streak & multiplier reset, and you will have to strum to resume Ho/Po'ing.
    * You can NOT hold a higher fret and tap a lower fret.
    * You CAN perform a chord pull-off (if the option is enabled).

  * "GH2" = Guitar Hero 2 replica Ho/Po system, rules match GH2 console game rules as closely as possible.
    * The first note in a string of the same notes CAN be tapped.
    * The note before a chord CAN be tapped.
    * You CAN strum a tappable note while holding a lower fret.
    * You can NOT tap an incorrect fret (hammer-on) in between Ho/Pos.
    * The penalty for this is: you will have to strum to resume Ho/Po'ing.
    * You can NOT hold a higher fret and tap a lower fret.
    * You CAN perform a chord pull-off (if the option is enabled).

  *"GH2 Sloppy" = Guitar Hero 2-like Ho/Po system with sloppy rules.
    * The first note in a string of the same notes CAN be tapped.
    * The note before a chord CAN be tapped.
    * You CAN strum a tappable note while holding a lower fret.
    * You CAN tap an incorrect fret in between Ho/Pos.
    * You CAN hold a higher fret and tap a lower fret.
    * You CAN perform a chord pull-off (if the option is enabled).

"Chord Pull-Off" - Basic premise: Ho/Po note after a chord
  * You CAN pull off any other fingers from a 3-or-4-note chord to "tap" a Ho/Po.
  * You CAN pull a finger off a higher fret from the chord to "tap" a Ho/Po.
  * You CAN NOT pull a finger off a lower fret from the chord to "tap" a Ho/Po (these notes will NOT be marked as HOPOs).

----

===How to report bugs or issues ===
Please refer to ReportingBugs.


----

===Board Speeds===
"Percentage" mode directly uses the "Speed Percent" number you set as the board speed with no calculations during gameplay.....

In all other cases, the "Speed Percent" number is used as a percentage scaler for the board speed
(all other board speed modes involve calculations during gameplay)

=== Neckspeed Details ===
Neck speed is calculated like this:

example bpm = 150
example speedpercent = 90% (which is 0,9)

A lower value on the Neck's speed results in a Faster Neck

By BPM:
(340-bpm)/speedpercent -> (340-150)/0,9 = 211,1... on all difficulties
Board speed by BPM will always be fastest on all difficulties (Also tightest hitwindows)

By Difficulty+BPM:
  * Expert:
Constant = 226
(Constant-(bpm/10))/speedpercent -> (226-(150/10))/0,9 = 234,4...
  * Hard:
Constant = Expert Constant + 30 = 256
Gives neckspeed = 267,8...
  * Normal:
Constant = Hard Constant + 30 = 286
Gives neckspeed = 301,1...
  * Easy:
Constant = Easy Constant + 20 = 306
Gives neckspeed = 323,3...
Boardspeed by BPM+Difficulty will always be the second fastest choice, same goes for hitwindows

By Difficulty:
All Constants are 6 less than in Difficulty+BPM. 220, 250, 280 and 300
Expert:
Constant/speedpercent -> 220/0.9 = 244,4...
Hard/Medium/Easy: 277,7.../311,1.../333,3...

Naturally the Neckspeed and hitwindows will be the slowest (and widest) for Boardspeed by Difficulty.

----
----

==Content Creators==
===Creating Careers===
Coolguy said:

Since Hero FoF had the unlock system added to it, we need to make previously released song packs (including but not limited to (I love that phrase): GH1, GH2, GH80's, GH3, GH:A, RB, GH:OT?, PH1, PH2) into song packs that have the correct settings for the unlock system to work. Then we can release these with Hero FoF so people will be able to use the unlock system.

Here's the procedure:
  * Add the unlock_id song.ini setting to each song:
    * This is used to identify and sort songs into tiers. The songs in the song list are sorted by unlock_id.
    * If you're doing GH2, you'd give the tier 1 songs an unlock_id of "gh2_1", except for the encore which would have unlock_id of "gh2_1enc". Tier 2's songs would be "gh2_2", except the tier 2 encore would be "gh2_2enc". And so on. Give the bonus songs "gh2_bonus". The "gh2_" prefix isn't necessary, but it's a good idea to avoid clashes.

  * Add the unlock_require song.ini setting to each song:
    * This must be the unlock_id of the songs that must be completed to unlock this.
    * E.g. GH2 Tier 1 would not have an unlock_require, because it is unlocked by default. Tier 1 encore would have unlock_require of "gh2_1" because the tier 1 songs must be finished first. Tier 2 would have unlock_require of "gh2_1enc" because it is unlocked when you complete the tier 1 encore. The bonus songs should not have an unlock_require (except TTFAF, which would have "gh3_8" because you only unlock it after completing the four tier 8 songs).

  * If the pack is split up into subfolders for each tier, put all the songs into one folder.
    * The unlock system only works across a single library.

  * Create a titles.ini file.
    * This adds titles to the tiers.
    * Place it in the root of the folder with the songs in it (alongside library.ini if there is one).
    * The format is as follows (example for GH2):
{{{
[titles]
sections = tier1 tier2 tier3 tier4 tier5 tier6 tier7 tier8 bonus

[tier1]
name = 1. Opening Licks
unlock_id = gh2_1

[tier2]
name = 2. Amp Warmers
unlock_id = gh2_2
...
[bonus]
name = Bonus Songs
unlock_id = gh2_bonus
}}}
  * The "sections" setting under [titles] just identifies the names of the rest of the ini sections (sections beginning with lines with square brackets).
  * Each ini section refers to a single title.
  * The "name" setting is the text that will be placed on the title.
  * The "unlock_id" setting is the unlock_id of the songs you want the title to appear above.

  * (Optional) Add the unlock_text setting to each song.
    * This is a description to the user (in English) of how to unlock a song. If you leave it out, it will just say "This song is locked."
    * E.g. The tier 1 encore would say "Complete the rest of Tier 1 to unlock this encore." and the tier 2 songs (but not the encore) would say "Complete the Tier 1 encore to unlock."

  * Remove all the highscores from the song.ini.
    * Currently, the highscores are used to determine whether a song has been completed, and if there are already highscores there, you won't have to play the songs.

  * Test it.
    * Go through the career mode in the latest Hero FoF and ensure that everything works as it should.
    * If you can't be bothered to play a song, just play one note and select "End Song" from the pause menu. This will give you a (very low) highscore, but it'll still let you unlock the next tier (NOTE: this should probably be fixed when we release it).

  * Remove the highscores again.
    * You just added highscores by testing the songs, remember?

*NOTE*: the highscores no longer affect the carrer unlocking, so quickplaying
an unlocked song won't cause issues.

----

====Ordering Songs Within Careers====
V3.000 allows sorting within tiers based on song name (as before). Now, prefixes used for tier song sorting (1. 2. 3. etc.) will be filtered out. Songs will be indented forward slightly from their tiers.
This is now the accepted / standard method that should be used for all career packs (song.ini - add 1. 2. 3. 4. 5. etc. to order songs any way you'd like)

For an example of this, see the GH1 or GH2 career pack's song.inis.

===PNG Formatting Help===
Blazingamer said:
When saving an image for FOF in a .png format there are several things you must follow.
  # It has the file extension of .png, exception is with stages where they can also be .PNG
  # Color mode of the image must be RGB. Grayscale, Indexed, or B&W will cause the image to load incorrectly if at all and result in the game crashing.
  # PNG must be saved as non-interlaced. If you set the image to interlaced while saving this will cause the game to hang or crash

=== Guitar Solo Markings ===
To add Guitar Solos to a custom song, you can use either of two methods:

  # Rock Band Method) Add a "Section" marker (this is the most common way, RB uses this method)
Name this section marker "gtr_solo" or "gtr_solo_a" or something like that.
You may have several "gtr_solo_xxx" sections in a row for one single solo

The very next "Section" marker that does not say "gtr_solo" marks the end of the solo.

  # Guitar Hero Method) Add a regular MIDI text event "solo_on" to mark beginning.
Add another regular MIDI text event "solo_off" to mark ending.

Please note, if your solo markers contain any of the following words they might be filtered:
{{{
"Drum"
"Hand"
"Map"
"Organ"
"Verse"
}}}
-----
-----

==Translators==
=== Translations with Accent Marks (') or Tildes (~)===
NOTE: The following does not apply to the updated Spanish, French, French (reform 1990), or German translations - they should work fine by default.

Accent marks and tildes cause FoF some confusion if you don't tell it ahead of time how to handle them.

Right now, we only have two options (and neither completely handles both)...

  # To have the game remove accent marks and display those characters as plain letters
add this line in your `fretsonfire.ini`, under the [game] section (however, tildes will cause errors - "é" is correctly displayed, "õ" displays an error ("codec can't decode byte (...) invalid data"), and there's a risk it will crash or hang at the loading screen):

`Encoding = UTF-8`

-or-
  # To have the game remove tildes and display those characters as plain letters,
add this line in your `fretsonfire.ini`, under the [game] section (accent marks are not displayed correctly - "õ" is correctly displayed, "é" is displayed "A©"):

`Encoding = Latin`

-----

==To read the included .CHM (Compiled HtMl) help file==

[http://www.fileheap.com/software-help-explorer-viewer-download-28269.html Download Software Help Explorer Viewer] (includes windows version)

or

[http://xchm.sourceforge.net/ Download xchm]

-----
-----

==Developers==
===Compiling the Source===
To set up source files for this mod and compile from scratch:
Get the latest and greatest source code from the Source tab. 
For instructions on where to retrieve and how to install the required source modules so you can compile & build FoFiX yourself, see the RequiredSourceModules wiki.