||||||||


The Great Crash Of 2062
Or The Origin Of "The Bortz"
 

As the Dallas Cowboys were dancing on the field celebrating their back-to-back championships immediately following the 2061 Super Bowl, the league's commissioners were making their way down to a press conference that would change the face of the sport forever. The game was flawed and could ruin the very existence of the USAFL. But this isn't a doom and gloom story. This is a redemptive story.

The story of how the USAFL slammed into the limits of the game's code, then found a way to get around the game's limitations and move forward.
 


Everything was rolling along as normal. The 2061 regular season had just ended with six teams enjoying a season of double-digit wins. The post-season looked to be an arena to showcase the parity of this highly competitive league.

As we do every year, the end of the regular season brings the retirement announcements for the upcoming off-season, along with the much anticipated list of eligible collegiate football players that have declared their intentions for the USAFL College Draft.

Garritt Grandberg, Sim-Commissioner, had just uploaded the completed regular season stats and the upcoming off-season rookie/retirement data. The toughest part of his job was behind him. He could now sit back and enjoy two-weeks of off-season events before having to crank out another season sim.

Within an hour or so the first reports started coming into the league offices.

"Have you guys checked out the rookies yet? Something is wrong with the DBs," was echoed in all the incoming emails.

Sure enough. The rookie DBs were all screwed up. There were about 60 DBs all with the name Benoit Bortz. All of them with the exact same ratings.

Garritt re-ran the off-season batch files and the same output was generated.

Commissioner Andrew Lewis called for an emergency online meeting of all active commissioners, including FBPRO-Wunderkind Todd Ricotta. No one had ever seen a bug like this.

For years everyone associated with the USAFL wondered how many seasons the FBPRO simulation could handle. Was this the first sign of the game failing us?

In the early days of FBPRO there were numerous rumors of what the limitations of the game were. Several self-proclaimed experts said the game would not be playable past a timestamp of 2039. Something to do with Microsoft operating system flaws.

As we had done numerous times in the past, Lewis put in an urgent call to Lorne Sundby, designer of dozens of third party applications that make FBPRO more enjoyable. Sundby is widely known around the world as a very generous programmer, willing to assist any fellow FBPRO gamer with any system errors or league file crashes. His reputation is extremely appreciated in the USAFL world as he has saved our league from crashes at least a dozen times. But to Lewis, this incident seemed different from all the previous ones.

After a cursory look, Sundby responded by saying that he had no answer for us. He had never seen anything like it either. No hope.

No one knew what to say. Everyone in the meeting was floored at Sundby's response. No one dare utter the phrase, "is this the end?"

At this point, only the commissioners and Todd Ricotta were aware of the problem. Lewis asked to have 24 hours to ponder what just happened.

And what was going to happen.

Overnight Lorne Sundby kept thinking about our data and the duplicate Bortzes. In the morning he set aside some time to gather some of his data from his early days of designing FBPRO applications then took another look at our league files.

What he found was mind-boggling.

The designers of the game did in fact put a limitation on how many players the game could handle in their database. So much for their marketing of "play as many seasons as you want!"

Once again, Sundby's dedication to giving his time and energies to benefit his fellow mankind left us all humbled.

The game had failed us, but no one could bear stopping. And no one wanted to start all over again. A plan was devised to create a brand new league file using the players from 2061 and begin afresh in 2062. The game would essentially reset it's player and stat database, thus leaving us to have to manually compile stats from pre-2062 with 2062 and beyond.

We made it through. All that was left was to announce it to the world.

The following is Commissioner Andrew Lewis' remarks to the GMs and fans of the USAFL that night, just after the 2061 Super Bowl:
 

For years now, those of us in the USA Football League have known that our little league has done things with the game of Front Page Sports Football Pro that no other online league has come close to.

Last week the USAFL broke another barrier. Upon entering the 2062 off-season, we reached the physical limitations of the game's code.

Lorne Sundby, the internet's guru on FBPRO, confirmed our suspicion with the following:

"This is a new one for me. I believe that your league has reached a logical limit of the game. My look at your players files combined with a glance at the source code for the game itself pretty much confirms it."

The problem lies within the game's PlayerID design. The PlayerID is how the game tracks a player's statistics throughout his career and compares it with the results of other historical players.

Sundby uncovered the following:

"You've basically found out that the game itself can't support a player numbered beyond 32767. I believe that the reason for this is that the player id's are stored in the game's code as a short integer - basically a signed variable that is stored in two bytes, but can range from -32767 to +32767."

Sundby continues:

"Player 32767 is Benoit Bortz. My roster program is built to be pretty much failproof, so even though it reaches the end of the player file it keeps printing the roster for players 32768 to 32839 (you can see this by running roster with the -pid option). Since it can't find player data for the last 70 or so players, it just uses what it has in memory - this Bortz guy. Your kickers and punters (and Safeties, I think) would have been in that crew as well."

Even more:

"I have some internal utilities I use to peek inside data files and they crap out when trying to read the player file. So something isn't right. The league file says that the next player created will be assigned 32,840 which implies you have a player database from number 100 to 32,839. But that doesn't net with the player database. It is 1,960,140 bytes in length which implies (1,960,140 minus 60) divided by 60 = 32,668 players. Or, numbers 100 to 32,767."

The game itself cannot be changed. There is no way around the way FBPRO designed the game and be able to continue with our current league files. Sundby was part of the beta-tests with FBPRO and has access to much of the game's source code. And he agrees - we have reached the edge of the cliff.

But is it?

The league has reached the limitations of the FBPRO code, but not our imagination.

Right now, we are migrating the 18 teams from the 2061 USAFL season into a brand new league file. This will allow the league and it's teams and players to remain intact .... but move to a new league file within the FBPRO game.

Downside To Crash:
* All current active players in the league will have no way of tracking their pre-2062 stats with their post-2061 seasons.
* All past players and their records will no longer be viewable alongside the post-2061 players.

Upside To Crash:
* the PlayerID database gets reset. All current players get new PIDs and begin archiving a new stat database.
* We can change the category criteria for CAREER and SEASON so we can see more players in each category
* ALL season stats that occur will be viewable in the SEASON section (no more hunting for rookie stats)
* CAREER areas can now show more than just top 5 in each category. I am considering showing top 50.

What does this mean for the USAFL's future?

Apparently the game will continue to crash once it hits the 32767 player limit. Since we created this current modern era league in May of 2001 and simmed basically 60 seasons. We will have this scenario occur again in 4.5 years or in season 2120 (approx.).

Those of us involved in the programming and operations of the league, have decided that a crash every 60 seasons is workable.

Although - we have begun the early stages of coding our very own stat tracking system that won't rely on the FBPRO's silly PID limitations. So hopefully when this occurs again, we will be able to again migrate to a new league file but STILL be able to maintain our historical statistics.

In fact, once we get that program written, we will be able to go back in time and include the statistics from the 2001-2061 era. Perhaps we should only include from 2010 on, since the USAFL PPP's began then.

In closing, everyone in this league owes a huge debt of gratitude to Lorne Sundby, Garritt Grandberg, Fred Hurtubise, and Todd Ricotta for joining me in my USAFL Commissioner Bunker and managing this crisis.

I am confident that we have weighed all the pros and cons and have charted a course that will keep the USA Football League moving forward for generations.

And finally, it never crossed my mind to start the league over again. That would be giving up. The USAFL stands out because of it's statistical history. We move forward with that history still a part of us.

Good Luck to all of you in this new era.
 

That was several seasons ago. The USAFL continues to move ahead into a bright future. We are still waiting to see what our programmers can come up with to compile stats from all our different eras. It will come.

So too will come the next Bortz limit at player 32767.

But this time we will be ready.

All thanks to generosity of Lorne Sundby, and the creativity of our commissioners.