Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Game Development
  2. Game Design

Balansering Turn-Based RPGs: Vyande

by
Length:LongLanguages:
This post is part of a series called Balancing Turn-Based RPGs.
Balancing Turn-Based RPGs: Party Members

Afrikaans (Afrikaans) translation by Seurion (you can also view the original English article)

Sover, ons het vasgestel basis en afgeleide statistieke vir die held van ons spot spel, Final Trigger. Ons het toe 'n vroulike hoofrolspeler 'n vroulike metgesel, Jane, en verfyn haar statistiek sodat hulle in balans sou wees met sy. Hierdie keer, in wat sal die derde en laaste deel van ons reeks op die RPG-balans behels, sal ons ons nuutgebalanseerde held Chroud in die hande kry teen die vreesaanjaende, onheilspellende, dood-verontagsaming ... Killer Attack Rabbit.

Ja, ons vurige bedreiging kan aanvanklik onskadelik lyk, maar min het daarin geslaag om sy gevaarlike koppelaars te ontsnap. Langs die pad, Ons sal ons nuwe skurk voorsien van statistieke, spesiale magte en kunsmatige intelligensie. Dan sal die stryd koninklike begin. Sodra ons 'n paar aanvanklike data ophaal, sal ons die stryd afstel om die verwagtinge wat ons voor die stryd gestel het, te bereik. Ten slotte, sal ons ondersoek wat gebeur as ons Jane weer in die rok voeg, en hoe haar teenwoordigheid ons delikate balans onvermydelik sal ontwrig.


'N vinnige herhaling

Soos jy dalk onthou, het ons Chroud se afgeleide statistieke bepaal deur berekeninge op sy basisstatistiek uit te voer. Hierdie statistieke was dan nuttig vir die evaluering van Chroud se geveg-doeltreffendheid. Ons het uiteindelik besluit om die volgende te doen:

Our spiky-haired protagonist's stats.
Ons spiky-haired protagonis se statistieke.

Deur die Chroud's Attack Power deur sy ATB Speed ​​te verdeel, het ons tot die gevolgtrekking gekom dat hy ongeveer 42 skade per sekonde (DPS) sal uitrol. Kom ons gaan een stap verder. In die meeste draai-gebaseerde RPG's het partylede 'n kans gehad om krities getref hulle vyande. Kritieke treffers sal tipies vyande tref tussen 1,5 en twee keer die hoeveelheid skade as 'n normale staking.

Factoring in Chroud's Attack Power en die aanvaarding van 'n kritieke trefkoers van 10% en 'n kritiese vermenigvuldiger van 1.5, kan ons sy DPS herwaardeer:

  • Chroud's DPS: \(((500 \tyd.9) + (750\tyd .1) )/ 12 = (450 + 75) / 2 \approx  44\)

Dus, deur die toevallige kans om sy vyande krities te slaan, het Chroud se DPS met ongeveer twee toegeneem. Dit moet dinge 'n bietjie meer interessant maak. Let daarop dat Chroud se gemiddelde skade per draai (DPT) nou 525 is, in plaas van 500.


Die gesig van die vyand

Die bepaling van vyandstatistiek is op baie maniere makliker as om 'n partylid uit te vind. Hul statistieke word nie geraak deur toerusting nie, hulle het gewoonlik nie toegang tot verbruiksgoedere nie en hul vlakke bly staties. So kry hulle nie ervaring nie.

Tip: In sommige moderne WRPG's, moet vyandvlakke jou vergelyk, maar in ons voorbeeld gaan ons aanneem dat hulle nie.

Aangesien rat nie 'n faktor is nie, kan ons die omskakeling van basisstatistieke oorskakel. In werklikheid, ons kan basiese statistieke heeltemal verwerp. Dit is goeie nuus, veral aangesien feitlik alle RPG's veel meer vyande het as wat hulle speelbare karakters speel - speletjies soos Chrono Cross is 'n uitsonderlike uitsondering.

In plaas daarvan, sal ons net strydverwante vyandestatistiek handmatig invoeg. Benewens vinniger, is die bykomende voordeel van hierdie benadering dat dit meer kreatiewe vryheid sal toelaat. Maar voordat jy willekeurig in getalle begin pluk, is dit belangrik om jouself 'n paar vrae oor die betrokke vyand te vra:

  • Watter kategorie van die vyand is jy in die gesig staar: rommelbende, dungeon mob, mini-baas of baas? Uittekenna die eerste deel van hierdie reeks vir meer oor vyandsoorte.
  • Watter tipe vyand is jy in die gesig staar? As die vyand 'n fisiese aanvaller is, moet sy statistiek sy krag weerspieël. Ander vyande mag magiese aanvalle of verdediging gun. Sommige kan hoogs ontwykend wees of gebruik status-effekte. Deur 'n vyand se tipe te bepaal, sal jy die statistiek baie makliker aflei.
  • Genesing: Het die vyand enige manier om die lewe te herleef? Indien wel, moet sy aanstootlike statistieke nie so imposant wees as 'n ekwivalente vyand wat nie kan genees nie.
  • Fases: Omskep die vyand halfpad deur die stryd in 'n sterker weergawe van homself? As dit wel gebeur, moet jy twee (of meer) stelle statistieke vir die vyand skep.
  • Spesiale vermoëns en reaktiewe AI: Ons sal later hierin meer kry, maar die meeste vyande (selfs 'n paar vuilgoedmense) moet 'n paar truuks op hul mou hê. Sonder AI word gevegte roetine en oud.
  • Wil jy die vyande in jou spel volg om tradisionele 16-bis-standaarde te volg, of om meer moderne tradisies te weerspieël?

Die laaste punt vereis 'n bietjie verduidelijking. Jy sien, in ou-skool RPGs, het spelers tipies 'n relatief swak aantal treffers in vergelyking met vyande gehad. Aangesien partylede egter harder getref het, die vyand buite bereik het en toegang tot genesende hulpbronne gehad het, was die vyand se hoë trefpunt-totale regverdig. Die meeste moderne RPG's, ten minste dié van die Weste, werk 'n bietjie anders. In die naam van realisme bevat vyande gewoonlik trefferpunte wat gelyk is aan jou eie. Hulle mag dalk nie so hard slaan of so slim wees nie, maar hulle kan jou beslis dra, want jou karakter is oor die algemeen swakker as wat hy of sy in 'n Japannese RPG sal wees.


Die Killer Attack Rabbit

Gebruik die riglyne hierbo gelys, sal jy in staat wees om 'n paar rondte-statistieke vinnig af te lei. Onthou, aangesien ons net met gevegte relevant statistieke werk, sal dit vir u wees om getalle uit te vind wat sin maak. Net moenie bekommerd wees oor die skep van gebalanseerde vyande op die eerste skoot nie - dit sal waarskynlik nie gebeur nie. Gelukkig, met behulp van die stelsel wat ons op die punt staan ​​om te skets, sal u die vyandgetalle met gemak kan aanpas.

Terug na die Killer Attack Rabbit. Ons vurige knaagdier sal 'n sterk fisiese vegter wees en baie vinnig, maar ontbreek in die gebiede van verdediging en magie. Hy sal 'n dungeon mob wees, en het meer trefpunte as ons held, maar minder skade. Hy sal nie die lewe herleef nie, maar ons sal 'n paar koel spesiale vermoëns ondersoek wat hom die bose oorlas sal maak.

Hier is die aanvanklike nommers wat ons sal gebruik:

Don't judge him by his cute appearance.
Moenie hom oordeel met sy oulike voorkoms nie.

Nou, Ons is gereed om ons eerste toetssaak uit te voer.


Proefneming saak #1

In hierdie hoek, met hare wat teen 22 pond weeg, het ons ons dapper held Chroud. En in die ander hoek, wat uit onbekende dele weeg, met 'n dreigende 4,5 pond weeg, bied ons aan jou die ongeslagen, onbetwiste ... Killer Attack Rabbit.

Voordat ons ons warm verwagte stryd begin, moet ons waarskynlik 'n paar dinge uitvind. Die eerste en mees voor die hand liggend is die Killer Attack Rabbit's DPS:

  • Killer Attack Rabbit DPS: \(((200 \tyd .85) + (300 \tyd .15)) / 10 = 21.5 \text{ DPS}\)

Dus, as die aanval-konyn sy basiese aanval slegs gebruik het, Hy sal gereg wees uit 21.5 skade per sekonde. Maar ons skurk is 'n bietjie meer gesofistikeerd. Om dinge te meng, sal ons hom drie addisionele aanvalle gee. Die eerste sal genoem word "Bite", die tweede "Bunny Hop," en die derde "Too Cute." Om te bepaal hoe hierdie nuwe aanvalle sy DPS beïnvloed, moet ons hulle eers definieer.

Gewone Vyand AI

Vyande in die vroeë beurt-gebaseerde RPG's het gewoonlik net een of twee aanvalle gehad. Teen die laat 16-bis-era is hierdie getal tot drie of vier verhoog, en in sommige gevalle selfs meer. Maar, die gemiddelde vyand was selde gesofistikeerd. Spesiale aanvalle is skynbaar willekeurig gebruik, en status-effekte is algemeen op spelers wat reeds geraak word, aangewend, en aanvalle is selde geteiken op spelers met lae treffers. Die enigste vyande wat op afstand intelligent verskyn het, was base.

Ons skurk, wat in ons spel beskou word as 'n middel-van-die-pad-vyand, sal minstens so intelligent wees as 'n 16-bis baas, maar nie so sterk nie.

Sy eerste aanval, "Bite" Testament word soos volg gedefinieerr:

Bite - Deals 150% damage to a single attacker. 25% chance to cast each round. Cannot be cast two rounds in a row.

Die laaste voorbehoud is belangrik. As jy vyande 'n kans gee om oor en oor spesiale vaardighede te gebruik, sal daar tye wees wanneer hulle jou oorweldig. Dit sal veroorsaak dat die stryd beslis uit balans val. Om dit teen te werk, verhoed ons dat die Killer Attack Rabbit twee keer in 'n ry "Bite" gebruik. Die speler se rol sal wees om hierdie patroon te herken, en daarvolgens aan te pas.

Die tweede aanval, "Bunny Hop," funksioneer so:

Bunny Hop - Deals 225% damage to a single attacker. Casts immediately after falling below 25% HP. Can only be cast once per battle.

"Bunny Hop" is 'n voorbeeld van voorwaardelike AI, en is 'n goeie manier om intelligensie maklik te simuleer. Wanneer die Killer Attack Rabbit op die rand van die dood is, versamel hy al sy krag en val hy jou aan met 'n verwoestende spesiale vermoë. Om dit voor te berei, word partytjie-lede aangeraai om hul trefferspunte op te hou.

Uiteindelik,hy het 'n aanval genoem "Too Cute:"

Too Cute - Stuns one party member for one round. Casts one turn after "Bunny Hop."

Alhoewel hierdie aanval nie die Aanval Rabbit se DPS sal vermeerder nie, sal dit die stryd verleng. En hoe langer die geveg, hoe beter is die vyand om te wen. Ons het ons vyand dadelik na die "Bunny Hop" gebruik, omdat dit net sin maak. Aangesien die "Bunny Hop" jou nie afgehandel het nie, sou die Rabbit geneig wees om 'n defensiewe vermoë te gebruik om jou van genesing te voorkom.

Dus, kan ons die volgende gevolgtrekkings maak:

  • 25% of the tyd (minus up to two attacks) the Killer Attack Rabbit's DPS will be \(21.5 \tyd 1.5 = 32.25\).
  • 75% van die tyd (minus twee aanvalle) the Killer Attack Rabbit's DPS sal wees \(21.5\).
  • Tot een keer per geveg, sy DPS sal wees \(21.5 \tyd 2.25 = 48.4\).
  • Tot een keer per geveg, sy DPS sal wees \(0\).

Ons sê "tot een keer per geveg" omdat daar geen waarborg is dat die Killer Attack Rabbit "Bunny Hop" of "Too Cute" kan gebruik nie. Kom ons sê jy neem sy HP af van 30% tot 0% in een skoot. In hierdie scenario, sal hy nooit die geleentheid kry om dit te gebruik nie. Jy sal hom egter sekerlik met 'n geskikte krisis moet tref om dit heeltemal te vermy.

DPS en effektiewe DPS

Op grond van jou aanval krag,, en na factoring in die vermindering van skade (ons sal dit in 'n sekonde kry), sal dit jou ongeveer ses rondes neem om die Killer Attack Rabbit af te sluit. Normaalweg sou dit vyf neem, maar jy sal waarskynlik vir een rondte verstom word. Gegewe hierdie, ons kan die volgende aanvalverhoudings aanvaar:

  • Drie uit die Rabbit se ses aanvalle sal normale aanvalle wees:\(21 \teks{ DPS}\)
  • Een sal wees "Bite": \(32.25 \teks{ DPS}\)
  • Een sal wees "Bunny Hop": \ (48.4 \ teks {DPS} \)
  • Een sal wees "Too Cute" : \(0 \text{ DPS}\)
  • Gemiddelde DPS: \(((3 \tyd 21) + 32.25 + 48.4 + 0) / 6 = 23.9 \teks{ DPS}\)

Factoring in Chroud se 10% fisiese skade versagting en 12.5% ​​dodge koers, word die Rabbit's Effective DPS:

  • Killer Attack Rabbit Effektiewe DPS:\((23.9 \tyd.9) \tyd .875 = 18.8 \teks{ DPS}\)
  • Killer Attack Rabbit Effektiewe skade per beurt:\((18.8 \tyd 10) = 188\)

Regso, so na alles, kan ons aflei dat die Killer Attack Rabbit Chroud sal slaan vir gemiddeld,188 skade per beurt.

Nou,ons sal dieselfde doen vir Chroud. Ons het reeds vasgestel dat Chroud se DPS 44 is. Maar, sy effektiewe DPS is aansienlik laer omdat hy soms ook verstom of gedwing word om af en toe 'n ronde te spandeer deur gebruik te maak van 'n verbruikbare item. Vir die eenvoud, sal ons aanneem dat Chroud geen skade sal doen nie 20% van die tyd:

  • Chroud's Average DPS: \(44 \tyd 0.8 = 35.2 \teks DPS}\)

Factoring in die Killer Attack Rabbit se 5% fisiese skade versagting en 20% dodge koers, Chroud's Effective DPS word:

  • Chroud's Effective DPS: \((36.9 \tyd .95) \tyd .8 = 26.8 \teks{ DPS}\)
  • Chroud's Effective Damage Per Beurt: \((28 \\ tyd 12) \ongeveer 322\)

Ten slotte kan ons bereken hoeveel rondtes dit vir Chroud sal neem om die Killer Attack Rabbit te verslaan en omgekeerd. Ons sal aanneem dat Chroud tydens die stryd een potjie sal pop, die herstel van 500 van sy trefpunte en die verhoging van sy effektiewe Hit Point-totaal tot 1300.

  • Chroud se tyd om Killer Attack Rabbit te verslaan:\((2000 / 336) = 6.21\) rondes of \(74.5\) sekonde.
  • Killer Attack Rabbit se tyd om Chroud te verslaan:\((1300 / 188) = 6.91\) rondes of \(69.1\) sekonde.

Baie geluk, dit lyk asof ons naby balans is! Ongelukkig, soos ons binnekort sien, kan lyk mislei word.


Simulasies

Ons het besluit om sowel Chroud's as die Killer Attack Rabbit se statistieke in ons interne rekenaar-simulasieprogram te koppel en 'n paar resultate te lys. Moeilik om te sê, die resultate was nie wat ons verwag het nie. Al te dikwels lyk ons ​​resultate soos volg:

Simulation #1: The Killer Attack Rabbit Decimates Chroud
Simulasie #1: Die Killer Attack Rabbit decimates Chroud.

Nie goed nie. Almal het gesê, die Killer Attack Rabbit het in meer as 50% van ons simulasies gewen, soms voordat Chroud 'n enkele treffer kon kry. In ons spot spel Finale Trigger was ons eerste doelwit vir dungeons mobs om ongeveer 5% van die tyd te wen. Dis 'n groot verskil. So, wat is die probleem?

Die eerste probleem is redelik voor die hand liggend. Die gemiddelde tyd wat Chroud nodig het om die Killer Attack Rabbit te verslaan, is ongeveer dieselfde hoeveelheid tyd wat die Killer Attack Rabbit nodig het om Chroud te verslaan. Op grond van hierdie statistiek alleen, sal Chroud 48,1% van die tyd wen en die Rabbit 51,9%.

Maar daar is nog 'n faktor wat ons nog nie oorweeg het nie: Skade Per Beurt (DPT) wisselvalligheid. In die beurt-gebaseerde RPG's, definieer ons DPT-volatiliteit as 'n mate van hoeveel die maksimum hoeveelheid skade wat in een rondte uitgevoer kan word, van die norm verskil. Byvoorbeeld, as 'n partytjie se skade per beurt 50 is, maar hy kan op 'n gegewe beurt maksimum 400 skade verrig, word sy DPS as uiters wisselvallig en onvoorspelbaar beskou.

Ons het reeds vasgestel dat die Killer Attack Rabbit's Effective DPT 188 is. Nou moet ons die grootste skade wat hy in een rondte kan doen, uitvind:

  • Killer Attack Rabbit Maksimum Skade: \((220 \tyd 1.5) \tyd 2.25 \tyd .9 = 668.25 \teks{ DPT}\).

Wanneer die Killer Attack Rabbit 'n perfekte aanval telling rol, Kritiek treffers en gebruik "Bunny Hop," hy sal Chroud pummel vir 668.25 skade na versagting. Dit is meer as 80% van Chroud se lewe in een skoot! Ons arm, spikige vriend, sal skaars 'n kans hê om sy drankie te gebruik en sy Hit Point-telling met 500 te verminder.

Nou, sal die Rabbit op 'n gereelde basis vir hierdie groot skade aanval? Nee. Maar hy sal ons vir byna die helfte van Chroud se lewe baie meer tref as wat ons gemaklik is.

Omdat die DPS van die Killer Attack Rabbit so volatiel is, sal jy jou nommers wil verander sodat die gemiddelde tyd wat Chroud hom moet verslaan, ongeveer die helfte van die tyd is wat nodig is om Chroud te verslaan. Die maklikste manier om dit te doen is om bloot die Killer Attack Rabbit se DPS te verlaag. In plaas van 200, kom ons maak dit 120 en sien wat gebeur:

  • Killer Attack Rabbit Base DPS: \(((120 \tyd .85) + (180\tyd .15)) / 10 = 12.9 \teks{ DPS}\).

As ons dieselfde berekeninge hierbo gelys het, kan ons maklik bepaal dat die Rabbit se nuwe effektiewe DPS 11,4 is, wat gelykstaande is aan 114 DPM.

  • Killer Attack Rabbit se tyd om Chroud te verslaan:\((1300 / 114) = 11.40\) rondes of \(114\) sekonde.
  • Killer Attack Rabbit Maksimum Skade: \((132\tyd 1.5) \tyd 2.25 \tyd .9 = 401 \teks{ Skade Per Draai}\).

Nou, gemiddeld, sal Chroud 5.19 minder rondtes benodig as wat sy harige nemesis doen om te wen. Selfs op die beste dag van die Killer Attack Rabbit, moet hy perfek rol om die helfte van Chroud se lewe in een skoot te neem. So terwyl die Rabbit nog steeds hard genoeg kan slaan om sorg te gee, sal Chroud hom die meeste van die tyd kan verslaan. 'N Tweede simulasie bevestig dit:

Simulation #2: Balance achieved.
Simulasie #2: Oorskot behaal.

In hierdie simulasie neem Chroud 'n regverdige klop, maar is nooit in 'n werklike gevaar om dood te gaan nie. As die stryd egter nog 'n ronde geduur het, sou die Killer Attack Rabbit sy "Too Cute" aanval gebruik het, wat rampspoedig vir ons held kon bewys het. Ons kan dus uit hierdie simulasie aflei dat die moeilikheid van die geveg redelik goed ingestel is, en in lyn is met ons aanvanklike verwagtinge.

Hoekom so laag?

Vroeër het ons genoem dat, in ons ideale scenario, die Killer Attack Rabbit slegs Chroud 5% van die tyd moet verslaan. Jy sal dalk wonder hoekom die getal so laag is. Hou in gedagte dat indien enige vyand Chroud verslaan, die wedstryd verby is. Omgekeerd moet Chroud elke vyand verslaan om te wen. Sy werk is baie harder, dus sy kanse om te sterf teen nie-Boss tipes moet redelik laag wees.


Factoring in addisionele party lede

Dit is 'n bietjie onrealisties om te aanvaar dat Chroud altyd op sy eie sal veg. Jy kan onthou uit die tweede deel van die reeks dat ons Chroud met 'n septer-wielding Mage met die beskeie naam van Jane in lyn gebring het. Hoewel Jane se DPS effens hoër en meer wisselvallig as Chroud's was, was die twee bondgenote relatief gebalanseerd.

Een van die eerste aannames ontwikkelaars maak wanneer factoring in 'n tweede party lid is dat die addisionele bondgenoot die algehele doeltreffendheid van die party verdubbel. In werklikheid is dit baie meer. Met behulp van die berekeninge hierbo gelys, bepaal ons Jane se Doeltreffende DPS teen die Killer Attack Rabbit tot 30.4. Voeg dit by Chroud's toe en die partye se Doeltreffende DPS word:

  • Party Effektiewe DPS = 30.4 + 26.8 = 57.2 DPS

As ons die speelveld vlak maak deur 'n tweede Killer Attack Rabbit by te voeg, is die vyandeparty se Doeltreffende DPS:

  • Killer Attack Rabbit Effektiewe DPS (teen Chroud): \((23.9 \tyd .9) \tyd .875 = 18.8 \teks{ DPS}\)
  • Killer Attack Rabbit Effektiewe DPS (teen Jane): \((23.9 \tyd .9625) \tyd .85 = 19.6 \teks{ DPS}\)
  • Vyand Effektief DPS: \(18.8 + 19.6 = 38.4 \teks{ DPS}\)

Let daarop dat Jane nie fisiese skade sowel as Chroud kan verlig nie, en neem dus meer skade aan die Killer Attack Rabbit.

Aangesien die verhouding van Enemy Effective DPS tot Party Effective DPS pretty much in lyn is met die een-tot-een-verhouding, sou dit redeneer dat die moeilikheid van die stryd ongeveer dieselfde sou wees. Maar ons vergeet van een ding: die speler. Die meeste spelers sal in staat wees om enige rekenaarstelsel te oortref, en moet 'n duidelike voordeel in statisties-selfs-gevegte hê. In hierdie scenario,  moet die speler net sy vuur op een Konyn fokus voordat hy na die volgende beweeg. Die Attack Rabbi, aan die ander kant, sal party lede net ewekansig aanval.

Natuurlik, jy kan hulle programmeer om hul vuur op die swakste partylid te fokus, of op die een wat die grootste bedreiging vorm. As dit die geval is, daar is min behoefte om die aanvalskanaal weer te balanseer. Maar, As hulle ewekansig aanval, sal hulle hul bestry-doeltreffendheid met 'n nominale persentasie moet verhoog.

En regtig dit is wat die balansering van 'n draai-gebaseerde RPG gaan oor: baie raaiwerk, baie tweaking en baie simulasies.


Konklusie

In hierdie reeks,ons het 'n draai-gebaseerde RPG-balans uit drie verskillende perspektiewe ondersoek: spelontwerp, party vlak en vyand vlak. Ons het 'n paar eenvoudige metodes ondersoek om u te help om rudimentêre balans in u spel te behaal. In hierdie segment het ons geleer hoe:

  • Om Vyandestatistiek en DPS te bereken
  • Om effektiewe DPS te bereken
  • om DPT-wisselvalligheid te Bepaal
  • om simulasies te gebruik
  • addisionele party lede beïnvloed die uitslag van die stryd

Ten spyte van die lengte van hierdie reeks, het ons skaars die oppervlak gekrap. Balansering van 'n volskaalse RPG kan ontwikkelingspanne maande neem, en grootliks baat by die gebruik van een of ander modelleringsagteware. Maar, deur nou, jy moet ten minste verstaan ​​wat in die balanseringsproses gaan en 'n beter idee het van die faktore wat jy moet oorweeg. Die goeie nuus is dat ons stelsel nie die gebruik van enige gevorderde wiskunde of logika benodig nie. Almal het gesê, Dit was 'n redelik intuïtiewe proses wat gesonde verstand oor ingewikkelde algoritmes bevoordeel het. Hopelik sal dit help om die skrikwekkende taak om jou draai-gebaseerde RPG te balanseer, 'n bietjie meer lekker te maak.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.