• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 10:18
CEST 16:18
KST 23:18
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Serral wins HomeStory Cup 2914Serral wins Maestros of the Game 243ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12
Community News
Balance hotfix patch 5.0.16b (July 16)20Reynor: GSL Loss Wasn't About Preparation Format16[IPSL] Spring 2026 Grand Finals - This Weekend!5Weekly Cups (July 6 - 12): Protoss strike back12BSL Season 22 Full Overview & Conclusion8
StarCraft 2
General
Balance hotfix patch 5.0.16b (July 16) Reynor: GSL Loss Wasn't About Preparation Format Is the larve respawn broken? 5.0.16 patch for SC2 goes live (8 worker start) BGE Stara Zagora to be held again in June 2025
Tourneys
Master Swan Open (Global Bronze-Master 2) WardiTV Summer Cup 2026 GSL CK #5 Race War RSL Revival: Season 6 - Qualifiers and Main Event HomeStory Cup 29
Strategy
[G] Having the right mentality to improve
Custom Maps
New Map Maker - Looking for Advice - Love or Hate Work In Progress Melee Maps [D]RTS in all its shapes and glory <3
External Content
The PondCast: SC2 News & Results Mutation # 534 Burning Evacuation Mutation # 533 Die Together Mutation # 532 Nuclear Family
Brood War
General
Etiquete rules in Asl? Recommended FPV games (post-KeSPA) Pros Debate: Zerg Unfairly Nerfed? (ASL S22 map) BGH Auto Balance -> http://bghmmr.eu/ screpdb: new Starcraft reporting tool
Tourneys
Escore Tournament - Season 3 Small VOD Thread 2.0 [IPSL] Spring 2026 Grand Finals - This Weekend! [Megathread] Daily Proleagues
Strategy
Fighting Spirit mining rates Simple Questions, Simple Answers Creating a full chart of Zerg builds Relatively freeroll strategies
Other Games
General Games
Path of Exile General RTS Discussion Thread Nintendo Switch Thread Beyond All Reason Stormgate/Frost Giant Megathread
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank NeO.D_StephenKing vs This Guy From 1 Million Dance TL Mafia Community Thread Vanilla Mini Mafia
Community
General
US Politics Mega-thread The Games Industry And ATVI Russo-Ukrainian War Thread UK Politics Mega-thread YouTube Thread
Fan Clubs
The IdrA Fan Club The HerO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books Series you have seen recently...
Sports
2024 - 2026 Football Thread MLB/Baseball 2023 McBoner: A hockey love story Tennis[sport] Formula 1 Discussion
World Cup 2022
Tech Support
Simple Questions Simple Answers FPS when play League Of Legend on laptop How to clean a TTe Thermaltake keyboard?
TL Community
Northern Ireland Global Starcraft The Automated Ban List
Blogs
Poker (part 2)
Nebuchad
The Experiences We Want and …
TrAiDoS
An Exploration of th…
waywardstrategy
Gauntlet SC2: A Retrospectiv…
Ctone23
ramps on octagon
StaticNine
Funny Nicknames
LUCKY_NOOB
Evil Gacha Games and the…
ffswowsucks
Customize Sidebar...

Website Feedback

Closed Threads



Active: 9350 users

The Big Programming Thread - Page 410

Forum Index > General Forum
Post a Reply
Prev 1 408 409 410 411 412 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
ThatGuy
Profile Blog Joined April 2008
Canada695 Posts
December 19 2013 03:41 GMT
#8181

// recursive computation of sum of ages of all players in the list
int sumAge(PlayerList list)
{
if(firstPlayer.getNext() == null)
{
return firstPlayer.getAge();
}
else
{
return head().getAge() + sumAge(tail());
}
}


plus


PlayerList tail()
{
PlayerList list = new PlayerList(head().getNext());
if(list.head() == null)
{
final PlayerList empty = new PlayerList();
return empty;
}
return list;
}


is absolutely gnarly logic. sumAge() always relies on the Player's getNext() to be null as a base case. However, in tail(), you check the same scenario, and return a new PlayerList with a null firstPlayer inside of it. So when you do the recursive call on sumAge(), the condition is now checking if a null object's getNext() is null...I don't really understand why this is even possible, lol. You really should be hitting NullReferenceExceptions, but maybe the StackOverflowError is resulting from this as a compensatory side effect somewhere?

