Перейти к содержимому

Фотография

Визуальные новеллы своими руками.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 1019

#481 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 28 Декабрь 2011 - 08:35

Коллекция ресурсов для создания игр (RenPy, Game Maker, RpgMaker XP / VX)

Я её таки собрал и выложил. Уже 5 полных сидов, так что со скачиванием проблем не должно быть если кого заинтересует.

Также раздаётся здесь.
  • 1

#482 Funkybeat

Funkybeat
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 84
2
Обычный

Отправлено 28 Декабрь 2011 - 15:34

Спасибо за труды. Собираюсь начать.
  • 1

#483 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 29 Декабрь 2011 - 22:11

С видео разобрался. Спасибо всем за помощь.

По поводу ролика вначале игры: так и не понял где и что необходимо написать что бы ролик был показан вначале. Я в англ не силен (промптом переводил) так что если можно по русски объясните. Зарание спасибо )
  • 0

#484 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 30 Декабрь 2011 - 12:24

Вставь этот фрагмент в код своей новеллы, запусти, посмотри что получится.
label splashscreen:
    $ renpy.pause(0)
    scene black
    show text "American Bishoujo Presents..." 
    with dissolve
    with Pause(1.0)

    hide text 
    with dissolve

    return

Затем вместо show text "American Bishoujo Presents..." with dissolve вставь видюху.
В теории должно работать, хотя сам не пробовал. и пожалуйста отпишись о результатах потом.
  • 0

#485 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 30 Декабрь 2011 - 13:30

Получилось. Вставил перед label start. Большое спасибо:)
  • 0

#486 Funkybeat

Funkybeat
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 84
2
Обычный

Отправлено 30 Декабрь 2011 - 21:15

Кстати, как сделать так, чтобы текст выводился не сразу целиком, а постепенно?
  • 0

#487 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 31 Декабрь 2011 - 11:15

Этот и следующий пост.

Твоя проблема?
  • 0

#488 Funkybeat

Funkybeat
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 84
2
Обычный

Отправлено 31 Декабрь 2011 - 14:03

Да, действительно, спасибо. Иногда ищешь решение в самых глубоких местах, а оно прямо перед носом=)

Сообщение отредактировал Flaest: 31 Декабрь 2011 - 14:03

  • 0

#489 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 02 Январь 2012 - 21:49

Хочу сделать такую штуку: на экране вид из бинокля и четыре стрелочки (вверх, вниз, вправо, влево), нажимая на которые мы перемещаемся по картинке. Подскажите как это можно сделать?
  • 0

#490 Алекс__

Алекс__
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 186
21
Хороший

Отправлено 03 Январь 2012 - 01:45

Вот - как вариант (правда сохранение работает не верно - при загрузке бинокль окажется в первоначальном положении)
define e = Character('Eileen', color="#c8ffc8")

image bg:
        "bg.png"

        
screen binoculars:
    modal True
    add "bin.png" alpha 0.7 # параметр alpha надо убрать - сейчас он здесь для того, чтоб было видно как двигается картинка на заднем плане
    vbox:
        xalign 1.0 yalign 0.5
        textbutton "up" action SetVariable("bg_yalign", max(-0.2, (bg_yalign-0.1) )  )   	#максимальные и минимальные значения надо подобрать так, чтобы картинка на заднем фоне не "убегала" за края бинокля
        hbox:
            textbutton "left" action SetVariable("bg_xalign", max(-0.2, (bg_xalign-0.1) )  )
            null width 20
            textbutton "right" action SetVariable("bg_xalign", min( 1.2, (bg_xalign+0.1) )  )
        textbutton "down" action SetVariable("bg_yalign", min( 1.2, (bg_yalign+0.1) )  )
        textbutton "X" action [Hide("binoculars"), Hide("back_view") ]
    
screen back_view:
    add "bg" zoom 2.0 xalign bg_xalign yalign bg_yalign

# The game starts here.
label start:
    $ bg_xalign = 0.5
    $ bg_yalign = 0.5
    
    scene bg
    e "You've created a new Ren'Py game."
    show screen back_view
    show screen binoculars
    $ renpy.pause(0.001)
    e "Once you add a story, pictures, and music, you can release it to the world!"
    "..."

    return

Прикрепленные файлы

  • Прикрепленный файл  pics.rar   44,68К   10 скачиваний

  • 0

#491 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 03 Январь 2012 - 17:40

Попробовал создать новый проект, вставил туда данный код, выдает ошибку:
I'm sorry, but errors were detected in your script. Please correct the
errors listed below, and try again.


On line 10 of C:\Documents and Settings\Admin\Рабочий стол\Проги\bino/game/script.rpy: expected '=' not found.
image bg: "bg.png"
^

