99%

Добавлен , опубликован
Что ж, я почти закончил редактор.
Однако с релизом всё-таки немного обождем, ибо жду от заказчика средств за проект, который включает так же и вот этот инструмент.
Последняя новость как я понял не слишком обрадовала наше сообщество - было много замечаний, которые я в той или иной мере услышал и постарался переделать так, чтобы было хоть чуть-чуть удобнее.
В общем контролы на данный момент выглядят вот так:
Сверху вниз:
  • для типа bool
  • для типа int
  • для типа void
Как можете заметить:
  • кнопки сместились вниз и отображаются только при наведении на элемент (многократное замечание)
  • появилась подсказка по наведению на элемент (замечание Кет)
  • cами элементы более не расширяются по высоте тем ужасным способом, как это было вначале, если "вложений" слишком много (многократное замечание)
  • теперь нет лишних скобок внутри простой арифметики, архитектура арифметики "спрятана" (замечание Doc)
  • так же элементы теперь подстраиваются под размер своего содержимого (замечание ScorpioT1000)
Какие планы есть?
  • Добавить переменные - руки пока не дотянулись
  • Добавить генерацию из строки - замечание prog
  • Скорей всего нижнюю полоску и подсказку нужно сделать выпрыгивающими, не занимающими доп место. Однако тут есть свои нюансы у юньки, что нельзя делать окна поверх без фокуса :(
В чем 1%?
Осталось доделать внешний вид под контекстные действия - условия там, циклы и прочую мурню.
Что еще вообще было сделано за последнее время?
  1. целиком было переписано отображение ГУИ. Собственно контролы теперь полностью попиксельно отрисовываются, потому весь "процесс" легко проконтролировать.
  2. были написаны дополнительные "sub-наработки". Некоторые наработки я представил в сыром виде на этом сайте, надо бы обновить (такие как попап и сериализаторы, например).
  3. Добавлено приведение типов двумя способами - implicit и explicit
implicit это спрятанное приведение типов, не порождающее "отдельного контрола"
explicit это явное приведение типов, пример на 2 скрине сверху - надпись "дробь" у основного поля типа int
Приведения типов позволяет по быстрому добавлять функции смежных типов.
  1. Собственно изменен подход к арифметике
  2. Изменен подход к действиям. Теперь действия вообще умная вещь, и остаются компактными несмотря на все невзгоды.
Ладно, что-то я записался. Уже лень даже дальше строчить - хотя рассказать то вроде и есть чего. Однако, достаточно и того, что вы посмотрите скриншотики разработки и дадите очередную порцию дельных советов - как вам оформление теперь, чего бы еще эдакого хотелось увидеть в тулсе.
Дабы избежать снова вопроса зачем этот редактор - он позволяет визуально вычислять любые значения и запускать сценарии из действий в игре.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
29
RSQR, речь идет именно о скриптинге сцены и поведении. Согласись что когда делаешь диалоговую систему проще мышкой потыкать, чем писать 100 строчек однотипного и монотонного кода
Харгард:
Кому это нужно? Вручную написанные вычисления и создаются быстрей и выглядят они наглядней.
В том же ВЕ часто было проще записать формулу при помощи строки с кастом кодом, чем выбирать мастером 10+ переменных и функций.
Для геймдизайнеров, которые плевать хотели на программирование и хотят просто заскриптовать диалог с одним из НПС на уже готовой диалоговой системе от программистов в данном проекте. Этот подход называется разделение обязаностей. И если бы ты немного почитал о чем тут речь идет, то понял бы, что тут таких проблем с вводом нету
24
alexprey:
RSQR, речь идет именно о скриптинге сцены и поведении. Согласись что когда делаешь диалоговую систему проще мышкой потыкать, чем писать 100 строчек однотипного и монотонного кода
Не соглашусь) Массивы никто не отменял
29
RSQR, чувак, причем тут вообще массивы. В любой диалоговой системе проще сделать ручками, чем писать код, хендлить события в нем, вызывая другой скрипт, в котором еще тонны кода, все требует времени на написание. А когда есть такой удобный инструмент, грех не воспользоваться
30
Умникам, которые считают себя тру кодерами и "триггеры не нужны", а именно Харгард'у и RSQR'у.
Что-то я не замечал, что вы деассемблировали движок варкрафта, когда на нём что-то делали, а - внезапно - первые месяцы пользовались триггерами, или я неправ?
24
Clamp:
Умникам, которые считают себя тру кодерами и "триггеры не нужны", а именно Харгард'у и RSQR'у.
Что-то я не замечал, что вы деассемблировали движок варкрафта, когда на нём что-то делали, а - внезапно - первые месяцы пользовались триггерами, или я неправ?
И до сих пор жалею, что потратил на них время.
26
И до сих пор жалею, что потратил на них время.
Вот видишь! Просвещение! :)
15
Clamp:
Что-то я не замечал, что вы деассемблировали движок варкрафта, когда на нём что-то делали, а - внезапно - первые месяцы пользовались триггерами, или я неправ?
Пфф я и до последнего часть работ делал на них. В 95% случаев используя кастом скрипт :)
Очень уж удобно в них разносить код в отдельные файлы и папки и размещать коменты.
Вот только, повторюсь, для серьезных вычислений ими пользоваться накладно.
29
Вот только, повторюсь, для серьезных вычислений ими пользоваться накладно.
дык речь и не идет о том, чтобы писать на нем огромные системы, а для скриптинга. Хотя я уверен найдутся и такие извращенцы
38
Кламп хочет продать походу
27
Лично я нахожу данный инструмент просто сверх полезным, иначе бы не тратил время на реализацию.
Ну если вы брезгуете за скорость - значит не моя целевая аудитория.
Для серьезных вычислений конечно редактор лучше не использовать. Но организовать вызов "серьезный вычислений" - почему бы нет. Один call проблем не сделает все же, разве что для параноика.
Широкие возможности тут опять же не для того делаются, чтобы можно было писать полноценные скрипты, а только потому что "всякие бывают случаи, может пригодиться".
Я просто скажу так, ну сделаем мы скажем массив с отсылкой на кастомный код, да? Ну вот приспичило нам описать новую ситуацию - в итоге нужно под новым индексом добавить запись, в самой игре этот индекс указывать в качестве "ссылки". Когда приспичит снова туда заглянуть, придется бегать по массиву искать что же вы туда положили. Не практично. А самый большой минус в том, что массив однажды подгружается весь. Не всегда это нужно. Ну и массивом расписать можно тоже не любую ситуацию. Скажем чтобы алгоритм во времени расписать придется делать отсылку на запуск каких-то дополнительных скриптов, которые будут нагружать игровую сборку. Пока таких скриптов с десяток это конечно не проблема, но с ростом их количества скажем до 1000 скорость каждого вашего ребилда вырастет настолько, что вы будете успевать поесть за это время. Не знаю, что тут может быть прикольного и сомневаюсь, что это победа.
Опять же есть разные типажи игр. Некоторым играм кастомные сценарии просто не нужны. Аркады какие-нибудь, гонки, арены, мультиплей стратегии - там это нафиг не сдалось, вполне реально все реализовать в коде. А скажем РПГ, квесты - вот там это уже необходимо. Но опять же, у вас может быть на это свое мнение.
ScorpioT1000:
Кламп хочет продать походу
Ну, лично я собираюсь продавать только на ассет сторе, потому если захочет куда-то еще втюхать - не проблема, а если процентом от навара будет делиться так вообще замечательно. Главное только чтобы на шару не оказалось слишком уж быстро, задаром.
Харгард:
чем выбирать мастером 10+ переменных и функций.
Вот я редактор как раз пытаюсь делать так, чтобы и заполнять тоже было хоть чуть-чуть проще. У меня все редактирование находится "на виду", без необходимость лазить по окошкам. Ну и разумеется в свое время добавлю эдакий "String To Expression"
Бтв, немного поработал над тем, чтобы контролы были менее громоздкими вчера.
Теперь подсказка и кнопки не занимают доп места для рисования и появляются только если контрол был выбран, в остальных случаях просто сворачиваются. Так что +50 к компактности.
На этом скрине минимальное расстояние между контролами теперь:
А на этом выбранный контрол, у которого показывается подсказка и кнопка. Если нажать где угодно вне контрола - он свернется обратно.
Загруженные файлы
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.