Dota allstars loading time!?

SD_Ryoko

Ultra Cool Member
Reaction score
87
Some breakthrough news. True.Rus has edited Guinsoo's original version.

Heres the important part to us:

He reduced the legendary long 3 minute load time to under 20 seconds, leaving the game in tact.

This is invaluable information for us mappers. I've made several posts on other forums, and searched for True.Rus on battlenet, but it seems he is keeping the method a secret, thus burning Guinsoos group, and making his new version most important. He also fixed the latest release as well, and people are playing that one. Rumor has it, they will not acknowledge his version, and anyone who mentions it gets perma-banned.

If I can get my hands on the information, I will definetly post it.

They are both protected, so I cannot compare the two. I don't know HOW True.Rus cracked the map protection either.
 
HERE...after much digging.
It seems 5.84b has 10k strings as well, so I guess that throws the size issue out the window. The only explanation left is the amount of fragmentation of the strings. For those who are having doubts, I can assure you that the strings file is the root of the load time. Without the strings, 6.01 can be loaded in 30 seconds for most people with 5 minute load time, 10 minutes = a minute max.

QUOTE
This is all pretty neat how you were able to find the (probable) cause of the problems, but how exactly did these files become fragmented in the first place?

It is actually quite easy to fragment the strings.
Make item A
write some fields of item A's description
Save
Make item B
write in all the fields of item B.
save
Go back to item A and finish writing description.
Save

Voila, string file fragmented. Now imagine this scenario with thousands of items/abilities/heroes, constantly being updated/changed/created over 50 versions.

Each ability/unit/item is assigned a unique 4 character 'code.' What WE does is separates the all the non triggered custom abilites into 2 files. The mechanic part (damage/duration/effect, etc) into a w3a file and the string base part into a wts file(which includes ALL string base data of the map).

My theory is that when it loads the map, the game engine tries to piece each description back into the ability. It linearly searches the entire string file for that four character 'code' and pieces it into each field of the respective ability/item. Note that despite fragmentation, the string files still follows the order of each abilities's field in the editor, this is probably how it is indexed in addition to the 4 character code.

QUOTE
even just loading the little picture when you enter a game (before the 5..4..3..2..1.. thing) takes a lot of time. Imagine with all those fragmented texts

That again is due to the string file. The map description is the 1863rd string, even though it should have been within the first 5 strings. By deleteing the string file, loading that lil picture takes no time at all. Basically the map linearly searchs the 4 character string code in the entire file, one string after another until it finds a match. So each time it initally loads the load screen picture, it goes through 1863 strings, same with each ability's description, though it can go up to 10k for Soul Assumption (since one of the descriptions for soul assumption is the 9999th string).

I've PM Neichus the the altered map and the string file, so hopefully the mapmakers and Guinsoo can decide what to do with this. One of the ways is to:

1. Delete the wts file
2. Open up the map editor
3. Copy and paste(not import) all the decriptions back in using the wts file
4. Save

This should generate a new wts file in the proper order.
One more note is there are currently descriptions for creeps, the descriptions probably isnt neccessary for these units, leave the name and leave the other fields blank. More strings just means more fields to search through.

Absolutely.
I have a 6.0 map with 0 description that loads in 20/30 seconds flat. Like I said, I'm 50/50 on whether the load time is due to the string file's sheer size or the fragmentation of the descriptions. I'm leaning toward the fragmentation aspect after looking at the file.

Right now I'm not sure whether it's the quanity of the strings that is slowing down the loading, or the fragmentation of the string file. I skimmed through string file, and the sequence of some of the strings is definitiely out of order, this is probably another huge aspect that contribute to the inefficiency that Guinsoo was talking about.
 
I beleive this to be true in my map and probobly Minds; I always go back and edit descriptions everywhere.

But I hear, the guy wrote a program to do it automatically, rather than PASTING in all your descriptions again like suggested. Hmmm. iunno!

[edit]

I posted to Vexorian, the idea is being consisdered for the Warcraft III Optomizer. Our mapping futures may be looking brighter.
 
Wow, I noticed that too, good find! Every game I've hosted of DotA has always had a lagger and the first time I played 5.84c, there weren't any laggers! Thanks True.Rus!
 
*In Command and Conquer Renegade*

Annika99(me): Dude Mig1USA you suck get the hell out of the game.
Mig1USA: Dude I'm the game Moderator...
Anikka99: Oh my god dude I'm glad your on our side you pawn!

Annika99 follows Miggey wherever he goes, being his backup because he's so great.
 
Heh heh.

I just got out of this game, I was Routund'Jere, and had level 3 ult, and FIVE time upgraded dagon.

So 800 damage, plus 90% ultimate. I can kill almost anyone!!!!

So we have the treant on our side? He would make me invisible for me, and I'd sit and wait till someone came a long, and POWWW!

Other team would type, what the hell? Necro invis again?

Then we find a new spot, hide invis, and do it over again. I can't stop laughing.

So we winning, base getin messed, I beg, please do not end the game! They say, OK! So I sit for like 15 minutes, invis, zapping the life out of people. Bwa ha ha.
 
Hmmm, i was wondering how True. Rus managed to actually reduce the loading time. Sounds complicated. He fixed all the patch glitches too, but why are there like 3 version of c? In one of the versions i played broodmothers webs didn't make her invisible (...sigh...). Anyway, I love DotA, just finished a game where i killed a 6k hp pudge because i had permastun Jaceless Void, 2 cranium bashers 3 hyperstones :D :D :D
 
Widgetizer is ALOT better than True's method, and Pitzer did a wonderful job at that.

Good job Pitzer, your methods were quite clever. :)
 
I used it in my destiny rpg 2.18, same with vex's optimizer, im about to see how much of a difference it made in loading time.

Good job, it decreased it about 25-30% less loading time. :D
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Probably inflates their numbers so they look better to advertisers.
  • The Helper The Helper:
    Yeah google does not filter those bots. I remember when Apex was doing Google ads I saw the same IPs in there as I was seeing here - google is totally tracking all those bots as traffic and most google traffic, at least ours, was all bots
  • The Helper The Helper:
    oh wow, i bet i can post x links now and do the webp pics now giggity
  • The Helper The Helper:
    ahh anubis blocks anyone that has javascript turned off
  • The Helper The Helper:
    Robot: HTTP client library - i love the new robot :)
  • The Helper The Helper:
    New Science News Forum and it starts out with 420 threads :)
  • The Helper The Helper:
    Technical Support forum name changed To Technology News, there is now a Tech, sci/tech and science forums now :)
  • The Helper The Helper:
    Happy Saturday! Hope everyone has a fantastic weekend!
  • Ghan Ghan:
    We are now on Ubuntu 24.04. Had some issues with the style after the OS/PHP upgrade but now resolved.
    +1
  • Ghan Ghan:
    PHP 8.3 now live
    +1
  • The Helper The Helper:
    Weekend went by too fast. Next weekend I am going to try to do a nature thing - buddy of mine lives by the Colorado river and has some kayaks and invited me to do some kayaking from a place he knows to get on the river.
  • Ghan Ghan:
    That sounds like an adventure.
  • The Helper The Helper:
    400 users all online all looking at latest content
  • The Helper The Helper:
    I wonder how all these bots that sit on the lastest content page get passed anubis or maybe they did not but they are just registering on whos online
  • The Helper The Helper:
    showing up on whos online not registration
  • Ghan Ghan:
    The first gate is stopping all the bots that don't execute javascript.
  • Ghan Ghan:
    That's the main thing with Anubis - no Javascript, no site. Typically you can still get the site to load without Javascript.
  • The Helper The Helper:
    I remember the whole javascript thing, question - how many real people disable that?
  • The Helper The Helper:
    Hell I guess I could go back on the stats to know that - we probably capture that and we know the before and after
  • Ghan Ghan:
    Real users can't really disable Javascript anymore these days.
  • Ghan Ghan:
    The internet is broken without it.
  • Ghan Ghan:
    Bot readable, not human usable.
  • The Helper The Helper:
    got it
  • The Helper The Helper:
    Happy Thursday!
  • The Helper The Helper:
    Check out the new Featured Content feature we apparently got with the forum software upgrade! https://www.thehelper.net/featured/

The Helper Discord

Members online

Affiliates

Hive Workshop NUON Dome World Editor Tutorials
Back
Top