slotindia

Bu mənim reddit -də yazdığım ilk yazıdır. Altında və ya üstündə bilməyənlər üçün, oyunun ev sahibinin iki tərəfli iki tərəfli (/rulon 1-6 və ya Goblin Zar Oyuncağı) yuvarlandığı bir qumar oyunudur və heç vaxt altından, üstündən və ya yeddisinə zəng edirsən. Bacarıq Nailiyyətləri Əlaqələr əlkimya Aliance ittifaqı Alpha alts Arathi hövzəsi Arxeologiya arena Arena video bələdçisi Argent Tourney zirehləri Armorsmith art Auction House AV zəhmli döyüş meydanı strategiyası ilə mübarizə aparır. MMORPG.com, World of Warcraft klaviatura ilə Z-lövhə qazanmaq üçün bir kompo hazırlayır (bilirsiniz, dəyişdirilə bilən klaviatura bindirmələri olan o böyük, sıx-sıx klaviaturalardan biri). WoW Gold Guide, WoW Exploits üçün Pulsuz World of Warcraft BirliyiWoW Hacks, WoW Proqramları və WoW Botları. Qeydiyyat tələb olunmadan.

World of Warcraft -ı heç yaşamamışam. Orijinal Warcraft seriyası və Diablo daxil olmaqla, buraxılmadan əvvəl və sonra digər Blizzard oyunları oynadım. Tamamilə xatırlaya bilmədiyim səbəblərdən WoW üzərindən keçdim. "Klassik" ətrafında şırınga əsnasında bir anlıq "pərakəndə satış" sınadım və yeni bir evə köçdüyüm üçün birdən dayandım. "Vanil" serverləri öyrəndikdən sonra yenidən oynamaq istəyimlə qarşılaşdım, ancaq rəsmi serverləri gözləməyi öz üzərimə götürmüşdüm. Klassik nəhayət 26 Avqust 2019 -cu ildə istifadəyə verildi və bir ömür boyu iki dəfə təcrübəni qaçırmamaq üçün qoşuldum.

Qrupumun ilk oyunu zamanı dəqiqələr keçdi və söhbət qurmaq istədikləri bütün əlavələr haqqında başladı. Məndən fərqli olaraq, son on beş il ərzində həm vanil, həm də pərakəndə olaraq oynayıb -oynayırdılar. Heç bir fikrim yox idi, qaşınmadan əvvəl bir neçə dəfə oturdum. Orada hansı əlavələr var idi və mənim üçün nə edə bilərdilər? Hər kəsin o qədər təcrübəsi vardı ki, boşluğu aradan qaldırmağın ədalətli olduğunu düşündüm. Şirniyyat mağazasında uşaq kimi hiss edərkən bir neçə əlavə qurdum. Bütün çatışmazlıqlarımla bağlı olduğum müddətdə möhkəm bağlandım.

Sonra, heç bir yerimdən maraqlanmam ən yaxşısını aldı. Bu işlər necə işləyir ?!

Bu məqalə, proqram inkişaf etdirmə mövzusunda ən azı bir neçə əsas biliyinizə sahib olduğunuzu və ən azı World of Warcraft addon sisteminin necə işlədiyi ilə maraqlandığınızı güman edir. Mən peşə üzrə bir proqram mühəndisiyəm, amma əvvəllər heç bir oyun əlavə yazmamışam, buna görə də səndə də bu tələb yoxdur. Oyunda bir makro istifadə etmisinizsə və ya yazmısınızsa, artıq irəlidəsiniz.

İnkişaf mühitinin qurulması

Bu addonu inkişaf etdirmək üçün redaktora ehtiyacımız olacaq. Köhnə dərsliklər sizə işləyəcək ən sadə mətn redaktorlarını tövsiyə edəcək, amma bundan daha yaxşı edə bilərik. Hələ bir seçiminiz yoxdursa, Microsoft Visual Studio Kodunu yükləməyi məsləhət görürəm. Bu səfər üçün kifayət qədər çox olmalı və gələcək proqramlaşdırma cəhdlərini təmin etməlidir. Həm Lua, həm də World of Warcraft dəstəyini əks etdirən vscode plaginləri ilə yolları keçdim, amma redaktor burada lazım olanları əldə etmək üçün kifayətdir. Mövcud uzantıları araşdırın və onların faydalılığı barədə özünüz qərar verin.

