Andrey 31 Odesláno: 4. Srpen, 2016 Share Odesláno: 4. Srpen, 2016 (upraveno) Registrace, login a změna hesla Před nedávnem jsem se začal věnovat pawnu a jako první jsem hledal register/login systém a s tím změnu hesla. Nějak se mi nedařilo a nemohl jsem najít tento FS a tak jsem si řekl, že tak to nepůjde. Začal jsem dělat vlastní a nakonec se podařilo. Občas jsem mrkl na vedlejší práce, ovšem pouze když jsem opravdu netušil, jak dále a proto se některé kódy mohou zdát ,,okopírované". Chci poděkovat SkiBigovi že mi otevřel oči a dokázal mi, že Dof2 je lepší a jednodušší, než dini. Zde je kód: http://pastebin.com/4GJjjvWw Obrázky: https://ctrlv.cz/5OWc https://ctrlv.cz/7itj https://ctrlv.cz/bq7Z https://ctrlv.cz/BVmQ Můžete využít na jakékoliv účely. v1.1 Update scriptu - 17.8.2016 Obsahuje: Ukládání statistik (poslední pozice, peníze, nahraný čas, IP adresu, skin, úmrtí, zabití) Nový příkaz /informace Hezčí vzhled přihlašování/registrace/změny hesla (nové barvy, text) Z DCMD na IZCMD Obrázky: https://ctrlv.cz/ERIu https://ctrlv.cz/zc9m https://ctrlv.cz/3KQK https://ctrlv.cz/ipwN Pastebin: http://pastebin.com/Fm0b3djL Pokud bude čas a nálada, možná udělám ještě dialog s nastavením účtu (heslo, nick atd.) Vývoj scriptu jsem ukončil a pokud budete chtít další věci přidávat, je to již na Vás. Momentálně pracuji na dalším scriptem který zveřejním brzy. Edited 4. Únor, 2017 by Andrey Link to comment Share on other sites More sharing options...
xX420_Pu55yArmaged0n_420Xx 17 Odesláno: 4. Srpen, 2016 Share Odesláno: 4. Srpen, 2016 Máš moje uznanie za to že si si dal povedať od múdrejších. Si asi prvý zo sto. Link to comment Share on other sites More sharing options...
Hlavní moderátor vEnd 279 Odesláno: 4. Srpen, 2016 Hlavní moderátor Share Odesláno: 4. Srpen, 2016 Díval jsem se na kód, je tam co zlepšovat, ale na to časem přijdeš sám. Pokud sis nechal poradit s DOF2, taky bych ti chtěl dát pár rad: 1. Místo dcmd používej zcmd, práce s ním je jednoduchá, jednodušší jak s dcmd. V tomto návodu máš přesně vysvětleno, jak tvořit příkazy pomocí (i)zcmd. 2. Vytváříš zbytečně velké řetězce. new soubor[256]; /Ucty/Hesla/%s.txt Když za %s dosadíš nejdelší možný nick, což je 24 znaků, bude celková délka 40 znaků, bohatě by tedy stačilo dát jako velikost 41. Samozřejmě si můžeš udělat rezervu (50, 55), ale 255 znaků na to určitě nebudeš potřebovat. Naučit se šetřit s pamětí není na škodu. 3. Chválím tě, že hashuješ hesla, ale dneska už ani nemusíš kvůli tomu přidávat další knihovnu (dudb.inc). SA:MP už má svou funkci na hashování, viz tento návod. To je to hlavní, na co jsem tě chtěl upozornit, zbytek jsou drobnosti. 1 Link to comment Share on other sites More sharing options...
Andrey 31 Odesláno: 4. Srpen, 2016 Author Share Odesláno: 4. Srpen, 2016 Díval jsem se na kód, je tam co zlepšovat, ale na to časem přijdeš sám. Pokud sis nechal poradit s DOF2, taky bych ti chtěl dát pár rad: 1. Místo dcmd používej zcmd, práce s ním je jednoduchá, jednodušší jak s dcmd. V tomto návodu máš přesně vysvětleno, jak tvořit příkazy pomocí (i)zcmd. 2. Vytváříš zbytečně velké řetězce. new soubor[256]; /Ucty/Hesla/%s.txt Když za %s dosadíš nejdelší možný nick, což je 24 znaků, bude celková délka 40 znaků, bohatě by tedy stačilo dát jako velikost 41. Samozřejmě si můžeš udělat rezervu (50, 55), ale 255 znaků na to určitě nebudeš potřebovat. Naučit se šetřit s pamětí není na škodu. 3. Chválím tě, že hashuješ hesla, ale dneska už ani nemusíš kvůli tomu přidávat další knihovnu (dudb.inc). SA:MP už má svou funkci na hashování, viz tento návod. To je to hlavní, na co jsem tě chtěl upozornit, zbytek jsou drobnosti. Díky, určitě se podívám a zkusím to. Link to comment Share on other sites More sharing options...
Scydo 397 Odesláno: 4. Srpen, 2016 Share Odesláno: 4. Srpen, 2016 Ale to nic nebylo ... Jsem rád, že ty návody mají alespoň nějaký účel ... Teď k hodnocení scriptu: Klady: - Funkčnost jsi nám tedy dokazoval screeny, takže snad ho nemusím zkoušet +1 - Určitě ten bod za dof2 a ne další ignorantské dini. +1 - Náznaky tabování, jen bych to dopiloval, rozhodně to přidá na přehlednosti +1 - Nikdy mě nenapadlo, že jde barvit i text v tlačítkách +1 - Nejsou v kódě takové fatální či až absurdní chyby(ale k tomu ještě později) +1 Zápory - Tvoje audio. Přidal bych alespoň preprocesor, aby si, ne moc zběhlejší uživatel, mohl jednoduše změnit nebo úplně odstranit. -1. - dcmd, jak již říkal vEnd -1 - hash, také jak již říkal vEnd, ale co vidím, tak nahráváš dudb. Proč? Jestli je to kvůli hash, tak dof2 ho obsahuje také. -1 - A nakonec máš tam drobnější chyby, například nemusíš využívat pragmu na parametry, podmínku response znegovat a inline přidat jen, že ho to vyhodí(pokud přidáš i druhé tlačítko), to pole(opět vEnd). -1. Jen tak dál. Zlepšuj se. Link to comment Share on other sites More sharing options...
Andrey 31 Odesláno: 4. Srpen, 2016 Author Share Odesláno: 4. Srpen, 2016 - Nikdy mě nenapadlo, že jde barvit i text v tlačítkách +1 - Tvoje audio. Přidal bych alespoň preprocesor, aby si, ne moc zběhlejší uživatel, mohl jednoduše změnit nebo úplně odstranit. -1. Taky jsem netušil že jdou barvit tlačítka, ale tak dělal jsem barvy tak jsem to zkusil a fungovalo to. Zkusím taky udělat to audio, bude to další pěkná zkušenost. A děkuji Link to comment Share on other sites More sharing options...
Scydo 397 Odesláno: 4. Srpen, 2016 Share Odesláno: 4. Srpen, 2016 Zkusím taky udělat to audio, bude to další pěkná zkušenost. Není, se jen zdá. Ve skutečnosti to jsou jen podmínky a preprocesory, ti ukážu příklad: #define INSERT_AUDIO #define AUDIO_ODKAZ http://www.nic.nc/nic.mp public OnFilterScriptInit() { #if defined INSERT_AUDIO PlayAudioStreamForPlayer(playerid, AUDIO_ODKAZ); #endif Link to comment Share on other sites More sharing options...
Lukasz 336 Odesláno: 4. Srpen, 2016 Share Odesláno: 4. Srpen, 2016 stačí #define AUDIO_ODKAZ "url" ... #if defined AUDIO_ODKAZ PlayAudioStreamForPlayer(playerid, AUDIO_ODKAZ); #endif To je ale celkem jedno a teď něco ke scriptu. Měl by jsi vždy řádně tabovat, protože takhle z toho máš akorát něco nečitelného. ID dialogů si nadefinuj, udělej do enumu, nebo cokoliv, ať si je můžou uživatelé jednoduše změnit (ty tvoje ID budou ve většině případech využity). V OnDialogResponse vracíš 1, což ti zapříčiní nevolání dalších OnDialogResponse v jiných FS (vracej tam 0) a při nalezení dialogu vracej 1. Viz kód níže. if(dialogid == 1) { tvůj kód return 1; // vrátíme 1, nebudou se volat další fce OnDialogResponse v jiném scriptu } if(dialogid == 2) { tvůj kód return 1; } return 0; // nenalezli jsme náš dialog, zavolá se další OnDialogResponse v jiném scriptu, kde se možná nalezne Pak tam máš ještě drobnosti a věci výše napsané. Btw dobrá písnička Link to comment Share on other sites More sharing options...
Rawy 18 Odesláno: 9. Srpen, 2016 Share Odesláno: 9. Srpen, 2016 (upraveno) Pékně jsi to udělal, bude se mi to hodit. Určitě ne jen mě. Edited 9. Srpen, 2016 by rawenCB Link to comment Share on other sites More sharing options...
Andrey 31 Odesláno: 13. Srpen, 2016 Author Share Odesláno: 13. Srpen, 2016 Díky Nějak mi nedalo a pustil se do dalších věcí ohledně scriptu a přidávám nějaké novinky Zítra nebo pozítří ukážu. Link to comment Share on other sites More sharing options...
Andrey 31 Odesláno: 17. Srpen, 2016 Author Share Odesláno: 17. Srpen, 2016 (upraveno) Update scriptu - 17.8.2016 Obsahuje: Ukládání statistik (poslední pozice, peníze, nahraný čas, IP adresu, skin, úmrtí, zabití) Nový příkaz /informace Hezčí vzhled přihlašování/registrace/změny hesla (nové barvy, text) Z DCMD na IZCMD Obrázky: https://ctrlv.cz/ERIu https://ctrlv.cz/zc9m https://ctrlv.cz/3KQK https://ctrlv.cz/ipwN Pastebin: http://pastebin.com/Fm0b3djL Pokud bude čas a nálada, možná udělám ještě dialog s nastavením účtu (heslo, nick atd.) Edited 17. Srpen, 2016 by Andrey Link to comment Share on other sites More sharing options...
Pán Podnikateľ 52 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 Ahoj Ako vidím Dof2 sa ti nejak zapáčil. To je chvályhodné. Skrypt je samozrejme v poriadku čo som tak na rýchlo prelistoval len my do očí skočil ten timer a tu by som ti chcel odporúčal použiť Unix Time Stamp. 1 Link to comment Share on other sites More sharing options...
Scydo 397 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 Furt tam zbytečně načítáš ten dudb. Buď využí hash ze dof2 a nebo zákla. fci ze samp(když tak tumáš návod: http://pawno.cz/topic/53079-hashování-hesel-sha-256). Link to comment Share on other sites More sharing options...
DNLS 31 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 /*Credits to Dracoblue*/ stock udb_hash(buf[]) { new length=strlen(buf); new s1 = 1; new s2 = 0; new n; for (n=0; n<length; n++) { s1 = (s1 + buf[n]) % 65521; s2 = (s2 + s1) % 65521; } return (s2 << 16) + s1; } Můžeš zkusit tohle Link to comment Share on other sites More sharing options...
Scydo 397 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 Můžeš zkusit tohle ... Kdyby ses podíval na jeho kód, věděl bys, že tu fci už používá. Link to comment Share on other sites More sharing options...
The hidden face 77 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 (upraveno) Co se týče designu, tak máš pěkně zvolený barvy, ale určitě bych jinak zarovnal ty Informace. Dvojtečky bych dal pod sebe a malý odsazení těch info od nich (třeba tab). Edited 17. Srpen, 2016 by GaRGoyLeS Link to comment Share on other sites More sharing options...
DNLS 31 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 ... Kdyby ses podíval na jeho kód, věděl bys, že tu fci už používá. Nevšiml jsem si toho, sry moje chyba Link to comment Share on other sites More sharing options...
Paulee 16 Odesláno: 17. Srpen, 2016 Share Odesláno: 17. Srpen, 2016 Konečně někdo pochopil rozdíl mezi dini a dof2. Dobrá práce Link to comment Share on other sites More sharing options...
Rawy 18 Odesláno: 23. Srpen, 2016 Share Odesláno: 23. Srpen, 2016 Ten Update se mi velmi líbí, pokračuj dále! Link to comment Share on other sites More sharing options...
SajmonExp 0 Odesláno: 24. Říjen, 2016 Share Odesláno: 24. Říjen, 2016 Prosím help G:\Games\GTA San Andreas\pawno\ \Login.pwn(63) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(64) : error 017: undefined symbol "PlayAudioStreamForPlayer"G:\Games\GTA San Andreas\pawno\ \Login.pwn(71) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(72) : error 017: undefined symbol "PlayAudioStreamForPlayer"G:\Games\GTA San Andreas\pawno\ \Login.pwn(89) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(86) : warning 203: symbol is never used: "playerid"G:\Games\GTA San Andreas\pawno\ \Login.pwn(86 -- 93) : warning 235: public function lacks forward declaration (symbol "OnDialogResponse")G:\Games\GTA San Andreas\pawno\ \Login.pwn(101) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(110) : error 017: undefined symbol "StopAudioStreamForPlayer"G:\Games\GTA San Andreas\pawno\ \Login.pwn(124) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(130) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(141) : error 017: undefined symbol "StopAudioStreamForPlayer"G:\Games\GTA San Andreas\pawno\ \Login.pwn(153) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(157) : error 017: undefined symbol "ShowPlayerDialog"G:\Games\GTA San Andreas\pawno\ \Login.pwn(175) : warning 203: symbol is never used: "ret_memcpy"Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase Link to comment Share on other sites More sharing options...
Rawy 18 Odesláno: 26. Říjen, 2016 Share Odesláno: 26. Říjen, 2016 (upraveno) Prosím help G:\Games\GTA San Andreas\pawno\ \Login.pwn(63) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(64) : error 017: undefined symbol "PlayAudioStreamForPlayer" G:\Games\GTA San Andreas\pawno\ \Login.pwn(71) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(72) : error 017: undefined symbol "PlayAudioStreamForPlayer" G:\Games\GTA San Andreas\pawno\ \Login.pwn(89) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(86) : warning 203: symbol is never used: "playerid" G:\Games\GTA San Andreas\pawno\ \Login.pwn(86 -- 93) : warning 235: public function lacks forward declaration (symbol "OnDialogResponse") G:\Games\GTA San Andreas\pawno\ \Login.pwn(101) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(110) : error 017: undefined symbol "StopAudioStreamForPlayer" G:\Games\GTA San Andreas\pawno\ \Login.pwn(124) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(130) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(141) : error 017: undefined symbol "StopAudioStreamForPlayer" G:\Games\GTA San Andreas\pawno\ \Login.pwn(153) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(157) : error 017: undefined symbol "ShowPlayerDialog" G:\Games\GTA San Andreas\pawno\ \Login.pwn(175) : warning 203: symbol is never used: "ret_memcpy" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase C:\Users\User\Desktop\reg.pwn(333) : warning 203: symbol is never used: "DOF2_Exit" C:\Users\User\Desktop\reg.pwn(333) : warning 203: symbol is never used: "ret_memcpy" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Warnings. Wtf, mě to jde v pohodě, warningy jsem si napravil že kdekoliv do FS/GM dal #pragma unused ret_memcpy a přidal public OnFilterScripExit do kterého jsem dal DOF2_Exit(); Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase Zkus si znova stáhnout všechny includy které tento script potřebuje. Edited 27. Říjen, 2016 by rawenCB Link to comment Share on other sites More sharing options...
Andrey 31 Odesláno: 28. Prosinec, 2016 Author Share Odesláno: 28. Prosinec, 2016 (upraveno) ... Edited 29. Leden, 2017 by Andrey Link to comment Share on other sites More sharing options...
Rawy 18 Odesláno: 2. Leden, 2017 Share Odesláno: 2. Leden, 2017 těším se jak to bude vypadat.. Link to comment Share on other sites More sharing options...
xhunterx 55 Odesláno: 2. Leden, 2017 Share Odesláno: 2. Leden, 2017 Len poznamka, udb_hash je sice jednoduchy na pouzitie, ale je lahke ho prekonat a hlavne kolizie podstatne znizuju bezpecnost hesla!Odporucam pouzit https://wiki.sa-mp.com/wiki/SHA256_PassHash Link to comment Share on other sites More sharing options...
Ninjonik 11 Odesláno: 13. Leden, 2017 Share Odesláno: 13. Leden, 2017 (upraveno) WAU 10/10 určite využijem do svojho gm Aspoň si trošku prispel tomu že na serveroch vymizne RZE sice je to škoda ale určite je lepšie si spraviť svoj vlastný gm. Edited 13. Leden, 2017 by Ninjonik Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now