HírekFejlesztői betekintések: Okos pa...

Fejlesztői betekintések: Okos pakli készítő

Borovi Bence | 2019.03.30 21:00
1596

okos pakli készítő Hearthstone

Üdvözlök mindenkit! Tian vagyok, vezető adattudós a Hearthstone csapatban és az okos pakli készítő tudományáról fogok beszélni, de először is kezdjük az egyszerűbb dolgokkal, hogy mi is ez a funkció.

 

Blizzard Entertainment cikkének a fordítása

Mi az okos pakli készítő?

Tudjuk, hogy egy új Hearthstone pakli készítése szórakoztató és megjutalmazó élmény a legtöbb tapasztalt játékos számára, de elképzelhető, hogy szünetet tartottál a játékban, vagy egy új játékos vagy, esetleg sietős a dolgot, vagy egy kis segítségre lenne szükséged a paklid feltuningolásához. Itt jön be a képbe az okos pakli készítő, melynek célja, hogy a nehéz dolgokat elintézze, te pedig egy népszerű és hatékony paklival a játékban lehess egy-két kattintás után!

Az okos pakli készítő használatához csak annyi a teendőd, hogy készítesz egy Standard paklit bármely kaszttal, akármennyi kártyával. Kattints a "Complete My Deck", vagy "Done" gombra és kitölti számodra a paklit a kiválasztott kártyáid alapján, csak olyan lapokat használva, amelyek a gyűjteményedben vannak. Például, ha kiválasztod Oondasta-t és a Play Dead-et, akkor az okos pakli készítő sok tényezőt figyelembe vesz, majd létrehozza a véleménye szerinti lehető legjobb paklit, mint például a népszerű Katherina Winterwisp Deathrattle Hunter-t.

okos pakli készítő Hearthstone

(megj.: Ebben a pakliban nem látok Kathrinát, aki egyébként is Kathrena Winterwisp lenne, de őt sem látom, hmm... - a szerk.)

Hogyan működik:

Mélyüljünk el a színfalak mögötti mérnöki munkában. Az okos pakli készítő rendszere rétegekből áll és minden egyes réteg további alrétegekből áll, amelyek azon dolgoznak, hogy létrehozzák a paklidat. Nézzük meg, hogy pontosan mit is csinálnak ezek a rétegek, hogy létrehozzák azt a paklit, amit szeretnél...

Az első pakli készítő réteg: A meta készítése

pakli tervezés HearthstoneA félreértések elkerülése érdekében gyorsan tisztázzuk, hogy mit is értünk "a meta" alatt. A meta röviden a "meta-játék", ami a ranglétrán látott jelenlegi paklik trendjeit írja le, különösen a Ranked módokban. Amikor egy sikeres paklit próbálunk készíteni, a legtöbb játékos megpróbálja a jelenlegi metát figyelemben tartani és olyan kártyákat beválogatni a pakliba, amelyekkel sikeresen megfoghatja a várható paklikat. Például egy fegyverekkel teli metában (ahol sok népszerű pakli fegyvereket használ), a paklik valószínűleg tartalmazni fogják az Acidic Swamp Ooze-t, vagy a Gluttonous Ooze-t, hogy elpusztítsák a fegyvereket.

A pakli készítés első rétegében (a meta réteg), megpróbáljuk a lehető legjobb paklit összeállítani az alapján, hogy mi népszerű most a metában, milyen lapok vannak már a paklidban és mi érthető el a gyűjteményedben. Annak a kiszámításához, hogy mi számít metának, egy algoritmust használunk, hogy csoportosítsuk az egyforma típussal rendelkező népszerű paklikat különböző alcsoportokba. Minden egyes alcsoport egy olyan paklit jelent, amit látunk a jelenlegi metában, mint például "Secret Hunter", "Dragon Priest", "Odd Paladin", stb. Ezeknek az alcsoportoknak a tartalmai kissé eltérhetnek, de összességében ugyanaz a pakli típus. Gépi tanulási kifejezéssel élve ezt "clustering"-nek nevezzük. Ez az algoritmus több millió variációnyi pakli adatát elemzi, ahol minden egyes pakli egy adatpontnak számít és minden egyes adatpont egy vektort ábrázol dimenziók százaiban. Ez az információ további matematikai megoldásokkal kombinálódik, majd az algoritmus dinamikusan kitölti a paklidat, amíg a pakli tele nem lesz, vagy a második réteg ("háttér kitöltés") nem aktiválódik.

Mivel a különböző ügyességi szinten lévő játékosok különböző paklikkal játszanak, a meta eltérő lesz a ranglétra különböző fokain. Ezt úgy kezeljük, hogy különböző alrétegeket hoztunk létre a meta pakli kitöltő folyamatban. Ha egy 20-as rang környéki játékos vagy, valószínűleg más meta paklit fogsz kapni, mint egy Legenda rangú játékos. Továbbá a meta jelentéseink sűrűn frissülnek, tehát a meta paklid mindig aktuális lesz.

Miután megpróbáltunk egy hatásos meta paklit létrehozni azzal, amit megadtál és a kártya gyűjteményed alapján, tovább mehetünk a második rétegre...

A második létrehozási réteg: A háttér kitöltési réteg

Ha a meta réteg nem tudott 30 kártyát összeállítani a gyűjteményed alapján, akkor jön be a képbe a második réteg, vagyis a "háttér kitöltési" réteg. Ez a réteg pakli szerelés Hearthstonegarantálja, hogy a paklid teljes lesz és a lehető legjobb elérhető kártyákat használja. Először is, ha arra jut, hogy nem tud hatékony meta paklit létrehozni a gyűjteményeddel, akkor visszatér arra, hogy a lehető legjobb paklit hozza ki a kártyáidból. Az az elképzelés áll emögött, hogy egy kiegyensúlyozott paklit hozzon létre jó kártyákkal és megfelelő managörbével. Beszélgessünk arról, hogyan döntjük el, hogy egy kártya jó-e a paklidnak.

Egyedi szinergiák és kombó lehetőségek feltételezése nélkül minden egyes kártya rendelkezik egy különálló "kártya erő" értékkel minden egyes kaszthoz, amint pakliba kerül. Ez a szám nem állandó és dinamikusan változik a jelenlegi pakli összetétel alapján.

Általánosságban három tényező határozza meg a kártya erejét:

  • Játékra gyakorolt hatás: Mennyit tesz hozzá a kártya a pakli győzelmi arányához.
  • Manaköltség kalap: Kártyák gyűjteménye ugyanazzal a manaköltséggel.
    • Ha a célunk az, hogy megtaláljunk egy kártyát, ami betöltene egy helyet az 1, vagy 2 Manás kalapban, akkor esélyes, hogy az Argent Squire egy jó választás lenne, de biztosan nem lenne az az 5 Manás kalapban.
  • Manaköltség kalap túltöltésének elkerülése.
    • Ha már van 10 kártya mindegyik manaköltség kalapban, akkor nem adunk hozzá többet, hacsak azok a kártyák nem lényegesen jobbak, mint az alternatívák.

A "háttér kitöltő" folyamat során dinamikusan választunk ki egy kártyát a legjobb kártya erővel és helyezzük be a pakliba. Matematikailag a kártya erő egy funkció, ami kifejezéseket tartalmaz a győzelmi-arányhoz való hozzájárulásról, továbbá tartalmaz több büntető kifejezést is. A célunk az, hogy minden egyes keresés során megtalálja a kártyát az összes megvalósítható megoldásból, ami maximalizálja az objektív funkciónkat.

Vegyes dolgok, szabályok, és korlátozások

pakli összerakás

A fejlett matematikától és gépi tanulási módszerektől eltekintve bevezettünk több minőség biztosítási szabályt ebben a két pakli létrehozó rétegben, hogy a paklid biztosan értelmes legyen. Például, ha Prince Keleseth már szerepel a befejezetlen paklidban, akkor megteszünk mindent, hogy elkerüljük a 2 Manás kártyákat.

Ha egy kártyát sem teszünk a pakliba és rövid időszakon belül több paklit is kérünk a rendszertől, akkor megpróbál mindig más paklikat adni, amint megnyomásra kerül a gomb. Ez a funkció nem aktiválódik, ha a kezdetleges pakli nem teljesen üres.

A korlátozásokra terelve a szót, az okos pakli készítő jelenleg csak akkor működik, amikor Standard paklit készítünk, de tervezzük a Wild támogatását is. Továbbá az egy bizonyos kártya helyetti csere ajánlás, ami felugrik (2 javasolt kártyával) jelenleg nem használja az okos pakli készítő rendszerünket.

Osszátok meg nyugodtan, ha nagyszerű paklikat készítettetek az okos pakli készítővel (megj.: Itt a Hearthstone Hungary-n is várjuk a paklijaitokat, hiszen egy pillanat alatt importálhatjátok őket a játékból az oldalra - a szerk.). Találkozunk a Fogadóban!

Forrás: PlayHearthstone.com - Fejlesztői betekintések: Okos pakli készítő

paklikészítő

További híreink