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

Status
Không mở trả lời sau này.
Làm sao khi tắt skill Metamorphosis hoặc hết Duration - hero thì hero sẽ chưỡng 1 đường thẳng dài như skill Shockwave hay Carrion Swarm lúc mở ko active mấy spell này ? Thanks nhìu.
 
Cho em hỏi cái này, đây là trigger Spell của em, cho em hỏi 3 trigger ở dưới có leak hay lỗi gì hok mà khi dùng spell gây lag rất khó chịu và nếu có thì phải chỉnh như thế nào????/
Trigger 1
Mã:
Amaterasu
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Amaterasu 
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Amaterasu_Integer[1] Equal to 0
            Then - Actions
                Trigger - Turn on Amaterasu Loop <gen>
            Else - Actions
        Set Amaterasu_Integer[1] = (Amaterasu_Integer[1] + 1)
        Set Amaterasu_Integer[2] = (Amaterasu_Integer[2] + 1)
        Set Amaterasu_Caster[Amaterasu_Integer[2]] = (Triggering unit)
        Set Amaterasu_Target[Amaterasu_Integer[2]] = (Target unit of ability being cast)
        Set Amaterasu_CasterPosition[Amaterasu_Integer[2]] = (Position of Amaterasu_Caster[Amaterasu_Integer[2]])
        Set Amaterasu_ExplosionTime[Amaterasu_Integer[2]] = 0.25
        Set Amaterasu_Distance[Amaterasu_Integer[2]] = 500.00
        Set Amaterasu_DamageRange[Amaterasu_Integer[2]] = 300.00
        Set Amaterasu_CreateTime[Amaterasu_Integer[2]] = 0.50
        Set Amaterasu_Damage[Amaterasu_Integer[2]] = ((Real((Level of Amaterasu  for Amaterasu_Caster[Amaterasu_Integer[2]]))) x ((Real((Strength of Amaterasu_Caster[Amaterasu_Integer[2]] (Include bonuses)))) x 5.00))
        Set Amaterasu_AttackType[Amaterasu_Integer[2]] = Spells
        Set Amaterasu_DamageType[Amaterasu_Integer[2]] = Mind
        Unit - Pause Amaterasu_Target[Amaterasu_Integer[2]]
        Custom script:   call RemoveLocation (udg_Amaterasu_CasterPosition[udg_Amaterasu_Integer[3]])
Trigger 2
Mã:
Amaterasu Die
    Events
        Unit - A unit Dies
    Conditions
        (Unit-type of (Dying unit)) Equal to Amaterasu Dummy
    Actions
        Unit - Remove (Dying unit) from the game
Trigger 3
Mã:
Amaterasu Loop
    Events
        Time - Every 0.01 seconds of game time
    Conditions
    Actions
        For each (Integer Amaterasu_Integer[3]) from 1 to Amaterasu_Integer[2], do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                    Then - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                Amaterasu_CreateTime[Amaterasu_Integer[3]] Greater than 0.00
                            Then - Actions
                                Set Amaterasu_CreateTime[Amaterasu_Integer[3]] = (Amaterasu_CreateTime[Amaterasu_Integer[3]] - 0.01)
                                Set Amaterasu_TargetPosition[Amaterasu_Integer[3]] = (Position of Amaterasu_Target[Amaterasu_Integer[3]])
                                Set Amaterasu_CreatePoint2[Amaterasu_Integer[3]] = (Amaterasu_TargetPosition[Amaterasu_Integer[3]] offset by Amaterasu_Distance[Amaterasu_Integer[3]] towards (Random angle) degrees)
                                Unit - Create 1 Amaterasu Dummy for (Owner of Amaterasu_Caster[Amaterasu_Integer[3]]) at Amaterasu_CreatePoint2[Amaterasu_Integer[3]] facing (Random angle) degrees
                                Set Amaterasu_Dummy[Amaterasu_Integer[3]] = (Last created unit)
                                Custom script:   call RemoveLocation (udg_Amaterasu_TargetPosition[udg_Amaterasu_Integer[3]])
                                Custom script:   call RemoveLocation (udg_Amaterasu_CreatePoint2[udg_Amaterasu_Integer[3]])
                            Else - Actions
                                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    If - Conditions
                                        Amaterasu_Distance[Amaterasu_Integer[3]] Greater than 50.00
                                    Then - Actions
                                        Set Amaterasu_DummyGroup[Amaterasu_Integer[3]] = (Units of type (Unit-type of Amaterasu_Dummy[Amaterasu_Integer[3]]))
                                        Unit Group - Pick every unit in Amaterasu_DummyGroup[Amaterasu_Integer[3]] and do (Actions)
                                            Loop - Actions
                                                Set Amaterasu_TargetPosition[Amaterasu_Integer[3]] = (Position of Amaterasu_Target[Amaterasu_Integer[3]])
                                                Set Amaterasu_MovePoint2[Amaterasu_Integer[3]] = (Amaterasu_TargetPosition[Amaterasu_Integer[3]] offset by Amaterasu_Distance[Amaterasu_Integer[3]] towards (Random angle) degrees)
                                                Set Amaterasu_Distance[Amaterasu_Integer[3]] = (Amaterasu_Distance[Amaterasu_Integer[3]] - 0.02)
                                                Set Amaterasu_SpinDummy[Amaterasu_Integer[3]] = (Picked unit)
                                                Unit - Move Amaterasu_SpinDummy[Amaterasu_Integer[3]] instantly to Amaterasu_MovePoint2[Amaterasu_Integer[3]]
                                                Custom script:   call RemoveLocation (udg_Amaterasu_TargetPosition[udg_Amaterasu_Integer[3]])
                                                Custom script:   call RemoveLocation (udg_Amaterasu_MovePoint2[udg_Amaterasu_Integer[3]])
                                                Custom script:   call DestroyGroup (udg_Amaterasu_DummyGroup[udg_Amaterasu_Integer[3]])
                                    Else - Actions
                                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                            If - Conditions
                                                Amaterasu_ExplosionTime[Amaterasu_Integer[3]] Greater than 0.00
                                            Then - Actions
                                                Set Amaterasu_ExplosionTime[Amaterasu_Integer[3]] = (Amaterasu_ExplosionTime[Amaterasu_Integer[3]] - 0.01)
                                                Set Amaterasu_DummyGroup[Amaterasu_Integer[3]] = (Units of type (Unit-type of Amaterasu_Dummy[Amaterasu_Integer[3]]))
                                                Unit Group - Pick every unit in Amaterasu_DummyGroup[Amaterasu_Integer[3]] and do (Actions)
                                                    Loop - Actions
                                                        Set Amaterasu_RemoveDummy[Amaterasu_Integer[3]] = (Picked unit)
                                                        Unit - Remove Amaterasu_RemoveDummy[Amaterasu_Integer[3]] from the game
                                                Set Amaterasu_TargetPosition[Amaterasu_Integer[3]] = (Position of Amaterasu_Target[Amaterasu_Integer[3]])
                                                Unit - Create 1 Amaterasu Explosion Dummy for (Owner of Amaterasu_Caster[Amaterasu_Integer[3]]) at Amaterasu_TargetPosition[Amaterasu_Integer[3]] facing Default building facing degrees
                                                Set Amaterasu_ExplosionDummy[Amaterasu_Integer[3]] = (Last created unit)
                                                Animation - Play Amaterasu_ExplosionDummy[Amaterasu_Integer[3]]'s birth animation
                                                Unit - Add a 3.00 second Generic expiration timer to Amaterasu_ExplosionDummy[Amaterasu_Integer[3]]
                                                Custom script:   call RemoveLocation (udg_Amaterasu_TargetPosition[udg_Amaterasu_Integer[3]])
                                                Custom script:   call DestroyGroup (udg_Amaterasu_DummyGroup[udg_Amaterasu_Integer[3]])
                                            Else - Actions
                                                Set Amaterasu_TargetPosition[Amaterasu_Integer[3]] = (Position of Amaterasu_Target[Amaterasu_Integer[3]])
                                                Set Amaterasu_DamageGroup[Amaterasu_Integer[3]] = (Units within Amaterasu_DamageRange[Amaterasu_Integer[3]] of Amaterasu_TargetPosition[Amaterasu_Integer[3]] matching (((Matching unit) belongs to an enemy of (Owner of Amaterasu_Caster[Amaterasu_Integer[3]])) Equal to True))
                                                Unit Group - Pick every unit in Amaterasu_DamageGroup[Amaterasu_Integer[3]] and do (Actions)
                                                    Loop - Actions
                                                        Set Amaterasu_DamagedUnits[Amaterasu_Integer[3]] = (Picked unit)
                                                        Unit - Cause Amaterasu_Caster[Amaterasu_Integer[3]] to damage Amaterasu_DamagedUnits[Amaterasu_Integer[3]], dealing Amaterasu_Damage[Amaterasu_Integer[3]] damage of attack type Amaterasu_AttackType[Amaterasu_Integer[3]] and damage type Amaterasu_DamageType[Amaterasu_Integer[3]]
                                                Unit - Unpause Amaterasu_Target[Amaterasu_Integer[3]]
                                                Custom script:   call RemoveLocation (udg_Amaterasu_TargetPosition[udg_Amaterasu_Integer[3]])
                                                Set Amaterasu_Integer[1] = 0
                    Else - Actions
                        Unit - Unpause Amaterasu_Target[Amaterasu_Integer[3]]
                        Set Amaterasu_Integer[1] = 0
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Amaterasu_Integer[1] Equal to 0
            Then - Actions
                Set Amaterasu_Integer[2] = 0
                Trigger - Turn off (This trigger)
            Else - Actions
và cho e hỏi thêm làm thế nào để phân thân đánh mất máu được
 
làm thế nào để creep ban ngày cũng ngủ
 
Cho mình hỏi là mình muốn làm 1 cái script nho nhỏ, để khi mình mua 1 món đồ, thì nó sẽ create 1 món đồ khác tương ứng với món đồ đó (mình set từ trước, ví dụ mua đồ I000 thì ra thêm I001), thì bây giờ mình nên sử dụng liên tiếp mấy cái If then (textmacro) hay nên xài Hashtable để check?

Edited:
Em xài Table3.0 ngon rồi ^^
 
Chỉnh sửa cuối:
[Yami];17767366 nói:
Cho mình hỏi là mình muốn làm 1 cái script nho nhỏ, để khi mình mua 1 món đồ, thì nó sẽ create 1 món đồ khác tương ứng với món đồ đó (mình set từ trước, ví dụ mua đồ I000 thì ra thêm I001), thì bây giờ mình nên sử dụng liên tiếp mấy cái If then (textmacro) hay nên xài Hashtable để check?

Dùng 3 biến là đủ:
- Item1[array]: item type.
- Item2[array]: item type.
- TotalItem: integer.
Item1 là các item khi mua, Item2 là các item sẽ tạo tương ứng với Item1. TotalItem là tổng số item mà bạn có.
Ví dụ mình buy Sword, sẽ tạo thêm Shield, buy Armor, sẽ create thêm Helmet, thì sẽ có trigger sau:
Mã:
    Item Setup
Event:
- Elapes 0s game time
Action:
- Set [COLOR="Red"]Item1[/COLOR][1] = Sword
- Set [COLOR="Blue"]Item2[/COLOR][1] = Shield
- Set [COLOR="Red"]Item1[/COLOR][2] = Armor
- Set [COLOR="Blue"]Item2[/COLOR][2] = Helmet
- Set TotalItem = 2 // vì chỉ có 2 item
Mã:
     Create Item
Event:
- Unit acquired a item
Action:
 For loop integer A from 1 to TotalItem do action
     If/then/else
       If - Condition:
          Item type of Item being manipulated equal to Item1[integerA]
       Then - Action:
          Hero - Create Item2[integerA] and give it to triggering unit.
Lưu ý là Item1 và Item2 phải tương ứng với nhau.

Edited: mãi mê viết không để ý bạn ấy đã edited :|
 
làm thế nào để creep ban ngày cũng ngủ

1 cách đơn giản : khi create cho nó dính skill ăn ngũ 4ever :"> đập rùi là nó tỉnh giấc :-j
 
1 cách đơn giản : khi create cho nó dính skill ăn ngũ 4ever :"> đập rùi là nó tỉnh giấc :-j

chán bác này quá =.=, thế k đập nữa nó cũng thức k ngủ nữa :)) chán nhỉ k biết chỉnh cái time sleep ấy ở đâu mò mãi k ra
 
@LeoNguyen: Tức là dùng Loop huh :D. Cám ơn bạn ^^
 
có ai biết cách load WE nhanh hơn ko -_-
cả cái chuyển skill từ active sag passive luôn nhé
thanks nhiều ^:)^
 
Chỉnh sửa cuối:
Mình down icon trên hive, tên Icon bị trùng với tên icon trong war khi cho icon vô thì icon down zề chẳng khác gì icon trong war down như ko. Các bác khắc phục dùm, Thanks
 
có ai biết cách load WE nhanh hơn ko -_-
cả cái chuyển skill từ active sag passive luôn nhé
thanks nhiều ^:)^

bỏ đánh dấu Window \ Brush List
vẫn chậm thì chịu, xem lại máy
việc chuyển thì, cụ thể là chuyển ability, thường thì vụ này không khả thi

Mình down icon trên hive, tên Icon bị trùng với tên icon trong war khi cho icon vô thì icon down zề chẳng khác gì icon trong war down như ko. Các bác khắc phục dùm, Thanks

đổi tên icon down về.
 
AI làm hộ mình cái demo skill 3 của súng với nhỉ?
 
Các bạn có ai có system Talent Tree không cho mình xin với!Chơi map Tkok mà thấy phát thèm!:">
 
Có cách nào để skill passive thể hiện là đang xoay cooldown không ạ =))
 
cho mình hỏi vài câu :
+ Có thể add vĩnh viễn 1 ability cho Hero hay Unit có ability dạng Metamorphsis từ trước . Mình đã thử add 1 ability và sau khi hóa lên rồi trở về hình dạng bt thì mất ability đã add này :|
+ 2 skill Evasion có stack vs nhau :-? .VD: của item và skill có sẵn.
+ Skill "phá nhà" của Tinker ( đại loại là đánh vào nhà thì thấm hơn ) có thể áp dụng trên Unit , và nó có stack vs critical strike :-? ?
+ Dota con Medusa có skill bắn ra 3 mũi tên ( Barage kiểu active / deactive ) , nếu active sẽ bị giảm damage theo % nhưng bắn được 3 con một lúc ( thấy tooltip nó viết vậy chả biết nó có giảm hay ko :D ) . Làm thế nào để giảm damage được như vậy :-?
+ ability Spellbook , nếu sử dụng nhiều ability Spellbook này trên 1 unit (vd: book1 có : a , b , c ; book2 có : d , e , f ) thì nó bị trùng các ability trong spell vào nhau vì đây là 1 spell duy nhất và khá đặc biệt , ai sử dụng nhiều chắc hiểu trùng là như thế nào .Làm thế nào để khắc phục.:|
+ Mình tạo 1 unit có 1 skill autocast và 1 skill critical strike , thỉnh thoảng đang dùng autocast thì nó critical strike , nghe thì thấy thích đấy nhưng đòn critical strike này ko có tác dụng của skill autocast 8-}.Vd Hero này nhặt được 1 item có ability Critical Strike , thì nó chỉ Crit của skill ban đầu chứ item chả có tác dụng gì , tắt autocast thì Crit của skill lẫn item đều hoạt động bt .Có ai bị như mình ko :D và tại sao lại có sự khác biệt này ?
 
Chỉnh sửa cuối:
[Yami];17776193 nói:
Có cách nào để skill passive thể hiện là đang xoay cooldown không ạ =))
Mình nghĩ là làm như sau. Tạo skill active bình thường. nghĩa là có cooldown. Sau đó tạo một trigger khi unit tự begin cast thì bắt unit stop. Và tạo trigger để sử dụng skill khi cần thiết là xong.

Goldviper hỏi nhưng mình chỉ biết vài cái. Trả lời bạn vài cái vậy.
Có thể add vĩnh viễn 1 ability cho Hero hay Unit có ability dạng Metamorphsis từ trước . Mình đã thử add 1 ability và sau khi hóa lên rồi trở về hình dạng bt thì mất ability đã add này
- Có. Bạn add ability đó ở cả unit gốc và unit chuyển thành.
Dota con Medusa có skill bắn ra 3 mũi tên ( Barage kiểu active / deactive ) , nếu active sẽ bị giảm damage theo % nhưng bắn được 3 con một lúc ( thấy tooltip nó viết vậy chả biết nó có giảm hay ko ) . Làm thế nào để giảm damage được như vậy
- Mình sẽ add skill + damage theo % và cho nó dấu "-" (Shift và -10%)
 
