HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

max array size?

07-26-2003, 05:11 AM#1
gurubvin
ne one what max array size is?
07-26-2003, 05:28 AM#2
Scio
8192 is what its listed as, but this came up before and i think its 8192 active indexes, so the actual indexes can go higher but you cant use all the ones below it then or something like that. Just to be safe, 8192 :////
07-26-2003, 06:53 AM#3
gurubvin
thanks mr. scio. this makes my problem even more confusing. it's not a problem so much as it is a large irritation. I created a function thatll separate the map into grids. Each grid is 128x 128.
i created an array to hold every individual grid in a different index. it works great until i reach a certain map size. at this point wc3 seems to refuse to add ne more rect types to the array. even stranger is that the final index value seems to be different for every map. on one it was 2581. on another it was 2024. i'm thinking there may be something wrong with my function.

it's designed to start at the upperleft corner and move left to right, til it hits the end of that row, then shifts down one arrow. as it traverses the points on the map, it'll create a rect with dimensions (x,y) from that point. here's the function:

function CreateGrid takes nothing returns nothing

local real x = GetRectMinX(GetPlayableMapRect()) + 64
local real y = GetRectMaxY(GetPlayableMapRect()) - 64
local integer counter = 1

loop
set Grid[counter] = RectFromCenterSizeBJ( Location(x, y),
128, 128)

if (x > GetRectMaxX(GetPlayableMapRect()) - 128) then
set x = GetRectMinX(GetPlayableMapRect()) + 64
set y = y - 128

else
set x = x + 128
endif

set counter = counter + 1

exitwhen (y <= GetRectMinY(GetPlayableMapRect()))

endloop

endfunction

again thanks mr. scio, and whoever might have some info on this.
07-26-2003, 06:54 AM#4
gurubvin
umm. .. the little viking orcs are supposed to say 128
08-05-2003, 12:38 AM#5
Aiursrage2k
I had a similar situation, basically I have a map with 192 regions, from which I generated 4 teleports (Circle of power unit) for each of the static regions, and each CoP had a region. I was able to dynamically generate 768 units and regions, with no problem. I then tried to change the color of each unit, and the result was only half of the units/regions where generated. Once I removed the color change it worked fine again. I then made a sperate trigger to color each of the units and it worked fine.

The weirdest of all was the floating text, for each teleport I wanted to create a floating text above it, it hold to do 768 floating text, but it would die out after 100.

Conclusion:
I think there is Warcraft3 has some limit on how long a trigger can take before Warcraft3 kills it.
08-05-2003, 04:57 AM#6
Guest
talking about limits, I think I might add that there is also a limit on the amount of periodic time event triggers you have in your map. I've found that making too many results in a permanently disabling of ALL your triggers. it is weird.