Topic hỏi đáp về cách làm map | version 11

Thảo luận trong 'World Editor' bắt đầu bởi Tom_Kazansky, 2/8/11.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. goldviper

    goldviper Mario & Luigi Lão Làng GVN

    Tham gia ngày:
    7/1/10
    Bài viết:
    723
    Nơi ở:
    Tổ dân phố
    ^
    Thanks
    hic , hay bạn cho mình cái map demo hay cái mấy cái pic bạn chỉnh trong OBJect đi , chỉnh hoài chả được nản quá :(

    Anh Tom cho em hỏi mấy lỗi này là gì và sửa thế nào , em thử copy 1 spell jass ở mấy map demo của anh , đã sửa các id của spell và dummy , xong save thì nó báo lỗi :(
    error.jpg
     
  2. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Cái này mình chỉ việc thay đổi cái Target trong Buff thành cái khác thôi... Xóa hết đi là được

    View attachment 143517

    TOM: update JassHelper đi, ngoài ra: Jass Helper / Disable vJass Syntax <-- cái này có đánh dấu ko? bỏ!
     
    Last edited by a moderator: 12/9/11
  3. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Cho mình hỏi một chút về leak..

    1. Variable Type Player có leak không . Với PlayerGroup thì mình biết xóa leak rồi (call RemoveForce ) nhưng còn Player thì nếu có leak thì xóa làm sao.
    2. Start Location của 1 player nào đó có bị leak không?..
    Vì mình sử dụng check leak check thì cái này nó không bị leak.. nhưng khó hiểu là đây là kiểu Location tại sao lại không bị leak được.. Với lại khi check bằng LeakCheck 3.1 thì cái Biến có Type Player nó lại báo là Type Location.. vì thế nào mình không dám tin vào cái này hoàn toàn.. nên ai có kinh nghiệm cho mình biết với.
    3. không biểu bj_wantDestroyGroup = true/false thì có tác dụng như thế nào trong xóa leak???
     
  4. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    >nhưng còn Player thì nếu có leak thì xóa làm sao.

    leak làm sao được, từ đầu đến cuối thì chỉ có từng đó player, thêm vào ở đâu, ko dùng cái nào mà leak

    >Start Location của 1 player nào đó có bị leak không?..

    cứ lấy "location" mà ko xóa là leak

    >không biểu bj_wantDestroyGroup = true/false thì có tác dụng như thế nào trong xóa leak???

    ở cái lệnh:

    Mã:
    Unit Group - Pick every unit in [B][COLOR="#FF0000"](Units in (Playable map area))[/COLOR][/B] and do (Actions)
        Loop - Actions
    
    thì sau khi thực hiện xong các Actions trong Loop, nếu bj_wantDestroyGroup mà là TRUE thì cái group đỏ đậm kia sẽ bị xóa
    bạn mà hỏi: vì sao lại thế? thì câu trả lời là: lệnh đó chạy như vậy

    vậy bình thường:
    Mã:
    Set TempGroup = (Units in (Playable map area))
    Unit Group - Pick every unit in [B]TempGroup[/B] and do (Actions)
        Loop - Actions
    
    Custom Script: call DestroyGroup( udg_TempGroup )
    
    tuy nhiên có thể:

    Mã:
    Custom Script: set bj_wantDestroyGroup = true
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
    tác dụng như nhau
     
    Chỉnh sửa cuối: 13/9/11
    mvcthinh thích bài này.
  5. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Ý của em là khi dùng cái này. Sau khi dùng biến để lọc Player ra thì có cần phải set udg_Player = null không ?
    Set Player = (Random player from (All enemies of (Player((Integer A)))))
     
  6. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    không!

    tuy nhiên: Set Player = (Random player from (All enemies of (Player((Integer A)))))

    leak player group đó
     
  7. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Ok vậy em sẽ chỉnh lại.. do cũng không hay dùng PlayerGroup nên không để ý.. Tks anh lần nữa

    ---------- Post added at 12:25 ---------- Previous post was at 11:32 ----------

    Em muốn hỏi rõ thêm là.. nếu mình dùng như thế này

    Mã:
    Custom Script: set bj_wantDestroyGroup = true
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
    thì khi dùng nhiều Unit Group

    Mã:
    Custom Script: set bj_wantDestroyGroup = true
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
    
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
    
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
    Nếu dùng nhiều như vậy thì mình chỉ việc khai báo Custom Script: set bj_wantDestroyGroup = true ở đầu Trigger thôi hay phải khai báo trên mỗi Unit Group như thế này

    Mã:
    [I]Custom Script: set bj_wantDestroyGroup = true[/I]
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    [I]Custom Script: set bj_wantDestroyGroup = true[/I]
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    [I]Custom Script: set bj_wantDestroyGroup = true[/I]
    Unit Group - Pick every unit in [B](Units in (Playable map area))[/B] and do (Actions)
        Loop - Actions
    
     
  8. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    Nếu bạn hỏi phải dùng cái nào mới ko leak thì là cái cách dưới cùng, Custom Script: set bj_wantDestroyGroup = true trên mỗi lần Unit Group - Pick ...

    TOM: sau mỗi lần Unit Group - Pick thì bj_wantDestroyGroup sẽ có giá trị là false
     
    Last edited by a moderator: 13/9/11
  9. kubos26

    kubos26 Mr & Ms Pac-Man

    Tham gia ngày:
    7/9/10
    Bài viết:
    114
    Nơi ở:
    Nha Trang
    mấy pro cho mình xin hướng dẫn Trigger để hero sống dậy
    tk trước

    ---------- Post added at 13:52 ---------- Previous post was at 13:36 ----------

    à còn nữa
    làm sao để khi đánh chết hero là nó ra tiền
     
  10. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
  11. conmacabong

    conmacabong Mario & Luigi

    Tham gia ngày:
    30/5/11
    Bài viết:
    836
    Nơi ở:
    Hồ Chí Minh
    Cho em hỏi với : Hôm bữa em có copy một đoạn jass dán vào map nhưng em có chỉnh lại một số thứ thì nó ko chạy được. Em ko còn nhớ nguồn của đoạn code đó nữa. Mấy anh chỉ giúp giùm em

    function ABC takes nothing returns nothing
    Local location vitrilinh
    set vitrilinh = GetRectCenter(gg_rct_VitriDAU)
    call CreateNUnitsAtLoc( 1, 'hfoo', Player(2), vitri, bj_UNIT_FACING )
    set vitrilinh = null
    set vitrilinh = GetRectCenter(gg_rct_VitriCUOI)
    call IssuePointOrderLoc( GetLastCreatedUnit(), "attack", vitrilinh )
    set vitrilinh = null
    endfunction
    //
    //
    //
    function XYZ takes nothing returns nothing
    set gg_ABC = CreateTrigger( )
    call TriggerRegisterTimerEventPeriodic( gg_ABC, 2 )
    // dong tren la event
    // dong duoi la goi function dieu kien o tren
    call TriggerAddAction( gg_ABC, function XYZ )
    endfunction
     
  12. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    sai ở đây nè
    call CreateNUnitsAtLoc( 1, 'hfoo', Player(2), vitri, bj_UNIT_FACING )
    sửa lại
    call CreateNUnitsAtLoc( 1, 'hfoo', Player(2), vitrilinh, bj_UNIT_FACING )
     
  13. goldviper

    goldviper Mario & Luigi Lão Làng GVN

    Tham gia ngày:
    7/1/10
    Bài viết:
    723
    Nơi ở:
    Tổ dân phố
    Mọi người cho mình hỏi làm sao để check được damage nào là dam đánh chay vs dam của spell .Chẳng là mình có làm 1 số passive dựa trên unit bị take dam , thành ra lúc cast spell nó cũng hoạt động :(
     
  14. raivor

    raivor Dragon Quest Lão Làng GVN

    Tham gia ngày:
    24/7/09
    Bài viết:
    1,411
  15. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Xin hỏi cách làm Spell Critical Strike Aura..

    Mình làm Spell Critical Strike Aura như sau.

    Trigger thứ nhất.
    Biến CriticalAuraLV type Integer Array
    Mã:
    Critical Aura
        Events
            Unit - A unit Learns a skill
        Conditions
            (Level of [Blade Master] Critical Aura  for (Learning Hero)) Greater than 0
        Actions
            Set CriticalAuraLV[(Player number of (Owner of (Learning Hero)))] = (Level of [Blade Master] Critical Aura  for (Triggering unit))
    
    Trigger thứ 2.
    G_CriticalAura type Unit Group
    Mã:
    Critical AuraBuff
        Events
            Time - Every 0.10 seconds of game time
        Conditions
        Actions
            Set G_CriticalAura = (Units in (Playable map area) matching ((((Matching unit) is alive) Equal to True) and ((((Owner of (Matching unit)) is in (All players)) Equal to True) and (((Matching unit) is A structure) Not equal to True))))
            Unit Group - Pick every unit in G_CriticalAura and do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            ((Picked unit) has buff [B]Critical Aura[/B] ) Equal to True
                        Then - Actions
                            Unit - Add [Blade Master] Critical Strike  to (Picked unit)
                            Player - Disable [Blade Master] Critical Strike  for (Owner of (Picked unit))
                            Unit - Set level of [Blade Master] Critical Strike (Hide Icon) for (Picked unit) to CriticalAuraLV[(Player number of (Owner of (Picked unit)))]
                        Else - Actions
                            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                If - Conditions
                                    ((Picked unit) has buff [B]Critical Aura[/B] ) Equal to False
                                Then - Actions
                                    Unit - Remove [Blade Master] Critical Strike  from (Picked unit)
                                Else - Actions
            Custom script:   call DestroyGroup( udg_G_CriticalAura )
    
    Mô tả Spell: Mình tạo 3 Spell.
    1 Spell giả dùng để cho Hero học.. Với Gốc là 1 chiu có thể thêm Buff vào cho đồng đội. (Spell này nằm trong Abi của Hero)
    1 Spell Critical Stike Hidden thật với lv tương ứng Spell trên kia (Nằm trong Abi của Unit)
    1 Spell dạng Spell Book .. Trong Spell Book này có Add Spell Critical Hidden
    (Kiểu làm này học từ anh Tom)

    khi một Unit có Buff Critical Aura thì Trigger 2 sẽ xét xem Unit này có nằm trong Unit Group không (thỏa điều kiện) sau đó nếu trong Unit group thì xét coi có Buff Critical Aura hay không sau đó quyết định thêm vào hoặc xóa đi .
    Skill thêm vào là Spell Book .. dùng lệnh để Disable nó..
    nếu mất buff thì xóa Skill Spell Book đi..

    Chiu Spell book trong Trigger trên có tên là :Critical Strike
    Chiu Mà Hero học có tên là Critical Aura
    và Chiu mà được add sẵn vào Spell Book là Critical Strike Hidden (chiu thiệt)
    Cách làm của mình như trên.

    Tuy nhiên.. gặp 1 trục trặc lớn.
    Đó là sau khi chơi 1 thời gian .. lúc đầu thì tụi Unit có buff nó đánh có thấy hiện màu đỏ, nghĩa là có tác dụng.
    Nhưng một thời gian sau thì tự nhiên con nào vào trong Buff (Unit bị) là bị chết ngay lập tức luôn, Hero thì không bị.. chỉ có Unit bị..

    Đây là điều khó hiểu .. nên hi vọng ai đó giúp giải quyết dùm vấn đề này với.
    Tiện thể mọi người Check dùm xem làm như vậy đúng hay sai nha..

    Bổ sung thêm 1 vài thứ vừa phát hiện được ..

    Là sau khi dùng con Blade Master .. mình sử dụng Wind Walk .. trong khi windwalk thì buff không còn tác dụng lên các Nearby Friendly Unit nữa .. và lúc WW hết tác dụng thì đồng loại mấy con Unit Race Human ra đi hết.. khó hiểu.. mấy con của Race khác thì lại không bị.. và xe cũng không bị. còn lại Unit Race Human bị hết.
    Cả chiu Mirror Image của Blade Master cũng làm cho chiu này nó thành ra như trên.. Ai giúp với. :(
     
    Chỉnh sửa cuối: 13/9/11
  16. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    > ((((Owner of (Matching unit)) is in (All players)) Equal to True)

    cái này để làm gì?

    > Player - Disable [Blade Master] Critical Strike for (Owner of (Picked unit))

    disable spellbook thì làm ở Map Initialization và cho tất cả player luôn.

    > Trigger thứ 2. G_CriticalAura type Unit Group

    Mã:
    If - Conditions
    	((Picked unit) has buff Critical Aura ) Equal to True
    Then - Actions
    
    Else - Actions
    	If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    		If - Conditions
    			((Picked unit) has buff Critical Aura ) Equal to False
    		Then - Actions
    			Unit - Remove [Blade Master] Critical Strike  from (Picked unit)
    		Else - Actions
    
    khi chạy lệnh ELSE tức là ((Picked unit) has buff Critical Aura ) Equal to True không đúng và tương đương với ((Picked unit) has buff Critical Aura ) Equal to False
    việc gì phải "If" nữa?

    > trong khi windwalk thì buff không còn tác dụng lên các Nearby Friendly Unit nữa

    unit tàng hình KHÔNG tỏa Aura.
    có thể chỉnh trong Gameplay Constants

    >Nhưng một thời gian sau thì tự nhiên con nào vào trong Buff (Unit bị) là bị chết ngay lập tức luôn, Hero thì không bị.. chỉ có Unit bị..

    với trigger trên thì việc này là... không thể xảy ra, gửi map có cái này lên?
     
  17. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Mã:
    Critical Aura
        Events
            Unit - A unit Learns a skill
        Conditions
            (Level of [Blade Master] Critical Aura  for (Learning Hero)) Greater than 0
        Actions
            Set CriticalAuraLV[(Player number of (Owner of (Learning Hero)))] = (Level of [Blade Master] Critical Aura  for (Learning Hero))
            Trigger - Turn on Critical AuraBuff <gen>
    Mã:
    Critical AuraBuff
        Events
            Time - Every 0.10 seconds of game time
        Conditions
        Actions
            Set G_CriticalAura = (Units in (Playable map area) matching (((Matching unit) is alive) Equal to True))
            Unit Group - Pick every unit in G_CriticalAura and do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            ((Picked unit) has buff Critical Aura ) Equal to True
                        Then - Actions
                            Unit - Add [Blade Master] Critical Strike  to (Picked unit)
                            Unit - Set level of [Blade Master] Critical Strike (Hide Icon) for (Picked unit) to CriticalAuraLV[(Player number of (Owner of (Picked unit)))]
                        Else - Actions
                            Unit - Remove [Blade Master] Critical Strike  from (Picked unit)
            Custom script:   call DestroyGroup( udg_G_CriticalAura )
    
    Đã chỉnh lại và hình như hết thấy bị chết Unit rồi..

    Nghi ngờ do cái dòng này..
    (((Matching unit) is A structure) Not equal to True))))

    Nhưng mà sau khi ổn rồi thì lại không biết làm sao để nó không bị lag.

    Khi học Spell này thì nó bị lag.. dù đã xóa leak rồi nhưng vẫn bị.. như vậy phải làm sao để khắc phục nó bây giờ.
     
  18. babycat1819

    babycat1819 Youtube Master Race

    Tham gia ngày:
    28/1/10
    Bài viết:
    59
    Ai cho em hỏi lúc ghi giới thiệu skill em viết được có 6 dòng là max (xài Jassnewgen ) trong khi map Anh Rex em mỡ lên có nhiều skill lên tới 10 dòng ai chĩ em cách làm

    ---------- Post added at 22:17 ---------- Previous post was at 22:16 ----------

    Có cách nào đễ chuyễn kẽ thù thành bạn không ai chĩ em
     
  19. raivor

    raivor Dragon Quest Lão Làng GVN

    Tham gia ngày:
    24/7/09
    Bài viết:
    1,411
    Khi xuống dòng, bạn dùng |n, ví dụ: -tôi|n-đang|n-trả|n-lời|n-bạn.
    Kết quả trong game sẽ thế này:
    Mã:
    -tôi
    -đang
    -trả
    -lời
    -bạn
     
  20. mvcthinh

    mvcthinh Mr & Ms Pac-Man

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Hix. .. không xong rồi... sau khi chơi tiếp tục bị.. và phát hiện ra là không phải do Trigger sai mà là do xung khắc gì đó trong Upgrade gây ra..
    Cứ Upgrade Weapon lên lv 2 là bắt đầu bị...
    Anh TOM xem maps rồi hướng dẫn cách khắc phục giúp em với..
     
    Chỉnh sửa cuối: 14/9/11
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này