Chỉnh sửa cuối:
AI cho hỏi cách làm skill 1 của tiny với? mình đã dùng thử base từ cluster nhưng ko phải, skill này của tiny (avalanche) ko phải là 1 skill channel mà nó dùng hàm loop nhưng mình k biết dùng thế nào
 
cho mình hỏi vài câu :
+ Có thể add vĩnh viễn 1 ability cho Hero hay Unit có ability dạng Metamorphsis từ trước . Mình đã thử add 1 ability và sau khi hóa lên rồi trở về hình dạng bt thì mất ability đã add này :|
+ 2 skill Evasion có stack vs nhau :-? .VD: của item và skill có sẵn.
+ Skill "phá nhà" của Tinker ( đại loại là đánh vào nhà thì thấm hơn ) có thể áp dụng trên Unit , và nó có stack vs critical strike :-? ?
+ Dota con Medusa có skill bắn ra 3 mũi tên ( Barage kiểu active / deactive ) , nếu active sẽ bị giảm damage theo % nhưng bắn được 3 con một lúc ( thấy tooltip nó viết vậy chả biết nó có giảm hay ko :D ) . Làm thế nào để giảm damage được như vậy :-?
+ ability Spellbook , nếu sử dụng nhiều ability Spellbook này trên 1 unit (vd: book1 có : a , b , c ; book2 có : d , e , f ) thì nó bị trùng các ability trong spell vào nhau vì đây là 1 spell duy nhất và khá đặc biệt , ai sử dụng nhiều chắc hiểu trùng là như thế nào .Làm thế nào để khắc phục.:|
+ Mình tạo 1 unit có 1 skill autocast và 1 skill critical strike , thỉnh thoảng đang dùng autocast thì nó critical strike , nghe thì thấy thích đấy nhưng đòn critical strike này ko có tác dụng của skill autocast 8-}.Vd Hero này nhặt được 1 item có ability Critical Strike , thì nó chỉ Crit của skill ban đầu chứ item chả có tác dụng gì , tắt autocast thì Crit của skill lẫn item đều hoạt động bt .Có ai bị như mình ko :D và tại sao lại có sự khác biệt này ?

->Về vụ Evasion
-Nếu như mình không nhầm thì evasion không stack với nhau. 1 unit, giả sử có 3 skill evasion thì khi bị đánh, nó sẽ check qua % của 3 skill riêng biệt, nếu không dính % thằng này thì sẽ có khả năng dính % thằng khác.

AI cho hỏi cách làm skill 1 của tiny với? mình đã dùng thử base từ cluster nhưng ko phải, skill này của tiny (avalanche) ko phải là 1 skill channel mà nó dùng hàm loop nhưng mình k biết dùng thế nào

Con Tiny có fake skill (là skill trưng ra cho hero), khi cast skill này, nó sẽ tạo ra 1 dummy dùng cluster.
 
[Yami];17776193 nói:
Có cách nào để skill passive thể hiện là đang xoay cooldown không ạ =))

Mình chỉ biết 2 skill có khả năng này.

"Orb of Lightning (new)" : Trong đó quay cooldown là skill trong phần Data - Effect Ability. Nhưng skill "orb of lightning (new)" là skill được tự động active khi unit mang skill này attack.
Reincarnation: cũng là passive và tự cooldown (chỉ khi unit die)
Còn như trong dota có skill cuối của con Abaddon chả hiểu nó quay kiểu gì, kể cả lúc đang đứng đơ ...
Ai chỉ giùm thắc mắc này ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
 
Mình chỉ biết 2 skill có khả năng này.

"Orb of Lightning (new)" : Trong đó quay cooldown là skill trong phần Data - Effect Ability. Nhưng skill "orb of lightning (new)" là skill được tự động active khi unit mang skill này attack.
Reincarnation: cũng là passive và tự cooldown (chỉ khi unit die)
Còn như trong dota có skill cuối của con Abaddon chả hiểu nó quay kiểu gì, kể cả lúc đang đứng đơ ...
Ai chỉ giùm thắc mắc này ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^

Skill cuối Abaddon là skill active mà?
 
Status
Không mở trả lời sau này.
Back
Top