League of Legends

League of Legends Dev Tracker




14 Mar

Comment

Originally posted by xCavas

I mean its really good but not as impressive as I initially thought.

Hans Sama, Upset, Samux & Sheriff all have 0 isolated deaths too, which is basicly half the league...

Upset is actually the only other ADC with 0 IsoD.

Comment

Originally posted by [deleted]

Who is the #1 in the respective stats where Rekless is #2?

Here are a few:

D@15: Samux has 0!

DMG/M: Upset with 697

KP: Sherrif at 83.8%

FWD: Hans Sama with 39.6%

Comment

Originally posted by LoLFirestorm

Will league ever get multithreaded without a complete game and graphics engine rework?
I'm no programmer but I believe the stuff like UI which is not super time sensitive down to tenths of a milisecond could be executed on a separate core just fine with some work and as far as I'm aware this doesn't take place right now.
My current system is very much an edge case but it's absolutely hilarious to me that I can run Doom 2016 at ultra settings and get 100-120FPS with dips to 80 and on the very same machine league will hover in 60-80 range after leaving the fountain and dip as low as 30 in super lategame teamfights. This is at a mix of medium and high settings btw but these seem to make basically no difference when the bottleneck is on the CPU side like in my case (I'm still running a Phenom II after all these years but I got myself an RX 480 before the mining boom).
I don't think it's alright that even proffesional streamers running pretty beastly builds and encoding o...

Read more

League is already partially multithreaded, although I'll be the first to admit that it could make far better use of more threads. It is something that we are working on - engine rework is ongoing, but with the game changing constantly, this is like rebuilding an airplane engine while its flying. We have to be very careful that we don't break anything as we go.

You have correctly surmised that the main performance issue is a CPU bottleneck - in a team fight we're dealing with a lot of particles, and this can be costly. In fact, there is a break down of the rendering pipeline here which will g...

Read more
Comment

Originally posted by C0ldSn4p

/u/RiotTony : Actually you can inline virtual function if you statically force the call of a precise function implementation

Here is a code sample:

// Compile with: icpc -std=c++11 -O2 main.cpp 
#include <stdio.h>

class Base {
  public:
    virtual int foo() {return 42;}
};


class Child : public Base {
  public:
    int foo() {return 69;}
};

void bar(Child c) {
  printf("%d", c.Child::foo());
}

void bar2(Child c) {
  printf("%d", c.Base::foo());
}

int main(){
  Child c;
  bar(c);
  bar2(c);
}

If you run it you will get the output 6942 showing that first foo from the child was called and the foo from the base (despite using a child object). Also if you look at the assembly (-S option at compilation) you can see in the method bar and bar2 that the values 42 and 69 are hardcoded proving that the correct foo methods were inlined despite being virtual one.

Ofc this is a very specific use case but still, vir...

Read more

Yeah, there are ways around the virtual overhead, but the benefit of virtuals are that you don't need to know what it is that you're calling a given function on. Most use cases are just that - a collection of objects that are similar, but different enough to warrant different implementations of some of their parts. Another way to mitigate the cost of virtuals is to sort them by type. In that case you have far fewer I and D cache misses as you're usually calling the same functions. Modern HW is smart enough to predict the repeated branches.

Comment

Originally posted by [deleted]

If Im looking to work for Riot someday, how much of this sort of thing should I know, as far as this sort of code optimization and assembly? Im a CS major but honestly it feels like they never teach anything about practical real world software development :/

Depends on what you want to do there. If you want to do performance optimisation, then yeah, you'll should know it or be able to learn it on the job. But most of an engineers work is much higher level than this. Having said that, every engineer should be able to measure the performance of their code and understand how to speed it up if needed.

If your CS major isn't teaching yourself anything useful, you can always teach yourself. There is so much information out there for budding programmers and the best way to learn is to do. Build systems, write code for yourself. The more you code, the better you get.

Comment

Originally posted by velrak

Am i understanding that image right and rendering the HUD takes about the same amount of time as the entire rest of the graphics? That seems crazy

There is a surprising amount of work going on in there: scaling, compositing, updating, animating - lots of triangles, lots of textures. That was not a release build either, so there is some extra work going on in there that doesn't happen in LIVE builds.

I agree though, it is a considerable portion of the frame and while some work has been done since that screen shot to improve that, there is more that we should be able to do to in the future.


13 Mar

Comment

Originally posted by trc1234

It's C++, but I don't think any programmer should limit what jobs they can take by the languages they know. Languages are syntactically different, but the underlying concepts and design patterns are identical so new languages should be pretty easy to pick up (unless they are in a completely different paradigm of course). Especially since the field is changing so fast and many languages are no longer being used (for example VB6 is basically dead except a few crazy excel programmers use it) and many new languages are appearing.

This kind of assembly level optimisation the article was talking about is particularly niche topic which most programmers do not need to be too concerned about (this is probably true at Riot too). And I'm sure at Riot they use many different languages as well as hiring many different programming roles.

I totally agree that a programmer shouldn't limit themselves to a single language - the more you know, the more you know. And yes, Riot does use other languages in different roles.

The assembly is there to illustrate the cause of the slowdowns - you very rarely (if ever) need to drop down the assembly on modern HW, but it does help to understand what is going on under the hood which can in turn help you to write more performant code at the top level.


12 Mar

Comment

(celebratory chime noises)


11 Mar

Comment

Originally posted by Tiefman

Hey thats pretty good thanks. Did you work on the lobby ambience?

I didn’t - /u/Riot_Eno did! He’s a masterful sound designer :)


10 Mar

Comment

Originally posted by VincentGankplank

Actually their sound design might be good the implementation into the game is mediacore.

Interesting video: https://youtu.be/ocbfYBslseI

Hey! You (and that video) definitely are not wrong - this is a very big and active discussion we are having. It’s partly why we are transitioning to the new audio engine (which resulted in some unfortunate bugs we are fixing for next patch- rip nexus explosion). It’s a long term project (there are so many variables) we are continuously thinking about and doing and we hope it’ll make the gameplay have more clarity. (Here’s another statement in parentheses for good measure.)

Comment

;_____; <3 there are also many wonderful Riot teams that don’t get much visibility from players but we really appreciate all the love!!

Comment

Originally posted by brokenblinker

And then you load into an ARAM on a patch and all you can hear are Xayah feathers and you have to turn all the sound down because otherwise you can't hear your friends in Discord over the broken sounds....-

... Sorry D: fix is coming, I swear!

Comment

Originally posted by Tiefman

Maybe this a good thread to post it on as its related to sound...

Does ANYONE know where to find the "song" on the role-select menu when playing draft/rank? When you go to pick your role but before you confirm if you turn up your volume theres a song

Not many people notice it - its kinda like a wooshing wind sound with a bird that makes for great study music

Hey /u/Tiefman! I think you're talking about ambience of the client/party lobby. It's unfortunately not something we can officially release by itself as anything standalone - it's a bit complicated.

Some similar things you can search on Youtube: nature ambience quiet nature audio quiet wind ambience

This seems kind of close: https://www.youtube.com/watch?v=xNN7iTA57jM

It's a bit hard...

Read more
Comment

Originally posted by SyncingShiip

I ran into Riot Soundbear in an ARAM and we added each other. He was telling me how he made the sounds for Project Ashe and I was amazed.

He's the king of mouth wub wubs!


08 Mar

Comment

Originally posted by DCYOUNG888

Why does Kai'sa's voice have an Australian accent even though her father doesn't have that kind of accent?

pls this is keeping me up at night


24 Feb

Comment

Originally posted by SpCommander

Here comes the fine.....for CLG.

Oh god, that one really got me. Laughed pretty hard. Perfect spot in the thread as well. You read 10 comments about fines and think you know what is coming and then get instantly thrown back in time with this one.


23 Feb

Comment

Originally posted by Meckel

Does the collectors ticket bring any boni or swag? Or is it just the physical version of a ticket.

Also I have no idea where the front and where the side is on the website..

The Collector Ticket is a plastic credit card sized ticket – it’s a collectible souvenir with an exclusive design that we provide for the Spring Finals. It comes with a lanyard so you can wear it!

As far as stage is concerned, there is no 'real' front or side. The Pro's will be sitting in the middle and there will be 4 big screens above them on which you can follow the matches.

Comment

Is this the Danish secret? Hotdogs straight from Valhalla?! Gosh, watching this video makes me want to swing a battle axe and hungry at the same time.


20 Feb

Comment

Originally posted by Norwesj

I wanna work at Riot, bro


18 Feb

Comment

Originally posted by Drakarim

Hm and this is the first Year where i havent watched a single Game yet. And i dont know why. Its for sure not because i dont like the Staff, they are all great.

Hm maybe with MSI or Playoffs, but it looks like i need a little more Hype, after so many Players i liked left EU (Zven, Mithy, PoE, Febiven, Ignar, Expect, Trick) and so many Teams i liked got gutted (G2, UoL, MSF).

Realy strange, because i watch LCS since Season 3 and dosent even play League.

Hm maybe someone can name 1-2 realy good Games who could catch me again ?

You should tune in for next week's game between FNC and G2. Now that those team's have had some time to get in shape and are on a 5 and 6 game winning streak respectively, it should make for a captivating match! It will be on next Saturday.