2019 Priorities

Hi folks,

Now that we’ve released our final patch for 2018, and because I’ve failed in my quest to do more regular dev video updates (does BlizzCon count?), we wanted to cover something that several people have asked about this year - our roadmap and priorities.

These are some of the larger items we’re tracking - it doesn’t cover everything, and it’s entirely possible that I missed some items during exporting from our database.

Feel free to comment below on things you agree with, disagree with, obvious things we’ve missed, etc. All constructive feedback helps. Just please remember that we’re a small team here on SCR, and we have to be realistic about what’s achievable. If everything’s a priority then nothing’s a priority. So let’s concentrate on the most important issues for the near future. There will be more opportunities down the line to circle back to lower priority issues.

The standard suite of disclaimers apply here folks - priorities may change, no timelines here, things may drop off the list, no guarantees on anything, etc. etc… y’all know the drill.

So without further ado - here is our priority list as we head into 2019:
(updated 9/24/19)

[P1] Team matchmaking
[P1] Disconnections from server

[P2] Observer: chat abilities - “social observer” profile on game creation
[P2] Observer: ability to pause the game (currently can’t) - “referee” profile on game creation
[P2] Options menu performance improvement (and general web UI stability improvements)
[P2] Unit count in replays (investigation)
[P2] in-game: way to reference a player name without typing their exact name - /f, /i

[P3] Abort game start if a player leaves a lobby during the countdown (investigation)
[P3] Observer desyncs
[P3] Consolidation of some or all gateways

[P4] Clan
[P4] BWAPI
[P4] Further league divisions (investigation)
[P4] Racepicking (investigation)
[P4] API to replace the web calls that StarLog.gg relied on
[P4] Minimap separator line in certain configs on certain maps
[P4] /stats to show league rank of play (investigation)

DONE- (updated 9/24/19)

[P1] [1.23.0] 64-bit
[P1] [1.23.0] Matchmaker algorithm improvements
[P1] [1.23.0] Relaxed input
[P1] [1.22.3] Replay autosave naming
[P1] [1.22.2] Whisper: Error 2:7004 failed to make initial server connection
[P1] [1.22.3] Toggle friends notifications through a command (/f on and /f off), as when it’s only in the menus you cant switch it when on battlenet.
[P1] [1.22.3] /stats disconnects (Restore the disconnect stat in /stats)

[P2] [1.23.1] Force players to actively choose their race in a game lobby
[P2] [1.23.1] Worker count in replays (investigation)
[P2] [1.23.1] Custom colors in games / large palette of player colors
[P2] [1.23.1] Expand map string table (EUD)
[P2] [1.23.0] Friend request error message
[P2] [1.22.4] Show opponent’s rank in matchmaking pre-game popup
[P2] [1.22.4] Add a “Watch Replay” button somewhere in the post-game UI
[P2] [1.22.4] Display race of each player in-game in the diplomacy popup
[P2] [1.22.3] Restore disconnect stat
[P2] [1.22.2] When logging to the server, the default account should be the one that was used last time, not the one with most games / most time played etc.
[P2] [1.22.2] Play sound when someone joins/leaves lobby
[P2] [1.22.3] Friend notifications should not be displayed when DND
[P2] [1.22.3] /dnd should provide some feedback in chat as to what the state is/has been set to
[P2] [1.22.3] /f o should be an alias of /f lo

Additional information:

TEAM MATCHMAKING
As I mentioned at BlizzCon, although we had hoped to roll this out in 2018, it unfortunately didn’t happen for us this year. We’re very excited to get this work done, so it’s a top priority heading into 2019. We haven’t decided yet which mode we’ll roll out first (2v2? 3v3 BGH?) but once the base of team matchmaking is done, it will be a much less difficult task to roll out other modes that make sense.

64-BIT
Not the most exciting task for players, I know. But essential. Apple will be eliminating 32-bit apps next year, and at some point it’s reasonable to expect Microsoft to do the same. We’re planning a phased rollout of our 64-bit client in 2019, which means we’ve been spending a lot of time on this recently, and will continue to do so into 2019. As I said at BlizzCon, if you’re still using 32-bit Windows, it’s time to start thinking about 64-bit (you still have a good amount of time, but good to have this on your radar early).

FURTHER LEAGUE DIVISIONS
This is an investigation into a world where we have more ranking categories, e.g. A+, A-, B+, etc. If we decide it’s a good thing, it will turn into a development task and we’ll reprioritize.

REPLAY AUTOSAVE NAMING
I’ve posted about this previously. We had a version of this implemented based on community feedback, but once we took it to QA and our own playtests, we all agreed we could and should do a little more with it. So we circled back around for a full design pass and we have a new, improved version of this going through QA validation now. Unfortunately it was just a little too late to make this patch, but we’re optimistic that we’ll pick it up in the next patch.

RACEPICKING
It’s a pretty hot topic now that we’ve put work against the prevention of ladder dodging, and there are two sides that have opinions we need to listen to and decide on. This is an investigation task where we take community feedback and decide how to approach this thorny topic.

DISCONNECTIONS FROM SERVER
We know that players are still getting disconnected for reasons that aren’t obvious, and this has been an ongoing investigation in 2018. The good news is that we have recently reduced those disconnections by 90% - but the number is still too high and we still have work to do on this.

MATCHMAKER ALGORITHM IMPROVEMENTS
The balancing act of SCR matchmaking is matching as many people with the Korean population as quickly as possible without having a deleterious impact on latency. One area we’ve identified as possible to improve is for people who have decent connectivity to Korea to be able to use their actual latency rather than a guess based on their region. It’s been a lot of work, but we’re getting close to rolling this change out. The flipside to using actual latency is that folks with poor connectivity will not be able to use VPNs to trick the matchmaker into matching them with Koreans and getting terrible matches as a result. Therefore, it will be a win for latency across the board.

RELAXED INPUT
Since the release of 1.18 we’ve talked about relaxing the input behavior of SCR - many people believe that not being able to accept keyboard input while the mouse button is depressed is a goofy system. At least one of the launchers in the old days changed this behavior. In the strictest sense, this was by-design in the original SC code. But we’ve now reached out to a lot of people on this issue, and the overwhelming belief is that this should change (including Korean pros). We’ve actually already made the code change. The next step is rolling this out to a PTR environment for people to test and provide feedback on.

RESTORING THE DISCONNECT STAT
Due to a totally new server infrastructure in 1.18, we lost the ability to accurately report disconnects. Eventually we decided it was better to hide this stat than to show something that we couldn’t guarantee was accurate, so we hid disconnect stats a few months ago. However, we acknowledge that there is value to this stat in organizing custom games (not so much in ranked because the player takes a loss in a disconnect event). So, we’ll be looking at whether we can get the disconnect stat to be reported accurately and - whether or not we can - whether we should restore the display of this stat to users.

SHOW OPPONENT’S RANK IN MATCHMAKING PRE-GAME POPUP
Show as a border color the rank of the opponent before entering the game (and possibly the MMR too).

ADD A “WATCH REPLAY” BUTTON SOMEWHERE IN THE POST-GAME UI
This would serve as a fast way to watch the replay of the game just played.

FORCE PLAYERS TO ACTIVELY CHOOSE THEIR RACE IN A GAME LOBBY
This would prevent players from forgetting to choose a race.

ABORT GAME START IF A PLAYER LEAVES A LOBBY DURING THE COUNTDOWN
We need to investigate the feasibility of implementing this feature.

DISPLAY RACE OF EACH PLAYER IN-GAME IN THE DIPLOMACY POPUP
Just in case you missed or forgot the race of your opponent.

OPTIONS MENU PERFORMANCE
Since we use CEF (Chromium Embedded Framework) to power all of our new menus (including Options), it can take a while for the web browser to spin up on demand on some PCs. We’re still using quite an old version of CEF which causes many pain points, so we’d like to upgrade CEF. This and some other efforts will hopefully improve the performance of the options menu. Some of those optimizations we attempted to roll out in 1.22.2, but it introduced other issues with missing UI, so we’ve rolled it back for now.

OBSERVER DESYNCS
Occasionally we see a situation where an observer will desync from the other players, seeing a different view of the game to everyone else. This is a tough nut to crack - so the more reports we can get of this, the better - video & replays would be great.

FRIEND REQUEST ERROR MESSAGE
This is a pretty simple one (but important) - some of our error reporting around friend invitation failure is ambiguous and can lead people to believe that the friends system in general is misbehaving. We’d like to tighten this up.

WORKER COUNT IN REPLAYS
We’re at the investigation stage of figuring out:
Whether this change is universally supported
How to represent the info on the replay UI

