[C#] Belot PC

poruka: 10
|
čitano: 4.469
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
10 godina
neaktivan
offline
[C#] Belot za PC

NAJNOVIJE NOVOSTI (24.4.2013.):

oi36.tinypic.com/29o49ih.jpg

oi38.tinypic.com/110zx9c.jpg

____________________________________________________________________________________________________________________________________________

Pozdrav!

 

Evo, moje upoznavanje sa ovim forumima a i ujedno i moj priv post ovdje! Dakle, tko sam što sam? Učenik sam opće gimnazije u Zagrebu (7. gimnazije točnije), imam 17 godina i oduvijek sam bio zainteresiran za kompjutere, a posebno za programiranje! Već od 13 godine radim svakojake programe u svakakvim jezicima (C++, C#, PAWN, Squirrel) i prošli tjedan odlučih napravit nešto, ajmo reći novo (iako i nije nešto sasvim novo, ali svejedno)! Počeo sam raditi na beli (iliti belotu) za PC koje će uključiti online igranje u dvoje, troje ili četvero ! Pokrenuo sam ovaj projekt zato jer sam jednostavno htio poboljšati svoje znanje u C# i ubiti slobodno vrijeme (umjesto surfanja po netu, radit na ovome)! Bez daljnjeg duljenja, pokazat ću i natuknut što je dosad napravljeno (imajte na umu da na ovom tek radim 3-4 dana, svaki dan možda po 1-2 sata)!

 

 

Server će koristit više-manje svima poznat TCP/UDP protokol za razmjenjivanje podataka između klijenta i servera! Poruke u serveru su na engleskom zato jer sam više-manje naviko pisat programe na engleskom! Dakako, klijent je na hrvatskom jeziku!

 

Stvari koje zasad rade:

- Spajanje na bazu podataka

- Kreiranje baze podataka

- Registriranje novog računa (uključuje osiguravanje lozinke sa SHA256 hash-algoritmom - nemogućnost hakiranja lozinke)

- Ulogiravanje

- Spajanje na server

- Dolazak u "predvorje", tzv. lobby

- Slanje paketa putem TCP protokola

- Listanje trenutno spojenih klijenata

 

Možda se ovako na prvi pogled čini da zapravo nije puno toga napravljeno, ali vjerujte mi da nije malo (negdje oko 10% cjeloukupne igre je gotovo)! Pobliže ću pokazati izgled klijenta/servera! Komunikacija između servera i klijenta još treba biti dorađena (i to dosta) da bi sve radilo kako treba!

 

(BILJEŠKA: slike ne prikazuju konačan izgled aplikacije, izgled će se mijenjati i to često)

Server:

http://i33.tinypic.com/24vv9xs.png

 

Klijent:

http://i35.tinypic.com/rli7w9.png

http://i36.tinypic.com/218x2x.png

http://i36.tinypic.com/rkzaz6.png

 

Baza podataka:

http://i36.tinypic.com/14aa93k.png

 

 

Ako je neko zainteresiran za ovo i voljan je surađivati te pomoći, molim neka mi se javi, rado ću otvorit projekt na www.assembla.com! :)

 

Pozdrav!

Poruka je uređivana zadnji put sri 24.4.2013 19:58 (fiki574).
 
5 0 hvala 0
12 godina
neaktivan
offline
Re: [C#] Belot za PC

A imaš li karte (resursni dll)? I server ne bih preporučio kao konzolnu aplikaciju, već nekakav GUI gdje će biti prikazano tko se spojio na server (nick, ip), log operacija, te mogućnost isključenja igrača direktno sa servera itd..

 

Tu još ostaje i problem odabira porta, jer za bilo što različito od porta 80 bi vjerojatno trebalo raditi port forwarding da bi cijela stvar funkcionirala preko Interneta itd itd.

 

Nije ovo problem napraviti, ali malo treba zapeti i pokazati truda {#}. I ja sam nešto slično radio, ali nisam imao potrebu za mrežnom komponentom.

 

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
15 godina
offline
Re: [C#] Belot za PC
fiki574 kaže...

 

Registriranje novog računa (uključuje osiguravanje lozinke sa MD5 hash-algoritmom - nemogućnost hakiranja lozinke)

 

Nisam programer, al mi je ovo zapelo za oko. MD5 je odavno probijen. Bolje koristi SHA barem SHA256 verziju iako i SHA1 je bolji od MD5.

16 godina
neaktivan
offline
Re: [C#] Belot za PC
plavi08 kaže...
fiki574 kaže...

 

Registriranje novog računa (uključuje osiguravanje lozinke sa MD5 hash-algoritmom - nemogućnost hakiranja lozinke)

 

Nisam programer, al mi je ovo zapelo za oko. MD5 je odavno probijen. Bolje koristi SHA barem SHA256 verziju iako i SHA1 je bolji od MD5.

Hashevi su rezultati jednosmjerne enkripcije nekim algoritmom. Postoje stranice na kojima ima tona hasheva i kad upišeš neki stranica vrati rezultat (nema za sve naravno). Sotverske metode su bruteforce, no koliko ja znam nemoguće je reverzno iz hasha dobiti string, to je zbog funkcija u algoritmu hasha kao što su zaokruživanje (npr. 3,14 = 3, a nazad ne može). Stoga, vjerujem da je MD5 jednako dobar kao SHA ili neki drugi koji nema svoju reverznu funkciju.

 

-----

 

Što se tiče belota, svaka čast. Uvijek podržavam neke projekte na kojem radi neki tim id nekoliko ljudi, a pogotovo one na kojima radi samo jedna osoba.

Što se tiče servera, moje mišljenje je da započetak sučlje nije bitno, ali se može implementirati u daljnjem razvoju.

Što se tiče samih karata za početak neke s neta... a tokom razvoja napraviš vlastite (ili ako nemaš talenta za crtanje vjerojatno ima forumaša koji bi pomogli)

0100001001101111011010100110000101101110
12 godina
neaktivan
offline
Re: [C#] Belot za PC
plavi08 kaže...
fiki574 kaže...

 

Registriranje novog računa (uključuje osiguravanje lozinke sa MD5 hash-algoritmom - nemogućnost hakiranja lozinke)

 

Nisam programer, al mi je ovo zapelo za oko. MD5 je odavno probijen. Bolje koristi SHA barem SHA256 verziju iako i SHA1 je bolji od MD5.

Probijeno je samo teoretski tj. kada bi netko imao super računalo i dovoljno vremena (čak su i godine potrebne) onda bi možda i uspio. Iako, SHA256 je svakako bolji.

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
15 godina
offline
Re: [C#] Belot za PC
10 godina
neaktivan
offline
Re: [C#] Belot za PC

@TracerCPP - pogledao sam tvoj video, interesantan je, ali već imam karte koje ću koristiti! Isto tako, po mom mišljenju ne vidim svrhu rađenja GUI-a za server pošto će server ipak trebat neku lokaciju (ne moj PC) tako da ja neću imat direktni pristup tome sučelju! Ujedno, Admini će imat opciju da sa desnim klikom miša na "Popis igrača:" otvore meni sa podosta funkcija (npr. "Kick", "Ban", "Poništi pobjede", "Poništi poraze", "Poništi napuštene", itd.), ali će i igrači imati svoj meni sa npr. "Statistike" itd.

 

@plavi08 - vjerojatno i budem promijenio hash algoritam, ali zasad ostaje MD5

 

@Boky - hvala ti :)

10 godina
neaktivan
offline
Re: [C#] Belot za PC

Jeli itko zainteresiran za ovo?

 

Razvitak od danas:

- TCP server i spajanje klijenata KOMPLETNO završeno

- mogućnost slanja "packeta" je sada ovdje - služi za identificiranje paketa primljenog/poslanog od servera/klijenta (koristit će se u 95% aplikacije)

- baza podataka i sve u vezi s njom završeno (saveanja statistika još uvijek nije ovdje, doći će kasnije)

- hash algoritam promijenjen iz MD5 u SHA256

Poruka je uređivana zadnji put uto 23.4.2013 22:56 (fiki574).
10 godina
neaktivan
offline
[C#] Belot PC

Novosti:

- Dodana provjera pri registriranju koja provjerava da li već postoji unešeni mail na već postojećem računu

- Dodan paket nazvan "CLIENT_LIST" - korektno pokazuje koji su sve klijenti spojeni na server (još potreban "CLIENT_DC" koji će uklanjati klijente sa te iste liste kada se odspoje od servera)

- Dodane boje na button-e (ljepš izgledi :P)

- Dodani novi button-i kao npr. "Izlaz" (izlaz iz aplikacije pošto je control box disable-an), "Počisti polja" (uklonite sav tekst iz text boxesa), "Osvježi" (ručno osvježavanje klijent liste pošto automatsko trenutno nije ovdje, a pitanje je da li će i biti pošto sam naišao na par problema koristeći ga)

- Klijent automatski zatvori lobby (aka predvorje) kada se server ugasi

- Popravljeni svi errori koji su bili otkriveni u "ekstremnim" situacijama pomoć debug moda

 

Prvo testiranje očekivano je već početkom 5. mjeseca! Testni "mod" će biti 1na1 partija pa ako sve prođe glatko, "mod" za troje i četvero će biti gotovi za par (tje)dana! :)

 

 

P.S. Nadam se da ne bumpam prečesto, ako ipak to radim - upozorite me!

Poruka je uređivana zadnji put uto 23.4.2013 22:56 (fiki574).
 
1 0 hvala 0
10 godina
neaktivan
offline
[C#] Belot PC

NAJNOVIJE NOVOSTI (24.4.2013.):

oi36.tinypic.com/29o49ih.jpg

oi38.tinypic.com/110zx9c.jpg

 

- Dodan paket "CLIENT_DC" - poslan na server kada se klijent odspoji sa servera, a nakon toga šalje se novi paket "CLIENT_LIST" koji update-a popis klijenata svim klijentima

- Dodan paket "IS_ADMIN" - poslan sa servera kada se klijent spoji na njega, provjerava da li je klijent administrator ili ne (kasnije korišteno za svakakve stvari)

- Dodana provjera kod ulogiravanja za dostupnost računa - da li je račun blokiran/banan ili ne

- Dodano automasko osvježavanje popisa klijenata - svakih 10 sekundi

- Popravljeni svi errori koji su nađeni/uzrokovani tijekom najnovijeg update-a

 

 

Poruka je uređivana zadnji put sri 24.4.2013 20:06 (fiki574).
 
1 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice