Editarea xml în linii de ansambluri 2

Descriere: Editare XML vă va ajuta în schimbarea "statistici" de competențe, armuri, diverse arme și alte lucruri.
Deci, este util pentru cei care sunt implicați în crearea de magazine și editarea lor.







Nu ne vom ocupa de toate caracteristicile XML, suntem interesati doar de partea care se refera la Lineage 2.
XML în serverul Lineage este folosit pentru a descrie statisticile despre arme, armuri, abilități, argumente, zone, magazine, zone de repornire și multe altele. Pentru arme, de exemplu, parametrii fizici. și magicianul. atac, pentru armura - protecție, pentru abilități - durata acțiunii, forța, efectul etc. De exemplu, în fișierul "servername.xml" numele serverului sunt stocate în mod implicit. Aceste nume pot fi ușor schimbate. În plus față de modificările de pe partea serverului, schimbările sunt necesare de la client (partea clientului trebuie să schimbe fișierul "servername-e.dat". * * .dat fișierele pot fi modificate cu programe speciale. * În fișierele XML zone, parametrii acestor zone sunt stocate. Fișiere XML în care o anumită abilitate este atribuită unui anumit element (de exemplu, gulerul de apel al unui lup este atașat la gulerul lui Wolf).

Ce trebuie să știți ca bază pentru editare?

2) Numele fișierelor * .xml sunt date de gama de statistici id. De exemplu, în fișierul numit 0800-0899.xml există statistici de la id = 800 la id = 899. Pentru viteză, este de dorit (dar nu este necesar) într-un singur fișier să nu se păstreze mai mult de o sută de id. Trebuie să spun că pot exista excepții în nume, fișierele pot fi chemați fără a specifica id-ul intervalului care este stocat în el. Acest lucru este tipic pentru argumente și zone și un fișier cu elementele animalului de companie.

3) Când se utilizează text, se recomandă (dar nu este necesar) să se utilizeze caractere latine.

4) Parametrul ID trebuie să fie în intervalul de la 1 la 2ккк


3. Editare de statistici și abilități.

În dosarul cu statistici găsiți mai multe dosare care sunt responsabile de parametrii armelor, arme, argumente, aptitudini și alte elemente (de exemplu, cutii pentru revigorarea hp / cp / mp sau derulează cu basuri).

Formatul înregistrării unui stat este după cum urmează:


Toate modificările în stat ar trebui să fie între etichete

Acum ia în considerare operațiunile principale cu statisticile.
- adăugând statistici. Statul va crește cu suma specificată.
- multiplicarea statisticilor. Adică, dacă purtați un lucru sau folosiți o abilitate, statisticile dvs. se vor multiplica. De exemplu, dacă
- Scăzând. Asta înseamnă că, dacă îți îmbraci un lucru (sau folosești o abilitate), statisticile (sau statisticile tale) vor scădea.
- Creșteți / micșorați la ascuțire. Afișează cât de mult statul va crește / scădea atunci când ascuți un alt +1
- Specificarea unei valori stricte. Asta înseamnă că, dacă poți purta un lucru cu o valoare de 20, atunci acel stat, dar care va afecta această valoare, va fi de 20 de ani.

Parametrii principali ai acestor operațiuni sunt:
val = "" - valoare
ordine = "" - prioritate în formula (nu voi detalia prioritățile din acest articol, acesta este un subiect separat și complex)
stat = "" - ce să se schimbe de fapt

Valorile comenzilor pot fi următoarele:
0x08 - setat
0x10 - add / sub (arme, armuri, costume de bijuterii) și (STR, CON, DEX, INT, WIT,
0x20 - nu este utilizat (opțional)
0x30 - mul / div (bastoane, buffs, debuffs, SA (abilități speciale de arme), bonusuri de armură)
0x40 - adăugați / sub (masteri, buffs, debuffs, SA (capabilități speciale de arme))
0x50,0x60 - nu se utilizează (opțional)
0x0C - enchant

Liste statice disponibile pentru modificare:
Această listă este diferită în diferite ansambluri, dar în majoritatea cazurilor este obișnuită utilizarea următoarelor nume.

Schimbarea cantității maxime de HP - maxHp
Modificarea numărului maxim de CP - maxCp
Schimbați valoarea maximă a MP - maxMp
Regenerarea HP - regHp
Recuperarea CP - regCp
Regenerarea MP - regMp
Vindecare eficienta - gainHp
Skill heal - giveHp
Heal bonus - bonusHp
Protecția fizică - pDef
Magic Protection - mDef
Atac fizic - pAtk
Magic Attack - MAtk
Viteza fizică de atac - pAtkSpd
Viteza atacului magic - mAtkSpd
Viteza de redare - mReuse
Shield Defense - sDef
Shield Defense Angle - shieldDefAngle
Impact critic - cAtk
Adăugarea la impactul critic - cAtkAdd
Nat. daune în pvp (de exemplu pentru Duel Might) - pvpPhysDmg
Mag. daune - pvpMagicalDmg
Deteriorare - pvpPhysSkillsDmg
Dodge - rEvas
Dodge de la abilități - pSkillEvas
Șansa de blocare cu scut - rShld
Crit chance - rCrit
Chance Blow - blowRate
Chance of Lethal - lethalRate
Mag. Crit. șansă - mCritRate (mCrit nu funcționează!)
EXP, SP șansă - rExp
Anulați - anulați
Precizie - accCombat
Aria de acoperire nat. atacuri - pAtkRange (pentru luptători)
Suprafața de acoperire mag. atacuri - mAtkRange (pentru mages)
Unghi de atac (numai pentru războinici) - pAtkAngle
Numărul de atacuri - atkCountMax
Răsturnarea persoanelor. abilități - atkReuse
Viteza de rulare - runSpd
Viteza de mers pe jos - WalkSpd
STR - STR
DEX - DEX
WIT - WIT
INT - INT
MEN - BĂRBAȚI

Agresiune - agresiuneVuln
Sângerări - sângerare
Poison - poisonVuln
Stan - stunVuln
Paralizant - paralizieVuln
Țineți vrăji - rootVuln
Somn - somnVuln
"Flip" a țintei - confuzieVuln
Mișcare - mișcareVuln
Focul de incendiu
Vânt - windVuln
Apă - apăVuln
Earth - earthVuln
Atacurile sfinte - holyVuln
Atac Dark - DarkVuln
Rezistați la anulare - cancelVuln
Debuffs - debuffVuln
Rezistența la crit - critVuln

Rezistă împotriva armelor (nu am nevoie de o descriere aici)

Procentul de daune reflectate - reflectDam (atenție! ReflectDmg ReflectDam)
Procentajul daunelor împărțite - absorbDam
Procentul daunelor transferate - transDam
Reflecția magicianului. abilități - reflectă SkillMagic
Reflecția fizică. abilități - reflecțieSchillPhysic







Altele (de exemplu):

Atac pe giganți - giganți pAtk
Protecția împotriva rănilor - pDef-undead
Atac pe animale - pAtk-animale
Protecție pe monștri - pDef-monștri
Limita inventarului - inventarLimit
Limit BX - WhLimit
Limita de transport - FreightLimit
Limita de vânzare. - PrivateSellLimit
Limita de cumparare - PrivateBuyLimit
Limita ambarcațiunii dwarven este DwarfRecipeLimit
Limita zecimală comună pentru meserii - CommonRecipeLimit
Consum MR. abilități - PhysicalMpConsumeRate
Consumul de MP mag. abilități - MagicalMpConsumeRate
Consumul de dansuri MP - DanceMpConsumeRate
Consumul HP - HpConsumeRate
Consumul MP ​​- MpConsume
Soulshots consum - soulShotCount
Skill Mănăstire - skillMastery
Stați sub apă - respirație

Adăugări pentru editarea statisticilor de calificare

Este important să știți că orice abilitate începe cu o etichetă de deschidere și se termină cu o etichetă de închidere. În abilități există 3 etichete necesare, fără de care nu va funcționa - aceasta este țintă, skilltype și operatetype.

1. țintă - o etichetă care indică cine va fi vizat, așa cum sugerează și numele. Se iau următoarele valori:

TARGET_SELF - indică faptul că această abilitate va fi folosită numai de proprietarul său (auto-buff, cum ar fi Battle Roar sau War Cry)
TARGET_NONE - obiectiv nedefinit
TARGET_ONE - indică faptul că scopul abilității dvs. este cel din țintă.
TARGET_AREA - indică faptul că abilitatea va fi masivă
TARGET_AGGREMENT - indică faptul că ținta va fi cea care vă atacă

2. skilltype - o etichetă care indică tipul de abilitate (buff, debuff)
Se iau următoarele valori:
BUFF - buff (are un efect pozitiv)
DEBUFF - debuff (are un efect negativ)

3. functiontype - această etichetă servește pentru a determina tipul de abilitate (activ sau pasiv)
OP_ACTIVE - abilitate activă, poate fi utilizată de către jucător
OP_PASSIVE - abilitate pasivă, abilitate cu o astfel de operațiune nu poate fi utilizată (întotdeauna validă)

Acestea erau variabilele obligatorii folosite în abilități. Acum să trecem la restul:

-putere - pricepere
-hitTime - viteza. Pentru un buff, aceasta este viteza de casting pentru vraja, fizic. abilitate - viteza de atac
-reuseDelay - retragere de calificare
-hpconsume. mpconsume - consum de MP, HP
-castRange - acesta este intervalul de utilizare a unei abilități (distanță)
-isMagic, isDebuff, isBuff sunt etichete de conducere, pot fi setate la "true" și "false". De exemplu, isBuff = true (aceasta înseamnă că abilitatea este un buff)
-efectRange - raza de acțiune (pentru abilitățile de masă)
-agro - ceea ce este agr, și care este puterea lui agra, cred că nu trebuie să explic.

Trebuie să spun că, în funcție de ansamblu, pot fi folosite și alte etichete, dar din moment ce acest manual este comun tuturor ansamblurilor, nu le vom da.

Efectul efectului în abilitățile Lineage 2 este foarte comun. De obicei, eticheta este folosită pentru a "adăuga acțiuni complexe" la pricepere. Dacă abilitatea are o implementare complexă, este obișnuită adăugarea unor etichete individuale, care sunt implementate în centrul serverului Lineage. Aceasta este cea mai importantă etichetă pentru utilizarea în abilități. Iată un exemplu de utilizare a unei etichete.


Ce înseamnă asta?
numele este tipul de efect
val este valoarea efectului. Pentru debuffs - o șansă de a trece, pentru abilități de luptă - putere.
timpul - efectul efectului efectului
StackOrder și stackType sunt valori deja descrise în această abilitate și sunt specificate în kernel-ul serverului și pot fi numite diferit (sau chiar absente) în diferite ansambluri.

Destul de important în lumea jocurilor este noțiunea de zone. De exemplu, în zonele urbane, zonele pașnice în care sunt interzise atacurile altor jucători (și uneori NPC-uri). Sau zona din arena unde nu există un contor pvp / pc. Zonele, precum și statisticile / abilitățile, sunt de obicei setate în fișiere xml.
Luați în considerare structura descrierii zonei:


Parametrii utilizați la crearea unei zane:
id este ID-ul zonei.
tip - tip de zonă (oraș, arenă, jailzone, Boss). De exemplu: Oraș - zonă liniștită (oraș), Arena - zonă de luptă (PVP). Pot exista și alte tipuri de zone care sunt descrise în nucleul serverului.
forma tip este forma sau aspectul unei zone. Există două tipuri: Poli (zone poligonale) și Rect (zone rectangulare). În diferite ansambluri, numele de tip pot diferi (de exemplu, nPoly și Cupoid). De asemenea, în unele ansambluri, poate fi folosit tipul cercului (cerc), pentru a specifica acest tip, sunt indicate coordonatele centrului și raza.
minZ este coordonata de înălțime minimă permisă (z) într-o zonă dată.
maxZ este coordonatul maxim de înălțime permis (z) din zonă.
minZ și maxZ sunt folosite pentru a evita trecerea prin texturi, scufundări pentru ele etc.
nume - o zonă poate fi atribuită orice nume, dar numai din caractere valide, utilizat pentru confortul de lucru cu un număr mare de zone
punct - specifică coordonatele limitelor zonei.

setări - parametrii suplimentari ai zonei. În cele mai multe cazuri, ele nu sunt folosite, deși fac jocul un pic mai interesant. O descriere detaliată a etichetei de setări nu va fi dată datorită faptului că în diferite ansambluri există foarte multe diferențe atunci când se utilizează. În exemplul, descrierea în setările zonei tag-ul este specificat că, după moartea jucător poate părăsi zona, și că, în zona de pe toate charov care sunt suprapuse fără nivel specificat de partid piele de bivol applyEnter și la ieșirea din zona curățată. Voi repeta din nou, în diferite ansambluri această implementare a acestei etichete se întâmplă în moduri diferite.

De asemenea, în interiorul etichetelor puteți utiliza descrierea punctelor "respawn" ale farmecului din ele. Când specificați mai multe puncte "respawning" vraja va apărea în ele în mod aleatoriu.


În lineydzh au un tip special de magazine numit multisell, a fost proiectat inițial pentru schimbul de lucruri de lucruri (pentru prima dată utilizat de către pescari). În prezent, acest magazin este utilizat pe scară largă în serverele pvp pentru crearea de magazine GM, deși această gamă de utilizare nu este limitată.
Numele fișierelor XML pentru magazine, cum ar fi ID-ul acestor magazine (dar există și mici excepții, există magazine unde numele și idul sunt diferite). Formatul datelor din magazin este după cum urmează:


element id - numărul elementului din celula de magazin, utilizat pentru a specifica ordinea de afișare a elementelor din magazin. Rețineți că acest număr NU ar trebui repetat și că fiecare articol ar trebui să fie unic în cadrul aceluiași magazin.
producția este un lucru care este cumpărat în magazin. în această etichetă sunt indicate id-ul elementului și cantitatea acestuia.
ingredient - un subiect pentru care puteți cumpăra producție în magazin. în această etichetă sunt indicate id-ul elementului și cantitatea acestuia. În cele mai multe cazuri, utilizați adena, adena antică sau cola, dar obiectul de cumpărare poate fi orice lucru.
Este necesar să știți că într-un singur element de etichetă pot exista mai multe etichete de ingrediente, ceea ce înseamnă că atunci când achiziționați producția, veți avea nevoie de mai multe elemente specificate. Напрмиер atunci când cumpără ascuțite de la o mamon, trebuie să aveți o adena veche și suluri curate. Utilizarea producției multiple este, de asemenea, posibilă, dar este foarte descurajată de constructori.
Puteți specifica, de asemenea, opțiuni de achiziție suplimentare, cum ar fi opțiunea enchant este adesea folosit, care va cumpăra un lucru deja ascuțit. De exemplu

- va fi cumparat un arc pumn +10. Un alt destul de interesant: Dacă utilizați gulerele încânte trebuie să sune la animalele de companie pentru animale de companie va fi pompat până la nivelul specificat în parametrul enchant. În plus față de enchant, puteți utiliza parametrii pentru pietrele de elemente și așa mai departe.


6. Concluzie
În concluzie, aș dori să-mi cer scuze oamenilor ale căror materiale au fost folosite în scrierea acestui articol, pentru că nu le-au indicat numele. Au fost o mulțime de materiale și tocmai s-au confundat despre ce resursă a fost luată.
De asemenea, ar trebui să spunem că în ansamblurile de servere XML se utilizează foarte larg, nu numai în cazurile descrise mai sus. De exemplu, dimensionalRift.xml descrie parametrii fisurii și parametrii recipes.xml ai studiului și de a folosi retete ca acolo summon_items.xml gulere în care parametrii sunt stocate pentru animalele de companie. Domeniul de aplicare al XML este destul de extins și nu este descris pe deplin în acest articol.
Există o mulțime de controverse în privința utilizării xml sau a costului utilizării complete a bazei de date. Acest lucru se datorează faptului că dimensiunea XML-document este o reprezentare binară mult mai mare de aceiași parametri în baza de date, care afectează o mare nevoie de resurse și creșterea timpului de procesare a informațiilor. Deși nu se uită la ea abandonează complet serverele XML, dezvoltatorii nu vor cauza versatilitatea acestui format.







Trimiteți-le prietenilor: