Crearea npc, configurarea evenimentelor, lucrul cu clientul și serverul

html (test.htm conform raportului nostru)

(id 1000 conform ID-ului nostru în multi-cell)

= Configurarea evenimentului =

Mulți oameni se confruntă cu o astfel de problemă, cum ar fi "Am pus totul ca tine, dar am doar drop primul (două primele) articole. De aceea se întâmplă ...






Luați în considerare flagsettingtime în detaliu. Valoarea 36000 corespunde la 36 de secunde din evenimentul ONE-CYCLE. În acest timp, lumea poate cădea
dropitem0 = fir_spring 5
+
dropitem1 = deco_bead 2
+
dropitem2 = deco_star 2
+
dropitem3 = capătul de flori 1
=
10 elemente de eveniment.
Mai mult decât atât trebuie să scadă mai întâi un fir_spring ROW 5, apoi 2 consecutive deco_bead, etc ... Atunci când timp de 36 de secunde, doar de compensare PRIMUL perdmetov 9, flowerpot în acest ciclu nu dropnetsya și după picătură vor fir_spring.
Ie cu diferite online vor fi diferite picături de elemente de eveniment. Ie în plus față de scăderea de elemente de care aveți nevoie, în funcție de online. operează flagsettingtime.

L2Decrypt - pentru codarea și decodarea fișierelor

Programul L2Tool este folosit pentru a înlocui texturile editate în fișiere .utx.

Plug-in Photoshop DDS - pentru a deschide și a edita fișiere DDS în Photoshop.
(Extras la. \ Photoshop \ Plug-Ins \ Formate de fișiere)

Creați un dosar cu orice nume și puneți în el fișierul L2Font-e.utx și programul L2decrypt. Apoi deschideți acest dosar
în Windows Explorer standard (necesar). Apoi, luați L2Font-e.utx și trageți-l în fișierul programului
l2decrypt.exe. Fereastra l2decrypt este deschisă și așteptăm ca partea de jos a acestei ferestre să apară: Toate sarcinile au fost terminate, returnat
pentru a ieși. După ce ați așteptat această inscripție, puteți închide fereastra de decodificare l2. Acum, în același folder după decriptare
a fost generat fișierul "L2Font-e.clear.utx"

Acoperim L2tool (este în japoneză) și
--în prima linie specificați arhiva împachetată (sursă) L2Font-e.utx
--în al doilea rând, indicăm fișierul DDS editat în Photoshop cu același nume, pe care l-am scos
UTPT.exe.
--în a treia linie, specificați arhiva decriptată L2Font-e.clear.utx, pe care ați decriptat-o ​​folosind l2 decrypt,
imediat va apărea o fereastră în care trebuie să selectați numele texturii pe care ați editat-o. După toate astea
apăsați butonul "set" și voila, totul este gata.

Textura editată a fost salvată în arhiva L2Font-e.clear.utx pe care ați decriptat-o.

Deselectați fișierul în L2Font-e.utx, copiați-l în folderul Systextures al jocului și înlocuiți-l cu cel vechi
arhivă criptată originală.

Modificarea elementelor din joc

Armele, armura, setările de calificare sunt stocate în fișierele XML și în baza de date. În curând
utilizarea bazei de date pentru competențe va fi eliminată. În fișiere XML, o descriere a modului în care lucrurile sunt stocate și abilitățile ar trebui să fie stocate
pentru a influența statisticile (care sunt folosite pentru a calcula daunele, cotele etc.).

Iată un exemplu de fișier XML pentru arme și armuri:

Prima linie este necesară doar pentru limba XML în sine, săriți-o.

A doua linie indică ID-ul lucrului și numele său (trebuie să corespundă aceluiași lucru în baza de date).

Apoi, există anumite condiții pentru a accepta lucrurile pentru statistici (atunci când arma este îmbrăcată sau scoasă).
Astfel de condiții pot fi de la zero, una, două sau mai multe. Condiția este inclusă într-o etichetă .

Eticheta de condiție constă în foarte starea care trebuie verificată pe player și efectul asupra statisticilor jucătorului. În
În exemplul de mai sus, condiția pentru adăugarea unui efect este rasa oamenilor (dacă nu omul, efectul nu va porni). condiție
închis într-o etichetă , și nu este necesar. Dacă condițiile nu sunt specificate - toți jucătorii (care poartă această armură / armă)
va primi un efect de la ea.

