Skocz do zawartości

Libter

Właściciel
  • Zawartość

    1899
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    18

Ostatnia wygrana Libter w dniu 14 września

Użytkownicy przyznają Libter punkty reputacji!

O Libter

  • Tytuł
    Najlepszy właściciel
  • Urodziny 01.09.2014 (4.136760184 lat)

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Polska
  • Hobby
    Zmiany
  • Nick w MC
    Libter

Metody kontaktu

Ostatnie wizyty

11739 wyświetleń profilu
  1. Libter

    Jak zamazać kod tak aby w klasach nic nie było!

    To, że dany dekompilator nie potrafi wyświetlić nie znaczy że nic nie ma. Pewnie ponadawać jakieś dzikie nazwy klasom i metodom spoza ASCII, żeby program X do dekompilacji się wywalił. Ale po co? Kod bajtowy i tak musi zostać, żeby program działał i zawsze znajdzie się aplikacja która go odczyta.
  2. Libter

    Craftlin Alpha

    Wypraszam sobie, jeszcze nie umarł - nowe funkcjonalności dochodzą od czasu do czasu, a po naprawieniu pewnego buga w Kotlinie który blokuje dosyć ważne ulepszenie dla Craftlina będzie jeszcze fajniej. Ale kto powiedział, że Craftlin jest ograniczony? Bukkit API też teoretycznie można używać, a ma po prostu znacznie fajniejszą składnię nadającą się do prostych zastosowań.
  3. Libter

    Craftlin Alpha

    Jakoś tam żyje. Alpha#4 wyszła ostatnio.
  4. Libter

    Rejestr zarządzeń

    Zarządzenie @Libter 01/14.10.2018: @nicku1 awansuje na senior administratora.
  5. Libter

    Lista zmian

    18.09.2018: Aktualizacja silnika forum do wersji 4.3.6.
  6. Libter

    Craftlin Alpha

    Wygodne: prosta serializacja, prosty odczyt/zapis bez importów. Bezpieczne oczywiście mniej, ale dzięki abstrakcji zmiany w MC nie muszą oznaczać zmian w API (tak wiem, skończymy jak Bukkit Material z nazwami bez ładu i składu, ale do pełnego wydania jeszcze sporo może się zmienić :V). Jak będzie potrzeba to Craftlina też można optymalizować. Projekty open source też często leżą martwe albo wolno się rozwijają także bez różnicy IMO. I proszę nie obrażać kodu , może spiesząc się do alphy nie wszystko jest najlepiej rozwiązane, ale staraliśmy się żeby było. A te libki mają API czy składają się z dwóch klas do ładowania interpretera? Bo brzydko zaprojektowane Bukkit API kompletnie nie nadaje się do skryptów (do pluginów też zresztą słabo i jak nie zacznie się szybko tworzyć własnej abstrakcji to dopiero widać dupny kod, ale to inny temat). Co do wieloplatformowości zgodzę się - na razie to tylko slogan, ale zakładam że warstwa abstrakcji pozwoli na podłączenie się pod inne API (a przynajmniej nie widzę na razie niczego co by mogło w tym przeszkodzić). A mówiłem żeby robić Diorite jako silnik minimum, a nie kopiować vanillę... Owszem, możliwe że bazowanie na Bukkicie jest błędem, ale mimo wszystko nadal jest to najpopularniejsze API z największą liczbą developerów i nawet glowstone bazuje na nim zamiast robić własne. Także do gąbczastych czy innych silników mnie na razie nie przekonasz, bo po prostu nie ma popytu na nie.
  7. Libter

    Przykładowe skrypty w Craftlinie

    Pozwól smartcastowi działać: val sender = this.sender //workaround, makes sender completely immutable so smartcast could work if (sender is Player) { val loc = sender.location }
  8. Libter

    Craftlin Alpha

    Wreszcie się zaczyna jakaś dyskusja Owszem, wymaga znajomości Kotlina ale próg wejścia jest znacznie niższy niż przy pisaniu pluginów ze względu na maksymalną prostotę API. Na chwilę obecną osoby które nie pisały nigdy w Kotlinie piszą craftlinowe skrypty na drop Zgadza się. Docelowo kompilator Kotlina ma pobierać się jednorazowo i aktualizować niezależnie od pluginu. Własny plugin nie jest wieloplatformowy i musi używać syfnego Bukkitowego API, a tu docelowo będzie rozbudowany framework dla skryptów w którym znacznie łatwiej będzie pisać mniejsze projekty. Dodatkowo skrypty można przeładowywać co znacznie przyspiesza prace, pozostaje tylko stworzenie wtyczki Craftlina do IntelliJ. No witam Generalnie jeśli nie podoba mi się coś z Bukkita to nie dodaję tego w takiej formie do API, liczy się prostota i odwzorowanie Minecrafta. Poza tym silniki Bukkitowe pozostają mimo wszystko najpopularniejsze, a pisanie na Sponge którego API uważam za słabo udokumentowane i nadmiernie skomplikowane (wszędobylskie Optionale chociażby) zdusiłoby projekt w zarodku. @Kamilkime odpowiedziałem wyżej. Zgodzę się do abstrakcji, jednak Bukkit sam w sobie jest abstrakcją i nie powoduje to rażącego spadku wydajności, ale na największe serwery pewnie Craftlin już się nie nada. Pobieranie gracza po nicku pójdzie do poprawki, a odnośnie UUIDów - to dopiero alpha, wiadomo że będą Hmm, w sumie zobaczę jak to jest rozwiązane w Sponge. Oparcie implementacji API na extension functions też w sumie może być dobrym pomysłem. Typy i bloków i przedmiotów są na stringach, gdybyś czytał dokumentację zamiast dekompilować kod to wiedziałbyś że enumy są tylko na użytek wewnętrzny żeby było wiadomo jakie bloki muszą uwzględniać implementacje Wiadomo że GitHub lepszy, ale taka już moja natura że musi być closed source No i przede wszystkim dzięki za zainteresowanie się projektem!
  9. Libter

    Craftlin Alpha

    Obecnie trwają testy wersji Alpha#2 z naprawionymi błędami oraz wsparciem dla tworzenia lokalizacji, spawnu mobów i dropu przedmiotów. Chętnych zapraszam na Discorda: https://discord.gg/GMsBJ6b
  10. Libter

    Craftlin Alpha

    Projekt nie jest ograniczony do terytorium Polski także docelowo powstanie craftlin.net/forum. Natomiast obecny dział prawdopodobnie zostanie w charakterze wsparcia w języku polskim.
  11. Libter

    Craftlin Alpha

    Po ponad miesiącu niezwykle wytężonej () pracy naszego zespołu programistycznego w składzie @Libter, @Reedzev_, @Ixidi mam przyjemność zaprezentować wam Projekt Craftlin. A co to w ogóle jest? Minecraft Kotlin czyli język skryptowy do Minecrafta oparty na znanym i lubianym Kotlinie. Już sam ten fakt czyni go z założenia lepszym językiem niż Skript (oczywiście na razie ma mniej funkcjonalności, ale to kwestia czasu), a dodatkowo posiada proste, zwięzłe i funkcjonalne API oraz możliwość rozwoju w kierunku wieloplatformowości - wyobraź sobie te same skrypty na Bukkicie i Sponge! No dobra, ale jak tego używać? Pobierz: http://craftlin.net/Craftlin.jar Wstaw do katalogu plugins i zrestartuj serwer Utwórz skrypt z rozszerzeniem .cl w katalogu scripts (utworzy się sam po restarcie) Wykonaj komendę /craftlin reload Profit! Oczywiście do skryptowania przyda się znajomość Kotlina (nauczysz się go tutaj: https://try.kotlinlang.org/) oraz dokumentacja API (punkt wyjścia: http://craftlin.net/docs/net.craftlin.api/-variables/index.html). Możesz też zacząć od przykładów: http://craftlin.net/#examples Zanim wpadniesz w wir kodowania pamiętaj jednak, że to dopiero alpha. Do pełnego wydania API może zmienić się jeszcze 100 razy, a sam plugin nie nadaje się do użycia na produkcji. Znalazłem błąd! Spokojnie, to dopiero alpha, więc błędów powinno być od groma Najlepiej zgłoś go tutaj: https://gitlab.com/Libter/Craftlin/issues (preferowany język angielski, ale po polsku też się nie obrażę) Albo tutaj: https://discord.gg/GMsBJ6b Albo w tym dziale. W tych samych miejscach możesz zgłaszać także swoje sugestie! Pamiętaj, żeby dokładnie opisać okoliczności jego powstania oraz załączyć zawartość katalogu scripts/errors (jeśli istnieje) lub log konsoli. Super projekt! Jak mogę pomóc? Jest wiele możliwości, ale na początku dołącz na Discorda (link powyżej) Następnie możesz: Po prostu bawić się pluginem, pisać skrypty i zgłaszać błędy oraz sugestie. Zostać testerem - jeśli jesteś dyspozycyjny i masz przynajmniej pół godziny czasu codziennie zapraszamy! Zostać potężnym developerem - jeśli znasz Kotlina lub przynajmniej Javę, masz przynajmniej pięć wolnych godzin w tygodniu, a przy okazji jesteś osobą godną zaufania i potrafisz tworzyć piękne rozwiązania zamiast klepać kod zapraszamy jeszcze bardziej gorąco! A na koniec link do strony: http://craftlin.net/ Miłej zabawy!
  12. Libter

    Wniosek o interpretacje zapisu w regulaminie [§2.2.1]

    Zgodnie z §2.2.1: Zabronione jest: reklamowanie w nieprzeznaczonych do tego działach. Interpretacja na szybko: Linkowanie czegoś związanego z tematem nie stanowi reklamy, spamowanie jakimś linkiem po tematach stanowi reklamę. ...a poza tym trzeba zrobić nowy regulamin ...kiedyś.
  13. Libter

    Rejestr zarządzeń

    Zarządzenie @Libter 01/26.08.2018: @Zax3_ traci rangę junior administratora. @DeltaT traci rangę junior administratora.
  14. Libter

    Lista zmian

    26.08.2018: Edytor jest teraz dwupasmowy - jeszcze więcej opcji na wszystkich urządzeniach.
×