Sửa giúp em cái leak

Hôm qua em thử rồi map đấy thì thả ra mấy trăm con thậm chí mấy nghìn con dumy vẫn ko sao đâu
nhưng em muốn khi nó nổ hết thì phải hết lag kia! Đằng này vẫn lag --> leak ở đâu rồi
p/s:cuối cùng mod cũng xuất hiện:)

Lag chưa hẳn là bị Leak. Lag có thể do tạo quá nhiều Dummys cùng lúc. Xem đại spell Whirpool ở topic Tiêu chuẩn dự thi kia kìa, Remove hết Leak rồi nhưng vẫn bị lag vì tạo quá nhiều Dummys.
 
Nhưng khi Dumy chết hết ( đã remove và hide) thì nó phải hết lag chứ nhưng em chờ mấy phút sau vẫn chưa hết lag
 
Vấn đề là có ai bị lag hem? Nếu có mỗi bạn thì phải coi lại máy của mình
 
leak là đây:
Mã:
Truot
    Events
        Time - Every 0.04 seconds of game time
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Tick Equal to 0
            Then - Actions
                Trigger - Turn off (This trigger)
                Skip remaining actions
            Else - Actions
                Set Tick = (Tick - 1)
                Set Diem1 = (Position of nannhan)
                Set diem2 = (Diem1 offset by Khoangcach towards Goc degrees)
                Unit - Move nannhan instantly to diem2
                [B][COLOR="Red"]Destructible - Pick every destructible within 200.00 of diem2 and do (Destructible - Kill (Picked destructible))[/COLOR][/B]
                Custom script:      call RemoveLocation(udg_Diem1)
                Custom script:      call RemoveLocation(udg_diem2)

đây là một lệnh của Blizzard làm, lệnh này leak (JASS-er mới nhìn ra) leak ở đây không phải leak point mà là leak handle không null

nếu bỏ lệnh đó đi sẽ giảm đáng kể lag (thậm chí không)

Mã:
NoBoomMucTieu
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to No BOM 
    Actions
        Set Nguoi = (Triggering unit)
        Set Target = (Target unit of ability being cast)
        Set TargetPoint = (Position of Target)
        Set Group = [B][COLOR="Red"](Units of type SB)[/COLOR][/B]
        Unit Group - Pick every unit in Group and do (Actions)
            Loop - Actions
                Set SB = (Picked unit)
                Unit - Order SB to Neutral - Kaboom! Target
                Special Effect - Create a special effect at TargetPoint using Abilities\Spells\Other\Doom\DoomDeath.mdl
                Special Effect - Destroy (Last created special effect)
        Custom script:      call DestroyGroup(udg_Group)
        Custom script:      call RemoveLocation(udg_TargetPoint)

cũng là một leak handle mà không null (JASS-er mới thấy)

cách giải quyết: ko "pick group" mà mỗi khi summon ra một cục lửa thì add cục lửa đó vào group

trigger sẽ như sau:
Mã:
Truot
    Events
        Time - Every 0.04 seconds of game time
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Tick Equal to 0
            Then - Actions
                Trigger - Turn off (This trigger)
                Skip remaining actions
            Else - Actions
                Set Tick = (Tick - 1)
                Set Diem1 = (Position of nannhan)
                Set diem2 = (Diem1 offset by Khoangcach towards Goc degrees)
                Unit - Move nannhan instantly to diem2
                [COLOR="Red"]Destructible - Pick every destructible within 200.00 of diem2 and do (Destructible - Kill (Picked destructible))[/COLOR]
                Custom script:      call RemoveLocation(udg_Diem1)
                Custom script:      call RemoveLocation(udg_diem2)

Mã:
GoiBoom
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to SW 
    Actions
        Set Nguoi = (Triggering unit)
        Set Level = (Level of SW  for Nguoi)
        Set Diem1 = (Position of Nguoi)
        Unit - Create 1 SB for (Owner of Nguoi) at Diem1 facing Default building facing degrees
        Set nannhan = (Last created unit)
        Set diem2 = (Target point of ability being cast)
        Set Goc = (Angle from Diem1 to diem2)
        Set Tick = 20
        Set Khoangcach = ((Distance between Diem1 and diem2) / (Real(Tick)))
        [COLOR="Blue"]Unit Group - Add nannhan to Group[/COLOR]
        Custom script:      call RemoveLocation(udg_Diem1)
        Custom script:      call RemoveLocation(udg_diem2)
        Trigger - Turn on Truot <gen>