Addon üçün bir qovluq yaratmaq

Layihənizi uzun müddət necə idarə etməyiniz sizə bağlıdır. Kodunuzu idarə etmək üçün GitHub -dan istifadə etməyi və yalnız bir əlavə skriptlə yeni bir versiyanı sınamağa hazır olduğunuzda yalnız yerli addon qovluğunuzu yeniləməyi məsləhət görürəm. Hələlik yeni başladığımız üçün, yalnız Addons qovluğundan çalışaq.

Varsayılan quraşdırma yerini dəyişdirməməyiniz şərtilə World of Warcraft kataloqu Windows -da C: Program Files və ya C: Program Files (X86) və ya Mac -da / Applications / -də yerləşəcəkdir. Qurduqlarınızdan asılı olaraq həmin qovluqda _classic_ və _retail_ və _ptr_ qovluqlarını görə bilərsiniz. _Classic_/Interface/Addons açın və Sandbox qovluğu yaradın. Bir əlavə doğuldu!

Məzmun cədvəlinin yaradılması

Sandbox qovluğunda Sandbox.toc adlı yeni bir mətn faylı yaradın. Bu fayl WoW müştəri addon haqqında lazım olan məlumatları təmin edir. Məsələn, bir JavaScript layihəsində package.json -a baxmısınızsa, bu da oxşar məqsədə xidmət edir.

Faylı aşağıdakıları əlavə edin:

İnterfeys üçün doğru dəyəri aşağıdakı əmri işlədərək oyunda tapa bilərsiniz: /run print ((seçin (4, GetBuildInfo ())))); Yazı zamanı klassik hazırda 11302 -dir. Pərakəndə satış və ya vanili hədəf almaq niyyətindəsinizsə, bunun dəyərini yenilədiyinizə əmin olun.

Bunun ardınca, Başlığın, Qeydlərin, Müəllifin və Versiyanın öz -özünə izah olunduğuna inanıram. Toc fayllarında müşahidə etdiyim bir neçə başqa dəyər var, bunları tapmaq üçün digər əlavələrə baxmağı məsləhət görürəm.

Son xətt Sandbox.lua, həqiqi kodun saxlanılacağı bir göstəricidir. Ən azı bir fayl tələb olunur, lakin daha böyük plaginlər üçün burada birdən çox fayla istinad edilə bilər və hamısı iş vaxtı yüklənəcək.

Maraqdan dolayı qovluq adlarını, fayl adlarını dəyişməklə və toc faylından daha çox detalı silməklə oynadım. Əlavənin işləməməsinə səbəb olan çox şey yox idi. Ətraflı bir məzmun cədvəlinə sahib olmaq mütləq yaxşı bir tətbiq olacaq, buna görə yuxarıda göstərilənləri minimum olaraq tövsiyə edərdim.

Bəzi kod yazmaq

World of Warcraft əlavələri, özünü "güclü, səmərəli, yüngül, quraşdırıla bilən bir skript dili" olaraq təqdim edən Lua dilində yazılmışdır. Kəmərinizin altında ən azı bir dil varsa, Lua almaq üçün çox səy göstərməməlidir. Əks təqdirdə, öyrənmək üçün hələ də əla bir ana dili olacaq.

Lua -da kodlamağa başlamaq üçün əvvəllər yaratdığımız Sandbox qovluğunda Sandbox.lua faylı yaradın və aşağıdakı kodu əlavə edin:

Əlavə olaraq aşağıdakı kod nümunələrindən birini seçin və faylın sonuna əlavə edin:

Sınaq

Oyunu açmağın vaxtıdır ... Oynamaq olmaz! Diqqət! Oyuna girəndə iki şeydən biri baş verməlidir. A Seçimini seçmisinizsə, "Salam Dünya!" qrafik pəncərədə göstərilir:

Seçim B -ni seçsəniz, nəticələr bir az daha sirlidir. Qrifonlar hara getdi?

Təbrik edirik! İlk addon tamamlandı!

Əsaslardan kənarda

Bir addon daxilində edilə biləcək daha çox ümumi proqramlaşdırma var, amma mövzuya istinad etmək üçün artıq çoxlu kitablar olduğu üçün burada Luanın dərinliyinə getməyəcəyəm. World of Warcraft Əlavələri ilə Başlayan Lua və World of Warcraft Proqramlaşdırması: World of Warcraft üçün xüsusi olaraq WoW Əlavələri Yaratmaq üçün Bələdçi və İstinad kimi kitablar da var.

WoW müştərisində fərqli elementlərin necə yaradılacağını və ya dəyişdiriləcəyini öyrənmək çətindir və mövcud API haqqında bilik tələb edir. İndiyə qədər tapdığım API üçün ən yaxşı mənbələr Wowpedia və WoWWiki -dir.

Əlavə olaraq necə edəcəyinizi öyrənməyin əla yolu, quraşdırdığınız və ya internetdə mövcud olan əlavələrdəki Lua fayllarına baxmaqdır. Tövsiyə olun, yürüş fərqli World of Warcraft müştəri versiyalarında dəstəklənənlərə görə dəyişəcək.

Məhdudiyyətlər və həll yolları

Bu yazını yazarkən bir neçə maraqlı məhdudiyyət tapdım. Birincisi, məlumat əldə etmək və ya göndərmək üçün bir url -a zəng etməkdir. Mövcud olsaydı, olduqca ciddi pis niyyətli sui -istifadə edə bilərdi, buna görə orada olmadığına təəccüblənmirəm. Əlbəttə ki, bəzi əlavələr üçün faydalı olardı.

Digər bir məhdudiyyət, məlumatları xarici bir faylda saxlaya bilməmək və ya xarici bir fayldan oxumaqdır. Saxlanan dəyişənlərə girişiniz olduğu və istədiyiniz qədər çox Lua faylını yükləyə biləcəyiniz üçün bu addon inkişaf etdiriciləri üçün çox məhdud deyil. CensusClassicPlus kimi bəzi plaginlər, istifadəçilərin oyundan çıxdıqdan sonra SavedVariables qovluğundan fayl yükləməsini təmin etməklə bu məhdudiyyətin öhdəsindən gəlir.

İnternet üzərindən birbaşa ünsiyyət qura bilməmələrinə baxmayaraq, əlavələr hələ də bəzi fəndlərlə bir -biri ilə ünsiyyət qura bilirlər. Məsələn, RealMobHealth və ClassicThreatMeter, oyun qrupunda addon quraşdırılmış istifadəçilər arasında məlumat göndərmək üçün istifadə olunur.

Nəhayət, məhdudiyyət deyil, həm də oyun versiyaları arasındakı API arasındakı fərqlərdir. İndiyə qədər klassik, vanil (özündə birdən çox versiya) və pərakəndə satış API -si həmişə eyni deyil. Pluginlərin bütün platformalarda və ya hamısı bərabər olmadığından yalnız müəyyən bir platformada işləmək üçün sınaqdan keçirilməli və kodlaşdırılmalıdır. Uyğunlaşmağın bir yolu, GetBuildInfo () -dan alınan oyun versiyasına əsaslanaraq proqramlı olaraq addon icra yollarını dəyişdirmək olar.

Hata ayıklama

İnkişaf edərkən oyuna daxil olmağınız faydalı olacaq. Bu, addonda bəzi dəyişikliklər etmək, istifadəçi interfeysini yenidən başlatmaq və ayıklamaya davam etmək üçün işə salmaq /yenidən yükləmək üçün daxil olmaq və çıxmaq imkanı verir. Fayl adlarını və ya toc faylını dəyişdirməklə bir şey etmədiyiniz təqdirdə dəyişikliklərinizin əksəriyyəti əks olunacaq. Kodlaşdırma sessiyanız zamanı scriptErrors 1 -i icra etmək /konsollaşdırmaq da faydalı olacaq ki, Lua səhvləri baş verdikdə dərhal göstərilsin. Normal oyuna dönməzdən əvvəl /console scriptErrors 0 istifadə edərək söndürməyi unutmayın. Həmişə olduğu kimi, çap və mesaj funksiyaları sizin dostunuz olacaq! Nəhayət, "hatalara baxmaq prosesini asanlaşdıran" BugSack və BugGrabber daxil olmaqla əlavə köməkçi ola biləcək bəzi maraqlı görünüşlü əlavələr də var.

Test

Əlavəniz hər hansı bir möhkəm test nümunəsini əsaslandıracaq qədər böyüyə bilməsə də, hər şey spagettiyə çevrilməzdən əvvəl ən azı bəzi əsas test strategiyalarını nəzərdən keçirmək yaxşı bir fikirdir. Nümunə addonuna daxil olan quruluş, əl əmrləri işlədərək funksiyaların əllə sınanmasına imkan verir, məsələn:

