Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Szukam pomysłów na pluginy


TiREX69

Rekomendowane odpowiedzi

Opublikowano

Siema, jeżeli masz pomysł na plugin śmiało pisz!

Mam ostatnio trochę czasu, a nie mam pomysłu na żaden plugin. Jeżeli nie ma nigdzie takiego pluginu lub aktualna wersja nie działa z pewnością nie przeoczę twojej propozycji.

 

Aby wygodniej czytało się propozycje, przekopiujcie sobie ten wzór:

[b]Działanie pluginu: [/b]
[b]Nowy plugin wykorzystam do: [/b] 

Najciekawsze i szczere wypowiedzi (odnośnie ostatniego pytania) będą rozpatrywane w pierwszej kolejności.

 

 

Pozdrawiam

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

oczywiście że mam, a nawet całą masę : O

 

- sektory, brakuje dobrego działającego pluginu na sektory(bez ekranu ladowania). Jak miałby on działąć, chyba nie muszę wyjaśniać.

 

- grawitacje, jak wiesz minecraft cierpi na brak grawitacji, lewitujące bloki, niczym nie wzruszone sieją się po mapie.. Ktoś coś z tym musi zrobić. Jak to miało by działać? każdemu bloku przypiszmy mase np. obsydian miałby 9 masy, a cobbel tylko 4, co znaczy że jak gracz budując od ściany by w linii prostej, poziomej postawił 5 bloków cobbla, to ten piąty by się nie utrzymał i spadł podrzucając mniej masywne bloki na które upadnie w powietrze. : )

 

- plugin na brak lagów, nie wiem zaamplikuj jakieś systemy asynchronczne, zrób tak by nawet na najsłabszym łączu i komputerze nie było lagów. Miło by było gdyby taki plugin też nie miał bugów.

 

- plugin na muzykę/ogłoszenia głosowe, coś takiego że bez wyraźnego komunikatu pobiera się graczowi resources pack z nutką lub ogłoszeniem głosowym od administratora i od razu mu to się odtwarza.

 

- plugin na własne bloki, jak może wiesz, a może nie, w minecrafcie jest wiele możliwości można też zrobić plugin na bloki z własną texturą bez texturepacka : O Nie pamiętam jak to się robiło, ale wiem że się da.

 

- plugin na stawianie blok nie liniowo, to znaczy że sobie są dwa bloki [  ] [  ] normalnie w minecrafcie blok możesz postawić tak 

[  ]       lub tak      [  ] a ja chce tak   [  ]

[  ] [  ] lub tak [  ] [  ] a ja chce tak [  ] [  ]

 

Wykorzystasz do czego zechcesz i jak zechcesz.

będziesz z ich pomocą szerzyć szczęście w minecrafcie.

 

 

chyba że chcesz napisać jakiś mniejszy plugin, wtedy mi smutno i napisz plugin naaa drop ze stone. wiele ludziom nie podobają się plaginy takie jak awesome drop czy karolek drop

 

! wiem

- napisz plugin na AntyForceOP

to jest dobra myśl.

opencraft.pl << { na takim jeszcze nie grałeś }

TDepLbR.gif

Opublikowano

­@macjoker007 nie wiem w jakim świecie żyjesz, ale z tej listy może są 2 pluginy, które dało by się jakoś sensownie zrobić (w ogóle zrobić). Chociaż plugin na grawitacje nie byłby taki zły.

Co do tego pluginu na grawitacje chodziłoby tylko o postawione bloki? Te wygenerowane już przez generator zostawałyby w miejscu?

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

oczywiście że mam, a nawet całą masę : O

 

- sektory, brakuje dobrego działającego pluginu na sektory(bez ekranu ladowania). Jak miałby on działąć, chyba nie muszę wyjaśniać.

 

- grawitacje, jak wiesz minecraft cierpi na brak grawitacji, lewitujące bloki, niczym nie wzruszone sieją się po mapie.. Ktoś coś z tym musi zrobić. Jak to miało by działać? każdemu bloku przypiszmy mase np. obsydian miałby 9 masy, a cobbel tylko 4, co znaczy że jak gracz budując od ściany by w linii prostej, poziomej postawił 5 bloków cobbla, to ten piąty by się nie utrzymał i spadł podrzucając mniej masywne bloki na które upadnie w powietrze. : )

 