On line 11 of C:\Documents and Settings\Admin\Рабочий стол\Проги\bino/game/script.rpy: expected statement.
screen binoculars:
^

On line 24 of C:\Documents and Settings\Admin\Рабочий стол\Проги\bino/game/script.rpy: expected statement.
screen back_view:
^

Ren'Py Version: Ren'Py 6.9.3c

Сообщение отредактировал Radogast: 03 Январь 2012 - 17:40

  • 0

#492 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 03 Январь 2012 - 18:22

Без кириллицы в пути.
У меня всё работает.

Стоп.

Ren'Py Version: Ren'Py 6.9.3c

Версия безнадёжно устарела - August 3, 2009.
Зашибись, кто-то ещё пользуется версией более чем двухлетней давности.

Тут можно скачать последнюю версию в которой всё будет работать.

Сообщение отредактировал Элионт: 03 Январь 2012 - 18:27

  • 0

#493 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 03 Январь 2012 - 19:05

Скачал 6.13.7 заработало. Спасибо. Но возникли новые вопросы:
1)Можно ли сделать кнопку приближения и отдаления?
2)Как поменять внешний вид кнопок?
3)Можно ли сделать так что бы когда мы доходили до нужного участка картинки она меняла бы цвет и при нажатии на этот участок продолжалась игра (как с imagemap)?

Сообщение отредактировал Radogast: 04 Январь 2012 - 01:05

  • 0

#494 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 04 Январь 2012 - 06:34

1) Можно наверно
screen back_view:
    add "bg" zoom 2.0 xalign bg_xalign yalign bg_yalign
Надо зум здесь в переменную загнать и менять как bg_*align.

2) Можно.

3) Одновременно с зумом - по моему нет, хотя не проверял.
  • 0

#495 Алекс__

Алекс__
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 186
21
Хороший

Отправлено 05 Январь 2012 - 02:46

1) К кнопкам управления добавить еще одну
textbutton "zoom x2, x3, x4" action SetVariable("bg_zoom", If(bg_zoom == 2.0, 3.0, If (bg_zoom == 3.0, 4.0, 2.0) )  ) # будет поочереди менять значение переменной bg_zoom на 2, 3, 4, 2
2) Показывать различные элементы на экране можно сгруппировав их в "коробки" (vbox и hbox), указав позицию "коробки" на экране, или можно указывать позицию для каждого элемента (в нашем случае это кнопка) отдельно
textbutton "X" action None xpos 300 ypos 100
http://www.renpy.org...reens.html#hbox
http://www.renpy.org...reens.html#vbox
http://www.renpy.org...tyle-properties

Кнопки в Рен'пи двух видов textbutton и imagebutton. Первые состоят из текста и рамки, а вот вторые из картинок (нужно указать как минимум две - картинка для обычного состояния кнопки "idle" и состояния, когда мышь наведена на кнопку "hover")
imagebutton:
        xpos 560 ypos 420
        idle "button_1.png"
        hover "button_2.png"
        action [Hide("binoculars"), Hide("back_view") ]  
        focus_mask True
http://www.renpy.org...tml#imagebutton
http://www.renpy.org...html#textbutton

3) C imagemap у меня не получилось... и с увеличением тоже...
Можно нарисовать сразу большой задний план (больше размеров экрана, чтобы можно было по нему премещать бинокль) и поверх этого заднего плана разместить кнопки, при нажатии на которые будут происходить какие-то действия. Для того, чтобы позиции кнопок совпадали с задним планом, надо нарисовать кнопки такого же размера как и он, только на прозрачном фоне. Тогда можно будет просто показать кнопки поверх заднего плана и не "париться" с их координатами.
define e = Character('Eileen', color="#c8ffc8")

image bg:    # картинка заднего плана со всеми кнопками - ее мы покажем до того как начать смотреть в бинокль
    contains:
        "bg.png"  # задний план
    contains:
        "bg_idle.png"   # картинка кнопки, уменьшенная в 2 раза, т.к. оригинальный размер картинки (1800х1200)
        zoom 0.5

    