Mövcud olan təəccüblü bir seçim "World of Warcraft əlavələriniz üçün vahid testlərini asanlıqla yazmağa imkan verən və onları izləmək üçün bir interfeys təmin edən" WowUnitdir. Yəqin ki, sınaq tələb edən əksər əlavələr üçün ən yaxşı seçimdir.

Nəhayət, kifayət qədər daxili məntiqə malik əlavələr üçün, WuW müştərisinin işləməsini tələb etmədən, Luanın özü addonun sınanması üçün istifadə oluna bilər. Bu, WoW API -nin bəzi hissələrini lağa qoymağı və testlərinizi aparmaq üçün Lua tərcüməçisindən istifadə etməyi tələb edir. Ən inkişaf etmiş seçim olsa da, ən genişləndirilə bilər.

Nəşriyyat

Əlavələrin əllə əldə edilməsi və əllə quraşdırılması lazım olduğunu düşündüm. Lakin Twitch müştəri avtomatik olaraq sizin üçün əlavələr quraşdıra bilər və müştərilərindən istifadə edərək maşınlar arasında sinxronizasiya edə bilər. İstifadə etmək üçün axınçı olmaq lazım deyil. Çox oyun üçün əlavələr kataloqu olan Curseforge ilə birlikdə işləyir. Ən populyar əlavələr üçün milyonlarla yükləmə ilə, ifşa almaq üçün mütləq nəşr etməyi məsləhət görürəm. Əlavə olaraq başqalarının əməkdaşlıq etməsinə və əlavənizi saxlamasına kömək etmək üçün GitHub -dan istifadə etməyi məsləhət görürəm. Bir addon yaratmaq üçün ilham alırsınızsa, burada bir layihə yaratmaq və təqdim etmək üçün təlimatlar verilmişdir.

Son Fikirlər

World of Warcraft -da addonların necə işlədiyini öyrənmək üçün bu məqaləyə başladım. Kəşf etdiyim şey, mənim üçün mövcud olan bir inkişaf mühitindən gözlədiyim bütün vasitələrə malik möhkəm bir çərçivə idi. Özümü oyun oynamaqla başlıq altına baxmağa davam etmək arasında parçalandığımı gördüm. WoW üçün artıq mövcud olan çoxsaylı əlavələr var, amma rastlaşdığım heç bir şeyin hamısının sonu olmadığını hiss etməmişəm. Daha çox işlər görülə bilər və inkişaf etdirmək üçün xeyli yer var. Bu məqaləyə olan rəy müsbət olarsa, bu mövzuda bir sıra məqalələr yazmağı düşünürəm.

World of Warcraft -ı heç yaşamamışam. Orijinal Warcraft seriyası və Diablo daxil olmaqla, buraxılmadan əvvəl və sonra digər Blizzard oyunları oynadım. Tamamilə xatırlaya bilmədiyim səbəblərdən WoW üzərindən keçdim. "Klassik" ətrafında şırınga əsnasında bir anlıq "pərakəndə satış" sınadım və yeni bir evə köçdüyüm üçün birdən dayandım. "Vanil" serverləri öyrəndikdən sonra yenidən oynamaq istəyimlə qarşılaşdım, ancaq rəsmi serverləri gözləməyi öz üzərimə götürmüşdüm. Klassik nəhayət 26 Avqust 2019 -cu ildə istifadəyə verildi və bir ömür boyu iki dəfə təcrübəni qaçırmamaq üçün qoşuldum.

Qrupumun ilk oyunu zamanı dəqiqələr keçdi və söhbət qurmaq istədikləri bütün əlavələr haqqında başladı. Məndən fərqli olaraq, son on beş il ərzində həm vanil, həm də pərakəndə olaraq oynayıb -oynayırdılar. Heç bir fikrim yox idi, qaşınmadan əvvəl bir neçə dəfə oturdum. Orada hansı əlavələr var idi və mənim üçün nə edə bilərdilər? Hər kəsin o qədər təcrübəsi vardı ki, boşluğu aradan qaldırmağın ədalətli olduğunu düşündüm. Şirniyyat mağazasında uşaq kimi hiss edərkən bir neçə əlavə qurdum. Bütün çatışmazlıqlarımla bağlı olduğum müddətdə möhkəm bağlandım.

Sonra, heç bir yerimdən maraqlanmam ən yaxşısını aldı. Bu işlər necə işləyir ?!

Bu məqalə, proqram inkişaf etdirmə mövzusunda ən azı bir neçə əsas biliyinizə sahib olduğunuzu və ən azı World of Warcraft addon sisteminin necə işlədiyi ilə maraqlandığınızı güman edir. Mən peşə üzrə bir proqram mühəndisiyəm, amma əvvəllər heç bir oyun əlavə yazmamışam, buna görə də səndə də bu tələb yoxdur. Oyunda bir makro istifadə etmisinizsə və ya yazmısınızsa, artıq irəlidəsiniz.

İnkişaf mühitinin qurulması

Bu addonu inkişaf etdirmək üçün redaktora ehtiyacımız olacaq. Köhnə dərsliklər sizə işləyəcək ən sadə mətn redaktorlarını tövsiyə edəcək, amma bundan daha yaxşı edə bilərik. Hələ bir seçiminiz yoxdursa, Microsoft Visual Studio Kodunu yükləməyi məsləhət görürəm. Bu səfər üçün kifayət qədər çox olmalı və gələcək proqramlaşdırma cəhdlərini təmin etməlidir. Həm Lua, həm də World of Warcraft dəstəyini əks etdirən vscode plaginləri ilə yolları keçdim, amma redaktor burada lazım olanları əldə etmək üçün kifayətdir. Mövcud uzantıları araşdırın və onların faydalılığı barədə özünüz qərar verin.

Addon üçün bir qovluq yaratmaq

Layihənizi uzun müddət necə idarə etməyiniz sizə bağlıdır. Kodunuzu idarə etmək üçün GitHub -dan istifadə etməyi və yalnız bir əlavə skriptlə yeni bir versiyanı sınamağa hazır olduğunuzda yalnız yerli addon qovluğunuzu yeniləməyi məsləhət görürəm. Hələlik yeni başladığımız üçün, yalnız Addons qovluğundan çalışaq.

Varsayılan quraşdırma yerini dəyişdirməməyiniz şərtilə World of Warcraft kataloqu Windows -da C: Program Files və ya C: Program Files (X86) və ya Mac -da / Applications / -də yerləşəcəkdir. Qurduqlarınızdan asılı olaraq həmin qovluqda _classic_ və _retail_ və _ptr_ qovluqlarını görə bilərsiniz. _Classic_/Interface/Addons açın və Sandbox qovluğu yaradın. Bir əlavə doğuldu!

Məzmun cədvəlinin yaradılması

Sandbox qovluğunda Sandbox.toc adlı yeni bir mətn faylı yaradın. Bu fayl WoW müştəri addon haqqında lazım olan məlumatları təmin edir. Məsələn, bir JavaScript layihəsində package.json -a baxmısınızsa, bu da oxşar məqsədə xidmət edir.

Faylı aşağıdakıları əlavə edin:

İnterfeys üçün doğru dəyəri aşağıdakı əmri işlədərək oyunda tapa bilərsiniz: /run print ((seçin (4, GetBuildInfo ())))); Yazı zamanı klassik hazırda 11302 -dir. Pərakəndə satış və ya vanili hədəf almaq niyyətindəsinizsə, bunun dəyərini yenilədiyinizə əmin olun.

Bunun ardınca, Başlığın, Qeydlərin, Müəllifin və Versiyanın öz -özünə izah olunduğuna inanıram. Toc fayllarında müşahidə etdiyim bir neçə başqa dəyər var, bunları tapmaq üçün digər əlavələrə baxmağı məsləhət görürəm.

Son xətt Sandbox.lua, həqiqi kodun saxlanılacağı bir göstəricidir. Ən azı bir fayl tələb olunur, lakin daha böyük plaginlər üçün burada birdən çox fayla istinad edilə bilər və hamısı iş vaxtı yüklənəcək.

Qumar Addon Vay

Maraqdan dolayı qovluq adlarını, fayl adlarını dəyişməklə və toc faylından daha çox detalı silməklə oynadım. Əlavənin işləməməsinə səbəb olan çox şey yox idi. Ətraflı bir məzmun cədvəlinə sahib olmaq mütləq yaxşı bir tətbiq olacaq, buna görə yuxarıda göstərilənləri minimum olaraq tövsiyə edərdim.

