Вопросы-ответы по RenPy

Разработка игр на RenPy, обсуждение реализации, вопросы "Как сделать?"
sjonsjonsins
Сообщений: 2
Зарегистрирован: 13 мар 2016, 20:12

Re: Вопросы-ответы по RenPy

Сообщение sjonsjonsins » 13 мар 2016, 22:16

Здравствуйте, распаковал .rpa файл при помощи RPAExtractor по инструкции в этой теме, подредактировал некоторые .png файлы, и столкнулся с проблемой: как же запаковать обратно, что бы в игре отобразились изменения? ЗЫ: с Питоном не знаком, как и с движком.

Аватар пользователя
Khan
Сообщений: 879
Зарегистрирован: 30 июл 2015, 17:38
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Khan » 13 мар 2016, 22:24

sjonsjonsins писал(а):Здравствуйте, распаковал .rpa файл при помощи RPAExtractor по инструкции в этой теме, подредактировал некоторые .png файлы, и столкнулся с проблемой: как же запаковать обратно, что бы в игре отобразились изменения? ЗЫ: с Питоном не знаком, как и с движком.

Если распаковали, можно обратно не запаковывать, дабы проверить результат.

Аватар пользователя
Skaz
Администратор
Сообщений: 1551
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Skaz » 13 мар 2016, 22:26

sjonsjonsins писал(а):Здравствуйте, распаковал .rpa файл при помощи RPAExtractor по инструкции в этой теме, подредактировал некоторые .png файлы, и столкнулся с проблемой: как же запаковать обратно, что бы в игре отобразились изменения? ЗЫ: с Питоном не знаком, как и с движком.

Запаковывать не нужно. Скопируйте распакованное содержимое archive.rpa в папку game, сам archive.rpa удалите. Все будет работать.

wiy
Сообщений: 54
Зарегистрирован: 03 окт 2015, 07:49

Re: Вопросы-ответы по RenPy

Сообщение wiy » 15 мар 2016, 15:32

Здравствуйте у меня пара вопросов о коде RenPy.
1) В обучении сказано, как заменить существующее имя гг (главного героя)

define e = Character('Эйлин', color="#c8ffc8") - на то которое устраивает иградела.
Я же хочу сделать, чтобы игрок сам выбрал имя (гг).
Как выглядит код ?

2) В меню игры не как не могу понять, как сделать новую кнопку. Там стандарт :
textbutton _("Начать игру") action Start()
textbutton _("Загрузить игру") action ShowMenu("load")
textbutton _("Настройки") action ShowMenu("preferences")
textbutton _("Справка") action Help()
textbutton _("Выход") action Quit(confirm=False)
Я хочу добавить еще одну кнопку (об игре) и не как не могу понять в чем ошибка.
Я пробовал сделать переход на Start1 или создать свой собственный переход (obigre) но движок чего-то хочет еще.
Если можно то объясните, что я проглядел.

Аватар пользователя
DoctorBooooom
Сообщений: 41
Зарегистрирован: 03 авг 2015, 03:01

Re: Вопросы-ответы по RenPy

Сообщение DoctorBooooom » 15 мар 2016, 16:18

name = renpy.input("Введите имя")
define e = Character(name , color="#c8ffc8")

wiy
Сообщений: 54
Зарегистрирован: 03 окт 2015, 07:49

Re: Вопросы-ответы по RenPy

Сообщение wiy » 15 мар 2016, 17:08

DoctorBooooom писал(а):name = renpy.input("Введите имя")
define e = Character(name , color="#c8ffc8")


Не работает этот код. Ошибку выдает.

wiy
Сообщений: 54
Зарегистрирован: 03 окт 2015, 07:49

Re: Вопросы-ответы по RenPy

Сообщение wiy » 17 мар 2016, 17:09

Как музыку вставить в главное меню?

Аватар пользователя
suhi
Сообщений: 113
Зарегистрирован: 01 авг 2015, 16:45
Откуда: Одесса
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение suhi » 03 апр 2016, 17:11

wiy писал(а):Как музыку вставить в главное меню?

Если в главное - открываешь option.rpy и впиши строку config.main_menu_music = "menu.mp3"

Аватар пользователя
dmit
Сообщений: 30
Зарегистрирован: 28 апр 2016, 00:03

Re: Вопросы-ответы по RenPy

Сообщение dmit » 28 апр 2016, 00:16

У меня 2 вопроса:
1. где можно изменить реакцию на правый клик мышью?
2. как можно организовать при отладке кода вывод информации ( что то типа MsgBox ) ?
пасиб

Аватар пользователя
Skaz
Администратор
Сообщений: 1551
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Skaz » 29 апр 2016, 10:36

dmit писал(а):У меня 2 вопроса:
1. где можно изменить реакцию на правый клик мышью?
2. как можно организовать при отладке кода вывод информации ( что то типа MsgBox ) ?
пасиб

Вот здесь покопайтесь:
https://www.renpy.org/doc/html/keymap.html

Там же ответ и на второй ваш вопрос - сочетание клавиш для вызова отладочной консоли.

Аватар пользователя
dmit
Сообщений: 30
Зарегистрирован: 28 апр 2016, 00:03

Re: Вопросы-ответы по RenPy

Сообщение dmit » 09 май 2016, 20:51

Я отобразил экран мини игры:

Код: Выбрать все

screen game:
    modal True
       
    window:
        style "mm_root"   
        background "bg nac"
    vbox:
       
        frame:
            xalign .5
            has hbox
            textbutton _("Начать записать") yalign .5 action Function(zapis)

как при нажатии кнопки "Начать записать" (точнее в функции zapis) изменить текст на кнопке на "Остановить запись".
Или в общем - Как поменять параметры элементов экрана (текст, окраска, видимость, доступность , положение и т.д.)?
спасиб

Pith
Сообщений: 1
Зарегистрирован: 13 май 2016, 16:54

Re: Вопросы-ответы по RenPy

Сообщение Pith » 13 май 2016, 17:00

Приветствую.
У меня вопрос: как можно скрыть код игры, кроме архива rpa, ведь его можно легко открыть?

Пысы, на вашем сайте нашел много интересной информации, спасибо.

Аватар пользователя
Skaz
Администратор
Сообщений: 1551
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Skaz » 13 май 2016, 17:14

Pith писал(а):Приветствую.
У меня вопрос: как можно скрыть код игры, кроме архива rpa, ведь его можно легко открыть?

Пысы, на вашем сайте нашел много интересной информации, спасибо.

Скрыть код RenPy нельзя.

Аватар пользователя
DoctorBooooom
Сообщений: 41
Зарегистрирован: 03 авг 2015, 03:01

Re: Вопросы-ответы по RenPy

Сообщение DoctorBooooom » 13 май 2016, 19:01

Skaz писал(а):
Pith писал(а):Приветствую.
У меня вопрос: как можно скрыть код игры, кроме архива rpa, ведь его можно легко открыть?

Пысы, на вашем сайте нашел много интересной информации, спасибо.

Скрыть код RenPy нельзя.

Неправда, но если я расскажу как, то его можно будет вскрыть обратными действиями)

Как пример - защищённая картинка, и защищённый код:
Картинка - https://yadi.sk/d/nw0nsPbkrgzg2
Код - https://yadi.sk/d/hrUyTg47rgzrU

Аватар пользователя
Skaz
Администратор
Сообщений: 1551
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Skaz » 13 май 2016, 22:15

DoctorBooooom писал(а):Неправда, но если я расскажу как, то его можно будет вскрыть обратными действиями)

Как пример - защищённая картинка, и защищённый код:
Картинка - https://yadi.sk/d/nw0nsPbkrgzg2
Код - https://yadi.sk/d/hrUyTg47rgzrU

Я до сих пор не встречал ни одного случая, чтобы код на RenPy не взломали. Значит, ты владеешь уникальным знанием и разгромил всех хакеров и крекеров. ;)

Аватар пользователя
DoctorBooooom
Сообщений: 41
Зарегистрирован: 03 авг 2015, 03:01

Re: Вопросы-ответы по RenPy

Сообщение DoctorBooooom » 14 май 2016, 03:07

Всё можно взломать, цель усложнить и сделать это делом нестандартным. Когда требуется просто запустить скрипт - то каждый справится, а когда надо копаться в исходниках ренпи в поисках сделанных модификаций, а потом на основе найденных алгоритмов разбирать файлы, то это совсем другие затраты труда и времени

Аватар пользователя
Skaz
Администратор
Сообщений: 1551
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

Re: Вопросы-ответы по RenPy

Сообщение Skaz » 14 май 2016, 08:11

DoctorBooooom писал(а):Всё можно взломать, цель усложнить и сделать это делом нестандартным. Когда требуется просто запустить скрипт - то каждый справится, а когда надо копаться в исходниках ренпи в поисках сделанных модификаций, а потом на основе найденных алгоритмов разбирать файлы, то это совсем другие затраты труда и времени

Если вопрос именно в усложнить, безусловно, тебе это удалось.

xela
Сообщений: 4
Зарегистрирован: 14 май 2016, 00:09

Re: Вопросы-ответы по RenPy

Сообщение xela » 14 май 2016, 12:21