UNIT COUNT IN REPLAYS
We’re at the investigation stage of figuring out:
Whether this change is universally supported
How to represent the info on the replay UI

API TO REPLACE THE WEB API THAT STARLOG.GG RELIED ON
In our continuing efforts to support the community, we’d like to offer a replacement API for StarLog.gg.

CONSOLIDATION OF GATEWAYS
This is something we’ve wanted to do for a long time - but the gateway part of our server infrastructure is essentially the 1998 server code, and it still underpins SCR, WarCraft 3, and Diablo 2. Therefore, we haven’t been able to make this change without impacting the other games. With WarCraft 3 being Reforged and having an active team on it, and us getting more control of the Diablo 2 codebase and update system, this starts to become more of a reality.

What this means is that we could combine US East and US West into just 1 gateway for US for example, or combine all gateways into just one (which would effectively deprecate the concept of gateways).

CLAN
It’s early days for this feature, but we’re looking at what we can do to build out a clan system to replace the old clan system.

BWAPI
This is always something we’ve wanted to do, and we did make some progress towards this in 2018, so we’re hoping that we can continue to fit in work towards BWAPI in 2019.

4 Likes

Any chance that the max player limit could be increased from 8 to 12 player maps (or even more)? Also, could there be a even larger map sizes, maybe 384x384 as the new largest map (for 12-16 player games)?

I for one would love to have a good old fashion StarCraft LAN party, but with teams of 4v4v4v4 or 3v3v3v3v3 or 5v5v5 or 6v6 (and so on).

1 Like

I don’t know why EUD maps can’t use extended unit limit (CCMU). It has to be applied to EUD maps also. Because most of recent map in Korea use EUD.

1 Like

There is bug also. When you repeat come and go to observer seat , players can move to computer player seat. It destroy usemap play rules.

And I hope you reply about graphic problem in remastered. I think it should be most priority. Because it is original objective of remastered.

Often in custom games a player leaves after the host starts, which ruins the game. Perhaps if the game is started, and a person leaves, the countdown could be automatically cancelled so the host can either (1) restart the countdown if the player isn’t necessary, or (2) wait for someone else to join.

8 Likes

It would be super cool, but when taken into account how difficult it will probably be to do, not super important for me as of right now

The only thing I know in regards to why no extended unit limits in EUD maps is that doing that would mean that, in SC’s memory space, you would have to add extra things/addresses for the extra units/sprites/weapons etc, which for one thing would actually break some already existing EUD maps, because there are extra addresses/spaces now that weren’t in old 1.16 StarCraft. So like, extra units that the map might need to keep track of – and if it doesn’t, it might have a drastic impact on gameplay.

Well, in all fairness keep in mind the game already natively has 12 players slots already. Granted those slots are for observers, but I wouldn’t think it would be a source code breaking jump to sequester those slots for at least UMS maps if nothing else and let players make make there own custom 12 player UMS maps (if making 16 player slots/maps isn’t feasible).

There are a staggering number of times the game’s code relies on the number of players staying where it’s at. It would certainly be easier with the source, but by no means would it be as trivial as you might think, especially with how many times functions seem to be inlined rather than referenced in other parts of the codebase.

Like I said, that was just my assumption. I will humbly take your word for it as I have never once looked at the source code, much less how player count effects said source code when under system load.

There are a bunch of one byte bitfields for stuff like vision, infected, etc that would need to be changed to words or dwords to support more players.

So I’d just like to mention a few bugs that have been there in SC:R since launch and are quite annoying (and also not acknowledged on this list):

  • minimap being all smudgey-whitey sometimes, with certain maps, when terrain-tabbed (perhaps related to the “certain machines - separator bar issue”)
  • x2 and x4 speed being equal to x1 when viewing a replay in HD mode (in SD the speed setting works fine though)
  • SD graphics being a downgrade compared to 1.16.1 days. We’ve had the filter slider update, which improved things, but the game is still looking worse for those of use who play on SD
  • sprite misalignment issues in HD mode? There were some quite detailed posts on this, although I’m not an UMS / HD person

The priority list is awesome though, and especially so those finished tasks up there :wink: Definitely the right direction that SC:R has been going in. Many thanks for all the work!

3 Likes

“[P2] Custom colors in games / large palette of player colors”

Yes

1 Like

Wow, that’s an amazing level of communication! By the way, a few typos.

we have recently reduced*

belief*

] When*

Thanks for noticing! Fixed.