- plugin na brak lagów, nie wiem zaamplikuj jakieś systemy asynchronczne, zrób tak by nawet na najsłabszym łączu i komputerze nie było lagów. Miło by było gdyby taki plugin też nie miał bugów.

 

- plugin na muzykę/ogłoszenia głosowe, coś takiego że bez wyraźnego komunikatu pobiera się graczowi resources pack z nutką lub ogłoszeniem głosowym od administratora i od razu mu to się odtwarza.

 

- plugin na własne bloki, jak może wiesz, a może nie, w minecrafcie jest wiele możliwości można też zrobić plugin na bloki z własną texturą bez texturepacka : O Nie pamiętam jak to się robiło, ale wiem że się da.

 

- plugin na stawianie blok nie liniowo, to znaczy że sobie są dwa bloki [  ] [  ] normalnie w minecrafcie blok możesz postawić tak 

[  ]       lub tak      [  ] a ja chce tak   [  ]

[  ] [  ] lub tak [  ] [  ] a ja chce tak [  ] [  ]

 

Wykorzystasz do czego zechcesz i jak zechcesz.

będziesz z ich pomocą szerzyć szczęście w minecrafcie.

 

 

chyba że chcesz napisać jakiś mniejszy plugin, wtedy mi smutno i napisz plugin naaa drop ze stone. wiele ludziom nie podobają się plaginy takie jak awesome drop czy karolek drop

 

! wiem

- napisz plugin na AntyForceOP

to jest dobra myśl.

­@macjoker007 nie wiem w jakim świecie żyjesz, ale z tej listy może są 2 pluginy, które dało by się jakoś sensownie zrobić (w ogóle zrobić). Chociaż plugin na grawitacje nie byłby taki zły.

Co do tego pluginu na grawitacje chodziłoby tylko o postawione bloki? Te wygenerowane już przez generator zostawałyby w miejscu?

Dać się da, ale wydajności będzie zero :D Tyle te ogłoszenia głosowe z dupy.

 

Nie da się bez txt packa zrobić własnego bloku, chyba że chcesz te bloki skladac z armor standów, no ale wtedy client patrzac na sciiane z takich blokow nie wyciągnie nawet 1fps, a serwer też nie ogarnie tylu entity.

Podobnie ze stawianiem bloków obok, client będzie miał strasznie bugi wizualne i fizyczne, a serwer znacznie więcej do liczenia, ale to już jest bardziej sensowne niz poprzednie.

 

 

A plugin na lagi nie ma sensu xD Minecraft jest stworzony tak by byl w jednym wątku i ot-tak tego nie zmienisz, a do tego 90% pluginów by padła bo by nie ogarneła wielu wątków.

Ale zapraszam do pisania diorite!

1438614356923701010629.png

 

Opublikowano

Proponuje:

 

Plugin na disco zbroje.

Plugin na bana po śmierci.

Zaawansowany generator świata.

Plugin na ulepszenia eq. Każdy zcraftowany item który służy do obrony lub bicia na początku ma praktycznie zerową obronę/zadawanych obrażeń i jest na +0 i żeby ulepszyć taki item na +1 trzeba mieć specjalny item i kilka lvl i tak co każdy + jest więcej obrony i zadawanych obrażeń. Można też dodać że np jak ulepszymy na +5 to dodaje się do miecza 30% na zwolnienie przeciwnika itp.

__

Plugin na bossy.

                                                                                        O

                                                                                       /V\

                                                                                       /''\

Opublikowano

Proponuje:

 

Plugin na disco zbroje.

Plugin na bana po śmierci.

Zaawansowany generator świata.

Plugin na ulepszenia eq. Każdy zcraftowany item który służy do obrony lub bicia na początku ma praktycznie zerową obronę/zadawanych obrażeń i jest na +0 i żeby ulepszyć taki item na +1 trzeba mieć specjalny item i kilka lvl i tak co każdy + jest więcej obrony i zadawanych obrażeń. Można też dodać że np jak ulepszymy na +5 to dodaje się do miecza 30% na zwolnienie przeciwnika itp.

__

Plugin na bossy.

 

Plugin na disco zbroje, gdzieś krąży po internecie.

Pluginów na bana po śmierci już chyba było mnóstwo.

