[Pasek] Hermitowskie Obstawy

TaxerStomil

Chłop
Wynik reakcji
21
Komuś też się nie odpala skrypt ? Wczytuje się po kliknięciu normalnie ale nic się nie dzieje, 0 błędów ale nic się nie pojawia
 

Rinne

Ciężki Kawalerzysta
Wynik reakcji
2.329
Jednej rzeczy mi strasznie brakuje... aby móc w tym skrypcie na stałe ustawić sobie w kodzie ustawienia, typu zabezpieczenie w wioskach lub liczenie ck=4 lub 6 w zależności od potrzeby graczy.
Ewentualnie możliwość wrzucenia sobie na pasek dwóch takich skryptów ze stałym ustawieniem - jeden wysyłający tylko paczkowaną piechotę (np. piki), a drugi tylko dla ck... nawet ck liczonej jako 1, aby skrypt paczkował liczbę ck, a nie jednostki zagrodowe ck.
Wiem, że można w trakcie gry to zmieniać, ale nie uwierzę, że 70 ludzi będzie mi to codziennie ustawiać sobie od nowa do potrzeb plemienia.

W każdym razie... technicznie da się to bez problemu zrobić, bo wystarczy odpalić link z tym skryptem i dostać się do pełnego kodu skryptu.
Tam można zmienić sobie domyślne ustawienia na stałe zapisane w kodzie, ale problem polega na tym, że później nie można już tego wrzucić na pasek, bo oryginalny kod (a nie skrócona wersja typu link ze skryptoteki) posiada około 50 tysięcy znaków... limit na pasku to chyba (jeśli dobrze pamiętam) 10 tysięcy znaków i tu zaczynają się schody.

Pytanie - czy jest opcja dodania jednej linijki w skróconym kodzie, który mamy w skryptotece - linijki z możliwością edycji, aby ustawiać wartości jednostek?
Coś jak w przypadku skryptu do fejków, w których możemy edytować szablony... W tym wypadku edytowalibyśmy sobie na stałe zabezpieczenie i wartość zagrodową jednostki.
No jestem ciekaw, próbowałem kiedyś się pobawić, ale nie jestem autorem, a i tak taka przeróbka musiałaby być zaakceptowana przez support.
 

hermitowski

Pikinier
Wynik reakcji
18
nie rozumiem trochę tego, co znaczy od potrzeby graczy, w zamyśle przelicznik miał być taki sam w obrębie plemienia,
jeżeli chodzi o rezerwy to one dotyczą twoich wiosek

w każdym razie

jak klikniesz zębatkę , to możesz ustawić przelicznik jednostki na ilość jednostek deffa

jeżeli chodzi zmianę "na stałe" to ustawienia powinny się zapisywać na danym urządzeniu, tak że kolejne uruchomienie skryptu skorzysta z ostatnio zapisanych
 

Rinne

Ciężki Kawalerzysta
Wynik reakcji
2.329
Szukam rozwiązania dla graczy starszych i mniej zaawansowanych technologicznie, aby uniknąć sytuacji, w której gracze wyślą na obstawę samą ciężką kawalerię, bo są i tacy delikwenci w tej grze i nic na to nie poradzimy.
Z jakiegoś powodu ustawienia skryptu nie zapisują im się i co jakiś czas muszą na nowo je wprowadzać - przyczyny nie znam, ale szukam rozwiązania.

Zastanawiam się czy można mimo wszystko wrzucić tutaj:
Kod:
javascript:$.ajax('https://media.innogamescdn.com/com_DS_PL/skrypty/HermitowskieObstawy.js?_='+~~(Date.now()/9e6),{cache:true, dataType: 'script'}); void (0);
jakimś sposobem linijkę z:
Kod:
default_settings: {
            ratio: {
                spear: 1,
                sword: 1,
                archer: 1,
                heavy: 6
            },
            safeguard: {
                spear: 0,
                sword: 0,
                archer: 0,
                spy: 0,
                heavy: 0
            },
Czy to jest fizycznie możliwe?

Niby pozornie błahe rozwiązanie, ale dla technologicznie-opornych zdałoby egzamin.
W ten sposób można rzucić ekipie dwa skrypty, aby nie musieli niczego zmieniać:

1) Dla piechoty
default_settings: {
ratio: {
spear: 1,
sword: 0,
archer: 1,
heavy: 0
},

2) Dla ck
default_settings: {
ratio: {
spear: 0,
sword: 0,
archer: 0,
heavy: 1
},


Obstawa: 3z
xxx|xxx 18000 pik 18000 łucznik 4000 ck - czyli wysyłka ck byłaby liczona tak, jak wysyłka zwiadowców

I przynajmniej będzie pewność, że delikwent wyśle to co trzeba i ile trzeba, w odpowiednich proporcjach ^^
Wiem... strasznie to brzmi, ale grunt, żeby działało i może takie "proste" rozwiązanie będzie, dla niektórych wystarczająco proste.

Trochę się bawię, ale nie jestem informatykiem i nie mam takich umiejętności, więc wolę bezpośrednio zapytać, czy takie rozwiązanie jest możliwe i czy da się to zrobić w prosty sposób, czy za dużo roboty i niewarte zachodu?
 

hermitowski

Pikinier
Wynik reakcji
18
Zacznę od końca, bo tak chyba najłatwiej będzie wytłumaczyć zamysł skryptu.

> Obstawa: 3z
> xxx|xxx 18000 pik 18000 łucznik 4000 ck

1. Czemu konkretnie ta ilość jednostek?

Znaczenie podczas walki mają statystyki obrony zapewniane przez jednostki oraz stosunek siły piechoty do siły kawalerii w ataku. Oczywiście, prawdziwego stosunku nigdy nie znamy, ale możemy go estymować, np:
- patrząc na stosunek wojsk na świecie (https://pl164.plemiona.pl/page/stats)
- ściągając z szablonów wojsk z forum plemiennych
- na podstawie historycznych raportów atakującego
Koniec końców mając już jakąś estymatę stosunku, można wyliczyć jakie wojsko defensywne (w sensie zapewnianych statystyk obronnych) będzie najlepsze do obrony i wówczas doskalować do oczekiwanych zagród offa (ile wioska ma offów ustać). Znając już mechanikę gry, wychodzi, że obstawy powinno się podawać nie w jednostkach, ale w siłach defensywnych przeciwko piechocie/kawalerii/łuczników. Wybieranie siły (statystyk) jednostek jest trudniejsze niż wybór jednostek (trzeba rozwiązać pewień układ równań liniowych), a komu się chce takie rzeczy robić podczas grania.

W rzeczywistości jesteśmy leniwi i zamiast podawać konkretnie, podajemy w przybliżeniu korzystając z dziwnej miary ludności/jednostek, jak podałeś w przykładzie 3z, czy na język skryptu 60k jednostek deffa. Tym samym zamieniliśmy problem wyboru jednostek do obrony (na podstawie siły obrony) do wyboru jednostek na podstawie tego, ile jednostka zapewnia 'deffa'.

2. Co robi skrypt

Skrypt rozwiązuje drugi problem, starając się wybrać tak jednostki, aby spełnić zadane warunki oraz zminimalizować sumaryczny czas jaki zajmuje wyrekrutowanie jednostek. Aczkolwiek minimalizacja czasu jest zrobiona w sposób bardzo naiwny - jest wielkie założenie, że ten 'czas' zależy tylko od jednostek deffa**. Ale zamiast brać pod uwagę jeszcze poziomy koszar, stajni i komplikować problem, uznałem, że takie przybliżenie będzie w moim przypadku ok.

** co nie jest prawdą, przy domyślnych wartościach przeliczników; 500 pików robi się szybciej niż 500 mieczy, a obie kombinacje zapewniają tyle samo jednostek deffa.

Dane wejściowe:
* listę twoich jednostek w wioskach
* docelowa liczba jednostek (ilość deffa)
* przeliczniki (konwersja jednostki na jakąś umowną ilość 'deffa'
* rezerwa jednostek

Wynik:
Wybranie wojsk, tak z każdej wioski wybrać około tyle samo jednostek deffa.

Skrypt nie bawi się w estymację stosunku siły piechoty/siły kawalerii (to jest jeden z elementów strategii gry - i zostawiam to dla gracza, przy tworzeniu swoich szablonów deffa), stąd też wybór proporcji jednostek zależy od proporcji wojsk gracza, od którego skrypt milcząco oczekuje, że gracz ma sensowną proporcję wojsk w wioskach i tym samym wybór obstawy w jednostkach deffa rozwiązuje w przybliżeniu problem, który opisałem na samym początku.

Ogólnie pisząc skrypty w plemiona, pisałem je z myślą o mnie, abym mógł uniknąć klikania powtarzalnych akcji.
Nie miały one na celu rozwiązywania/naprawiania tego czy sposób w jaki ktoś gra, jest sensowny.

3. Pytania

> ...w której gracze wyślą na obstawę samą ciężką kawalerię, bo są i tacy delikwenci w tej grze i nic na to nie poradzimy...

Ogólnie skrypt nie służy do rozwiązywania problemu czy taka kombinacja wsparcia ma sens.

> Z jakiegoś powodu ustawienia skryptu nie zapisują im się i co jakiś czas muszą na nowo je wprowadzać - przyczyny nie znam, ale szukam rozwiązania.

Zapis i trwałość ustawień korzysta pod spodem z localStorage - czyszczenie danych przeglądarki może powodować, że zapisane dane będą znikać.

> Czy to jest fizycznie możliwe? Ratio: 1

Powinno to zadziałać tak jak mówisz, aczkolwiek skrypt nie był stworzony w tym celu, co nie znaczy, że nie można go użyć tak jak mówisz i uzyskać to co chcesz, aczkolwiek trzeba się trochę naklikać.

> I przynajmniej będzie pewność, że delikwent wyśle to co trzeba i ile trzeba, w odpowiednich proporcjach ^^

Przy twoich ustawieniach piechoty nie jest to zagwarantowane, jeżeli gracz ma ogólnie 30k pików, 10k łuków, skrypt by wybrał (przy ustawieniu jednostek na 36k): 27k pików, 9k łuków.

Aby mieć to zagwarantowane oraz dla przykładu: 20k pików, 15k mieczy, 10k łuków, 5k ck

Potrzebowałbyś 4 instancje skryptu w pasku, z kolejnymi ustawieniami ratio oraz deff_count
ratio: { spear: 1, sword: 0, archer: 0, heavy: 0 }, deff_count: 20000
ratio: { spear: 0, sword: 1, archer: 0, heavy: 0 }, deff_count: 15000
ratio: { spear: 0, sword: 0, archer: 1, heavy: 0 }, deff_count: 10000
ratio: { spear: 0, sword: 0, archer: 0, heavy: 1 }, deff_count: 5000

oraz 4 razy wysłać wsparcia.

Obecnie nie ma możliwości podmiany wartości ratio wrzucając ustawienia w pasek jak to jest w przypadku skryptu na fejki,
więc potrzebna byłaby zmiana w kodzie.

Aczkolwiek zamiast robić workaround wokół problemu, lepsze byłoby rozszerzenie skryptu, aby wspierał dwa scenariusze wyboru wojsk:
- na podstawie jednostek deffa (oraz ustawieniu 'ratio')
- na podstawie jawnie ustalonych jednostek (wówczas opcja ratio nie ma znaczenia)

Tutaj pytanie czy faktycznie ta druga opcja jest potrzebna; niby fajna, ale w moim odczuciu pierwsza opcja przy sensownych proporcjach w wybranych wioskach jest w zupełności wystarczająca. Przy drugiej opcji wyboru, trzeba też więcej wypełnić.

Na pierwsze pytanie bardziej do community, czy chcecie takie ulepszenie (np. możecie głosować za pomocą reakcji)

Kolejne pytanie jest do @jarq czy pozwoliłby ewentualnie wprowadzić zmiany opisane wyżej, bo przy ostatniej aktualizacji, był już trochę zgrzyt; "fajne rozszerzenie, ale nie rób więcej"
 

Rinne

Ciężki Kawalerzysta
Wynik reakcji
2.329
1. Ilość jednostek była totalnie przykładowa, aby wyjaśnić skąd w ogóle pomysł na modyfikację skryptu.
A pomysł powstał w sytuacji, gdy ktoś bezmyślnie wysłał na obstawę 3 zagrody składające się z... ponad połowy zagrody piechoty i dwóch zagród ck, bo piechotę rozesłał już wcześniej i gracz dał, co miał, a skrypt "brał, co miał".
Skrypt działa dobrze i robi swoje, ale skrypt niestety nie zastąpi myślenia ludzi i nie powie im, że to co robią jest nieefektywne ^^
Krótko mówiąc... przyszedłem tutaj, ponieważ szukam dodatkowych usprawnień.

2. Idealnym rozwiązaniem, które załatwiłoby sprawę jednym skryptem byłaby modyfikacja pozwalająca na rozwinięcie skryptu - dodanie możliwości wyboru automatycznego - czyli jak teraz, gdy podając liczbę jednostek skrypt sam uzupełnia/wylicza sobie konkretne jednostki... oraz trybu ręcznego, co pozwalałoby na podanie konkretnych liczb jednostek (i obok pokazywałoby, ile wychodzi matematycznie jednostek zagrodowych).

Najprościej takie rozszerzenie dodające tzw. "tryb ręczny" można pokazać na przykładzie obrazka:



Przy czym od razu mówię - nie przychodziłem z początku z tą propozycją, bo szukałem możliwie najprostszego rozwiązania.
No, a niestety zdaję sobie sprawę, że taka zmiana wiąże się już z dopisaniem kolejnych kilkudziesięciu linijek kodu i do tego absolutnie nie będę namawiać.
Dałoby się, ale.... na pewno czasochłonne ;)

*Screen oczywiście bardzo poglądowy, bo przerobiony na potrzeby tematu

W każdym razie założyłem, że prościej byłoby (z technicznego punktu widzenia) zmienić jakąś linijkę lub - jak sam wskazałeś, dodać kolejne instancje skryptu do oddzielnych wysyłek niż dopisać kolejny, nowy tryb w istniejącym skrypcie... ale to luźna propozycja. Może rozważysz, jak znajdziesz czas ;)
 

PabloCanaletto

Topornik
Wynik reakcji
204
Może nie róbmy z ludzi botów do klikania w skrypty? Zarządzanie wojskami to najważniejszy aspekt tej gry i zbytnie w tym wyręczanie tylko dalej obniży średni poziom gracza.
Ogólnie pisząc skrypty w plemiona, pisałem je z myślą o mnie, abym mógł uniknąć klikania powtarzalnych akcji.
Nie miały one na celu rozwiązywania/naprawiania tego czy sposób w jaki ktoś gra, jest sensowny.
Dokładnie tak. Skrypty mają oszczędzać czas, a nie zastępować rozum.

A skrypt sam w sobie i tak już teraz jest kozacki. Jak się rozumie jego działanie i potrafi z niego korzystać to i nierówne proporcje jednostek nie są problemem. Odpowiednie grupy i ustawienia rezerw i wszystko można obejść. Ja nim nawet mobila rozsyłałem.
 

Rinne

Ciężki Kawalerzysta
Wynik reakcji
2.329
Nie chcę Cię załamywać @PabloCanaletto, bo generalnie się z Tobą zgadzam, ale zdajesz sobie sprawę jak wielu ludzi kompletnie nie ogarnia nawet podstawowych grup i oznaczeń, nie wspominając już o zaawansowanych dynamicznych dot. wielu warunków i kombinacji ^^
To przykre, ale... naprawdę nawet rzeczy dla nas pozornie proste... ujmę to tak, nie bez powodu stworzono tak wiele poradników, a i tak ludzie nadal nie rozumieją ;)

Patrzysz na to z pozycji osoby, która również zajmuje się skryptami od strony technicznej - i w pełni rozumiem oraz szanuję podejście.
Ja patrzę na to z pozycji osoby, która zajmuje się organizacją plemienia i chcę, aby ekipa działała sprawnie jak szwajcarski zegarek, a jeśli wymaga to pewnych uproszczeń, to zwyczajnie ich szukam, bo im prostsza metoda - tym łatwiej trafia do szerszego grona graczy (zwłaszcza nowych lub "starszych").

To tak jak ze skryptem Makaka i stivensa do sumowania wsparcia - jest bardzo dobry i ładuje dane szybciej niż sumowanie wsparcia Howcia w wersji na pasek.
No tylko co z tego... Jeśli większość ludzi używa skryptu na pasek, bo nawet nie ogarniają, co to jest tamper ^^

Nie chcę się absolutnie spierać, ale:
Może nie róbmy z ludzi botów do klikania w skrypty?
Ostatnia aktualizacja, która sprawia, że wsparcia same się wysyłają jednym kliknięciem - jest przede wszystkim genialna i za to szacun - ale na pewno bardziej podpada pod automatyzację gry, niż zwykłe danie możliwości graczom, aby sami decydowali jaką jednostkę i w jakich ilościach wysyłają.

Uważam, że to była bardzo dobra aktualizacja, ale na pewno bardziej "inwazyjna" niż to, co bardzo luźno zaproponowałem ;)
 

Rok Szczura

Łucznik
Wynik reakcji
1.794
Rinne wystarczy coś innego zmienić zeby wszystkie problemy przestały być istotne bo wiem do czego to potrzebne xxxd
 
Wynik reakcji
1.837
11 członów i brak selekcji że takie problemy bo nie rozumiem skąd propozycja aż takiej automatyzacji dla ludzi którzy nie potrafią 'złapać' aż tak prostych funkcji gdzie aktualne wbudowane funkcje+skrypt już i tak są mocno inwazyjne i często nawet nie średni a gracze którzy pierwszy raz zagrają już wiedzą jak ich używać. Jeżeli ktoś jest mocno oporny na wiedzę @Rinne to wiadomo co się z takimi robi.
 

Rinne

Ciężki Kawalerzysta
Wynik reakcji
2.329
Heh, nie wierzę :D "Po co ma być lepiej, jak jest jak jest" ^^
No, przepraszam, ale tak widzę to podejście. Nie chcecie ulepszeń, to nie - na siłę nikogo zmuszać do udogodnień nie można, choć przeraża z lekka ta "neofobia" skryptowa aż mam ochotę lekko pojechać po bandzie.

W plemiona grają nie tylko 20 i 30-latkowie, ale również ludzie po 50 i 60-tce, którzy dyspozycyjnością sprawdzają się bardzo dobrze w tej grze, a sama nieznajomość skryptów nie jest powodem do rozebrania 10 z 60 ludzi ;) Serio.
Martwi mnie tylko ta oporność na zmiany, bo właśnie z takiego powodu na tribalwars.net w tym roku zaproponowano więcej zmian, niż na naszych polskich plemionach przez kilkanaście lat istnienia... Jakby ktoś był ciekaw - tam od początku przekazano 239 propozycji, u nas powalające 8. I to tylko i wyłącznie kwestia podejścia ludzi, nic więcej.

Znajdę inne rozwiązanie, jeśli społeczność nie chce sobie ułatwiać zadania :p
Moja reakcja może być uszczypliwa, ale naprawdę i tak niewiele mamy w porównaniu do zagranicznych plemion i to jest zwyczajnie słabe, że tak lubimy sobie robić pod górkę, zamiast po prostu stwierdzić - spoko, robimy - albo... zwisa mi to, ale można zrobić.
A nazwanie "automatyzacją gry" tego, że gracz sam musi wpisać, że chce wysłać przykładowe 10000 pik i 5000 łuków (zamiast losowo) jest... no przepraszam, ale naprawdę zwyczajnie śmieszne. Sorry ;)

Żeby było jasne - nie przeszkadza mi to, że pewnie nie otrzymamy takiego skryptu. Przeszkadza mi to durne podejście ludzi i tyle.
Nie ma tematu. Spokojnej nocy
 
Wynik reakcji
1.837
@Rinne z takiego też powodu Polskie plemiona mają tyle graczy co 'chyba' wszystkie zagraniczne razem wzięte, ponieważ ta gra stawia jeszcze jakiekolwiek wyzwania mimo tylu udogodnień 'wbudowanych' i ilości skryptów które nie są aż tak bardzo inwazyjne ale mogę się mylić i może po prostu to tylko mój punkt widzenia który jest niewłaściwy ale na pewno to nie jest to 'durne podejście' Gra polega głównie na manewrowaniu, zarządzaniu i kontroli wojska na mapie a aktualne skrypty i tak mocno już wyręczają... jak to @PabloCanaletto napisał ' Skrypty mają oszczędzać czas, a nie zastępować rozum. '
 

PabloCanaletto

Topornik
Wynik reakcji
204
Nie mam nic przeciwko udogodnieniom, nawet jeśli zakrawają po części o automatyzację, dopóki działają pod dyktando gracza. W tym konkretnym przypadku sam bym na pewno korzystał, bo upraszcza to sprawę w wielu przypadkach.

Problem mam z motywacją, jaka stoi za prośbą wprowadzenia tych zmian. "Ktoś czegoś nie ogarnia? Wyręczymy go w tym!". Plemiona to RTS, a nie incremental game. Tu trzeba myśleć, a nie klikać w przyciski i patrzeć jak cyferki rosną. Jak ktoś nie ogarnia, to się mu tłumaczy. Nie poskutkowało, to do widzenia. Jeżeli zrozumienie poradnika na forum plemienia, znalezienie tematu na FO z instrukcją działania skryptu oraz wyklikiwanie ustawień w graficznym interfejsie przekracza czyjeś możliwości intelektualne, to nie ma co trzymać takiego gracza.

Celem skryptów jest przeniesienie wpływu na zwycięstwo z czasu na skilla, nie na odwrót. Ostatnie zmiany w w grze (dodatkowe przeglądy kont członków) to dla mnie jakieś nieporozumienie. A ostatni skrypt, który pobiera parametry z forum plemiennego do uruchomienia dowolnego skryptu to już całkiem po bandzie pojechane. Niedługo będzie wystarczyło, aby rada weszła na konto warzywa na zapleczu, sparametryzowała wszystko co trzeba i zostawiła instrukcję: 2x dziennie klikaj tu i tu. Plus co jakiś czas PW aby kliknąć coś dodatkowego.