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

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

  1. mvcthinh

    mvcthinh Vệ úy

    Tham gia ngày:
    18/8/11
    Bài viết:
    140
    Nơi ở:
    HCM
    Cho hỏi làm sao để khắc phục mấy cái lỗi do mấy cái spell cố định của War3 gây ra..
    Ví dụ lúc mình đang chơi map của mình.. dùng chiêu phân thân.. thì tự nhiên cái con tướng chính của mình không thấy đâu mà chỉ thấy mấy cái bóng. sau đó thì bug mất tướng luôn nhưng vẫn hiện Icon tướng bên góc trái. KHÔNG thấy Model đâu hết.
    Còn lúc mình cast spell Voodoo Vòng bất tử của con Shadow Hunter thì mấy skill khác mất hết chỉ còn mỗi skill Voodoo đang chạy.. con tướng tự nhiên thành bất tử luôn.. xong nhấn vào chiu Voodoo thì BUG văng ra ngoài luôn.. không hiểu mấy cái đó mình đã làm cái gì mà gây ra lỗi nhỉ.. có ai gặp trường hợp này thì chỉ giáo với.
    À chưa kể lâu lâu còn bị BUG cái chiu biến hình của Demon nữa.. chiu đó cũng thường bị BUG lắm mà không biết nguyên nhân gây ra nên không biết sửa như thế nào :6cool_sure::9cool_pudency:
     
  2. goldviper

    goldviper Đề hạt

    Tham gia ngày:
    7/1/10
    Bài viết:
    536
    Nơi ở:
    Tổ dân phố
    Cho mình hỏi là hàm Order Unit Attack-Move to Point có bị Leak ko ,mình thường Order xong xóa point đó đi nhưng Unit toàn đi ra Centre of Playable Map 8-} Giúp mình nhé đang cần gấp vì mình sử dụng Hàm này thường xuyên nếu leak thì vỡ mặt :(
     
  3. Tom_Kazansky

    Tom_Kazansky Thành viên BQT Moderator

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    phần lớn các lỗi này không sửa được

    lỗi về cái Voodoo thì tôi chưa gặp
    về cái biến hình, Metamorphosis, nên đặt Duration - Normal: bằng 0 (thời gian biến) để giảm tối thiểu khả năn gây lỗi

    nếu không xóa cái point sử dụng ở lệnh trên thì leak
    đặt point đó vào biến (variable) rồi move tới cái biến này
    sau đó xóa biến
     
  4. goldviper

    goldviper Đề hạt

    Tham gia ngày:
    7/1/10
    Bài viết:
    536
    Nơi ở:
    Tổ dân phố
    ^
    Đây bác xem ,mình làm như vậy mà nó cứ đi ra giữa map @@ Đại loại là spawn creep rồi order cho nó
    Mã:
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                CreepType_Count Greater than or equal to 7
            Then - Actions
                Set CreepType_Count = 0
            Else - Actions
                Set CreepType_Count = (CreepType_Count + 1)
        Set SpawnCreep_Point[1] = (Center of DASpawnBot <gen>)
        Set SpawnCreep_Point[2] = (Center of DASpawnMid <gen>)
        Set SpawnCreep_Point[3] = (Center of DASpawnTop <gen>)
        Set SpawnCreep_Point[4] = (Center of BLSpawnBot <gen>)
        Set SpawnCreep_Point[5] = (Center of BLSpawnMid <gen>)
        Set SpawnCreep_Point[6] = (Center of BLSpawnTop <gen>)
        Set BattleField_Point[1] = (Center of BattleField Bot <gen>)
        Set BattleField_Point[2] = (Center of BatleField Mid <gen>)
        Set BattleField_Point[3] = (Center of BattleField Top <gen>)
        Set BattleField_Point[4] = (Center of BattleField Bot <gen>)
        Set BattleField_Point[5] = (Center of BatleField Mid <gen>)
        Set BattleField_Point[6] = (Center of BattleField Top <gen>)
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Integer A) Less than or equal to 3
                    Then - Actions
                        For each (Integer B) from 1 to NumberCreep[CreepType_Count], do (Actions)
                            Loop - Actions
                                Set SpawnCreep_Point[1] = (Center of DASpawnBot <gen>)
                                Set SpawnCreep_Point[2] = (Center of DASpawnMid <gen>)
                                Set SpawnCreep_Point[3] = (Center of DASpawnTop <gen>)
                                Set BattleField_Point[1] = (Center of BattleField Bot <gen>)
                                Set BattleField_Point[2] = (Center of BatleField Mid <gen>)
                                Set BattleField_Point[3] = (Center of BattleField Top <gen>)
                                -------- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ --------
                                Unit - Create 1 DA_Creep[CreepType_Count] for Player 8 (Pink) at SpawnCreep_Point[(Integer A)] facing Default building facing degrees
                                Unit - Order (Last created unit) to Attack-Move To BattleField_Point[(Integer A)]
                                -------- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ --------
                                For each (Integer A) from 1 to 6, do (Actions)
                                    Loop - Actions
                                        Custom script:   call RemoveLocation(udg_SpawnCreep_Point[bj_forLoopAIndex] )
                                        Custom script:   call RemoveLocation(udg_BattleField_Point[bj_forLoopAIndex] )
                    Else - Actions
                        For each (Integer B) from 1 to NumberCreep[CreepType_Count], do (Actions)
                            Loop - Actions
                                Set SpawnCreep_Point[4] = (Center of BLSpawnBot <gen>)
                                Set SpawnCreep_Point[5] = (Center of BLSpawnMid <gen>)
                                Set SpawnCreep_Point[6] = (Center of BLSpawnTop <gen>)
                                Set BattleField_Point[4] = (Center of BattleField Bot <gen>)
                                Set BattleField_Point[5] = (Center of BatleField Mid <gen>)
                                Set BattleField_Point[6] = (Center of BattleField Top <gen>)
                                -------- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ --------
                                Unit - Create 1 BL_Creep[CreepType_Count] for Player 12 (Brown) at SpawnCreep_Point[(Integer A)] facing Default building facing degrees
                                Unit - Order (Last created unit) to Attack-Move To BattleField_Point[(Integer A)]
                                -------- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ --------
                                For each (Integer A) from 1 to 6, do (Actions)
                                    Loop - Actions
                                        Custom script:   call RemoveLocation(udg_SpawnCreep_Point[bj_forLoopAIndex] )
                                        Custom script:   call RemoveLocation(udg_BattleField_Point[bj_forLoopAIndex] )
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                Custom script:   call RemoveLocation(udg_SpawnCreep_Point[bj_forLoopAIndex] )
                Custom script:   call RemoveLocation(udg_BattleField_Point[bj_forLoopAIndex] )
    ngoài ra mấy cái biến NumberCreep vs CreepType_Count ko có liên quan gì đến Order move-attack cả
     
  5. Tom_Kazansky

    Tom_Kazansky Thành viên BQT Moderator

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    lặp Integer A trong Integer A vậy là ko ổn rồi, Integer A chỉ là một biến, 2 vòng lặp lồng nhau dùng một biến vậy sao được?
    dùng vòng lặp với biến khác nhau đi

    các điểm spawn,attack đã đặt ở xanh sao ở đỏ lại đặt lại?

    xóa phần set point màu đỏ và xóa cái vòng lặp A dùng để xóa point đi, chỉ cần một cái ở cuối là được

    Mã:
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                CreepType_Count Greater than or equal to 7
            Then - Actions
                Set CreepType_Count = 0
            Else - Actions
                Set CreepType_Count = (CreepType_Count + 1)
        Set SpawnCreep_Point[1] = (Center of DASpawnBot <gen>)
        Set SpawnCreep_Point[2] = (Center of DASpawnMid <gen>)
        Set SpawnCreep_Point[3] = (Center of DASpawnTop <gen>)
        Set SpawnCreep_Point[4] = (Center of BLSpawnBot <gen>)
        Set SpawnCreep_Point[5] = (Center of BLSpawnMid <gen>)
        Set SpawnCreep_Point[6] = (Center of BLSpawnTop <gen>)
        Set BattleField_Point[1] = (Center of BattleField Bot <gen>)
        Set BattleField_Point[2] = (Center of BatleField Mid <gen>)
        Set BattleField_Point[3] = (Center of BattleField Top <gen>)
        Set BattleField_Point[4] = (Center of BattleField Bot <gen>)
        Set BattleField_Point[5] = (Center of BatleField Mid <gen>)
        Set BattleField_Point[6] = (Center of BattleField Top <gen>)
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Integer A) Less than or equal to 3
                    Then - Actions
                        For each (Integer B) from 1 to NumberCreep[CreepType_Count], do (Actions)
                            Loop - Actions
                                Unit - Create 1 DA_Creep[CreepType_Count] for Player 8 (Pink) at SpawnCreep_Point[(Integer A)] facing Default building facing degrees
                                Unit - Order (Last created unit) to Attack-Move To BattleField_Point[(Integer A)]
                    Else - Actions
                        For each (Integer B) from 1 to NumberCreep[CreepType_Count], do (Actions)
                            Loop - Actions
                                Unit - Create 1 BL_Creep[CreepType_Count] for Player 12 (Brown) at SpawnCreep_Point[(Integer A)] facing Default building facing degrees
                                Unit - Order (Last created unit) to Attack-Move To BattleField_Point[(Integer A)]
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                Custom script:   call RemoveLocation(udg_SpawnCreep_Point[bj_forLoopAIndex] )
                Custom script:   call RemoveLocation(udg_BattleField_Point[bj_forLoopAIndex] )
    còn vụ creep chạy ra giữa bản đồ có thể do 2 vòng lặp A lồng nhau vậy nên A bị "rối"
     
  6. RazzilDarkbrew

    RazzilDarkbrew Dân binh mắt toét

    Tham gia ngày:
    29/3/13
    Bài viết:
    83
    Nơi ở:
    tpHCM
    mọi ng cho mình hỏi cách nào để giữa các player có thể chuyển tiền mà ko thể chuyển gỗ
    cám ơn!
     
  7. herosf2006

    herosf2006 Chỉ huy sứ đồng tri

    Tham gia ngày:
    19/3/08
    Bài viết:
    2,670
    Nơi ở:
    Đà Nẵng
    ai có acc war3.uuu9 cho em mượn với :9cool_pudency:
     
  8. bahomao12345

    bahomao12345 Vệ úy

    Tham gia ngày:
    9/6/12
    Bài viết:
    111
    Ai giúp với, sao map mình khi test hoặc chơi thì toàn bị đít ra và báo lỗi. Ai dzo map mình sửa giúp với. Cảm ơn các hảo thủ rất nhìu

    Link : http://www.epicwar.com/maps/226787/
     
  9. RazzilDarkbrew

    RazzilDarkbrew Dân binh mắt toét

    Tham gia ngày:
    29/3/13
    Bài viết:
    83
    Nơi ở:
    tpHCM
    có ai biết có font chữ nào để ghi tiếng Việt trong WE mà gần giống (hoặc giống y chang thì càng tốt) font chữ của war3 ko? nếu biết thì cho mình xin 1 cái
    cám ơn
     
  10. langthangbairac

    langthangbairac Đề hạt

    Tham gia ngày:
    19/5/12
    Bài viết:
    594
    Nơi ở:
    Thanh Chương
    Mình đang dự định đưa một kỹ năng trong CS1.1 vào map đó là Long jump kết hợp Bunny Hop =]] :2cool_confident:

    Mọi người cho ý kiến :8cool_cool:

    - - - Updated - - -

    và : Cho hỏi cách xoay camera góc nhìn
     
  11. xadan17

    xadan17 Dân binh mắt toét

    Tham gia ngày:
    15/7/12
    Bài viết:
    47
    Cho hỏi khi sử dụng Metamorphosis mà sử dụng Mirror Image thì lại biến về thằng hero cũ? Có thể phân thân như thằng đã biến hình đc ko? Dùng Trigger gì vậy .Thanks All
     
  12. magicz123

    magicz123 Vệ úy

    Tham gia ngày:
    31/5/07
    Bài viết:
    185
    Dùng dummy cast skill Illusion vào caster dùng loop là số lần cast để có số illusion tương ứng.

    Ai có thể cho mình xin hai spell của Sacred Warrior trong DotA là Berserker's Blood và Burning Spear được không ? Nếu là JASS và MUI, MPI thì quá ứng ý luôn :D
     
  13. Saboteur94

    Saboteur94 Dân binh mắt toét

    Tham gia ngày:
    8/12/12
    Bài viết:
    12
    Cho mình hỏi, mình muốn làm 1 spell mà bị dính ở khúc damage, ý mình là mình muốn damaga = 50 *<level của skill> nhưng muốn set level của skill thì phải đặt bằng Interger mà Interget không cho vào Arithmetic được, vậy giờ mình phải làm sao ?
     
  14. ZhengHe

    ZhengHe Đề hạt

    Tham gia ngày:
    4/1/09
    Bài viết:
    624
    @saboteur94:


    Mã:
    Unit - Cause (Triggering unit) to damage (Target), dealing [B](50*(Real((Level of Thunder Clap for (Triggering unit)))))[/B] damage of attack type Spells and damage type Normal
    
    Dùng Conversion - Convert Integer to Real để đổi giá trị của level skill từ integer sang dạng Real
     
  15. RazzilDarkbrew

    RazzilDarkbrew Dân binh mắt toét

    Tham gia ngày:
    29/3/13
    Bài viết:
    83
    Nơi ở:
    tpHCM
    quote lại lần nữa: ai cho mình xin 1 font chữ để ghi tiếng Việt trong WE mà gần giống (hoặc giống y chang thì càng tốt) font chữ trong war3 :-/
    cám ơn :D
     
  16. Saboteur94

    Saboteur94 Dân binh mắt toét

    Tham gia ngày:
    8/12/12
    Bài viết:
    12
    Cho mình hỏi Trigger như sau:
    Khi mà Storm Bolt đánh vào target thì sẻ có 1 khoảng thời gian đi từ Caster đến Target :( mà lúc cast phép thì không đoán được khoảng cách giữa target và caster, cho mình hỏi có trigger nào mà khi cục Storm Bolt đó đập vào target thì mới enable cái trigger mới không ạ :5cool_ops:
     
  17. Ngoc LeO

    Ngoc LeO Chánh đề hạt

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Tạo một trigger check every time,check tới khi unit đó có buff của storm bolt thì chạy các action sau đó.
     
  18. Saboteur94

    Saboteur94 Dân binh mắt toét

    Tham gia ngày:
    8/12/12
    Bài viết:
    12
    Cho mình cái trigger mẫu đi bạn :(, mình mới vào nên không rành cho lắm :(.
     
  19. Ngoc LeO

    Ngoc LeO Chánh đề hạt

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Mình có một thắc mắc như thế này:

    Trong một timer check một hoặc nhiều unit nhiều lần
    Nhiều timer để check từng unit

    Thì cái nào sẽ gây lag hơn ?
     
  20. Saboteur94

    Saboteur94 Dân binh mắt toét

    Tham gia ngày:
    8/12/12
    Bài viết:
    12
    Các bạn cho mình hỏi, chiêu ShockWave của hero bên orc, nếu muốn Target nào bị dính chiêu bị chậm hay đốt thì sao :v có cần trigger không ? và cho mình quote lại:
    "Khi mà Storm Bolt đánh vào target thì sẻ có 1 khoảng thời gian đi từ Caster đến Target mà lúc cast phép thì không đoán được khoảng cách giữa target và caster, cho mình hỏi có trigger nào mà khi cục Storm Bolt đó đập vào target thì mới enable cái trigger mới không ạ "
     

Chia sẻ trang này