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

Status
Không mở trả lời sau này.
cho mình hỏa lại giờ làm sao để player đỏ là computer để ra creep và player7 là computer mà khi vào bảng player 2 team trong game không hiện 2 pleyer này mà chỉ hiện từ player 2 màu xanh da trời. cho đến player 11 màu xám. trừ player xanh lá cây ra.

Scenario \ Player Properties, để Controller là None

map load xong thì phải chạy:

Custom Script: call SetPlayerController( udg_TempPlayer, MAP_CONTROL_COMPUTER )

để "TempPlayer" là computer
ngoài ra còn phải đặt ally/enemy cho player này nữa, sử dụng lệnh Player - Set Alliance

[Demo] Player Setup

YAN[asian];21543991 nói:
Có ai biết Tut nào hướng dẫn làm 1 cây cầu như trong các map Diablo III ko?

cầu thì có sẵn rồi mà?

như trong D3 thì phải có model, ngoài ra cần cả Pathing Map nữa
 
Cái này, ý bạn là tạo unit đó sẵn r` khi bắt đầu game delete nó đi để khi xài skill có dummy đó nó sẽ k lag nữa àk :-?

ờ ừm....
hekeke.png



map em làm giờ đang 12 mb muốn giảm dung lượng xuống thì làm gì ? em đã dùng wc3mapoptimizer mà k0 cải thiện dc nhiều . mà map thì chưa làm xong dự kiên là còn tăng mb nữa giờ phải sao ? :6cool_surrender:

xóa bớt các tệp bạn đã nhập đi vd như nhạc, custom file,... :1onion33:
lọc lại các tệp đã được nhập là blp và giảm chất lượng của nó xuống mức phù hợp để suy giảm bớt dung lượng bị chiếm trong map. Đồng thời xóa bớt hoặc tối ưu hóa bớt (thay model đó bằng model đã có sẵn và xóa model nặng ịch đó đi) các loại model không cần thiết. :cuteonion45:
bạn cần lưu ý rằng lần sau nếu muốn làm một map chơi LANable thì nên tính toán kỹ lưỡng mục nhập xuất trong map, độ lớn của map để tránh lưu lượng map vượt quá 8Mb sau khi nén lại bằng cách chương trình tối ưu hóa nhé!
HiHI.png
 
Hướng dẫn em cách làm 1 skill passve khi đánh 1 unit thì cho 10% cơ hội frost nova (gây damage, slow AoE). Nói tóm lại là 1 skill passive frost nova xảy ra khi attacking unit :D. Cám ơn!
 
cho no hỏi nhé, viết id trong WE, chỉ số % mình phải viết làm sao để nó hiển thị được nhỉ, các chỉ số khác no viết bt mà % lại không thấy xuất hiện, ai chỉ dùm với
 
^
là sao? chả hiểu bạn đang muốn nói gì luôn
ý bạn là viết dấu % ??? :|

---------- Post added at 10:25 ---------- Previous post was at 10:21 ----------

cho em hỏi sao trigger này hoạt động đc nhưng mà lúc nào cũng random ra con Troll khi player 1 nhấn -rd :|
Mã:
Set Radnom Hero
    Events
        Time - Elapsed game time is 0.00 seconds
    Conditions
    Actions
        Set Random_hero[1] = Paladin
        Set Random_hero[2] = Mountain King
        Set Random_hero[3] = Archmage
        Set Random_hero[4] = Blood Mage
        Set Random_hero[5] = Grom Hellscream
        Set Random_hero[6] = Grom Hellscream
        Set Random_hero[7] = Troll
random 1
    Events
        Player - Player 1 (Red) types a chat message containing -rd as An exact match
    Conditions
    Actions
        Unit - Create 1 Random_hero[(Random integer number between 1 and 7)] for (Triggering player) at (Center of Region 000 <gen>) facing Default building facing degrees
        Selection - Select (Last created unit)
        Trigger - Turn off (This trigger)
 
Cho e hỏi spell này :| dạng targetpoint. khi active rùi thì tất cả các unit địch trong AoE bị cast spell Soul Burn. khi ra khỏi fạm vi AoE thì remove buff đi.tất nhiên khi có bất cứ unit địch nào chạy zô trog AoE thì cast spell zô lun. zúp e vs thanks nhìu :D
 
bây giờ nè, một chỉ số ID ability có dạng như thế này <Amls,DataA1>, là dạng chỉ số bình thường, một số skill có dạng % như skill Trueshot aura , viết như trên thì nó chỉ xuất hiện số 0 mà thôi, giờ no mún mọi người chỉ cách viết làm sao cho nó hiển thị đúng mà thôi
 
bây giờ nè, một chỉ số ID ability có dạng như thế này <Amls,DataA1>, là dạng chỉ số bình thường, một số skill có dạng % như skill Trueshot aura , viết như trên thì nó chỉ xuất hiện số 0 mà thôi, giờ no mún mọi người chỉ cách viết làm sao cho nó hiển thị đúng mà thôi
các loại đó chỉ ghi được ở dạng <Alms,DataA1,%> nhé bạn

cho hỏi cách làm skill này, khi cứ giết 2 mạng người sẽ giúp cho mình hưởng dc 1 mạng thêm , tức là khi chết sẽ dc hồi sinh lại ( như Renaincation mà skill này là bonus hồi sinh theo lượng hero mà mình giết ) ...... maximum là 1/2/3 mạng
Cho hỏi thêm về con Geomancer trong DotA ...... ulti nó tạo ra n~ con y hệt nó, là type Hero hay Unit thế ạ ? .... bởi vì 1 trong 3 con chết là cả đám chết hết, nhưng khi ghi hiển thị ( Meepo - The Geomancer ( LEvel .... ) Has been slain ) thì chỉ có 1 chứ k fải 3 ..... mà khi 1 con up lv thì 3 con kia cũng bjk up ... v. có fải loại hero nhưng DotA dùng system hiển thị khác map thường k ạ ?

Quote .... và cho em hỏi luôn về cách làm Magic Ward trong DotA ( cái item khi đối thủ cast skill thì tăng thêm 1 charge, khi xài thì mất hết charge ấy )
 
^
là sao? chả hiểu bạn đang muốn nói gì luôn
ý bạn là viết dấu % ??? :|

---------- Post added at 10:25 ---------- Previous post was at 10:21 ----------

cho em hỏi sao trigger này hoạt động đc nhưng mà lúc nào cũng random ra con Troll khi player 1 nhấn -rd :|
Mã:
Set Radnom Hero
    Events
        Time - Elapsed game time is 0.00 seconds
    Conditions
    Actions
        Set Random_hero[1] = Paladin
        Set Random_hero[2] = Mountain King
        Set Random_hero[3] = Archmage
        Set Random_hero[4] = Blood Mage
        Set Random_hero[5] = Grom Hellscream
        Set Random_hero[6] = Grom Hellscream
        Set Random_hero[7] = Troll
random 1
    Events
        Player - Player 1 (Red) types a chat message containing -rd as An exact match
    Conditions
    Actions
        Unit - Create 1 Random_hero[(Random integer number between 1 and 7)] for (Triggering player) at (Center of Region 000 <gen>) facing Default building facing degrees
        Selection - Select (Last created unit)
        Trigger - Turn off (This trigger)

_ Tốt nhất set unit rồi random hero
_ Sau khi random phải khóa hero đó
 
^
cái này là copy từ map VLTK đấy :)). Bây giờ thắc mắc 2 chỗ. 1 là làm sao random xong player đó mất 1 lượng tiền. 2 là làm sao để mất hero đó 1 player đã chọn xong (giống dota)
 
^
cái này là copy từ map VLTK đấy :)). Bây giờ thắc mắc 2 chỗ. 1 là làm sao random xong player đó mất 1 lượng tiền. 2 là làm sao để mất hero đó 1 player đã chọn xong (giống dota)

copy từ pb nào thế ? 1.7 trở lại thì đừng có nói làm j :6cool_beat_brick:
Thử copy của 1.8 mới ra kia xem :))
 
^
1 sự xỉ nhục khá lớn :| (map VLTK ver mới có protect =.=)
qoute lại lần nữa, hướng dẫn cách làm 1 skill frost nova passive xảy ra khi hero có skill đó đánh vào 1 unit
 
Mình xin phép nói lại cho rõ:
- Chậm hơn so với array nhưng có những cái array ko làm được như là array 2 chiều và array với index là 1 số lớn
- Dùng hashtable thì chỉ có thể chơi map trên ver 1.24+ nhưng mà hầu như mọi người đều dùng thế này rồi. Còn ko thêm 1 cái comment là dùng trên bản này thì người chơi tự dùng switch ver là ổn
Tức là miễn là đừng dùng hashtable với tần suất lớn như là loop 0.03s 1 lần chả hạn thì ko sao cả. Và nhớ lưu ý là 1 hashtable gần như đã là đủ cho cả map nên đừng tạo quá nhiều hashtable nếu ko cần thiết là được

Ví dụ thay thế:
-Khi unit bị Player(0) chọn thì tạo timer chờ sau 3 giây giết unit đó
+ Tạo 2 biến array unit selectU[MAX_PLAYER] và array integer count[MAX_PLAYER], 1 biến timer
+ Nếu Player 1 chọn thì set unit[1]=TriggerUnit rồi start timer period 0.5s
+ function onPeriod: loop i ->MAX_PLAYER if unit!= null then count=count+1. Nếu count==6 thì set count=0 và kill unit

-khi hero đi lại gần cái trụ thì đc có 6 slot inventory, khi đi ra thì trả lại số slot cũ.
Cách 1: Vẫn dùng hashtable nhưng mà khi init trigger thì setup lun hero rawid nào thì có invID nào. Đến khi enter/leave region chỉ việc lấy ra từ hero rawid để remove/add
Cách 2: Dùng system unit indexer như AIDS hay UnitIndexer hoặc AutoIndex để lưu inv ability thay vì hashtable


Cho mình hỏi làm sao dùng 1 hashtable cho toàn bộ map đc ? theo mình biết ví dụ hashtable A lưu đc theo A[key1, key2] và chỉ dọn dữ liệu đc theo kiểu kiểu clear toàn bộ key2 của key1 bằng hàm
native FlushChildHashtable takes hashtable table, integer parentKey returns nothing
Nên lúc đầu mặc dù mình tính customspell1 sẽ lưu dữ liệu theo unit vào A[unitID,StringHash("Spell1")], customspell2 sẽ là A[unitID,StringHash("Spell2")],... nhưng lại gặp vấn đề lúc mình muốn FlushChildHashtable thì nó sẽ xóa hết cả :D, có cách nào chỉ xóa dữ liệu key2 ko? hay là ghi xóa xong ko cần dọn bằng FlushChildHashtable?
 
cho no hỏi nhé, một unit chỉ được add 4 ability, mún thêm ability thứ 5 thứ 6 có được không
 
Cho mình hỏi làm sao dùng 1 hashtable cho toàn bộ map đc ? theo mình biết ví dụ hashtable A lưu đc theo A[key1, key2] và chỉ dọn dữ liệu đc theo kiểu kiểu clear toàn bộ key2 của key1 bằng hàm

Nên lúc đầu mặc dù mình tính customspell1 sẽ lưu dữ liệu theo unit vào A[unitID,StringHash("Spell1")], customspell2 sẽ là A[unitID,StringHash("Spell2")],... nhưng lại gặp vấn đề lúc mình muốn FlushChildHashtable thì nó sẽ xóa hết cả :D, có cách nào chỉ xóa dữ liệu key2 ko? hay là ghi xóa xong ko cần dọn bằng FlushChildHashtable?

Mã:
native RemoveSavedInteger takes hashtable table, integer parentKey, integer childKey returns nothing

dùng nhiều hashtable cũng đc đâu có vấn đề gì? à mà phải nhớ là một map chỉ có thể dùng 255 hashtable thôi nhé (thật ra ko tới đc đâu =)))

cho no hỏi nhé, một unit chỉ được add 4 ability, mún thêm ability thứ 5 thứ 6 có được không

hero ability: 5 ability là tối đa (muốn add thêm thì... không được)
unit ability: không giới hạn (chỉ giới hạn số button trên UI, 7 thì phải)
 
Chỉnh sửa cuối:
hero ability: 5 ability là tối đa (muốn add thêm thì... không được)
unit ability: không giới hạn (chỉ giới hạn số button trên UI, 7 thì phải)

8 nếu bỏ attack button .
 
Mọi ng` cho mình hỏi, mình tạo 1 unit bay ( gốc từ unit bò ) vậy sửa dòng nào trong F6 để khi create = trigger nó giãn rộng ra, chứ ko dính 1 chùm lại với nhau ?
 
cho hỏi cách làm skill này, khi cứ giết 2 mạng người sẽ giúp cho mình hưởng dc 1 mạng thêm , tức là khi chết sẽ dc hồi sinh lại ( như Renaincation mà skill này là bonus hồi sinh theo lượng hero mà mình giết ) ...... maximum là 1/2/3 mạng
Cho hỏi thêm về con Geomancer trong DotA ...... ulti nó tạo ra n~ con y hệt nó, là type Hero hay Unit thế ạ ? .... bởi vì 1 trong 3 con chết là cả đám chết hết, nhưng khi ghi hiển thị ( Meepo - The Geomancer ( LEvel .... ) Has been slain ) thì chỉ có 1 chứ k fải 3 ..... mà khi 1 con up lv thì 3 con kia cũng bjk up ... v. có fải loại hero nhưng DotA dùng system hiển thị khác map thường k ạ ?

Quote .... và cho em hỏi luôn về cách làm Magic Ward trong DotA ( cái item khi đối thủ cast skill thì tăng thêm 1 charge, khi xài thì mất hết charge ấy )
Cho Em Quote lại, chưa được giải đáp ạ :-s
 
^Nói về dota thì nhiều cái khó hiểu lắm mà nhiều cái mình làm được cũng ko đơn giản. Cậu nghĩ cái gì đó đơn giản hơn 1 chút và làm nó đi đã.
Có ném cho cậu nguyên 1 spell gốc từ dota chắc gì cậu đã hiểu. Kĩ hơn 1 tí thì ko chỉ dota mà các map khác đều phải tự làm hết chứ ko phải "dùng cái gì khác" cả
Cast skill chính là event, tăng charge thì Item - Set charges remaining in (Last created item) to 1
 
Status
Không mở trả lời sau này.
Back
Top