Hello and welcome to our community! Is this your first visit?
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 5 of 5
  1. #1
    New Coder
    Join Date
    Feb 2009
    Alexandria, VA
    Thanked 0 Times in 0 Posts

    Thumbs up Fantasy League Scoring Service built on SMF

    Part 1 of 2 posts....

    1) Project Details: (be as specific as possible):
    Long description below; code from prior developers available upon acceptance of working agreement

    2) Payment method/ details (Paypal, check? Timeline?):
    PayPal, Check, Percent of Revenue all available... Timeline is 4 months for baseline service as advanced features can be added afterward

    Introductory Scope
    Since February 2011,*we have only been working with developers who are familiar with the underlying SMF (simplemachines.org) software and DB as the connection to our membership and profiles is critical. *With two initial*drafts of the service,*we may already have this and may require consultation from people to work on coding.
    Below is the latest scope of the project with compensation line by line. *If a
    developer such as yourself can take the two current projects, put them
    together, finish the XML feed, and then move forward to the league
    functions then we could be in business.*Developers will need to have a background working with online databases (using SQL for DBs), PHP, and perhaps some JavaScript/Ajax.* Compensation is negotiable.* If successful, this project could prove to compensate very well for a long time under a percent of revenue contract.

  2. #2
    New Coder
    Join Date
    Feb 2009
    Alexandria, VA
    Thanked 0 Times in 0 Posts
    The following is a summary of what I wish to have in this service.
    Details of each part are prescribed in this message. *The premise of a
    fantasy scoring service is to take daily player statistics (that is
    fed in to a database from an external source), and tally those
    statistics per a league’s custom scoring rules, custom schedule, and
    custom teams. *The total points, or counts of each scoring category,
    must be scored on a custom schedule – which could be daily, X times
    per week, X times per month, or for the entire season (one period).
    The leader of the league is called the Commissioner. *The Commissioner
    may enable other people in the league to edit the settings of the
    league. *Commissioners may invite people in the league through an
    email system in which a link in the invitation email will take the
    user to a screen at website, that if they are logged in, will show the
    league settings page and have a button for them to hit to accept the
    invitation and register for the league. *Commissioners also have the
    option of adding and changing managers by typing their*SMF/website username
    into a field.

    Teams can play against each other, or have multiple opponents during a
    scoring period. *Teams, based on the score, could have a win, loss, or
    tie. *There will be advanced settings that may dictate a certain
    amount of wins , losses, or ties for a team in one individual scoring
    period. *Winning against an opponent can be done by having more
    fantasy points or winning more scoring categories won. *There can also
    be a rotisserie scoring system in which all teams in a league compete
    in multiple scoring categories. *The team with the best score in a
    category (most runs scored, *highest passer rating, or lowest ERA for
    example) would receive N points where N is the number of teams in the
    league. *The last place team in that category would receive 1 point.
    Teams that are tied for a slot would receive (N + N + 1 + … N + m)/m
    where m is the number of teams tied and N is the high ranking they are
    tied for. *The totals of all categories are added for a final

    How teams score in the custom scoring system and custom schedule is
    based on their team. *Their team is made up of real players on a
    fantasy team assembled by the manager in some fashion. *Teams must
    start the players on a day to have such a player eligible for points.
    This is called setting a lineup. *This can be done once per scoring
    period or on a daily basis. *Additional settings can be put in place
    that give a daily (or by period base on when the lineup can be set)
    deadline for when the lineup should be set by – such as one minute
    before a player’s game, or five minutes before a player’s game.
    Players may be started at certain custom positions based on
    eligibility rules. *The rules would simply look at how many games a
    player played (or started) at a position during the year and past
    years, or go by the default position.

    Teams, per the league settings, can add, drop, demote, promote, and
    trade players. *There will be many ways that teams can do this per
    settings. *Trades would have to be accepted by another team and could
    be reviewed and voted upon by the league if a trade was accepted by
    both parties. *For instance, there could be a setting that says three
    votes against a trade within its pending period (2 days, another
    setting), would force the trade to be cancelled. *All moves should be
    shown on a transaction history page. *Just as teams can view other
    team’s players by going to their team page, they can view available
    players at the Players tab where they can view players’ statistics for
    the season or between two dates. *I would like to eventually have a
    few different formats for adding and dropping players. *For instance,
    teams could be allowed to flat out release players, have it be
    approved by the Commissioner, or have it be approved by a list where
    if a player was on a no drop list then the drop would not be allowed.
    Players could be added in many ways as well with a bidding system, a
    system add, or a waiver system in which the team at the top of the
    waiver list would have first priority and the add would be decided
    after a certain period. *If bidding, there could be rules that govern
    an auction credit bank each team has and how many leading bids they
    may have at once.

    An additional part of the scoring service is the draft applet.
    Leagues could choose to draft offline in which the commissioner will
    load the teams’ players. *This is of lower priority in the entire
    project, and upon completion of other areas of the project, we can
    discuss the possible Java applets needed for this task. *There would
    need to be a way to draft players slowly by adding the available
    player of your choice when it is your turn (or do this in a quick live
    format), or an auction draft that can be slow or fast. *The Java
    applet would be needed for a live draft (fast).

    Commissioners will need to have the ability to PM all members of their
    league or email all members of their league through a contact page.
    Member of the league will need to be able to see the settings of the
    league at a clean page.

    Old seasons of a league will need to be saved and archived to view.
    Leagues will have their own message board that uses SMF. *This is
    designed to be part of the league page. Leagues can be made available
    to view (not post within) by the public or simply made private in
    which someone needs to be a member of the league to view. *As the
    admin of the entire system, I would need a way to see total page views
    of each league, each month, for each sport along with totals. *The
    pages would need to be designed to share some design with the current
    forum pages, and perhaps these themes can be blended.

    *I have an idea of how the database connections could work. *For
    instance, a given league would need to have a players table that has
    the player’s ID# (used internally to index players per each sport),
    and a column for each scoring period. *Within the columns would be IDs
    that would show the ID# of the team the player is on (O if available
    free agent), a dash “-“, and then a code for the player’s status (S –
    Start, B – Bench, IR – Injured Reserve, D – Demoted). *Of course, you
    can determine what you think is best for behind the scenes, but I
    figure my thoughts are at least helpful. *Based on the codes within
    the scoring systems (which cannot be determined until the lineup is
    set), the system will then know how the match should be scored. *A
    manager should be given the ability to set a future lineup, and all
    lineups after the last lineup that they set are assumed to be equal to
    the last lineup. *The scoring of a player can look up into the player
    statistics database based on the player’s unique ID# and the date.


    *- Per developer's recommendations of improving system processes,
    update existing 'Phase I' code (where Phase I is the initial framework
    of creating leagues, teams, player universes, and inviting members).
    *- Fix issue where user accesses football.php, and despite being
    logged into the site, shows them as logged out.
    *- Fix issue where user logs in (after football.php says they are not
    logged in) and the return page is the forum index, not football.php
    *- Current Commissioner Tools have everything divided by DIV boxes.
    It is actually pretty nice, but the number of settings will greatly
    expand. *My thinking was a root Commish Tools section with links to
    each sub-page of controls.

    II) LEAGUE PAGE = $50
    *- The original developer did not code the League Page correctly.
    Right now, the link goes straight to the league's associated message
    board. *The League Page should be its own PHP page that will display
    like the attached Sample League Page image. *This displays the
    Standings of the league, the header (which is already in existence in
    other pages), and the message board. *The SMF message board that is
    associated with the league is created as part of the existing code.
    When the user utilizes that board (post, reply, sticky, lock, merge,
    view, etc...), they should be returned to the League Page.
    *- Keep in mind that leagues will continue in future years. *They
    should have a new league page for each season, but utilize the same
    league message board. *The only people allowed to post in the league
    message board are the ones in the current league.

    *- Data should have two ways that it can be input. *I am willing to
    settle on CSV manual upload for now as it saves on current costs. *CSV
    uploads would occur daily.
    *- XML feed from Sports Direct Inc should eventually be available, but
    consider that an advanced setting right now.

    *- Add scoring configurations to the Commissioner Tools. *This will
    require a lot of my input, and I should know how to edit the available
    scoring modifiers. *For example, rushing yards will be in the database
    in some table. *A scoring modifier should be available for rushing
    yards. *This allows the commissioner to award X points to a team for
    players' rushing yards.
    *- Most leagues will use the scoring methodology of H2H (head to head)
    points, but there is the roto method which can be done H2H or all
    season long. *Managers receive points for each scoring category they
    win. *The all season long method is mentioned in the LEAGUE IDEA above
    and essentially scores all teams together where the worst team
    receives one point in a category and the best team receives N points
    in a category (where N is the number of teams in the league). *Points
    are added up for a total roto score.
    *- Commissioners should be able to set some statistics for league view
    (hence they are not utilized in actual scoring)

    *- Once the availability to program scoring modifiers is set, the Team
    and Players pages should show stats for the qualified period (default
    is current year). *The stats shown should be all stats that are used
    or set for league view. *The team page shows all players rostered on a
    team. *It shows their stats, name, eligible positions, and status.
    Available status are Starting at a position, Bench, or IR. *For
    example, WR-RB Dexter McCluster could start at both WR and RB.
    *- The players page shows all available players as a default. *There
    should be dropdown filters (with a submit button) that allow the user
    to filter the list by position, actual team, fantasy team, taken
    players, available players, and all players.
    *- Date filters: These should be available on both the Team and
    Players pages. *Eventually, I want to display stats in the last X
    days, last X scoring periods, previous seasons, or a previous scoring
    period. *The default should be current year. *This isn't very critical
    to the initial rough draft.

    VI) MATCHUP PAGE = $50
    *- Matchup page: This will take the user to their team's matchup. *It
    will show one team, its starters, and all of their fantasy points,
    with a total on one side and the opposing team's summary on the other
    side. *Users should have no more than one team. *If they don't have a
    team then this screen will say "You currently do not have a team in
    this league". *The matchup page should show links to all other
    matchups in that period with their scores.

    *- Commissioner Tools - Position Eligiblity - Initially, we can use
    default positions set by the database, but I also want each league to
    be able to determine players' positions by eligibility settings.
    These settings look at the number of games a player starts or plays at
    a given position in the current year.

    *- Commissioner Tools - Roster - This is where the commissioner sets
    the positions of players allowed in the league, requirements for
    number of starters per position, number of IR spots, and total players
    on the team.

    *- Commissioner Tools - Transactions - Commissioner can lock all (or
    select) managers from adding, dropping, and/or trading players.
    *- Transactions: through the players page, there should be insignia
    for adding, dropping, or trading a player depending if they are
    available/free agent, on a manager's team, or on an opponent's team,
    respectively. *If, per the Commish Tools, the manager is allowed to
    make a move, clicking this button will take them to an intermediate
    transaction screen that does the following.
    *-- Shows a list of players they can drop if they need to drop a
    player in order to keep their roster legal.
    *-- Shows a list of players they can trade from their team and
    acquire from a different team if it was a trade button.
    *-- List of players shows stats just like the Team/Players pages do,
    and has checkboxes on the left side of the player line if they should
    be included in corresponding transaction (drop/trade).
    *-- Verifies the manager wants to make the move.
    *- If the Commissioner (or assistant commissioner(s)) wants to make
    moves for another team, then they will be given a dropdown section in
    the intermediate transaction screen that allows them to pick the team
    that the player is being added to, or traded to. *Note that any drops
    can be handled from the team page or players page and obviously apply
    to the team that owns said player.
    *- All players acquired via transaction should start off on the bench

    *- Ability for Commissioners to adjust previous scoring periods'
    matchups (+/- points, change of final score, etc..)

    *- The previous developer coded leagues to be private. *You had to be
    a Commissioner or Member of the league to view the league page. *There
    should be a setting that allows the Commissioner to set the league to
    public. *This will allow anyone to view the league page and for any
    site member to post at the league page.

    *- The commissioner should be able to grant partial administrative
    controls to managers in the league. *These controls will be limited to
    transactions: approval of pending trade, add players, drop players,
    trade players.

    XIII) SCHEDULE = $100
    *- The schedule can be generated randomly (a team can never play
    themselves), X% of the schedule is played inside a team's division
    (divisions would have to be even for 100%), or customized.
    *- The commissioner can edit an existing schedule and/or set their
    league's matchups.

    *** BONUSES ***
    *- $500 bonus if above is done by October 5th, 2011

    *- Eventually, there will be settings for minor leagues (and
    eligibility there), min and max number of rostered players at a given
    position, and maximum amount of time stats are allowed to accumulate
    to a fantasy team's score in a season (often used in roto leagues,
    example 1440 IP is a common max for the pitching staff, or 70 IP per
    week is a max, or 9 GS, games started, is a max per week for
    pitching). *Much of this, outside the setting of positions, starters,
    and spots, can be added to the system later on as it isn't initially

    *- More to follow but eventually a unique element of this scoring
    service where players can be bid on from a bank of credits in the free
    agent acquisition budget (FAAB) or from a fantasy salary cap (where
    bidding can be in total contract or annual salary amount)
    *- Bidding periods can be set at X hours
    *- Bidding can be X hours from time of first bid, or X hours from time
    of last bid
    *- Current bid can be public or private (blind)
    *- Settings for maximum number of outstanding bids at one time for a team

    *- Scoring periods, this is an advanced setting that is not needed
    immediately. *The default should be weekly (Tuesday through Monday for
    NFL, Monday through Sunday for other sports). *Eventually, I will be
    bringing leagues to this service that have daily scoring periods,
    three day followed by four day scoring periods, two week scoring
    periods, and monthly scoring periods. *The season scoring period is
    basically the ROTO scoring methodology for a category-based league.

    *- X opponents in a scoring period

    *- Scheduled draft time where all users go to the league page during
    some time prior to the draft (usually an hour) and are able to click
    the ENTER LIVE DRAFT link. *Managers may join at any time.
    *- Drafts can be handled in a standard format where teams pick in order
    *- Draft order can be snaking (1->N, 1->N, 1->N, etc..) or non-snaking
    *- Draft lasts for X rounds (# of players allowed on a team or
    Commissioner Input)
    *- Keepers can be declared ahead of time and input by commissioner.
    This is where Commissioner has control to assign players to a team's
    draft in some round(s).
    *- Managers are required, when they are up to draft in a round, to
    pick a player within a span of time. *There will be a clock showing
    the time counting down by seconds. *Default time should be 90 seconds,
    but commissioner has control to set time from a range of 30 to 180
    seconds. *If a player is not picked then the #1 player in the teams
    Queue is picked. *The queue is a list of players that the manager has
    added to the queue during the live draft session. *If the queue has
    been exhausted (empty) and the manager never made a pick then the best
    available player will be picked.
    *- The best available player will be set according to a manager's
    prerankings if they were made ahead of time. *The next list will be
    the player's projected fantasy points. *The starting lineup should be
    filled before any bench spots. *Roster minimums and maximums should be
    considered as well.
    *- A live auction draft feature should eventually be available where
    managers have $X to bid on all players. *They must draft an entire
    team, so $1 should be reserved for each remaining empty spot on the
    roster. *The user's max bid is equal to the total bank minus money
    spent minus the money reserved for the rest of the team. *Players are
    nominated by managers in a snaking order.
    *- All players acquired in a draft should start on the bench.


    Client*has rights to the code. *The code may not be redistributed
    to anyone else. *Developer may not code this and sell to another
    individual or company NOR use it for their own website. *Payment from
    client*to developer(s) for each task in the project is made upon
    completed testing. *Note that testing is done relatively quickly and
    some bugs will be expected later on in which developer will be needed.
    *This project has the ability to produce many more opportunities for

  3. #3
    New Coder
    Join Date
    Feb 2009
    Alexandria, VA
    Thanked 0 Times in 0 Posts
    Anyone know of someone who may be interested?

  4. #4
    UE Antagonizer Fumigator's Avatar
    Join Date
    Dec 2005
    Utah, USA, Northwestern hemisphere, Earth, Solar System, Milky Way Galaxy, Alpha Quadrant
    Thanked 637 Times in 625 Posts
    My two main concerns with bidding on this: 1) I have no idea what kind of code has been written already, and that plays a major role in how much time it will take me to incorporate more changes into this existing code. 2) You've already estimated how much time it's going to take me to complete each task. What if the state of the current code is a nightmare to work with? Would have an opportunity to revise your estimates?

  5. #5
    New Coder
    Join Date
    Feb 2009
    Alexandria, VA
    Thanked 0 Times in 0 Posts
    I don't know how useable the code is but perhaps it can provide examples. The budgeted estimates are very flexible.


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts