Перейти к содержанию
View in the app

A better way to browse. Learn more.

Arena V

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Galaxy

Нектар звезд

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

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

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

Альтир, у тебя в коде локации playerturn обрабатывается каждая ситуация в отдельности? Не проще ли сначала модифицировать if'ами pdam, endam и т.д., а потом запустить общую для всех проверку на получение повреждений? Проверка на смерть и победу в каждом if'e тем более кажется лишней, можно поместить одну общую после ссылки :batcon (там где печать полученных и нанесённых повреждений). Кстати, из-за такой архитектуры не показывается информация о последнем ударе. Короче говоря, получается, что твоя программа рассматривает каждую комбинацию arg[] в отдельности, в обособленных кусках. Разве это логично? Я что-то не понимаю?

  • Ответов 143
  • Просмотры 289.9 тыс
  • Создана
  • Последний ответ

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

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

  • Алистер
    Алистер

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

  • Н-да, не знаю, зачем я это пишу - но раз уж начал... Вот моя "собственная" попытка раскадровки одной сцены из начала. Едва ли мы потянем что-то вроде этой игры с иллюстрациями и сотнями развилок

  • Если вы не против, предлагаю такую схему схватки (по аналогии с КР2) Вы стоите напротив гидры. Вас охватывает боевой азарт. Враг сильнее, но вы дракон – вы быстрее, умнее и хитрее любого зверя. Как

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

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

Что ж, если ты настаиваешь на дайсах, то пусть будут.

Я не настаиваю, просто с дайсами уже проверенная система.

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

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

Можно запихнуть это в начале, где идут воспоминания героя.

Иногда из списка возможных ударов пропадает "сильный", даже если на него хватает сил - это бага или фича?

Пропадает после его использования? Его можно использовать только через 3 хода (можно изменить, если нужно). Если пропадает после другого удара - надо смотреть.

Противник иногда зависает, когда у него остаётся мало сил.

Я исправил один баг в пересчете вероятностей выбора удара, если случайное число выпадало максимально возможным, то не выбиралось ни одно действие. Поставил в разбросе -1, думаю неточность в 1-2 десятых процента не существенна.

Сила в течение боя меняется крайне редко, так что незачем и ей давать прикрышку "/30"

Я сначала думал сделать как раньше - сильный удар уменьшает силу, но потом решил не делать. Можно убрать или оставить, если потом что-то будет изменять силу (например, грибы силы)).

Альтир, у тебя в коде локации playerturn обрабатывается каждая ситуация в отдельности?

На счет этого. Все бы было хорошо и можно было бы выводить на экран только сообщение об ударе игрока и врага. Но для каждой ситуации нужно информировать игрока что произошло. Например, ты бьешь простым ударом, враг тоже - пишется что и ты и враг ударили/неударили, отняли столько-то хп, если ты бьешь обычным ударом, а враг защищается - выводится, что ты попытался ударить/неударил, но враг удачно/неудачно защитился, отнял/неотнял столько-то хп. То есть для двух вариантов действий уже 7 вариантов вывода сообщений, кроме проверок и вывода сообщений о смерти от соответствующего удара. Все это, наверное, можно уменьшить и переделать, но потом получится такая каша, что добавление чего-то нового будет реальной проблемой (сейчас достаточно с копипастить и немного подредактировать). Есть еще вариант заготовить куски фраз, а потом их скомпоновать в одну строчку, что-то вроде: 'Враг'+$ename+'использует'+$acttext1[args[1]]+'и'+$acttext2[enhitch]+.... Но по-моему возни с этим будет больше, чем написать пару десятков строчек комментариев (в основном используя тот же копипаст). Это было бы нужно, если бы в игре было пара сотен видов ударов и заклинаний.

Но если есть идеи как все это упростить...

Изменено пользователем Альтир

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

Пропадает после его использования? Его можно использовать только через 3 хода (можно изменить, если нужно).

Мне кажется незачем. Если игрок хочет поскорей закончить бой, пускай сливает силу.

Можно убрать или оставить, если потом что-то будет изменять силу (например, грибы силы)).

Если использовать грибы (хотя в их необхоимости сомневаюсь даже я), то в стате получится "32/30". Это глупости.

Но если есть идеи как все это упростить...

Я предоплагал, что в таких случаях используются вот такие проверки:

if args[0]=0:


 pdam=(func('dice', pbdem[0], pbdem[1], pbdem[2])*(100+cpstr)/100+cpstr/5)*hitch/ptire


 enemytext = "Противник ударил и нанёс " + pdam +" урона" //Текст, разумеется, должен быть более распрёстранённым


end if




if args[0]=1:


 pdam=0


 enemytext = "Противник защитился"


end if 