DoctorBooooom писал(а):цель усложнить и сделать это делом нестандартным


Это у кого какая цель, ну и что если будет сломано за час или два... а не за 5 минут (даже если за сутки, у разработчиков с бюджетами в миллионы долларов всё н***р переломали). У разработчика РенПи на мой взгляд самый мудрый подход... не играть в кошки-мышки а заниматься делом (типа кодом, рисунками да и разработкой игр в общем).

Аватар пользователя
dmit
Сообщений: 30
Зарегистрирован: 28 апр 2016, 00:03

Re: Вопросы-ответы по RenPy

Сообщение dmit » 15 май 2016, 18:26

Подскажите, а то я в таймерах совсем запутался...
Есть задача проиграть несколько коротких звуковых файлов (менее 1 сек) через определённые интервалы времени (0,1-10 сек)
Попытался ui.timer time.sleep renpy.pause ни чего не выходит (или я такой тупой). Просто хотел отследить renpy.get_game_runtime() в цикле, то же не работает (0 выдаёт постоянно).
Может быть у кого-нибудь есть простой пример аналогичной задачи?
спс

Аватар пользователя
dmit
Сообщений: 30
Зарегистрирован: 28 апр 2016, 00:03

Re: Вопросы-ответы по RenPy

Сообщение dmit » 15 май 2016, 20:47

Код: Выбрать все

        kmax = len(wrem)-1
        k = 0
        t1= time.time()
        while k<kmax:
            t2 = time.time()
            if (t2-t1)>(wrem[k]):
                nwav = nnot[k]
                renpy.music.play("snd/%s.wav" % (nwav), channel="sound")
                k+=1

И так не работает - звук только последний в цикле воспроизводит, а так вроде как пока цикл идёт звук блокируется :(

xela
Сообщений: 4
Зарегистрирован: 14 май 2016, 00:09

Re: Вопросы-ответы по RenPy

Сообщение xela » 15 май 2016, 20:52

Можно через ui.timer(), можно через screen timer. Можно просто создать playlist с silence когда зунжна пауза, типа: https://lemmasoft.renai.us/forums/viewt ... ce#p403639

Вопрос тут: Почему не получилось? С time.sleep это понятно, так делать не надо. С renpy.pause должно было сработать но это выйдет неулкюжо. С ui.timer всё должно было быть в шоколаде, через screen timer может даже ещё проще.

xela
Сообщений: 4
Зарегистрирован: 14 май 2016, 00:09

Re: Вопросы-ответы по RenPy

Сообщение xela » 15 май 2016, 20:56

dmit писал(а):channel="sound"


Если нужно несколько звуков на одном канале, должно быть: channel="audio"

Как я уже сказал, лучше через таймеры...

Аватар пользователя
dmit
Сообщений: 30
Зарегистрирован: 28 апр 2016, 00:03

Re: Вопросы-ответы по RenPy

Сообщение dmit » 15 май 2016, 22:05

Спасибо за channel="audio", но теперь ясно точно, что до окончания цикла воспроизведение блокируется. После все файлы вываливаются сразу в динамики. В VB такие проблемы разруливаются - DoEvents, а тут ...
Интересная ссылка про тэги для воспроизведения аудио файлов, но для моего случая не совсем подходит, т.к. файлы разной длинны (хоть и не большой).
Попробую ещё раз с таймерами, sleep и pause действуют также - звук воспроизводиться после цикла (
Ещё вопрос можно использовать сразу несколько таймеров, т.е. единовременно запустить все файлы с разных по времени таймеров? Или организовать - отработал один таймер - включился второй- и тд (типа рекурсия по таймеру) ?

xela
Сообщений: 4
Зарегистрирован: 14 май 2016, 00:09

Re: Вопросы-ответы по RenPy

Сообщение xela » 15 май 2016, 23:31

Как то так?

Код: Выбрать все

init python:
    def func(data):
        for delay, sound in data:
            ui.timer(delay, Play("audio", sound))
       
label start:
    $ data = [(.17, "path/file1.ogg"), (2.2, "path/file2.ogg"), (.2, "path/file3.ogg"), (.7, "path/file1.ogg")]
    $ func(data)
    pause

lialikO
Сообщений: 1
Зарегистрирован: 27 май 2016, 15:56

Re: Вопросы-ответы по RenPy

Сообщение lialikO » 27 май 2016, 16:00

Здравствуйте, сильно туплю с экранами. Создал его, как его объявить в скриптах? До предела туплю над этим.


Вернуться в «Разработка игр на RenPy»

Кто сейчас на форуме

Количество пользователей, которые сейчас просматривают этот форум: нет зарегистрированных пользователей и 1 гость