Text RPG! (Dezbatere și dezvoltarea de jocuri) - Forumul QSP
Re: RPG text!
Storm,
te prea confuz. Am arătat arată ca baza mea. Acesta este doar un exemplu. paranteză pătrată -text-colon, și vice-versa - este doar o etichetă (tag) - este mai ușor și mai convenabil pentru a transporta informații într-o singură variabilă. În ceea ce pentru restul: E aproape adevărat. Am construit un sistem de identificatori diferite: clasa, de tip, tip, subclasa, subtip, etc. Nu am găsit timp să-l descrie într-un limbaj simplu. Despre expresiile regulate stima (ei regekspy, regexp). Face viața mai ușoară pentru fiecare două, sau chiar mai mult. Certificatul QSP care le au, și chiar exemple simple.
Din păcate, am o dificultate temporară cu internetul. Rareori apare aici, se pot întâlni rare și nu ar avea cât mai multe detalii dorit.
EVP,
Sunteți sigur că întregul fișier este încărcat în memoria RAM, dar nu sunt sigur KILLVAR ucide variabilă și nu-l reseta. Cum este munca?
Dar nu contează. Problema principală a distribuției acestor variabile în grămadă este că pentru treizeci sau patruzeci de nume de variabile încă într-un fel pot urma, dar atunci când acestea devin 1-200 - amintesc valoarea tuturor ireală. Numele de mai mult de zece - cincisprezece caractere, știi, sunt dificil de a scrie și a provoca erori. Personal, nu-mi perie memoria mea (deși duplicarea aceleași date, în opinia noastră, risipitor), și se debarasează mintea mea de sarcini inutile.
Aleks Versus turn vozdvigatel

Aleks Versus a scris (a):
Sunteți sigur că întregul fișier este încărcat în memoria RAM, dar nu sunt sigur KILLVAR ucide variabilă și nu-l reseta. Cum este munca?
Și ce te-a surprins? Da, nu știu exact, dar cred că zona de memorie, o dată rezervată pentru variabila declarată nu poate fi eliberat, ci pur și simplu adus la zero. Nimic în acest sens, în opinia mea, nu este surprinzător.
În ceea ce privește a doua parte. Bună, căpitane. Dacă doriți să subliniez eroarea mea - specifica, dar nu trebuie să scrie banalități lipsite de sens. Ok?
EVP