It's dangerous to assume that objects being passed in are always going to be valid. You might prevent a lot of headaches if you check that firstPlayer itself is null instead.

On a side note, in tail(), why do you create another new list if the head is null? You're basically returning the exact same object.
ThatGuy
Profile Blog Joined April 2008
Canada695 Posts
Last Edited: 2013-12-19 03:43:42
December 19 2013 03:43 GMT
#8182
Oh and for future reference, one quick look at the call stack should answer your future stack overflow questions rather quickly .
Vilanoil
Profile Blog Joined July 2010
Germany47 Posts
December 19 2013 07:48 GMT
#8183
Okay i just took a look at the stack trace ( i think ?^^ ) it's like this :

+ Show Spoiler +


Exception in thread "main" java.lang.StackOverflowError
at PlayerList.<init>(PlayerList.java:12)
at PlayerList.tail(PlayerList.java:36)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)



Could the problem be that when i call the constructor with PlayerList( head().getNext()) and it is null that it causes problems?
I'm bit confused i have to try again later when i m back at home..
adwodon
Profile Blog Joined September 2010
United Kingdom592 Posts
December 19 2013 07:58 GMT
#8184
Hi guys, quick semi-programming question.

I've been set a task to document a section of our codebase, a server which displays IP Camera feeds and its interactions with a specific DLL which drives the station which provides the feeds.

I never did CS at university so I'm a little unsure about how to approach this, I submitted a first draft and got some useful feedback but for the final document I'd like to try and provide a more visual explanation, are there any tools for doing this? I know that Visual Studio Ultimate has tools for this but I'm only on professional, bearing in mind this is all written in C for Windows are there are good visualisation tools or should I just crack open paint / something to just make some diagrams?

Any advice or examples would be hugely appreciated thanks!
Sikian
Profile Blog Joined September 2011
Spain177 Posts
December 19 2013 08:12 GMT
#8185
@adwidon, I'm not sure if I really picked up on what you are looking for, but this might help: http://diagramo.com/ (or maybe just open-office draw!)

Hope it helps
Helping Starbow :: a.k.a. SoaH
Cyx.
Profile Joined November 2010
Canada806 Posts
December 19 2013 09:03 GMT
#8186
On December 19 2013 16:48 Vilanoil wrote:
Okay i just took a look at the stack trace ( i think ?^^ ) it's like this :

+ Show Spoiler +


Exception in thread "main" java.lang.StackOverflowError
at PlayerList.<init>(PlayerList.java:12)
at PlayerList.tail(PlayerList.java:36)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)



Could the problem be that when i call the constructor with PlayerList( head().getNext()) and it is null that it causes problems?
I'm bit confused i have to try again later when i m back at home..


Well, since this is pretty obviously (I think?) a homework assignment I'll stay in the spirit of not giving you the answer straight up, but here's a hint... think about which of your two sumAge functions gets called when you call sumAge(tail()). Especially important, make sure you're thinking about the implicit this - both in the definition and in the call ^^

also, I'm not a good Java programmer by any means so this might be more obvious if you've used the language a bit but why in all glorious hell have you defined two versions of all your methods?
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2013-12-19 15:29:52
December 19 2013 15:24 GMT
#8187
I know it's a slight detail, but I'd like to read some opinions. Let's say you need to count lines but you need to do something specific only for the 1st line, is it better to:


boolean firstLine = true;

while (some condition) {
if (firstLine) {
// do something
firstLine = false;
}
else {
// deal with next lines
}
}


or is it better to:


while (some condition) {
if (numberOfLines == 1) {
// do something
}
else {
// deal with next lines
}
}


As I said, I know it's a minor detail but I'd rather do it properly. I know people say "don't use magic numbers", hence my uncertainty here.
njt7
Profile Joined August 2012
Sweden769 Posts
Last Edited: 2013-12-19 15:46:39
December 19 2013 15:46 GMT
#8188
When talking about minor details I cant answer your question but I can add that I would rather see you name "numberOfLines" to something more describing such as "lineNumber". I know you might not have english as your first language but numberOfLines would to me be seen as the totalNumberOfLines. Maybe that is what you want I dunno it is hard to answer questions in a vacuum.

