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

Разработка игр на RenPy, обсуждение реализации, вопросы "Как сделать?"
Аватар пользователя
Skaz
Администратор
Сообщений: 1992
Зарегистрирован: 30 июл 2015, 14:52
Контактная информация:

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

Сообщение Skaz » 17 июн 2017, 12:39

VladOstin писал(а):Здравствуйте. Возникла небольшая проблема с файлами формата .rpa, человек я не подкованный в этом деле, но решил перевести одну интересную игру на русский, а весь текст зачем-то запихнули в .rpa файлы. Есть notepad++, могу открыть сам rpa и перевести, но половина файла с текстом, а половина с иероглифами (в rpa 2 файла лежит), распаковал этот rpa, получил 2 файла, перевел, а вот как запихнуть обратно в этот самый rpa - не могу понять? Помогите кто чем сможет.
Сам rpa распаковывал rpa extractor, как понимаю - это вещь самописная и может только распаковать. Почитал немного по создание rpa через Питона, но понять как это сделать - я не в силах, нужна мини-инструкция.

VladOstin, запаковывать необязательно.
* Распакуйте архив.
* Распакованное содержимое поместите в папку game (где находится архив) , а сам архив удалите. Это должно работать точно так же, как первоначальная игра. Если работает, значит распаковано корректно.
* Замените файлы, которые вы перевели.
Все.

VladOstin
Сообщений: 5
Зарегистрирован: 17 июн 2017, 12:16

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

Сообщение VladOstin » 17 июн 2017, 13:05

Skaz писал(а):[VladOstin, запаковывать необязательно.
* Распакуйте архив.
* Распакованное содержимое поместите в папку game (где находится архив) , а сам архив удалите. Это должно работать точно так же, как первоначальная игра. Если работает, значит распаковано корректно.
* Замените файлы, которые вы перевели.
Все.

Спасибо, с этим решен вопрос и правда - запаковывать не обязательно.

Перевод делаю через тот же notepad++, но игра не распознает русский, вместо этого выдает квадратики. Эта проблема уже серьезней или так же легко исправить?

VladOstin
Сообщений: 5
Зарегистрирован: 17 июн 2017, 12:16

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

Сообщение VladOstin » 17 июн 2017, 14:06

Добавлю информацию: кодировка самого файла UTF-8. Пробовал перекодировать в UTF-8-BOM, та же петрушка.

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

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

Сообщение dmit » 17 июн 2017, 15:21

Возможно в игре используется шрифт не поддерживающий кириллицу. Проверьте, есть ли в распакованных архивах файлы шрифтов? Если да, то поддерживают они кириллицу? Если нет, то замените их на поддерживающие. Можно на любой похожий шрифт, переименовав его файл в заменяемый..

VladOstin
Сообщений: 5
Зарегистрирован: 17 июн 2017, 12:16

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

Сообщение VladOstin » 17 июн 2017, 15:37

dmit писал(а):Возможно в игре используется шрифт не поддерживающий кириллицу. Проверьте, есть ли в распакованных архивах файлы шрифтов? Если да, то поддерживают они кириллицу? Если нет, то замените их на поддерживающие. Можно на любой похожий шрифт, переименовав его файл в заменяемый..

Спасибо. Очень помог :)

VladOstin
Сообщений: 5
Зарегистрирован: 17 июн 2017, 12:16

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

Сообщение VladOstin » 24 июн 2017, 00:02

Итак, опять приходится отвлекать вас всякими глупостями... На днях решил опробовать что-то свое сляпать в РенРу и натолкнулся на некоторую мысль, допустим:
1. Есть 2 варианта картинок с нумерацией (img_d1_1, img_d2_1, img_d3_1... и img_d1_2, img_d2_2, img_d3_2...) , вывод которых зависит от того или иного выбора в процессе игры;
2. Имеется некая переменная по данному событию, которая запомнит выбор 1 или 2.
При обычном раскладе придется писать тексты для 2 вариантов (разные одежды и прочее).

Так вот, суть вопроса: можно ли задать данный выбор переменной, к примеру - i, а потом эту переменную как-то присвоить самой картинке, чтобы получилось что-то вроде img_d1_i, img_d2_i, img_d3_i..., а в игре выводился нужный вариант картинки?
Пример:
Meny:
"Одеть красное платье":
$ i = 1
m "Пойду ка я погуляю в красном платье"
"Одеть черное платье":
m "Пойду ка я погуляю в черном платье"
$ i = 2

img_d1_i, где i = 1 - картинка в красном платье, 2 - картинка в черном платье.
Как я понимаю, то при таком раскладе мне не придется писать 2 одинаковых текста для разных платьев или не добавлять кучу условий в диалогах для выбора той или иной картинки, чтобы не усложнить себе работу.

P.S.: Извиняюсь, если непонятно объяснил суть проблемы, голова пока не варит в этой тематике.

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

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

Сообщение dmit » 25 июн 2017, 20:45


A_Raw
Сообщений: 5
Зарегистрирован: 22 мар 2017, 23:54

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

Сообщение A_Raw » 04 июл 2017, 09:56

Очень нужна помощь, не могу найти нигде информацию. Как вывести на экран спрайт, чтобы он был зеркально отражён? (т.е в оригинале, например, персонаж смотрит влево, а нужно вывести на экран, чтобы вправо).

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

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

Сообщение Skaz » 04 июл 2017, 10:20

A_Raw писал(а):Очень нужна помощь, не могу найти нигде информацию. Как вывести на экран спрайт, чтобы он был зеркально отражён? (т.е в оригинале, например, персонаж смотрит влево, а нужно вывести на экран, чтобы вправо).

Вот так:

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

image eileen flip = im.Flip("eileen_happy.png", vertical=True)


В документации это здесь:
https://www.renpy.org/doc/html/displaya ... ml#im.Flip

A_Raw
Сообщений: 5
Зарегистрирован: 22 мар 2017, 23:54

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

Сообщение A_Raw » 04 июл 2017, 10:54

я так понимаю, что это при объявлении изображений, возможность объявить его зеркально по отношению к файлу с рисунком. А нет ли способа при выводе (когда пишем show eileen) указать, что уже объявленное изображение должно вывестись зеркально?

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

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

Сообщение dmit » 04 июл 2017, 19:25

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

show eileen:
    xzoom -1

A_Raw
Сообщений: 5
Зарегистрирован: 22 мар 2017, 23:54

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

Сообщение A_Raw » 27 июл 2017, 19:19

Огромное спасибо за помощь, и у меня ещё вопрос: есть ли в ренпи возможность написать такой код для нажатия кнопки, чтобы по нему, например, стирались все файлы сохранений игры? Если кто знает, напишите пример, пожалуйста, очень нужно.

SeoLeo
Сообщений: 3
Зарегистрирован: 28 июл 2017, 12:54

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

Сообщение SeoLeo » 28 июл 2017, 12:57

Добрый день.
Не подскажите, как сделать так, чтобы таймер перезапускался после истечения времени

if timeG > 0:
timer 0.01 repeat True action [SetVariable("timeG", timeG - .01)]
if timeG <= 0:
$HP -= 10;
$timeG = 2.0

Написал такой код, однако это работает лишь один раз. Грубо говоря, мне нужно, чтобы через каждые 2 секунды из переменной HP вычиталось 10 единиц. Пока это работает лишь один раз, т.е. прошло время, отнялось 10 единиц и все.

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

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

Сообщение Skaz » 28 июл 2017, 13:13

SeoLeo писал(а):Добрый день.
Не подскажите, как сделать так, чтобы таймер перезапускался после истечения времени

if timeG > 0:
timer 0.01 repeat True action [SetVariable("timeG", timeG - .01)]
if timeG <= 0:
$HP -= 10;
$timeG = 2.0

Написал такой код, однако это работает лишь один раз. Грубо говоря, мне нужно, чтобы через каждые 2 секунды из переменной HP вычиталось 10 единиц. Пока это работает лишь один раз, т.е. прошло время, отнялось 10 единиц и все.

Посмотрите цикл while. Насколько я понял, вам нужно что-то вроде:

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

while <условие когда нужно вычитать>:
<ваш код>


Но не вполне понятна сама конструкция - зачем каждую сотую секунды вычитать из переменной одну сотую?

SeoLeo
Сообщений: 3
Зарегистрирован: 28 июл 2017, 12:54

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

Сообщение SeoLeo » 28 июл 2017, 13:18

Но не вполне понятна сама конструкция - зачем каждую сотую секунды вычитать из переменной одну сотую?


А ведь правда...

Спасибо, последняя строчка натолкнула меня на верную мысль и я все сделал)
Благодарю за внимание)

SeoLeo
Сообщений: 3
Зарегистрирован: 28 июл 2017, 12:54

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

Сообщение SeoLeo » 28 июл 2017, 23:30

Снова я, извините за глупый вопрос, как осуществить смену картинки по клику и возвращению ее обратно через некоторое время?
У меня небольшой кликер и хотелось бы, чтобы при клике на кнопку изображение уменьшалось, а затем снова возвращалась в привычный размер.

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

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

Сообщение dmit » 29 июл 2017, 15:58

SeoLeo писал(а):У меня небольшой кликер

Я не знаю что Вы конструируете, но как идея: показать по клику трансформацию:

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

transform tr:
    im.Scale("11.png",200,300)
    pause 2.0
    "11.png"

где сначала уменьшенное изображение, через 2 сек - нормальное

gtertiof
Сообщений: 2
Зарегистрирован: 07 авг 2017, 15:09

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

Сообщение gtertiof » 07 авг 2017, 15:19

Подскажите пожалуйста как в готовую игру("Witch Trainer") добавить новую одежду для персонажа через Ren'Py SDK? Подойдет даже замена старых файлов .png на новые картинки. Если это трудно объяснить буду рад и ссылке на статью, где данный момент разжевывается. Заранее благодарю.

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

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

Сообщение Skaz » 07 авг 2017, 19:25

gtertiof писал(а):Подскажите пожалуйста как в готовую игру("Witch Trainer") добавить новую одежду для персонажа через Ren'Py SDK? Подойдет даже замена старых файлов .png на новые картинки. Если это трудно объяснить буду рад и ссылке на статью, где данный момент разжевывается. Заранее благодарю.
Распакуйте архив, здесь описано как: viewtopic.php?f=10&t=2#p12 и замените файлы png.

gtertiof
Сообщений: 2
Зарегистрирован: 07 авг 2017, 15:09

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

Сообщение gtertiof » 09 авг 2017, 14:33

Помог ваш совет. Спасибо! А не подскажете как добавить новые предметы одежды без удаления старых?

pepe
Сообщений: 6
Зарегистрирован: 03 авг 2017, 17:05

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

Сообщение pepe » 09 авг 2017, 19:38

gtertiof писал(а):Помог ваш совет. Спасибо! А не подскажете как добавить новые предметы одежды без удаления старых?

пройти обучение в последней версии движка, там это наглядно показано.

badgamer
Сообщений: 12
Зарегистрирован: 06 авг 2017, 19:20

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

Сообщение badgamer » 10 авг 2017, 15:20

Наверное бредовый вопрос:
Я вообще не знаю питона. Немного говнокодю на С++ и С# . Питон допускает вставку сишного кода. Можно ли работать с RenPy на С++ ?

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

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

Сообщение dmit » 10 авг 2017, 19:07

renpy и есть питон. Не знаю зачем Вам в ВН сишный код, но при желании можно подключить всё. Конкретно ищите применение в питоне.

tadome
Сообщений: 12
Зарегистрирован: 04 авг 2017, 07:43

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

Сообщение tadome » 11 авг 2017, 19:37

Буду благодарен за подсказку. Как сделать :?:

Есть десять переменных, им надо присвоить(распределить) значения РАНДОМНО от 1 до 10.
т.е. например переменные vp1, vp2, vp3 и т.д. и среди них надо рандомно распределить числа 1, 2, 3 и т.д
допустим первый проход vp1=3, vp2=10, vp3=7 и т.д., числа не должны повторятся, а должны распределятся.
второй проход vp1=10, vp2=1, vp3=2 ну то есть рандомно распределяются =)
Кто знает, подсобите.

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

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

Сообщение dmit » 11 авг 2017, 20:25

Проще воспользоваться списком а не десятью переменными:

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

define vp = []   
label start:
    $ vp = [1,2,3,4,5,6,7,8,9,0]
    $ renpy.random.shuffle(vp) #перемешивание списка
    $ a = " ".join(map( str, vp )) #преобразование числового списка для показа
    "%(a)s"
    $ a = vp[0] #нулевой элемент списка
    "%(a)s"
    $ a = vp[1] #первый элемент
    "%(a)s"
    jump start


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

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

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