Skocz do zawartości

Rekomendowane odpowiedzi

Cześć,

Po dwóch latach "nieobecności" na scenie, postanowiłem wrócić do SA:MP'a - niedawno zacząłem nieco stresującą pracę, a pisanie jest moim sposobem na odreagowanie. Postanowiłem napisać gamemod, który po skończeniu prac nad "rdzeniem" zamierzam wypuścić na licencji WTFPL. Będzie on mógł być niezłą bazą dla niszowych serwerów, które dotychczas korzystają z Honestów, czy modyfikacji gamemodów Ceki - dlaczego? Ponieważ na scenie brakuje gamemodów RP, które byłyby jasno opisane i zrozumiałe dla świeżych programistów. Dodatkowo zamierzam przy pomocy PHP oraz frameworka Bootstrap (głównie HTML+CSS) napisać od zera panel zarządzający serwerem, tak aby stosunkowo łatwo było go przerobić np. dla silnika IPB, lub po prostu by można było go umieszczać jako podstronę.

Wracając do worklogu - wpisy w nim będą pojawiały się dość nieregularnie - spowodowane jest to małą ilością czasu, który mogę poświęcić na ten projekt. Kilka godzin temu rozpocząłem pracę nad główną częścią GM'a - konfiguracją bazy danych, stworzeniem pierwszych tabel oraz przygotowaniem skryptu. Obecnie GM ma 640 linijek kodu i zawiera w sobie podstawowy system przedmiotów wczytywanych z bazy danych, który można łatwo zmodyfikować wg. własnych potrzeb - dodanie nowego typu przedmiotu to tak naprawdę kilka kroków:

  • ustalenie nowego ID typu przedmiotu - początkowo zadeklarowałem cztery typy - food (jedzenie), random (kostki, ruletki itede), weapon (bronie) i ammo (amunicja)
  • modyfikacja funkcji UseItem (funkcja sprawdzająca czy gracz może użyć przedmiotu - czy nie znajduje się pod wpływem BW, czy nie ma blokady i tak dalej) poprzez dodanie ID typu przedmiotu do switcha wewnątrz funkcji

W systemie również znajduje się prosty system rozróżniania właściciela danego przedmiotu (podłoga, gracza, drzwi (budynki stawiane na mapie) oraz pojazdy), oraz wczytywanie przedmiotów znajdujących się na ziemi w OnGameModeInit

Poza systemem przedmiotów rozpocząłem przygotowania do stworzenia panelu gracza - rozdzieliłem tabele z danymi gracza IC i OOC. Do szyfrowania dotychczasowo używam MD5 bez solenia - prawdopodobnie sposób szyfrowania haseł będzie zmieniany, tak aby był 100-procentowo bezpieczny.

Spis zmian:

  • rozpoczęcie tworzenia skryptu, stworzenie podstawowych komend i wybór odpowiednich bibliotek
  • konfiguracja bazy danych
  • stworzenie systemu przedmiotów
  • logowanie
  • wyciąganie/chowanie broni
  • prosty, aczkolwiek skuteczny antycheat (testowałem na gołym sobeicie i na kilku innych modyfikacjach - nie przepuścił ani jednego strzału, oddanego z nieposiadanej broni)
Edytowane przez Lacie

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Napisałeś coś o sobie, napisałeś czym się postanowiłeś zająć i w jakim celu, napisałeś co zamierzasz dalej z tym zrobić.
Wszystko fajnie, ale na chwilę obecną co komu do tego? Zwłaszcza, że w związku z powyższym nie masz lub nie przedstawiłeś swoich oczekiwań względem czytelników niniejszego tematu.

Najpierw zrób coś konkretnego, a z uwagi na twoje założenia wypadałoby żebyś zrobił do tego jakąś dobrą dokumentację jeśli ma to być zrobione porządnie, a dopiero wtedy będziesz miał co przedstawiać, no chyba, że na teraz masz jakieś pytania do swoich potencjalnych odbiorców, np co by chcieli ażeby w twoim kodzie się znalazło, to wówczas pisanie takiego tematu miałoby swój uzasadniony pożytek.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Napisałeś coś o sobie, napisałeś czym się postanowiłeś zająć i w jakim celu, napisałeś co zamierzasz dalej z tym zrobić.
Wszystko fajnie, ale na chwilę obecną co komu do tego? Zwłaszcza, że w związku z powyższym nie masz lub nie przedstawiłeś swoich oczekiwań względem czytelników niniejszego tematu.

Najpierw zrób coś konkretnego, a z uwagi na twoje założenia wypadałoby żebyś zrobił do tego jakąś dobrą dokumentację jeśli ma to być zrobione porządnie, a dopiero wtedy będziesz miał co przedstawiać, no chyba, że na teraz masz jakieś pytania do swoich potencjalnych odbiorców, np co by chcieli ażeby w twoim kodzie się znalazło, to wówczas pisanie takiego tematu miałoby swój uzasadniony pożytek.

No właśnie - zapomniałem o głównych założeniach tematu. Ma on służyć dwom celom:

  • typowy worklog - dziennik postępów prac nad gamemodem - po części jako pomoc dla mnie, po części jako typowe "chwalesie".
  • dopytywaniu czytelników o np. technologie, które będą w stanie ułatwić pracę - chociażby oprogramowanie do kontroli wersji, czy po prostu o sugestie związane z samym skryptem

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×