Перейти к содержанию
Опубликовано

Являясь не только анимешником, но и геймером, я большой любитель визуальных новелл. Видя их достаточно простое в большинстве случаев исполнение, я давно задумывался о возможности создания новелл своими руками. И вот недавно, бродя по просторам Сети, я наткнулся на движок визаульных новелл (), берущий большую часть технических трудностей этого процесса на себя, и к тому же очень простой в обращении. И теперь я хочу поделиться своим открытием со всеми.

Я взял на себя смелость и создал локализацию игрового интерфейса движка (файл template\localize.rpy) а также перевёл на русский демонстрацию. Всё это согласованно с создателем движка и включено в распространяемый архив, доступный с [url="http://www.renpy.org/wiki/renpy/rus" target="_blank" rel="nofollow">Русской Странички движка Ren'Py

Также я написал небольшое руководство по быстрому старту и маленькую игру-пример с некоторой информацией по визуальным новеллам по этому руководству, доступные там же

Спойлер
(не ждите ничего сверхъестественного. Сделана на скорую руку, только как пример. Приведённая в игре информация может быть предметом дискуссии. Если считаете, что она неточна -- милости прошу.)

 

От всей души надеюсь, что вас это заинтересует.

И помните, теперь судьба визуальных новелл на русском и в ваших руках!

 

ЗЫ. ОГРОМНАЯ просьба: протестируйте демо и файл локализации на предмет очепяток и отпишитесь сюда. Пожалуйста!

Изменено пользователем Гость (смотреть историю редактирования)

Цензуре - твёрдое и решительное "НЕТ"!!!

YesToFreedom.org

  • Ответов 1 тыс
  • Просмотры 382,7 тыс
  • Создана
  • Последний ответ

Топ авторов темы

Популярные посты

  • Рен'пи ожидал конец строки, а обнаружил двоеточие... (должно быть просто <jump dush>) Двоеточие ставится в конце первой строки блока - оно показывает, что последующие строки этого блока должны и

  • Что ж, не думаю что это хорошо браться с середины, но надо же хоть как то начинать)) К концку недели ждите первый перевод... наверно по порядку, так что - ATL. Может кому пример подам ^_^   Кому инте

  • Вот файл немного доделанного (не полностью) перевода для новой версии Ren'Py 6.14.1 (Откуда взял первоначальный файл не помню. Может и с этого форума ) Скачать   Положить в <Ren'Py 6.14.1/launcher/

Изображения в теме

Рекомендуемые сообщения

Опубликовано

Из остов к играм и аниме, открытых звуковых библиотек, да до фига откуда.

Кинь пожалуйста ссылку откуда можно скачать мелодии, желательно из аниме)

Опубликовано

Не закрывай рта тем кто открывает тебе глаза.

И твердо встав на ноги, не забывай тех, кто поднимал тебя на руках.

Опубликовано
ребят, посоветуйте учебник или еще что нибудь где язык python поучить можно. Желательно с нуля))
Опубликовано

http://bookwebmaster.narod.ru/python.html

 

"Учимся програмировать вместе с Питоном"

"Изучаем Python. 4-е издание"

 

А также - Язык программирования Python.

Я изучал по последнему.

Не закрывай рта тем кто открывает тебе глаза.

И твердо встав на ноги, не забывай тех, кто поднимал тебя на руках.

Опубликовано
спс, буду изучать) А вот ты на этом форуме писал, что для renpy нужно знать python 2,7. Это значит что именно его учить надо или ничего страшного если другой выучить?
Опубликовано

Именно Python ветки 2.*

Ветка 3 серьёзно отличается и Ренпи, по крайней мере пока, не поддерживается.

Не закрывай рта тем кто открывает тебе глаза.

И твердо встав на ноги, не забывай тех, кто поднимал тебя на руках.

  • 3 недели спустя...
Опубликовано

Эм... Всем привет!

 

На новеллы прочно подсел после того, как мои друзья сделали довольно неплохую новеллку. Что это за игра и с чем её едят - говорить не буду по некоторым причинам, ну да ладно, проехали.

Я делаю свою собственную новеллку, с блекджеком и девушками, с рядом РПГ-элементов. Питон знаю чуть меньше чем нифига (благо Элионт по скайпу помог с лайвбарами разобраться), однако со скринами начинаю постепенно разбираться.

Итак, в чём проблема. Взгляните на прикреплённое изображение - кое-как, но я сделал эту панельку выбора магического приёма. потом, может быть, добавлю внизу, под менюшками выбора магии, плашку, где будет описание каждого заклинания, но сейчас дело не в этом.

 

Вот код скрина выбора магии:

screen magic:
   #Скрин выбора навыков, которые можно будет использовать в бою. Пока они не реализованы абсолютно никак.
   grid 3 1:
       style_group "prefs"
       xfill True
       vbox:
           frame:
               style_group "pref"
               has hbox
               vbox:
                   label _(u"Лёд")
                   textbutton _(u"Заморозка")#"Противник в течении 5 ходов не может атаковать, т.е. неудачных блоков должно быть 5 + получает дополнительный урон в 10 единиц и плюс 50 – при получении крита"
                   textbutton _(u"Кольцо холода")# "Одновременно идёт атака по 3 направлением, 2 попадания. Возможен критический."
                    
       vbox:
           frame:
               style_group "pref"
               has hbox
               vbox:
                   label _(u"Пламя")
                   textbutton _(u"Поджог")#"Здоровье противника с каждым ходом уменьшается на 5 единиц, эффект длится до 3 пропущенных ударов."
                   textbutton _(u"Адреналин")# "В течении 10 ходов Лина получает  +30 к атаке (вероятность крита 0.4), при удачном блоке она наносит противнику 20 ед урона"

       vbox:    
           frame: 
               style_group "pref"
               has hbox
               vbox:
                   label _(u"Тьма")
                   textbutton _(u"Кража души") #здоровье противника уменьшается на 50 ед, здоровье Лины растёт на 75 единиц. Возможен магический крит в -80 у врага и +120 у Эммы (0.1)
                   textbutton _(u"Броня Тьмы") # Появляется броня в 100 единиц, если её значение больше 0, то урон, получаемый Линой, уменьшается в 10 раз. сама же броня получает полный урон.

 

Итак, вот сама проблема. Как назначить каждой клавише определённое действие? в файле со скринами я вижу вот это (фрагмент с клавишами):

label _("Display")
               textbutton _("Window") action Preference("display", "window")
               textbutton _("Fullscreen") action Preference("display", "fullscreen")

Тут на каждую клавишу уже прицеплено действие, например,

Preference("display", "window")

Однако в самом файле скринов такого действия я нигде не нашёл. Как их задавать и назначать на кнопки?!

[Madoka☆Magica] team
Опубликовано

Хай.

 

Блин, ты погляди в рецепт боёвки, специально для тебя же делал - там ответ на твой вопрос уже есть.

 

Кстати, ну ты что, кнопки дорисовал наконец?

Не закрывай рта тем кто открывает тебе глаза.

И твердо встав на ноги, не забывай тех, кто поднимал тебя на руках.

Опубликовано

Хм. походу я невнимательно в рецепт посмотрел. прости.

 

Насчёт кнопок - у меня несколько вариантов, один - листья с вырезанными на них узорами стрелок, 2 - готические стрелки с кучей завитушек, 3 - что-то в стиле моих лайбаров (ну, драгоценные камни в обрамлении металла). Всё никак не определюсь, что рисовать.

[Madoka☆Magica] team
Опубликовано

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

Начнем с того, что пролог моей новеллы вышел(Если кому интересны психологические триллеры - прошу проследовать по ссылочке: http://rutracker.org/forum/viewtopic.php?t=4386213). А тем временем к вопросам:

1. Как сделать так, чтобы при нажатии на кнопку "Новая Игра" был выбор глав? То есть грубо говоря начинать текст сначала или с определенного места.

2. Как анимировать бекграунд в новелле? Например, потрясти определенную часть или что-то в этом роде. А так же очень интересно, как сделать это не в одной реплике, а на протяжении, например, нескольких.

3. Как сделать нечто вроде скриптовых роликов - чтоб игрок просто смотрел за анимацией/выводом текста на экран и даже при нажатии ЛКМ он ничего не мог пропустить?

 

Очень хотелось бы получить ответы на эти вопросы. И заранее извиняюсь за возможную глупость и обыденность.

Всем спасибо.

Опубликовано

1. В начале метки start сделать меню с названиями глав или показать screen на котором будет красочный imagemap

menu:
   "Chapter 1":
       jump ch_1
   "Chapter 2" if persistent.chapter_1_seen:
       jump ch_2

 

2. Для того, чтобы просто потрясти экран есть vpunch и hpunch (описаны в игре-примере). Для создания анимации или эффектов, которые можно применять к картинкам на экране на протяжении нескольких реплик надо использовать ATL

http://www.renpy.org/doc/html/atl.html

 

 

3. Можно по-разному, например

transform my_transf:
   alpha 0.1 xalign 0.6 yalign 0.5
   parallel:
       linear 1.5 alpha 1.0
       linear 1.5 alpha 0.1
   parallel:
       linear 3.0 xalign 0.4

# The game starts here.
label start:

   e "You've created a new Ren'Py game."
   # (c) http://slipsum.com/
   show text "Now that there is the Tec-9," at my_transf
   $ renpy.pause(3.0, hard=True)
   show text "a crappy spray gun from South Miami." at my_transf
   $ renpy.pause(3.0, hard=True)
   show text "This gun is advertised as" at my_transf
   $ renpy.pause(3.0, hard=True)
   show text "the most popular gun in American crime." at my_transf
   $ renpy.pause(3.0, hard=True)
   show text "Do you believe that shit?" at my_transf
   $ renpy.pause(3.0, hard=True)
   hide text

   e "Once you add a story, pictures, and music, you can release it to the world!"

   return

Опубликовано

Алекс__, спасибо большое, вот только я не очень понял, куда и как записать эти Chapter'ы?

И еще, попробовал создать мувик по твоему скрипту - не работает.

Опубликовано

Алекс__, спасибо большое, вот только я не очень понял, куда и как записать эти Chapter'ы?

И еще, попробовал создать мувик по твоему скрипту - не работает.

while пробовал - не работает:
   хм, у меня все работает

Что именно не работает - есть сообщение об ошибке, на экране ничего не появляется, надпись появляется, но не тек как хотелось бы? Какую версию Рен'пи вы используете (для ATL нужна минимум 6.10, для ScreenLanguage - 6.11)?

 

init python:
   # если у постоянной переменной (лол) еще нет никакого значения, установим значение Ложь
   if not persistent.chapter_1_seen:
       persistent.chapter_1_seen = False
   if not persistent.chapter_2_seen:
       persistent.chapter_2_seen = False

label start:
   menu:
       "Chapter 1":
           jump ch_1
       "Chapter 2" if persistent.chapter_1_seen:
           jump ch_2

label ch_1:
   "глава 1"
   $ persistent.chapter_1_seen = True
   return    # возврат в главное меню
   # jump start    # или возврат к выбору глав

label ch_2:
   "глава 2"
   $ persistent.chapter_2_seen = True
   return    # возврат в главное меню
   # jump start    # или возврат к выбору глав

Опубликовано

Алекс__ , вот, спасибо, чаптеры теперь работают.

А при попытке сделать сценку -

On line 1 of С:\путь к игре/game/script.rpy: expected statement.
transform my_transf:
         ^

Опубликовано

Какую версию Рен'пи вы используете?

6.9.3 Rus, как вещает заголовок.

Опубликовано

Надо обновляться - для ATL нужна версия минимум 6.10, для ScreenLanguage - 6.11.

Перевод модуля запуска 6.11 есть (http://www.renpy.org/wiki/renpy/doc/translations/Russian/ver_6_11_2)

Перевод статьи по языку анимации и трансформаций (ATL), также сделали (на русской страничке есть ссылка http://www.renpy.org/wiki/renpy/rus)

Опубликовано

Надо обновляться - для ATL нужна версия минимум 6.10, для ScreenLanguage - 6.11.

Перевод модуля запуска 6.11 есть (http://www.renpy.org/wiki/renpy/doc/translations/Russian/ver_6_11_2)

Перевод статьи по языку анимации и трансформаций (ATL), также сделали (на русской страничке есть ссылка http://www.renpy.org/wiki/renpy/rus)

Что-то я и в правду сглупил. Спасибо Вам огромное, все работает.

Опубликовано
Элионт, слушай. я уже сколько времени пытаюсь понять рецепт боёвки. что ты мне кинул, ни х*я не понимаю. С кнопкой ещё кое-как понял вроде, но и всё...
[Madoka☆Magica] team
Опубликовано

У меня вот такой вот вопрос. Использую скрины, нужно сделать кнопку, которая будет находиться на скрине, но только до тех пор, пока не обнулится определённая величина.

 

  screen items:
   button:
       area (600,400,200,80)
       text "Применить ракету. \n Осталось %($rocket)s шт"
       action Jump ("rocket")

 

Однако если я напишу вот так:

 screen items:
   button if rocket > 0:
       area (600,400,200,80)
       text "Применить ракету. \n Осталось %($rocket)s шт"
       action Jump ("rocket")

 

Ренпи возмущается и посылает меня матом. Что делать?

 

Ещё один вопрос. Какие вообще действия можно навесить на "action"? Полный список. если можно. С пояснениями =)

Изменено пользователем Zapor (смотреть историю редактирования)

[Madoka☆Magica] team
Опубликовано

Учить питон.

 

screen items:
   if rocket > 0:
       button:
           area (600,400,200,80)
           text "Применить ракету. \n Осталось %($rocket)s шт"
           action Jump ("rocket")

Не закрывай рта тем кто открывает тебе глаза.

И твердо встав на ноги, не забывай тех, кто поднимал тебя на руках.

Опубликовано

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

 

image armor_anim:
        "Images/zapor/armor_red_1.png" with dissolve 
        pause .5
        "Images/zapor/armor_red_2.png" with dissolve 
        pause .5
        repeat

 

Картинку мы обьявили, теперь размещаем её на экране...

  button:
       area (0,230,210,200)
       background(image armor_anim)

И вот тут РенПи посылает меня сами понимаете куда. Действия на кнопку не навешиваю, т.к. это информационный скрин. С одиночной картинкой, вписываемой на место "image armor_anim", всё работает, но мне нужна именно анимация.

 

Что делать? Если размещать изображение не через скрин, то ещё неясно, как именно вставить её точно на нужное место. А статичная картинка... :/

 

*а, всё, разобрался. Однако возникает другая беда - в изображении есть прозрачные участки, и при смене кадров с включенным переходом эти участки становятся чёрными. Есть ли способ исправить?

Изменено пользователем Zapor (смотреть историю редактирования)

[Madoka☆Magica] team
Опубликовано

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

По поводу проблем с dissolve'ом - немного измените ваш код http://www.renpy.org/doc/html/atl.html#expression-statement

Если надо сделать экран с картинкой, то поможет команда add - http://www.renpy.org/doc/html/screens.html#add

Проблема с вашей анимированой картинкой скорее всего в том, что ее название надо написать в кавычках <background("image armor_anim")> иначе Рен'пи считает, что вы используете переменную image armor_anim значение которой вы, конечно же, не присваивали ранее.

  • 5 недель спустя...
Опубликовано

Приветствую всех форумчан, доброго времени суток. Вернулся для представления своей визуалки, пока что первая, но со временем восстановлю и второй проект.

Моя новелла

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

Последние посетители 0

  • Ни одного зарегистрированного пользователя не просматривает данную страницу

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.