Efectul este adăugarea sau multiplicarea statisticilor jucătorilor cu o anumită sumă. În exemplul stat, "pDef" (apărarea puterii) și al lui
o valoare de 36. Aceasta înseamnă că o valoare de 36 va fi adăugată la puterea de apărare a jucătorului. Voi descrie "ordinea" de mai jos.

În final, chiar dacă funcția este conectată la player, este necesar să existe o condiție când va funcționa. În noi
De exemplu, condiția este: pDef va fi incrementat numai atunci când obiectivul jucătorului este atac de schelet.

Și din nou: pot exista multe condiții , ei pot avea o condiție atașată jucătorului , și fiecare dintre ele
poate afecta unul sau mai multe statistici ale jucătorilor ( , , ,

), iar fiecare stat va fi adăugat doar în acest scop
atunci când condiția este îndeplinită.

Desigur, toate acestea nu sunt necesare. Pentru majoritatea obiectelor de armament și arme, veți avea ceva asemănător
acestea sunt:

care adaugă doar 36 de puncte pentru apărarea puterii pentru fiecare jucător care îl va îmbrăca, fără condiții.

Abilitățile sunt descrise în același mod, dar cu o adăugare - abilitățile au niveluri. Prin urmare, valoarea pentru
creșterea / scăderea statutului va depinde de nivelul de calificare.

În aceste scopuri avem tabele:

În rând indicați selectiv numărul de nivele. Apoi proclamați masa (puteți proclama
multe * 04), fiecare dintre ele va avea valori 'nivel' separate de spații. Numele mesei poate fi
oricum, dar ar trebui să înceapă cu o #. În valorile pe care le specificați numele tabelului.

Acum voi descrie parametrul "comanda". "Ordin" este ordinea așezărilor. Să ne imaginăm că avem putere de bază
apărare jucător: basePDef
protecția ArmorPDef
nivel de modificare a playerului: lvl
abilitatea pasiva a apărării de putere trebuie să adăugați: skillPDef1
buff of defense de putere pe care trebuie să îl multiplicați: skillPDef2

Obținem următoarea formulă:
((basePDef + armorPDef) * lvl + skillPDef1) * competențăPDef2

Semnele de înmulțire a sumei din această formulă sunt indicate prin ordinea de calcul. Se pare:
basePDef va avea ordinul 0x10
armorPDef va avea ordinul 0x10






lvl va avea ordinul 0x30
skillPDef1 va avea ordinul 0x40
skillPDef2 va avea ordinul 0x50

Valorile cu aceeași ordine de calcul vor fi calculate într-o ordine imprevizibilă. În acest lucru, niciodată nu
aceeași ordine a parametrilor add / substitute și multiplay / divide.

Mai multe despre condițiile. Puteți specifica operațiile logice , , :

Operațiile privind valorile sunt:

Operația pentru numere și rădăcini "aleatorii" și alte funcții matematice poate fi adăugată mai târziu, în acest caz
necesare.

Trebuie să specificați valoarea nu ca o constantă, ci ca o expresie:

Această expresie începe să contorizeze cu o valoare de 0, iar pentru exemplul de mai sus avem nivelul jucătorului înmulțit cu
valoare din tabel și această valoare va fi utilizată pentru a calcula daunele manuale pentru fiecare perioadă de efect.
În consecință, am obținut - o precizie sporită în luptă și un înțărcare pentru această mană (MR).
Valorile posibile pentru calcule:

Efectele lungi ale abilităților sunt:

Iată câteva statistici de editat:

Aceasta nu este totul, este doar o parte din statisticile care mi-au venit în minte, dar puteți fi utile pentru editare
unelte, etc.

Acum, să ne uităm la modul de a face orice element unic.

Și astfel, alegem shmotik-ul pe care vrem să-l îmbunătățim: am ales pentru mine:

Deschideți datele \ stats \ armor \ 0600-0699.xml, găsiți linia cu "mantaua noastră magică".

Deoarece el este o mantie de magie, nu ar fi nerezonabil să-l facem un magician. Și ce nevoie de magicieni? Corect, MR, regen MP, viteză
caste, putere caste. Dar dând totul la o parte este prea mult, pentru asta vom face, de exemplu, trei schimbări
sporiți intelectul cu +1, regMp, bine și viteza de turnare (mAtkSpd).