Terrain Control

A co do ostatniego to jest jakiś plugin, ale nie mogę sobie nazwy przypomnieć.

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

Pluginów na bany po śmierci nie jest aż tak dużo... A jeżeli już są to zawsze czegoś brakuje czy to zmienienia wiadomości albo długości bana... Nadal Ci proponuje zrobić dobry plugin na bany lecz jeżeli nie chcesz to może... Plugin na takiego vanisha tylko że on by znikał tylko np. Ręce, nogi itd.

                                                                                        O

                                                                                       /V\

                                                                                       /''\

Opublikowano

Pluginów na bany po śmierci nie jest aż tak dużo... A jeżeli już są to zawsze czegoś brakuje czy to zmienienia wiadomości albo długości bana... Nadal Ci proponuje zrobić dobry plugin na bany lecz jeżeli nie chcesz to może... Plugin na takiego vanisha tylko że on by znikał tylko np. Ręce, nogi itd.

 

Z tego co wiem to nie można poszczególnych części ciała ukrywać. 

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

ja tam się bawie tera w skripcie a nie pluginami, tobie też polecam :)

Nah pewnie kolejny troll, ale co tam...

 

To napisz w skrypcie skrypt na wykrywanie czy gracz ma prawdziwe konto premium, powodzenia.

 

 

A tobie tirex oddam jeden z moich glupszych pomysłów, plugin co skanuje inne pluginy w poszukiwaniu rzeczy potencjalnie niezbpiecznych, jak np wywolywania komend, metody setOp, setPermissions, refleksje, unsafe i na tej podstawie dające info adminowi że dany plugin może zawierać niebezpieczny kod.

Do tego może jakieś permissions dla pluginów i takie dziwne mechanizmy, masa dziwnje zabawy z nadpisywaniem kodu, polecam xD

1438614356923701010629.png

 

Opublikowano

 

ja tam się bawie tera w skripcie a nie pluginami, tobie też polecam :)

Nah pewnie kolejny troll, ale co tam...

 

To napisz w skrypcie skrypt na wykrywanie czy gracz ma prawdziwe konto premium, powodzenia.

 

 

A tobie tirex oddam jeden z moich glupszych pomysłów, plugin co skanuje inne pluginy w poszukiwaniu rzeczy potencjalnie niezbpiecznych, jak np wywolywania komend, metody setOp, setPermissions, refleksje, unsafe i na tej podstawie dające info adminowi że dany plugin może zawierać niebezpieczny kod.

Do tego może jakieś permissions dla pluginów i takie dziwne mechanizmy, masa dziwnje zabawy z nadpisywaniem kodu, polecam xD

 

 

Wykrywanie przed czy w trakcie używania backdoora?

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

 

 

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

1438614356923701010629.png

 

Opublikowano

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

 

 

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

 

Jestem otwarty na propozycje. Zwłaszcza jeżeli coś jest przydatne.

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

Może jakiś plugin na zwiększenie komendy /enchant np. /enchant fire 10

 

 

Albo plugin dzięki któremu nie będziemy widzieć nick nad głową gracza za ścianą.

 

 

 

Opublikowano

 

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

 

Jestem otwarty na propozycje. Zwłaszcza jeżeli coś jest przydatne.

 

­

Program, taki normalny z GUI, do modyfikowania nazw skomplikowanego programu w javie, czyli musi on dekompilowac program, możesz użyć jakiegoś gotowego dekompilatora, np fernflower jest tutaj fajny, Bo ma przydatne opcje i zezwalać na zmianę nazw wszelkich klass, paczek, pól, metod, oczywiście zmienic musi się nazwą w zakresie całego programu, to samo że zmiana paczek, dodatkowo wszystkie zmiany powinny być zapisane do jakiegoś pliku z podsumowaniem, taki który można potem importować do twojego programu i on na jego podstawie zmieni nazwy.

Same zmiany powinny byc zapisane Na koniec do osobnego nowego jara, nie Na biezaco, bo program ma być użyteczny bez zbędnych scinek

 

Przydatne do dekompilowania minecraftow i innych zaciemnionych zabawek.

1438614356923701010629.png

 

Opublikowano

-Plugin na prywatne warpy, albo lepiej na portale, by gracze mogli między sobą robić portale, brakuje takiego pluginu, nie liczę pluginu CreativeGates bo on wymaga plugin MCore i razem to laguje serwer.

 