screen binoculars:
    zorder 70
    modal True # делает активным только текущий экран - с остальными взаимодействовать нельзя. Если этот параметр не установить, то при нажатии на кнопку мыши игра будет продолжаться, а мы еще не закончили с биноклем
    
    # соберем бинокль и то, что мы рассматриваем в один экран, чтобы можно было взаимодействовать и с тем, и с другим
    add "bg" xalign bg_xalign yalign bg_yalign zoom 2.0  # рисуем задний план (800 х 600), увеличенный в 2 раза
    
    imagebutton: 	# поместим поверх заднего плана кнопку (размер картинок для кнопки 1600 х 1200, т.е. тоже в 2 раза больше экрана)
        
        xalign bg_xalign yalign bg_yalign 
        idle "bg_idle.png"
        hover "bg_hover.png"
        action [Hide("binoculars"), Hide("back_view"), Jump ("far_away_label") ]    # при нажатии зашлет нас далеко-далеко
        focus_mask True 	# только непрозрачная часть кнопки будет активна

    
    # картинку бинокля также сделаем в виде кнопки, т.к. она должна частично скрывать задний план и кнопки на нем
    imagebutton:
        align (0.5, 0.5)
        idle "bin.png"
        hover "bin.png"
        action Hide ("smth") # кнопка должна что-то делать, иначе она не будет закрывать собой кнопки на заднем плане, и их можно будет нажать "через" картинку бинокля
        focus_mask True 	# только непрозрачная часть кнопки будет активна - т.е. мы сможем взаимодействовать с задним планом в том месте, где картинка бинокля прозрачна
    
    vbox:
        xalign 1.0 yalign 0.5
        textbutton "up" action SetVariable("bg_yalign", max(-0.2, (bg_yalign-0.1) )  )          
        hbox:
            textbutton "left" action SetVariable("bg_xalign", max(-0.2, (bg_xalign-0.1) )  )
            null width 20
            textbutton "right" action SetVariable("bg_xalign", min( 1.2, (bg_xalign+0.1) )  )
        textbutton "down" action SetVariable("bg_yalign", min( 1.2, (bg_yalign+0.1) )  )
        textbutton "X" action [Hide("binoculars"), Hide("back_view") ]

label far_away_label:
    scene black
    "You found yourself somewhere far away..."
    return
    
# The game starts here.
label start:
    $ bg_xalign = 0.5
    $ bg_yalign = 0.5
 
    show bg
    e "Надо кликнуть в прямоугольник."
  
    show screen binoculars
    $ renpy.pause(0.0001)
        
    e "Once you add a story, pictures, and music, you can release it to the world!"
    "..."

    return
http://www.renpy.org...creen-statement

http://www.renpy.org...tyle-properties

http://www.renpy.org...tains-statement

Прикрепленные файлы

  • Прикрепленный файл  pics.rar   82,14К   14 скачиваний

  • 0

#496 Radogast

Radogast
  • Участники
  • Pip
  • Новичок

  • Cообщений: 19
0
Обычный

Отправлено 07 Январь 2012 - 00:47

Очень признателен :). Если будут еще идеи обязательно напишу.
  • 0

#497 Nekofrenik

Nekofrenik
  • Старожилы
  • PipPipPipPipPipPipPip
  • Маниакально-депрессивный котобус

  • Cообщений: 9 334
1 135
Понивластелин

Отправлено 21 Январь 2012 - 02:55

Собственно, у меня вопрос про renpy.random.randint. Как заставить работать это дело? У меня всё время выскакивает такая ошибка. renpy.random.choice работает...

Прикрепленные файлы


  • 0

#498 Алекс__

Алекс__
  • Активные участники
  • PipPip
  • Интересующийся

  • Cообщений: 186
21
Хороший

Отправлено 21 Январь 2012 - 12:19

Хм, очень странно... Единственное предложение - попробуйте другую версию Рен'пи (в 6.12 и 6.13 этот код работает нормально)
  • 0

#499 Nekofrenik

Nekofrenik
  • Старожилы
  • PipPipPipPipPipPipPip
  • Маниакально-депрессивный котобус

  • Cообщений: 9 334
1 135
Понивластелин

Отправлено 21 Январь 2012 - 20:39

Renpy 6.13.8 у меня. Может я не туда строчку воткнул?
a "Она предпочтёт купить, что-нибудь в автомате или уйдёт?"
                        "Купить еду в автомате":
                            $ av = renpy.random.randint(1, 9)
                            menu:
                                a "В кафешке есть три автомата. Что выберет Така-тян?"
                                "Всё":
                                    if av == "1" or "3" or "5" or "7" or "9":
                                        a "Така-тян всё купила"
                                        $ eda = True

-----update-----
Странно. Сегодня заработало хоть я ничего со вчерашнего не менял...

Сообщение отредактировал MrStitch: 21 Январь 2012 - 21:08

  • 0

#500 Элионт

Элионт
  • Старожилы
  • PipPipPip
  • Отаку

  • Cообщений: 415
26
Хороший

Отправлено 22 Январь 2012 - 06:49

if av == "1" or "3" or "5" or "7" or "9":


Можно записать короче - if av in [1,3,5,7,9]:

Кстати, кавычки не надо, av = renpy.random.randint(1, 9) возврашает число, а ты его пытаешься сравнивать со строкой из одного символа.
Хотя хз, может и заработает, я не пробовал так.
  • 1




Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных