# Submitting a Feature Request for PCGen

The purpose of this document is to provide a walk through of how to properly submit a feature request at Source Forge for PCGen. Please read the Bug vs. Feature to make sure that what you want to submit is a feature request.

Before you attempt to submit a feature request, visit the PCGen Yahoo Group message boards
(http://groups.yahoo.com/group/pcgen),
and describe your feature request. Feature Requests are often referred to as FREQs on the board. This way others can help you refine the request or tell you that it's already been entered as a FREQ or even point out that the FREQ would be useful for another book as well. Once the FREQ has been kicked about and refined you can then submit it.

## Submitting your Feature Request

1. Go to http://sourceforge.net/projects/pcgen/ and go to Tracker (Either at the top of the screen or scroll down slightly to see "Tracker").

2. Click on Feature Requests if you want to request a feature, or Output Request if it's a request related to a character sheet.

3. Search through the listed features, making sure that Assignee, Category, and Group are set to "Any", that Status is set to "Open", and that Sort By is set to "ID", to see if your problem is already submitted. If it is, add a message at the bottom of the feature request detailing your information as well. This will give the developer who takes on this request as much information as possible to best resolve the issue to everyone's satisfaction.

4. If it does not exist, select "Submit New". Make sure you select the appropriate category, Group, and make a concise summary of the request.

5. In the Detailed Description use the following:

   TITLE:
   A _meaningful_ title, for example the LST syntax you are affecting, or the benefit to PCGEN you are providing.
   BENEFIT FOR USER:
   Often our freqs are in code/lst speak, we also need to know, _what_ is this actually providing to the user of PCGEN.
   LST SYNTAX:
   The complete LST Syntax if appropriate.
   OS SYNTAX:
   The complete OS Syntax if appropriate.
   DESCRIPTION:
   The rest

   So for example:
   TITLE:
   Add BONUS:SPELL (Calculate spell range).
   BENEFIT FOR USER:
   This freq will allow users to view the range of a spell they cast on an OS Sheet.
   It will calculate the range correctly using the appropriate caster levels.
   LST SYNTAX:
   BONUS:SPELL=name|RANGE|formula where formula could equal something like = 5*CL+100 (where CL = Class Level)
   OS SYNTAX:
   SPELL.RANGE
   DESCRIPTION:
   The Range could be evaluated - something like BONUS:SPELL=name|RANGE|formula for spell's range (something like 5*CL+100 since CL gets the class level). This would require adding RANGEEVAL to the SPELLMEM tokens, and for that token return getTotalBonusTo("SPELL="+aSpell.name()","RANGE",true)

6. If your feature request involves new tags or syntax, it's always helpful to suggest the name and syntax of the tag. When the developer looks at it they may not go with what you suggest exactly, but it's always helpful to have a suggestion to get the creative juices flowing. :)

7. Finally, hit submit.

## Tracking your Feature Request

You can go and visit your happy little item any time you please and check on its status. Note that the item may very well have been moved, either to a different tracker group within pcgen (say maybe to bugs) or to our sub project pcgendm. If it has been moved to pcgendm your item will have been deleted in pcgen (just select deleted as a filter when searching) but there will be a message stating what Tracker and Number the item has been moved to in the pcgendm project. The pcgendm project is at:
http://sourceforge.net/projects/pcgendm/