-Plugin na system referencyjny, coś że dla każdego gracza np. pod poleceniem "/ref" będzie link referencyjny który gracz może wysłać każdemu innemu graczowi by zaprosić go na serwer, jeśli np. jego kolega kliknie ten link, wtedy przeniesie go na stronę serwera i jeżeli zaraz po tym wbije na serwer to obaj dostaną nagrody/prezenty/bonusy.

 

-Plugin na robienie własnych GUI z komendami, ale z poziomu gry, tak by nawet największy amator nie miał z tym problemu.

opencraft.pl << { na takim jeszcze nie grałeś }

TDepLbR.gif

Opublikowano

 

 

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

Jestem otwarty na propozycje. Zwłaszcza jeżeli coś jest przydatne.

 

­

Program, taki normalny z GUI, do modyfikowania nazw skomplikowanego programu w javie, czyli musi on dekompilowac program, możesz użyć jakiegoś gotowego dekompilatora, np fernflower jest tutaj fajny, Bo ma przydatne opcje i zezwalać na zmianę nazw wszelkich klass, paczek, pól, metod, oczywiście zmienic musi się nazwą w zakresie całego programu, to samo że zmiana paczek, dodatkowo wszystkie zmiany powinny być zapisane do jakiegoś pliku z podsumowaniem, taki który można potem importować do twojego programu i on na jego podstawie zmieni nazwy.

Same zmiany powinny byc zapisane Na koniec do osobnego nowego jara, nie Na biezaco, bo program ma być użyteczny bez zbędnych scinek

 

Przydatne do dekompilowania minecraftow i innych zaciemnionych zabawek.

 

 

Coś na podobieństwo dnSpy ?

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

 

 

 

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

Jestem otwarty na propozycje. Zwłaszcza jeżeli coś jest przydatne.

 

­

Program, taki normalny z GUI, do modyfikowania nazw skomplikowanego programu w javie, czyli musi on dekompilowac program, możesz użyć jakiegoś gotowego dekompilatora, np fernflower jest tutaj fajny, Bo ma przydatne opcje i zezwalać na zmianę nazw wszelkich klass, paczek, pól, metod, oczywiście zmienic musi się nazwą w zakresie całego programu, to samo że zmiana paczek, dodatkowo wszystkie zmiany powinny być zapisane do jakiegoś pliku z podsumowaniem, taki który można potem importować do twojego programu i on na jego podstawie zmieni nazwy.

Same zmiany powinny byc zapisane Na koniec do osobnego nowego jara, nie Na biezaco, bo program ma być użyteczny bez zbędnych scinek

 

Przydatne do dekompilowania minecraftow i innych zaciemnionych zabawek.

 

 

Coś na podobieństwo dnSpy ?

 

­

 

nie znam sie na tyle na c# by powiedzieć czy to jest podobne :D

Chodzi głównie o otworzenie .jara/klass i edycja wszelkich nazw na binarkach, bo jest to znacznie szybsze i wygodniejsze.

A potem możesz sobie np wyexportować taki plik:

packages:
/ -> /net/minecraft/server

classes: //stara nazwa -> nowa nazwa, już po zmianie paczki
net.minecraft.server.ab -> net.minecraft.server.ItemFrame
net.minecraft.server.cd -> net.minecraft.server.Item

fields: //klasa typ nazwa -> nowa_nazwa, już po zmiane nazw klas
net.minecraft.server.Item net.minecraft.server.ItemFrame a -> frame

methods: //klasa return_type nazwa params -> nowa_nazwa, zmiana nazw parametrów raczej nie jest potrzebna, ale można dodać
net.minecraft.server.ItemFrame void a(net.minecraft.server.Item, int) -> setItem

modifiers: //zmiany typu private -> public
net.minecraft.server.Item net.minecraft.server.ItemFrame a -> public
net.minecraft.server.ItemFrame void a(net.minecraft.server.Item, int) -> protected

I taki sam plik można potem importować do progrmu i on te zmiany zaaplikuje, lub zwróci problem że coś nie pasuje, np metody się nie zgadzają.

 

To taka podstawowa nawet niezbyt trudna wersja... Potem można by to rozbudować...

