Rebalance Villagers
Sprawia, że oferty handlowe wieśniaków używają uczciwych cen, mając na celu wyeliminowanie możliwości nadużyć przy zachowaniu możliwości handlu.
- Dostępne pliki
- 13
- Obsługiwane wersje
- 5
- Najnowszy plik
- 31.03.2015
» Jeśli podoba Ci się ta wtyczka, zdecydowanie powinieneś sprawdzić nasze inne wtyczki również «
Rebalance Villagers
Ten dodatek umożliwia skonfigurowanie szczegółowego zestawu mechanik rozgrywki dotyczących mieszkańców. Jego najbardziej godną uwagi cechą jest pełna kontrola nad ofertami, które mogą być generowane – domyślnie zaczyna się od gruntownie przebudowanego zestawu cen, aby handel był znacznie mniej podatny na nadużycia, a jednocześnie opłacalny (więcej o tym później).
Domyślne ustawienia tego dodatku mogą wystarczyć do naprawy aktualnie podatnego na nadużycia systemu handlu mieszkańcami – jednak jeśli chcesz, aby Twój własny serwer miał kilka specjalnych akcentów, aby handel mógł być doskonale zbalansowany, ten dodatek pozwala dostosować następujące:
In config.yml, you'll find general settings:
- Kontrola nad usuwaniem ofert: Możesz wybrać, ile razy oferta może być wymieniana, zanim zostanie usunięta, jak długo trwa usuwanie ofert, lub po prostu całkowicie wyłączyć usuwanie ofert.
- Kontrola nad generowaniem ofert: Możesz wybrać, ile ofert ma zaczynać mieszkaniec, ile ofert jest generowanych naraz, jak długo trwa generowanie ofert, czy mieszkańcy generują oferty po każdej transakcji, oraz jaka jest szansa na generowanie ofert.
- Ogólne ustawienia dotyczące handlu: Możesz kontrolować, jak długo trwa efekt cząstek dekoracyjnych, gdy mieszkańcy dodają/usuwają oferty, wybrać, czy gracze mogą handlować z dziećmi mieszkańców, i wybrać, czy gracze mogą kłócić się o mieszkańców, pozwalając im wyrzucać się z okna handlowego.
- Ogólne ustawienia dotyczące samych mieszkańców: Możesz określić ich maksymalne zdrowie, uczynić ich niepodatnymi na wszelkie szkody, i wybrać, które profesje mieszkańców mogą naturalnie występować.
- Są także pewne ustawienia techniczne związane z używaniem tego pluginu z Shopkeepers, ale gdy pełna kompatybilność między Shopkeepers a tym pluginem zostanie ustanowiona, zostaną one usunięte (te ustawienia nie robią nic magicznego; na pewno ich nie przegapisz).
In offers.yml, you'll find settings to control the offers villagers can make:
- Możesz zdefiniować swój podstawowy przedmiot waluty, który będzie używany przez wszystkie oferty nie-niestandardowe, które dodasz — może być również używany w Twoich ofertach niestandardowych, dla wygody.
- Możesz zdefiniować wszystkie oferty, które mogą być generowane przez każdą profesję mieszkańców, oraz oferty generowane domyślnie.
- Możesz zdefiniować oferty dla własnych niestandardowych profesji mieszkańców (które mogą się pojawić za pomocą edytorów świata, lub przez edycję config.yml, aby umożliwić ich naturalne pojawianie). Liczba niestandardowych profesji jest praktycznie nieograniczona (chyba że chcesz więcej niż 4 miliardy), ale wszystkie wyglądają identycznie jak nieużywany zielony wieśniak.
- Możesz usuwać istniejące oferty lub sprawić, że nigdy nie będą generowane.
- Możesz definiować oferty jako 'kupno', lub 'sprzedaż', aby użyć istniejącej tabeli cen, albo 'inne', aby tworzyć własne oferty.
- Oferty niestandardowe dają pełną kontrolę nad dwoma wejściowymi slotami i slotem wyjściowym, umożliwiając oferty, które nie używają przedmiotu waluty, oferty, które zapewniają losowe lub konkretne zaklęcia, oferty z dowolną wartością uszkodzenia na dowolnym przedmiocie lub bloku, i prawie każdy typ oferty, jaki mógłby stworzyć edytor świata/NBT (jedyną rzecz, której nie można zrobić, to oferty, które zapewniają książki zawierające konkretny tekst). Zauważ, że ilości przedmiotów i poziomy zaklęć mogą być również zrandomizowane!
- Możesz kontrolować wartości w tabelach cen, używanych przez oferty nie-niestandardowe.
Wszystkie te funkcje są dokładnie wyjaśnione w plikach konfiguracyjnych. W rzeczy samej offers.yml ma swego rodzaju „tutorial”, jak go edytować.
By default, this plugin...
Domyślnie ta wtyczka wyłącza wbudowany system usuwania ofert i zmienia oferty, które mieszkańcy mogą generować.
Żadnych ofert nie dodaje się ani nie usuwa, a szanse generowania ofert pozostają takie same jak w Vanilla Minecraft. Jednak ceny zostały gruntownie przebudowane, oparte na mojej pracy w tym wątku. W skrócie, stworzyłem wykres, który starannie balansuje wartości przedmiotów na podstawie wielu kryteriów, mający na celu wyprodukowanie znacznie bardziej sensownego i mniej podatnego na nadużycia zestawu cen niż system vanilla.
Powodem, dla którego ta wtyczka domyślnie wyłącza system usuwania ofert, jest to, że oprócz licznych skarg graczy, ten wątek wyjaśnia, dlaczego system czyni handel nieużywalnym bez eksploatacji. Tak jak moje ustawienia domyślne mają na celu ograniczenie możliwości nadużyć, tak samo mają ograniczać potrzebę nadużyć.
Jeśli chcesz rozpocząć od ustawień vanilla Minecraft, po prostu skopiuj zawartość pliku "offers-vanilla.yml" do offers.yml i zerknij na górę config.yml, aby zobaczyć vanilla domyślne ustawienia dotyczące usuwania ofert.
Other Features/Conveniences
Przede wszystkim, obok szczegółowych wyjaśnień w config.yml i offers.yml, miło wiedzieć, że mój dodatek ma mnóstwo zabezpieczeń. Jeśli skonfigurujesz go nieprawidłowo, wtyczka nie spowoduje awarii (chyba że pliki konfiguracyjne staną się nieczytelne!). Zamiast tego wybierze pewną wartość, która pozwoli mu bezpiecznie działać (na przykład jeśli podałeś liczbę 0, gdy najniższa dopuszczalna wartość to 1, wtyczka użyje 1 zamiast tego). Teraz możesz pomyśleć, że to coś złego, ale wtyczka poinformuje Cię, kiedy tak się stanie:

Ostrzeżenia pojawią się tylko wtedy, gdy zrobiłeś coś nieprawidłowo w konfiguracji — w przeciwnym razie normalnie konsola nie będzie zasypywana ;)
Również, jeśli pominiesz wartość w konfiguracji, wtyczka zazwyczaj przywraca ustawienie domyślne — ale nie rób z tego nawyku :p
Vanilla generation system doesn't allow you to earn more than one emerald from selling an item, unless you manually specify a custom offer - despite being able to specify offers which give more than one item in exchange for one emerald. My plugin fixes this, making the buy and sell values tables formatted the same way. Thus, it's easy to make offers like this one:
System generowania w Vanilla nie pozwala zarobić więcej niż jeden szmaragd za sprzedanie przedmiotu, chyba że ręcznie określisz ofertę niestandardową — pomimo tego, że możesz określić oferty, które dają więcej niż jeden przedmiot w zamian za jeden szmaragd. Moja wtyczka naprawia to, powodując, że tablice wartości kupna i sprzedaży są sformatowane w ten sam sposób. Dzięki temu łatwo jest stworzyć oferty takie jak ta:

Prawdopodobnie najwygodniejsze cechy tej wtyczki to Inteligentne Zgrupowanie (Smart Stacking) i Inteligentna Kompresja (Smart Compression). Załóżmy, że chcesz, by mieszkaniec sprzedawał hełm diamentowy za 98 szmaragdów. Gracz nie może umieścić więcej niż 64 szmaragdy w jednej pozycji, a Inteligentne Zgrupowanie to uwzględnia. Inteligentne Zgrupowanie zrobi to za Ciebie automatycznie:

Inteligentne Zgrupowanie zasadniczo ustala, że 128 to maksymalna ilość przedmiotu, jaką mieszkaniec może akceptować (uwaga: Inteligentne Zgrupowanie nie jest obecnie na tyle inteligentne, by rozpoznawać, że niektóre przedmioty nie stackują się lub stackują tylko do 16. W takim wypadku będziesz musiał stworzyć niestandardową ofertę, ale to nie jest trudne).
Czasami potrzebujesz, aby mieszkaniec przyjął więcej niż 128 przedmiotów, i wtedy wchodzą w grę Smart Compression. Oto, jak obsługiwane jest zlecenie proszące o 129 szmaragdów:

Gdy przekształcisz te bloki szmaragdów w szmaragdy i dodasz resztę do nich, zobaczysz, że łączna liczba wynosi rzeczywiście 129. Smart Compression skutecznie podnosi maksymalną wartość do 640: stos skompresowanego przedmiotu i stos nie-skompresowanego przedmiotu. Ponadto Smart Compression działa na szmaragdach, diamentach, sztabkach złota, złotych nuggetach i sztabkach żelaza, z których wszystkie łatwo można przekształcić w skompresowaną formę w relacji 9:1 do jednego skompresowanego przedmiotu i odwrotnie — więc możesz ustawić swoją walutę na dowolny z tych przedmiotów i mieć pewność, że Smart Compression nadal będzie mieć zastosowanie.
Using My Chart to Balance Trading Yourself and Exporting the Results to Your Configuration
Użycie mojego wykresu do zbalansowania własnego handlu i eksportowania wyników do konfiguracji
I suppose this is also a convenience/feature, but it deserves its own section. Remember that chart I mentioned earlier? It can be downloaded here, and is fully interactive.
Przypuszczam, że to również wygodna funkcja, ale zasługuje na własny rozdział. Pamiętasz ten wykres, o którym wspominałem wcześniej? Można go tutaj pobrać i jest w pełni interaktywny.
The only cell in the chart with a value not calculated from other cells is the gold-colored cell next to Gold Ore. It's a sort of "gold standard", if you will, which determines how much emeralds are worth. Double it, and emeralds are halved in value. Halve it, and emeralds are doubled in value, and so on. The rest of the chart will update with your changes.
Jedyna komórka na wykresie, której wartość nie jest obliczana z innych komórek, to złocisto-kolorowa komórka obok Złotej Rudy. To swego rodzaju „złoty standard”, który określa wartość szmaragdów. Podwój ją, a szmarardy będą warte połowę; połóż ją, a szmaragdy będą warte dwukrotnie — i tak dalej. Reszta wykresu zaktualizuje się poTwoich zmianach.
If you don't want to use emerald as your currency item, you can choose an item you do want to use. If it's in the chart, find its value in the "Adjusted for Usefulness" column. This column is bold because it represents the actual worth of that item in emeralds. Now, take that number and invert it, and place that inversion in the golden cell (so, to set the currency to diamond, you would put 1/17.7999 into the gold cell). If you did this correctly, the "Adjusted for Usefulness" of that item should read 1, as it is indeed worth one of itself. All other cells in the chart have been recalculated in value, and are now priced in that item instead of emeralds.
Jeśli nie chcesz używać szmaragdów jako swojej waluty, możesz wybrać przedmiot, którego chcesz użyć. Jeśli jest on na wykresie, znajdź jego wartość w kolumnie „Dostosowane do użyteczności” (Adjusted for Usefulness). Ta kolumna jest pogrubiona, ponieważ reprezentuje rzeczywistą wartość tego przedmiotu w szmaragdach. Teraz weź tę liczbę i odwróć ją, a tę inwersję umieść w złotej komórce (aby ustawić walutę na diament, w złotą komórkę należy wpisać 1/17.7999). Jeśli zrobisz to poprawnie, wartość „Dostosowane do użyteczności” danego przedmiotu powinna wynosić 1, gdyż jest to rzeczywiście wart jednego z siebie. Wszystkie inne komórki na wykresie zostały przeliczone i są teraz wyceniane w tym przedmiocie zamiast w szmaragdach.
You can make any other changes to the chart by editing the formulas of its cells, or editing the special variables to the right of the chart (the "Modifiers" column, U).
Możesz wprowadzać inne zmiany w wykresie, edytując formuły jego komórek lub edytując specjalne zmienne po prawej stronie wykresu (kolumna "Modyfikatory", U).
Finally, look for "Rebalance Villagers Plugin", cell AC1. Around there, there are four cells (in the "Copy this code into offers.yml" column) which you must copy the contents of into offers.yml. The proper destinations of each are specified in AC, while the actual values to copy are in AD. Simply copy these in, erasing the unwanted original values in the process, and the plugin will new use these values.
Na koniec, poszukaj „Rebalance Villagers Plugin”, komórka AC1. W pobliżu znajdują się cztery komórki (w kolumnie „Skopiuj ten kod do offers.yml”), które musisz skopiować do offers.yml. Odpowiednie miejsca docelowe każdej z nich są określone w AC, natomiast rzeczywiste wartości do skopiowania znajdują się w AD. Po prostu skopiuj je, wymazując niechciane oryginalne wartości w trakcie, a wtyczka będzie używać tych wartości.
Note: If the cell AF6 says there are errors, please look in the column V ("Valid Offer Checker") for what the errors are. These errors are when invalid offers are created, for example offers which are impossible to complete (requesting more items than the player can put in the input slots), offers which would produce impossible item stacks (e.g. stacked tools), or nonsensical situations such as a villager providing items at a cost of zero emeralds. So remember to make sure there are no errors reported in AF6 before you copy the config outputs!
Uwaga: jeśli komórka AF6 pokazuje błędy, zajrzyj do kolumny V („Valid Offer Checker”), aby dowiedzieć się, jakie to błędy. Te błędy pojawiają się, gdy tworzono nieprawidłoweoferty, na przykład oferty, które nie mogą być zrealizowane (żądanie większej liczby przedmiotów niż gracz może wkład w pola wejściowe), oferty, które wywołałyby niemożliwe do wykupienia stosy przedmiotów (np. narzędzia w stosach), lub nonsensowne sytuacje, takie jak mieszkaniec dostarczający przedmioty za cenę zerowego szmaragdu. Dlatego pamiętaj, aby upewnić się, że AF6 nie wyświetla błędów, zanim skopiujesz wyniki konfiguracji!
Oh, and if you changed the currency item in the chart, be sure you change 'currency-item' in offers.yml too!
Oj, a jeśli zmieniłeś przedmiot waluty w wykresie, upewnij się również, że zmienisz 'currency-item' w offers.yml!
Dev Builds
Wersje deweloperskie
You can always find the latest snapshot in the Jenkins.¹
Zawsze możesz znaleźć najnowszy snapshot na Jenkinsie.¹
Github Source Code
Kod źródłowy GitHub
The source code of this plugin can be found here. It's my first plugin, so feel free to let me know if I've done anything horribly nooby :p
Kod źródłowy tej wtyczki można znaleźć tutaj. To mój pierwszy dodatek, więc śmiało daj mi znać, jeśli zrobiłem coś okropnie noobowego :p
If you would like to contribute to the plugin, you may use Pull Requests. Add yourself with an '@author' in the javadoc tags of any part you create or substantially modify - you can identify yourself with whatever name you like. Of course, I will publicly acknowledge that you have contributed to this project.
Jeśli chcesz przyczynić się do wtyczki, możesz użyć Pull Requests. Dodaj siebie z tagiem „@author” w tagach javadoc każdej części, którą tworzysz lub istotnie modyfikujesz – możesz się identyfikować dowolnie wybranym imieniem. Oczywiście, publicznie uznam, że przyczyniłeś się do tego projektu.
Special Thanks
Specjalne podziękowania
- WolfieMario, the initial creator of this plugin: thanks for the whole idea and opportunity with this great plugin and thanks for all your work you've done here!
- nisovin, the creator of the Shopkeepers plugin: thanks to him/her making Shopkeepers open-source, WolfieMario could make the plugin compatible with his and rest assured that he's not doing anything horribly wrong in the code.
- Icyene, for pointing WolfieMario in the right direction when he started - without his good deal of help, he would have had no clue how to start coding this plugin.
¹ Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
· · ·
» Powered by Cube Nation «
Opis projektu pochodzi z CurseForge i został udostępniony po polsku. Szczegóły konfiguracji, zależności oraz aktualne komunikaty autora sprawdź na w źródłowym katalogu CurseForge.
RebalanceVillagers-1.8.3.jar 31.03.2015 80 KB
RebalanceVillagers-1.7.4.jar 16.12.2013 71 KB
RebalanceVillagers-1.6.4.jar 08.11.2013 68 KB
RebalanceVillagers.jar 05.05.2013 67 KB
RebalanceVillagers-1.5.1.jar 12.04.2013 67 KB
RebalanceVillagers-1.5.jar 20.03.2013 67 KB
RebalanceVillagers-1.4.1.jar 25.01.2013 67 KB
RebalanceVillagers-1.4.jar 02.01.2013 56 KB
RebalanceVillagers-1.3.jar 21.12.2012 55 KB
RebalanceVillagers.jar 05.12.2012 54 KB
RebalanceVillagers.jar 21.08.2012 49 KB
RebalanceVillagers.jar 21.08.2012 49 KB
VillagerTradingRebalance.jar 06.08.2012 12 KB
Jak bezpiecznie sprawdzić ten plugin
Wybierz zgodny plik
Oznaczenia wersji pochodzą z metadanych autora. Dobierz również właściwe oprogramowanie serwera i Javę.
Zachowaj kopię
Przed pierwszym startem skopiuj świat, konfigurację oraz dane pozostałych pluginów.
Przeczytaj log
Po uruchomieniu sprawdź brakujące zależności i pierwszy błąd związany z nazwą pluginu.
