|
|
|
| Monday, February 12, 2024 |
A Tale of Two Communities
Posted: 3:01:00 AM
|
"If you're a high visibility player, it's on you to move the community in a positive direction." -Jonas Neubauer, 1981-2021, seven-time CTWC champion
This quote by Jonas Neubauer has been engraved on the Classic Tetris World Championship's first and second place trophies since 2021, the year he unexpectedly passed away at the age of 39. I met Jonas and his wife Heather, a Dr. Mario world champion at TwitchCon in 2019. We both happened to cross paths at GDQx 2019. I was doing couch commentary for SpootyBiscuit's Cadence of Hyrule run while Jonas was doing couch commentary for Blink's Tetris 99 run. I got a big hug, a photo I'll cherish forever, and I introduced Jonas and Heather to one of the exhibits on the show floor, which was basically a mind-meld Tetris game. I remember the two of them enjoying themselves and having fun, and their laughter was contageous. Jonas was one of the few people I've met who, online, was pretty much the exact same person he was in real life, one of the most genuine individuals I've ever met. He was graceful in his CTWC defeats, and always worked to build up the community he championed.
Since his last win, there have been 4 other tournament winners. Joseph Saelee won twice. Then, Michael Artiaga (dogplayingtetris), won in back to back years. Eric Tolt (EricICX) defeated Justin Yu (Fractal161), the latter of whom won it a year later. Harry Hong also famously won the tournament back in 2014, interrupting Jonas's seven year streak.
All of these players have made a positive impact on the classic Tetris community in some way. Some have even made contributions to the community, hosting their own events, doing content creation, and genuinely being a good ambassador to the game. I had no idea that one side tournament at SGDQ 2018 would get me involved in a community amazing enough that I now find myself contributing my time to almost every classic Tetris organization. Oh, I suck at the game! But I don't let that stop me from being involved in organizing events, commentating for matches, and playing in the lower tournament levels myself, even if I have taken a bit of a step back from competitive lately to keep my competition anxiety in check.
Sure, Tetris has its bad spots. Players cheat. People get upset at others. People do tasteless things that get them banned. It happens, because people suck. But far and away, the classic Tetris community is wholesome, and I am better for being a part of it.
If only every community was like Tetris.
In the fall of 2021, a player showed up on the Overload Teams League team SpaceCowboys by the name of Zor. He was a pretty decent player. Not quite top 10 in a league of some 60 pilots, but someone seen as dangerous to play against. There was a lot of secrecy around this player. Teammates would often go on mute when talking about Zor's past experience with 6DoF games, or just outright not stream. Someone caught a stream and quickly identified the voice as the Descent pilot - and former OTL pilot - Jediluke. With a DCL record of 5982 wins and 348 losses (1413-117 vs Rethink, 809-33 vs Drakona, and 476-24 vs b2af), Jediluke wasn't just a known quantity, he was the most active competitive player while the DCL was around, between 2013 and 2020. And, as the record indicates, he was pretty good, too: he was ranked first at the end of more DCL seasons (7) than anyone else (Mark392 5, Souljah 3, bahamut 1). What's more, he is unquestionably the most successful D1 pilot on my Twitch series The Observatory, a quarterly tournament open to all Descent 1 pilots where games are broadcast and commentated on, something the community never really had prior to this series, which was founded in 2016. To date, he's won 31 out of 34 seasons, losing only to Mark392 (season 5), Zero (season 12), and Morfod (season 26). We'll talk about Morfod's winning season a bit later. Unfortunately, Jediluke's also got a temper. He gets mad when he loses, and winning your first game over what seems like an impossible opponent usually results in him making you feel like shit, rather than celebrating your momentus victory.
For comparison, here's Jonas's last game at a live CTWC where he was shockingly eliminated in the first round.
Anyway, back to the point, Jediluke decided to compete in the OTL as Zor to "get away" from his Jediluke personality. Thinking it would put less pressure on himself, he adopted the alias and kept his true identity a close secret for a couple weeks. The voice changer was pretty silly, but once the word got out that Zor was Jediluke, he posted something quick in the OTL Discord explaining the name, and barring some critique from some old rivals, that was the end of it. The general vibe was like "yeah, it's weird, but he's got less of an attitude now, so whatever."
Also towards the end of 2021, season 26 of The Observatory occurred. An unknown entrant with the name "Genevieve" (PwnJett in game) showed up for the Finals Tournament as an unqualified player who had to fight from the wildcard anarchy to even get into the knockout bracket. He did so in shocking fashion, taking out Jediluke in the semifinals and Sirius in the finals to win the tournament. And, as the tournament concluded, Morfod revealed that he was in fact Genevieve. It was amusing at the time, and everyone got a good laugh. He had only played under that handle for a couple weeks, enough so that some regulars were aware of the handle. For me, I was kind of kind of amused, but also kind of annoyed that someone would go to such lengths as hide their identity just to gain an advantage. I let it slide, hoping it wouldn't happen again.
Um, remember earlier, when I said that people suck?
Season 35 of The Observatory kicked off this month, and with it Jediluke proclaimed his retirement, supposedly tired of not having a challenge after Mark392 showed up for about a week to play games and then left to become a parent. While Jedi's lack of participation didn't bother me - a more competitive top of the table would benefit the show - a newcomer, Tonka, showed up who had been around since August. Code, a long time Observatory player, did some training with him, and Tonka's skill began to noticeably rise. By the time season 35 began, it was clear that he would be a strong contender, and did in fact win all of his games in the first episode, including against season 34's runner up, terminal.
But something didn't sit right with some pilots, and eventually it was made known to me that he was suspected of cheating. Although there wasn't anything conclusive, and it was later decided that no cheating was involved, it got enough people suspicious that for the second episode, his IP was taken from a game log and compared with some website logs. I noticed that there was a lot of activity with that IP on the Overload game browser that didn't match the player's activity in Overload, which was very low and many months prior. I then decided to compare the IP to logs on the game servers themselves, and that's when the smoking gun was found. That IP was the same IP used by Zor in Overload.
While I had 100% confidence at that point that Tonka was 31-time champion Jediluke, a lot of things didn't add up. This player Tonka showed up in the community about 6 months ago. They were trained on basics like trichording. They had matches with Jediluke. They gave a phone number with a Houston, TX area code. They would chat back and forth with Jediluke, aggressively looking for games. Even now, this whole scheme doesn't make sense to me.
But it was real. Jediluke eventually confessed to the whole thing. And he was totally nonchalant about it. In fact, my current co-commentator, Chillybus, thought it was crazy that he would go through the whole thing. He said on Discord:
"for six months? what do you have to gain against pilots who would take hundreds and hundreds of games to even be competitive with you, let alone take a game? multiboxing discord accounts? faking tracker games? IMO you did competition a disservice and your friends dirty from the sound of it, just chasing shadows of the afternoon someone aliased you to a win. not how a longtime decorated top competitor should compose themselves. it isn't time to go around again, I think it is time to log off. you have shamed yourself here. That's all I'll say in this time and place."
The reply from Jediluke was equally nonchalant: "1 v 1 Chilly?" and "those who don't compete ...commentate".
Is this moving the community in a positive direction? Does he care at all about the community? Is this how a top player is going to treat the community that he represents?
This is literally night and day. In one community, I have players that are leaders, care about the community, and do everything they can to move the community forward. In another, I have players that are selfish, care about themselves, and do everything they can to try to get ahead.
You tell me which community I'm going to put more effort into.Labels: Descent, Descent Champions Ladder, Gaming, Overload, Overload Teams League, Tetris, The Observatory
|
| Wednesday, October 11, 2023 |
The Final Stretch
Posted: 12:40:00 AM
|
After much stalling on my part, the Overload Game Browser has finally migrated away from Windows over to Linux. This now makes 4 out of the 5 websites I wanted to move off the Windows box completed, leaving one last beast: the Overload Teams League.
This means I'm on the final stretch of a project that's gone on for almost two years now. It definitely feels like the light at the end of the tunnel. Now I just need to figure out what that light is.
The first thing I want to do after all this is done is give The Observatory its own website. I haven't updated anything having to do with it on this site in a long time, and the database I was using for it is massively out of date. In addition, I need to recreate the bot that was used for it so that the show runs much smoother. That will take time, however, and I'll be lucky to have it done by Season 35.
After that, who knows? I have a number of ideas on what comes after that, but haven't made any solid plans for anything yet. There's so many possibilities that I don't feel like I can even choose something until I finish up everything else I'm working on. I feel like I have an ocean of possibilities in front of me, but no clear direction to swim in. Yet!
In the meantime, a lot of other things are falling into place for me to resume a regular streaming schedule. More on that to come later, but I have a number of exciting projects in the works for the stream that I will be putting out there soon.Labels: Azure, Coding, Overload Teams League, The Observatory, Twitch
|
| Sunday, November 27, 2022 |
A Two Tiered, Untiered OTL
Posted: 1:32:00 AM
|
For those that don't follow the Overload Teams League, here are some examples of somewhat common scores: a close 96-93 game, a double-your-score 125-62 blowout, a comfortable 84-52 win, and a please PuDLeZ don't ever put 10 people into Indika again 283-252 throwdown.
And then there's this.
That's two-time OTL champion Invidia taking out winless Rogue Pilots by the score of 110 to 5. Ouch.
Here are the all time records that this game produced:
- Highest Team KDA: 26.4
- Fewest Team Deaths: 5
- Highest Team Damage per Death: 2600.8
- Highest Individual KDA: 84.0
- Fewest Individual Deaths in 2v2: 1
- Highest Individual Damage per Death: 8196.6
You may not understand these numbers, but rest assured, they are impossible numbers to get, especially given RP decided they're not playing anymore with their current roster until they can get some more pilots on their team.
Immediately, questions across the league were asked about why such a game should be counted. The answers are many, as are the arguments against. I sat on this for a couple days, thinking of a way to resolve this.
The obvious first solution is to divide the league into 2 tiers. Only count games when upper tier teams play upper tier teams and when lower tier teams play lower tier teams. On the surface, this sounds like a great idea until you realize there are only 11 teams, plus Rogue Pilots, which means that if we did this, we would essentially be dividing the league into two tiny tiers. Then you'd have to worry about league promotion/demotion tournaments and all kinds of other unpleasantries that an 11 team league simply does not have the patience for. This also has the drawback of disallowing play between lower tier teams and upper tier teams, at least from the formalized perspective. Sure, we could count "practice" games, but I am not made of enough time to track those practice games in this small of a league. I feel like the point at which I do something like this would be at 16 teams.
The second solution is to mark a team on a case-by-case basis as a practice squad. This would mean that the OTL is exclusive, and requires teams to prove themselves before they can start playing games that mean something. It would require manual intervention to get teams into the main league before they started playing games that count. That is not what the OTL is about. I am fine with teams that don't have skilled players trying to learn by playing against teams with skilled players. However, something has to be done about the current situation.
Putting everything together, I thought about what could work and what couldn't work. I don't want to exclude anyone, but I don't want to have the "NBA champions vs. bad high school basketball team" count for records. So, I came up with a system that allows those games to happen, but for the stats not to fully count.
The answer is an two tiered, untiered league.
It is untiered because a championship team can play a winless team, and have the game be meaningful on a league-wide level (provided the winless team decides to remain active). The standings page simply doesn't change. All teams are listed and rated accordingly.
What is two-tiered, however, shows up in individual stats. Going forward, individual stats are only displayed for games played vs. the upper league. That means when Rogue Pilots plays Invidia, Invidia is not playing for personal stats, only a team win. Rogue Pilots, however, do get to play for individual stats. That way, everyone's stats - from the top team to the bottom team - show their performance against only the upper league teams, and they can be reasonably compared. You can still see a pilot's stats against the entire league by going to their pilot page and selecting the appropriate option. However, everywhere else only shows stats vs. upper league teams.
This, of course, leads to the question of who is in the upper league and who is in the lower league. I thought about this, and again did not want to be exclusionary by saying only RP should be in the lower league. So, I have retroactively applied the following formula to determine who is upper and lower league:
- The first eight teams in the league are automatically assigned upper league.
- All new teams thereafter are assigned lower league.
- At the conclusion of the season ending tournaments, the league is re-divided, with the six teams that make the knockout stage plus two other teams assigned to the upper league.
- In seasons that have it, the two finalists of the season-ending Best of the Rest II tournament are the other two teams that make the upper league. In seasons that don't have it, the top two teams by the previous season's rating that did not make the knockout bracket make the upper league.
There are obvious caveats with this. First, one of the newest teams in the league, The Boys, are made of pilots that came from other upper league teams. They're pretty good, too, The Boys hold 3rd in the current season standings. Should they be lower league? The answer is yes. This is still a new team with a new dynamic that other teams need to become familiar with, so for a single season TB is considered lower league. Once they finish the Championships in the top 8 - and I have no doubt they will as half of their team was a large part of OMG's recent run of top 4 OTL finishes - they can be assigned to the upper league.
Second, if a team leaves the league mid-season, what should happen? One, that team loses the right to be upper tier, even if they return later that season. Two, there needs to be a way to fill the spot, and that will fall to 3rd place from the most recent Best of the Rest II tournament.
Third, if a team chooses to sit out of the Season Championships, what should happen? There are teams that aren't quite so competitive that they need to rank themselves in a season ending tournament. However, they may clearly be an upper tier team that just chooses not to play. So, if a team that sits out a tournament was upper tier in a previous season, I think the fairest solution is to play a separate series against the lowest upper tier team after the end of season tournaments are over, and the winner gets that spot.
There are probably other things that I'm not thinking of. It's probably not a perfect system, but to make sure that we're not excluding other teams and at the same time making sure we don't get ridiculous records (Yinut's 0 death game is also out of the record books after this update) that can't be beat under normal circumstances, this will do in a pinch.
There are two other minor changes that result from this update:
- New teams are automatically set as not qualified to affect ratings (ie: ratings for games played against that team do not count) until they have played everyone 3 times. This is to ensure that teams that show up for half a season and then disband don't hit the ratings at all. Side note: I really need to come up with a term other than "not qualified".
- Because it's a little more important now, the group stage will be returning to the Best of the Rest II tournament. The specific format of that will depend on how many teams play in it. A 3rd place match will only be played if it is necessary, ie: multiple upper tier teams disband at the end of the Championships.
There is also the ethical angle of the team that carried out that 110 to 5 victory. As of the beginning of the year, there is nothing to be gained for your team by getting 22 times the score of your opponent. It's no different than winning 110 to 109. Did the league's focus on stats make Invidia feel like creating a blowout like this was justified? I would like to think better of our pilots, but I can't discount that possibility either. I've also played in a game against RP where I got an outsized KDA, and all it made me want to do was never play them again, because it simply wasn't a challenge. If stats are a motivator for this kind of thing, I hope that by eliminating the source of motivation, games like these won't happen again, unless the lower team really wants the upper team to go hard.
This is a large update to the league structure. It seems like a lot is changing. But honestly it's a small update overall. I feel I owe it to the league to make sure that incidents such as the 110 to 5 game are just looked at as a footnote, rather than a lightning rod for drastic change. Ultimately, this isn't a drastic change, and it doesn't change the way the league operates on a day to day basis. Only individual stats are affected. The biggest controversy will probably be which team is in what tier, and if that's all that comes of this, this update will be a success.
Labels: Gaming, Overload Teams League
|
| Saturday, August 13, 2022 |
What have I done since roncli.com v2?
Posted: 2:13:00 AM
|
Nothing.
That's it. That's the blog post.
OK, so that's not entirely true. Actually, a lot has happened since the end of 2021. Allow me to recap.
- I needed a break from hardcore coding. I was going hard for about a year, and needed some time to do something else for a while. I still did some coding, but it wasn't for the big picture projects.
- Return to work sprung back up. I now travel to the city two days a week for my job. I was not ready for the level of fatigue this would bring on those days.
- I moved. My wife and I bought a house, and I now live in Pittsburg, California, pretty close to a BART station. It's gorgeous here, we have awesome views of the delta and surrounding hills. The house, however, is cursed.
- My ability to keep up with everything waned for a while. Having to worry about house searching during the week and actually going to look at houses on the weekend while juggling about a half dozen other responsibilities. For those keeping track, I temporarily gave up maintaining olmod, running the Observatory, and streaming regularly.
While things with the new house have been pretty hectic - see aforementioned comment about the house being cursed - life has been pretty damn good otherwise. I still feel my top goal in terms of coding is to get off of the Windows VM, so I'm going to start picking things up again to move into that direction. But first thing's first.
I've been doing a lot of modernization of some older projects, and have been forcing myself to catch up on super old issues. I want to get the issues list for my personal projects down to zero (excepting FusionBot, read on for more on that) before moving the Overload game tracker to a Docker project. After that, the next real big task is going to be combining the OTL and the Azure server manager into one project, and then moving it to a Docker project. The last big project is giving The Observatory its own website and reinstituting the bot so I don't have to directly deal with Borjarnon making a mockery of the event. (I still love you, Borj.)
After that? I don't think I can commit to anything after that other than shutting down the Windows VM once and for all. I have a lot of ideas as to what I want to do next, but getting to that point is going to take dedication... the same level of dedication I gave last year to my coding projects. It's not unreasonable for me to finish all these things within a year, but I also know how easy it is to burn out, so I'm taking it carefully and giving myself time to do other things that I enjoy. I believe that taking things one step at a time while leaving room for other things will help prevent the burnout I experienced at the release of roncli.com.Labels: Coding, GitHub, Moving, Overload Teams League, roncli.com
|
| Saturday, October 09, 2021 |
The Big Picture is Starting to Wear on Me
Posted: 10:59:00 PM
|
Eight months ago, I wrote on The Big Picture, a summary of my initiative to get off of my Azure Windows VM and on to Linux VMs running Docker containers with Node.js websites backed by MongoDB databases. It's a meta-project of sorts, and it has taken a certain mental discipline to keep at it.
The Trax in Space 1 archive was easy to port, and since porting it I've learned that I didn't need to restrict downloads so much on it, so I increased the download limit. Six Gaming was full of challenges, and even today I find things I have to change with it because I didn't do it right the first time. I'm currently working on rebuilding this site and have been for several months now, and I'm itching to get back to the Overload-related projects, and to move on from this whole thing.
I said this back in February:
This is, of course, a multi-part project that has taken on a life of its own in recent months, and it's one I am enjoying greatly so far. It's really expanded the boundaries by which I am able to operate websites and related online services.
Boy, that's an awful lot of enthusiasm. Sigh. We were so young back then.
Since then I've worked through major bugs, tackled big architectural design questions, learned a hell of a lot about MongoDb... and have bored myself to death with this project.
Look, it's not like I knew this was going to be a huge project. Just the opposite, I knew what I was getting into. I remember how long it took me to complete roncli.com the first time, and I'm still looking at coming in at well under a fifth of the time it took me to complete it the first time around. I've learned a lot in 7 years, and it's showing with how fast I'm getting stuff done. But when I take a look at the big picture, it just seems so... slow.
I am to the point I want to work on something else. I want to update the OTL for season 7 and beyond. I want to add some amazingly cool things to olmod. I want to make games of my own. And, I want to get back to regular streaming again.
But every time I sit down to code, I am reminded of the plot: get off that monolithic Windows VM, and you'll have the freedom to do what you want and when you want when this is all done. So I go heads down, jam my EDM playlist, and spit out another couple of files on whatever I'm working on, making a bit of meaningful progress until I get bored and go for a walk, play some games, or write a blog post.
I'm sure a lot of this stems from the fact that I've been essentially stuck at home for 19 months. I'm bored to death with that, too. No train rides to The City, and very few outings outside of the usual Friday routine of dinner and groceries. While 2021 has been infinitely better than 2020 when I didn't get out at all, I can't shake the feeling this year that I'm accomplishing very little.
Of course, my GitHub contribution graph will tell you otherwise, and when I look at things logically, I know I'm getting stuff done. I just wish I could fast forward to the end of the big picture so I can move on to the next big thing... perhaps something a bit more exciting.Labels: Azure, Coding, Overload Teams League, roncli.com, Six Gaming, Trax in Space
|
| Monday, February 08, 2021 |
The Big Picture
Posted: 4:16:00 PM
|
Sometimes, it's a good idea to take a step back and look at what you're doing and what you've done, and ask, "Can this be better?"
I recently did this with my Azure Windows VM. For a while, I've been just loading up any new website or venture I've created onto my VM. This, however, has proven to be problematic when it comes to some of my more recent projects, including the OTL and the corresponding Overload Game Browser. These two projects are by far my most used websites on the server, and they continually push the limits of what this VM can do. Timeouts have become more and more frequent, and as more and more data piles into the database, the problem is just going to keep getting worse.
So I asked the question, "Do I need to be on a Windows VM?"
Some years ago, the answer would have been "yes". I was running .NET Framework 4-point-something, and had a lot of Microsoft-specific things on the system, including a Microsoft SQL Server. Now, however, every site I host is written in Node.js. The only thing remaining that requires anything Microsoft is the SQL Server.
So I asked the question, "Do I even need SQL Server?" I don't think I do. MongoDB exists, and I have been figuring out how to work with that for some time.
As such, I've begun a massive project to try to move away from this Windows VM and retire it permanently. For a while, I wasn't sure how I was going to do it, but as part of a learning course pilot at work I picked up Docker. My goal is to move every project that I have on that server into a group of Docker containers and run them on their own Linux VMs. Linux VMs are much cheaper than Windows VMs, and if something starts running out of resources I can just up the VM size accordingly.
So what is going to move?
This is, of course, a multi-part project that has taken on a life of its own in recent months, and it's one I am enjoying greatly so far. It's really expanded the boundaries by which I am able to operate websites and related online services. In coming posts, I will talk about each project separately, and what each site's status and future is.Labels: Azure, Coding, Overload Teams League, roncli.com, Six Gaming, Trax in Space
|
| Wednesday, January 30, 2019 |
OTL's player disconnection issue
Posted: 5:40:00 PM
|
The Overload Teams League has started off fairly well. We've played 26 games in the first month, completed a small one-day tournament, and have had five teams play each other at least once. But there's one issue that's come up that's been really tough to call. There was a player disconnection issue that recently came up where a player BSOD'd and there was some confusion on what to do. I wanted to put something in writing before this happens again.
First, some background.
In Descent 3, Heat aside, all servers were private. Players could come and go as they pleased, and you could always rejoin a game after crashing out. Game parameters were also much more open. Kill goals and time goals were text entries, not selections from a menu.
Revival confusingly bucked this trend in Overload, removing server browsers and opting for monolithic servers that can run multiple games at once. However, the only way to access these games is if you have the password AND you join before the game starts. There's no way to see what games are running, and even if you had the password you can't join a game in progress.
The Descent 3 Teams League pretty much ignored any issues with disconnections. DCs could simply be met with a substitution (subs were common in D3TL matches!), or by playing shorthanded until the disconnected player returned. Only a full server crash would suspend a match (in the D3TL Tournament, this only happend once ever, but was in the semifinals!), but players would pretty much just restart from the prior score and amount of time left with little fuss.
Disconnections in the OTL cause bigger problems.
- Players can't reconnect to a game in progress, leaving their team short-handed.
- If you wish to suspend the match, you have limited options to select time parameters in game.
- Because of the above, disconnections can be seen as gaming the system, depending on many factors.
In short, in Overload, we as a league have to deal with a situation that's less than ideal. We are aware of the fact that games online are not nearly as flexible as they were with Descent 3, and we have to adjust as a result.
In the OMG/PTMC Terminal match, PuDLeZ BSOD'd and disconnected with approximately 2:30 remaining in the match while his team led by 5. Teams immediately stopped playing and agreed on starting a new game from the current score and time remaining (they had suggested 5 minutes, until I stepped in and asked for 3 to more match the time remaining). The stats from both games were combined for the final match score.
From my standpoint, that was awesome. Both teams came together to finish out the match despite the circumstances. And, this is the kind of model I want to encourage... work out a solution that both teams can agree on. However, teams will have different ideas on how to do this, so I think it's good to have a set of guidelines available along with what to do should teams NOT agree on a way to go forward. Here's what I came up with:
Should a player disconnect or a game end prematurely due to a crash or network outage, every effort should be made to get the current stats from the game up to that point in the match. Teams should then agree on what to do next, within the following guidelines:
- Teams can agree to restart a Challenge if 10 minutes or more remained on the clock at the time of the issue, or if multiple issues happen within a single match.
- Teams can agree to end a game with the score as is if less than 3 minutes remained on the clock at the time of the issue.
- Teams can agree to play a 2nd game, combining the scores of both games for the final score of a single match. The second game's time limit should be as close to one of the time options available in game as possible to the amount of time remaining when the issue occurred. For instance, if there was 6:23 on the clock, teams could agree to play the 2nd game with either a 5 minute or 7 minute time limit.
In all cases where a match is suspended and resumed, the same pilots must fly for both teams, as substitutions are not normally supported in Overload games.
If teams cannot agree on what to do, an administrator can be asked to decide how to proceed, and they will make the decision. The administrator may also opt to adjudicate the match accordingly in extreme cases.
If one player is repeatedly having these kind of issues, they may be suspended from the league until their issues are resolved. If it is deemed that the player is acting maliciously, they may be banned from the league.
I don't want it to feel like I'm ignoring the momentum argument, so I'll address it here. Momentum is a very real thing, and it sucks to have it taken away by an extraordinary circumstance. However, examples of leagues or competitions that put extra time on the clock because of such an issue is exceedingly rare. In fact, more often than not, you end up LOSING time. Here are some examples of what other leagues do, where, surprisingly, many take place in the sport's biggest games of the year.
- Generally, MLB games will either be restarted at a later date if 4 1/2 innings haven't been played, end early if one team or the other is in the lead, or be resumed at a later date if tied.
- The NHL is somewhat inconsistent. In one case, they cancelled the game after it was 1-0, then restarted the full game but kept the 1-0 score from the prior game. In another, they cancelled the game after it was 3-3, but made the stats from the first game official, however that works, and restarted the full game from 0-0 2 nights later.
- The NBA will just end a game should something extraordinary happen.
- The NFL doesn't really end games, even though the commissioner has the power to do so in extreme circumstances. The only example I could find that even comes close is one where the final play of the game ran out the clock well after a field goal was scored, denying the other team from fielding a kickoff and possibly scoring a miracle touchdown. The NFL made a rule change the following season in response to this to prevent successful field goals from taking more than 5 seconds off of the clock.
- The Overwatch World Cup simply restarts the current game within the match.
- League of Legends has something called "Chrono Breaking" that allows them to return to any point in time in the match, should something go wrong such as a game-breaking bug. When "Chrono Breaking" is broken, league officials will either declare a winner if one team is deemed too far ahead for a possible comeback, or restart the match.
I'm sure there are plenty more examples to put forth, but overwhelmingly the concept of momentum is not given much thought in any of these cases. Either they drop the rest of the game, pick up where they left off later, or they start over. Nowhere is something arbitrary like 5 extra minutes given just to facilitate a possible comeback or to restore momentum. And I think this makes sense, especially in an environment like the OTL where we have individual stats and want them to mean something instead of having them skewed by stats where matches were far too short or too long.
In an extraordinary circumstance, you need to make a judgement call that someone somewhere is not going to like. As long as we deal with these circumstances with consistency and with good intentions, that should be all anyone can ask of the league. I also strongly like giving teams options, and them letting them agree on which option to take, only calling in help when they can't agree.
Hopefully this will address the situation, but leave it open to discussion for now over on the OTL Discord. Apologies for not thinking of this sooner... I had a lot of situations planned out, and this was definitely not one of them!Labels: Gaming, Overload, Overload Teams League
|
| Friday, June 08, 2018 |
The Overload Teams League
Posted: 6:37:00 PM
|
I wanted to put together a bunch of my thoughts regarding the possibility of creating the Overload Teams League.
Those who played Descent 3 might remember that I took over something called the Descent 3 Teams League from bash and Sirian, and ran it for a number of years. I kept it going until well into the second half of the aughts, with help from Matrix and IceHammer to keep things running smoothly. Eventually the game dried out, and with it the league was retired.
With Overload, the potential for Six Degrees of Freedom competitive team action returns. I've recruited Chilly Bus and MobMessenjah to bounce some ideas off of, and wanted to list out what we've come up with so far.
The Spirit of the OTL
The OTL "spirit" borrows a lot from from the D3TL. Essentially, teams get together to play competitive games against each other, and the system is there to facilitate the games with as little interference from administration as possible. However, we are planning on having a few notable differences for the OTL.
First, seasons are being planned. While there will be lifetime standings, we want to rotate out the standings every 6 months to keep the leaderboards fresh.
Second, we're going to want to keep big rosters down. The D3TL team NT was a unique idea, but we really don't need to have teams with 50+ players on it. This means that large clans would have to enter multiple teams on the D3TL, which means more people will be able to play, and even allow for intra-clan matches. Right now, we're looking at rosters being between 5 and 8 players, although we're leaning towards the higher end of that list.
Third, we're looking to keep the game time down. D3TL games averaged an hour in length. Overload right now only allows a MAXIMUM of 20 minutes, and that's the standard we're looking at adopting. If Revival raises that maximum, I don't think we're going to want to follow suit.
Fourth, we think map, opponent, and mode diversification is unnecessary in 2018. To keep teams from playing the same map over and over, we're likely going to borrow the "home map" concept from The Observatory. To keep teams from not wanting to play other opponents, we want to implement a ranking system that's more than just wins and losses. And, there's only 2 real modes in Overload right now, and both are team anarchy... one with friendly fire off, and one with friendly fire on.
Finally, we want to do frequent events. Three kinds of events we're thinking of:
- Regular events, perhaps monthly, that are at different days and times, where people can get together and play a small Swiss tournament for a few hours. Similar to The Observatory's tournaments.
- Mid-season events, a top 6-team invitational knockout tournament, perhaps with something on the line like a guaranteed spot in the knockout tournament of the end-of-season tournament.
- End-of-season events where we pull out all the stops... qualifiers for people to get into groups, a group stage round robin, and concluding with a knockout tournament. You win this, you're the season champion!
Choosing Maps, Servers, and Colors
I mentioned using The Observatory as a way to determine what map to play, but I wanted to go into more detail on map selection, and other selections that may give advantages to one team and not the other.
First, here's what we're thinking for maps. Teams will have a pool of "home" maps, and when they are the "home" team, their opponent will choose one of those maps. Who gets to be home? That'll alternate every game between the two teams, with the first game being random. What if both teams want to play a map that's not their home map? Teams will be able to agree to play any map available, overriding the home team concept for one game.
Servers will work the same way. One team will be assigned to start the game, which allows them to pick the server of their choice, and the next game between the teams your opponent gets the choice. Every 2 games this resets. However, you can agree to play on a particular server (provided you have access to it) to override this behavior for one game.
Finally, colors will just be assigned in a similar way to servers. Unlike the servers, though, your team color shouldn't be something to agree upon. Sometimes you'll be orange, sometimes you'll be blue.
Game Rules
Overload has a lot of ways to play team games, but we obviously want to standardize them for fair competition. This is what we're thinking:
- Time limit: 20 Minutes
- Show Enemy Names: Team Only
- Respawn Time: 2 to 4 Seconds
- Respawn Shield: 2 Seconds
- Powerup Overall Frequency: High
- Powerup Initial Secondaries: Low
- Powerup Super Frequency: Low
All powerups are allowed, largely because we can't disable anything non-weapon.
As for Friendly Fire, we're actually thinking of making that a separate "mode". If you recall, the D3TL had separate rankings for each mode, but there was an overall ranking as well. We'd probably do something similar for this.
The Ranking System
Let me come out and say NO ONE is going to like the ranking system. Regardless of what system we use, nothing's perfect. I am hoping that by using a combination of a ranking system and regular events, any decent ranking system will be accepted as long as it's not the final authority on "who is the best". With that said, I'm going say that naughty word: Elo.
Long story short, I want to have score ratio be a factor in Elo score changes, and have the rankings be somewhat volatile given that these are not lifetime ratings.
First, we have an idea to have the score ratio factor in the Elo "result" calculation. Normally, a win would give you a 1.0 result and a loss would give you a 0.0 result. In our version of the Elo formula, you'd only get 1.0 if you doubled your opponent's score, and 0.0 if your opponent doubled your score, with a logarithmic curve filling in the points in between. I came up with the "double" by examining the history of Team Anarchy scores in the D3TL Tournament. It maxed out at a ratio of 3.27 to 1. If you're beating your opponents 45 to 15, the team with 15 is going to need to improve dramatically to ever have a chance of winning. 45 to 30 feels more like that the team with 30 could eventually win. There's no real solid statistics on what exactly to use, but this feels like a good starting point.
Because we want a decent level volatility, K will need to be high. On top of this, because we're going to be using score ratio as the result, this requires us to have a higher K to keep things a bit volatile. I'm looking at experimenting with a K=50 for the first season.
Finally, we want to use a provisional rating so teams can't play 1 game and be ranked among the top teams. Teams that have 10 games in a season will have their full Elo as their rating. Outside of that, every game a team plays will give them access to 10% of their Elo. So, a team with an Elo of 1500 but has only played 2 games will have 20% of their Elo applied to their rating, so their rating will be 300.
We'll also have individual player stats, like total points, points per game, deaths per game, and efficiency.
Things We Want Revival To Do To Help
Revival has done a great job at making a game people want to play, but there's more that can be done to make this game really shine, as well as help out the OTL with doing what we want to do. To this end, we currently have a small list of ideas we'd like to pass on to them.
- Overload NEEDS an observer mode. In 2018, it almost feels like an oversight to not have some kind of observer mode. Even Descent 3 had observing!
- To keep games fair, all players need to be able to confirm the selected settings for a private match. Without this, the person starting the match could sneak in some setting that the other team won't be aware of.
- Game stats from private games should be output to a text file. No funny key combination required, no UI element, just a way to always output private match results. It should include each players' score line (kills, deaths, assists, suicides), and each players' kills and deaths against each other. Again, something to take away from Descent 3.
- Allow the player hosting to pick which region to start their game in. Right now it just defaults as the closest to them, but what if a bunch of US players want to play Germany players on a UK server?
- Right now you can select which weapons to allow or disallow. Extend this to other powerups: Ammo, Energy, Armor, Invulnerability, Cloak, Overdrive... everything.
- Make an option to disallow players from delaying their spawn in a private game. This would prevent cases where a team is in the lead, but the other team is making a comeback, except the team in the lead just stops spawning.
League Interface
The primary interface for the OTL will most likely be a Discord bot. I have a lot of experience with Discord bots as I've made 3 now, and having a bot to help out with managing things like rosters, game reports, and more will really make it easy to keep the league running without anyone getting involved unless there's a dispute that needs to be resolved.
We'd still have a website, but its primary focus would be to show standings, results, and more. All other communication would take place on Discord.
What's Next?
Discussion, of course! I am posting this on a Friday to give everyone some time to read it over and form their own opinions as to what might be fun in an Overload Team League. On Monday, I'm going to do an Overload stream at http://twitch.tv/roncli and hold an AMA regarding the league. I'm looking for your questions and suggestions, so be sure to add your questions on the Reddit OTL AMA comments thread so that I don't miss them.
Summary
Overload is pretty well-suited for a teams league like this, and I think that having an organized teams league will get people playing multiplayer, and especially team games. Additional support from Revival will allow the league to do more, drawing even more interest from players who would not otherwise play multiplayer.Labels: Gaming, Overload, Overload Teams League
|
|