Np edycja kodu, wyświetlanie i edytcja bytecodu, uruchamianie aplikacji i debugging, może zrobić to jako wtyczkę do intellij potem :P (to by było na prawdę z*******e)

Taki pomysł na prawdę ma jakiś tam drobny potencjał by ruszył i ktoś się nim zainteresował, ale ja wiem że nie znajdę na niego czasu.

 

Tylko ze sam pomysł też jest trudny do zrealizowania i wymaga sporo czasu i myślenia.

 

 

 

EDIT: 

I wiem co jeszcze! odwrotny re-mapping, np masz te zdekompilowane source minecrafta z ładnymi klasami, piszesz pod to sobie moda, przepuszczasz .jar-a przez twój problem, i też masz już w swoim modzie te zaciemnione nazwy ;)

1438614356923701010629.png

 

Opublikowano

 

 

 

 

Podczas startu serwera sprawdzasz potencjalne luki czy po prostu potencjalnie niebezpieczny kod i może też dodajesz jakieś zabezpieczenia dziwniejsze. Taki tam bezsensowny pomysl

A tak może chcesz coś nie związanego bezpośrednio z MC ale bardzo przydatnego?

Jestem otwarty na propozycje. Zwłaszcza jeżeli coś jest przydatne.

 

­

Program, taki normalny z GUI, do modyfikowania nazw skomplikowanego programu w javie, czyli musi on dekompilowac program, możesz użyć jakiegoś gotowego dekompilatora, np fernflower jest tutaj fajny, Bo ma przydatne opcje i zezwalać na zmianę nazw wszelkich klass, paczek, pól, metod, oczywiście zmienic musi się nazwą w zakresie całego programu, to samo że zmiana paczek, dodatkowo wszystkie zmiany powinny być zapisane do jakiegoś pliku z podsumowaniem, taki który można potem importować do twojego programu i on na jego podstawie zmieni nazwy.

Same zmiany powinny byc zapisane Na koniec do osobnego nowego jara, nie Na biezaco, bo program ma być użyteczny bez zbędnych scinek

 

Przydatne do dekompilowania minecraftow i innych zaciemnionych zabawek.

 

 

Coś na podobieństwo dnSpy ?

 

­

 

nie znam sie na tyle na c# by powiedzieć czy to jest podobne :D

Chodzi głównie o otworzenie .jara/klass i edycja wszelkich nazw na binarkach, bo jest to znacznie szybsze i wygodniejsze.

A potem możesz sobie np wyexportować taki plik:

packages:
/ -> /net/minecraft/server

classes: //stara nazwa -> nowa nazwa, już po zmianie paczki
net.minecraft.server.ab -> net.minecraft.server.ItemFrame
net.minecraft.server.cd -> net.minecraft.server.Item

fields: //klasa typ nazwa -> nowa_nazwa, już po zmiane nazw klas
net.minecraft.server.Item net.minecraft.server.ItemFrame a -> frame

methods: //klasa return_type nazwa params -> nowa_nazwa, zmiana nazw parametrów raczej nie jest potrzebna, ale można dodać
net.minecraft.server.ItemFrame void a(net.minecraft.server.Item, int) -> setItem

modifiers: //zmiany typu private -> public
net.minecraft.server.Item net.minecraft.server.ItemFrame a -> public
net.minecraft.server.ItemFrame void a(net.minecraft.server.Item, int) -> protected

I taki sam plik można potem importować do progrmu i on te zmiany zaaplikuje, lub zwróci problem że coś nie pasuje, np metody się nie zgadzają.

 

To taka podstawowa nawet niezbyt trudna wersja... Potem można by to rozbudować...

Np edycja kodu, wyświetlanie i edytcja bytecodu, uruchamianie aplikacji i debugging, może zrobić to jako wtyczkę do intellij potem :P (to by było na prawdę z*******e)

Taki pomysł na prawdę ma jakiś tam drobny potencjał by ruszył i ktoś się nim zainteresował, ale ja wiem że nie znajdę na niego czasu.

 

Tylko ze sam pomysł też jest trudny do zrealizowania i wymaga sporo czasu i myślenia.

 

 

 

EDIT: 

I wiem co jeszcze! odwrotny re-mapping, np masz te zdekompilowane source minecrafta z ładnymi klasami, piszesz pod to sobie moda, przepuszczasz .jar-a przez twój problem, i też masz już w swoim modzie te zaciemnione nazwy ;)

 

 

Trzeba będzie w trakcie wyciągania plików z .jar'a zadbać o to, aby nie próbował stworzyć się plik o nazwach typu: "NUL", "CON"

 

 

@topic podjąłem decyzje i biorę się za to, pomysły możecie pisać dalej, jak skończę ten projekt to na pewno wykorzystam. 

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

 

 

 

Trzeba będzie w trakcie wyciągania plików z .jar'a zadbać o to, aby nie próbował stworzyć się plik o nazwach typu: "NUL", "CON"

 

 

@topic podjąłem decyzje i biorę się za to, pomysły możecie pisać dalej, jak skończę ten projekt to na pewno wykorzystam. 

 

­

 

 

Ale ty nie masz tworzyć żadnych plików, wszystko ma być tam, na czystych danych, właśnie po to by nie mieć problemu z nazwami, tak samo jak z wielkością liter na windowsie że dla niego a i A to ten sam plik.

Wszystko wchodzi i wychodzi jako .jar

 

Ewentualnie dodatkowo potem można dodać opcje dekompilacji.... ale to jest zbędne, po zmianie nazw w takim programie równie dobrze mogę to sam juz zdekompilować w dowolnym programie

1438614356923701010629.png

 

Opublikowano

 

 

 

 

Trzeba będzie w trakcie wyciągania plików z .jar'a zadbać o to, aby nie próbował stworzyć się plik o nazwach typu: "NUL", "CON"

 

 

@topic podjąłem decyzje i biorę się za to, pomysły możecie pisać dalej, jak skończę ten projekt to na pewno wykorzystam. 

 

­

 

 

Ale ty nie masz tworzyć żadnych plików, wszystko ma być tam, na czystych danych, właśnie po to by nie mieć problemu z nazwami, tak samo jak z wielkością liter na windowsie że dla niego a i A to ten sam plik.

Wszystko wchodzi i wychodzi jako .jar

 

Ewentualnie dodatkowo potem można dodać opcje dekompilacji.... ale to jest zbędne, po zmianie nazw w takim programie równie dobrze mogę to sam juz zdekompilować w dowolnym programie

 

 

W pierwszym poście na temat dekompilatora, wspomniałeś, że mam dekompilować kod, a później pozwalać użytkownikowi na zmianę nazw. Dobrze zrozumiałem?

Czy mam po prostu wszystko modyfikować na skompilowanej wersji?

ew. Zapisywać sobie w pamięci, gdzie mam zmienić nazwy, a pod koniec dekompilować, zmienić nazwy, a następnie skompilować (z tym może być problem z poglądem kodu).

 

@P.S Ostatnio nie miałem czasu, aby z tym ruszyć (szkoła).

 

­

Wejdź na moją listę serwerów i zobacz wszystkie serwery minecraft

Opublikowano

@TiREX69

Zrób plugin na market, miało by to działać na takiej zasadzie:

gracz wpisuje /rynek, otwiera mu się gui

3 przedmioty - oferty kupna, oferty sprzedaży, wystawione oferty kupna/sprzedaży

W tym trzecim są wszystkie wystawione oferty -> klikając na przedmiot anulujemy ofertę

http://i.imgur.com/sJ4xHd1.png

Klikając na oferty kupna: (Głowa pojawia się jeśli chce kupić przynajmniej jeden przedmiot)

http://i.imgur.com/xN5ESsd.png

dalej klikając na głowę gracza:

http://i.imgur.com/HfsSHrI.png

I to samo w ofertach sprzedaży..

 

Zrobiłem to w skripcie ale tylko żeby pokazać graficznie ( nie działa :D )

 

Wystawianie ofert

gracz trzyma w łapce przedmiot wpisuje:

/rynek wystaw kupno 200$

/rynek wystaw sprzedaz 200$

 

Do tego jakieś limity że każdy może wystawić 9 ofert kupna / 9 sprzedaży.

Opublikowano

 

 

Trzeba będzie w trakcie wyciągania plików z .jar'a zadbać o to, aby nie próbował stworzyć się plik o nazwach typu: "NUL", "CON"

 

 