Hmm, cu bonusuri cum a fost hotărât, acum trebuie să determinați valoarea acestui bonus, fie că se va adăuga pur și simplu
orice număr dat (constant) sau procente din statul deja disponibil (adică mdef 100, plus 10% - primit
110).

Pentru mine, eu aleg așa.
INT adaug 1.
Regenerarea MP - creștere cu 20%.
Viteza de turnare a crescut cu 25%.

Acum, în ceea ce privește codul corespunzător:

Deoarece adăugăm (sign +) INT, folosim eticheta :

Cu int inteles, acum in ceea ce priveste regMp (semnul *, multiplicare):

Criptare și decriptare * .ini

Pentru a codifica sau decoda L2.ini, veți avea nevoie de L2encdec.

1. În dosarul l2encdec, faceți două comenzi rapide pentru l2encdec.exe.
2. Faceți clic dreapta pe ETICHETA 1, mergeți la Properties
3. În linia Obiect (după ce este scris acolo) puneți un spațiu și scrie -s l2.ini (după ce-a pus un spațiu și în loc de l2.ini
numele fișierului pe care trebuie să îl decriptați este scris). Faceți clic pe OK
4. Faceți clic dreapta pe LABELUL 2, mergeți la Proprietăți
5. În linia Obiect (după ce este scris acolo) puneți un spațiu și scrie -h 413 dec-l2.ini (observați spații precum și
mă. și în loc de l2.ini este scris numele fișierului pe care doriți să-l criptați). Faceți clic pe OK.

Deci l2encdec este pregătit pentru muncă

Acum puneți fișierul de care aveți nevoie pentru a decripta / cripta în folderul cu l2encdec (în acest caz este l2.ini.
poți face asta pentru tine. Dar nu uitați să scrieți numele acestui fișier în comenzile rapide!

Pentru a decripta, faceți clic de 2 ori pe prima comandă rapidă și veți vedea dec-l2.ini (fișier decriptat, puteți
editați-l cu un notebook și domniți în el ceea ce aveți nevoie))
Pentru criptare, faceți clic de 2 ori pe eticheta SECOND și veți avea enc-dec-l2.ini (un fișier criptat,
redenumiți-l la l2.ini și împingeți-l în dosarul de sistem)

Eventmatch [Evenimente Ghid]

1. Deplasați-vă la locul unde doriți să creați un client și introduceți următoarea comandă:
// eventmatch crea 1 team1 team2 1 1 1 100 100

2. Introduceți lista evenimentului, ar trebui să apară ceva de genul:
SYS: - Lista de potrivire a evenimentului începe -
SYS: 1: 'team1' vs 'team2'
SYS - Lista de potrivire a rezultatelor -
Aici se arată că 1 membru este instalat, care are ID: 1 și se numește "team1 vs team2", adică team1 împotriva echipei 2.

3. Tastați eventmatch manage 1, aceasta indică faptul că veți deschide panoul de control al evenimentului care are ID: 1

4 .żn colțul din dreapta sus există un buton de a elimina o piesă cursa, ceea ce înseamnă că pentru a elimina cursa de piese, apoi faceți clic pe Creează Race Track, se va deschide o fereastră nouă și această fereastră faceți clic pe butonul meu coordonate, coordonatele dvs. vor apărea pe axele X, Y, Z, coordonate registrul de date mai jos în domeniile relevante X, Y, Z, sunt sub lungime 2 câmp și lățimea arena, arena este lung de la nord la sud, iar lățimea de la est la vest.

5 .acum atunci când reveniți la fereastra principală sunt 2 lucruri importante este fișierul Race Setup (setări cursă), și fișier de comandă (cursă echipa), vă sugerez să creați, cum ar fi discul C: /, de exemplu, fișierul C: \ arena_setup.ini, astfel încât va fi mai ușor pentru a introduce comenzi, și fișierul C: \ command.ini, pentru a crea meniul komand.Chto pentru a accesa aceste fișiere este prezentat mai jos.

Formatul fișierului de configurare a cursei:
Setări pentru rasă (fișier: arena_setup.ini):
--Defilați toți elfii întunecați cu un nivel de 70+
--Arme eroice interzise
--Nu permiteți să aplicați abilități cum ar fi Anularea, Învierea, Rechemarea partidului.

[1] Linia BuffCnt = 10, afectează cât de mult poate jucatorul să-și păstreze buffii în timpul începutului bătăliei, în prezent, 10 buffs.
Următoarele spectacole vor fi oferite jucătorilor la începutul bătăliei.
După aceasta, sunt indicate abilitățile interzise în timpul luptei.
Următoarele articole sunt interzise pentru utilizare în luptă.

Ie La începutul evenimentului, vor fi afișate datele liniei, voi explica ce înseamnă datele liniei:
Prima linie: "// anunță Hello World"
Această linie va afișa un anunț în lumea Hello World
Al doilea rând: "// anunță În sfârșit a dat seama"
Această linie înseamnă că va exista un anunț în lume. În cele din urmă a dat seama
Al treilea rând: // eventmatch dispelall 1 "

Înseamnă că există un start pentru meciul pentru ID-ul meciului: 1

Alte exemple de comenzi:
Masa tuturor jucătorilor din zona de vizibilitate
// eventmatch useskill [match_Id] 1016 5

Recuperarea în masă a CP
// eventmatch useskill [match_Id] 1306 6

În fișierul de comandă, introduceți pur și simplu Cmd și ID-ul următor al comenzii, adică. exemplu:
CMD1
cmd2
CMD3
Etc.

Apoi, introduceți = și în citate scrieți exemplul de comandă:
Cmd3 = "// eventmatch useskill 1 1306 6"
Această comandă indică faptul că toți cei care sunt înregistrați pe client vor fi respinși.

Iată locurile de formare terminate:
Stadionul Gludin: -87908 142217 -3645 910x900
Giran Arena: 72982 142759 -3772 920x900

Ie pentru a crea o arena închisă în arena proastă, va trebui să introduceți o astfel de comandă:

// eventmatch crea 1 team1 team2 -87908 142217 -3645 910 900
Creați o arenă închisă și un meci pentru ID-ul meciului: 1.

6 .După ce ai de gând să petrecere (echipa), după ce echipa a fost creată și a recrutat prese împotriva șefului partidului și la apăsarea butoanelor meniului de control eventom Lacăt parte, acest buton va adăuga toate partidului la echipa 1, apoi formați al doilea parte (echipa) și apasă de asemenea țintă șeful partidului și presele închizibilă parte, acesta va fi de 2 echipe.

7 .Dupa ați colectat prese echipa gard, acesta va aduce un gard în jurul tău creat o arenă, apăsați din nou și se va elimina gardul din jurul arenei.

8. Comandă: // eventmatch dispelall 1, înseamnă începutul evenimentului 1, cu setările din fișierele .ini

9. După ce totul este gata, apăsați butonul Start și înainte în bătălie.

10. După încheierea meciului, puteți apăsa unul dintre butoane pentru a vă distra:
Team1 Focuri de artificii sau focuri de artificii Team2
Care dintre butoanele pentru a apăsa acest lucru depinde de echipa câștigată, adică acesta este un fel de aplauze (focuri de artificii) pentru jucători.

.După 11 ca meciul sa terminat, puteți da clic pe gard în jos (omit gard), apoi faceți clic pe Ridicați o blocare, să desființeze echipa, sau făcând clic pe un buton de pornire cursa din nou pentru a începe datele de comandă tac.
12. Mergeți la pasul 6 pentru următoarea luptă.

Comentarii:
1.Pentru a trimite un mesaj jucătorilor în timpul meciului (eveniment), introduceți-l în câmp și faceți clic pe butonul Înainte, dar amintiți-vă că mesajul nu trebuie să fie lung.
2.După înfrângerea unei anumite echipe puteți face clic pe butonul Ending Message, pe ecranul jucătorilor apare un mesaj: GAME OVER
3. Pentru a deschide fișierul de pe disc, faceți clic pe butonul Command de mai jos și introduceți calea către fișier și numele fișierului pentru exemplu:

Setări pentru atelier:
C: \ arena_setup.ini
Setări de comandă:
C: \ command.ini


Voi adăuga arena după cum urmează:
// eventmatch crea [nomer_matcha] [imya_1_komandy] [imya_2_komandy] [Coordonata x] [y coordonate] [coordonatele z] [Walls lungime] [înălțimea peretelui]







Trimiteți-le prietenilor: