Jump to content

Unknown76

Members
  • Posts

    135
  • Joined

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Unknown76's Achievements

Poot-butt

Poot-butt (14/54)

4

Reputation

  1. Este foarte greu sa faci un server de roleplay, totul se bazeaza pe comunitate. Cine doreste sa inceapa un astfel de proiect trebuie sa-si puna trei intrebari in urmatoarea ordine, care nu se aplica numai in MTA: 1. Am o comunitate care poate sa sustina serverul? (cand spun comunitate, ma refer la prieteni, internauti, etc. care bai tata, nu trebuie ca ei sa aiba cunostinte de RP dar macar sa-si dea putin silinta) 2. Am cunostintele necesare pentru a face un server (Lua, SQL, programare orientata pe obiecte[1] si putine cunostine ce tin de grafica dx)? 3. Am resursele necesare?[2] (domeniu+hosting site/forum/ucp, server dedicat pentru MTA) De ce a disparut Valhalla? (cod scris de Mount si restul developerilor foarte prost, dar server popular fiind de pe vremea Deathmatch 1.0, cei care au venit dupa ei nu au stiut ce dracu sa mai faca la cate bug-uri avea si codul nu era reutilizabil, modular) De ce a disparul ParadiseRP? (cod extrem de bun scris de Mabako - care a fost dat afara de Mount din vG, nu stiu exact ce s-a intamplat dar asta e - iar comunitate, pauza, spritz.) Unul stia ce inseamna marketing si resurse umane iar altul respira cod, asa e viata. Nu au stiut sa lucreze impreuna, au muscat pamantul, toate s-au dus pe pielea ****. De restul serverelor straine, romanesti, martiene, etc. de RP chiar nu am ce sa spun, au fost servere de apartament si trecatoare. Nu inteleg ce este cu hate-ul acesta pe forum, mai ales aici in sectiunea compatriotilor mei. [1] multi cred ca vor programa doar ei la acel server, bag mana in foc ca 95% din intreaga comunitate MTAro duce lipsa de best coding practices, gandeste-te ca o sa te lasi la un moment dat de server si trebuie sa-ti inteleaga altul codul, mereu am urat fisierele de la Valhalla, daca s-ar fi uitat cineva macar o data pe ele, si-ar fi dat seama cat de murdar este codul, nu e de mirare ca nu intelege lumea cum poate sa extinda scripturile, in programare o functie este menita sa faca un singur lucru, Single Responsibility Principle, din pacate o functie in vG face cate 5-6 kkt-uri odata. Totusi, trebuie sa recunoastem, a ramas cel mai avansat pana la ora actuala si asta chiar ma sperie, nici macar nu foloseste functii de la 1.1 in sus] [2] nu o sa ai niciodata profit dintr-un server MTA, sounds harsh dar e adevarat [bonsu] RP-ul nu e batut in cuie, veniti si voi cu idei de gamemode-uri noi, alte reguli, alta distractie
  2. Stai linistit, noile chipuri de 512 qubits de pe D-Wave (desi nu este un calculator cuantic, la modul real are doar 6-8 qubits) ar putea oricand sa crackuiasca SHA-256 intr-un timp foarte scurt. Asa ca vrei sa-i furi NSA-ului painea de la gura ? Saracii, dupa cum isi mai castiga existenta?! ) Imi imaginez cum va arata tehnologia peste 20 ani. Probabil algoritmii vor cripta in minim 4096 biti, sau se vor folosi metode mixte, ma indoiesc ca cineva o sa hashuiasca minim 10^4096 cuvinte cu speranta de a obtine valoarea initiala a unui hash obtinut prin metoda pe care am folosit-o mai sus. Imagineaza-ti cati TB ar avea o astfel de baza de date Presupun ca urmatoarea idee care te-ar putea face miliardar tine de securitate. Daca ar inventa cineva un nou algoritm care ar inlocui tastarea primitiva a parolei. Sau macar sa ia in calcul alte variabile total haotice, total randomness sa zic asa. Cei de la MEGA (mega.com) au luat initiativa. Ei genereaza in functie de miscarile mouse-ului pe siteul lor si mai nou, in functie de CPU-urile moderne care folosesc vibratii atomice pentru numere true-random.
  3. Stai linistit, noile chipuri de 512 qubits de pe D-Wave (desi nu este un calculator cuantic, la modul real are doar 6-8 qubits) ar putea oricand sa crackuiasca SHA-256 intr-un timp foarte scurt. Asa ca vrei sa-i furi NSA-ului painea de la gura ? Saracii, dupa cum isi mai castiga existenta?! )
  4. Ai perfecta dreptate, m-am exprimat gresit prin decriptat, nu am gasit un cuvant alternativ sa nu intru in polologhie. In criptografie hash-ul nu este considerat encriptie, asa ca nu ai ce sa decriptezi, este ca o strada cu sens unic, nu poti da in reverse . Dar daca nu 'saltezi' md5-ul (din unsalted sa-l faci salted md5), site-urile, precum acela care l-am postat mai sus se pot folosi de o structura de date de tip dictionar care incearca potentiale valori si intr-un sfarsit se vor potrivi cu hash-ul tau. Deci numiti-o cum vreti, spargere, decriptare, crackuire, bruscare... intr-un sfarsit ramai fara cont
  5. Nu mai faceti backseat moderation. Deci jumatate din topicurile sectiunii romanesti sunt compuse din flame-wars si backseat moderation. Ieri am primit un mesaj privat de la cineva ca sa votez pentru banarea cuiva pe forum (l-am blocat ca sa nu-mi mai trimita mesaje private si am rezolvat problema). In regulile generale ale forumului scrie clar, daca un utilizator nu respecta regulamentul, in coltul din dreapta al postului exista butonul "Report". Daca un server nu are resursele necesare pentru a se apara de acesti indivizi atunci nu merita sa fie in lista browser-ului. Chiar credeti ca veti rezolva ceva daca postati datele lor private (ex. adresa de Skype si Facebook, care desigur contravin regulilor board-ului) aici? *Sfat* Inca ceva, nu va mai inregistrati pe serverele romanesti (desi nici cu restu' nu-mi este rusine) cu parola pe care o aveti si la mail, Facebook, etc. Majoritatea serverelor folosesc scripturi primitive gen Valhalla care nu au o codificare avansata a parolei, este vechiul agoritm "md5". De ce? Pentru ca owner-ul serverului poate deschide baza de date SQL, iti cauta contul in tabel, copiaza hash-ul md5 din coloana cu parola si printr-un singur copy-paste pe http://www.md5online.org/ ti-a decriptat-o. Pentru scripteri, folositi http://mypages.iit.edu/~jtaylo11/cs549/blake.lua . Made my day. Give that kid a cookie. Serialul poate fi schimbat usor prin multe cai. Daca mai este algoritmul din MTA 1.1 atunci serialul il poate schimba prin: 1. Formateaza HDD-ul si reinstaleaza sistemul de operare (s-ar putea inca sa mearga) 2. Formateaza HDD-ul in ext4 si instaleaza Ubuntu, dupa formatezi iar si bagi inapoi Windows (cel mai probabil merge) 3. Foloseste o masina virtuala sa joace MTA prin VMWare sau Virtual Box (functioneaza garantat) 4. Din cate stiu de pe IRC, algoritmul pentru MTA serial este generat in functie de serialul hard disk-ului. Deci dezintalezi MTA, schimbi serialul hard disk-ului si instalezi iar MTA (ar trebui testat, zic ca merge) 5. Mai mergea inainte si cu Cheat Engine sa-l schimbi pentru o sesiune (adica dupa ce inchideai MTA-ul iti revenea serialul vechi). (nu mai incerca, doar daca poti trece de clientul MTA fara crash)
  6. Just my two cents. S-ar putea ca resursele descarcate de pe servere in folderul 'mods' sa nu dispara dupa dezinstalare. Ai putea incerca sa stergi tot ce este in el. Cea mai recenta versiune este 1.3.5, in screen-urile tale vad ca serverul ruleaza pe 1.3.3, fa un update la client si server. Sau poate folosesti o versiune de MTA 'Nightly' si compilarea este obligatorie. Versiunile nightly nu sunt stabile.
  7. Presupun ca nu ai modulul de MySQL instalat pe server. Din cate imi amintesc scripturile Valhalla se bazau pe modulul scriptat de Mabako. De la 1.3+ MTA-ul ofera suport MySQL nativ, nu mai ai nevoie de modul. In primul rand, remarc ca nu prea stii cum functioneaza server-ul de MTA, sa nu mai vorbim de Lua si SQL. Norocul tau este ca toate se invata cu putina rabdare. Referinte (a se citi in ordine): server: https://wiki.multitheftauto.com/wiki/Server_Manual https://wiki.multitheftauto.com/wiki/Modules https://wiki.multitheftauto.com/wiki/Sc ... troduction lua: http://www.lua.org/manual/5.2/ - de aici am invatat majoritatea lucrurilor, capitolele importante: Lexical Conventions, Values and Types, Statements si Expressions dupa ce stii basicul lua si cum functioneaza serverul MTA singura referinta va fi: mtasa.com (wiki si forum) sql: https://wiki.multitheftauto.com/wiki/Se ... _functions - il inveti foarte usor doar din exemple, trb sa stii basicul definirii datelor: ALTER, CREATE, DROP, RENAME, TRUNCATE si manipularea datelor: INSERT, REPLACE, SELECT, UPDATE, DELETE, DO si CALL. (referinta aici: http://dev.mysql.com/doc/refman/5.0/en/sql-syntax.html )
  8. In my honest opinion, I don't think that this section needs to be moderated. The activity here is very low, a simple click on the 'Report' button will do the trick in case of failure to comply with the board rules. If you ignore the fact that the majority of romanian players are complaining in N topics about the lack of activity on their servers and hating on each other due to some trash roleplaying scripts released 3 years ago when vG broke apart, nothing much is going on. They still don't understand that Valhalla's scripts must be used as learning materials instead of creating communities on them because they are outdated and MTA has more powerful features than ever before. So stop imposing limits to yourself, leave the cave.
  9. source nu se refera intotdeauna la jucator. Sursa unei functii poate fi un marker, o resursa, un colshape, un vehicul, etc. Daca va uitati la Events pe MTASA Wiki o sa gasiti in dreptul fiecarui event cate un camp numit Source. Acel camp va indica exact ce reprezinta sursa.
  10. Am vrut sa fac ceva diferit in trecut: https://forum.multitheftauto.com/viewtopic.php?f ... pg#p470331
  11. Pai normal pentru ca nu ai pus conditie la onPlayerJoin, trebuie sa verifici daca caracterul exista in baza de date. (apropo pune zombie_db = connectToDB() in afara functiei) zombie_db = connectToDB() addEventHandler("onPlayerJoin", getRootElement(), function () local ok = 0 local second = dbQuery( zombie_db, "SELECT * FROM characters WHERE nume=?", getPlayerName(source)) local result, numrows = dbPoll(second, -1) if numrows == 1 then -- daca exista un caracter cu numele asta atunci ok devine 1 ok = 1 end if ok == 0 then -- daca nu exista atunci il introducem x, y, z = getElementPosition(source) dbExec( zombie_db, "INSERT INTO characters (nume, model, health, posx, posy, posz) VALUES (?,?,?,?,?,?)", getPlayerName(source), getElementModel(source), getElementHealth(source), x, y, z ) end end) Nu uita sa stergi ce a bagat in tabel pana acum (sa-l golesti, Empty Table) sa nu se intercaleze valorile.
  12. In primul rand trebuie sa salvam si numele jucatorului pe langa viata acestuia. Asa ca modificam functia cu update de mai devreme: dbExec( zombie_db, "UPDATE characters SET nume=?, health=?", getPlayerName(source), getElementHealth(source)) si functia pentru setareaza vietii la spawn: function viataCandSpawneaza() local second = dbQuery( conn, "SELECT * FROM characters WHERE nume=?", getPlayerName(source)) local result, numrows = dbPoll(second, -1) if (result and numrows > 0) then for index, row in pairs(result) do setElementHealth(source, row['health']) end end end addEventHandler ( "onPlayerSpawn", getRootElement(), viataCandSpawneaza )
  13. Pai tu folosesti MySQL, totul se schimba, acum mi-am dat seama. SQLite si MySQL par la fel dar sunt in acelasi timp foarte diferite. local characters = dbExec( zombie_db, "CREATE TABLE IF NOT EXISTS characters (id INT NOT NULL AUTO_INCREMENT, nume VARCHAR(50) NOT NULL, model INT NOT NULL, health FLOAT NOT NULL, posx FLOAT NOT NULL, posy FLOAT NOT NULL, posz FLOAT NOT NULL, PRIMARY KEY (id))") Ai grija sa stergi tabelul daca l-a creat cu datele anterior gresite si dupa ruleaza iar resursa.
  14. Acelasi lucru si pentru health => "health" am incercat si asa... dar tot nu functioneaza.. imd dau eroarea Unde ai un singur ? nu pune '?', lasa un simplu ?. Am vazut ca ai pus ghilimele acolo. Si in al doilea rand deschide tabelul cu phpMyAdmin sau Navicat sa vezi daca ti-a facut coloana.
  15. My mistake then. Apologies.
×
×
  • Create New...