[Pasek] Hermitowskie Fejki

jarq

Killer
Plemiona Team
Opiekun Projektu
Zapraszam do dyskusji

--------------------------------------------------
Posty który dotyczyły nieaktualnej wersji skryptu zostały usunięte.
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Skrypt służy do wypełniania pól formularza na placu, konkretnie wybiera jakieś wojska i jakieś współrzędne, a czasem wcale.

Główną funkcjonalność skrypt spełnia na placu. Jeżeli jesteśmy poza placem to skrypt przeniesie nas na plac. Jeżeli wioska wypadnie z obecnej grupy dynamicznej to skrypt spróbuje przenieść nas do następnej wioski z grupy.

Co potrafi zrobić skrypt?
* domyślnie pomija wioski, na które atak za pomocą wybranych jednostek wchodziłby w bonusie nocnym
* potrafi wybrać jedną losową wioskę z podanej przez ciebie puli wiosek (sick!)
* potrafi wybrać tak wioskę, aby atak na nią wchodził na podane przez ciebie dni miesiąca
* potrafi wybrać tak wioskę, aby atak na nią wchodził w podanym przez ciebie przedziale czasowym (w przeciągu dnia)
* potrafi omijać ostatnio wybrane wioski
* możesz obrać za cel konkretnych graczy, wtedy skrypt sam zaimportuje listę ich wiosek, możesz ograniczyć listę wiosek gracza do jakiegoś wycinku na mapie
* możesz zdefiniować jaki szablon wojsk musi się zawsze znaleźć w ataku (tzw. podstawka)
* potrafi wybrać tyle wojsk, aby spełnić ograniczenie straszaków
* możesz zdefiniować za pomocą jakich wojsk skrypt ma dobierać wojska, aby spełnić ograniczenie straszaków (tzw. dopełnienie)
* możesz zdefiniować czy do ataku dołączyć wszystkie zadeklarowane wojska służące do dopełnienia

Czas, który spędzisz na przeczytanie tego tutoriala (obstawiam zakres 20 minut) się zwróci :)

Wojska są wybierane w dwóch występujących po sobie fazach:
(*) faza wyboru podstawki
(*) faza wyboru dopełnienia

Wojska do wyboru podstawki oraz do wojska do wyboru dopełnienia są od siebie niezależne.

Faza wyboru podstawki:
Skrypt spróbuje wybrać jedną z wcześniej zdefiniowanych podstawek. Podstawka to szablon wojsk, które muszą znaleźć się w wybranych wojskach.
Jeżeli uda mu się wybrać podstawkę to przejdzie do fazy wyboru dopełnienia.
Jeżeli nie uda mu się wybrać podstawki to spróbuje wybrać kolejną podstawkę.
Jeżeli nie ma już więcej zdefiniowanych podstawek to skrypt zakończy swoje działanie.

Faza wyboru dopełnienia:
Skrypt do wcześniej wybranej podstawki spróbuje dobrać kolejne jednostki, aby sprostać wymaganiu gry na ograniczenie straszaków. Jednostki za pomocą których skrypt ma uzupełnić szablon (i w jakich ilościach) można konfigurować.
Jeżeli nie uda mu się wybrać wystarczającej liczby jednostke to wróci do wyboru następnej podstawki, dla której być może już się uda wybrać dopełnienie.
Jeżeli dla danej podstawki uda mu się wybrać dopełnienie to przejdzie do fazy wyboru wioski.

To jest akurat proste, wybierz jedną wioskę z puli. Koniec.
Czym jest ta pula wiosek?
Początkowo pula wiosek są to wioski, które podałeś w ustawieniach skryptu.
Następnie, jeżeli podałeś kogoś za cel. Dołączone do puli zostaną wioski oznaczonych graczy.
Następnie z tej puli wiosek, usunięte zostaną wszystkie wioski, które nie spełniają założeń co do ram czasowych.
W zależności od preferencji użytkownika, usunięte zostaną jeszcze te wioski, które zostały niedawno wybrane.
Z tak przetworzonej puli wybierz jedną z wiosek. Wyświetl krótką informację o ataku.

Kod:
javascript: var HermitowskieFejki = {
  omitNightBonus: 'true',
  coords: '',
  players: '',
  days: '1-31',
  intervals: '0:00-23:59',
  templates: [
      {spy: 1, ram: 1},
      {spy: 1, catapult: 1},
      {ram: 1},
      {catapult: 1}
  ],
  fillWith: 'spear,sword,axe,archer,spy,light,marcher,heavy,ram,catapult',
  fillExact: 'false',
  skipVillages: 'true',
  safeguard: {},
  localContext: '0',
  customContexts: '',
  boundingBoxes: [],
  version: 'Honey'
};
eval(localStorage['Faking']) || $.getScript('https://media.innogamescdn.com/com_DS_PL/skrypty/Faking.js'); void(0);
Skrypt jest podzielony na dwie części:
(*) ustawień, czyli wszystko pomiędzy zewnętrznymi klamrami {}
(*) uruchomienia skryptu, czyli ostatnia linijka
I tylko pierwszą z tych części powiniście modyfikować

Wcześniej było dużo opisu jak działa, w tym dużo słów, typu '...wybierze jakieś wojska', 'spróbuje wybrać kolejne jednostki, aby sprostać wymaganiu..', czyli ile? Na te wszystkie pytania znajdziesz tu odpowiedź. Zapnij pasy.
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Za wybór wiosek odpowiadają następujące pola:

*** coords ***
Pole coords służy do zdefiniowania początkowej puli wiosek. coords jest napisem, który zawiera współrzędne wiosek.
Przykłady:
Kod:
coords: '500|500 501|501',
coords: '500|500',
Domyślną wartością jest pusty napis (''), co reprezentuje pustą pulę wiosek i zmusza was do jakiejś ingerencji w modyfikację skryptu. (Innymi słowy w ciapki wklej współrzędne celi)

*** days ***
Pole days służy do określenia, w które dni miesiąca mają wchodzić ataki. days jest napisem, który zawiera przedziały dni rozdzielone przecinkiem. Przedział jest postaci dd-dd, gdzie dd to dzień miesiąca. Jeżeli chcesz wybrać jeden dzień, to możesz zastosować następującą sztuczkę: od jest równe do.
Przykłady:
Kod:
days: '1-31',
days: '10-10',
days: '28-31,1-4',
Pierwszy przykład oznacza: wybieraj ataki, które dojdą w dowolny dzień miesiąca, jest to też wartością domyślną.
Drugi przykład oznacza: wybieraj ataki, które dojdą w dziesiąty dzień miesiąca.
Trzeci przykład oznacza: wybieraj ataki, które dojdą albo pod koniec miesiąca (dni od 28 do 31) albo na początku miesiąca (dni od 1 do 4).

*** intervals ***
Pole intervals służy do określenia czasu, w które mają wchodzić ataki. intervals jest napisem, który zawiera przedziały czasowe rozdzielone przecinkiem. Przedział jest postaci hh:mm-hh:mm, gdzie hh to godziny, a mm to minuty.
Przykłady:
Kod:
intervals: '0:00-23:59',
intervals: '23:00-23:59,7:00-8:00',
Pierwszy przykład oznacza: wybieraj ataki, które dojdą w dowolnym czasie dnia, jest to wartością domyślną.
Drugi przykład oznacza: wybieraj ataki, które dojdą albo pod koniec dnia (od 23:00 do 23:59) albo na początku dnia (od 7:00 do 8:00).

*** omitNightBonus ***
Pole omitNightBonus służy do określenia czy pomijać wioski, na które atak wchodziłby na bonus nocny. omitNightBonus jest napisem, który zawiera jedną z dwóch wartości: true albo false.
Przykłady:
Kod:
omitNightBonus: 'true',
omitNightBonus: 'false',
Pierwszy przykład oznacza: pomijaj wioski, na które atak wchodziłby na bonus nocny, jest to wartością domyślną.
Drugi przykład oznacza: nie pomijaj wiosek, na które atak wchodziłby na bonus nocny.

Opcja omitNightBonus ma priorytet nad opcją intervals. Jeżeli intervals zawiera przedział czasowy, który wchodzi na bonus nocny, to ustawiona opcja omitNightBonus ucina ten kawałek, który wchodzi na bonus nocny i finałowo zostanie tylko przedział czasowy nie wchodzący na bonus nocny. Więc bez obaw, pomimo tego, że domyślną wartością intervals jest cały dzień, ataki nie będą wchodzić w domyślnej konfiguracji na bonus nocny.

*** players ***
Pole players służy do zdefiniowania, których graczy obrać jako cel. Ich wioski zostaną dodane do puli wiosek. players jest napisem, który zawiera dokładne nicki graczy rozdzielone przecinkiem.
Przykłady:
Kod:
players: '',
players: 'foo',
players: 'foo, bar',
Pierwszy przykład oznacza: nie dodawaj dodatkowo wiosek żadnego gracza do puli, jest to też wartość domyślna.
Drugi przykład oznacza: dodaj dodatkowo wioski należące do gracza o nicku 'foo'.
Trzeci przykład oznacza: dodaj dodatkowo wioski należące do graczy o nickach 'foo' lub 'bar'.

*** boundingBoxes ***
Pole boundingBoxes ma na celu pomijania wiosek z puli, które są poza podanymi wycinkami mapy. Domyślnie nie ma podanych wycinków, więc skrypt pomija ten krok. boundingBoxes jest listą prostokątów obcinających.

Przykłady:
Kod:
boundingBoxes: [{minX: 100, maxX: 200, minY: 300, maxY: 400}],
boundingBoxes: [{minX: 100, maxX: 200, minY: 100, maxY: 200},
                {minX: 200, maxX: 200, minY: 300, maxY: 300}],
Pierwszy przykład oznacza: Pomiń wszystkie wioski, które leżą poza podanym prostokątem, czyli odrzuć wioski, których współrzędne nie spełniają warunku 100 <= x,y <= 200
Drugi przykład oznacza: Pomiń wszystkie wioski, które leżą poza podanymy prostokątami, czyli odrzuć wioski, których współrzędne nie spełniają warunku 100 <= x,y <= 200 lub 200 <= x,y <= 300

*** localContext ***
To ustawienie ma na celu blokadę wyboru wiosek, które zostały wybrane niedawno z obecnej wioski. localContext jest napisem, który zawiera liczbę minut na ile czasu blokować wcześniej wybrane wioski. Domyślną wartością jest 0 minut, co oznacza brak blokady.
Przykłady:
Kod:
localContext: '5',
Pierwszy przykład oznacza: nie wybieraj wiosek, które zostały wybrane z obecnej wioski w przeciągu ostatnich 5 minut.

Skrypt pod spodem tworzy sobie 'worek' na ostatnio wybrane wioski. Każda obecnie przeglądana wioska ma swój unikalny worek. Po wybraniu celu, skrypt wrzuca ten cel do worka, aby przy następnym uruchomieniu już go nie wybrać. Za to jak długo taka wioska ma żyć w worku odpowiada właśnie czas życia ustawiony za pomocą tej opcji.

*** customContexts ***
To ustawienie też ma na celu blokadę wyboru wiosek, które zostały wybrane niedawno. Wcześniej każda wioska miała swój prywatny worek, tym razem worek jest współdzielony przez wszystkie wioski. customContexts jest napisem, który zawiera definicje worków rozdzielone przecinkiem. Domyślną wartością jest brak dodatkowych worków. Definicja worka składa się z jej nazwy oraz czasu życia wioski w tym worku: <nazwa>:<czas życia w minutach>
Przykłady:
Kod:
customContexts: 'zwiad:15',
customContexts: 'katapulty:60,zwiad:15',
Pierwszy przykład oznacza: po wybraniu celu, dodaj go do worka o nazwie 'spy' z czasem życia 15 minut. Nie wybieraj wiosek, które zostały w przeciągu ostatnich 15 minut do niego wrzucone.
Drugi przykład oznacza: po wybraniu celu, dodaj go do worków o nazwie 'katapulty' i' 'spy'. Nie wybieraj wiosek, które zostały niedawno do nich wrzucone.
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Za wybór wojsk odpowiadają następujące pola:

*** fillWith ***
Pole fillWith służy do określenia, za pomocą jakich wojsk i w jakich ilościach dopełniać ludność, aby spełnić ograniczenie straszaków. fillWith jest napisem, który zawiera listę wpisów z informacją za pomocą jakich wojsk uzupełniać rozdzielonych przecinkiem. Wpis z informacją jest postaci nazwa[:ilość], nazwa to kod jednostki, np. 'spear', a informacja w [] jest opcjonalna, oznacza ona ile maksymalnie jednostek danego typu wojsk wybrać, jeżeli nie bedzie dwukropka z liczbą to skrypt uzna, że może dopełniać za pomocą tej jednostki bez ograniczeń. Kolejność wybierania wojsk od lewej do prawej.

Przykłady:
Kod:
fillWith: 'spear,sword,axe,archer,spy,light,marcher,heavy,ram,catapult',
fillWith: 'spy:5,axe:40,light:10',
fillWith: 'axe:20,light:5,spy,spear:30,sword:30,heavy:5,axe,light,spear,sword,ram,catapult',
Pierwszy przykład oznacza: Jeżeli jest za mało wojska, aby wysłać atak, dobierz pikinierów, jeżeli wciąż za mało to dobierz mieczników, jeżeli wciąż za mało to dobierz toporników, i tak dalej...
Drugi przykład oznacza: Jeżeli jest za mało wojska, aby wysłać atak, dobierz nie więcej niż 5 zwiadowców, jeżeli wciąż za mało to dobierz nie więcej niż 40 toporników, jeżeli wciąż jest za mało to spróbuj dobrać nie więcej niż 10 lekkich kawalerzystów.
Trzeci przykład oznacza: Jeżeli jest za mało wojska, aby wysłać atak, dobierz nie więcej niż 20 toporników, jeżeli wciąż za mało to dobierz nie więcej niż 5 lekkich kawalerzystów, jeżeli wciąż jest za mało to spróbuj dobrać zwiadowców, jeżeli wciąż za mało to spróbuj dobrać nie więcej niż 30 pikinierów, jeżeli wciąż za mało to spróbuj dobrać nie więcej niż 30 mieczników, jeżeli wciąż za mało to spróbuj dobrać toporników, jeżeli wciąż za mało to spróbuj dobrać lekkich kawalerzystów, jeżeli wciąż za mało to spróbuj dobrać pikinierów, jeżeli wciąż za mało to spróbuj dobrać mieczników, jeżeli wciąż za mało to spróbuj dobrać tarany, jeżeli wciąż za mało to spróbuj dobrać katapulty.

*** fillExact ***
Pole fillExact służy do określenia, czy wojska które podałeś za pomocą fillWith wybrać w takiej ilości w jakiej podałeś, a nie tylko tyle, aby spełnić wymaganą minimimalną liczbę ludności. fillExact jest napisem, który zawiera jedną z dwóch wartości: true albo false.

Przykłady:
Kod:
fillExact: 'false',
fillExact: 'true',
Pierwszy przykład oznacza: dopełnij wojskami tak, aby spełnić tylko wymaganą minimalną ludność do ataku, nie bierz ponad wymagany limit, jest to opcja domyślna.
Drugi przykład oznacza: dobierz wszystkie podane wojska za pomocą fillWith

Jeżeli fillExact: 'true' oraz fillWith: 'axe:3000,light:1500,ram:300' wybrane zostanie co najwyżej 3000 toporników oraz co najwyżej 1500 lekkich kawalerzystów oraz co najwyżej 300 taranów. Jeżeli jednostek jest mniej to wybierze maxymalną ilość. Ma to swoje wady, jeżeli jednostek jest mniej niż zadeklarowane ilości. Jeżeli chcesz wybrać na pewno nie mniej niż podane ilości to skorzystaj z opcji templates.
Jeżeli fillExact: 'true' oraz fillWith: 'light:100,catapult:20' wybrane zostanie co najwyżej 100 lekkich kawalerzystów oraz co najwyżej 20 katapult. Może to być przydatne przy wysyłaniu ataków na centrum wroga, aczkolwiek moim zdaniem lepszym do tego jest wykorzystanie opcji templates.

*** templates ***
Pole templates odpowiada za określenie zdefiniowanie szablonów podstawek. templates jest listą szablonów, gdzie każdy szablon jest obiektem, który zawiera pola w postaci nazwa:ilość. Kolejność wybierania szablonów od lewej do prawej.
Przykłady:
Kod:
templates: [
  {spy: 1, ram: 1},
  {spy: 1, catapult: 1},
  {ram: 1},
  {catapult: 1}
],
templates: [
  {light: 50, ram: 1},
],
*** safeguard ***
Pole safeguard służy do określenia, które jednostki i w jakich ilościach mają być przez skrypt nie ruszona. Innymi słowy jest to rezerwa, która na pewno zostanie w wiosce po wyborze jednostek.

Przykłady:
Kod:
safeguard: {spy:5},
safeguard: {ram:3,spy:141],
Pierwszy przykład oznacza: W wiosce zostanie 5 zwiadowców.
Drugi przykład oznacza: W wiosce zostaną 3 tarany, 141 zwiadowców.
Inne opcje, które nie pasowały do powyższych kategorii

*** version ***
Skrypt jest podzielony na dwie części. Jedna z nich, konkretnie ustawienia są trzymana po twojej stronie w pasku skryptów, natomiast sam kod skryptu jest trzymany po stronie serwera plemion. Za każdym (prawie) razem jak odpalasz skrypt z paska, kod skryptu jest pobierany z serwera plemion i się wykonuje w zależności od twoich ustawień. Z tego faktu wynika właśnie obszerność tego tutoriala, jako, że skrypt nie posiada interfejsu graficznego i ustawienia musisz edytować z palca, dodatkowo też nie za bardzo da się radę zrobić wersję z 'domyślnymi ustawieniami' (np. co wtedy z pulą wiosek?). Co więcej skrypt może być zaktualizowany bez twojej wiedzy, dodając jakieś ciekawe funkcjonalności. version odpowiada właśnie za pilnowanie, aby twoja wersja ustawień zgadzała się z wersją skryptu. Jeżeli obecna wersja ustawień będzie różna od wersji skryptu, to dostaniesz informację, że masz niezgodną wersję oraz, że aktualna wersja znajduje się na forum plemion. Jeżeli będziesz zadowolony z obecnej wersji i uznasz, że nie potrzebne Ci żadne nowe cuda, które mogły się pojawić, to wystarczy, że zmienisz treść napisu na aktualny. Kompatybilność wsteczna powinna być zachowana. version jest być może przypadkowym napisem.
Przykłady:
Kod:
version: 'Keleris',
version: 'Honey',
*** skipVillages ***
skipVillages
odpowiada za możliwość wykonania następującej sztuczki. Jeżeli obecna wioska wypadła z obecnie wybranej grupy dynamicznej lub nie można było wybrać jednostek albo celu przejdź do następnej wioski z grupy. Może to być przydatne w sytuacj: chcesz wysyłać fejki z taranami, masz grupę dynamiczną do której należą wioski, które mają więcej niż 1 taran, extra, po wysłaniu ostatniego taranu z wioski i odpaleniu jeszcze raz skryptu, skrypt wykryje, że wioska wypadła z grupy dynamicznej (nie ma już taranów) i przeskoczy do następnej wioski, która już ma tarany, fantastyczne rozwiązanie, nie prawdaż? skipVillages jest napisem, który zawiera jedną z dwóch wartości: true albo false.
Przykłady:
Kod:
skipVillages: 'true',
skipVillages: 'false',
Pierwszy przykład oznacza: jeżeli wykryjesz sytuację opisaną powyżej (wioska wypadła z grupy) to przejdź do następnej wioski z grupy, jest to domyślnie ustawione.
Drugi przykład oznacza: jeżeli wykryta zostanie taka sytuacja, nie przechodź do następnej wioski z grupy, po prostu kontynuuj działanie skryptu. Ma to sens, bo wypadnięcie z grupy nie oznacza, braku możliwości wyboru jednostek.

*** domyślne wartości ***
Skrypt korzysta ze wszystkich wymienionych pól. W przypadku braku ustawionej opcji przez ciebie, skrypt wybierze domyślną wartość. Nie ma więc potrzeby uzupełniania wszystkich pól. Wystarczy ustawić te, które nas interesują, w większości przypadków będą to: coords, days, intervals, fillWith.
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Przykładowe konfiguracje, abyście wiedzieli co się da ustawić. Wyżej są wypisane wszystkie parametry oraz ich znaczenie, aczkolwiek jak coś jest ciekawego to i tak zwrócę na to uwagę.
Kod:
var HermitowskieFejki = {
  omitNightBonus: 'false',
  templates: [{spy: 5}],
  coords: ''
};
Za pomocą templates ustawiamy nowy szablon składający się z 5 zwiadu. omitNightBonus ustawiamy na 'false', ponieważ bonus nocny nie działa na zwiadowców. Pomiędzy coords pozostaje nam wklepać interesujące nas współrzędne.
Praca domowa: Co ustawić i jak, aby wybrać każdą wioskę dokładnie raz?
Kod:
var HermitowskieFejki = {
  fillExact: true,
  fillWith: 'axe:3000,light:1500,ram:200',
  templates: [{ram: 1}],
  coords: ''
};
fillExact powoduje, że skrypt postara się wybrać 3000 toporników, 1500 lekkich kawalerzystów, 200 taranów, zamiast przykładowo 90 toporników, które by spełniały już minimalny wymóg dotyczący ludności na atak. W tym sposobie jest jeden mały haczyk. Jeżeli w wiosce jest 200 toporników, 50 lekkich kawalerzystów, 10 taranów, to skrypt weźmie wszystkie te wojska, aczkolwiek nie będzie to czego byśmy oczekiwali. Podobnie w sytuacji 2800 toporników, 1400 lekkich kawalerzystów, 200 taranów, weźmie wszystkie wojska, ale tutaj możemy już przymknąć oko, bo nie dużo się różni od tego co chcieliśmy.
Praca domowa: Co ustawić i jak, aby mieć pewność, że przykładowa ilość 3000 toporników, 1500 lekkich kawalerzystów, 200 taranów znajdzie się w ataku?
Kod:
var HermitowskieFejki = {
  fillWith: 'spy:20,light:5,axe:5,spy:10,light:5,axe:5,light,axe',
  coords: ''
};
Typowy straszak. Pozostaje wrzucić współrzędne wiosek pomiedzy ciapki coords. Biorąc pod uwagę domyślne ustawienia. Bonus nocny będzie pomijany, będzie wybierana minimalna ilość wojsk, więc takie minimum, którego byśmy się spodziewali.
Praca domowa: Czy jest jakiś sposób, aby zminimalizować koszty fejka? Weź pod uwagę różne priorytety, np. czas rekrutacji, koszt surowców.
Kod:
var HermitowskieFejki = {
  templates: [{catapult:15,light:50}],
  coords: ''
};
Tutaj przedefiniowanie szablonu, aby wybierał katapulty plus lekką.
Praca domowa: Czemu rozwiązanie z templates ma znaczącą przewagę nad rozwiązaniem z fillExact?
Kod:
var HermitowskieFejki = {
  omitNightBonus: 'true',
  coords: '',
  players: '',
  days: '1-31',
  intervals: '0:00-23:59',
  templates: [
      {spy: 1, ram: 1},
      {spy: 1, catapult: 1},
      {ram: 1},
      {catapult: 1}
  ],
  fillWith: 'spear,sword,axe,archer,spy,light,marcher,heavy,ram,catapult,knight',
  fillExact: 'false',
  skipVillages: 'true',
  localContext: '0',
  customContexts: '',
  safeguard: {},
  boundingBoxes: [],
  version: 'Honey'
};
Tutaj jest po prostu wszystko co da się ustawić.

Ten tutorial nie wyczerpuje wszystkich możliwych konfiguracji. Ale po przeczytaniu tego tutoriala powinieneś mieć wiedzę na temat tego jak zmiana poszczególnych parametrów wpływa na zachowanie skryptu. Łącząc opcje można uzyskać całkiem ciekawe rezultaty.
 
Ostatnia edycja:

Matheush

Miecznik
Tutaj. (wraz z kolejnymi 3 postami, które wyczerpują temat ustawień)

Sprawdź czy twoje ustawienia zawierają informację o wersji używanych ustawień (po prostu brakuje version: 'Keleris', albo napisałeś to z błędem (zauważ brak spacji na początku jak i na końcu napisu Keleris (i musi być w ciapkach)))
dzięki chyba właśnie brakowało tej linijki :) A jeszcze mam pytanie co do wybieranych wojsk, czy ustawienie spy 50 ram 1 axe 50 będzie zawsze działało w ten sposób że skrypt priorytetowo będzie wybierał tylko zwiad i jeden taran a jeżeli jest za mało zwiadu dobierze w tym przypadku toporników ?
 

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Wojsko jest wybierane w dwóch fazach, jeżeli 'spy:50, ram:1, axe:50' wrzucisz do szablonu podstawki (templates) to zostaną wybrane wszystkie wojska albo wcale.
Jeżeli wrzucisz do szablonu dopełnienia (fillWith) to jest tak jak mówisz: skrypt do wcześniej wybranej podstawki będzie wybierał w pierwszej kolejności nie więcej niż 50 zwiadu, następnie nie więcej niż 1 taran, następnie nie więcej niż 50 toporników.

PS. Wiele osób wrzuca 1 taran w fillWith. Zazwyczaj jest to nie potrzebne, jeżeli ci chodzi o to, aby wybrane wojska miały czas przemarszu taranu/katapulty. Tą funkcjonalność spełnia szablon domyślnych podstawek.
 

Vasten

Chłop
Nadal wywala błąd że nowa wersja pomimo skopiowania najnowszego skryptu:

javascript: var HermitowskieFejki = {
omitNightBonus: 'true',
coords: '',
players: '',
allies: '',
minimumVillagePoints: '0',
days: '1-31',
intervals: '0:00-23:59',
templates: [
{spy: 1, ram: 1},
{spy: 1, catapult: 1},
{ram: 1},
{catapult: 1}
],
fillWith: 'spear,sword,axe,archer,spy,light,marcher,heavy,ram,catapult',
fillExact: 'false',
skipVillages: 'true',
enableHistory: 'false',
historyLiveTime: '5',
version: 'Keleris'
};
eval(localStorage['Faking']) || $.getScript('https://media.innogamescdn.com/com_DS_PL/skrypty/Faking.js');
 

kubaO

Chłop
co w przypadku gdy wyrzuca taki błąd?

QuotaExceededError: Failed to set the 'map/village.txtdata' property on 'Storage': Setting the value of 'map/village.txtdata' exceeded the quota.

Dodam, że pokazuje go, gdy w skrypcie zamiast kordów podane były jedynie nicki graczy.

Gdy używam tradycyjnie koordów, dostaję również info o dostępnej nowszej wersji.
 
Ostatnia edycja:

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
co w przypadku gdy wyrzuca taki błąd?
QuotaExceededError: Failed to set the 'map/village.txtdata' property on 'Storage': Setting the value of 'map/village.txtdata' exceeded the quota.
Jeżeli wybierzesz targetowanie konkretnych graczy/plemion, to skąd skrypt ma znać współrzędne ich wiosek? Nie zna. Pobiera zatem listę wiosek z serwerów plemion, zapisuje je lokalnie w pamięci przeglądarki, aby przy następnym uruchomieniu nie musiał pobierać jej na nowo. Ten błąd co wspominasz oznacza, że zapisanie listy wiosek przekroczyłoby limit miejsca jaki użytkownik ustalił. Pobieranie za każdym razem listy wiosek (pliku około 2 MB) obciąża serwer (nie jesteś jedynym użytkownikiem skryptu, nie wysyłasz też jednego fejka) dodatkowo pobieranie jest dość wolne i daje nieprzyjemne odczucie z korzystania skryptu dla końcowego użytkownika. Dlatego opcja 'cache'owania jest wymuszana, jeżeli nie jest w stanie jej spełnić to skrypt nie działa.

Informacja 'Nowa wersja' oznacza tylko tyle, że wartość pola version ustawień skryptu nie jest tym samym co wartość pola version w kodzie skryptu. Wielkość liter ma znaczenie, dodatkowe spacje też.
 

pawcio77785

Miecznik
Jeżeli wybierzesz targetowanie konkretnych graczy/plemion, to skąd skrypt ma znać współrzędne ich wiosek? Nie zna. Pobiera zatem listę wiosek z serwerów plemion, zapisuje je lokalnie w pamięci przeglądarki, aby przy następnym uruchomieniu nie musiał pobierać jej na nowo. Ten błąd co wspominasz oznacza, że zapisanie listy wiosek przekroczyłoby limit miejsca jaki użytkownik ustalił. Pobieranie za każdym razem listy wiosek (pliku około 2 MB) obciąża serwer (nie jesteś jedynym użytkownikiem skryptu, nie wysyłasz też jednego fejka) dodatkowo pobieranie jest dość wolne i daje nieprzyjemne odczucie z korzystania skryptu dla końcowego użytkownika. Dlatego opcja 'cache'owania jest wymuszana, jeżeli nie jest w stanie jej spełnić to skrypt nie działa.

Informacja 'Nowa wersja' oznacza tylko tyle, że wartość pola version ustawień skryptu nie jest tym samym co wartość pola version w kodzie skryptu. Wielkość liter ma znaczenie, dodatkowe spacje też.
Mozesz jasniej? ;) Odnosnie nowej wersji :)
 

kubaO

Chłop
Odkryłem co zrobić aby nie wyskakiwało wciąż info o dostępnej nowej wersji - tu wyżej gdzie jest podana "nowa" wersja wciąż jest wpisane version - kelaris, podczas gdy powinno być amarantus. Wystarczy zmienić ten jeden wyraz u siebie i skrypt będzie działał.
 

OlciQ

SuperMod
Plemiona Team
SuperMod
Dodam od siebie, że skrypt działa według strefy czasowej ustawionej w komputerze, nie czasu na zegarku w grze, czyli ustawiamy dla swojej strefy czasowej, a nie polskiej - na przykład dla mnie, EST, -6h, musi byc intervals: '1:00-17:59' - bo w przeliczeniu na czas GMT+2 (Polska) to 7:00-23:59 :)
 

Hermitowski

Pomocna Dłoń
Pomocna Dłoń
Dodam od siebie, że skrypt działa według strefy czasowej ustawionej w komputerze, nie czasu na zegarku w grze, czyli ustawiamy dla swojej strefy czasowej, a nie polskiej - na przykład dla mnie, EST, -6h, musi byc intervals: '1:00-17:59' - bo w przeliczeniu na czas GMT+2 (Polska) to 7:00-23:59 :)
Powiedzmy, że na chwilę obecną błąd problem jest znany, ale nic z tym nie zrobię w najbliższym czasie.
 

Matheush

Miecznik
QuotaExceededError: Failed to set the 'map/village.txtdata' property on 'Storage': Setting the value of 'map/village.txtdata' exceeded the quota.

ktoś ma podobny błąd?