Mã:
NoBoomMucTieu
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to No BOM 
    Actions
        Set Nguoi = (Triggering unit)
        Set Target = (Target unit of ability being cast)
        Set TargetPoint = (Position of Target)
        [COLOR="Red"]Set Group = (Units of type SB)[/COLOR]
        Unit Group - Pick every unit in Group and do (Actions)
            Loop - Actions
                Set SB = (Picked unit)
                Unit - Order SB to Neutral - Kaboom! Target
                Special Effect - Create a special effect at TargetPoint using Abilities\Spells\Other\Doom\DoomDeath.mdl
                Special Effect - Destroy (Last created special effect)
                [COLOR="Blue"]Unit Group - Remove SB from Group[/COLOR]
        [COLOR="Red"]Custom script:      call DestroyGroup(udg_Group)[/COLOR]
        Custom script:      call RemoveLocation(udg_TargetPoint)

các dòng đỏ là dòng bỏ đi, dòng xanh là dòng thêm.
Group sẽ đc dùng đi dùng lại nên ko destroy
---
chỉnh sửa xong lag sẽ giảm đáng kể :)>-
 
Cảm ơn anh Tom!
Nhưng khi cho nổ hết thì nó vẫn lag
Lại còn bị như thế này:nếu cho nổ 5 con vào 1 unit rất ít máu thì nó chỉ nổ có 3 con thôi còn lại 2 con thì ko sao cho 2 con đó nổ tiếp dc, nó cứ đứng yên chỗ lúc nãy:(
 
E hèm, vậy là máy bị vấn đề thiệt òy, tôi thả 1 lúc gần 300 quả mà cho nổ xong vẫn "1 ngày đẹp trời", màn hình vẫn êm đềm =))
P/S:
Em ko bít là tại sao nữa mong các anh sủa giúp em:D
Khi quân, phạm thượng......"trảm" \m/
Mách nhỏ: cứ lấy búa đập vào màn hình thì sẽ hết lag, máy hư tất nhiên sẽ sửa, sửa thì hết lag =))
 
Vậy thì nói thật Với các anh Vậy
Sở dĩ các anh ko bị giật là Các anh đang chơi map demo,cái map đấy có thả ra vài nghìn con cũng ko sao đâu
Hãy thử Map này em tạo sẵn spell đó rồi, thả vài trăm con ra , ko lag thì máy các anh là siêu nhân
http://www.mediafire.com/?m2yjmnyztom
.
___________Auto Merge________________

.
p/s:
E hèm, vậy là máy bị vấn đề thiệt òy, tôi thả 1 lúc gần 300 quả mà cho nổ xong vẫn "1 ngày đẹp trời", màn hình vẫn êm đềm =))
P/S:
Khi quân, phạm thượng......"trảm" \m/
Mách nhỏ: cứ lấy búa đập vào màn hình thì sẽ hết lag, máy hư tất nhiên sẽ sửa, sửa thì hết lag =))

Máy tính em vừa mua xong:(
Còn cái vụ "Sủa" thì sory các anh nhá, em định viết là Sửa:D
 
máy tôi vẫn 64 fps bình thường (dùng lệnh /fps để xem)

ngoài ra lag là do QUÂN QUÁ ĐÔNG, cái đống "lổm ngổm" đánh nhau giữa hai bên, tôi đưa màn hình ra đó mà fps bị tụt còn +30 @-)

tôi test = NewGen nên thấy có rất nhiều lỗi "double free location", tức là remove 1 location 2 lần => cũng leak (tôi chỉ nghe nói vậy, ko rõ đúng ko)
 
máy tôi vẫn 64 fps bình thường (dùng lệnh /fps để xem)

ngoài ra lag là do QUÂN QUÁ ĐÔNG, cái đống "lổm ngổm" đánh nhau giữa hai bên, tôi đưa màn hình ra đó mà fps bị tụt còn +30 @-)

tôi test = NewGen nên thấy có rất nhiều lỗi "double free location", tức là remove 1 location 2 lần => cũng leak (tôi chỉ nghe nói vậy, ko rõ đúng ko)

Nếu có lỗi thì anh sửa giúp em nhá! thank!
Quan trong là anh có bị lag như em khi cho nổ hơn 100 con mà màn hình nó vẫn giật ko ?
 
Back
Top