| 11-25-2003, 09:54 PM | #1 |
Greetings. I've got a bit of a problem. A map that I've just started working on (an as-yet unnamed AoS) has 36 heros, each of which can reach level 43 and has four 10-level spells and one 4-level spell, as well as sometimes one unit spell. With this data and a bare handful of triggers, and with only 24 units placed on the map, the map takes roughly 1:58 to load. That's right, one minute and fifty-eight seconds. It feels like the map stalls about an inch and a half through the loading bar. As a test, I reset the ability data back to defaults to see how long the map would take to load, and it was ready in 40 seconds. Also, I reduced the max hero level from 43 back to 10, and it did not reduce the loading time any further. 2 minutes is a long time for a map to take to load, even on my Pentium III 667-MHz with a Radeon All-in-Wonder. What the heck is causing this raucous amount of lag? Is it the quantity of altered spells? Is it the higher-than-usual level of the abilities? If you've got any thoughts, please let me know. |
| 11-25-2003, 10:34 PM | #2 |
Your only alternative besides cutting back is to recode some of the abilities by hand using JASS, so that the damage is calculated on the fly (do something like spell level * damage constant) rather than loaded out of giant tables. I did this for lightning shield and bladestorm. |
| 11-25-2003, 10:49 PM | #3 |
Is anything particularly obvious potentially bloating the map, like thousands of doodads or large skins/sound files? For a time, I had .wav files and an .mp3 in my RPG map; getting rid of those alone shortened the load time to about 20 seconds. I can't imagine recoding things into JASS would make that much of the difference; aren't triggers compiled by the editor into JASS as part of saving? |
| 11-26-2003, 04:34 AM | #4 |
I'm sorry, I should have been more particular. There are no doodads placed in the map (there will be, but I'm making and balancing the units first, so I don't have to worry about the map loading in WE). There are about 30 .blp's ranging in size from 2k to 10k each, and a couple in the range of 50k. There are 2 models, totalling less than 100k. The map itself is 895k. Since resetting the abilities to their defaults improved the map loading time so considerably, I guess I have to consider shrinking the number of races and the levels of each spell. Do you know if altering just a couple aspects of a spell requires less extra loading time? Or, once a spell is altered, is all the information for that spell stored separately? |
| 11-26-2003, 03:27 PM | #5 |
That explains the long loading time in VexHA too, I have a lot of abilities, that is a real problem |
| 11-26-2003, 03:57 PM | #6 |
I've got a ton of customized units and abilities in my RPG-to-be, but no hero abilities past level 3 - could you possibly replace each level 4 skill with the next highest tier of skill? I.e.: Hero buys level 4 Bash (1) Remove Bash (1) Add Bash (2) Spend 1 point in Bash (2) That way, they're getting the equivalent skill, but it's replaced by the next in line skill, where the starting value of Bash (2) = the reported value of level 4 Bash (1). To test this, reduce the # of hero skill levels to 3, and see if that doesn't ease up load times any. |
| 11-26-2003, 04:17 PM | #7 |
biflspud, that's a pretty jive (although trigger-happy) idea, but I was under the impression that "Add"ing a hero skill to any unit only gave it one point in that skill, instead of adding the learnable multi-level skill to their menu. But, oh, man, that'd be trigger heavy. |
| 11-27-2003, 02:32 PM | #8 |
Well, if you have loads (i mean loads) of triggers, it loads very. VERY. slowly... |
| 11-27-2003, 04:16 PM | #9 | |
Quote:
That's ok, though; you want to get rid of the 3 points they had in Bash (1) and just give 'em a point in Bash (2) - Bash (2) Level 1 should = the stats advertised by Bash (1) Level 4. So the player should experience no real "loss." And yeah, it's trigger heavy. I'm just proposing an alternative. Try this test out: Reduce the levels of your hero skills down to 3, and see if that doesn't ease the load lag. If it does, then you'll probably have to make a change like I proposed. Triggers and load lag: Oy. No. Triggers only cause lag when they run; the amount of time they add to the map is negligible. Map init triggers are the exception, BECAUSE THEY RUN when the map is being created. If you change the Event from Map Initialization to Elapsed Time is 1 Second, the load lag will decrease sharply, and the net difference is zip. Have you tried that, Panto? Any Init triggers that could be changed? |
| 11-27-2003, 06:24 PM | #10 |
in my td i got 25 heros that goes to lvl 10 all custom spells, 110 towers, and like 90% of them got spells to... and they are all custom made to with triggers.. my map takes about 20 sec to load..... i just got 1 question.. how many map initializations do u have ??? cause that could be the problem to :/ |
| 11-28-2003, 03:47 AM | #11 |
What size is your map? (not memory size, landscape size) (And on an unrelated note, could I get a reply on the how to rally point spawns, Panto?) |
| 12-04-2003, 05:28 PM | #12 |
Sorry, zotax, I forgot to send you the triggers. I was planning on perfecting them more by experimenting with "Patrol" instead of "Attack Move", but I haven't gotten around to it lately. I'll PM you the triggers soon. Maybe I'll put 'em up in the Trigger Repository. |
| 12-04-2003, 08:16 PM | #13 |
I was also going to suggest replacing each ability with another single level ability like he had given as an example. I'm interested to know if that would work or not. Logically it seems like it would take more, don't you think? |
| 12-04-2003, 09:03 PM | #14 |
i had the same problem... my map took too long loading and most time crash my game :( but i figured out wtf was going on... the triggers dude.. i had like 50 or 60 triggers with the same event. but thats not the problem. i GUESS its about "general events" if u make too many general events, the game creates too many variables and takes too long to calculate em all.... like 60 trigger with "a unit dies". "a unit enters in a playable map area" " a unit dies" just pick all the actions with the same event and make 1 trigger.. not 50 triggers with the same event and a few action... this fix the problem?? |
| 12-04-2003, 09:34 PM | #15 | |
Quote:
I have over 150 triggers in Battledome and load time is pretty good. So how many is "loads?" Rewriting skills in JASS takes less load time than having a real level 100 skill because rather than saving and loading a giant table of numbers, it computes the damage when it needs to. It is true that adding a hero ability makes a unit ability with one point in it -- this can be worked around by then making an ability bonus upgrade that increases the level of the hero ability (this is what Battledome does). |