@topic podjąłem decyzje i biorę się za to, pomysły możecie pisać dalej, jak skończę ten projekt to na pewno wykorzystam. 

 

­

 

Ale ty nie masz tworzyć żadnych plików, wszystko ma być tam, na czystych danych, właśnie po to by nie mieć problemu z nazwami, tak samo jak z wielkością liter na windowsie że dla niego a i A to ten sam plik.

Wszystko wchodzi i wychodzi jako .jar

 

Ewentualnie dodatkowo potem można dodać opcje dekompilacji.... ale to jest zbędne, po zmianie nazw w takim programie równie dobrze mogę to sam juz zdekompilować w dowolnym programie

 

 

W pierwszym poście na temat dekompilatora, wspomniałeś, że mam dekompilować kod, a później pozwalać użytkownikowi na zmianę nazw. Dobrze zrozumiałem?

Czy mam po prostu wszystko modyfikować na skompilowanej wersji?

ew. Zapisywać sobie w pamięci, gdzie mam zmienić nazwy, a pod koniec dekompilować, zmienić nazwy, a następnie skompilować (z tym może być problem z poglądem kodu).

 

@P.S Ostatnio nie miałem czasu, aby z tym ruszyć (szkoła).

 

­

 

 

Użytkownik ma widzieć kod, ale operacje mają być na bytecode, możesz albo bezpośrednio zezwolić na edycje w kodzie, ale wtedy będzie trudno to zmappować, szczególnie kiedy podczas dekompilacji będziesz zmieniał te nazwy na inne bo aktualnie są niepoprawne.

Więc można zrobić z boku listę pól i metod i nazwe klasy i tam zezwalać na zmiane.

 

Np namy taki kod:

private a a;
private b a;

public b a(a a, b a)
{
    return this.a.b(this.a).a(a).a(a); // i uj wie o jakie "a" tutaj chodzi 
}

public void a(a a, b a)
{
    this.a = a.g(a);
}

public void a(b 
{
    this.a = b;
}
i wyświetlić taki kod to będzie masakra, bo wszystkie nazwy się powtarzają, i trudno określić która metoda co robi, szczególnie że mamy 2x fielda z taką samą nazwą ale innym typem, i podobnie z metodami, to samo przyjmują, ta sama nazwa, ale inny zwracany typ (metoda 1 i 2).

Do tego nazwy argumentów są takie same bo... java na to nie patrzy już po skompilowaniu, więc można je zaciemnić na takie same, przez co lipny dekompilator da nam kompletnie niezrozumiały kod.

W bytecode da się tak zrobić, ale ten kod już by sie nie skompilował ponownie.

 

Dlatego podczas takiej dekompilacji program powinien jakoś sprawdzić czy takie problemy występują, i już samemu zmienić nazwy na tymczasowe inne, i np wyświetlić cos takiego:

private a field_a_OfType_a; // field_<stara nazwa pola>OfType_<typ>
private b field_a_OfType_b;

public b method_a_return_b(a var1_a, b var2_ // method_<stara nazwa>_return_<zwracany typ>, a dla parametrów var<index>_typ
{
    return this.field_a_OfType_a.method_b_return_x(this.field_a_OfType_.method_a_return_c(var1_a).method_a_return_b(var2_;
}

public void method_a_return_void(a var1_a, b var2_
{
    this.field_a_OfType_b = var2.method_g_return_b(var1_a);
}

public void method_a_return_void(b var1)
{
    this.field_a_OfType_b = var1;
}
Taki kod już można próbować ogarnąć, bo nawet da się go skompilować, jednak istnieje on tylko jako podgląd, program dalej wie jak te pola nazywają się na prawdę w pliku .jar.

Oczywiście format nazw możesz wymyślić inny, ale koniecznie powinna być też opcja zmiany tego formatu na własny :D

 

I teraz, albo w jakimś menu obok, masz opcje zmian nazwy pól itd, albo bezpośrednio w kodzie (trudniej bo będzie trzeba jakoś śledzić dokładniej co edytuje użytkownik).

 

Zmienam sobie np nazwę klasy, i nazwę 1 zmiennej, a wszystkie ich użycia zmieniają się same.

 

Aż sam mam ochotę coś takiego tworzyć, ale wiem że nie znajdę już więcej czasu.

1438614356923701010629.png

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...