News Game Downloads Web Games About Donate Links Contact

XEG Studios      Latest News

Boil On, Boilermakers! (03/26/24)

This is the pre-play national championship simulation of the 2024 NCAA Tournament using the prototype of XEG New College Basketball. After several hard-fought games, the two teams left standing are the 2-seed from the West: Arizona; and the 1-seed from the Midwest: Purdue.

Arizona has largely coasted in this tournament with a 29-point win over Long Beach and a 28-point win over Nevada in the first two rounds. The Wildcats got their first test in the Sweet 16 against Baylor, as Arizona survived a late rally and a missed Baylor buzzer beater to survive and advance by two. Arizona got back to their dominant ways with a 31-point win over UNC to advance to the Final Four. Facing a very good Auburn team, Arizona hit their free throws late and survived another missed buzzer beater to advance to the championship game.

Purdue had a very similar path to the final, rocking Grambling by 34 in round 1, then climbing past TCU by 9 in round two. In the Sweet Sixteen the Boilermakers battled Gonzaaga fiercely. A late STAR check gave Purdue the edge and forced Gonzaga to miss a desperation buzzer beater. In the Elite 8 Purdue tore through Tennessee, riding an 18-point halftime lead to a 22-point victory. Facing fellow 1-seed Houston in the Final Four, Purdue nearly choked the game away at the free throw line in the final 2:00, but dodged another buzzer beater to advance.

So here we are with two very similar teams in the national championship game. Both teams have TEMPO (top-tier PPG), SHARP (elite shot %), RANGED (elite 3-point shooting), SPREAD (elite assist stats), and D-BIG (elite defensive rebounding) qualities. The differences are very subtle: Arizona has O-BIG (elite offensive rebounding) while Purdue only has semi-O-BIG. Purdue is TRAINED (top-tier for few fouls) and Arizona is not, while the Cats are semi-HANDSY (good stealing) while Purdue is not. With SRS ratings of 26 for Arizona and 25 for Purdue, the game is about as even as it can get. So let's play!

18:00 1-2-3 ○ 6 6 (6-6) Both teams failed the STAR check and the LOCK check
16:00 1-2-6 • 0 3 (6-9) Purdue passed the SHARP check
14:00 1-2-3 ○ 6 6 (12-15) Both teams failed the STAR check and the LOCK check
12:00 5-6-6 • 5 5 (17-20) Neither team received the STAR bonus
10:00 3-6-6 • 6 7 (23-27) Both teams received +2 points for passing the TEMPO check
8:00 3-3-6 • 5 5 (28-32) Neither team failed the FOUL TROUBLE check
6:00 1-4-4 ○ 2 2 (30-34) Neither team failed the SLOW check or passed the HOT check
4:00 1-3-5 • 2 2 (32-36) Neither team failed the UNRULY check or passed the STAR check
2:00 2-2-3 ○ 4 2 (36-38) Arizona passed the O-BIG check
0:00 1-1-5 ○ 3 3 (39-41) Neither team failed the SLOW check or passed the STAR check

41-39 Purdue at the half. That's about as even of a first half as you can get. Neither team got in any foul trouble, the referees letting the players decide this one. Purdue's excellent shooting early got them a lead, which they held onto for the duration, though Arizona's offensive rebounding would cut the deficit late. The second half would decide this one, but what would be the difference maker? Foul trouble? Hot shooting? Free throws? Let's find out.

18:00 2-5-5 • 6 6 (45-47) Both teams failed the HOT check
16:00 2-5-6 • 4 4 (49-51) Both teams failed the HOT check
14:00 1-5-6 • 3 5 (52-56) Neither team failed the BRICK check or passed the CONTESTED check
12:00 1-1-1 • 9 9 (61-65) Both teams gain HOT quality
10:00 1-2-4 • 0 4 (61-69) Purdue passes the SHARP check, Arizona loses HOT
8:00 1-4-6 ○ 2 2 (63-71) Both teams failed LOCK check
6:00 2-3-5 • 2 4 (65-75) Purdue passes the SPREAD check
4:00 2-4-4 ○ 6 2 (71-77) Decider die makes Purdue lose HOT
2:00 3-4-6 ○ 6 5 (77-82) Both teams failed the HOT check
1:30 2-5 3 2 (80-84) Neither team is BRICK or CONTESTED.
Arizona hits a 3 and fouls. Purdue hits 2/2 free throws.
1:00 2-2 3 1 (83-85) Arizona passes a RANGED check.
Arizona hits ANOTHER 3 and fouls. Purdue hits 1/2 free throws.
0:30 -- - - Advance to FINAL SHOT chart
0:00 1-3 0 0 (83-85) Arizona misses the game tying two at the buzzer!

What a game! Purdue extended their second half lead to 10, but Arizona came clawing back, burying key threes in the final two minutes to make it a game, but failing to hit the game-tying two at the buzzer. Congrats to the Purdue Boilermakers, the 2024 National Champions!

So that's it, that's the game. Here's the final bracket. Now I need to figure out what else to do with XEG New College Basketball now that we've had some unexpected success. Right now I think the plan is to clean the PDF up, clarify the rules, and add a few additional seasons, making a digital verstion as well. Of course that will happen while I'm still working through XEG Hockey improvements.

Thanks to all the new people who have checked us out over the last few weeks, and those who have donated as well. I'm very grateful for all of your interest and support.

Elite Eight and Final Four simulation action! (03/24/24)

On to the Elite Eight we go in our simulation of the 2024 NCAA Tournament using the prototype of XEG New College Basketball. Fingers crossed for realitic results with whatever teams are left... Nothing quite like having straight chalk and then a 4/10 matchup. Let's get into it!

(4) Auburn 79, (10) Drake 55 - This was more fun before both teams got bounced in the first round in real life. Even through the first 6:00, Drake took the first lead after a successful SPREAD check before getting into foul trouble. This opened the door for Auburn to hit free throws, and pass STAR checks and a CONTESTED check to go on a 13-0 run. Drake would stop the bleedind with a successful SHARP check and went into halfttime down 8. In the second half Auburn would use successful LOCK and SPREAD checks to go on an early 11-2 run and really ice things away early. Auburn advances to the Final Four!

(2) Arizona 90, (1) North Carolina 59 - North Carolina got in trouble after just 4:00, and endured a successful Arizona O-BIG check to go down 7 early. Things would get worse for the Tar Heels with Arizona getting HOT and hitting on SHARP checks, as the Wildcats would extend their lead to 15 by halftime. Things would get much worse in the second half as Arizona would pass 5 quality checks and get hot AGAIN, as Arizona would blow out UNC to advance to the Final Four.

(1) Houston 83, (2) Marquette 65 - UH enjoyed a STAR bonus and successful CRISP and CONTESTED checks, as Marquette only won 2 segments and got into foul trouble late in the first half. Houston coasted to a 14-point halftime lead, Marquette would struggle mightily in the second half, failing to close the gap and allowing Houston to return to the Final Four.

(1) Purdue 72, (2) Tennessee 50 - Tennesse got into foul trouble almost immediately, and Purdue took advantage, starting the game on a 19-7 tear. Purdue got hot and exploited Tennessee's foul trouble repeatedly as they surged to an 18-point halftime lead. Could they hang on? Yes. Easily.

(2) Arizona 69, (4) Auburn 67 - It was a close, competitive first half. One STAR check for Arizona was the main difference, as the Wildcats took a 3-point lead into the halftime break. The action really kicked off in the second half, with Auburn passing a pair of SHARP checks while Arizona cleared SPREAD and D-BIG checks. It was back and forth until the very end when two big free throws in the 2:00 block gave Arizona the lead. Auburn had the ball at the buzzer and went for the win—but missed the three, sending Arizona to the National Championship game!

(1) Purdue 72, (1) Houston 70 - In a very competitive first half Purdue consistently chipped away at Houston, with the Coogs hitting on a late O-BIG to keep things tight, with Purdue leading by one at halftime. Houston would use some free throws and lucky bounces to re-take the lead, increasing their lead to 4 by the 12:00 mark of the second half. Purdue went on a tear of quality checks, passing two TEMPO checks and a SHARP check, all in a row. Going into the final 2:00 the Boilermakers had a 4-point advantage. In those final 2:00 Purdue would miss ALL of their free throws, with Houston closing the gap to two with possession in the closing seconds. Houston would go for the win at the buzzer, but missed the three-pointer.

So our pre-play national championship is (2) ARIZONA vs (1) PURDUE, a very feasible outcome and two teams that are still alive in the real big dance, which comes as a tremendous relief—I'm not going to lie. You can view the updated bracket here, and I'll post the roll-by-roll national championship game on Tuesday.

More Dancing! 2024 NCAA Tournament Rounds 2 and 3 (03/22/24)

While real life hasn't played out exactly like we simmed it with XEG New College Basketball, I've still had a good time playing it out on my tabletop in my spare time. If you'd like to do the same, the PDF can be downloaded here, and the excel helper is available a few posts down. Let's get to the action!

(1) UConn 85, (8) FAU 64 - UConn went on a 16-2 run in the middle of the first half, and an 8-0 to close the game and easily advance to the sweet 16.
(4) Auburn 76, (5) San Diego St 56 - The Aztecs had a rowdy crowd there, as they won 8 of 10 first half decider dice, but still trailed Auburn by 7 at the half. Auburn got hot in the second while the Aztecs got into foul trouble, and a 13-2 run later the rout was on for the Tigers
(14) Morehead St 54, (6) BYU 53 - Morehead State hung tough with strong defense in the first half, finding themselves down just 1 at halftime. They would keep things close with their defensive rebounding and strong defense, taking their first lead in the game with 2:00 to play. BYU put up a buzzer beater but failed a SHARP check, allowing Morehead State to take the upset and advance to the Sweet 16!
(10) Drake 86, (2) Iowa State 80 - Was there another upset brewing? Drake got hot early and the Cyclones found themselves in foul trouble early as well, as Drake led by as much as 16 in the first half. Iowa State would go on a furious 15-4 rally in the second half to make things interesting, but could not convert in the final 2:00 to avoid the upset!

(1) North Carolina 81, (9) Michigan St 74 - UNC got hot early, but MSU's ball movement helped them stay in it, as the Heels led by 4 at the half. They would use their tempo and size to pull away in the second half.
(4) Alabama 85, (5) St. Mary's 83 (OT) - Bama got hot early, allowing them to push through early foul trouble, as the Gaels only won 2 segments in the first half, going down 11 at the break. Using sustained pressure in the second half, St. Mary's would claw all the way back, draining a buzzer beater to force OT! In overtime Alabama would hit their free throws to pull ahead, as a second Gael buzzer beater would fail a SHARP check.
(3) Baylor 76, (6) Clemson 64 - A very even first half saw the Tigers down 6 at the break, and an uneventful second half saw more of the same as Baylor pulled away.
(2) Arizona 83, (10) Nevada 55 - A 19-4 run in the first half helped put this one away early, as Nevada offered little resistance to Arizona.

(1) Houston 90, (9) Texas A&M 63 - Another case of a team just being overmatched. A&M won just one segment in the first half and were checked out early in the second half.
(4) Duke 89, (5) Wisconsin 67 - Wisconsin had foul trouble early as Duke surged out to a 12-point halftime lead. They would add on in the second and roll into the sweet 16.
(3) Kentucky 93, (11) NC State 74 - NC State fought valiantly, down 9 in the first half after successful STAR, SHARP, and BLOCK checks for the Cats. They would run out of gas in the second half, allowing Kentucky to cruise.
(2) Marquette 71, (7) Florida 68 - Florida would spread the ball around and get hot to stay in this one early, only trailing by 2 at halftime. Early foul trouble for the Gators would complicate their upset bid, but they still had a chance, missing a shot at the buzzer.

(1) Purdue 70, (9) TCU 61 - The Frogs used several HANDSY checks and Purdue foul trouble to go into the locker room up 1 and smelling upset! The Boilermakers would fight back, going on an 11-2 run early in the second to take momentum back. While TCU made it competitive, Purdue hit all of their free throws at the end to extend the lead and advance.
(5) Gonzaga 90, (4) Kansas 67 - Both teams were in foul trouble by the 14:00 mark of the first half. The Zags rode the strengths of their big men and enjoyed several TEMPO checks, their speed giving them an 11-point halftime advantage. Gonzaga would reap more TEMPO benefits while KU would fall into foul trouble, Gonzaga finished the game on a 10-2 run to head to the sweet 16.
(3) Creighton 96, (6) South Carolina 74 - Creighton just wore down South Carolina over the entire game, as the Gamecocks only won 2 segments, never putting up a fight.
(2) Tennessee 88, (7) Texas 72 - Both teams failed a LOT of quality checks in this one, with Tennessee riding two passed STAR checks to a 7-point halftime lead. This would continue in the second half with Tennessee hitting on late SPREAD and LOCK checks to make the game look less competitve than it was.

(4) Auburn 58, (1) UConn 57 - UConn benefitted from 2 SHARP checks and a LOCK check as they surged to a 9 point halftime lead. But Auburn would fight back, going on a 14-2 run with a LOCK check, a SHARP check, and a SPREAD check, while UConn got into foul trouble. Auburn would retake the lead at the 4:00 mark, and UConn would have the ball with a chance to win at the buzzer, but they would fail the STAR check, letting Auburn advance to the Elite 8 and knock out the first 1-seed!
(10) Drake 84, (14) Morehead State 69 - Morehead came out hot, exploiting Drake's size with a D-BIG check and 2 O-SMALL checks, to jump out to a 19-8 lead over Drake. The Bulldogs would spread the ball around and get Morehead into foul trouble, cutting the deficit to 2 by halftime. Drake would get a defining period in the second half, with consecutive RANGED, STAR, and STAR checks to go on a 16-4 run, taking away the momentum and ending Morehead's Cinderella run.

(1) North Carolina 81, (4) Alabama 80 - What an exceptional game. Tied at halftime, North Carolina used a LOCK check and a D-BIG check to get some separation, but Bama came back with a SHARP check to go into the final 2:00 down 6. Alabama would go on a 5-0 run and had the ball at the buzzer with a chance to win it, but the shot didn't fall.
(2) Arizona 86, (3) Baylor 84 - Another banger of a game, as these teams traded SHARP and RANGED checks in the first half, going into halftime tied. Arizona used two STAR checks and a D-BIG check to pull away, though Baylor made a furious effort in the final 2:00, outscoring Arizona 8-3, but missing the buzzer beater to fall.

(1) Houston 73, (4) Duke 56 - Four of the last 5 segments in the first half had passed quality checks, with Houston taking 3 of them, riding a 13-2 run to a big halftime lead. Despite playing basically even with the Coogs the entire second half, Duke could not recover.
(2) Marquette 74 (3) Kentucky 71 - SPREAD checks helped lift Marquette to a 2-score game at halftime that was otherwise very well balanced. In the second half Marquette pulled ahead late with a HANDSY check, and Kentucky's game tying buzzer beating 3 failed the STAR check.

(1) Purdue 80, (5) Gonzaga 79 - Purdue rode successful SHARP and O-BIG checks to a 5-point halftime lead. The Zags went on a 10-3 run to start the second half to regain the lead. The teams played even for a long time until Purdue got a late STAR bonus to put them up 1, and Gonzaga's last second upset big failed.
(2) Tennessee 69, (3) Creighton 59 - Early foul trouble for Creighton would give Tennessee's offense a boost in the first half, and in the second mulitple LOCK checks going the Vols' way helped seal Creighton's fate.

View Bracket

Elite 8 and Final Four action will be posted on Sunday!

Simming the Big Dance - Round 1 (03/20/24)

XEG New College Basketball has been very well received thusfar, and you can download the free tabletop game in the post below this one. I promised to play out the NCAA Tournament with it, and here are the play-in games and first-round games. I'll share the second and third rounds tomorrrow.

Howard 76, Wagner 61 - Wagner found themselves punished repeatedly by their SLOW and ZONE• qualities, going down 12 at the half and failing to close the deficit in the second frame.
Colorado State 80, Virginia 75 - CSU's STAR advantage came into play 4 times in this one. UVA hit two big 3s in the closing :90, but CSU hit their FTs to secure the win.
Grambling 75, Montana St 74 - Montana State got into foul trouble early, trailing by 5 at halftime. This one came down to the last shot, with Montana State missing a 3 at the buzzer!
Colorado 66, Boise State 63 - Boise State got hot late, overcoming several ZONE quality issues as the Broncos got within a shot in the final seconds, but missed a 3 at the buzzer to lose.

(1) UConn 89, (16) Stetson 65 - UConn cruised in this one with 4 TEMPO bonuses and 4 successful STAR checks
(8) FAU 91, (9) Northwestern 88 (OT) - High drama! Northwestern hit a three AND was fouled at the buzzer, but MISSED the free throw for what would have been the game winning 4-point play! Northwestern had another chance to tie in OT, but missed the three as FAU survives!
(5) San Diego State 89, (12) UAB 60 - UAB found themselves in foul trouble early and often in both halves, as they never led this game.
(4) Auburn 99, (13) Yale 72 - Auburn got hot early and stayed hot, enjoying a 19 point halftime lead. The Tigers passed 3 STAR checks and got 2 STAR bonuses in the easy win
(6) BYU 80, (11) Duquesne 64 - Duquesne got into foul trouble early and BYU passed 3 non-STAR quality checks en route to an easy victory.
(14) Morehead State 69, (3) Illinois 67 - Both teams were in foul trouble early, but Morehead State went on a 16-5 run to close the half up 8. Illinois would claw back, but fail a RANGED check on what would have been the game winning 3, as our first big upset goes down!
(10) Drake 88, (7) Washington St 73 - A 2-point game at halftime got out of hand in the second half, as Washington State had significant fouls in 3 straight time blocks, letting Drake go on a 17-4 tear to pull away for the easy win.
(2) Iowa State 87, (15) South Dakota State 66 - The Jackrabbits passed two huge SHARP checks in the first half, and got into halftime tied, but the second half was all Cyclones, as South Dakota State got into foul trouble early and got outscored in 8 of 10 time blocks.

(1) North Carolina 105 (16) Howard 58
- UNC started this one on a 24-4 tear and never looked back, taking their foot off the gas in the second half but still winning by 47.
(9) Michigan State 75, (8) Mississippi St 72 - A great game with multiple ties and lead changes. The Spartans had a 2 point halftime lead and overcame 10 minutes of foul trouble in the second half to hold on, as Mississippi State failed a star check and missed the game-tying 3 at the buzzer.
(5) Saint Mary's 77 (12) Grand Canyon 65 - GCU got in foul trouble early in this one, and St. Mary's managed to navigate their way around all of GCU's qualities except for some TEMPO bonuses in an easy win.
(4) Alabama 87, (13) Charleston 71 - All the quality checks went Alabama's way and the decider dice was unkind to Charleston in 4 different instances as the Tide rolled to a smooth win.
(6) Clemson 83, (11) New Mexico 69 - Clemson closed out the first half by getting hot and outscoring the Lobos 19-7. New Mexico actually won the second half but it wasn't enough to overcome a 17-point halftime deficit.
(3) Baylor 80, (14) Colgate 61 - Colgate got in early foul trouble and Baylor went on a 16-2 run in the first half as Baylor easily rolled.
(10) Nevada 79, (7) Dayton 71 - Nevada overcame an early hot run from Dayton and some early foul trouble, as they hit all their free throws in the final 2:00 to pull away for the win
(2) Arizona 76, (15) Long Beach State 47 - Both teams got hot early, and Long Beach used their inside game to only trail by 2 at the half. Arizona would simply overpower them in the second half, getting hot early and going on big runs of 13-4 and 13-2 through their STAR power for the big win.

(1) Houston 87, (16) Longwood 62
- Houston saved all their biq quality checks for the final 6 minutes of each half, ending each half on a 13-3 and 11-2 run as they smoked Longwood
(9) Texas A&M 97, (8) Nebraska 95 (2OT) - These teams failed SO MANY quality checks. In the second half both teams got hot, with Nebraska outscoring A&M 8-4 in the 2:00 block to take a 3 point lead into the final shot, where A&M buried a 3 to send it to overtime! We would need a second overtime, where Nebraska would miss a 3 at the buzzer to fall!
(5) Wisconsin 99, (12) James Madison 91 - What a game... Down 5 entering the final 2 minutes, JMU hit a basket and a clutch 3 while Wisconsin missed several free throws. At the buzzer Wisconsin was burned by their SPACED quality, as JMU beat the buzzer to send things into OT! JMU went down 4 in the final minute of overtime, tying things up to force 2OT, where their luck would run out in the face of 2 STAR checks
(4) Duke 108, (13) Vermont 83 - This one was all Duke from start to finish
(11) NC State 76, (6) Texas Tech 73 - NC State fans traveled for this one, as 7/10 first half decider rolls made NC State the home team, lifting them to a 6 point halftime advantage. Texas Tech had a chance to tie this one at the buzzer but failed a RANGED check.
(3) Kentucky 87, (14) Oakland 86 - Oakland tried to shock the world, hanging with the Cats at halftime, even leading by two in the second half! Kentucky never got a STAR check all game and struggled mightily, trailing by 1 for the game's final 10 minutes until the Wildcats hit a buzzer beater to survive the upset!
(7) Florida 81, (10) Colorado 80 - Florida got into foul trouble early, as Colorado had a 4-point halftime lead. The Gators would rally back behind some solid ball movement (passed SPREAD check) and found themselve down 2 at the end, BURYING a buzzer beating 3 to survive and advance.
(2) Marquette 81, (15) WKU 51 - 3 STAR checks in the first 4 blocks had Marquette out to a 26-8 start, as they enjoyed 5 STAR checks in the first half and an easy win.

(1) Purdue 93, (16) Grambling 59
- Grambling hung tough... for 2:00 or so. But they had foul trouble early in both halves and never had a shot against Purdue.
(9) TCU 66, (8) Utah State 57 - Plenty of good defense in this one, as TCU punished the Aggies for foul trouble late in the first half, taking a 7 point lead into the locker room. Utah State never really recovered.
(5) Gonzaga 65, (12) McNeese 62 - Gonzaga passed 4 first half STAR checks and used their LOCK defense twice as they had a 17-point halftime lead. After the Zags got in foul trouble, McNeese got hot, clawing all the way back, MAKING the game tying three at the buzzer, BUT it was after the clock hit :00, as Gonzaga hung on.
(4) Kansas 93, (13) Samford 51 - Big fan advantage for KU, as they took 15 of the 20 decider dice rolls and enjoyed 5 star checks en route to a blowout victory.
(6) South Carolina 78, (11) Oregon 72 - The Gamecocks built a 7 point halftime lead, but let Oregon come roaring back in the second half until a late CRISP check went South Carolina's way to help put the game out of reach.
(3) Creighton 100, (14) Akron 58 - Akron's top guard got injured early, and it was all downhill from there for the Zips.
(7) Texas 94, (10) Colorado State 70 - Texas got hot and roared to a 55-point first half in route to an easy win over Colorado State.
(2) Tennessee 87 (15) Saint Peter's 64 - Saint Peter's only outscored Tennessee in 2 time blocks as the Vols rolled.

View Bracket

Some Surprises for your Tabletop (03/16/24)

As development continues on XEG Hockey's latest improvements, I found myself playing two games to help relax and unwind: History Maker Baseball from PLAAY Games and Al Wilson's fabulous and free Fast Drive Football. Never content to leave well enough alone, this inspired me to make some things.

For those of you who enjoy Fast Drive Football's college edition, I made a helper that is the equivalent of an online dice roller to help you better play the game. You can access it here, but be forewarned, you need to understand how Fast Drive Football works and have access to any of their amazing free teams to be able to enjoy this, or even honestly to make sense of it. Enjoy.

All of this time playing these two very similar games inspired me to take a crack at making my own. Hence the creation of XEG New College Basketball. It's a tabletop only college basketball game with a play style very similar to History Maker Baseball and Fast Drive Football. Honestly, I don't even know if it's any good... but it's free. If you'd like to try it out, you can download a very rough PDF with the full game and all 362 Division 1 basketball teams from 2023-2024 rated right here. You can also find an an excel file with all the teams and a place to track the action with a dice roller here:

XEG New College Basketball (PDF)
XEG New College Basketball (XLSX)

Games can be played in 5-25 minutes depending on how much you want to document. If you feel confused at all, I recorded a youtube video detailing how the game works, and even played two games with random teams. You can watch it here.

As soon as the NCAA bracket comes out, you know I'm going to play things out with this system and post the results here. Let me know what you think, and if you like it, I may develop things further. If not, I gave it a good try. Anyway, back to XEG Hockey. Thanks for the time, interest, and support!

Feburary 2024 Updates: XEG Football and XEG Hockey (02/09/24)

We're pleased to announce the release of version 1.22 of XEG Football. The updates here are small but mighty. We patched an issue where the AI coaches would sometimes make the wrong call on field goal attempt vs going for it with 6:00-1:00 remaining the 4th quarter, losing by 0-11 points. Keep an eye on this one for us, and let us know if there's any additional odd behavior, as the patch was less thoroughly tested than our usual quality checks.

We also patched out an AI rule that bothered some of our users: players will now sometimes call for fair catches at their own 7-10 yard line instead of automatically letting punts inside the 10 go. You can get the latest update to XEG Football in our downloads section.

That brings us to XEG Hockey, where the main focus this winter has been getting defensemen out of the faceoff circle. That has been going exceptionally well. Here are some of the details.

Players in XEG Hockey will now have a F/D designation. It was important to us to keep things relatively fluid to account for the dynamics of the game, and step one for this has gone very well. This designation helps for team management and carries over to all areas of the game, including the draft class creator, player trader, and more. Most importantly this designation does NOT break older teams who have not upgraded to the new version.

Which brings us to the second change: line breakdowns. Gone are the days of 4 lines of 5 players apiece. Now, lines 1-3 have clearly indicated defensive designations. There is no 4th line defensive pairing, just like in real life. Instead, those last two "line 0" slots are healthy scratches which can be switched out in future games when there are injuries. The defensive pair that plays with the 4th line rotates by period (L3 in P1, 2 in 2, and L1 in P3/OT). This lets you also choose to play a player out of position, which will come with a penalty that is yet to be determined. It's these line assignments that determine who is in or out of the faceoff circle. If a defenseman comes up for a faceoff via our normal methods, the game cycles through and chooses a forward from the appropriate line to take the draw instead.

Again, we're taking special care to allow people who want to play "the old way" with old teams to be able to do that without breaking the game. To finish fully implementing this, we need to establish our out-of-position penalty and clean up some 4th line / plus-minus / statistical stuff as part of this transition that is still breaking the game. Then we can shift focus to other quality of life things, and get the latest update with all of this good stuff out.

Development has been slower than we would have liked, as the day job has had to take priority, but we thank you all for your patience and for the continued interest and support!

XEG Football v1.21 Released (11/15/23)

We are very happy to announce the release of version 1.21 of XEG Football, which cleans up a number of bugs and issues that were reported by you users after the release of XEG Football v1.21. The link to the new version is in our downloads section, and if you upgraded to version 1.2, please upgrade to version 1.21 when you can to avoid experiencing the problems which we resolved in the updated version. Those issues:

  • Fixed new overtime mode, which got very confused when both teams scored TDs
  • Changed DL run range from -100 / +15 to -100 / +5. Pass range DLs only pursue on screen passes. This reduces downfield DL tackles
  • Fixed bug where "PAT on game winning TD" option wasn't remembered between games
  • Fixed bug where on passing plays, the game summary sometimes gave the tackle to the wrong player, sometimes on the wrong team
Thank you for your patience while we went in and fixed things, and thanks to those who took the time to report these issues in the first place. We're now back to our regularly scheduled programming and working on updates for XEG Hockey. We've already made good progress in this last week alone. Thank you as always for your interest and support.

XEG Football Patch Coming (11/14/23)

A few nasty bugs have been reported with version 1.2 of XEG Football. We're working to get those bugs patched, which will be released as version 1.21. In the interim we are pulling downloads for version 1.2, and apologize for the inconvenience. While most of the reported issues are harmless, there is a glitch in the new overtime mode that has the potential to negatively affect the outcome of games. While the issue has been fixed in the upcoming build, we want to test it rigorously before releasing it. We wouldn't want you to have to download the game again. Thank you for your understanding. We'll get this resolved soon.

XEG Football v1.2 Released (11/05/23)

We are thrilled to announce the release of version 1.2 of XEG Football. This version has been in the works for over a year, and includes over 30 bug fixes / adjustments / requested additions. The new version is free and available in our downloads section, along with season 23 of the fictional IAFL and an updated helper stat keeper for your CSV files. We've taken your feedback on a number of issues, and took the time to patch up a lot of things that frankly... just bothered us. The end result is the best version of our game yet. Apologies for not getting this our earlier in the week, but we needed to test the new version on a variety of systems to avoid disappointing you guys.

Here’s a full look at all of the changes, copied and pasted directly from the in-game version history:

  • Fixed issue where Kick returners and punt returners were not showing up properly in the drop-downs of the depth chart section of the player trader.
  • Fixed issue where team ratings in player trader did not match up with team ratings in team editor / pregame.
  • Fixed issue in team developer where players with a new run rating of 71-73 were having ratings changed to 70.
  • Fixed issue in team developer where kicker ratings were... absolutely bonkers levels of incorrect.
  • Fixed issue where stats accumulated during 2-point conversions counted towards player and team stats.
  • Fixed issue where game setting for injuries was inexplicably linked to game setting for sound.
  • Fixed spacing issue in Game Summary on short field goals.
  • Fixed bugs where mouseover on punter/kicker would give incorrect additional info or display nothing at all.
  • Fixed issue where CPU would "shop" all kickers for a given field goal (sometimes choosing incorrectly) instead of sticking with the designated starting kicker.
  • Fixed many CPU offensive coaching issues where they made questionable play calls.
  • Fixed issue where Offensive hover in game didn't show players' experience.
  • Fixed in-game bug with options menu.
  • Fixed a bug where if all RBs were injured and screen pass was called, there was a chance the game would crash.
  • Fixed some play-by-play typos.
  • Fixed issue where some OL were not having stats calculated correctly.
  • Fixed bug where "Recommended starters" in the player trader would not produce the best options for the offensive line.
  • Fixed bug where sometimes players would make a fair catch inside their own 5 yard line on punts.
  • Fixed bug where fumbles lost on kickoffs would be sometimes incorrectly attributed as being recovered by players on the fumbling team.
  • Added Split punt touchback and kickoff touchback, allowing either to go wherever you want.
  • Added "No kickoff" option where teams get the ball on offense at the Kickoff touchback location.
  • Added Pass Defenses to game summary on plays where a pass was successfully defended.
  • Added PDs as a trackable stat, reported in the CSVs, now tied to player ability.
  • Added batted balls at the line for D-Linemen, tied to their pass defense stat.
  • Added new NFL postseason overtime and double-checked how AI coaches handle OT where they MUST score.
  • Added intentional grounding, tied to a QB's audible rating.
  • Added additional football stadiums to increase the total to 285, and changed some to reflect new names.
  • Adjusted Player developer levels for WRs, allowing higher chances for player rating change to rookies and players who catch 7-9% of their team's passes.
  • Adjusted sim time for Quick Sims to produce results approximately 22 seconds faster.
  • Adjusted punts for high-level punters to reduce touchbacks.
  • Adjusted RB receiver ratings on screen passes, so they aren't always losing yards constantly.
  • Adjusted carry distribution for CPU coaches with their playcalling so that star RBs and "hot hands" get more carries.
  • Adjusted defensive stats, removing defensive TD tracked stat and replacing with PDs.
  • Adjusted Draft Class Creator, Team Creator/Editor, Team Developer to account for the new defensive PDs affecting Pass D rating.
  • Partial fix: Yards gained is now mentioned in the PBP after most plays instead of just "He has it at the 45 yard line".
  • Partial fix: Added tackler in the summary on most plays where it matters.

