Nazwa skryptu: Dynamiczny system domów by Quis (Quis Dynamic Houses System) Wersja: 2.0 R3 Autor: Quis Opis: Skrypt służy do dynamicznego (w trakcie działania serwera) tworzenia domów. Umożliwia także graczom kupowanie i sprzedawanie domów, a także możliwość wchodzenia do domów. Właściciel ma także możliwość otworzenia/zamknięcia drzwi do domu dla innych graczy, możliwość zmiany nazwy domu czy dodanie specjalnych osób, które mogą wchodzić do jego domu. Zdjęcia: Galeria Dropbox Komendy gracza: /dompomoc /dom /dodajczlonka Komendy administratora: /dompomoc /savehouses /addhouse /removehouse /housename /houseprice /houseflat /housepos /houseposmanual /houseowner /houseteleport /houseslist /saveflats /addflat /flatinterior /flatpos /flatposmanual /flatslist Komendy administratora służą głównie do edycji danych domów. Miejsce zapisu danych: Dane zapisują się w formacie SQLite, w pliku "Houses.db" w folderze "scriptfiles". Plik ten, jak i struktura bazy danych, tworzą się automatycznie. Wykorzystane biblioteki i wtyczki: sscanf by Y_Less, ZCMD by ZeeX, Streamer by Incognito Wykorzystane ID dialogów GUI: 7777-7785 Prawa autorskie: Zakazuję zmieniać autora.
Instrukcja instalacji: 1. Plik "quis_houses2.amx" wrzuć do folderu "filterscripts", który znajduje się w folderze z serwerem. 2. Pliki "sscanf.dll" i "streamer.dll" wrzuć do folderu "plugins" który znajduje się w folderze z serwerem (gdy Twój serwer jest postawiony na Linuksie, użyj plików "sscanf.so" i "streamer.so"). 3. W pliku "server.cfg" który znajduje się w folderze z serwerem dodaj "quis_houses2" na końcu linijki zaczynającej się na "filterscripts". 4. W tym samym pliku co wyżej, dodaj "streamer sscanf" do linijki zaczynającej się na "plugins". Jeśli nie masz takiej linijki, dodaj ją na samym dole. Jeśli Twój serwer jest postawiony na Linuksie, dodaj "streamer.so sscanf.so" do tej linijki. 5. Uruchom serwer i poustawiaj domy - nie zrobiłem tego, żeby każdy mógł sam zorganizować domy na swoim serwerze 6. Graj!
Kilka informacji o zapisie/odczycie danych i zużyciu pamięci: Odczyt danych działa bardzo szybko, średni wynik testu przy kilka domach i mieszkaniach:
Kod:
* Zaladowano 20 domow i 18 mieszkan z bazy danych w czasie 4 ms.
Inna sprawa jeśli chodzi o zapis danych, to jest SQLite, tak więc jest dość powolny. Zapis ten wykonuje się przy wyłączaniu skryptu (lub całego serwera), lub po użyciu jednej z komend: /savehouses lub /saveflats (nie należy ich nadużywać!) Kod:
* Zapisano 20 domow w czasie 1408 ms * Zapisano 18 mieszkan w czasie 1239 ms
Skrypt zużywa dość dużo pamięci, ale za to jest bardzo szybki. Jedyną mozolną sprawą jest zapis danych, ale zawsze musi być coś kosztem czegoś innego, wybrałem mniejsze zło.
Konfiguracja: Na początku skryptu są ustawienia konfiguracyjne wraz z opisami, nie powinny sprawić problemu. Po zmianie ustawień należy przekompilować skrypt (klawisz F5) i ponownie wgrać na serwer. Małe przybliżenie ustawień:
Lista zmian: 2.0 R3
poprawiono błąd z usuwaniem danych przy sprzedaży domu poprawiono obsługę ciągów znaków dodano opcję konfiguracyjną MIN_HOUSE_NAME i wprowadzono ograniczenie na minimalną długość nazwy domu poprawiono kilka mniejszych błędów
2.0 R2
poprawiono błąd, który powodował że domy nie miały właścicieli po ponownym załadowaniu skryptu (unloadfs, a potem loadfs) zmniejszono domyślną odległość rysowania etykiet tekstowych w mieszkaniach, dzięki temu będą mniej widoczne w innych mieszkaniach
2.0
cały skrypt został napisany od zera ujednolicono kod dodano dużo opcji konfiguracyjnych poprawiono masę błędów interiory zastąpiono mieszkaniami - można tworzyć ich dowolną ilość, a także można tworzyć własne interiory poprawiono zapis/odczyt danych dodano mnóstwo nowych zabezpieczeń wprowadzono ograniczenie czasowe na klawisze ALT+Spacja (aby zapobiec spamowaniu) WAŻNE - skrypt jest niekompatybilny ze starymi wersjami
1.2
dodano możliwość zmiany nazwy domu przez właściciela (można też umieszczać kolory w nazwie w formacie {HEX}) właściciel dostał też możliwość dawania/odbierania dostępu do domu przez innego gracza dodano możliwość ograniczenia ilości domów na gracza, a także maksymalną ilość osób z dostępem do domu poprawiono drobne błędy do paczki został dołożony konwerter bazy danych ze starych wersji do wersji 1.2
1.1 z ikonkami
dodano ikonki w miejscach domów (zielona gdy dom nie ma właściciela, czerwona gdy dom jest już zajęty) dodano dodatkowy plugin (Streamer by Incognito) funkcję służące do tworzenia i usuwania pickupów i etykiet tekstowych zostały zastąpione funkcjami ze streamera by Incognito
1.1
dodano komendę administratora /houseteleport dodano trzy nowe okienka GUI komendy /kupdom i /sprzedajdom połączono w jedną - /dom dodano możliwość otwierania/zamykania drzwi do domu przez właściciela wprowadzono limit domów - 200 (można go łatwo zmienić na większy) plugin GVar nie jest już potrzebny usunięto ostrzeżenia o "tag mistmach" podczas kompilacji
Download: Download w formacie AMX jak i PWN. W paczce są także wymagane biblioteki i wtyczki aktualne na dzień 1 grudnia 2014 (wersje pod Windows). Jest tam także baza danych z wszystkimi interiorami dostępnymi w SA-MP które nadawały się na mieszkania.
QuisHouses2_0R3.zip z Dropbox Program służący do edycji bazy danych SQLite: SQLite Browser 2.0 b1.zip z Dropbox
Wersja 2.0 R2: QuisHouses2_0R2.zip z Dropbox
Wersja 2.0: QuisHouses2_0.zip z Dropbox
Wersja 1.2: QuisHouses1_2.zip z Dropbox (Direct)
Wersja 1.1 z ikonkami: QuisHouses1_1icon.zip z Dropbox (Direct)
Wersja 1.1: QuisHouses1_1.zip z Dropbox (Direct)
Wersja 1.0: QuisHouses1_0.zip z Dropbox (Direct)
|