Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Плагин [DEV] PPLoader v1.1.0 - плагины на Python [1.6.4-R2.0]

Тема в разделе "Релизы плагинов", создана пользователем cyber_lis, 18 авг 2014.

  1. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Для начала открой код и посмотри. Ты задаешь вопросы, но я специально все прокоментировал в коде. Там есть строка с функцией shape. В ней задается буквами форма рецепта. Ниже каждый ингредиент описывает свою букву. Посмотри код внимательно
     
  2. Хостинг MineCraft
    <
  3. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    я не знаю как в верстаке это выглядит. Видел картинку но не помню я[DOUBLEPOST=1409811663,1409811206][/DOUBLEPOST]Выложил
    GCG
    RIR
    GCG
    Снимок.PNG [DOUBLEPOST=1409811777][/DOUBLEPOST]лол, это пурпул цвет :D 35:2[DOUBLEPOST=1409812234][/DOUBLEPOST]Есть правда небольшой лаг. Когда выложил рецепт, получаться что результат появился но, он тутже исчез, когда положил остатки, он появился. лол.[DOUBLEPOST=1409812339][/DOUBLEPOST]но это в врестаке мода. но всеравно спасибо что работаешь :3 БЛИИИИН! как же я рад что на простом языке это сделали!
     
  4. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Не за что :good:
    В NEI к сожалению не отображаются рецепты из плагинов, но зато работает. Я так добавляю рецепты, которые не работают в IC2 Experemental
     
  5. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    Ну в неи и добавить можно. но это другая история. эвенты модов поддерживает?
    форму рецепта можно свои влепить? я про буквы.
    просто не нашел твоих эвентов :>
     
  6. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Пожалуйста. Любую форму, любое кол-во ингредиентов. Плагины не поддерживают эвенты модов. А стандартные эвенты буккита все поддерживаются. Почитай руководство для начинающего
     
  7. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    появились вопросы.
    можно ли сделать sql подключение? при этом нужно опираться на питон?
    from org.bukkit.event import EventPriority - это обязательный импорт?[DOUBLEPOST=1410094136,1410010673][/DOUBLEPOST]И какую версию питона использовать при написании плагина?
    А то чет Вашу документацию покурил, так и не понял синтаксис.
     
  8. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    Да я понял. типо приоритет ввыставлять.
     
  9. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Импортировать не обязательно. Я об этом писал (потому что я импортирую его автоматом.). Но если вам будет очевидней, то вы можете импортировать еще раз. Хуже от этого никому не будет.

    Насчет sql. Поддержка есть. Вот тут есть описание как это сделать.
    https://github.com/cyberlis/pploader/wiki/Using-MySQL-(using-external-jars)
    Я в ближайшие пару дней переведу её для удобства. С помощью этого способа можно подключить любую библиотеку. Не только mysql.

    Насчет версии python. Так как jython только версии 2.7 то и писать придется на python 2.7
    (Сделаю соответствующую пометку в документации)

    Также если потерпите я выложу свой плагин на чат, на рыбалку, возможно на биосферы
     
  10. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    Хотелось больше коментариев. я так каждый день мучаю доки чтобы понять синтаксис.
     
  11. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Чтобы понять синтаксис придется сначала прочитать хотя бы минимум по программированию на python
    Могу дать без комментариев
    https://github.com/cyberlis/rcchat
    Обязательно нужен Vault
    http://dev.bukkit.org/bukkit-plugins/vault/
    Писал для себя поэтому комментариев нет. Так же я использовал для конфига JSON формат.
    Может доведу до ума и прокомментирую, но не сейчас.

    Тут локальный и глобальный чат.
    Также есть задержка для глобального чата
    !сообщение в глобальный чат
    *сообщение в глобальный чат за деньги (без задержки)
    Можно установить задержку для разных групп (prem, vip ...)
     
  12. zuma2

    zuma2 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    sytems.admin
    Имя в Minecraft:
    zuma2
    ох еееее.
    я вот хотел отловить получение достижения получить что за ачивка и там уже give 246 {player}
    я сидел как дибил :D[DOUBLEPOST=1410191527,1410180455][/DOUBLEPOST]сижу курю учебник.
    Поржал от x + 1 :D так можно засрать память.[DOUBLEPOST=1410197690][/DOUBLEPOST]что понять основы.
    http://programarcadegames.com/index.php?lang=ru&chapter=conditional_statements
    учу там
     
  13. Artem0001

    Artem0001 Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    eWaster
    Не получается, написал плагин по примеру не пашет :cry:
     
  14. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Скидывай исходник. Я гляну
     
  15. Artem0001

    Artem0001 Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    eWaster
    plugin.py
    Код:
    from org.bukkit.event import EventPriority
    from org.bukkit.event.player import PlayerJoinEvent
    
    class HappyListener(PythonListener):
        @PythonEventHandler(PlayerJoinEvent, EventPriority.NORMAL)
        def onPlayerJoin(self, event):
            event.getPlayer().sendMessage('Welcome to HappyEnd Craft server by pallaydude')
    
    class HappyClass(PythonPlugin):
    
        def onEnable(self):
            pm = self.getServer().getPluginManager()
            self.listener = SimpleListener()
            pm.registerEvents(self.listener, self)
            print "sample plugin enabled"
    
        def onDisable(self):
            print "sample plugin disabled"
    plugin.yml

    Код:
    name: MoreIandes by pallaydude
    main: HappyClass
    version: 0.1.0-beta
    commands:
        samplecommand:
            description: Пример команды
            usage: Введите /<command>
     
  16. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    1. def onEnable(self):
    2. pm = self.getServer().getPluginManager()
    3. self.listener = SimpleListener()
    4. pm.registerEvents(self.listener, self)
    5. print "sample plugin enabled"
    self.listener = SimpleListener() у тебя же HappyListener а не SimpleListener

    Напиши self.listener = HappyListener() и по идее будет работать[DOUBLEPOST=1412876236,1412875987][/DOUBLEPOST]






    1. def onEnable(self):
    2. pm = self.getServer().getPluginManager()
    3. self.listener = SimpleListener()
    4. pm.registerEvents(self.listener, self)
    5. print "sample plugin enabled"
    self.listener = SimpleListener() у тебя же HappyListener а не SimpleListener

    Напиши self.listener = HappyListener() и по идее будет работать
     
  17. Artem0001

    Artem0001 Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    eWaster
    No, don't work (забыл переключить на русский язык)[DOUBLEPOST=1412960038][/DOUBLEPOST]
    [20:47:45] [Server thread/INFO]: [PPLoader] Loading PPLoader v1.0.0
    [20:47:45] [Server thread/INFO]: [PPLoader] Loading Plugin More by pallaydude.py.zip
    [20:47:45] [Server thread/WARN]: org.bukkit.plugin.InvalidPluginException: unacceptable character 'пїЅ' (0xFFFD) special characters are not allowed
    in "<reader>", position 123
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:143)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:118)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:92)
    [20:47:45] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:328)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonLoader.onLoad(PythonLoader.java:85)
    [20:47:45] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R2.CraftServer.loadPlugins(CraftServer.java:355)
    [20:47:45] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R2.CraftServer.<init>(CraftServer.java:312)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.PlayerList.<init>(PlayerList.java:63)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.DedicatedPlayerList.<init>(SourceFile:14)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.DedicatedServer.init(DedicatedServer.java:126)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.MinecraftServer.run(MinecraftServer.java:426)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.ThreadServerApplication.run(SourceFile:618)
    [20:47:45] [Server thread/WARN]: Caused by: unacceptable character 'пїЅ' (0xFFFD) special characters are not allowed
    in "<reader>", position 123
    [20:47:45] [Server thread/WARN]: at org.yaml.snakeyaml.reader.StreamReader.checkPrintable(StreamReader.java:98)
    [20:47:45] [Server thread/WARN]: at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:191)
    [20:47:45] [Server thread/WARN]: at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:63)
    [20:47:45] [Server thread/WARN]: at org.yaml.snakeyaml.Yaml.load(Yaml.java:411)
    [20:47:45] [Server thread/WARN]: at org.bukkit.plugin.PluginDescriptionFile.<init>(PluginDescriptionFile.java:189)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:137)
    [20:47:45] [Server thread/WARN]: ... 11 more
    [20:47:45] [Server thread/WARN]: org.bukkit.plugin.InvalidPluginException: java.lang.Exception: python directories cannot be normal files! try .py or .py.zip instead.
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:107)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:92)
    [20:47:45] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:328)
    [20:47:45] [Server thread/WARN]: at org.cyberlis.pyloader.PythonLoader.onLoad(PythonLoader.java:85)
    [20:47:45] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R2.CraftServer.loadPlugins(CraftServer.java:355)
    [20:47:45] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R2.CraftServer.<init>(CraftServer.java:312)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.PlayerList.<init>(PlayerList.java:63)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.DedicatedPlayerList.<init>(SourceFile:14)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.DedicatedServer.init(DedicatedServer.java:126)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.MinecraftServer.run(MinecraftServer.java:426)
    [20:47:45] [Server thread/WARN]: at net.minecraft.server.v1_7_R2.ThreadServerApplication.run(SourceFile:618)
    [20:47:45] [Server thread/WARN]: Caused by: java.lang.Exception: python directories cannot be normal files! try .py or .py.zip instead.
    [20:47:45] [Server thread/WARN]: ... 11 more
     
  18. Автор темы
    cyber_lis

    cyber_lis Активный участник Девелопер Пользователь

    Баллы:
    68
    Имя в Minecraft:
    eadasdasdasdafasdf
    Смотри. Создай папку pallaydude.py.dir и в неё положи файлы. С zip плагин может глючить и в файл plugin.py первой строкой вставь
    # -*- coding: utf-8 -*-[DOUBLEPOST=1412962491,1412962383][/DOUBLEPOST]Когда файлы в папке их редактировать удобней и сразу перегружать можно не вырубая сервак. И посмотрив какой кодировке твой файл. Желательно чтоб в утф-8 был( без бом)[DOUBLEPOST=1412962573][/DOUBLEPOST]Да. И молодец что кинул лог ошибки. Если интерес не пропадет к моему плагину могу вк дать и там более оперативно объяснять что да как[DOUBLEPOST=1413177365][/DOUBLEPOST]
    Вышло?
     
  19. RayBM

    RayBM Активный участник Пользователь

    Баллы:
    78
    Чат завел, все хорошо работает.
    Подкиньте документацию на craftbukkit, если она есть.
    С плагинами кстати есть 1 нюанс: в пути к вашему серверу не должно быть русских букв иначе будут python'овские плагины падать.
    А вот рецепты реально какие-то косячные.
    Python один из любимых моих ЯП, что не скажешь про Java.
    Автору спасибо. Продолжай это дело.
     
  20. Artem0001

    Artem0001 Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    eWaster
    Я кажется понял что я идиот, всё не работает потому что у меня версия 1.7)
     
  21. RayBM

    RayBM Активный участник Пользователь

    Баллы:
    78
    Возможно. Лично я тестировал на 1.6.4.
    Документацию нашел. Попробую что-нибудь слепить.
    Правда такие плагины в любом случае будут грузить чуть больше как мне кажется.
     

Поделиться этой страницей