Bəzi kod yazmaq

World of Warcraft əlavələri, özünü "güclü, səmərəli, yüngül, quraşdırıla bilən bir skript dili" olaraq təqdim edən Lua dilində yazılmışdır. Kəmərinizin altında ən azı bir dil varsa, Lua almaq üçün çox səy göstərməməlidir. Əks təqdirdə, öyrənmək üçün hələ də əla bir ana dili olacaq.

Lua -da kodlamağa başlamaq üçün əvvəllər yaratdığımız Sandbox qovluğunda Sandbox.lua faylı yaradın və aşağıdakı kodu əlavə edin:

Əlavə olaraq aşağıdakı kod nümunələrindən birini seçin və faylın sonuna əlavə edin:

Sınaq

Oyunu açmağın vaxtıdır ... Oynamaq olmaz! Diqqət! Oyuna girəndə iki şeydən biri baş verməlidir. A Seçimini seçmisinizsə, "Salam Dünya!" qrafik pəncərədə göstərilir:

Seçim B -ni seçsəniz, nəticələr bir az daha sirlidir. Qrifonlar hara getdi?

Təbrik edirik! İlk addon tamamlandı!

Əsaslardan kənarda

Bir addon daxilində edilə biləcək daha çox ümumi proqramlaşdırma var, amma mövzuya istinad etmək üçün artıq çoxlu kitablar olduğu üçün burada Luanın dərinliyinə getməyəcəyəm. World of Warcraft Əlavələri ilə Başlayan Lua və World of Warcraft Proqramlaşdırması: World of Warcraft üçün xüsusi olaraq WoW Əlavələri Yaratmaq üçün Bələdçi və İstinad kimi kitablar da var.

WoW müştərisində fərqli elementlərin necə yaradılacağını və ya dəyişdiriləcəyini öyrənmək çətindir və mövcud API haqqında bilik tələb edir. İndiyə qədər tapdığım API üçün ən yaxşı mənbələr Wowpedia və WoWWiki -dir.

Əlavə olaraq necə edəcəyinizi öyrənməyin əla yolu, quraşdırdığınız və ya internetdə mövcud olan əlavələrdəki Lua fayllarına baxmaqdır. Tövsiyə olun, yürüş fərqli World of Warcraft müştəri versiyalarında dəstəklənənlərə görə dəyişəcək.

Məhdudiyyətlər və həll yolları

Casino Əlavə Vay Klassik

Bu yazını yazarkən bir neçə maraqlı məhdudiyyət tapdım. Birincisi, məlumat əldə etmək və ya göndərmək üçün bir url -a zəng etməkdir. Mövcud olsaydı, olduqca ciddi pis niyyətli sui -istifadə edə bilərdi, buna görə orada olmadığına təəccüblənmirəm. Əlbəttə ki, bəzi əlavələr üçün faydalı olardı.

Digər bir məhdudiyyət, məlumatları xarici bir faylda saxlaya bilməmək və ya xarici bir fayldan oxumaqdır. Saxlanan dəyişənlərə girişiniz olduğu və istədiyiniz qədər çox Lua faylını yükləyə biləcəyiniz üçün bu addon inkişaf etdiriciləri üçün çox məhdud deyil. CensusClassicPlus kimi bəzi plaginlər, istifadəçilərin oyundan çıxdıqdan sonra SavedVariables qovluğundan fayl yükləməsini təmin etməklə bu məhdudiyyətin öhdəsindən gəlir.

İnternet üzərindən birbaşa ünsiyyət qura bilməmələrinə baxmayaraq, əlavələr hələ də bəzi fəndlərlə bir -biri ilə ünsiyyət qura bilirlər. Məsələn, RealMobHealth və ClassicThreatMeter, oyun qrupunda addon quraşdırılmış istifadəçilər arasında məlumat göndərmək üçün istifadə olunur.

Nəhayət, məhdudiyyət deyil, həm də oyun versiyaları arasındakı API arasındakı fərqlərdir. İndiyə qədər klassik, vanil (özündə birdən çox versiya) və pərakəndə satış API -si həmişə eyni deyil. Pluginlərin bütün platformalarda və ya hamısı bərabər olmadığından yalnız müəyyən bir platformada işləmək üçün sınaqdan keçirilməli və kodlaşdırılmalıdır. Uyğunlaşmağın bir yolu, GetBuildInfo () -dan alınan oyun versiyasına əsaslanaraq proqramlı olaraq addon icra yollarını dəyişdirmək olar.

Casino Əlavə Edin Vay

Hata ayıklama

İnkişaf edərkən oyuna daxil olmağınız faydalı olacaq. Bu, addonda bəzi dəyişikliklər etmək, istifadəçi interfeysini yenidən başlatmaq və ayıklamaya davam etmək üçün işə salmaq /yenidən yükləmək üçün daxil olmaq və çıxmaq imkanı verir. Fayl adlarını və ya toc faylını dəyişdirməklə bir şey etmədiyiniz təqdirdə dəyişikliklərinizin əksəriyyəti əks olunacaq. Kodlaşdırma sessiyanız zamanı scriptErrors 1 -i icra etmək /konsollaşdırmaq da faydalı olacaq ki, Lua səhvləri baş verdikdə dərhal göstərilsin. Normal oyuna dönməzdən əvvəl /console scriptErrors 0 istifadə edərək söndürməyi unutmayın. Həmişə olduğu kimi, çap və mesaj funksiyaları sizin dostunuz olacaq! Nəhayət, "hatalara baxmaq prosesini asanlaşdıran" BugSack və BugGrabber daxil olmaqla əlavə köməkçi ola biləcək bəzi maraqlı görünüşlü əlavələr də var.

Test

Əlavəniz hər hansı bir möhkəm test nümunəsini əsaslandıracaq qədər böyüyə bilməsə də, hər şey spagettiyə çevrilməzdən əvvəl ən azı bəzi əsas test strategiyalarını nəzərdən keçirmək yaxşı bir fikirdir. Nümunə addonuna daxil olan quruluş, əl əmrləri işlədərək funksiyaların əllə sınanmasına imkan verir, məsələn:

Mövcud olan təəccüblü bir seçim "World of Warcraft əlavələriniz üçün vahid testlərini asanlıqla yazmağa imkan verən və onları izləmək üçün bir interfeys təmin edən" WowUnitdir. Yəqin ki, sınaq tələb edən əksər əlavələr üçün ən yaxşı seçimdir.

Nəhayət, kifayət qədər daxili məntiqə malik əlavələr üçün, WuW müştərisinin işləməsini tələb etmədən, Luanın özü addonun sınanması üçün istifadə oluna bilər. Bu, WoW API -nin bəzi hissələrini lağa qoymağı və testlərinizi aparmaq üçün Lua tərcüməçisindən istifadə etməyi tələb edir. Ən inkişaf etmiş seçim olsa da, ən genişləndirilə bilər.

Nəşriyyat

Əlavələrin əllə əldə edilməsi və əllə quraşdırılması lazım olduğunu düşündüm. Lakin Twitch müştəri avtomatik olaraq sizin üçün əlavələr quraşdıra bilər və müştərilərindən istifadə edərək maşınlar arasında sinxronizasiya edə bilər. İstifadə etmək üçün axınçı olmaq lazım deyil. Çox oyun üçün əlavələr kataloqu olan Curseforge ilə birlikdə işləyir. Ən populyar əlavələr üçün milyonlarla yükləmə ilə, ifşa almaq üçün mütləq nəşr etməyi məsləhət görürəm. Əlavə olaraq başqalarının əməkdaşlıq etməsinə və əlavənizi saxlamasına kömək etmək üçün GitHub -dan istifadə etməyi məsləhət görürəm. Bir addon yaratmaq üçün ilham alırsınızsa, burada bir layihə yaratmaq və təqdim etmək üçün təlimatlar verilmişdir.

Son Fikirlər

World of Warcraft -da addonların necə işlədiyini öyrənmək üçün bu məqaləyə başladım. Kəşf etdiyim şey, mənim üçün mövcud olan bir inkişaf mühitindən gözlədiyim bütün vasitələrə malik möhkəm bir çərçivə idi. Özümü oyun oynamaqla başlıq altına baxmağa davam etmək arasında parçalandığımı gördüm. WoW üçün artıq mövcud olan çoxsaylı əlavələr var, amma rastlaşdığım heç bir şeyin hamısının sonu olmadığını hiss etməmişəm. Daha çox işlər görülə bilər və inkişaf etdirmək üçün xeyli yer var. Bu məqaləyə olan rəy müsbət olarsa, bu mövzuda bir sıra məqalələr yazmağı düşünürəm.