Administratorul a dezactivat postarea publica la
Re: RPG text!
Aleks Versus. Mă întrebam cum te trage datele dorite dintr-o variabilă în care sunt scrise. acest mecanism codul în sine)
UPD: Aleks Versus. puțină înțelegere a expresiilor regulate și a citi codul motorului dvs. găsit ceva care interesează. Motorul are o locație „get.tag.cont“, care primește conținut de la orice etichetă dublă. Mica înțelegere a acestui sistem, pentru mine a concluzionat că acest lucru este în continuare cel mai bun sistem pentru articole. Deoarece este mult mai ușor de interacțiune cu obiecte, adăugarea de noi proprietăți.
În timp ce eu sunt în căutarea motorului în codul dumneavoastră că adăugați proprietăți noi la subiect
Storm proprietar furtună turn 90 posturi
Re: RPG text!
Storm,
cod este destul de simplu, dar da, folosește expresii regulate. Puteți face fără regex pe o simplă și la mijlocul Instr, atunci codul va ieși un pic mai mult.
Da, cu toate caracteristicile potrivite. Sincer, i-am scos din motor, pentru că de foarte multe ori le folosesc, și târât în easy.math. Poate că până la sfârșitul verii va pregăti o descriere adecvată a lucrării.
Um, nu am înțeles despre codul care adaugă proprietăți noi la acest subiect. Dacă vrei să spui o bucată, cum ar fi arme de pompare, adică schimbare care afectează capacitatea, etc. va trebui să facă pentru a scrie o funcție separată, dar când am scrie, eu nu știu. Dar, ca un exemplu, să spunem, fermeca sabie obișnuită de foc.
Daunele armelor este determinată o astfel de listă este admisibilă:
[Uron: u1: zdrobire: u2 u1: taiere: p1 u2: 500 p2: 2500 u3: ognennyy_mgc: p3 u3: 0: uron]
Asta este, unele tag-ul încorporat în celălalt, și așa mai departe. Tipurile de daune și valorile lor pentru un anumit obiect.
Pentru a încânte sabia de foc, trebuie să modificați valoarea p3. Scrieți o funcție care devine textul între [uron. uron], se verifică dacă ognennyy_mgc este prezent, verifica / preia p3 valoare. schimba-l în conformitate cu proiectarea mecanicii (în unele jocuri, de exemplu, este inacceptabilă pentru o armă mai incante decât o dată, în timp ce altele pot fi „dozacharovyvat“), după care este nevoie de obiectul și îl înlocuiește
[Uron: u1: zdrobire: u2 u1: taiere: p1 u2: 500 p2: 2500 u3: ognennyy_mgc: p3 u3: 0: uron]
pentru a spune acest lucru
[Uron: u1: concasare: u2 u1: Cutting: p1 u2: 500 p2: 2500 u3: ognennyy_mgc: p3 u3: 2500: uron]
Asta e toată înțelepciunea. În curând sper să termin acest epic cu motor, pentru a termina aceleași arme, sistem de luptă, și altceva, și va încerca să pregătească o descriere completă.
Re: RPG text!
Storm,
Dușmanii din motorul meu este, de asemenea, un obiect (atâta timp cât eu chiar nu au un mecanism de a lucra cu adversarii. Cel mai probabil se va lucra împreună cu mecanicii de luptă). Și ei au aceeași descriere regula (priblizaitelno, desigur), cel al subiecților. Ie Puteți le specificați. inamic proprietatea unor vulnerabilități. Să presupunem că avem schelete, vampiri, zombi. Ele împărtășesc o caracteristică: ele - strigoi. Am pus acest lucru în însuși mecanismul bonus de luptă în cazul în care arma prejudiciată foc, iar adversarul are caracteristica de „Undead“. Sau, să zicem, o armă este o proprietate de „argint“. Acesta va fi, de asemenea, un bonus în interacțiunea cu strigoi. În general, totul funcționează la fel ca în „Doodle Dumnezeu“. Dacă două obiecte au proprietăți necesare - acestea interacționează. Dacă nu se observă proprietățile dorite - o reacție sau nu, sau este un standard, opțional))).
Aleks Versus turn vozdvigatel

unde n - numărul de caractere din partid, numerotarea începe de la zero, n = 0 corespunde întotdeauna personajului principal. Dar puteți utiliza timpul de operare cu tag-uri, pe care le inteleg. Rescrie aceleași date prin etichetele:
în cazul în care tag-ul „numele“ - numele eroului, și „HP“ - sănătate, n - numărul de caracterul individual al partidului. Și aici am o întrebare: care sistem pentru a descrie caracterul utilizat pentru manipularea datelor doar pentru lupta? Dacă folosim variabilele, acestea sunt stabilite înainte de a lupta și de manipulare cu ei va fi ușor. Dacă utilizați etichete, fiecare acțiune în lupta va fi însoțită de o schimbare într-o anumită etichetă, iar acest lucru necesită are funcția sa), nu este dificil să se scrie deloc. Dar și dacă vom păstra o linie destul de mare de date în $ CHARNAME variabilă [n]? Se obține prin fiecare ostilităților calculator se va ocupa, chiar și cu o luptă de actualizare simplă a ecranului pentru a modifica variabile indicator, spun sănătate. Acesta ar trebui să ia în considerare cu atât mai mult că astfel de variabile $ CHARNAME [n] nu este unul ($ CHARNAME [0], $ CHARNAME [1], $ CHARNAME [2], și așa mai departe. D.).
Există posibilitatea de a utiliza variabile temporare, adică, înainte de bătălia de tag-ul este îndepărtat, iar valoarea atribuită unei variabile temporare, ca aceasta
Și continuă să folosească aceste variabile temporare. Într-o anumită măsură, acest lucru se va rezolva problema, după o luptă cu toate variabilele „temp“ pot fi eliminate.
Dar toate acestea sunt doar o speculație este recomandabil să se utilizeze o parte din sistem)
Un imens sistem plus etichetat, eu cred: nu colmatarea variabile care pot apărut din cauza naturii motorului, atunci când o variabilă inexistentă, în cazul în care este numit este egal cu zero. Mai puțin: mai dificil de manipulat astfel de date. Dacă utilizați sistemul de curent alternativ, plus: manipularea ușoară a minus formule: înfundarea zero, variabile care trebuie să le șteargă.
Cu privire la oportunitatea sistemului a venit mai mult pentru aceste motive: să spunem că vrem să lase o parte din caracterul la un moment dat, în timp ce stocarea tuturor datelor pe ea într-o singură linie $ CHARNAME [n] este cea mai bună opțiune, deoarece această linie nu este înfundat de zero variabile. Al doilea motiv are de a face cu adaos de diferite tag-uri în linia $ CHARNAME [n], să abilități diferite, sau orice altceva. În acest fel, vom crește linia în sine, și cred că este dificil să se proceseze. Deși, eu pot la ignoranta lor, pur și simplu exagera totul.
Storm proprietar furtună turn 90 posturi
Storm a scris (a):
ce o descriere a sistemelor de caractere folosite pentru manipulare a datelor doar pentru luptă
Există în mod clar. La momentul luptei sunt date de toate obiectele utilizate în variabilele de conducere. Am avut un gând de a converti înainte și înapoi, dar este o sarcină pe player. Pur și simplu converti un timp din tabelele de date într-o variabilă temporară, iar atunci când lupta este de peste, converti în direcția opusă.
Storm a scris (a):
În acest fel, vom crește linia în sine, și cred că este dificil să se proceseze.
Da, cel mai probabil este, dar eu cred că această dificultate va fi imperceptibil, mai ales în player-ul clasic. Este foarte dificil de a face o astfel de linie de mare, care a fost palpabil. Cel puțin nu am putut.)
Re: RPG text!
Aici este opinia mea cu privire la bine-RPG!
. mecanică
Cu toate acestea, este necesar nivelul de restricție, de exemplu.
Ai un nou nivel, aveți 5 caracteristici puncte și 2 puncte de aptitudini (avantaje). Și, aici jucătorul a petrecut ultimele puncte, iar acum a înțeles totul. Desigur, puteți lăsa posibilitatea de a primi nivelul și dincolo, pentru caracteristicile punctelor. Dar, atunci jucătorul va rezervor. Pentru că, în joc o lume deschisă, și leagăn poate fi oriunde, la sfârșitul anului (dacă este), jucatorul distruge instantaneu personajul negativ principal (da, a rezolvat caracteristicile mafioti de ridicare la nivelul jucatorului, sau chiar mai mare), dar există un dezvoltator dorește.
. lume deschisă
Fără îndoială că este partea corectă pentru jocuri de acest gen, ca jocul devine mai interesant. Dar, avem nevoie de dinamic, este necesar ca orașul schimbat în timp (mulțumesc Randa), acesta poate fi modificări minore (comerciant a murit ar trebui, pentru că el a înșelat-o pe soția sa, și ea a ordonat ierbicid) și semnificativă (date oraș capturat Alex Bishop, și, prin urmare, alte taxe, precum și relația cu călătorii, și poate că Alex te urăște, atunci toate gardienii te va ataca). Prin urmare, o lume gol, nu pe nimeni, nu-l place.
. Misiuni
Cu adevărat acestea ar trebui să fie variate, și nu trebuie să-l omoare dușmani N, N aducă piatră. Și cum în CET, da ucide Petya, și adu-mi inelul, soooo l-am omorât, sa întors și a ucis pe Bob, iar acum avem nevoie pentru a investiga acest mister. Deci, și imens și semnificativă, care afectează jocul în sine quest-uri.
. Libertatea de alegere și acțiune
Este necesar, dar nu suficient în cazul în care există un privilegiu. De exemplu: Ați parcurs un drum lung de erou, câștiga o mulțime de monștri, și dintr-o dată a vrut putere. Și există două moduri: de a angaja mercenari, și cu asalt castelul, înainte de a fi făcut un plan. Sau construi propria lor, pentru a crea o armată, economia, se căsătoresc, și așa mai departe. Și, apoi captura toate terenurile disponibile, fiecare teren are propria poveste și alegere.
Oliver Magni nominis Umbra
