Echilibrarea RPG-urilor bazate pe turnuri membrii de partid

Ultima oară, am examinat balanța RPG de la o perspectivă de mile. În acest segment vom sătura un pic mai profund, determinând mai întâi baza de date a protagonistului nostru și folosind rezultatele pentru a calcula statisticile derivate semnificative, aplicabile în luptă. Apoi, vom analiza în detaliu modul în care să echilibrăm un membru al partidului cu altul, chiar dacă aceștia preferă diferite tipuri de lupte. Până când fumul va fi curățat, vom obține echilibrul de bază al partidului în cadrul jocului nostru cel mai bine vândut, Declanșator final.


Statistici de bază

Membrii de partid din RPG-urile tradiționale pe bază de ture nu aveau, de regulă, roluri de clasă riguros definite. Ca atare, toate statisticile lor au fost cel puțin parțial relevante. În același timp, mitralierele și măcelarii, membri ai partidului, de obicei excelează într-o zonă de luptă, fie că este vorba de luptă, de turnare sau de vindecare. În acest sens, vom modela Triggerul final protagonistul să beneficieze cel mai mult de partidul său când se zbură cu o sabie.

În modelul nostru alegem următoarele statistici de bază:

  • Putere
  • Viteză
  • rezistență
  • Spirit
  • Apărare
  • Magic Defense

Pentru simplitate, vom presupune că și personajul nostru este la nivelul 20, iar aliații noștri sunt la fel.

Deoarece eroul nostru seamănă cel mai mult cu un războinic, statisticile sale ar trebui să reflecte pe cele ale unei persoane impuse fizic, capabile să reziste câtorva lovituri, nu prea repede și puțin slabe față de magie. Toate numerele considerate egale, un punct de plecare destul de precis pentru protagonistul nostru - să-l numim Chroud (vezi ce am făcut acolo) - ar fi:

  • Forță: 50
  • Viteza: 25
  • Stamina: 40
  • Spirit: 20
  • Apărare: 40
  • Magic Defense: 15

Numim numerele lui Chroud statisticile de bază deoarece sunt obișnuiți să obțină statistici care vor determina eficacitatea noastră în luptă.


Statistici derivate

Calculele derivate au loc, în general, în spatele scenei. Le determinăm prin manipularea statisticilor de bază în moduri semnificative. Rezultatele sunt apoi utilizate pentru a determina eficacitatea noastră generală în luptă. În Declanșator final, statisticile derivate sunt:

  • Putere de atac
  • Secunde pe rotație sau viteză ATB
  • Se eschiva %
  • Hit Points
  • Putere magică
  • Defecțiuni fizice negate (%)
  • Daune magice negate (%)

Evident, ați putea merge mai departe cu acest lucru, dar pentru scopuri ilustrative, acest lucru este mai mult decât suficient. Simțiți-vă liber să experimentați.

Acum trebuie să echivalăm fiecare dintre statisticile noastre de bază cu un stat derivat. Acesta ar trebui să fie un proces destul de intuitiv. De exemplu, ar fi logic ca forța să fie corelată cu Power Attack, deci să începem acolo.

Determinarea puterii de atac

Mai întâi, stabiliți ce fel de numere doriți să vedeți pe ecran. Dacă sunteți un fan al RPG-urilor de vârstă școlară, atunci probabil vă veți favoriza să vă ocupați de cantități mari de pagube. Alții ar putea prefera creșteri mai mici și mai precise. Indiferent de situație, sistemul nostru este proiectat cu flexibilitate în minte și satisface orice preferință. În Declanșator final vom merge pe linia de mijloc.

Pentru simplitate, vom multiplica puterea cu o constantă de 10 pentru a determina puterea atacului.

  • Atac de putere = Forța * (constantă)

Asta ne dă o putere de atac de 500. Dar ar fi destul de plictisitor să loviți dușmanii cu aceeași sumă exactă în fiecare rundă. Prin urmare, vom introduce niște întâmplări pentru a face lucrurile:

  • Puterea atacului = (Forța * (constantă)) +/- 10%

Acum, Chroud's Attack Power va fi undeva între 450 și 550. Desigur, în funcție de cât de multă aleatorie doriți să introduceți în sistemul dvs., puteți folosi întotdeauna un procent mai mare sau mai mic. (Dar nu uitați că este mai greu să echilibrați un sistem de luptă extrem de randomizat.)

Determinarea secunde pe turn și Dodge%

Aceste două sunt puțin mai complicate. Știm că acestea se bazează pe viteză, dar nu putem să înmulțim Viteza cu o constantă pentru a determina secundele pe rută și rata de Dodge. Crede-mă, rezultatele ar fi dezastruoase.

Ceea ce știm este că baza noastră ATB Speed ​​și Dodge Rate nu ar trebui să varieze prea mult de la început până la sfârșitul jocului. Bineînțeles că vrem să se îmbunătățească puțin, dar nu atât de mult încât să fie exploatați la niveluri superioare. De vreme ce am eliminat direct manipularea vitezei, ar fi logic să obținem mai întâi un coeficient de viteză simplu:

  • Coeficient de viteză = viteză / nivel

Coeficientul de viteză al personajului este viteza lui (25) împărțită la nivelul lui (20), sau 1,25. Pentru a menține noul nostru coeficient în echilibru cu obiectivele noastre, ar trebui să executăm o simulare care să determine valoarea sa la diferite niveluri și la diferite viteze de bază.

Ceva de genul:


Coeficienții de viteză la diferite niveluri pentru câștigurile de viteză diferite.

Din modelul nostru putem deduce că, crescând viteza bazei Chroud cu aproximativ 2 puncte per nivel, Coeficientul de viteză va crește ușor la nivelul nivelului, ceea ce dorim. Modelul în sine este prea simplist și puțin greșit, dar este destul de aproape încât să ne dea o fundație în care să lucrăm.

Acum ne simțim confortabil calculul secundelor Chroud Per Turn (SPT). Rețineți că, din moment ce Coeficientul de viteză crește pe măsură ce ne ridicăm nivelul și dorim ca SPT să se scadă, ar trebui să împărțim o constantă asupra coeficientului nostru. Acesta va fi cel mai simplu mod de a obține rezultate optime.

  • Secunde pe viraj = (constant) / Coeficient de viteză

Am ales 15 pentru constanta mea, dar puteti alege orice numar doriti. Rețineți că constantele mai mari vor avea ca rezultat mai mult timp între întoarcere și sunt mai potrivite pentru RPG-urile ocazionale. Declanșator final este relativ rapid, iar cele 12 secunde necesare la nivelul 20 pentru ca barul nostru ATB să ne umple, ne convine foarte bine. La nivelul 50, acest timp va fi redus la puțin sub 9 secunde.

Dodge% este chiar mai ușor de înțeles - doar multiplicați coeficientul de viteză cu o constantă. Singura dvs. limitare ar fi să alegeți o constantă rezonabilă, deoarece alegerea accidentală a unei mari ar duce la o rată Dodge peste 100%. Nu e bine.

  • Dodge (%) = coeficientul de viteză * constant

Restul

Putem folosi ecuații similare pentru a descoperi restul statisticilor derivate de la Chroud. De exemplu, Stamina ar putea fi convertită la Punctele Hit doar prin aplicarea unei constante multiplicative. După cum puteți vedea clar, nu este necesar ca un masterat în matematică să vină cu un sistem stat care să funcționeze.

Cu aceasta a spus, statisticile noastre nu iau în considerare efectele de unelte, buffs, procs de arme și diverse elemente care oferă efecte speciale. Acestea sunt lucrurile pe care le va trebui în cele din urmă să le ia în considerare. Ceea ce face este să ofere o bază solidă din care să puteți determina puterea și apărarea relativă a personajului dvs. în orice moment în progresul său.


Echilibrarea unui membru al partidului împotriva celuilalt

Una dintre greșelile fundamentale pe care dezvoltatorii RPG le fac atunci când echilibrează jocurile lor este de a renunța la balanța internă a partidelor. Imi amintesc cineva folosirea lui Relm Final Fantasy VI? Eu cu siguranță nu am făcut-o. De ce chiar creați un personaj dacă nu va fi folosit niciodată? Ca dezvoltatori RPG este obligația noastră de a face viața fiecăruia dintre personajele noastre iubite în luptă. Și o bună modalitate de a face acest lucru este de a măsura fiecare caracter secundar împotriva protagonistului nostru. Pe baza calculelor noastre din secțiunea anterioară, statisticile lui Chroud la nivelul 20 sunt următoarele:


Statisticile noastre protagoniste cu părul înfig.

Cel de-al doilea personaj - o vom numi Jane pentru lipsa de ingeniozitate - este un maghiar cu sceptru. Jubileul lui Jane include plimbări lungi pe plajă, jocuri video și arderea vrăjmașilor ei în viață. Deoarece nu suntem dezvoltatori părtinitori, să-i dăm lui Jane aceeași cantitate de puncte de bază ca și Chroud, dar să le distribuim astfel încât să aibă sens pentru o mașină:


Jane poate face cu adevărat durerea, atâta timp cât nu este OOM.

Din moment ce ambele personaje sunt ofensatoare, DPS-ul lor va trebui să fie echilibrat, astfel încât să facă relativ aceeași cantitate de pagube. Dacă presupunem că Chroud va ataca întotdeauna cu o Sword și Jane cu o vrajă ofensivă, atunci calculele noastre sunt ușoare:

  • DPS de la Chroud = viteza atacului / viteza ATB
  • Jane DPS = puterea magică / viteza ATB

Pe baza calculelor noastre, DPS-ul lui Jane este de 50 la Chroud este de aproximativ 42. Asta e un pic neuniform, dar destul de echilibrat. Dar există o problemă: în timp ce Chroud poate teoretic ataca cu Sabia sa pentru totdeauna, Jane va sfârși în cele din urmă de MP dacă ea aruncă prea multe vrăji. Pentru a face lucrurile și mai complicate, unele dintre vrăjile lui Jane vor fi mai puternice decât altele. Astfel, nu putem calcula DPS-ul folosind numai puterea magică. În schimb, hai să facem un pic mai profund.

vrăji

În cele mai multe RPG-uri, tipurile de castre ar fi prezentate cu o avalanșă virtuală de vrăji, mai ales până când au ajuns la final. În timp ce multe dintre aceste vrăji au fost acordate automat ca un personaj nivelat, jocuri ca Final Fantasy VI a permis fiecărui personaj să învețe cât mai multe vrăji pe care le-a dorit - tot ceea ce era necesar era răbdarea. Cu toate acestea, cei cu o afinitate pentru casting întotdeauna au făcut mai multe daune cu vrăjile lor ofensatoare și o vindecare mai bună cu cele care le susțin. Aceasta a fost prin design.

Declanșator final nu va utiliza, prin urmare, puterea magică ca indicator solid al DPS, ci ca o variabilă. Cu aceasta, putem determina puterea fiecărei vrăji individuale. În spiritul limitării cantității de muncă pe care trebuie să o facem, îi vom da doar trei vrăji. Una dintre ele va fi o minge de foc cu un singur țintă, ușor de distrus și cu distrugere ușoară. Al doilea va fi un cost mai mare, o versiune mai puternică a aceleiași vrăji. În spiritul RPG-urilor de vârstă școlară, o vom numi Foc 2. Și, în sfârșit, vom da Jane o vrajă AoE numită, oh nu știu ... Meteor.

Presupunând o Putere Magică de 500, Puterea și DPS din fiecare vrajă vor funcționa după cum urmează:


DPS umflat de Jane.

Acum, prima întrebare pe care ați putea să vă întrebați este motivul pentru care Fire 2 costă de trei ori mai mult pentru a fi aruncat ca o minge de foc, dar doar dublează daunele. Este o preocupare valabilă. Răspunsul scurt este că, în timp ce Fireball este mai eficient pentru Mana, focul 2 este mai eficient. Liken-o la diferența dintre un jig boxer și uppercut. Jab-urile fac mai putine daune, dar necesita mai putina efort, in timp ce uppercuts-urile sunt cu siguranta mai extenuante, dar pot fi folosite pentru a elimina un adversar cu un pumn devastator.

Cu alte cuvinte, dacă Foc 2 costă 4 MP pentru a fi distribuit, nu ar fi niciodată nevoie să arunce o minge de foc. În Declanșator final, obiectivul este acela de a încuraja gestionarea inteligentă a resurselor. Cu toate acestea, dacă preferați să renunți la Fireball învechit odată ce ați învățat Fire 2, puteți face acest lucru cu siguranță.

Revenind la exemplul nostru, Meteor este în mod clar folosit numai împotriva grupurilor mari de inamici. Împotriva unei singure ținte, aceasta are doar aproximativ aceleași daune ca Fireball la un cost semnificativ mai mare.

Calculul DPS al fiecărei vrăji individuale este un lucru, dar determinarea DPS medie a lui Jane este un animal complet diferit. Pentru a face acest lucru, ar trebui să știm cât de mult are MP, cât de multe Mana restaurează resursele pe care le poartă și dacă MP este restaurat după fiecare bătălie sau doar vizitând Innul. Deoarece Jane este capabilă de AoE, am dori să cunoaștem și cantitatea medie de dușmani pe care partidul o luptă la un moment dat și câte transformări, în medie, este necesar pentru a învinge dușmanii respectivi. Din moment ce nu am stabilit încă acest lucru, ne vom mulțumi cu aproximarea DPS medie a lui Jane pentru moment și vă vom face griji cu privire la condițiile mai străine ulterior.

Fa-o mai întâi făcându-i să identifice fiecare punct de vrajă Damage Per Mana (DPM). Pentru a calcula DPM pentru Meteor, vom presupune că Jane o aruncă doar atunci când există între trei și cinci dușmani pe câmpul de luptă, pentru o medie de patru. Rezultatele sunt următoarele:


Daunele lui Jane pe MP petrecute.

Presupunând că fiecare vrajă va fi distribuită cu o frecvență egală, vom determina că Jane va cheltui o medie de 6,67 MP pe rundă, fiecare punct având aproximativ 15 pagube. Înmulțind cele două numere se poate deduce că Jane face un 100 DPS enorm, care este mult mai mult decât Chroud.

Cu toate acestea, piscina Jane's Mana este limitată și nu există nicio modalitate prin care ea va putea să mențină acest DPS fără a-și consuma resursele sau prin alte mijloace de reaprovizionare cu Mana. Dacă Jane se termină de la Mana, DPS-ul său scade cu 80%, până la 20 de ani. Încrederea sa în MP duce în cele din urmă la DPS în general, dar nu ajunge suficient de jos pentru a fi în echilibru cu Chroud's?

Analiza cazurilor

Știm că DPS de bază a lui Chroud este de 50 și că Jane's este de aproximativ 100 atunci când are MP și 20 când nu. Astfel, pentru a determina raportul perfect dintre atacurile magice și fizice pentru DPS-ul lui Jane pentru a fi egal cu omologii ei, folosim următorul sistem de ecuații:

\ [\ Begin aliniat
50 & = 100x + 20y \\
x + y & = 1
\ End aliniat \]

Dacă nu sunteți deloc familiarizați cu algebra, este în regulă. Cel mai bun mod de a aborda această ecuație este de a rezolva mai întâi pentru \ (x \) pe ecuația de jos:

\ [x = 1 - y \]

Acum luați rezultatul și conectați-l la ecuația de sus:

\ [50 = 100 (1-y) + 20y \]

Rezolvați pentru y:

\ [\ Begin aliniat
50 & = 100 - 100y + 20y \\
-50 & = -80y \\
y = 5/8
\ End aliniat \]

Și conectați această valoare în ecuația de jos pentru a rezolva pentru x:

\ [\ Begin aliniat
x + (5/8) & = 1 \\
x & = 3/8
\ End aliniat \]

Din aceasta putem concluziona că Jane ar trebui să iasă din Mana peste 62% (5/8) din timp pentru ca DPS să se potrivească cu cea a lui Chroud. Ceea ce spunem cu adevarat este ca vrajiile lui Jane sunt suprasolicitate - atat de mult incat pentru ca ea sa fie redusa la nivelul unui razboinic plictisitor, resursele ei Mana ar trebui sa fie extrem de limitate. Luarea acestei abordări ar duce la echilibru, dar nu la echilibrul pe care speram să-l realizăm.

Deci, ce putem face despre asta?

Frumusețea sistemului nostru este flexibilitatea acestuia. Dacă vrem să facem un jucător mai puternic sau mai slab, există mai multe moduri de a face acest lucru. În cazul nostru, ne-ar plăcea ca Jane să poată arunca mai multe vrăji și să rămână relativ în echilibru cu Chroud. Pentru a face acest lucru putem:

  • Reduceți costul Mana al vrăjilor ei.
  • Dă-i o altă vrajă.
  • Creșteți piscina Mana.

Atât prima, cât și a treia abordare par a fi opțiuni viabile. Dacă reducem costul vrăjilor lui Jane cu o treime la jumătate, DPS-ul ei va rămâne același, totuși va face mai multe daune pe fiecare punct petrecut Mana. De asemenea, crește cantitatea de vrăji pe care le poate arunca înainte ca Mana să iasă. Alternativ, crescând piscina de la Mana, DPM-ul lui Jane nu va crește, dar va mai putea să efectueze mai multe distribuții. Astfel, după ce ne-am încurcat, ar trebui să reușim să obținem un echilibru care să funcționeze și să aibă sens.

Și într-adevăr, asta echilibrează un RPG pe bază de ture, sau orice RPG, este vorba despre: jucând cu numere până când găsiți ceva care funcționează. Nu trebuie neapărat să fie perfectă sau drăguță, și nici nu trebuie să implementeze matematică avansată. Atâta timp cât niciun membru de partid nu este semnificativ mai mult sau mai puțin puternic decât oricare altul, ați obținut o măsură de succes.


Concluzie

În acest articol, am examinat balanța RPG pe bază de ture din perspectiva membrilor individuali ai partidului. Înainte de a aborda acest tip de echilibru, vă sugerez să vă puneți următoarele întrebări:

  1. Care sunt statisticile mele de bază? Care sunt statisticile mele derivate??
  2. Membrii partidului intră sub categorii specifice de clasă? Dacă da, ce sunt ei?
  3. Ce fel de numere vreau să văd pe ecran - cele mari sau cele mici?
  4. Cât de mult un factor vreau să fie aleatoriu de jucat?
  5. Scopul jocului meu este realist, sau voi ajunge la sfârșitul lunilor de echilibrare a jocului meu?

Declanșator final sa dovedit a fi mai puțin complicată decât RPG-urile de la începutul anilor 1990, dar totuși a luat un întreg articol doar pentru a obține un echilibru rudimentar între două clase. Nici măcar nu am atins echilibrul inamic, AI și gestionarea avansată a resurselor. În mod realist, pentru a testa cu adevărat echilibrul jocului dvs., trebuie să dezvoltați un sistem de modelare codificat, care permite proiectanților să introducă o serie de valori. Va accelera semnificativ procesul de echilibrare - altfel veți fi forțat să utilizați o foaie de calcul Excel sau un document echivalent. Dar principiile explorate mai sus vor merge mult spre a vă aduce în echilibru.