[Pasek] Hermitowskie Obstawy

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Kod:
javascript:$.ajax('https://media.innogamescdn.com/com_DS_PL/skrypty/HermitowskieObstawy.js?_='+~~(Date.now()/9e6),{cache:1}); void (0);
Skrypt ma za zadanie ułatwić wysyłanie wojska na stałe obstawy. W porównaniu do wysyłania wojsk za pomocą szablonów skrypt ma przewagę, że sam rozkłada wojska na podstawie podanych parametrów. Wysyłanie wsparcia z większej liczby wiosek powoduje, że z poszczególnych wiosek idzie mniej jednostek, co przekłada się na krótszy czas rekrutacji jednostek, jeżeli dana obstawa padnie.

obstawa_1.png

Cel - Współrzędne wioski, do której chcemy wysłać wsparcie. Jeżeli współrzędne wioski należą do nas to skrypt przy wyborze jednostek pominie wybór potencjalnych wojsk ze wskazanej wioski.
Grupa - Z której grupy wiosek mają zostać wybrane jednostki.
Ilość deffa - Ile jednostek deffa wybrać.
Ilość zwiadu - Ile jednostek zwiadu dobrać.
Ilość wiosek - Na ile maksymalnie wiosek rozłożyć wybór wojsk.
Minimalna ilość deffa - Ile co najmniej jednostek deffa musi mieć dana wioska, aby była rozważona przy wyborze wojsk. Opcja ta ma na celu uniknięcia generowania rozkazów wysyłających po kilka jednostek.
Strategia wybierania - Jaką strategię wyboru jednostek zastosować.
Data dotarcia przed - Jeżeli zaznaczona jest opcja, to skrypt wybierze tylko te jednostki, które dotrą przed podaną datą.
Rozdziel jednostki - Jeżeli zaznaczona jest opcja, to skrypt rozdzieli wybrane jednostki z wioski w grupy o takich samych czasach przemarszu.

Po kliknięciu 'Generuj' skrypt na podstawie wcześniej wybranych parametrów wygeneruje listę rozkazów.
W nagłówku tabelki z rozkazami obok ikonek pokazane zostało ile skrypt wybrał jednostek na ile możliwych.
Kliknięcie w 'Wykonaj' spowoduje otwarcie placu z wypełnionymi jednostkami w obecnej karcie. Aby tego uniknąć należy przytrzymać Ctrl i następnie kliknąć rozkazy. Ewentualnie można użyć opcji 'Otwórz rozkazy', która otworzy podaną liczbę rozkazów w nowych kartach, a nam zostanie tylko wybór typu rozkazu (Atak/Pomoc) i zatwierdzenie rozkazu.

Po kliknięciu zębatki otworzą nam się ustawienia skryptu.

obstawa_2.png

Przeliczniki - na podstawie tej sekcji skrypt interpretuje dostępną liczbę jednostek deffa. Domyślnie każda jednostka zapewnia tyle jednostek deffa ile zajmuje ludności w zagrodzie. Niektórzy wolą ustawić ciężką kawalerię jako 4 jednostki deffa. To jest właśnie to miejsce, gdzie to skonfigurują. Wartość równa zeru powoduje całkowite ignorowanie danego typu jednostki przy wyborze wojsk. Wartość może być liczbą z kropką (z przecinkiem), np. 3.14.
Rezerwca - na podstawie tej sekcji skrypt przy wyborze wojsk pominie podane liczbę jednostek. Pomijana jest liczba jednostek, nie liczba jednostek deffa. Ustawienie przelicznika dla pikinierów na 2 oraz wpisanie w rezerwie 100 pikinierów, spowoduje pominięcie 100 pikinierów, a nie 50 piknierów.
Domyślne wartości - ta sekcja pozwala ustawić jakie wartości parametrów mają się ustawiać przy uruchomieniu skryptu.
Zmiany trzeba zatwierdzić klikając przycisk 'Zapisz'. Zmiany dotyczące przeliczników i rezerw nie wpływają na wygenerowaną już listę.

Jako, że głównym miejscem, gdzie są wypisane wioski do obstawy jest forum plemienne to powstała następująca funkcjonalność skryptu.
Parametry wejściowe można nadpisać podając parametry za pomocą URLa. Jeżeli w adresie URL są podane parametry, to wartości domyślne zostaną nadpisane przekazaną wartością.
Przekazać można następującego parametry:
target <- cel
deff_count <- ilość deffa
spy_count <- ilość zwiadu
minimal_deff_count <- minimalna ilość deffa
village_count <- ilość wiosek
arrival_data <- data dotarcia przed

Za pomocą tych parametrów na forum plemiennym można (na chwilę obecnie ręcznie) stworzyć następujący link:
<nazwa_linku>
Po kliknięciu w niego zostaniemy przekierowani na docelową wioskę, po uruchomieniu skryptu pole 'Ilość deffa' będzie zawierało wartość 40000.
Może na chwilę obecną jest to bardziej uciążliwe niż pomocne, ale do czasu...

1. Jeżeli chcesz, aby z każdej wioski zostało wybrane tyle samo jednostek deffa jest to możliwe, jeżeli ustawisz parametry następująco:
Ilość deffa: X * Y
Ilość wiosek: Y
Minimalna ilość deffa: X
gdzie X - ilość deffa, które ma zostać wybrane w każdej wiosce, [Y] - ilość wiosek
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Tak to jest jak się testuje na 10 pikomieczach :p zwiadu jeszcze się nie dorobiłem. Co do otwierania kart, to możliwe, że twoja kochana przeglądarka Cię blokuje przed złośliwymi skryptami.
W Firefoxie przy pierwszym uruchomieniu trzeba będzie zezwolić na otwierania dodatkowych kart:
upload_2019-9-17_19-52-47.png
W innych przeglądarkach nie pomogę, bo nie umiem.
 

Miksa

Lekki Kawalerzysta
Możliwe lecz aż tak bardzo tej opcji ja osobiście nie potrzebuje tylko chciałem zwrócić uwagę
 

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Po zmianie przeliczniku/rezerw zawsze wyskakuje błąd.Nawet jak wszędzie jakieś wartości dodatnie wpiszę, to dalej to jest. :(

TypeError: Cannot read property 'value' of null

TypeError: Cannot read property 'value' of null
at HTMLButtonElement.save_settings (eval at <anonymous> (https://dspl.innogamescdn.com/assets/pl137/712dc548c7e3483980ba9bdb05246719/merged/game.js:9:4904), <anonymous>:820:59)
Możesz sprawdzić w trybie incognito czy błąd występuje? Bo nie jestem w stanie u siebie tego odtworzyć.
 

Debren

Miecznik
Kod:
TypeError: Object.fromEntries is not a function

TypeError: Object.fromEntries is not a function
    at get_world_info (https://media.innogamescdn.com/com_DS_PL/skrypty/HermitowskiePlikiMapy.js:240:19)
Jak zrozumialem ten komunikat, to brakuje mi drugiego skryptu do kompletu. Moze mi ktos podpowiedziec, gdzie go wrzucic, zeby to dzialalo?
 

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Kod:
TypeError: Object.fromEntries is not a function

TypeError: Object.fromEntries is not a function
    at get_world_info (https://media.innogamescdn.com/com_DS_PL/skrypty/HermitowskiePlikiMapy.js:240:19)
Jak zrozumialem ten komunikat, to brakuje mi drugiego skryptu do kompletu. Moze mi ktos podpowiedziec, gdzie go wrzucic, zeby to dzialalo?
Skrypt ten bazuje na innym skrypcie, ale jest on zaciągany automatycznie. To co przestało działać to jedna z funkcjonalności języka, z której ten skrypt skorzystał, aby nie wynajdować koła od nowa. Wspieranie ten funkcjonalności języka zależy od przeglądarki.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/fromEntries#Browser_compatibility

wygląda na to że jesteś szczęśliwym użytkownikiem przeglądarek od m$
 

Debren

Miecznik
Nie jestem.
Uzywam Vivaldi, ktory jest podobnie jak wiekszosc obecnie oparty o chromium.

W kazdym razie teraz wiem czego i gdzie szukac... i chyba problem w tym, ze mam za stara wersje. Czas na update... niestety...
 
Ostatnia edycja:

Debren

Miecznik
Kiedyś mi się uda znaleźć szczęśliwego użytkownika przeglądarek m$.
Mozesz uznac, ze pol uzytkownika znalazles :D. EDGE calkiem przyzwoicie sie sprawuje jako czytnik ebookow, jednak jesli idzie o internet, to juz znacznie gorzej.

Może po prostu wystarczy zaktualizować przeglądarkę.
Wlasnie o tym pisalem. Podana przez Ciebie tabela kompatybilnosci wymienia Chrome w wersji 70. Uzywana przeze mnie przegladarka uzywala 69. Aktualizacja zalatwila sprawe.
 

Debren

Miecznik
Po zmianie przeliczniku/rezerw zawsze wyskakuje błąd.Nawet jak wszędzie jakieś wartości dodatnie wpiszę, to dalej to jest. :(

TypeError: Cannot read property 'value' of null

TypeError: Cannot read property 'value' of null
at HTMLButtonElement.save_settings (eval at <anonymous> (https://dspl.innogamescdn.com/assets/pl137/712dc548c7e3483980ba9bdb05246719/merged/game.js:9:4904), <anonymous>:820:59)
Możesz sprawdzić w trybie incognito czy błąd występuje? Bo nie jestem w stanie u siebie tego odtworzyć.
Vivaldi (Chrome/77.0.3865.7<cfaniak>. Przy kazdej probie uzycia przycisku "zapisz" wyskakuje blad:

------
TypeError: Cannot read property 'value' of null

TypeError: Cannot read property 'value' of null
at HTMLButtonElement.save_settings (eval at <anonymous> (https://dspl.innogamescdn.com/assets/pl142/041b8b1456b2877d6d83aaaa9b74d584/merged/game.js:9:4904), <anonymous>:814:59)
------

Wystepuje w trybie normalnym oraz incognito. Nie zalezy od ilosci i rodzaju wprowadzonych zmian w ustawieniach.