if args[0]=2:


 pdam=(3*(func('dice', pbdem[0], pbdem[1], pbdem[2])*(100+cpstr)/100+cpstr/5)*hitch/2)/ptire


 enemytext = "Противник использовал мощный удар и нанёс " + pdam +" урона"


end if 




if args[1]=0:


 endam=(func('dice', enbdem[0], enbdem[1], enbdem[2])*(100+censtr)/100+censtr/5)*enhitch/entire


  playertext = "Вы ударили и нанесли " + pdam +" урона"


end if



<Тут проверки на остальные удары игрока по тому же принципу>



А тут общая проверка на попадание, блок, критический удар, победу или смерть. pdam, endam, enemytext и playertext дополняются или полностью заменяются по необходимости. 


*nl battleturn+' Ход| ' + enemytext + playertext 

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

Как ты себе представляешь пополнение и замену строк? Через $MID и $replace?

Все равно получится куча if-ов, может только не один в другом, а вряд.

enemytext = "Противник ударил и нанёс " + pdam +" урона"

А если ты защитился?

"Противник нанес вам 20 урона.""Вы полностью защитились от удара противника".

А если промах? "нанес вам 0 урона"?

К тому же, по идее нельзя нанести больше урона, чем есть хп.

Все это переписывать заново? А нужно было тогда вообще сохранять эти переменные?

Впрочем, можешь попробовать написать так как хочешь. Возможно получится лучше.

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

Я тут подумал, если в бою интеллект особо роли играть не будет (как сейчас), то нужно в текстовой части делать способы, как избежать сложных боев с помощью интеллекта. А иначе выбор умного будет заведомо не играбельным.

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

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

Впрочем, можешь попробовать написать так как хочешь. Возможно получится лучше.

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

Я тут подумал, если в бою интеллект особо роли играть не будет (как сейчас), то нужно в текстовой части делать способы, как избежать сложных боев с помощью интеллекта. А иначе выбор умного будет заведомо не играбельным.

Это само собой. Посмотри, даже сейчас в "мышах" есть обходные пути.

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

Это не кажется логичным.

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

Наконец-то буходные закончились.... закончил с генерацией, статы подкорректировал, вот выкладываю, что получилось

6fc554e993d5t.jpg

на счет интеллекта - он может влиять на критический удар.

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

Винг Алый, если все согласны с этим вариантом, то выкладывай файл с текстом, я начну его реализовывать.

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

Что то нету никого....

тихо как то...

Альтир, тебе в каком формате текст скидывать, у меня все в MS offis visio 2002-2010, но если надо могу и вытащить текст от туда

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

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

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

Вот вытащил текст, выкладываю:

генерация в тексте.rar

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

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

Альтир, отлично поработал! Протестировал... есть один баг, после шага выборы ветки развития, выбор "общение" три из четырех выборов выдают ошибку 119 (строка 2) локация pcreate общение, это выборы бегали по логову, наблюдали за играми и играли в салочки, причем саму строчку текста они выписывают а переход не работает. а так вроде все нормально

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

Создание персонажа.rar

Исправил. Забыл стереть строчки, оставшиеся при копировании из текстового файла. Странно что при запуске из редактора эта ошибка не появляется и играет дальше.

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

Альтир, кстати, ты скидываешь старый файл, с ошибкой... Я ее там где ты сказал нашел, и у себя подправил - вроде все работает нормально.

теперь надо чем то далее заниматься...

Возможно проблема возникает в следствии одинаковости имен и скачивается старая версия...

Попробую поработать над замком, глава б что-ли, исследование и все такое прочее, кричите ежели что...

кстати Альтир, благородство в статах специально не отображается?

Изменено пользователем Винг Алый

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

кстати Альтир, благородство в статах специально не отображается?

Да нет, забыл просто. Пока что это тестовый вариант отображения статов, думаю, нужно немного подробнее написать, и начинать отображать только после завершения создания персонажа (сейчас сделано просто чтобы видно было). Ну и имя, цвет и пол, думаю, не стоит писать (типа чтоб не забыть, что ли?)

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

Все же, жаль, что сия затея была забыта. Однако, её тема еще пригодится.

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

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

Присутствует даже некий элемент стратегии х)

Ах да, знание английского настоятельно рекомендуется, т.к. даже скопировать текст в переводчик не выйдет. Лапками всё, господа. Или мозгами ::cool

И напоследок. Создатели сего сайта (ссылка выше) разработали эдакий скриптовый язык, на котором и пишут свои "игры" - и он находится в свободном доступе

:roll:

кое-кому может быть интересна и кнопочка внизу их сайта. "Мы ищем талантыписателей"

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

Прошел. Маало) И да. Штампы) Но мне понравилось :)

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

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

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

Аккаунт

Навигация

Поиск

Поиск

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.