To your question again, if you are using your variable "numberOfLines" for something else as well I think the second option is best as you do not need to add another variable to keep track of.
"All the casters who flamed me ever for anything."
Yoshi-
Profile Joined October 2008
Germany10227 Posts
December 19 2013 15:52 GMT
#8189
Why even do that in the while loop?
Just do it before and then start the while loop at the second line
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
December 19 2013 16:02 GMT
#8190
On December 20 2013 00:46 njt7 wrote:
When talking about minor details I cant answer your question but I can add that I would rather see you name "numberOfLines" to something more describing such as "lineNumber". I know you might not have english as your first language but numberOfLines would to me be seen as the totalNumberOfLines. Maybe that is what you want I dunno it is hard to answer questions in a vacuum.

To your question again, if you are using your variable "numberOfLines" for something else as well I think the second option is best as you do not need to add another variable to keep track of.


Thanks, you have a point about naming.

On December 20 2013 00:52 Yoshi- wrote:
Why even do that in the while loop?
Just do it before and then start the while loop at the second line


Actually, yes. It would make more sense if I do it your way. Thanks.
Vilanoil
Profile Blog Joined July 2010
Germany47 Posts
December 19 2013 22:49 GMT
#8191
On December 19 2013 18:03 Cyx. wrote:
Show nested quote +
On December 19 2013 16:48 Vilanoil wrote:
Okay i just took a look at the stack trace ( i think ?^^ ) it's like this :

+ Show Spoiler +


Exception in thread "main" java.lang.StackOverflowError
at PlayerList.<init>(PlayerList.java:12)
at PlayerList.tail(PlayerList.java:36)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)
at PlayerList.sumAge(PlayerList.java:115)



Could the problem be that when i call the constructor with PlayerList( head().getNext()) and it is null that it causes problems?
I'm bit confused i have to try again later when i m back at home..


Well, since this is pretty obviously (I think?) a homework assignment I'll stay in the spirit of not giving you the answer straight up, but here's a hint... think about which of your two sumAge functions gets called when you call sumAge(tail()). Especially important, make sure you're thinking about the implicit this - both in the definition and in the call ^^

also, I'm not a good Java programmer by any means so this might be more obvious if you've used the language a bit but why in all glorious hell have you defined two versions of all your methods?


Yes your right, i had to finish that exercise for my lab, but i stated that in the my first post
I really have to thank guys for your reply's, i just started it again from scratch and it works now. I realized that i made some mistakes at the call of tail().
I always called it with out an object ! so basically the method tried to create a tail and had nothing to work with.


why in all glorious hell have you defined two versions of all your methods?

For example my project:

int sumAge(PlayerList list){
//stuff
}

int sumAge(){
return sumAge(this);
}
// is called in main with
players.sumAge();

I'm not sure but it seems like that is a recursive call of sumAge() and that (this) is automatically referring to the list players.
Would be awesome if someone could explain this.
lannisport
Profile Joined February 2012
878 Posts
December 19 2013 23:48 GMT
#8192
So I've been learning python (My main book is "How to think like a Computer Scientist"). Eventually though I'd like to create a financial management app on Django. Can anyone recommend me a book or an online course that focuses on the web programming of things? Something that deals with databases, API integrations, Django stuff in particular?
Shikada
Profile Joined May 2012
Serbia976 Posts
December 20 2013 00:10 GMT
#8193
On December 20 2013 08:48 lannisport wrote:
So I've been learning python (My main book is "How to think like a Computer Scientist"). Eventually though I'd like to create a financial management app on Django. Can anyone recommend me a book or an online course that focuses on the web programming of things? Something that deals with databases, API integrations, Django stuff in particular?


Django is quite popular, you should be able to find beginner tutorials easily on the net. After that gets you started this book is very highly regarded, and is up to date too:

http://www.amazon.com/Two-Scoops-Django-Best-Practices/dp/1481879707/ref=sr_1_1?s=books&ie=UTF8&qid=1387497972&sr=1-1&keywords=django

Happy hacking
Maero
Profile Joined December 2007
349 Posts
December 20 2013 00:26 GMT
#8194
On December 20 2013 07:49 Vilanoil wrote:

int sumAge(PlayerList list){
//stuff
}

int sumAge(){
return sumAge(this);
}
// is called in main with
players.sumAge();

I'm not sure but it seems like that is a recursive call of sumAge() and that (this) is automatically referring to the list players.
Would be awesome if someone could explain this.


All this is really doing is giving you a shorthand to sum the ages of the PlayerList this method is being called from. Ex.

PlayerList a;
PlayerList b; // pretend these have stuff in it

a.sumAge(b); // performs the operation on PlayerList b (I assume summing up the ages...)
a.sumAge(); // calls the non-parameterized one, then falls back to the parameterized method

// Basically...

a.sumAge() == a.sumAge(a);


Let me know if that doesn't make sense! It seems like a strange implementation, but that is the literal way that it is working.
Cyx.
Profile Joined November 2010
Canada806 Posts
December 20 2013 01:11 GMT
#8195
On December 20 2013 09:26 Maero wrote:
Show nested quote +
On December 20 2013 07:49 Vilanoil wrote:

int sumAge(PlayerList list){
//stuff
}

int sumAge(){
return sumAge(this);
}
// is called in main with
players.sumAge();

I'm not sure but it seems like that is a recursive call of sumAge() and that (this) is automatically referring to the list players.
Would be awesome if someone could explain this.


All this is really doing is giving you a shorthand to sum the ages of the PlayerList this method is being called from. Ex.

PlayerList a;
PlayerList b; // pretend these have stuff in it

a.sumAge(b); // performs the operation on PlayerList b (I assume summing up the ages...)
a.sumAge(); // calls the non-parameterized one, then falls back to the parameterized method

// Basically...

a.sumAge() == a.sumAge(a);


Let me know if that doesn't make sense! It seems like a strange implementation, but that is the literal way that it is working.


But I guess the question is... good lord, why, please why something so awfully confusing? players.sumAge() will call sumAge(this)... calling players.sumAge(this) within that function just means you end up calling sumAge(this, this) basically. It's literally just adding an extra definition and extra confusion to something that should be one method. I see absolutely zero sense in doing it this way instead of just writing sumAge() to do the actual summing of ages, and then not bother with the definition that has an extra parameter (which never even gets used).
mcc
Profile Joined October 2010
Czech Republic4646 Posts
December 20 2013 01:14 GMT
#8196
On December 20 2013 00:24 darkness wrote:
I know it's a slight detail, but I'd like to read some opinions. Let's say you need to count lines but you need to do something specific only for the 1st line, is it better to:


boolean firstLine = true;

while (some condition) {
if (firstLine) {
// do something
firstLine = false;
}
else {
// deal with next lines
}
}


or is it better to:


while (some condition) {
if (numberOfLines == 1) {
// do something
}
else {
// deal with next lines
}
}


As I said, I know it's a minor detail but I'd rather do it properly. I know people say "don't use magic numbers", hence my uncertainty here.

As some pointed out, it is better to move the code outside of the loop if possible. But sometimes it is more trouble than it is worth and then your question is still valid. In those cases I would say if you already have some iteration count, just use it, otherwise use the bool as it is much clearer what the purpose of the condition is.

Possible scenario where moving code outside of the loop is maybe not the best idea :


boolean firstLine = true;

while (some condition) {
if (firstLine) {
// do something
firstLine = false;
}

// do something else for all lines including first
}


This often pops up when manipulating string and similar stuff. In this case moving the code for first line out of the loop necessitates duplication of code and in general I would say you should not do it.
lannisport
Profile Joined February 2012
878 Posts
December 20 2013 01:59 GMT
#8197
On December 20 2013 09:10 Shikada wrote:
Show nested quote +
On December 20 2013 08:48 lannisport wrote:
So I've been learning python (My main book is "How to think like a Computer Scientist"). Eventually though I'd like to create a financial management app on Django. Can anyone recommend me a book or an online course that focuses on the web programming of things? Something that deals with databases, API integrations, Django stuff in particular?


Django is quite popular, you should be able to find beginner tutorials easily on the net. After that gets you started this book is very highly regarded, and is up to date too:

http://www.amazon.com/Two-Scoops-Django-Best-Practices/dp/1481879707/ref=sr_1_1?s=books&ie=UTF8&qid=1387497972&sr=1-1&keywords=django

Happy hacking


Wow that's exactly what I was looking for thanks! There's even a chapter specifically on REST APIs.
Maero
Profile Joined December 2007
349 Posts
Last Edited: 2013-12-20 02:04:40
December 20 2013 02:02 GMT
#8198
On December 20 2013 10:11 Cyx. wrote:
Show nested quote +
On December 20 2013 09:26 Maero wrote:
On December 20 2013 07:49 Vilanoil wrote:

int sumAge(PlayerList list){
//stuff
}

int sumAge(){
return sumAge(this);
}
// is called in main with
players.sumAge();

I'm not sure but it seems like that is a recursive call of sumAge() and that (this) is automatically referring to the list players.
Would be awesome if someone could explain this.


All this is really doing is giving you a shorthand to sum the ages of the PlayerList this method is being called from. Ex.

PlayerList a;
PlayerList b; // pretend these have stuff in it

a.sumAge(b); // performs the operation on PlayerList b (I assume summing up the ages...)
a.sumAge(); // calls the non-parameterized one, then falls back to the parameterized method

// Basically...

a.sumAge() == a.sumAge(a);


Let me know if that doesn't make sense! It seems like a strange implementation, but that is the literal way that it is working.


But I guess the question is... good lord, why, please why something so awfully confusing? players.sumAge() will call sumAge(this)... calling players.sumAge(this) within that function just means you end up calling sumAge(this, this) basically. It's literally just adding an extra definition and extra confusion to something that should be one method. I see absolutely zero sense in doing it this way instead of just writing sumAge() to do the actual summing of ages, and then not bother with the definition that has an extra parameter (which never even gets used).


We completely agree! But he asked for an explanation of how it was working, so that's what I provided
The note at the end about it being a strange implementation was alluding to your point - there's no real good reason to put it together in that way and either one or the other would work fine (depending on how the method interacts with other PlayerList age sums).
Cyx.
Profile Joined November 2010
Canada806 Posts
December 20 2013 02:20 GMT
#8199
On December 20 2013 11:02 Maero wrote:
Show nested quote +
On December 20 2013 10:11 Cyx. wrote:
On December 20 2013 09:26 Maero wrote:
On December 20 2013 07:49 Vilanoil wrote:

int sumAge(PlayerList list){
//stuff
}

int sumAge(){
return sumAge(this);
}
// is called in main with
players.sumAge();

I'm not sure but it seems like that is a recursive call of sumAge() and that (this) is automatically referring to the list players.
Would be awesome if someone could explain this.


All this is really doing is giving you a shorthand to sum the ages of the PlayerList this method is being called from. Ex.

PlayerList a;
PlayerList b; // pretend these have stuff in it

a.sumAge(b); // performs the operation on PlayerList b (I assume summing up the ages...)
a.sumAge(); // calls the non-parameterized one, then falls back to the parameterized method

// Basically...

a.sumAge() == a.sumAge(a);


Let me know if that doesn't make sense! It seems like a strange implementation, but that is the literal way that it is working.


But I guess the question is... good lord, why, please why something so awfully confusing? players.sumAge() will call sumAge(this)... calling players.sumAge(this) within that function just means you end up calling sumAge(this, this) basically. It's literally just adding an extra definition and extra confusion to something that should be one method. I see absolutely zero sense in doing it this way instead of just writing sumAge() to do the actual summing of ages, and then not bother with the definition that has an extra parameter (which never even gets used).


We completely agree! But he asked for an explanation of how it was working, so that's what I provided
The note at the end about it being a strange implementation was alluding to your point - there's no real good reason to put it together in that way and either one or the other would work fine (depending on how the method interacts with other PlayerList age sums).


okie, cool =) I guess I just wasn't sure if it was like... a Java thing or something (I mostly use C++) or if it was as totally weird as it seemed. @Vilanoil: were you given the code like that (for your class) or did you write the whole PlayerList class yourself?
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
December 20 2013 03:14 GMT
#8200
Finished my term at Xtreme/Pivotal Labs! Great programming company in Toronto, visit them if you want a really good internship or a good full-time opportunity.
There is no one like you in the universe.
Prev 1 408 409 410 411 412 1032 Next
Please log in or register to reply.
Live Events Refresh
Epic.LAN
13:00
Epic.LAN 48 Group Stage
Liquipedia
WardiTV Qualifier
12:00
Summer Cup, Qualifier #2
WardiTV832
Liquipedia
CrankTV Team League
11:00
Crank Gathers S4: Group Stage
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RushiSC 37
StarCraft: Brood War
Calm 7575
Rain 2454
GuemChi 2163
Sea 1948
Jaedong 1222
EffOrt 654
Hyuk 583
firebathero 359
Mini 334
BeSt 327
[ Show more ]
Snow 304
Stork 215
Rush 195
Larva 137
Zeus 128
ZerO 122
ggaemo 114
Hyun 95
Sea.KH 67
Dewaltoss 62
hero 60
Free 57
soO 48
Sharp 40
sorry 39
scan(afreeca) 37
JYJ 34
Terrorterran 28
ToSsGirL 23
Sexy 21
Bale 20
NaDa 19
Hm[arnc] 17
Barracks 17
IntoTheRainbow 13
Sacsri 13
Rock 13
Mong 12
Noble 11
ajuk12(nOOB) 11
Icarus 10
yabsab 10
Purpose 8
Dota 2
Gorgc7588
syndereN246
League of Legends
Doublelift2559
Counter-Strike
byalli821
allub121
kRYSTAL_2
Other Games
singsing1809
hiko776
B2W.Neo713
Lowko424
crisheroes330
DeMusliM256
XaKoH 196
ToD138
Liquid`VortiX131
OGKoka 128
djWHEAT100
QueenE51
Trikslyr23
Rex16
ZerO(Twitch)12
Organizations
Other Games
gamesdonequick2378
BasetradeTV225
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 14 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• escodisco3919
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 643
League of Legends
• Jankos2760
• TFBlade776
Upcoming Events
Big Brain Bouts
1h 42m
SHIN vs Elazer
Percival vs Nicoract
Reynor vs Lambo
Replay Cast
9h 42m
RSL Revival
18h 42m
Clem vs Lambo
Scarlett vs Cure
CranKy Ducklings
19h 42m
Epic.LAN
22h 42m
IPSL
1d 1h
Dragon vs Hawk
RSL Revival
1d 18h
Classic vs Trap
herO vs SHIN
Sparkling Tuna Cup
1d 19h
OSC
1d 22h
IPSL
2 days
Bonyth vs Ret
[ Show More ]
WardiTV Weekly
2 days
Monday Night Weeklies
3 days
PiGosaur Cup
4 days
The PondCast
4 days
Replay Cast
5 days
CrankTV Team League
5 days
Replay Cast
6 days
CrankTV Team League
6 days
Liquipedia Results

Completed

Proleague 2026-07-13
HSC XXIX
Eternal Conflict S2 E2

Ongoing

IPSL Spring 2026
Acropolis #4
CSL 2026 Summer (S21)
KCM Race Survival 2026 Season 3
Escore Tournament S3: W3
RSL Revival: Season 6
CranK Gathers Season 4: BW vs SC2 Team League
SCTL 2026 Spring
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026

Upcoming

ASL S22 SEASON OPEN Day 1
Escore Tournament S3: W4
ASL S22 SEASON OPEN Day 2
Escore Tournament S3: W5
CSLAN 4
Blizzard Classic Cup 2026
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
Light Tournament 2026
Eternal Conflict S2 Finale
Eternal Conflict S2 E3
Logitech G Connect 2026
StarSeries Fall 2026
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Disclosure: This page contains affiliate marketing links that support TLnet.

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.