Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - szymski

Strony: [1]
1
Projektowanie kodu / Struktura gry multiplayer
« dnia: Luty 05, 2015, 17:55:47 »
Witam! Od jakiegoś czasu przymierzam się do napisania gry multiplayer (w C#). Pisałem już takowe, lecz tym razem chciałem, aby struktura kodu była lepsza. Zamiast dwóch projektów Client i Server, chcę dorzucić teraz Common. Bibliotekę, z której będzie korzystał i klient, i serwer. Mam jednak problem. Chciałem, aby klasy obiektów gry (przeciwnicy etc.) były tylko w tym Common'ie. Wcześniej trzymałem je na kliencie i na serwerze naraz, a te wersje różniły się tylko działaniem, np. serwer obsługuje poruszanie się obiektu i wysyła go do klienta, a klient odbiera te informacje i rysuje obiekt. Myślałem o porobieniu wielu interfejsów, które różniły by się funkcjonalnością. Powiedzmy, że funkcja "Sound.Play(filename)" na kliencie odtworzyła by dźwięk, a na serwerze - wysłała by go do klienta. A gdybym chciał mieć inne funkcje dla poszczególnych side'ów, to musiałbym użyć czegoś takiego jak "if Game.IsServer {}" co niebardzo mi się podoba. Co o tym myślicie? Da się jakoś uniknąć tworzenia kopii klas obiektów na kliencie i na serwerze? Jest możliwe robienie ich tylko we wspólnej bibliotece?

2
Dyskusje / Odp: Programy antyvirusowe a dekompilacja
« dnia: Listopad 07, 2014, 01:25:59 »
Niektóre języki da się zdekompilować, np. C# lub Java. Jeśli chodzi o języki kompilowane do kodu maszynowego to można o tym zapomnieć. Oczywiście da się w jakimś stopniu odbudować kod programu z samego kodu maszynowego, ale kod odbudowany nigdy nie będzie taki sam jak oryginalny kod. Jeśli chodzi o antywirusy, to większość potencjalnie niechcianych aplikacji da się wykryć po funkcjach, które są importowane. Powiedzmy, że program importuje funkcję do pobierania klawiszy oraz do robienia screenshot'ów. Jeśli program nie posiada podpisu cyfrowego, to nie będzie ciężko stwierdzić, że może być to wirus. Importowane funkcje da się też zamaskować, na przykład używając packer'ów. Wtedy trzeba takiego wirusa odpakować, chociażby przy użyciu wirtualnej maszyny, a następnie przeanalizować kod maszynowy. Analiza disassembledowanego kodu wcale taka ciężka nie jest. Poza tym można też odpalić wirusa w trybie sandbox, lub analizować jego ruch sieciowy.

Strony: [1]