Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Forum techniczne Arkadii.
Awatar użytkownika
Artak
Posty: 247
Rejestracja: 15 kwie 2015 16:40
Kontakt:

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Artak »

Do kolejnej aktualizacji miałbym trzy prośby (bo dwie rzeczy przy każdej aktualizacji zmieniam, a jedną rzecz chciałbym dodać :) ).
Mianowicie:
1. Zbieranie z ciała - żeby trigger działał na każdego kto zabił (bo jak przewodzę drużyną na expie, to przeważnie reszta tylko wspiera i zaslania, a od zbierania jest prowadzący)
2. Zaslanianie - żeby jak się chce zaslonić kogoś (nie ważne czy kliknięciem, czy /za) to żeby wcześniej wysłał komendę "przestan kryc sie za zaslona", bo z tego co zauważyłem jak się wyjdzie zza zasłony to są większe szanse na zaslonienie

I do dodania:
Przelamywanie obrony - bym poprosił o możliwość kliknięcia w "pasek życia" (---####) przeciwnika, żeby przelamać jego obronę :)
Awatar użytkownika
Adremen
Posty: 242
Rejestracja: 31 gru 2009 11:13

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Adremen »

Artak pisze:Do kolejnej aktualizacji miałbym trzy prośby (bo dwie rzeczy przy każdej aktualizacji zmieniam, a jedną rzecz chciałbym dodać :) ).
Mianowicie:
1. Zbieranie z ciała - żeby trigger działał na każdego kto zabił (bo jak przewodzę drużyną na expie, to przeważnie reszta tylko wspiera i zaslania, a od zbierania jest prowadzący)
2. Zaslanianie - żeby jak się chce zaslonić kogoś (nie ważne czy kliknięciem, czy /za) to żeby wcześniej wysłał komendę "przestan kryc sie za zaslona", bo z tego co zauważyłem jak się wyjdzie zza zasłony to są większe szanse na zaslonienie

I do dodania:
Przelamywanie obrony - bym poprosił o możliwość kliknięcia w "pasek życia" (---####) przeciwnika, żeby przelamać jego obronę :)
1. Dodam dodatkową opcje: 10, 20, 30, które będą odpowiadały tym samym wartościom co 1, 2, 3, tylko dla drużynowych
2. Zrobione. Czy to zmienia jakieś inne aspekty gry/jest uzależnione od zawodu/postaci?
3. Dodane.
Awatar użytkownika
Artak
Posty: 247
Rejestracja: 15 kwie 2015 16:40
Kontakt:

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Artak »

Adremen pisze: 1. Dodam dodatkową opcje: 10, 20, 30, które będą odpowiadały tym samym wartościom co 1, 2, 3, tylko dla drużynowych
Czekaj, nie do końca się zrozumieliśmy chyba (a przynajmniej ja nie zrozumiałem tej wypowiedzi :) ). Ogólnie masz trigger, który aktywuje Alt+3 na zbieranie ustawiony na

Kod: Zaznacz cały

^Zabiles.*
czy jakoś tak :)
Ja bym chciał, żeby ten trigger działał na

Kod: Zaznacz cały

^.*[zZ]abi(l|la|les).*
:)
Adremen pisze: 2. Zrobione. Czy to zmienia jakieś inne aspekty gry/jest uzależnione od zawodu/postaci?
Nic nie zmienia. W momencie jak będziesz chciał kogoś zasłonić i sam będziesz zasłaniany, to wyjdziesz zza zasłony, a jak będziesz chciał zasłonić kogoś i nie będziesz zasłaniany, to dostaniesz komunikat, że nikt Cię nie zasłania :)
Adremen pisze: 3. Dodane.
Super, dzięki :)
Awatar użytkownika
Adremen
Posty: 242
Rejestracja: 31 gru 2009 11:13

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Adremen »

Artak pisze:
Adremen pisze: 1. Dodam dodatkową opcje: 10, 20, 30, które będą odpowiadały tym samym wartościom co 1, 2, 3, tylko dla drużynowych
Czekaj, nie do końca się zrozumieliśmy chyba (a przynajmniej ja nie zrozumiałem tej wypowiedzi :) ). Ogólnie masz trigger, który aktywuje Alt+3 na zbieranie ustawiony na

Kod: Zaznacz cały

^Zabiles.*
czy jakoś tak :)
Ja bym chciał, żeby ten trigger działał na

Kod: Zaznacz cały

^.*[zZ]abi(l|la|les).*
:)
Opcje 10, 20 i 30 robię celowo - niektórzy nie chcą zbierać drużyny, tylko swoje zabicia (wtedy ustawiają 1, 2 lub 3). Jeśli chcesz dostawać powiadomienie o bindzie dla drużynowych zabić to ustawiasz 10, 20 lub 30 ;)

Kod: Zaznacz cały

/zbieranie
(skrypty): Wspierane opcje:
1 - monety
2 - kamienie
3 - monety i kamienie
30 - druzynowe monety i kamienie
10 - druzynowe monety
20 - druzynowe kamienie
0 - nic
(skrypty): Aktualne ustawienie: monety i kamienie
(skrypty): Domyslne ustawienie przy starcie: monety i kamienie
(skrypty): Ustaw poprzez zawolanie '/zbieranie [numer opcji]
Awatar użytkownika
Adremen
Posty: 242
Rejestracja: 31 gru 2009 11:13

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Adremen »

Ok, to może być długi post, bo to chyba największa aktualizacja jaka do tej pory była wypuszczona, dochodzi sporo rzeczy. No to zaczynamy.
UWAGA: Przed aktualizacja przeczytaj koniecznie podpunkt instalacja

Arkadia mapper, wersja 1.4

Co w tej wersji?

1. Przede wszystkim poprawiłem sporo błędów i chyba (wreszcie) naprawiłem śledzenie drużyny po kierunkach standardowych. I teraz dość istotna rzecz: skrypt poprawnie wyłapuje kiedy dołączamy do drużyny i będzie poprawnie śledził. Kiedy będąc w drużynie (i nie będąc prowadzącym) ruszymy się gdziekolwiek sami to śledzenie zostaje wyłączone. Wracając do drużyny trzeba użyć bindu '/fo'. Niestety, jest to konieczne z powodu takiego, że śledzenie drużyny odbywa się bezpośrednio po triggerach, a nie GMCP. Problem jest taki, że GMCP przychodzi przed tekstem "Wraz z ... podazasz na ....", dlatego spięcie tych dwóch osobnych systemów (chodzenie samodzielne vs śledzenie drużyny) jest tak problematyczne.
Czemu nie chcę przepiąć samodzielnego chodzenia na triggery? Z następujących powodów:

- będzie to znacznie większa ilość triggerów (problematyczne w utrzymaniu i możliwe spadki wydajnościowe, w dodatku spisanie wszystkich tych niestandardowych tekstów przejść/blokerów itp itd to jest ogrom)
- mechanizm robi się znacznie bardziej zagmatwany (bo muszę manualnie wyłapywać kiedy ruch faktycznie jest wykonany po konkretnych tekstach, co też odnosi się do poprzedniego punktu)
- jest wbrew zasadzie :) mając gmcp powinniśmy z tego korzystać i powinniśmy być wdzięczni za to Administracji. GMCP to wspaniała rzecz, która zawsze informuje nas, że zmieniła się lokacja. To jest gratisowa, super wartościowa informacja.

2. Od teraz mapper uczestniczy w zapisywaniu lokacji dla bazy danych wprowadzonej w skryptach, ale o tym szerzej w drugiej części (post o wersji skryptów 1.6a).

3. Od teraz jakikolwiek manualny ruch w trakcie chodzika wyłącza go.

4. Nowa akcja na mapie. Po kliknięciu na lokacji na mapperze prawym przyciskiem w Menu pojawi się "ustaw ta lokacje". Po wybraniu tej opcji mapper ustawi się na tej lokacji. Jest to alternatywa dla '/ustaw [numer lokacji]'

UWAGA: Przy aktualizacji konieczne jest używanie keybindów dostarczanych z paczką. Można je zbindować na inne klawisze, ale fizycznie muszą to być te. Podczas naciskanych kierunków ustawianych jest trochę rzeczy i one muszą pozostać do prawidłowego działania z mapperem.

Instalacja
Standardowa, aczkolwiek zmieniłem odrobinę ładowanie skrótów, dlatego jak ktoś ma ich zdefiniowanych sporo (plik 'amap_shortcuts_db.lua') polecam przed aktualizacją na wszelki wypadek zrobienie sobie kopii.


Tutaj był opis paczki skryptów 1.6, ale zostało dodane wsparcie dla gildii, wersja 1.6a jest opisana 2 posty poniżej. Jeśli ktoś zdążył zainstalować 1.6 to najpierw MUSI usunąć plik bazy w folderze: Database_scripts.db. Bez usunięcia tego pliku skrypty do bazy nie będą działały poprawnie!


Poprawiłem też tony bugów o których szkoda miejsca na pisanie. Jest ich na pewno wciąż wiele, dlatego każdy feedback z waszej strony będzie cenny, bo wtedy mogę wszystko poprawiać.
Zmiany są duże, dlatego jakby coś nie działało to można pisać tutaj lub nawet lepiej porozmawiać na żywo na IRCu (nick 'dzordzyk' na #arkadia). Jestem tam cały czas (sesja), dlatego jak nie odpisuję przez chwilę to można zostawić wiadomość/zaczekać.

EDIT: Usuwam paczkę skryptów 1.6, gdyż zapomniałem w strukturze bazy dodać pola na gildię, a modyfikacje bazy nie są wspierane przez lua DB w Mudlecie 2.1. Osoby, które zainstalowany już 1.6 będą musiały usunąć plik bazy przed instalacją 1.6a, którą zamieszczę poniżej w ciągu godziny.
Załączniki
mapper14.zip
(16.16 KiB) Pobrany 103 razy
Ostatnio zmieniony 14 mar 2016 20:09 przez Adremen, łącznie zmieniany 3 razy.
Awatar użytkownika
Werbat
Posty: 1357
Rejestracja: 12 lut 2009 21:25
Lokalizacja: Poznań
Kontakt:

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Werbat »

Adremen pisze:Po kliknięciu na lokacji na mapperze prawym przyciskiem w Menu pojawi się "ustaw ta lokacje".
TĘ, na potęgę posępnego czerepu, TĘ!
Adremen pisze:UWAGA: Przy aktualizacji konieczne jest używanie keybindów dostarczanych z paczką. Można je zbindować na inne klawisze, ale fizycznie muszą to być te. Podczas naciskanych kierunków ustawianych jest trochę rzeczy i one muszą pozostać do prawidłowego działania z mapperem.
Yyyy, co? "Można zmienić na inne, ale to muszą być te". Yyyy...
I aim to misbehave.
Systematycznie dążę do wyrugowania hejtu z arsenału swoich środków wyrazu.
Norcerno
Posty: 88
Rejestracja: 31 sty 2016 21:40

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Norcerno »

Werbat tym razem się nie powstrzymał.
Awatar użytkownika
Adremen
Posty: 242
Rejestracja: 31 gru 2009 11:13

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Adremen »

@UP: Dzięki Werbat, poprawiłem błąd. Co do: "Yyyy, co? "Można zmienić na inne, ale to muszą być te". Yyyy..." - chodziło mi o to, że samą kombinację klawiszy można zmienić (która aktywuje keybind), ale fizycznie muszą to być te keybindy dostarczane z paczką, bo w środku w sekcji "scripts" jest kod do wykonania przy każdym naciśnięciu. Faktycznie, polska język trudna, w dodatku pisałem to późno :)

UWAGA: Jeśli instalowałeś wersję 1.6 to INSTALACJA zawiera specjalne kroki, które trzeba wykonać do poprawnego działania, informacja poniżej w sekcji instalacja.

Arkadia skrypty, wersja 1.6a

1. Baza postaci
Dość długo nad tym pracowałem i nareszcie nadaje się do udostępnienia. Tutaj '/baza'.
Po kolei. Skrypt zapamiętuje wszystkich, którzy przedstawiają się w grze (postacie i NPC). Zapamiętywane jest to w takiej postaci:

Kod: Zaznacz cały

/osoba 40
(skrypty): 
 (40) Kay (SC)
      drobna wesola gnomka
      Kay Folernhollen, Krawcowa z Twierdzy Mons Arx, gnomka.
      12/03/2016 11:47:18
      Nota: Wisi mi 2mth!
      Lokacja: 1632
Pierwsza linia to ID (numerowane od 1, wszystkie postacie które są dodawane do bazy), imię oraz nazwa gildii w nawiasie (jeśli osoba jest zgildiowana). Następne dwie to short oraz pełny tytuł postaci.
Czwarta linia to ostatni update postaci, 5 to notka (która istnieje, o tym za chwilę) oraz szósta to lokacja z mappera (jeśli istnieje). Teraz bardziej szczegółowo:

- Do Gildii można dodawać postacie (pomoc w '/baza')

- Update jest robiony za każdym razem, kiedy postać się przedstawia (update titla jest wtedy robiony oraz aktualizowany jest czas ostatniego update'a)

- Notka to jakaś informacja, którą można dodać dla każdej postaci (standardowo jest to puste pole).

- Lokacja to lokacja, na której postać się przedstawiła. To będzie działało oczywiście tylko wtedy, kiedy skrypty będą używane z moim mapperem. To jest przydatne z noszeniem paczek (będzie o tym poniżej).

Zatem, w trakcie gry postacie są dodawane do bazy, następne przedstawienia już znanych postaci są aktualizowane. Można też ręcznie dodać/usunąć osobę z bazy.
W bazie jest też wyszukiwanie po shortach, imieniach i title'ach (pomoc w '/baza', bo jest tego sporo, ale można np wyszukać '/przeszukaj wyzim' i wtedy pokaże nam wszystkich, którzy w titlu mają cokolwiek z 'wyzim'). Jest też wyszukiwanie po gildiach ('/zgildiowani [nazwa gildii]', wszystkie skróty gildii są dość standardowe i są pod '/gildie').

Co do gildii - można dodawać/usuwać osoby do gildii. Gdzieś w następnych wersjach będzie dodawanie/usuwanie wrogów jako całych gildii itp itd.

Kolejna istotna rzecz to lista wrogów. Można dodać postać o konkretnym ID na listę i wtedy kiedy na arce gdzieś się pojawi zostanie to oznaczone tak:

Kod: Zaznacz cały

Karczma 'Stary Narakort'.
Jest tutaj jedno widoczne wyjscie: wschod.
Pijany zagubiony mezczyzna (WROG!) i krotkowlosy niski mezczyzna.
lub gdy znamy postać z imienia

Kod: Zaznacz cały

Karczma 'Stary Narakort'.
Jest tutaj jedno widoczne wyjscie: wschod.
Berghol (WROG!) i Sargal.
w dodatku string short/imie + (WROG!) będzie zakolorowany na czerwono.

Kolejna istotna sprawa to paczki. Od teraz na poczcie gdy robi się 'obejrzyj tablice' to osoby, które mamy w bazie i mamy ich lokacje zapalą się na zielono. Na żółto zapalą się osoby, o których informacjach jest obecna (np "Mirakul - zielarz w Wyzimie). Oczywiście, jeśli pójdziemy do Mirakula i przedstawimy mu się (mając włączony mapper) i doda go do bazy to paczki adresowane do niego na poczcie będą już kolorowane na zielono.
Kiedy wybiera się paczkę do kogoś zielonego i robi 'obejrzyj paczke', otrzymujemy:

Kod: Zaznacz cały

Wypisano na niej duzymi literami: DOLBRUM.
(mapper): Mam ta osobe w bazie, '/idzdo' zeby tam isc
Ponizej zas odczytujesz drobniejsze pismo: ?paczka.
Wtedy po wpisaniu aliasa '/idzdo', chodzik do tej postaci zostanie wystartowany.

2. Ziola
Poprzednie zioła zostały zaorane. Od teraz gdy zajrzy się do woreczka dostajemy coś takiego:

Kod: Zaznacz cały

+-------------------------- Ziola w tym woreczku ------------------------------+
|                                                                              |
+-----+--------------------------+---------------------------------------------+
| ile |        nazwa             |              dzialanie                      |
+-----+--------------------------+---------------------------------------------+
|   1 | ostrozeczka              | zjedz: +prg, trj                            |
|   3 | mieta                    | rozetrz: +kon +zmc powachaj:-zmc            |
|   3 | jezyna                   | --                                          |
|     |                          |                                             |
+-----+--------------------------+---------------------------------------------+
Można zbudować sobie bazę ziół: "/ziola_buduj" - zajrzy do wszystkich woreczków i skataloguje wszystkie zioła. I od teraz można używać binda '/wezz [ziolo]' lub '/wezz [ziolo] [ilosc]', zioła będą brane z odpowiednich woreczków i baza będzie aktualizowana.
Uwaga: Jeszcze nie uporałem się jak oznaczać ilość w woreczku dla "wiele zoltych jasnych kwiatow", to będzie w następnej wersji. Teraz działa to poprawnie dla "25 zoltych jasnych kwiatow" lub "siedemnascie zoltych jasnych kwiatow".

Zioła będą sporo rozbudowywane w następnych wersjach. Za pomoc dziękuję Bolrygowi, który dostarczył jakże cenne gotowe sparsowane opisy ziół, których mogłem użyć w Mudlecie.

3. /zbieranie drużynowe
Dodałem zbieranie drużynowe (wartości 10, 20, 30, które odpowiadają tym 1, 2, 3). Czyli jeśli używamy 10, 20 lub 30 i ktoś z drużyny zabije to wtedy pokaże się informacja:

Kod: Zaznacz cały

(skrypty): ****** ZBIERANIE DRUZYNA, WEZ Z CIALA: ALT+3 ******
4. Przełamywanie klikalne
Od teraz pod paskiem healtha wroga jest bind "przelam obrone tego wroga".

Instalacja
Zmieniłem odrobinę ładowanie ustawień grafiki, można na wszelki wypadek zrobić kopię (plik 'scripts_ui_settings.lua').
Jeśli instalowałeś/aś wersję 1.6, która była zapostowana przez kilkanaście godzin to KONIECZNIE trzeba najpierw USUNĄĆ plik bazy z katalogu profilu Mudleta. (na MACu to jest domyślnie: /Users/<nazwa usera>/.config/mudlet/profiles/<nazwa_profilu>/). Plik z bazą nazywa się 'Database_scripts.db' i to jego należy usunąć przed uruchomieniem.
Proponuję zrobić tak:
1. Usunąć paczkę poprzednią (czyli prawdopodobnie 1.6) i wyłączyć Mudleta
2. W katalogu profilu usunąć plik 'Database_scripts.db'
3. Uruchomić Mudleta i zainstalować paczkę 1.6a
4. Zrestartować Mudleta
Załączniki
skrypty16a.zip
(50.61 KiB) Pobrany 141 razy
Terum
Posty: 60
Rejestracja: 01 gru 2015 15:17

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Terum »

Mam pytanie jak mam zachować i skopiować wszystkie ustawienia, które wprowadziłem w wersji 1.5 tak by nie trzeba było od nowa ich wprowadzać?
Jeśli to nie problem to mam też prośbę do kolejnej wersji mappera, możesz ustawić chodzenie na numerycznej? Bo co wersja mappera to muszę zmieniać keys? Fajnie by tez było wprowadzić obsługę sakiewki, pewnie to bardzo proste ale mi bardzo topornie idzie napisanie czegokolwiek.
Z góry dziękuję.
Awatar użytkownika
Adremen
Posty: 242
Rejestracja: 31 gru 2009 11:13

Re: Mudlet 2.1 - Mapper + zestaw prostych niezawodnych skryptów

Post autor: Adremen »

Terum pisze:Mam pytanie jak mam zachować i skopiować wszystkie ustawienia, które wprowadziłem w wersji 1.5 tak by nie trzeba było od nowa ich wprowadzać?
Jeśli to nie problem to mam też prośbę do kolejnej wersji mappera, możesz ustawić chodzenie na numerycznej? Bo co wersja mappera to muszę zmieniać keys? Fajnie by tez było wprowadzić obsługę sakiewki, pewnie to bardzo proste ale mi bardzo topornie idzie napisanie czegokolwiek.
Z góry dziękuję.
nic nie musisz raczej specjalnego robić, na wszelki wypadek skopiowałbym te pliki *shortcuts*.lua i *ui*.lua z katalogu profilu w bezpieczne miejsce, aczkolwiek nic raczej się nie stanie. Katalog profilu podawałem na górze (dla Maca), nie wiem gdzie one są na Windowsie/Linuksie. Przeszukaj te pliki na całym dysku i znajdziesz.

Co do mappera - od następnej wersji będzie to zrobione tak, że nie będzie dostarczanych keybindów. Będzie jedynie funkcja: 'amap:move("west")', która będzie musiała być w polu "scripts" danego keybinda. Dzięki temu będziesz mógł mieć te keybindy poza paczką i w trakcie przyszłościowych aktualizacji nic nie będziesz musiał zmieniać (a ja tak naprawdę modyfikując cokolwiek będę modyfikował ciało funkcji 'amap:move(dir)'.

Co do sakiewki to będzie w przyszłości.
ODPOWIEDZ