NFL Coaches Club Football File Structures ========================================= Anyone interested in writing utilities for NFL CC Football is strongly encouraged. We feel that having others involved only improves the game. To facilitate the process we are providing structures that define the data and files used by NFL CC Football. If you have any questions about this info please feel free to send mail to MicroProse. Quentin will get the questions to me. This file in the first of several I will release. The Team and Playbook files are the most important ones used. If anyone is interested in the Save Game, Game Film, Game Stats, League Stats, etc. let me know and I will provide the layouts for any files requested. Some info that you will need is that our field is 960 x 427 units big. There are 8 units to a Yard. We treat the X axis as running the length of the field along the home teams left hand sideline. The Y axis is the back of the home teams goalline. 0,0-------------------------------960,0 | | | | | center at 50 yardline is 480,213 | | | | | | | 427,0-----------------------------960,470 Douglas Whatley TEAM FILE ========= #define MAX_PLAYERS 49 struct TeamFile { char Description[30]; char CtrlZ; UWORD Version; char TeamName[13]; char CityName[31]; char Names[MAX_PLAYERS][21]; char Number[MAX_PLAYERS]; char Position[MAX_PLAYERS]; char Speed[MAX_PLAYERS]; char Quickness[MAX_PLAYERS]; char Durablty[MAX_PLAYERS]; UBYTE Weight[MAX_PLAYERS]; char Experience[MAX_PLAYERS]; UBYTE Ratings[MAX_PLAYERS][8]; char Starters[50]; struct CoachSpec CoachInfo; UBYTE TeamRatings[8]; struct _TeamColors TeamColors; }; struct CoachSpec { char CoachName[31]; UBYTE Ratings[8]; UBYTE MiscInfo; }; struct _TeamColors { struct Color Home[64]; struct Color Away[64]; struct Color Primary; // this is color one of the teams cursor struct Color Trim; // this is color two of the teams cursor }; PLAYBOOKS ========= struct PlayBook { UWORD Version; char Title[31]; struct OffPlay OffPlays[80]; struct DefPlay DefPlays[80]; }; struct OffPlay { char PlayName[16]; short Form_x[11]; short Form_y[11]; char Position[11]; char Coverage; char Hole; // offset from the ball along the los the runner is planning to cross char LinePlay; // what should linemen do char StrongSide; // 1 or -1 1 is to the offenses right short Commands[6][18]; // commands work in 3 short groups first is the command, // second and third are modifiers ie Run X Y - where to run // the lineplay command gives the 5 linemen their commands // these are for the other 6 players short Motions[18]; /* 1st byte player, next 2 are x, y to move to */ }; struct DefPlay { char PlayName[16]; short Form_x[11]; short Form_y[11]; char Position[11]; char Coverage; char Hole; char LinePlay; char StrongSide; short Commands[11][18]; };