Jump to content

rAcs

Membru
  • Posts

    29
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by rAcs

    • Username: @TheSnitzelAdv - Omul de baza (Scripter) |  @rAcs - Owner
    • Nume Proiect: Hard RPG
    • Detalii proiect:
    • IP: 46.102.116.25:7777
    • Plugins:  crashdetect.so streamer.so mysql.so mysql_static.so Whirlpool.so pawnregex.so sscanf.so
    • Discord: https://discord.gg/SyqeJcw - Pentru propuneri | pareri | raportare bug-uri
    • Versiune GM: RO-RP v0.0.1

     

    Pentru inceput vreau sa mentionez faptul ca Gamemode-ul este conceput de la 0, iar treptat sunt aduse imbunatatiri. Pe viitor acest Gamemode va sta la baza unui server/comunitati. Momentan cautam gazduire (forum+website, host avem noi). Numele inca nu a fost ales deoarece ramane de vazut daca ne vom afilia la o comunitate sau nu.

     

    Acest Gamemode vrem sa fie unul Hard RPG in sensul ca economia va fi foarte apropiata de realitate. Sa spunem un B-Zone pe la inceputul lui, cand stateai de placere sa faci un ban si sa te joci pentru o masina. Vrem sa readucem atmosfera de mult uitata. Acum stai 5 minute ai infernus, este jalnic.

     

    Progres Gamemode:

    RO-RP v0.0.1

    Sistem de inregistrare/conectare prin MYSQL.

    - Pentru inceput primesti 50$ in mana si 150$ in banca.

    - PayDay (individual), fiecare jucator avand o ora diferita in care primeste PayDay-ul. Daca joci 60 de minute, primesti 1 ora jucata.

    - Comanda [/time] ajuta sa vedeti in cat timp aveti urmatorul PayDay.

    - Sistem de Cash/Bank

    - Sistem de nivel, se calculeaza [lvl * 2 = RP-urile necesare pentru /buylevel]. Suma de bani este [lvl * 50$ = Suma de bani pentru /buylevel].

    - TextDraw cu numele serverului in dreapta jos, iar in stanga numele jucatorului si ID-ul din joc.

    -  Creata comanda [/id] pentru a vedea cateva informatii despre acel jucator.

    - Cand dai Click pe TAB pe un jucator primeste informatii despre el (la fel ca la [/id]).

    - Criptarea parolelor jucatorilor si cele administrative.

    - Comanda [/activate] pentru adminii 4+ (pentru o mai buna securitate a contului), care se seteaza din [/server]. Daca ai gresit parola ai o penalizare de 10 minute. Daca dai [/q] nu se reseteaza timerul.

    - Comanda [/flymode] (GodMode) - Se dezactiveaza pe "F".

    - Comanda [/setstat NUME/ID] pe dialog cu diferite optiuni de modificat.

    - Comanda [/sethp NUME/ID HP].

    - Comanda [/setarmor].

    - Comanda [/goto].

    - Comanda [/cc] care sterge chatul doar jucatorilor, cei cu admin, helper nu primesc ClearChat.

    - Comanda [/server] pentru admin6+ prin care se administreaza serverul.

    - Comanda [/a] pentru chatul adminilor.

    - Comanda [/hc] pentru chatul helperilor.

    - Comanda [/ah] pentru comenzile adminilor.

    - Comanda [/setskin NUME/ID SKIN] pentru admin1+.

    - Comanda [/kick] pentru admin1+.

    - Comanda [/skick].

    - Comanda [/slap].

    - Comanda [/weaponname].

    - Comanda [/vehname].

    - Comanda [/cnn].

    - Comanda [/freeze] [/unfreeze].

    - Comanda [/setadmin] [/sethelper].

    - Comanda [/fly].

    - Comanda [/givegun].

    - Comanda [/reportmute] [/reportunmute].

    - Comanda [/report] pentru jucatori si [/reports] pentru admini.

    - Comanda [/spawncar] [/despawncar] [/despawncars].

    - Comanda [/cheaters ID] pentru jucatori.

    - Comanda [/cr ID MOTIV].

    - Comanda [/fps].

    - Comanda [/check] [/ban] [/unban] [/bano] [/banip] [/getip] [/unbanip].

    - Comanda [/mute] [/muteo].

    - Comanda [/afklist].

    - Sistem de warn, la 3 warns primesti ban 3 zile.

    - Comanda [/swarn] [/smute] [/sban].

     

    VA URMA!

    Pentru mai multe detalii va asteptam pe Discord-ul serverului!

  1.  

    WellCode

    #include <you>

     

    Salut și bine te-am găsit în cadrul acestui topic, viitor programator!
    Nu dorim ca acesta să fie un topic tipic de prezentare, de aceea ne vom prezenta în cel mai simplist și deschis mod.

    Astăzi informatica este un domeniu foarte popular, iar ca să-ți dai seama de acest lucru este suficient să arunci o privire către mediile mari cu care se intră în clasele de mate-info sau numărul considerabil de elevi care dau admitere la facultățile de profil. Mai mult, poți să deschizi orice site de joburi și să observi gama diversificată de oferte pentru poziția de programator. Dacă știi să programezi, îți va fi foarte ușor să îți găsești un loc de muncă, iar la acel loc de muncă cel mai probabil vei fi plătit foarte bine.

    Ce este WellCode?

    WellCode este dorința și inițiativa materializată de a oferi un suport și o bază în informatică oricui. Potențialul este uriaș, iar WellCode reprezintă calea pe care trebuie să o urmezi pentru a atinge succesul.

    Venim în ajutorul celor ce vor să învețe programare pe cont propriu, indiferent de vârstă, sau să învețe mai eficient decât o fac la clasă. Avantajul major al platformei este fondat de evaluarea automată. Astfel, tu poți să vezi în câteva secunde dacă soluția ta a fost corectă, fără să mai aștepți ca un profesor să îți verifice problemele. În alcătuirea platformei s-a ținut cont de sfaturile unor specialiști în pedagogie și informația este în așa fel structurată încât este foarte ușor de asimilat și înțeles.

    Învățând pe WellCode primești sfaturi de la oameni cu peste 5 ani de experiență în lucrul cu elevi medaliați la olimpiadele naționale.
    Mulți dintre ei au început informatica de la 0 cu noi.

    Cine te va pregăti?

    • Petru Trîmbițaș
    • fost intern la Facebook și Palantir (în prezent intern la Google)
    • 6 ani de experiență în predarea informaticii
    • medaliat la olimpiadele naționale de informatică în liceu
    • Bianca Ioana Costin
    • de două ori intern la Google
    • 4 ani de experiență în predarea informaticii
    • șefă de promoție la secțiunea Informatică Engleză de la UBB în 2017

    Ce îți oferă WellCode?

    • o bază solidă în informatică (chiar dacă nu cunoști programare în prezent)
    • pregătire asistată
    • o comunitate pregătită să te ajute oricând ai nevoie

    Ce trebuie să faci?

    Tot ceea ce ai de făcut este să te înscrii pe www.WellCode.ro și să începi să programezi absolut gratuit!

    De asemenea, te încurajăm să ne urmărești pe YouTube și Facebook, deoarece sunt abordate foarte multe subiecte interesante de care tu trebuie să știi.
    Iată câteva exemple:

    • Trucuri pentru un CV de nota 10
    • De unde să înveți informatică
    • Cum să ai un salariu mare
    • Cum au început cei tari
    • Lucrul care îți distruge șansa de a avea succes
    • Cele 6 tehnici care te scapă de lene

    Totodată, s-au organizat multe interviuri prin care vei afla cum au pornit cei mai buni pe drumul informaticii, și ce ai de făcut pentru a ajunge la același nivel.

    Ține legătura cu noi și începe să programezi gratuit chiar acum!

    NTR9JMSE

     

    • Upvote 2
  2. 23 minutes ago, VLM said:

    Poti folosii /getip sau ce comanda ai tu, daca vrei sa ii iei ip-ul, nu prea stiu ce te-ar ajuta daca ai acest lucru.

    Voiam sa apara in consola serverului cand se conecteaza cineva sa ii arate IP-ul.

  3. 1 minute ago, VLM said:
    
    	new sendername[30],
    		playersip[64],
    		iplog[256],
    		qqerry[500];
    	GetPlayerName(playerid,sendername,sizeof(sendername));
    	GetPlayerIp(playerid,playersip,sizeof(playersip));
    	LogIP(playersip,PlayerInfo[playerid][pSQLID]);
    	format(iplog,sizeof(iplog),"%s (%d) has been connected to the server (IP: %s).",sendername,playerid,playersip);
    	SendIP(COLOR_WHITE,iplog);

     

    Multumesc, dar si asa am multe erori. Sunt incepator si nu prea ma pricep.

    O las balta cu aceasta chestie de preluare a ip-ului.

  4. 14 minutes ago, Ionut_WS said:

    new playerip[16];

    GetPlayerIp(playerid, playerip, sizeof(playerip));

    printf("%s (user: %d) s-a logat. [Ip: %s]",GetPlayerName(playerid),PlayerInfo[playerid][pSQLID],playerip);

    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(159) : error 029: invalid expression, assumed zero
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(159) : error 029: invalid expression, assumed zero
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(159) : error 029: invalid expression, assumed zero
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(159) : fatal error 107: too many error messages on one line

  5. Revin cu o noua problema.

    Dupa ce player-ul se conecteaza pe server in consola apare urmatorul mesaj:

    rAcs (user: 3) s-a logat.

    As dori daca se poate sa apare si IP-ul lui.

    Gen:

    rAcs (user: 3) s-a logat. [Gender: 0, Name: , Password: , Email: ]

    rAcs (user: 3) s-a logat. [IP: 123.123.132.13]

    Se poate asa ceva?

     

  6. 2 hours ago, Banditul said:

    Trebuie sa folosesti ` (backtick) pentru a semnala ca respectivu lucru este un tabel/coloaona, nu apostrof. De asemenea functioneaza si fara dar in cazul in care coloana e de fapt un keyword de la mysql s-ar putea sa nu mearga

    
    mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE `users` SET `Gender` = %d WHERE `ID` = %d", PlayerInfo[playerid][pGender], PlayerInfo[playerid][pSQLID]);
    		

    Deasemenea nu pune acel singur apostrof la %d %i %f nu ai nevoie + reduce din viteza de procesare a query-ului. Acel singur apostrof trebuie pus numa la '%s' '%e' pentru ca astea sunt stringuri

    Multumesc, revin cu edit daca functioneaza sau nu.

    P.S, cum ai pus " ` "? 

    A functionat, mersi frumos.

  7. Am erorile astea in mysql log. 

    [12:11:18 07/27/18] [ERROR] CMySQLQuery::Execute[insertAccount] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''users' ('Name', 'Password') VALUES ('rAcs', 'test1234')' at line 1 (Query: "INSERT INTO 'users' ('Name', 'Password') VALUES ('rAcs', 'test1234')")
    [12:11:23 07/27/18] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''users' SET 'Email'='[email protected]' WHERE 'ID'='0'' at line 1 (Query: "UPDATE 'users' SET 'Email'='[email protected]' WHERE 'ID'='0'")
    [12:11:25 07/27/18] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''users' SET 'Gender'='0' WHERE 'ID'='0'' at line 1 (Query: "UPDATE 'users' SET 'Gender'='0' WHERE 'ID'='0'")

    Ce ar trebui sa fac?

    Au legatura cu liniile astea?

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    	switch(dialogid) {
    		case DIALOG_REGISTER: {
    			if(!response)
    				return Kick(playerid);
    
    			if (strlen(inputtext) < 6 || strlen(inputtext) > 32)
    				return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Register", "Scrie o parola pentru a te putea inregistra (minim 6 caractere / maxim 32):", "Select", "Cancel");
    
    			gQuery[0] = EOS;
    			mysql_format(SQL, gQuery, sizeof(gQuery), "INSERT INTO 'users' ('Name', 'Password') VALUES ('%s', '%s')", GetName(playerid), inputtext);
    			mysql_tquery(SQL, gQuery, "insertAccount", "i" , playerid);
    
    			gString[0] = EOS;
    			format(gString, sizeof(gString), "Parola ta contine %d caractere.", strlen(inputtext));
    			SCM(playerid, -1, gString);
    
    			format(PlayerInfo[playerid][pPassword], 32, inputtext);
    
    			ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Email", "Seteaza-ti adresa de email:", "Select", "Cancel");
    		}
    		case DIALOG_EMAIL: {
    			if(!response)
    				return Kick(playerid);
    
    			if (strlen(inputtext) < 6 || strlen(inputtext) > 32)
    				return ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Email", "Seteaza-ti adresa de email:", "Select", "Cancel");
    
    			gQuery[0] = EOS;
    			mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE 'users' SET 'Email'='%s' WHERE 'ID'='%d'", inputtext, PlayerInfo[playerid][pSQLID]);
    			mysql_tquery(SQL, gQuery, "", "");
    
    			gString[0] = EOS;
    			format(gString, sizeof(gString), "Email setat: %s", inputtext);
    			SCM(playerid, -1, gString);
    
    			format(PlayerInfo[playerid][pEmail], 32, inputtext);
    
    			ShowPlayerDialog(playerid, DIALOG_GENDER, DIALOG_STYLE_MSGBOX, "Gender", "Seteaza-ti sexul:", "Masculin", "Feminin");
    		}
    		case DIALOG_GENDER: {
    			switch(response) {
    				case 0: {
    					PlayerInfo[playerid][pGender] = 1;
    					SCM(playerid, -1, "Sex setat: Feminin");
    				}
    				case 1: {
    					PlayerInfo[playerid][pGender] = 0;
    					SCM(playerid, -1, "Sex setat: Masculin");
    				}
    			}
    
    			gQuery[0] = EOS;
    			mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE 'users' SET 'Gender'='%d' WHERE 'ID'='%d'", PlayerInfo[playerid][pGender], PlayerInfo[playerid][pSQLID]);
    			mysql_tquery(SQL, gQuery, "", "");
    
    			SpawnPlayer(playerid);
    		}

    Sau au legatura cu xampp?

  8. Acum 43 minute, Banditul a spus:

    http://forum.sa-mp.com/showthread.php?t=616103

    Asta e subiectul pe care l-am folosit drept referinta pentru actualizare

    http://wiki.sa-mp.com/wiki/MySQL

    http://wiki.sa-mp.com/wiki/MySQL/R33

    Deasemenea aceste 2 linkuri de wiki pentru a afla ce fac functia si sa caute echivalentul (sa fie mai usor la actualizare) 

    Editați: Aici aveți un exemplu de conectare / înregistrare:  https://github.com/pBlueG/SA-MP-MySQL/blob/master/example_scripts/login_system-cache.pwn

    Multumesc frumos de ajutor.

  9. 5 minutes ago, Banditul said:
    
    

    Si funcția trebuie să fie între apostrof

    Dacă nu vei folosi ce scrie la noile caracteristici atunci nu ai nevoie de actualizare  https://github.com/pBlueG/SA-MP-MySQL/releases/tag/R40

    Eu unul gasec mai ușor de lucrat cu mysql r40, mi se pare mai curat la partea în care folosesc cache_get_value_name ca pentru int / float nu mai trebuie să faci

    
    

    acum faci asta

    
    

    Ceea ce mi se pare mai clar

    Multumesc frumos. Pe linkul tau pot vedea si trecerea de la vechile comenzi la noile?

  10. Just now, Banditul said:

    Din pacate maddinat0r a schimbat numele functilor, sintaxa si alte cateva lucruri in versiunea r40

    Intrebare: Este mai bun r40+ decat r39.6?

    EDIT: Am bagat r39, iar acum am doar o eroare. 

    error 076: syntax error in the expression, or invalid function call

    mysql_tquery(SQL, gQuery, insertAccount, "i" , playerid);

  11. Erorile: 

    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(39) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(59) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(60) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(74) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(75) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(75) : error 076: syntax error in the expression, or invalid function call
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(93) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(94) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(117) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(118) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(126) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(127) : warning 213: tag mismatch
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(149) : error 017: undefined symbol "cache_get_field_content_int"
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(150) : error 017: undefined symbol "cache_get_field_content_int"
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(152) : error 017: undefined symbol "cache_get_field_content"
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(153) : error 017: undefined symbol "cache_get_field_content"
    C:\Users\user\Desktop\rAcs Project\gamemodes\racs.pwn(154) : error 017: undefined symbol "cache_get_field_content"
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase

    Linii:

    39 - SQL = mysql_connect("localhost", "root", "racs_db", "");
    59 - mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `Name`='%s' LIMIT 1", GetName(playerid));
    60 - mysql_tquery(SQL, gQuery, "checkAccount", "i", playerid);
    74 - mysql_format(SQL, gQuery, sizeof(gQuery), "INSERT INTO 'users' ('Name', 'Password') VALUES ('%s', '%s')", GetName(playerid), inputtext);
    75 - mysql_tquery(SQL, gQuery, insertAccount, "i" , playerid);
    93 - mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE 'users' SET 'Email'='%s' WHERE 'ID'='%d'", inputtext, PlayerInfo[playerid][pSQLID]);
    94 - mysql_tquery(SQL, gQuery, "", "");
    117 - mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE 'users' SET 'Gender'='%d' WHERE 'ID'='%d'", PlayerInfo[playerid][pGender], PlayerInfo[playerid][pSQLID]);
    118 - mysql_tquery(SQL, gQuery, "", "");
    126 - mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `Name`='%s' AND 'Password'='%s' LIMIT 1", GetName(playerid), inputtext);
    127 - mysql_tquery(SQL, gQuery, "onLogin", "i", playerid);
    149 - PlayerInfo[playerid][pSQLID] = cache_get_field_content_int(0, "ID");
    150 - PlayerInfo[playerid][pGender] = cache_get_field_content_int(0, "Gender");
    152 - cache_get_field_content(0, "Name", result); format(PlayerInfo[pName], MAX_PLAYER_NAME, result);
    153 - cache_get_field_content(0, "Password", result); format(PlayerInfo[pPassword], 32, result);
    154 - cache_get_field_content(0, "Email", result); format(PlayerInfo[pEmail], 32, result);

    De la 39 pana la 127 presupun ca greseala vine de la SQL?

    La restul nu stiu de ce.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.