The most significant new addition is that of PDs. Previously passes would be defended with a method that skewed more towards random. Now PDs are a tracked stat that are tied directly to a player’s PASS D rating. Furthermore, now defensive linemen have the ability to bat down passes based on their PD rating, which was not previously in the game. All D-linemen had 70-ratings for PASS D, and could not bat down passes. That has changed.

Also added to the game are intentional grounding penalties tied to your QB’s audible rating, so your QB’s awareness and ability to think on the fly have an even more significant impact. We’ve tightened up the AI so play-calling and player selection are much better. Updated NFL overtime rules are now in the game. We’ve squashed a number of frustrating bugs, and increased the number of stadiums that come with the game by default to 285.

The game isn’t perfect, there are still some issues that we’ll address with a future build, but we’re getting there. Again, the latest update is available in our downloads section for you to enjoy, and if you make any leagues that you want to share with everyone, send them on in, and I’ll add them to the site.

With XEG Football in a much better place, we turn our attention to updates for XEG Hockey, where we have some big updates planned. The first of which is solving the number 1 most requested issue with XEG Hockey: Getting defensemen out of the faceoff circle. We have a plan, and we’ll start acting on it next week. Thank you as always for the interest and support.

World Champions: The New York Lightning (10/28/23)

Congratulations to the IAFL season 23 champions, the New York Lightning! New York defeated the Kolkata Silver Falcons 24-17 in Mega Bowl XXIII in Lima, Peru, in a game that served as the final testing point of XEG Football’s upcoming 1.2 update.

The game itself had everything: Turnovers on special teams, a pick six, a blocked field goal, and so much more. The game’s MVP was New York’s backup QB Bernie Elivics, who entered the game at the end of the first half when league MVP Joe McMillan went down with a knee injury. Elivics ended the day going 12-of-23 for 166 yards with one TD and one interception, but it was his work on the game-winning drive that earned him the award, going 6-for-7 on a 9-play 56-yard drive culminating in a 4-yard touchdown pass to Dick Granthem. If you're interested, the game log can be read here.

For Kolkata, league Defensive Player of the Year DB Jonas Lidary led all players with 11 tackles, and added one PD to the mix. His largest contribution unfortunately was fumbling away a second-quarter kickoff that led to a New York field goal in a game where every point mattered. Star running back Gary Reed had 17 carries for 78 yards, but struggled with the nerves of his first championship game, fumbling 3 times, losing one—which led to a New York touchdown.

The conclusion of the season led to some new records being set. Passes Defended is a new stat being tracked in version 1.2, and it was New York’s Sam Rini setting the early record with 9 PDs in 7 games. Kolkata’s Jonas Lidary also tied a league record with 2 punt returns for touchdowns.

With the season over, this wraps testing on XEG Football version 1.2. We’ll shine it up a little bit, update the documentation, and release it to everyone in the next few days.

Fall 2023 Updates (10/07/23)

After an extended period of silence due to a number of major life changes including another job change, updates are certainly in order. While we have been quiet, there has still been plenty of work going on behind the scenes. Ultimately, much of the silence has been due to a complete site re-design, which took up a tremendous amount of time and then... didn't work. We're working on a plan B, but it will likely be expensive. Stay tuned.

As for the games themselves, the primary objective has been updating XEG Football. Patching bugs and adding requested features/options have been of the utmost concern, and we are not far from a new version coming out that we think you'll love with over 30 tweaks / changes / additions / improvements.

Outside of existing games, we have made some significant progress on two electron-based properties that are advancing through proof-of-concept very nicely.

The first is XEG Boxing, and as you can see from this screenshot the game is playable and executes a match as intended. The goal here is to take Boxing in a different direction, and have a career-option available immediately. In XEG Boxing while you can fight individual one-off matches, the heart of the game is going to be taking a fictional fighter through his career, training him and organizing matches with other fictional fighters, climbing the ranks just as computer fighters are attempting to do the same. It's an incredibly ambitious concept, and one not likely to see the light of day anytime soon, especially given our notorious inability to successfully code any kind of career mode. That said, it's in progress, and we're hoping for the best.

Another property advancing through the stages is XEG Racing. Unlike XEG Boxing, you'll find that the current state of things is absolutely hideous. The reason for the ugliness is that unlike with XEG Boxing, the focus at this stage in development hasn't been on shine and presentation, but on integrating data into the electron-based program. The racers in this screenshot have been pulled from an external file, just as you do with any of the standard XEG games (XEG Football teams are .xeg files, etc). We haven't done this with an electron framework, as all prior games have been created within Visual Studio. What does this mean? Think of it like a writer who has produced a lifetime of works in English suddenly producing a short poem in Spanish. It's baby steps, but it's moving in the right direction. While XEG Racing has been played out on pen-and-paper, having the systems running through a computer will do a lot for determining quality of gameplay, and if this is even a project worth moving forward with. We'll keep you posted.

Before we leave, be sure to check out the latest home-brew produced by our user Bayonetta, who has created some fictional teams for Goal Pro Soccer from the long-running soccer comic series "Captain Tsubasa". It's certainly a unique deviation from the usual replay/pre-play teams we normally see. Thanks as always for your continued interest and support!

Happy New Year - XEG Hockey 4.0 Released! (12/28/22)

Happy New Year from all of us here at XEG Studios! I mean, I'm the only one here, but it's the royal "all of us"...

It's been an exciting last few weeks, with extra free time away from the day job during the holidays allowing us to double-down on development. The World Cup provided a nice little boost, as our 2022 World Cup pre-play from the last update successfully generated a France-Argentina final! As to the rest of the final four and the result of the final... well, we don't need to talk about that. Yes, motivation was high in the last few weeks, and as a result you guys all have one last gift under the tree to unwrap: version 4.0 of XEG Hockey - Available now (for free, everything is free) in the Downloads section.

While some of the changes have been documented in prior posts, the full list of XEG Hockey 4.0 updates is quite satisfying:

  • Adjusted timing so that the final 2 minutes of the 3rd period and OT take twice as long.
  • Added Draft Class Creator like in XEG Football
  • Added Free Agent Files (FAFs) like in XEG Football
  • Added center ice imagery
  • Increased defensive rebound chance on save, decreased offensive rebound chance
  • Cut goalie injury rate in half
  • Patched an issue where trying to change a jersey for a new team without a third jersey crashed the game
  • Added player age to team files, FAFs, and player developer
  • Added many rare events to some dump situations
  • Made changes allowing for a team shell to be created
  • Added option allowing for teams that played a 16-game schedule
  • Added the ability to include numbers and parenthesis in player names
  • Added an additional .8 to GWG scorer in 3-stars star rankings
  • Made Team Editor not default to 3rd jersey on team load
  • Fixed blue column issue on tables within player trader, developer, and in-game
  • Tweaked name generator to add players drafted in 2022, removed some "old man names"
  • Fixed "taps it back" issue where a player who helped to win a faceoff back to the original taker wasn't credited with an assist if that player scored.
  • Many extraneous small bug fixes
It's a substantive list, and we're so glad to finally be able to share it with you. Is the game perfect? No. There are a few small bugs that serve as irritants to me that do not affect gameplay in any meaningful way. We'll work on all of those in the next cycle. If you want to see the new center-ice logos in action, you can also download Season 6 of the CCHL - available in the downloads section. This season featured the Frankfort Stallions as wire-to-wire leaders who captured their first league title in their third straight championship game appearance.

So with XEG Hockey's latest update released, what's next at XEG? Our cyclical development plan calls for a revisit to XEG Football. The list of requested changes and bug fixes is long, but none should require any changes to the team files, which is nice. Also on the table is a revisit to XEG Basketball. The primary issue there is the season mode, which is in development but currently stalled. Once season mode gets implemented for basketball, the floodgates will open to the other games. Another interesting development has been our recent exploration into ElectronJS, a framework that will open doors to several games that have been frozen in development for years: XEG Golf (screenshot from 2018 development), XEG Racing, and XEG Boxing--which has been serving as our primary guinea pig with the new framework. All of these projects are just past the whiteboard stage of development, and are still many MANY months from being playable or being released in any capacity. The potential of this framework is there, and if we can utilize it successfully then we can do great things with it in 2023. So what's next? Maybe a nap and some time with my family...

In closing I just want to thank everyone for their interest, support and donations to help drive forward projects in 2022. XEG Studios has always had to be secondary to my day job because of a simple need to keep the lights on, but my heart is with the work we do here. It's an honor to stay true to the tenets of XEG and provide the best free, highly customizable text-based sports games that I have the ability to produce. I look forward to creating more in 2023!

The World Cup and Hockey Testing (11/26/22)

With the World Cup now in full swing, we had a request come in for the 2022 World Cup teams for Goal Pro Soccer PC. Consider us happy to oblige. This update would have come before the start of the World Cup, but it turns out that we're really bad at predicting starting lineups for these soccer teams. We waited until all teams had played a game so that starting lineups and subs would be as true to real life as possible. Other than that, it is worth noting that these teams are a World Cup PRE-PLAY. That means the players are rated as they would be prior to entering the World Cup, rather than based off their performance in the event. I'm only says this so there will be no surprises when a Saudi Arabian striker is still rated 0 even though he exploded to score 11 goals against Mexico a few days from now. The 2022 World Cup pre-play teams are available in our downloads section. If anyone wants to re-rate the teams after the World Cup ends, we'll be happy to put them here on the site.

So how did our pre-play go? France became world champions again by defeating Argentina, while Belgium defeated the shocking upstart team--Uruguay--to capture third place. Neymar from Brazil, Jewison Bennette from Costa Rica (who had a hat-trick against Japan) and Eden Hazard from Belgium all tied for the goal-scoring lead with 4. How did the United States fare? A win against Iran and draws against Wales and England slotted them into the runner-up position in group B. They would face Senegal in round one of knockouts, and after 120 scoreless minutes, the game went to penalties. Édouard Mendy made the only save in penalties by stopping Weston McKennie's effort, and that was the difference, as Senegal defeated the US in penalties.

Switching gears to XEG Hockey. When we last updated you, we were putting the finishing touches on the latest version of the game. Since then we have been testing relentlessly, playing hundreds of games. Season 6 of my beloved CCHL was part of that testing, and now there is just one final game to play: the league championship between the Frankfort Stallions and Salt Lake Cougars. One of these two teams will win their first title, with Frankfort setting a new record by playing in their third consecutive title game. Salt Lake is in the championship for the very first time. All testing has gone well, and there is just one bug left in the free agent files that eludes me, but it may not be major enough to delay release. Barring anything unforseen, version 4.0 of XEG Hockey will be released before the new year, along with season 6 of the CCHL. Time to get back to work. HAPPY HOLIDAYS to all of you! Thanks as always for your continued interest and support!

Bonus XEG Hockey Dev Update (08/08/22)

The realization hit me that in order to properly play out season 6 of the CCHL, we needed to shift development focus on XEG Hockey.

After implementing Free Agency Files (FAFs), center ice logos, and a bunch of other goodies a little over a week ago, the plan was to add rare plays, test with the new CCHL season, then release version 4.0 into the world, tabling player experience until a later update. The idea was to get this game out into you guys' hands as soon as possible so that you could enjoy all of the improvements. However, it hit me that releasing the game without player experience, then attempting to add it later would break all the new Free Agency Files and render them useless. Those files are dense with information, with no real way to retroactively update them to add additional fields--as I was planning to do at a later date. So, we had to add Player experience at the same time that we added FAFs. The good news is that after a long week of exploring every nook and cranny, this is now completed.

For player experience, we deviated from XEG Football. Instead of tracking years in the league, we instead opted to track player age. With this we included certain target ages for our Player Developer. "Normal" skaters develop at a rate of 3:1, their existing ratings vs their season performance. So a skater with a shot percentage rating of 10% who scored on 2% of their shots this season would develop into a new rating of 8%--provided they take a minimum of 3% of their team's shots--if they don't, their shot percentage doesn't change. Other elements are developed at the same rate if the player plays in a minimum of 70% of their team's games. The addition of player ages allows us to set additional criteria. Young skaters/goalies (under 23 years old) now develop at a 2:1 rate, allowing their performance in formative years to change their ratings more. In the example above, a younger player would develop into a 7% shot rating instead of 8%. At the other end of the spectrum are older skaters/goalies. Skaters older than 28 develop at 3:1, but ONLY if their ratings worsen. If their ratings would have improved, they stay the same. As in life, goalies are a little different. Goalies develop normally (3:1) from 23-34, but once a goalie hits 35 years old, their ratings worsen by one every year, regardless of season performance.

This is all coded up and done in all of the sneaky areas, including the Trader, Player Developer, and even the brand new Draft Class Generator. We even threw in a little feature to "age up" a free agent file, so while players normally gain one year of age in the team-based Player Developer, free agents who didn't play at all would never see their age increase. Now it can be done in just a few clicks.

So with all of the age-based changes now implemented, all that remains is to resume work on the rare plays section, test everything thoroughly with a full season of my CCHL, then declare XEG Hockey 4.0 released for you guys to enjoy. We'll get back to work! Thanks again for the interest and support!

July 31st XEG Hockey Update (07/31/22)

This is the best kind of update. I kept having to go back and edit this post because we kept knocking items off of the to-do list with a frightening quickness. It's always nice to have a positive update.

The Free Agency files are finished and working perfectly. So now you can keep all of your free agents / draft pool players / whatever all in one file, then trade players (or copy/cut and paste) in and out with very little effort and without having to track where everyone went. I look forward to compiling all ten of my CCHL free agent team files into one singular .xegf file before the start of season six.

Also 100% working now is the Draft Class / Player Pool Creator. With the click of a button (well, maybe two or 3 buttons) you can now generate a free agency file with up to 1,000 skaters and 100 goalies. Player ratings are given on a sort of curve, so rarely will you see players with godlike -8 goalie ratings (happened 3 times in a test run of 1,000 goalies), or top-end 19% shot percentages (happened 18 times in a test run of 10,000 skaters). I'm pleased with the results, and will happily be using this to generate next season's CCHL draft class.

Unexpectedly I was able to cross a third item off of the to-do list: Center ice logos. For years I've been unable to get the alpha/opacity right, but I finally cracked the code, allowing users to link to any regular logo in the same directory as their team file, then the system will AUTOMATICALLY adjust the alpha to 0.45 and place the faded logo on center ice for a nice, authentic look.

Finally, just minutes ago I adjusted the code to allow users to save a team shell--a team framework with no players in it--perfect for users looking to create expansion teams or even a full league populated entirely from one player pool draft in the Player Trader. This gives users even more flexibility to create their own teams and leagues however they would like to do it.

So now with quite a few key items checked off the old to-do list, what's left?

  • Player Experience - This goes hand-in-hand with the center ice image, as both require an update to the data saved in a team file. As we do in XEG Football, this would allow players to develop differently after their rookie year, and not develop positively at all after a certain age. With the addition of the center ice image, I've added 60 additional slots to the team file, 23 of which we can use to add in player experience.

  • Rare Plays - These have been teased in prior updates, and will require a great deal of coding and testing to get right, but will definitely add a ton of flavor to the game. Progress has already been quite good, and I'm excited to finish this off.
Reach out and let me know what you'd like to see prioritized, and at what point you'd like to see the updates pushed to production and put the latest build on the website. Thanks again for your continued support!

June XEG Hockey Update (06/26/22)

With the Stanley Cup Final wrapping up any day now (rest in peace to the Rangers, XEG Champions), we wanted to give you a look at the development status of the latest XEG Hockey update.

Fortunately it seems like I do my best work at the airport, because after a few months of stumbling, we've quickly overcome most of the large obstacles preventing us from establishing free agency files, and are aggressively testing this at the moment to make sure they operate without crashing when sending players to and from teams, or other free agency files. If this testing is successful, this feature will be ready for implementation. From there we'll put the finishing touches on the "Generate Draft Class" feature and then put full attention towards rare events and other quality of life fixes, such as more league options.

We've had some good feedback on the rare events so far, but are always looking for more, so please reach out if you have any. After release, we'll dive back into the next round of updates for XEG Football, as our inbox has been filling up with requests for our most popular game.

In the meantime, don't forget that the 2021-2022 NHL season is available, along with the 1963-1964 NHL season--a user-created gem from our friend Rick-- in our downloads section. Thank you as always for the interest and support!

Rangers in Four (05/29/22)

We're continuing to work on the changes previously discussed in XEG Hockey, but decided to take a break from coding to actually enjoy the game, replaying/pre-playing the 2022 Stanley Cup Playoffs. We're pleased with the results, which you can view in PDF form here.

In the first round two series did not go the way of real life, as Ovi scored the series winner in overtime of game 7 for the Caps to eliminate the Panthers, and Minnesota knocked off the Blues in seven. Igor Shesterkin was in regular season form, posting 3 first round shutouts in the Rangers' sweep of Pittsburgh. In round two, Connor McDavid had a hat trick in game 6 as the Oilers eliminated the Flames, while Colorado, Tampa Bay, and the Rangers all rolled.

In the Conference Finals the Oilers lost Mike Smith to injury and couldn't steal a game from Colorado, while the Rangers knocked out the Lightning in 7 in the best series of the year--one that featured three overtime games and a short-handed game winner from Chris Kreider with 15 seconds left on the clock. The Stanley Cup Final was not competitive, as the Rangers overpowered my beloved Avalanche in a 4-game sweep to capture the cup.

Ryan Strome won the Conn Smythe as he led the playoffs in goals with 15. Steven Stamkos was the overall point leader with 23. Interesting numbers, and a fun time was had by all. We also did a loser-advances single-loss tournament of the rest of the league to determine the worst of the worst, but that was less fun. If you want to play all this out for yourself, the 21-22 NHL teams are available in our downloads section.

Back to work for us. Thanks again for your continued support.

XEG Hockey Updates (05/18/22)

As the Stanley Cup Playoffs are in full swing, it seemed like a great time to update you on the progress being made in XEG Hockey's next build. The focus has been on some quality of life improvements similar to XEG Football, as well as adding a few requested changes and rare events.

Currently the bulk of development time is being spent on adding two very popular features to XEG Hockey already found in XEG Football: Free Agent Files and the Generate Draft Class function. Previously free agents had to live within team files, which have a restricted number of players, resulting in users having to create several "Free Agent" teams to stash their free agents. Once the Free Agent file system is implemented, you can store an unlimited number of players--regardless of if they are skaters or goalies--in one file that can then be distributed to other teams via the player trader. It will follow the same .xegf file format used in XEG Football. We'll also be carrying over the Generate Draft Class function from XEG Football, allowing you to quickly generate a class of rookies with skills on a sort of bell curve. The response to this for football has been overwhelmingly positive, and we're excited to carry it over to hockey.

Some changes have already been coded into the game and are just waiting for release:

  • Player name fields will now allow parenthesis and numbers, as some users requested the ability to include a player's number with their name
  • The last 2:00 of the third period and overtime will now deplete in :15 increments instead of :30 increments, giving players more time to make one last push
Finally we are looking to add more rare events to the game. Everything from more obscure penalties to equipment issues. The idea is that the rare events table will come into play on one line of a singular "No penalty - dump" roll in the single penalty section. We'll roll a D10 against this dump, and a 1 will take us to the rare plays table instead of a dump, which we extrapolate will happen roughly once every 10 games. Here's a rough draft of what could be in that Rare Plays table. See anything you want to add or remove? Let us know, and we'll probably make that change. The goal here is to really jazz up the experience, giving something more dynamic.

We're hard at work on this, but may take a quick break to simulate the Stanley Cup playoffs in the next few days... Thank you as always for the interest and support!

XEG Football v 1.16 Released (03/30/22)

We’ve released a substantive update for XEG Football, patching up quite a few bugs and issues, and also adding a much-requested feature: The ability to generate draft classes of up to 900 randomly generated players with one click.

The attribute breakdown is skewed so that most of the players will be backup-level fodder, with a few gems sprinkled throughout. The draft class is saved as a Free Agent File, so you can easily move players from the draft class to team rosters in the player trader. We’ve also loosened up restrictions in the team creator to allow team frameworks to be created without filling in the rosters, allowing partial teams to be created sand saved then filled with the player trader, perfect for starting a new league with a full expansion draft.

Here’s a full list of all improvements to XEG Football:

  • Added the Generate Draft Class feature
  • Loosened team creator restrictions, allowing teams to be saved without being finished
  • Added yards gained to play-by-play after most receptions with no YAC that end in-bounds.
  • Fixed bug affecting home team punt return fumble stats
  • Tweaked AI coaching for onsides kicks, fourth down decision-making and spiking the ball
  • Corrected typos in play-by-play text
  • Reduced number of tipped balls caught by receivers
  • Corrected ball placement on missed field goals
  • Corrected bug leading to a high number of missed PATs
  • Fixed bug where injury and sound options were not saving correctly between games
  • Fixed bug where a cancelled CSV file save still told you it had been saved
  • Fixed colored column issue in the Player Trader

Version 1.16 is available now in the Downloads section. This new version also comes with season 22 of the fictional International American Football League—a season that saw four new expansion teams begin play and the Ostrava Black Lions win their second world title in three seasons. There are many more changes still to come for XEG Football, especially with us needing to implement the new NFL overtime rule that came out yesterday, but this is a good set of improvements for now, allowing us to cycle to the next item in development.

From here the focus will turn back to updates to XEG Hockey, as we plan to add more rare events and adjust the way the clock functions at the end of games. XEG Basketball is not forgotten, and we’re working on some new, exciting developments using the Unity Engine as well. Though the site only updates when we have big news, we’re always working. Reach out through e-mail with anything you need. Thanks again for your continued support.

Hockey Updates, Football Coming (11/28/21)

2021 has been a long year for all of us, but development has continued on all projects here at XEG. We'll be providing more updates heading into 2022. We are continuing to push forward on improvements to all projects, just not as quickly as we would like. The bulk of 2021 has been spent on XEG Basketball, and the elusive season mode. The concept has been tested, scrapped, and rebuilt at least 5 times since the spring, without success. Further development of XEG Basketball has been paused so that we can move the chain on other projects, but development will resume after a sufficient "breather."

Pausing basketball allowed us to turn our attention to XEG Hockey, where a number of key improvements were made:

  • Fixed issue where Team Developer was stripping teams of their third jersey
  • Changed max injury length from 3 to 10 games
  • Added "EXCEPTIONAL" pregame roll for goalies, granting an extra point gain for the goalies with the most positive roll
  • Reduced chance of a post-save scrum penalty by 40%
  • Reduced overall penalty rate
  • Fixed "players are skating into position" loop bug
  • Changed AI to prioritize starting the "hot" goalie if two goalies are equal due to a "BETTER" or "EXCEPTIONAL" roll
  • Fixed the issue of penalties and injuries happening behind the scenes with no PXP and hidden whistles
  • Changed minimum team powerplay shooting boost to +1% instead of +0%
The changes are all tremendous improvements, and were fully vetted in season 5 of the Capital City Hockey League, (available now in our downloads section), which saw the Lincoln Lions capture their first league title. I hope to post up some additional NHL seasons in the coming weeks.

With XEG Hockey reasonably updated and basketball tabled, we've returned our attention to XEG Football, and are addressing various bugs and other issues found in that game. Some quick wins that we've already had are:
  • Fixing the bug in the Player Trader/Team Editor that crashes the game if you attempted to let the CPU pick the best starters with insuffient players available
  • Fixing the bug that calculated field goal length incorrectly (was 1 yard too long)
  • We removed the gaps created in Free Agent Files (FAF) when a player gets moved from a FAF to a team, making the FAF easier to navigate
  • We added a cancel button to the save team screen in the Player Trader, and disabled the SAVE buttons until after loading a team (preventing crashes)
  • The Player Trader now remembers your starting lineup choice after a save (instead of forcing you to save then reload)
  • Fixed the error where choosing kickoff touchbacks to go to the 25 made ALL touchbacks go to the 25
  • Updated some stadium names and added more variety to randomly generated player names
These have been patched and are in the current build available on the site in our downloads section. Others will be worked on. I'm grateful I found these when trying to populate several expansion teams for the fictional IAFL. While that expansion draft caused me some headaches, anything that exposes bugs to be patched is a good thing. We'll be continuing to work on XEG Football improvements into 2022. See something that's not on the list? Let us know, and we'll do everything we can to get it all taken care of.

We'll close as we always do with community contributions. Thanks to Bayonetta for creating and sharing the 1985 Ice Hockey World Championship Pool C, available now in the downloads section. Also a special thanks to Charley, who is creating a phenomenal XEG Studios Community Facebook page, which is will definitely be worth checking out when he finishes if you're looking for like-minded folks to talk to about these games. Once again, thank you to all of you wonderful people for the patience and for the continued interest and support!

Spring Update - Continuing the Process (03/23/21)

It's been quite a while since our last update. This has been due to some COVID issues (don't worry, everyone is okay), and a slowdown in the process with our improvements to XEG Basketball.

As you know, the main objective for our next XEG Basketball update was the implementation of a full season mode. If successful, this mode would be the framework used to easily add a season mode into XEG Football and XEG Hockey. Regrettably the progression on this has hit a few bumps. While the standalone season elements and individual game components work well as separate entities, integrating them has proved challenging. Four months into the process, we don't have anything to show for our work. Production has not stopped, but has slowed tremendously while we work through this challenge. We'll get there. When we do, we'll also have season 4 of the PCBA to download, as this fictional league has been on hold in the hopes that it can be the guinea pig for the new mode.

Special thanks to one of our users, Charley, who took the time to share with us some leagues for Goal Pro Soccer PC: The 1982 American Soccer League, and the 1981 NASL. Two very cool sets, that can be found and downloaded for free in our Downloads section. Thanks again for your time and patience Charley! Always feel free to reach out to share your own home-brew leagues. It might take us a minute to update the site, but we'd be thrilled to host your creations here for others to enjoy.

Thank you for the interest, PATIENCE and support!

January Update - Happy New Year! (01/01/21)

Happy new year from us at XEG! We hope 2021 has plenty of reasons for you to be hopeful, in all aspects of your life. We certainly are. The last time we updated, we were plowing through changes to XEG Basketball and integrating a season mode. That has been very successful thusfar. Last month we showed off our "analog team" concept for scheduling, and that has proven to be an excellent method for scheduling any season quickly and easily. Player control can now be changed with one click, either for the season or for individual games. One of the largest concerns was the tracking and handling of all the data. XEG Basketball's season mode now easily tracks standings for a season, team statistics--both totals and per-game, player statistics for everyone in the league, sortable by team, injuries, playoffs, and more. It's a phenomenal start, and the next step is integration with the single-game mode, which will allow stats and results to be ported back to the season mode. A tough putt, but I look forward to the challenge. If this thing works, it should translate easily into our other games.

One project that we spent significant time on during the holiday break was a fairly new development: A college basketball game with three wildly different components: Recruiting, gameplay, and team management. Gameplay is based on a variant of our un-released Audible Football card game, so it won't be for everyone, but has been tweaked to work very well with the wide range of opponents a college basketball game presents. Recruiting is a clean, streamlined endeavor where schools need to find recruits whose interests match their strengths. Finally there is the team management aspect, where you have the balancing act of growing your student athletes as people, academics, and athletes, while also contending with outside pressures from boosters and administrators. The pen and paper version of this is finished, and tests have gone exceptionally well in excel. The next step is to start coding, which will be done in a new cleaner framework, which will improve the look of the game, as well as addressing some of the complaints people have had about full-screen mode. We're still many months away from this seeing the light of day, but I'm excited about it. I thought you might be as well.

Finally we give thanks to another community contributor: Adrian, who created the 2020 MLS for Goal Pro Soccer PC. It's very well done, and available in the downloads section for everyone to enjoy. Thanks Adrian! 2021 is shaping up nicely. Thank you all for the interest and support!

December Update - Tackling A Daunting Task (12/08/20)

Contrary to the radio silence we've been exhibiting on this site, we've been hard at work along our development cycle making improvements to XEG Basketball. The to-do list is substantive, but we've made good headway in a number of areas, including the option to turn off the three-point shot, some tweaks to get the CPU to use a shorter bench, and many more items requested by our users, such as the ability to only export the CSV stats for one team instead of both.

Without question, the most daunting task has been the implementation of a Season Mode. Doing this correctly will give us the framework to integrate that system into XEG Football and XEG Hockey, as well as future games. Early progress has been extremely encouraging. Season CSVs for older seasons are very easy to manually create, and could make for a wide variety of scheduling options in the future. I've done a deep dive on multidimentional arrays to help store large amounts of data, and thusfar that plan has been very successful. Once game stats make their way into the equation, we'll see if that remains true.

For scheduling we are developing the "Analog Team" concept. When a schedule file is loaded, that file automatically populates up to two tables based on the teams and the conferences from that season. Alongside each empty team slot is an "Analog Team" pulled from that season file, which needs to be paired with an ACTUAL team. Whoever you pair with an analog team will play that team's schedule. For example: If you use the 93-94 NBA season, whoever gets paired with the "Miami Heat" analog team will play the Miami Heat's schedule, which had them start the year with 3 straight games on the road against Utah, Phoenix, and Golden State. The team paired with analog Miami will go on the road to play at the teams paired with analog Utah, analog Phoenix, and analog Golden State.

This makes it very easy to replay historical seasons, just by pairing historical teams with their own analogs. Or you can try some crazy revisionist history where the New York Knicks are replaced by--oh, I don't know, the PCBA Champion Bellingham Bells, who are paired with the analog Knicks and are primed and ready to play the Knicks' schedule. It's all up to you! There's still a long way to go, and it isn't much to look at, but the signs are encouraging.

Before we wrap this up, we have a few community seasons to share with you in the Downloads section. Bayonetta has shared with us another outstanding collection for Goal Pro Soccer PC: a group of 38 different American Pro Soccer teams from 1994. Our user Charley has reached out as well with a collection of World Bowl teams from the old WLAF / NFL Europa. A pair of awesome trips down memory lane! Thanks to these guys for sharing, and please feel free to reach out to share your own home-brew leagues. It would be my pleasure to host them here for others to enjoy.

Thank you for the interest and support!

October Update (10/13/20)

It's been some time since our last update here, and there's good reason for that. We've had the perfect storm of a very heavy workload at my day job, coupled with the need for some much-needed rest after both the aggressive crunch to release XEG Football, and the effort to fix all the bugs and track requests that have come in.

Regarding XEG Football, everything is going great, and if you haven't already, consider updating to the latest version--1.14 (updated on 9/7)--to avoid any bugs that might harm your user experience. We've also just added the 1984 USFL to the downloads section. Thanks to user Wessley for sharing that with us, we are incredibly grateful. Remember if you make some leagues you'd like to share with the world, send them in to us, and we'll share them in our downloads section. We have a solid collection of feature requests and improvements we'll push once we get back around to the XEG Football portion of the developmental cycle.

So where are we in that developmental cycle? We are on updates to XEG Basketball. Some of these are extremely easy fixes. Others will take a great deal of time. The most daunting task on the list is the introduction of season mode, because of the sheer depth that is required. It's basically making a completely new game, and XEG Basketball will set the example for all other sports. So what makes a season mode so difficult? You have to come up with:

  • A way to store a MASSIVE amount of data (player ratings and player/team stats for a whole league, plus schedule information)
  • A way to import historic schedules and create pseudo-random schedules for a wide variety of league sizes
  • A modified game engine that can streamline simmed games faster
  • A way to manage injuries that carry over multiple games, and some AI to adjust starters based on injuries
  • A way to trade players before the trade deadline, and have AI autonomously make those trade decisions

Those are some significant challenges for a one-man studio, but we've already been putting pen-to-paper to try to figure some of these out. Speaking personally, the greatest challenge might just be staying engaged and motivated, as basketball is my least favorite sport (of the sports that we've made games of so far).

Finally, I have some ideas to share with you that have been kicking around in my head for future projects. Nothing official yet, but I have some pen-and-paper for two previously un-announced projects. One in the vein of an absurdist golf game--different from the sim feel of XEG Golf--that will be something along the lines of golf-meets-Death-Road-To-Canada. The other project is a college football game that combines recruiting and off-field matters with the gameplay of my not-yet-released-but-basically-done card game, Audible Football. More to come on both of these at some point in the future.

Post-Release Analysis (08/26/20)

Thanks to everyone who has made XEG Football such a success in our first week (and a half) since launch!

We've pushed a few updates since our 8/15 release, so check it out if you haven't, and I highly recommend downloading the latest version, as each update adds new features and patches out bugs, a few of which had the potential to be game-breaking. The game has been downloaded close to 600 times, and I've personally received just over 200 e-mails with questions and comments. Apologies if I've taken some time to respond to your e-mail. Reviews have been about 98% positive, thank goodness. So what's next?

We'll keep responding to e-mails from people with questions, ideas, suggestions and (hopefully very few) bug reports, pushing new updates as needed. If you make teams or leagues that you're proud of, feel free to share them with me and I'll post them on the site for others to enjoy, as user Wessley did with his USFL 1983 homebrew, and Rick did with his 2015 CFL season. Both are available in the downloads section. The more seasons for people to enjoy, the merrier.

The plan as it stands right now is to continue this for at least another week, then take a very much needed break. I'm absolutely exhausted from all of this, and my work at XEG isn't even my day job. From there we'll continue to compile suggestions for future updates for football and address any bug reports (which mercifully we haven't had in a while) with immediacy. From there I'll turn my full attention to updating XEG Basketball. People have made plenty of requests for that game, and I'm here to help. I just want everyone to have the best experience possible with every game we make.

Thanks again to everyone for all the kind words and donations these last few weeks. I hope to continue to make and update games you enjoy for many years to come.

XEG Football Now Released! (08/15/20)

It's my honor and pleasure to announce that XEG Football is now available for everyone to enjoy for free!

It can be found in the downloads section along with season 21 of the IAFL (which also comes bundled with the game), the user-created 2019-2020 NFL season, and a number of helper files, such as the helmet template used to create all IAFL helmets, and the IAFL MASTER stat tracker, which is just an excel spreadsheet that I find quite helpful.

This is the end of a 6+ year project, but it's also just the beginning. People who have enjoyed prior XEG projects know that we don't stop supporting them or stop making content, we just cycle through. So if you have improvements you'd like to see, let us know! It all goes on a list. We'll spend the next 2 weeks helping out people who have problems downloading or running the game, then take a few weeks of siesta time.

Following that, we'll work on updates for XEG Basketball with a big BIG priority on creating a season mode we can use for other sports, as we continue along the development roadmap outlined several posts below.

Thanks to everyone for the comments and support--both in donations and in words of encouragement. They mean more than you know. We hope you love this game!

XEG Football on Youtube (08/09/20)

As an extra treat 6 days before we release XEG Football, head over to Youtube where you can find us playing out the championship game of the International American Football League--Mega Bowl XXI! The game is CPU vs CPU at 1x speed, with yours truly providing terrible unnecessary commentary. This is the culmination of season 21 of the league, which we played out in the Delphi Tabletop Sports forums here.

If you're interested in this sneak preview, you can find the youtube link here. The broadcast starts at 4:00pm EST. Thanks again for the interest and support!

Fifteen Days To Release For XEG Football (08/01/20)

I came to the conclusion on Wednesday night that the game is finally finished after six years of development. It hasn't hit me yet, but it will. Season 21 of the IAFL is preparing for their Mega Bowl, and at this point all that's left to do is spread the word about the game. Since all of our programs are completely free, we rely on donations mostly from word of mouth. I may try to spread the word in a few more forums than usual, because while I don't do this for the money, I do find money useful for things like buying food.

After the game goes live on our site, I anticipate spending the next two weeks helping people out with technical support, followed by a couple of weeks to breathe and relax before diving back into the roadmap. What is the roadmap at XEG? I'm glad you asked:

XEG Studios Roadmap:

  1. XEG Football - finish and release
  2. XEG Basketball - update
  3. XEG Hockey - update
  4. New website
  5. XEG Racing - develop
  6. XEG Golf - continue developing and perhaps release
  7. Goal Pro Soccer PC - update
  8. XEG Baseball - consider creation
  9. Restart development cycle
More on all of these to come. Suffice to say things being updated are heavily influenced by requests from you the user. We want to create products that you'll enjoy for many years. That all starts with the release of XEG Football on August 15. Fingers crossed that you enjoy it. Thanks again for the interest and support!

One Month To Launch! (07/15/20)

The word is out about our August 15th XEG Football launch, and we're very nearly finished. The About page and the many MANY lines of documentation are finished and ready. The game has now been programmed to remember your settings when you exit the program, and all that remains is the Player Trader, now 75% finished with a month to go.

I've been playing out season 21 of the IAFL using this game over in the Tabletop Sports Delphi forum, and everything has been great. Small tweaks here and there to get the numbers exactly where I want them, but it's football. Good, enjoyable football that's had me on the edge of my seat for some games. I can't wait to share it with you all.

Finally, as we hit the home stretch, I wanted to give back a little more to everyone who has followed along throughout the process over all these years: Let me put your stadium into the game.

XEG Football currently has 253 stadiums baked into the game. Here's the full list, hastily slapped together and formatted poorly. This means that you can use them as a neutral site, or--when creating/editing a team--you can choose them from a drop-down list and easily make that stadium your team's home turf. Send me your stadiums, and I'll put them in. I don't care if they're real or fake, a 100,000 seat monstrosity in the arctic, or just the real-life high school field where you lived out your glory days. Send them to me, and they're in. Just send me as much of the following information as possible:

  • Stadium name
  • City, State (and country if needed)
  • Stadium capacity
  • If it's open-air/domed/retractable
I'll do the rest, including setting up the appropriate seasonal weather conditions. When you download XEG Football on day one, it'll be in the game. Don't worry if you miss out, there is a Stadium Creator/Editor included in the game.

Just my way of saying thank you all for all the love and support over the years.

Release Date: August 15 (07/01/20)

It's my pleasure to announce that XEG Football will be made available to everyone for free on August 15. We've been working on this project since 2014, and today we decided that it's time to put a date on it. With only the Player Trader and About sections to finish, this seems like it will work.

In the interim, I'll be playing out the twenty-first season of the International American Football League using XEG Football from June 18 - August 11, and posting the results in this Tabletop Sports Delphi forum. I hope you'll enjoy following along. In the meantime, how about a quick NFL 32-team tournament?

Thanks to our user Dan who cranked out the 2019-2020 NFL season. I decided to take these teams for a spin through a 32-team, re-seeded playoff in excel, which is always scary. What if the top seeds all got crushed? I'd be calling into question the quality of my entire engine! As much as I'd love to see the Patriots lose 70-0 to the Chargers (I am a Falcon fan after all), that probably wouldn't be good for the game. The games were played with 2019 NFL playoff rules, injuries not carried over game-to-game. To the action!

The first round of the AFC went well, almost entirely straight chalk. Patrick Mahomes threw for over 400 yards in the Chiefs' win, and the only upset was Denver losing to the Colts, 16-6. Excellent. The first round of the NFC was also largely business as usual. The lone upset was in the 8/9 game as Dallas crushed Chicago, 44-3. In the second round for the AFC, 3 of the top 4 seeds advanced, with the lone upset being Tennessee crushing New England, in a slightly more overwhelming repeat of what actually happened. The top 4 in the AFC actually mirrored real-life, which is a tremendous relief! In the NFC, Dallas-San Francisco was a wild shootout, and a ton of fun to watch. Dak Prescott threw for 499 yards and 7 touchdowns, as Dallas upset the 1-seed, 59-38. New Orleans won the first overtime game, while Green Bay and Philadelphia also both advanced. So the NFC final four of GB-PHI, NOLA-DAL was a little different from reality's SF-MIN, GB-SEA, but still feasible.

In the divisional round, Baltimore-Tennessee was a great game, as Mark Ingram's 127 yards and 2 touchdowns bested Derrick Henry's 113 yards and 1 touchdown, as Baltimore won 38-34. Not how it happened in real life, but good for the 1-seed. Kansas City would join them in the AFC title game. In the NFC it was Philly with the 26-17 upset over Green Bay, and New Orleans surviving a furious late rally to best Dallas, 41-34. The AFC title game went to Kansas City, 34-31. The NFC went to New Orleans in another wild overtime shootout, 40-34. So in the end for Super Bowl LIV in Miami, it was New Orleans against Kansas City. Not an outcome anyone could really complain about. The result? Not too bad.

Thanks again for the interest and support!

Twenty-Five to Forty-Eight Minutes (06/13/20)

When last we spoke there were three things remaining on the to-do list before we release XEG Football into the world. We are down to two: 1. The readme file; 2. The player trader.

The player trader is starting to take shape, and is probably around 50% complete. I've built the framework for the readme file, and just need to fill each section with the appropriate text. I have notes EVERYWHERE on how this game works, it's just a matter of putting them all together.

25-48 minutes. That's how long it took my friend Dan to create one existing NFL team in XEG Football. That includes time to photoshop the helmets, look up penalty and attendance information, make a base assessment of each team's offensive line and how they should be rated, and then pull up each team's player stats and load them in. Unsurprisingly photoshopping the helmets seemed to take him the most time, since helmets with text on them can't just be flipped, they actually need a second version to be made.

The first team he made, the Arizona Cardinals, took him 48 minutes. He now has the process down to 25-30 minutes, with simple-helmeted teams being done the fastest. I'm happy with this. Especially if the results with actual NFL teams are reasonable. The teams look cool, and--with my limited knowledge of the teams close to my heart--seem to be correct. It seems like there's always one team whose performance on the season wasn't congruent with their statistical performance. I'll run a bunch of tests and see if any additional changes need to be made.

Imagine if my game insisted that the 2019 Patriots should be a 5-11 team, and that the 2019 Dolphins should go undefeated... that would be pretty demoralizing! My friend does tell me that the game does seem to prefer some teams over others, but I'll look at this very closely and make any necessary changes to the engine.

Thanks again for the interest and support!

May Update - The Final Three (05/27/20)

So there are only three things left to do for XEG Football before the project can be released to the world. Today we're going to give you a deep-dive on what remains.

1. The readme file - The readme file is simply the heavy reading that I include inside every XEG game so that people who want to know the details of how the game works can do so. We'll likely mirror the one for basketball in terms of structure and content. This will probably be last thing that we do prior to release.

2. Enlist a friend to create the 2019-2020 NFL season for XEG Football - The NFL season is something I do for legal reasons. Since the game does have the ability to use user-created team helmets, and I do not hold any rights to the NFL and their logos, I can't include real team helmets baked into the game. That's why in our list of pre-packaged helmets, we only include logoless shells. However, if someone ELSE makes and shares the teams, complete with helmets, I'm happy to share those files here as we do for anyone who creates leagues for any of our games. I already have my volunteer ready to go, and have sent him an unfinished copy of XEG Football. Next update I'll have a full report on how long it takes him per team.

3. The player trader - You've seen this in every XEG game as well. The problem is that unlike in hockey and basketball, every position is so specific that it makes the trade execution and fallout from a trade more difficult to track. What if I want to trade a kicker for a wide receiver and the other team is full of kickers? Or the wide receiver was the #1 guy on the depth chart for receivers, punt returns, and kick returns? What if losing that wide receiver eliminates all receivers from the team? What if that kicker was the team's only kicker? There are far more issues to consider than just trading a small forward for a power forward. I'll look at what I did for hockey and goalies vs skaters to get a foundation, but this will have to be the richest and most thorough player trader we've ever made. It's apropos that this will perhaps be the last thing we do for what has been the most ambitious project XEG has ever taken on.

It's going to be a great next few weeks. Thank you again for the interest and support!

Ramping Up The XEG Football Testing (05/15/20)

Since the last update, we've probably played out over 200 games of XEG Football to tweak the AI.

We've been fine-tuning things such as the penalty rate (which is now comfortably around team average), and the rates of offensive linemen impact opportunities (was 75/25 in favor of pass block, despite 55% of plays being passing plays--this has been adjusted). We've also been taking a close look at the computer AI and re-evaluating their "questionable" choices. The computer was going for the punt block instead of the return almost 70% of the time. This has been situationally rolled back to under 40%. We'd see the computer give the ball to a guy on the first play of the game, who would rumble 90 yards for a touchdown, then see the computer give the ball to his teammates on the next 5 running plays. This has been adjusted.

The most fascinating behavior came late in one game: The visiting team was down by 1 with 2:00 to play. They had the ball at the home team's 4 yard line, 4th and 1, with a good kicker. Instead of kicking the field goal (97% success chance), the computer went for it. Fortunately they converted and would eventually score and win the game, but that was an absolute head scratcher. I had to do a deep dive on the code.

The computer evaluated the quarter, time, down, and score, determining that if they went for it, to call a play persuant to the style of the head coach. A secondary check of the down, distance, and style determined that there was a 96% chance that a running play would be called IF they went for it. Next the computer evaluated field goal percentages as it was 4th down, seeing 97%. Then the computer said:

"If we're losing in the 4th quarter, it's 4th and 1, and we have the ball inside the opponent's 39 yard line, we go for it 100% of the time."

There's your problem. What a terrible line of code. I immediately amended that code to say:

"If we have a greater than 50% chance of making the field goal, and a field goal will tie the game or give us the lead, kick it... unless the field goal will only tie it, we are inside the opponent's 3-yard line, and the defensive rating against our chosen method of going for it is under 80, then 50% go for it, 50% kick the field goal."

This is why we test, test, and test some more.

Now a note about some features being removed from the game. Feature creep is a well-documented problem, and at some point we had to make the call not to succumb to it ourselves.

The first feature removed was video reviews/challenges. We weren't sold on including this to begin with--nobody likes video review, even though reviews are a part of football. The last straw for me was this story coming out about the NFL rules committee. With the NFL changing review policy yet again, we've decided not to support this feature in the game. Since development began on XEG Football all the way back in 2012, We've had to keep up with the seemingly endless rules changes and bake them in as options within the game: Extra point / kickoff / touchback location, overtime format, etc. At this point with the game so close to finished, this dog didn't need one more car to chase. So video reviews and coaches challenges will not be in the game.

The other feature that we cut was the ability to quicksim to user prompts. This is NOT the ability to quicksim--that still 100% remains in the game. The ability to quicksim to user prompts would have allowed users who are only playing one side of the ball against a computer opponent to quicksim the parts of the game where players are not making choices. For example if you're only coaching your team's offense again a computer opponent, the game would proceed as normal until the other team got the ball. At that point, the game would max out the speed to "quicksim" until your team got the ball back. This proved more logistcally difficult than anticipated, so in the interest of getting the game out more quickly, we're pulling the plug. If we make up some ground on the final few items on our to-do list, it might get re-inserted, but don't count on it.

With that out of the way, we are truly in the home stretch with only four items left on the to-do list before XEG Football gets released into the wild. Up next, a full recap of what those four things are.
April Update - The Big Push Continues (04/28/20)

Development on XEG Football continues like a freight train. We've squashed almost all known bugs, and the to-do list is smaller than it has ever been.

Today we put a bow on team tiers. This allows teams from different level leagues to compete against each other. I wasn't feeling particularly creative, so there are only three tiers of leagues: NFL, USFL, and WLAF/XFL. The names aren't particularly important. If any of you have any ideas for more tiers, please reach out and let me know--it should be easy enough to add a few more--but they may not actually be needed. To test team tiers, I simmed 10 games with two teams from my fictional IAFL: Ostrava--the league's highest rated team, and Calgary--the league's lowest rated team. Ostrava won by an average score of 44-7.

But what would happen if I moved Calgary to the NFL level, one tier above Ostrava in the IAFL? I simmed 10 games, and the results were immediately different. Calgary beat Ostrava, 23-20. In fact, the bad team in the higher league (Calgary) ended up winning exactly 5 of the 10 games, a number that seemed about right. The average score was even 25-23 in favor of Ostrava--the good team from the lower league. I took things a step further and moved Ostrava down a level. Now this was the equivalent of Calgary being in the NFL and Ostrava being in the WLAF. I expected absolute domination from the NFL level team, and I was not disappointed. While there was one shockingly competitive game, the bad NFL team dominated the 10-game series, winning all 10 by an average score of 38-10. Excellent.

Finally I had to test the team tiers in the opposite direction. This time Ostrava would be a good NFL-level team, while Calgary would be a bad team from a level below. I expected a 10-game average of 60-3. I was close. 57-6 was the average score. The mercy metrics we put in the AI made a tremendous difference. For my final batch of sims, I ran 10 games with Ostrava as an elite NFL team, and bumped Calgary down to a poor WLAF team. This was the equivalent of Troy Aikman's Dallas Cowboys playing Pat O'Hara's Ohio Glory. The mercy metrics weighed in heavily, as Ostrava won all 10 games by an average score of 72-3.

Call this a success, and three tiers seemed about right. On to the next item!

A Major Milestone for XEG Football (04/12/20)

Life in quarantine continues to allow XEG Football to thrive. In the less than two weeks since our last update, we've made so many advances that only a slim few daunting additions are keeping the game from being finished.

We've fleshed out the game options so that they are all functional. Sound is now fully integrated into the game, and as with XEG Basketball and XEG Hockey, I feel like the sound effects add just enough to the experience. The Player Developer is now fully operational. Just as in XEG Basketball and XEG Hockey, this allows you to programmatically update player ratings once your season ends. Simply enter the stats your team accumulated in games played, and the developer will raise or lower each player's ratings based on their age and performance that year. This works incredibly well for advancing the careers of players on fictional teams.

Finally, after squashing a few bugs, we made the decision that it was finally time to port the visitor offensive coaching AI to the home team. For the past six years in order to play a game, the home team's offense had to be controlled by a human. With the completion of this port, that need would go away. Games could now be fully automated and simulated. To test this, I went to my International American Football League.

The IAFL is a fictional league of mine anxiously waiting to play its twenty-first season--the last three years of this league have been played within XEG Football's earlier builds. Since the rosters are set for Season 21, I needed to choose my two teams for the test game carefully. They needed to have very different play styles and be unlikely to meet in the upcoming season--I didn't want the results to influence the upcoming league. Ultimately I chose the Northern Capitals and the Quito Volcanes. Northern is a run-first team with the best defense in the league. Quito is a pass-heavy team who ranks near the bottom of the league defensively. Northern is the #2 preseason team in their division, while Quito ranks 4th in theirs... so it is unlikely these teams will meet in the conference title game. I loaded the teams up, set the CPU to coach everyone and held my breath before pushing "START GAME"...

...and EVERYTHING worked as intended! Here's the game log. The game started, played itself, and finished! At 1x speed, the game took about 40 minutes. I simmed a few more, and the game took 21 minutes at 2x speed, 7 minutes at 10x speed, and an astonishing 66 seconds at max 100x speed. There were small bugs that need to be fixed, such as the home crowd passionately booing their own kicker for making a field goal, but nothing game-breaking. We'll work on those over the next few weeks, and then keep on driving home these last few nails. Good news so far in April! Thanks for the interest and support!

March Update - Coronavirus Impact (03/30/20)

Like everyone else in the world, we have been impacted by the Coronavirus. Fortunately we are all safe--albeit a little stir crazy. Personally, my day job started allowing all employees to work remotely several weeks ago, including myself. The result has been something very positive for both them and for development at XEG. Working from home has eliminated an hour's worth of daily commute time, and has also allowed me to spend far more time working on XEG Football. The result is a chain that has moved significantly.

After finishing the Team Creator, the Team Editor was very quickly started and completed. A process that took months for the Creator took only days with the Editor. We corrected an error that caused a variance in team rating calculations. We finished the integration of offensive linemen into the game, introducing the ability to change OL starters in the pregame, giving offensive linemen a presence on the injury spectrum--complete with a team rating penalty, and creating situational lineman rating checks that affect gameplay. We even went the extra mile and made their performance in those situations a trackable stat that can be used for player development (after the player developer is created).

A few more notable improvements/additions: You now have the ability within the stadium creator to pull a team's stadium from their team file and permanently insert it into our collection of over 250 neutral site stadiums to be used whenever. We've also added identification for ALL fumble recoverers within the play-by-play and game summary. Previously the fumble recoverer was only ID'ed if the fumble was returned or recovered in the end zone for a touchdown. The Play-By-Play Speed option has been implemented, giving people who read a little slower a chance to enjoy the game, and setting the framework for enabling quicksim in the future. Finally, I've recorded/gathered and edited almost 85 different sound effects for XEG Football. The process for implementing them starts today. By popular request, here's the to-do list as we enter April.

Lots of positives. Will these positives continue if the virus gets worse and I lose my day job? Probably not. For the time being, I've been able to make the most of this strange situation. There are so many little things that I absolutely LOVE about this game. I was playing a test game that began with clear and cold weather, but as the game progressed rain moved in and the temperature began to fall. By the time we started the second half, the light rain had transitioned to snow, and the timing and aesthetics were simply delightful. I can't wait to share this with the world.

Before I go, we have one more download to share with you: User Bayonetta has returned with his version of round 2 of the 1878-1879 FA Cup for Goal Pro Soccer PC. It's available in the downloads section. Enjoy!

Thousands of Ways To Break a Game (03/18/20)

The Team Creator is offcially finished. It took several weeks longer than anticipated, but I'm very happy with where it ended up. The delay in finishing the Creator was because of the sheer number of ways that a user could break the game through the creator.

When developing any of the games for XEG--no offense intended to our kind users--we try to 'idiot-proof' things as much as we can. It's incredibly upsetting when a user tries to play a game in what they feel is a 'normal' way, only to have it crash on them because we didn't predict their behavior. This means having to anticipate all the small mistakes users could potentially make, and have the system react accordingly.

Little things like leaving a coach name blank, putting a letter in where a number should be, or linking to a helmet file that then gets moved or deleted ALL need to be accounted for, among many MANY other variables. While some of these mistakes would break the creator, a great many more wouldn't break the game until the team showed up in a game, and got into a particular situation.

Imagine you've created a team and are playing an amazing game with them. Tied with 15 seconds left in the fourth quarter, you bring in your kicker to kick a 55-yarder to win it! Then the game crashes because you didn't input your kicker's long field goal rating correctly when you made the team. This is the sort of thing we're trying to prevent, and that's the sort of thing that makes game development slow-going sometimes.

As an unexpected added bonus inside the team creator, I loaded in the 1000 largest cities in America, and 400 different team nicknames. Now every time you open the Team Creator, you get a random fictional team 'shell', complete with colors and everything. All that's left is to add the players and stats. Not too shabby. With shockingly few clicks, I had two randomly generated teams who weren't just ready to play, they played an overtime thriller.

I considered linking the stadium with the randomized team name instead of randomly selecting one from our pre-packaged list (as you can see in the video), but decided it was too much work for too little return. Ultimately if someone decides to play with the 'Portland Griffins' it would be easy enough to move them out of Kroger Field in Lexington and into Providence Park.

I'll post a second update at the end of the month that will indeed be coronavirus-based, but we'll end this one on a high note. User Wessley has been kind enough to submit his creation: The 2019-2020 Australian NBL for XEG Basketball. You can find it in the downloads section. Thanks Wessley, and thanks to all of you for the interest and support!

February Update - So Close and So Far (02/29/20)

The grind on XEG Football continues for another month. While the goal was to finish the team creator by the end of February, we did not quite achieve that goal. Sixty-five pre-loaded helmets are in and good, and we'll add the new helmet shells for the Falcons and Bucs (and any other teams getting new helmets) once they get released. Coach names and styles can be randomized very easily as well. Full rosters can be randomized in just a few clicks, and the computer now even has the ability to optimize a team's starting lineup with just one click, although there is a small glitch at the end there.

A side note about that "starting lineup"--I've received a number of concerned e-mails regarding that screen. Please know that "starting lineup" is a bit of a misnomer. While the QB is indeed the starter, the RBs and WRs are more "featured targets" than starters. WR A will be targeted the most, followed by the WR B, then WR C. They will be followed up by the other 5 remaining receivers on the roster, and any RBs who also happen to have receptions in their history. This order, of course, will not apply if you choose to run nothing but screen passes--which rely heavily on running backs. Rest assured if your plan is to run 5 WR and go deep all game, you'll be able to do that, and will not be limited to just 3 wide receivers.

So what is required to finish the team creator? 1) The game needs to recognize the pre-loaded helmets in the team selector and game screen; 2) The creator needs to handle when a player is named a starter, then that player's name is edited and changed; and 3) The final save of the team file needs to be coded. Following the completion of the creator, we'll move on to several variants of the creator: The team editor, the player developer, and the player trader. March goals. After that, we further integreate offensive linemen into the game, make options function, then improve the AI coaching, and finally squash bugs. It is both just a few small strides from a finished product, and a herculean amount of work--especially done in small doses around a day job. As always, thank you all for your interest and support.

Before I wrap this up, please enjoy another Goal Pro Soccer league submitted by our friend Bayonetta. He has taken the time to create the 1945-46 Portugal Campeonato Nacional. You can find that league available within our downloads section.

January Update - Life without "S" (01/30/20)

Sometimes as a small, one-man development team, you run into problems that a larger studio does not. This month, the keyboard in my coding laptop went south, as the "S" key permanently stopped working. After three USB laptops failed to operate in its stead, one replacement laptop keyboard never functioned, and a second replacement was installed, I finally got back to work. In the end nearly 3 weeks of development time was lost. Such is life.

Prior to that, XEG Football made further strides with the Team Creator, with the additions of offensive linemen, and a Starting Lineup screen. There are still tweaks to be made to that screen, particularly coaching of the "Recommended Starters" button to be able to produce the best starters for your team at the click of a button. The design of the initial screen is also coming along as well. We'll have a handful of baked-in helmets to choose from, along with the ability to add your own. I am cautiously optimistic that the Team Creator will be finished by the end of February, but it is a short month.

In terms of gameplay, Additional O-lineman events will be added to the gameplay to further reinforce the importance of these positions, and the role they play as a unit. 95% of the gameplay is set. Moving forward, while there will be quite a few coaching AI tweaks, it's the ancillary features such as a player trader and developer that should take up the bulk of production time moving forward. I look forward to producing something that you can enjoy.

Finally in XEG Basketball news, thanks to one of our users, Wessley, who took the time to create the 1980-1981 NBA playoff teams. You can download them in our downloads section. While the game isn't designed for seasons before the days of three-point shooting (or even the early days of it), a future update to the game will add this feature. Thank you all again for the time and interest.

Introducing The Randomly Generated Backfield (01/01/20)

As promised, we've coded up the randomization data for quarterbacks and running backs in XEG Football. Before moving on to wide receivers, defenders, and special teams, I decided to randomly generate a backfield: Two QBs and five RBs whose names, stats, and ratings were all randomly generated. Here's what I got. Let's look through it.

The first QB generated was Antwan Ortea, a rookie with an 80 pass rating, B audible rating, and 70 run rating. Nothing special. The game basically made 2019 Brian Hoyer or a version of Will Grier who makes smarter decisions with the ball. Next. Our second QB is Fredric Carattini, an 86 rated passer with a B audible rating and a 71 run rating. He roughly translates to an Andy Dalton. A starter, but a replaceable starter.

Out of curiosity, I decided to generate new QBs until I got a 90+ rated passer. My 19th QB fit the bill: Aaron Hankerson--a 90 rated passer, B rated audibler, and 70 rusher. A much more interception-prone version of Matt Stafford. Good enough to be in the upper half of the NFL's starters, if just barely. Of the 19 QBs generated to get there, only one was a mobile QB--John Uxa (80 pass, C audible, 90 run). I'll raise that percentage as soon as I get back in the code.

To the running backs! First up was LaMarcus Tanequodle, an 86-rated speed back who doesn't return kicks and isn't great at catching passes. Basically LeSean McCoy if he was a speed back. After him, Edward Eakin presents himself. He's a terrible running back and receiver, but presents himelf strongly as an 80 kick returner and 80 punt returner. Andrew Grinkley presents himself as a minor dual threat: 82 rushing / 80 receiving. Tantamount to Austin Ekeler or Ronald Jones. Zach Frye is a slightly worse version of the above at 81 rushing, 75 receiving. Finally Quinn Voter round out the group was a 72 run rating. He does not catch passes.

Similar to QBs, I decided to see how long it would take to randomly generate a 90+ rated rusher. This time it only took 12 generated players to produce Jonah Laut--a 92 rusher 80 receiver. Numbers very similar to Derrick Henry, who ended up barely winning the rushing title in the NFL this year. Not a bad get for a random team. I'll probably lower those stat odds as soon as I'm done posting this.

So that's the latest! A fine start to the new year.

December Update - A Month in Player Creation (12/30/19)

Happy new year everyone! As we brace for 2020 and the pending release of XEG Football, we've been working diligently on the back end and the Player Creator. Now inputted players are automatically converted into full player ratings that vary based on position. The next step is one of my absolute favorites--allowing for randomly generated players. We do it in XEG Basketball and XEG Hockey, and the random option in XEG Football looks to be the most robust.

With the click of one button, users can randomize a player's name and/or their stats and ratings. The ratings are skewed as in real life, with a small chance of generating a superstar, and a high chance of generating an average to below-average player. Regarding the random names: There are 3200 options available for first names, with the more common ones showing up more frequently. "Chris" has a 1.4% chance of appearing, while "Dejounte" only has a 0.03% chance of being drawn. Last names are treated similarly--with over 90,3000 to choose from. The plan is to get the randomly generated names and stats up and running in the next few days, add a depth chart, then address the horrendous first screen in the team creator.

After that gets finished, we'll add the Player Trader and Developer, add more pre-game and in-game options, add sound, squash some bugs, tweak the visiting team AI, and we're done. Simple, isn't it? I'll probably draw up the schedule for season 21 of the International American Football League as well. The last several IAFL seasons have been a fine guinea pig for XEG Football, I may as well keep that trend up as we approach launch sometime in 2020. Thank you all for the time, and for the continued support!

Happy Thanksgiving! (11/28/19)

Happy Thanksgiving from us here at XEG Studios! We're all incredibly grateful for your feedback and support that keeps us moving forward trying to make the best text-based sports games we possibly can!

As we said last month, no real updates in the progress of XEG Football. We remain where we were in the to-do list, the product of my day job sending me to Europe for a month for training and on-boarding. We're optimistic that the chain will get moved some this long weekend, as it feels like we really aren't that far from having a product ready for you to enjoy.

I mentioned in October that the trip would provide an extra perk to me, but regrettably the schedule did not work out as I had hoped. I had planned to visit Metsky Stadion in Ostrava within the Czech Republic. This stadium is the home to the Ostrava Black Lions of my International American Football League, who are actually the reigning league champions. I haven't visited any league stadium in over 25 years, and being able to visit the home of the league champions in a place 4,700 miles from home was going to be a special experience--but things don't always work out the way we'd hope. Perhaps next time. Thanks for the time and support!

Success and Delays - October Update (10/22/19)

For the fifth consecutive month, the entire focus has been on XEG Football. Two major items were knocked off the to-do list: Fake kicks and Audibles. At this point the core gameplay is finished, and what remains are options, enhancements, and features.

Perhaps of greatest interest are the initial results from our audible tests. With a sample size of twenty-five games, the average number of audibles per team (per game) was six. This seemed to be a sweet spot of a number--high enough for the audible ratings to matter, but low enough so as not to frustrate players by taking the play-calling out of their hands too frequently. Additionally, we have made QB audibles an option that discerning players can turn on or off. Fake punts and field goals have been a nice wrinkle added to the game, although the frequency of these events occurring organically (they are implemented at a similar rate as seen in the NFL in the last decade) may be too low for most users to notice their presence.

The next steps are to implement the final few options into the game, allowing them to be accessed on the Team Select page and in-game. Known bugs will be further explored and corrected, while the visitor AI coach will play more games to have their decisions evaluated, improved, and eventually applied to the home side. Next, the same player trader and developer seen in XEG Basketball and XEG Hockey will be added to the football offering, and finally the Team Creator will be upgraded from its current horrific design.

That brings us to the delay.

There will not be much development on XEG Football between now and the November update. The reason is a personal one: My new day job will be sending me to work in Europe for nearly a month. There is an added bonus to this trip that rings near and dear to my heart, and to XEG Football in particular. I'll explain in complete detail during the November update.

One final note: Thanks again to our user Bayonetta, who has created several more leagues for Goal Pro Soccer: The 04-05 Hong Kong First Division, and the 1983 NASL season. You can find both in our downloads section. Thank you all for the time, and for the continued support!

September Update - Game Theory (09/16/19)

Progression of XEG Football continues into the active football season with two key items on the to-do list: The quarterback audible system, and the addition of fake punts and field goals. Today we'll take a deeper dive into the theory of both concepts and give you a look behind the engine.

We start with the quarterback audible system. We talked some about this system in August, notably the three different QB ratings based on TD/interception ratio. Here's a deeper dive into the numbers: A QB with a 3:1 or better TD/INT ratio will have an "A" audible rating, giving them an 80% audible check success rate. A QB with a negative TD/INT ratio receives a "C" rating and a 20% success rate, while all other QBs receive a "B" rating and a 50% success rate. Audible checks have a 10% occurrence chance on first/second down plays not occurring in the final 5 minutes of any quarter. They will not occur in a period's final 5 minutes.

So what happens on an audible check? The QB sees something in the defense and changes the play called by the coach. The CPU does this by rolling against the QB's audible rating. On a successful roll, the specific defensive playcall is revealed, and the CPU QB picks a new play best designed to beat that defense. On a failed roll, the opposite of the specific defensive playcall is revealed, and the CPU QB picks a new play to beat what was revealed--but the information is poor and the result likely will be as well. Taking the decision-making out of the human coach's hands is an interesting wrinkle, and could lead to some frustrations from the person playing the game. That said, it's a mechanic that exists in the real-world, so we can't wait to test it and further develop it.

That brings us to fake punts and field goals. The challenge with this implementation is that these plays are dynamic and depend more on the element of surprise than specific run or pass ratings. So to code this in, we decided to look at real-world NFL fake success rates, and an interesting article from Keith Goldner that compiled a decade's worth of fake data. We determined the best metric to use is a variant of the red trendline from that article. This calls for a 60% success rate on fakes 1-yard from the marker. It dwindles to 47% at 5 yards, 30% at 10 yards, 9% at 20 yards, and about 3% at 30 yards.

This assumes that the element of surprise is present--if the fake is not the first fake of the game, the success percentage is halved. If the defense chooses a "safe" defense, the success percentage is halved. Example 1: A fake field goal on 4th and 1 that serves as the first fake with the defense playing a Field Goal Block defense has a 60% chance of success. Example 2: A fake field goal on 4th and 1 that is a team's second fake of the game with the defense playing a Field Goal Safe defense has a 15% chance of success. Several metrics of this design are still being worked out, including when a CPU coach will fake and how many yards a team will actually gain on a successful (or unsuccessful fake), but this is an interesting concept that we're enjoying developing.

We'd love to hear your thoughts and ideas. Thank you again for the interest and support!

Closer To Kickoff - August Update (08/16/19)

This month's update comes just a little late, but it's full of updates and improvements to XEG Football. Over the last month, we've done significant damage to the old to-do list. We've added CSV saving for easy stat tracking and compiling on your own in Excel. All of the stats on the main screen now automatically sort by meaningful metrics--top tacklers on defense, and top players in each indvidual category on offense.

There are a LOT of improvements this round, including (but not limited to): Numerous bug squashes, the kickoff location is now a user option, game penalties are (largely) determined by the teams themselves rather than RNG, batted passes are no longer guaranteed to be incomplete or intercepted, and the play-by-play now announces when a team goes for it on fourth down. Additionally, teams now have the option to kneel out an extra point, and players with a history of being fumble-prone are suseptible to fumbling in poor weather. Speaking of poor weather, there are now custom backgrounds for a variety of different weather situations, helping further immerse you into the action.

So what's next? Priority one is adding fake punts and field goals (and the means to defend against them). Priority two is continued bug-squashing and educating the computer AI how to properly coach a football game. Priority three is the addition of quarterback audibles at the line, if only to see how well we like this feature. Let me explain.

Each quarterback has an A, B, or C Audible rating, directly tied to their TD:INT ratio. On first or second down in non-critical situations, the QB will have a 10% chance of reading the defense and calling an audible, changing the playcall to something better suited to what the defense is showing. The caveat is that--depending on their rating--they sometimes read the defense incorrectly and call a worse play for the situation. It's an interesting mechanic, true to real life, but we're not sure how we feel about taking the play call out of the hands of a human coach.

If you have thoughts, send me an e-mail, I'd love to hear them. Thanks again for the interest and support!

July Football Update (07/14/19)

Comparing the to-do list from a month ago to the to-do list here today shows the considerable progress we've made. XEG Football is fully functioning and playable--provided you coach the home team. The AI has complete control of the offense (visitor only), defense, and special teams, and manages to coach them with surprisingly quality results. This was no small task when you look at our early flowchart for AI defensive coaching decisions.

Full injury description code has been implemented and activated, with the type of injury and severity matching the ratios seen in today's NFL. In a hard pivot from prior builds, this includes quarter-limited and half-limited injuries that knock out a player for a portion of a game, but allow them to return to the game later.

Trait-based player details have been implemented that change the play-by-play based on the size and attributes of the player involved. We have also doubled the number of weather-based details in the play-by-play, so games played in heavy rain and snow will have more of a 'feel' within the action than just a weather icon on the screen. In the next few days we'll be adding team penalty metrics and individual player fumble metrics. This means taking some of the randomness out of both penalties and fumbles, replacing them with real-world percentages and ratios.

From there we'll take on more options such as turning penalties and injuries on/off, and we'll continue hunting down bugs that harm the overall gameplay. We're starting to get into the the difficult code, but that just makes it all the more rewarding when we are successful. Thank you again for the interest and support!

XEG Football Making Strides (06/14/19)

Daily work continues on XEG Football, and significant progress has been made. Comparing this old in-game screenshot to this new in-game screenshot seems to belie the claims of progress made (accent colors and blank spaces?) but let me explain.

The game now allows for 6 more offensive and 6 more defensive players. Passing has been unbound to QBs, so now any offensive player can play quarterback on any snap, opening up wildcat options. Similarly wide receivers can execute end arounds, reverses, and other running plays, while any running back is now able to catch a pass. Defensively we now track individual tackles--including those made on special teams. Speaking of special teams, now punters, kickers, and kickoff specialists can be used interchangeably, opening the previously closed door to kicker injuries. Players can now choose any RB, WR, DB, or specialized KR/PR to return punts and kickoffs, and with the new standardized ratings system in effect, players can make an educated choice on who to play.

There's still plenty on the to-do list--and plenty of bugs we need to hunt down--but the improvements listed will improve the experience tenfold. With trait-based descriptors, power backs will bowl over defenders, while agile backs will juke and spin into space. Injury descriptors will indicate length of injuries, body parts, and severity. Fake punts and field goals add an additional level of intrigue to special teams. Individual player attributes will have even more of an impact, as fumbles will be adjusted by players' actual fumble rates, and the addition of audibles will give your QB freedom to change the play at the line (for better or for worse) if they think they see something they can exploit.

The computer coaching AI will continue to be developed, as we teach it how to use all these new tricks and better read and react to game situations. Kinks will be worked out, as we try to improve on the AI that managed to beat me 36-0 in an evenly matched playoff game that I'm still a little bitter about. Thank you for the interest and support!

Because 60 Shouldn't Equal 0.3 (05/23/19)

Today's update comes XEG Football, where there was a mountain to climb in terms of what to do next.

We've been re-factoring the code, and one of the first changes was a standardized rating system across players and all metrics. Previously ranges for player ratings were independent to each position and the skill involved. For example, QBs had their passer rating slotted from 40-80, but LBs had their run defense rating slotted from 0.0 to 0.6. It takes a special kind of intuition to know that a QB with a 60 pass rating and a LB with an 0.3 run defense rating are fairly comparable and average to their positions. To alleviate this, all ratings (except for kicker ratings, which are percentage based) will now be appropriately scaled to a 70-100 level to help users better understand the abilities of the player.

The Team Select screen is also being re-vamped to include more information. The prior Team Select screen was very bare-bones. It showed you the full roster and bolded the starting QB, but that's all. The new screen shows all player ratings and indicates the starters at all positions, which you can now change. The roster size has also increased. The new game will allow 4 QBs (+2), 5 RBs (+2), 8 WRs (+2, and a RB who catches passes no longer occupies a slot), 5 Kickers/Punters/Kickoff Specialists (formerly 1 at each position), 6 DBs (+2), 6 LBs (+2), 6 DLs (+2), and 4 Kick/Punt Return Specialists (formerly 2 each, specific to each position). Previously the kick and punt returners were isolated and treated as different players. While there is room for exclusive specialists who don't do anything else, now each RB, DB, and WR has KR and PR ratings, so they can participate in special teams if you so choose--and when you trade that player, all of their skills go with them.

It's all one step closer to getting XEG Football finished and released. Finally, from football to futbol news, thanks to user Bayonetta, who sent in the 1965-1966 West Germany Bundesliga for Goal Pro Soccer PC. It's available in the downloads section.

2018-2019 NHL Season Released (05/09/19)

The 2018-2019 NHL season is now available for free in the downloads section.

Spoiler alert: In our playthrough of the 18-19 playoffs, things didn't go quite as wildly as they did in real life. If there was ever a year where a variance from reality is okay, this is it. In the East Tampa Bay swept Columbus, Toronto defeated Boston 4-1, Washington topped Carolina 4-2, and Pittsburgh needed 7 games to get past the Islanders. In the West, half the series went as they did in real life, with San Jose advancing past Vegas and Dallas upsetting Nashville. Calgary knocked out Colorado 4-1, while Winnipeg overcame two Jordan Binnington shutouts with a 4-2 series win.

In round two, Dallas swept Winnipeg behind some excellent goaltending from Ben Bishop, Tampa Bay outlasted Toronto 4-2, and both Washington and Calgary needed seven games to eliminate Pittsburgh and San Jose respectively. In the conference finals, the top seeds would prevail. Calgary topped Dallas 4-1 while Tampa Bay eliminated Washington 4-2.

In the rematch of the 2004 Stanley Cup Finals, Tampa Bay jumped out to a quick 3-0 series lead, but Calgary would turn the tide with an overtime win in game four and a 5-2 victory in game five. In game six, Brayden Point scored the first two goals before Derek Ryan cut the deficit to 2-1 going into the third period. 5:30 into the third period, Alex Killorn delivered the short-handed dagger, racing into the zone off a faceoff win and scoring to make it 3-1 Lightning. Tampa Bay would tack on two more to win the game 5-1 and the series 4-2, giving the Lightning their first Stanley Cup in 15 years! Steven Stamkos was the leading point-scorer in the playoffs with 25 total points. See the final bracket here. With the 2019 NHL season released, it's back to work on XEG Golf and XEG Football!

2018-2019 NBA Season Available (04/29/19)

The 2018-2019 NBA basketball season for XEG Pro Basketball is available now for free in the downloads section. We played through the playoffs ourselves to take a glimpse into the future, and here's how it all played out:

In the first round everything ALMOST played out as it did in real life, with 7 of 8 playoff series resolving as they did in the NBA. The outlier was the 4/5 matchup in the west, as Utah upset Houston in 6 games thanks to a hot Donovan Mitchell and a very cold James Harden. In round 2 in the East, the Bucks beat the Celtics 4-1 despite Kyrie Irving leading all scorers in every game. Toronto knocked off Philadelphia in 7 games, the last one a 143-135 monster! Out West in round 2, both series went 7 games, with Portland and Golden State going through. In the conference finals, Milwaukee eliminated Toronto in 6 games, while Portland upset Golden State in a 7-game slugfest.

The NBA Finals between Portland and Milwaukee ended with a thud, as Milwaukee easily swept Portland to win their first NBA title since 1971! Here's the full bracket for you to peruse. While the games played out well, we'll work on tweaking the engine to code in more chances for big players to have BIG games (45+ points) with our next update to XEG Basketball. In the meantime, it's back to work making the 2018-2019 NHL season for XEG Hockey! Thanks for the time and support!

Playoffs and More (04/16/19)

As the grind continues on XEG Golf, we wanted to update you on some additional items. First, with the NBA and NHL both in the playoffs for the 2018-2019 season, we will be releasing both seasons for XEG Hockey and XEG Basketball in the coming weeks. They should be done well before each league wraps up their respective playoffs, and--as with everything we do--will be made available free-of-charge to everyone here on this site. Remember, if you've ever created any prior teams or seasons for any of our products, we'd be happy to share your work with the masses. Click the contacts tab and send us an e-mail.

Second, we wanted to update you on a new IP that's in development. While the planned road map has been 1) XEG Golf release, 2) XEG Football release, 3) XEG Hockey/Basketball/Soccer updates, 4) XEG Baseball pen-and-paper, we'll be making a slight a change to that. After a few conversations with some of our users, we've spent a significant amount of time developing a new IP: XEG Racing. There has been a tremendous amount of interest in us releasing something in this genre, and we've produced something in pen-and-paper that works. The process lends itself to being more of a PC game than a tabletop game, and it isn't yet known if this will be a web-based game such as XEG Golf or a downloadable game such as XEG Hockey.

Please send feedback as to which style of game is more appealing to you, as we use feedback from our player base to drive future development decisions. Thanks again for the time and interest!

April Updates (04/02/19)

No April Fools here! It has been a good month for the development of XEG Golf, with most of the focus and energy on Tournament Mode. Currently, the game has the ability to play out a one-round 156-player tournament, tracking each player's position in the event as they go. It's not finished yet, because we haven't baked in playoff holes in the event of ties (who knew there were so many playoff types?), and we have a whole heap of improvements we need to add, but the progress this month was encouraging. The plan for April is to attack all of the bug fixes, bake in all the different types of playoffs, and maybe even allow the players on the scorecard to be sorted by position if there's time left in the month. Following that, we'll tackle multi-round tournaments, and then finally the course creator. We can't wait to get you guys into this.

It's nice to be at the point where we're chewing through the more difficult aspects of golf, such as how tournaments set the cut line, different playoff types, what happens when an odd number of players is left after the cut, and so on. To be able to step away from the code and still make progress through research is a satisfying feeling. I'm hopeful that we can find a resource in the next few months that walks through golf courses, stroke-by-stroke. That sort of resource will make course design much easier, if such a site exists. We're not near the finish line for XEG Golf yet, but don't worry, once we get there XEG Football will be ready to consume plenty of development hours. I look forward to it. Thanks for the time and support!

March Updates (03/04/19)

February was a productive month for XEG Golf. The player creator is now completely finished, and the ability to create batches of players is implemented as well. We decided to limit the number of players you could randomly create with the click of a button to 50 for performance reasons. Don't worry, this just means that if you want to randomly create 100 golfers, you have to click the button twice. Additionally course elevation was added to all non-tee shots, to create a more immersive experience and further help 'the mind's eye' figure out where the hole/landing area is relative to the current ball placement. It's one of the challenges of a text-only game, and this solution works quite nicely with the number of options available to course creators. Tee shot descriptions will be encouraged to be baked into the hole description.

So that brings us to what remains on a dwindling to-do list. Although only four items remain, the code behind them is quite menacing, and we are working on the best path to proceed. We'll probably start tackling the options first, as the course creator and tournament mode are incredibly daunting. The course creator does a very complicated thing--each course is around 1400 lines of code--but it needs to be easy and intuitive enough for people to want to use it. Meanwhile the code for tournaments needs to handle all the advanced rules, cuts, regulations, scoring, grouping and re-grouping for events that I don't even completely understand. So I'm hesitant to move forward too quickly. I hope I have something to show for the month of March.

Meanwhile, my mind continues to drift back to XEG Football, and all the things I want to add, fix, and build to that game. They say you shouldn't work on multiple projects in different programming languages at the same time, so I'm keeping my football thoughts tabled for now! I appreciate you taking the time to read the latest. As always, thank you all for the time and the support!

Introducing Abram Marcelo (02/14/19)

No, he isn't a new developer here at XEG. Abram Marcelo is the first golfer ever created through the 'Randomize Golfer' feature in the XEG Golf Player Creator! He's strong with the fairway woods and can scramble with the best of them, but struggles some with the flat stick. I'm thrilled that he exists, and am happy you'll be able to make plenty of players like him.

Abram is the result of several algorithms, the first is the randomly generated name, which is code I pulled directly from XEG Hockey. There are over 1200 random first names, and over 12,000 random last names. As for Abram's actual stats, when a user generates a player, he chooses between a 'Random Pro', 'Random Amateur', and 'Random Player'. The algorithm then randomly generates stats for the created player that are considered to fall within a 'reasonable' range for that player's level. If you go 'Random Player', then the pro and amateur ranges are combined, leading to some... strange results. If you've ever wanted to play with a golfer who hits 65% of his putts from 10 feet, but only 14% of his putts from 5 feet, then 'Random Player' is the option for you.

The final step in the player creator is the ability to randomly create players in batches of up to 200 at a time with the click of a button. It'll be like being able to make your own instant fictional PGA Tour. I can't wait. Once we wrap that up, the Player Creator will be done, and we can visit the next item on the to-do list, probably adding elevation to the course. Thanks for the time and support!

February Updates (02/02/19)

Well you can't win'em all. January has been a challenging month with limited time to work on meaningful XEG projects. With the start of a new month, we'll be shifting back focus to XEG Golf first, and XEG Football second. The last time we worked on XEG Golf, we were nearly done with the player creator. The rest of what needs to be done is a manageable list, We just need the time to get it all done.

Regarding football, I personally keep coming back to this project, and can't keep it out of my head. One night when I had some time and no internet connection, I went and mapped out the league timeline (projected) through season 23. As you can see, I've spent considerable years on this league, and continuing to properly build the program through which it lives on is of the utmost importance to me. The fact that others will be able to use it will be a tremendous bonus.

Finally, you may be asking "Why the soccer ball?" Well, a kind user of my Goal Pro Soccer PC was good enough to reach out and send me the 2017-18 Premier League he created. It's now up on the downloads page for everyone to enjoy. If you ever feel compelled to share any teams or leagues you'e made for any XEG game, we'd be happy to share them with the world. As always, thank you all for the support!

Happy New Year! (01/03/19)

With the holidays winding down and everyone getting back to their normal schedules, It was time to take an active look at what the plan is for 2019. For the year ahead, we have three main goals and two main projects. The primary focus entering 2019 is on XEG Golf. What we have right now functions, I just need to knock off the rest of the to-do list, then make a lot more courses and players for people to enjoy.

The secondary focus is XEG Football. As the project enters its 11th year, I need to end 2019 with something to share representative of all this hard work. I played out season 20 of the IAFL last year, and it worked for my needs, but the game is missing a LOT that the average user would enjoy, and probably demands in this day and age. I have a lot of work to do.

The third focus is once again going to be site monetization through ads like a normal website. Perhaps once the golf game goes live, that will drive sufficient traffic to get the ad companies interested. We're not there yet, but don't worry, we aren't going anywhere.

I have a few additional projects that may have to be tabled until 2020, because I need to finish the existing projects:

1) Audible Football, an "arcade" football card game for people who don't necessarily know a lot about football. I've tested it with print and play, and it has been very well received. There's some luck and some planning involved, but it's not too hard to pick up. A browser-based version of that will be in the works eventually.

2) XEG Adventure Golf, an arcade golf game based on the current engine. It's golf, where wacky things happen to you, and your choices (coupled with a little luck) shape the outcome. More than 200 unique "events" have been mapped out, but the game (other than the engine itself) is still in the planning stages

3) XEG Baseball and future big improvements to XEG Hockey and XEG Basketball such as season modes and more. Again, it's all coming. It just takes time.

Here's to a big year with accomplished goals, and some fun games being shared with the world!

Some Private Golf Developments (12/23/18)

In a very rare shift from my normally-private nature, I spun up XEG Golf and had it live online for a few hours last week. I invited some of my co-workers from another side venture to give it a go. Unlike most of the people who look into XEG, these weren't sports guys. These were actual coders, developers, and software engineers who make a living making much better products and services than I do at XEG. Some had never even played golf before. The boys had a good time with it, and then--as all engineers are want to do--they started coming up with ways to break it. They did, but in productive ways.

This is the first time I have EVER invited anyone to look at my code. In the end it was a very positive experience, and one of the guys even volunteered his services to help upgrade the code with vue.js, a javascript framework that should make things cleaner and easier to code and make changes to in the future. He has also been so kind as to point out some of the inefficiencies in our existing code. So we'll be putting a hold on the Silo Run Tournament--but it will be worth it, as we should have some great things to share with you in the new year. Merry Christmas! - Mike

First Tournament Running Well! (12/16/18)

Things are going very well for our first tournament test of XEG Golf. True, Tournament Mode isn't coded yet, so we're just playing guys four at a time, but I'm VERY pleased with the results. If you'd like to see updates, I'm updating this thread on the delphi forums every day or so with the latest updates. Spoiler alert: Putting the PGA Tour's best on a public course gets you some low LOW numbers. I also put my friend Bob and I in the event, just for chuckles. He had a good time, and is already lording his victory over me. I'll probably be done with the tournament by the end of the week, and am considering letting the final grouping play out on Youtube. Here's the to-do list for XEG Golf. Notably absent: Bugs to fix. There are none. I'm just as surprised as you are. Not bad for 2 months of development!

Remember, after we get things finished and playable for XEG Golf, I'll head back to development of our baby, XEG Football. Every day we get inspired with new ideas and improvements for that giant unreleased game, and we look foward to working on it more. Future improvements will be coming to XEG Basketball and XEG Hockey as well, which are both available in the Downloads section. These projects are cyclical, and we're not in their part of the cycle yet. Thank you all for the support and the interest!

Good XEG Golf Update! (11/28/18)

Well it was a good week for coding XEG Golf. With the small amount of bonus time we had around Thanksgiving, we were able to hit our coding goals and get this thing into a functional state for a 1-round 4-player event where you choose your own players and course. Is it close to finished and bug-free? Absolutely not. But it is functional. So the next step is to see how a full tournament shakes out. So if we get some spare time in the next few days I'm going to play one--4 players at a time, each round independant of each other. I think I'll post results on the Delphi Forums and get a little bit of feedback. Since that'll likely drive some interest to this site, here's what XEG Golf is:

XEG Golf is a stroke-by-stroke golf sim/game where players are rated in 8 different categories--4 putting, 4 non-putting. The courses are broken down hole-by-hole, shot by shot, that challenge the players' ratings. Successful challenges go good places: Fairways, Greens, and Holes. Failed challenged go... less savory places. Players also have a star rating, which increases with every rating category that they're above average in. Players with higher star ratings will have more opportunities to hit "Focused" shots for better results, and players with high Driver and Fairway Wood ratings will have more chances to go for the green intead of laying up.

There's more to it all, but I'd like to keeps this relatively short. It works great on paper, and should transition well to the PC. Players can be made VERY easily in less than a minute. Courses take... significantly longer. There's a reason we only have one course right now. Anyway, here's to a great tournament, and to some solid future development!

Slowly Heading Down the Fairway (11/18/18)

We're getting there. Little-by-little, bit-by-bit. We've been plugging away at XEG Golf these last few weeks, still working on the Player Select interface. At this point, it's nearly done. Here's what it looks like now. We just need to code the ADD ALL, ADD RANDOM, RANDOMIZE ORDER, SWAP PLAYERS, and REMOVE PLAYER(S) buttons, and add the button to advance to game action. Each of those buttons involves some challenging new code, but we're hopeful that by the early December update, we'll have it all functional enough that we can focus on the gameplay itself, and if we're exceptionally lucky maybe even play out a tournament to see how it works. Thanks to the kind people who have recently donated, and to those who have written to express their support and enjoyment of our games here. It really means a lot.

November Update: FORE! (11/04/18)

Who ISN'T thinking of golf in November? I know it's an odd choice for us to work on XEG Golf instead of XEG Football this time of year, but it's the choice we made. With the actual gameplay functional with pre-scripted players and a pre-scripted course, the next step was to build the means to customize. We built a Main Menu, then a fully-functional Course Select Screen, allowing you to pick a course off the server, or select one you made on your own PC locally. The next step was the Player Select Screen, again allowing you to use players from the server or locally. That last screen is still a work in progress, but it's progress all the same. We've coded up the 2018 PGA Tour Top 100, as well as a bunch of guys I work with for that not-so-professional feel.

The next step is to get that screen working, then we'll really be in business. So can you play? Not yet. Look for great things to come in future updates as the code of this game grows and begins to flourish. Financially XEG still has a hill to climb, but while we cook up creative solutions, we'll just keep making games and content. Thanks again for the interest.

Mid-October Update (10/16/18)

Congratulations to the Pierre Dakotans--the unlikely worst-to-first champions of season 4 of the Capital City Hockey League! Led by rookie of the year Edgar Domingus, Pierre closed out the season on a 6-game winning streak, and defeated fellow upstart Frankfort 6-4 in the championship game. You can relive the dramatic run, as CCHL season 4 is available for download.

If real teams are more your taste, a great homebrew set by our friend Wilco--the 1972-1973 NHL--was added earlier this week. Thanks to him for that great addition! With that, we close the book on XEG Hockey for the time being, and move into development of our latest intellectual property: XEG Golf! We're moving in a bold new direction with this game, and are broadening the scope of what we're able to do at XEG. More on that to come! We are forever grateful for your support and your interest! - Mike

XEG Hockey 3.0 Released (10/05/18)

Just in time for the start of the hockey season, XEG Hockey 3.0 is out, along with the 2017-2018 NHL season and Season 4 of the fictional Capital City Hockey League. There are over 30 bug fixes/new features/gameplay tweaks, such as third jerseys, user-editable game descriptions, increased quicksim speed, auto-calculated three stars of the game, and much more. The game should work on all windows computers, just download the files from the Downloads section above, unzip them, and follow the instructions. Speaking personally, this game is my favorite thing we've produced so far, and I can't even count the nights I've spent nervously watching my team hold on to a one-goal lead late in the third period! The release of this game has been a long time coming, and we hope you enjoy it!

We are LIVE! (10/04/18)

Welcome to the brand new! After many years of hard work, is finally online for the world to see! XEG believes that every sports fan should have access to a free, fun, heavily customizable text-based sports simulator for their sport of choice. Here at XEG, we're trying to make those games and share them with the rest of the world. At this website you can get the latest news on what we're creating, and download the games that interest you as well! It's all free. The only money we make is from future website ad revenue and donations from our generous user base, so enjoy! Reach out to us at our contact page, we always love to hear from people!

Load More

Back to top