Сайт посвящен игре Stranded
Среда, 24.05.2017
Меню сайта
Категории раздела
Stranded 3 [22]
Stranded 2 [7]
Stranded 2 S2Ext [10]
Stranded 2 Lost in Space [6]
Stranded 2 DevMod [8]
Stranded 2 Massive Mod [6]
Stranded 2 The Survivalist [8]
Stranded 2.5 Desert Island [8]
Скрипты [6]
FEOLPA [1]
Модинг [7]
Команды [1]
Архив [6]
Форма входа
Быстрая навигация
Мини-чат
Главная » Статьи » Stranded 3

27 января 2013 года. Окно свойств объекта.

  
Многопользовательская онлайн игра 'Герои битвы'

Перевод:



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


Свойства объекта

По большей степени окно свойств объекта все еще доделывается. Вы, очевидно, будете менять положение и поворот объекта визуально, но также есть возможность указать все эти значения вручную. Вы также можете указать родительский объект (для хранения вещей в других объектах). Хранение вещей теоретически не ограниченно в Stranded 3. Вы можете хранить все что угодно (объекты, юниты, предметы, триггеры) во всем что угодно. Вы также можете вкладывать объект в объект который в свою очередь уже содержит в себе объекты. Теоретически эта иерархия не ограниченна.




Сейчас вы можете задать вопрос (если вы знаете что-то о сценариях Stranded 2): Как это можно реализовать, для хранения различных типов объектов, если есть только текстовое поле для ID и не текстовое поле для типа / класса? Ответ прост: Объект-, юнит-, предмет- и триггеры на карте имеют одинаковые глобальные ID в Stranded 3. Так что есть только один экземпляр с ID равным 1. Это может быть либо объект, юнит, предмет или тригнер. Но не может быть, например, объект с ID 1 и юнит с ID 1, потому что разрешено иметь только один экземпляр ID 1, независимо от того, что это объект /юнит / предмет / триггер. Это также упрощает работу со сценариями, потому что вам никогда не надо будет указать тип / класс. Команды будут более универсальными.


Свойства объекта - Атрибуты

Редактор позволяет просматривать / добавлять / удалять / изменять атрибуты отдельных экземпляров объектов. 




На скриншоте вы можете видеть, что даже здоровье - что является основной ценностью - реализуется с помощью системы атрибутов. Это совсем не плохо. Моддеры должны сами решить, будет ли относится тот или иной атрибут к здоровью объекта или нет. Это дает максимальную свободу. Кроме того, наиболее рациональный метод хранения данных в памяти: Атрибуты сохраняются только если их значения отличаются от значений по умолчанию (можно определить значения атрибутов по умолчанию для каждого объекта, но вы также можете задать общие значения по умолчанию, которые просчитываются для всех объектов / юнитов / предметов / триггеров). Таким образом, все объекты со значениями по умолчанию для здоровья (или другими словами: все объектов, которые не повреждены) не требуют дополнительной памяти при сохранении игры и файлов карты.


Вы можете легко выбрать и редактировать атрибуты в окне атрибутов:




Свойства объекта - Переменные

Используются для переменных в скриптах. Теперь вы можете непосредственно указать локальные переменные сценария в редакторе и присваивать им значения. Stranded 3 будет поддерживать 4 типа данных для локальных переменных сценария:. byte (0-255), integer (32 бит), float (32 разрядное) и string.




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




Что можно сказать о вложениях

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


Доступ из Lua

Конечно, вы сможете читать / записывать / удалять атрибуты и переменные из скрипта Lua. То же самое о хранении материалов в материалах.


Оригинал: http://stranded3.com/?p=67


Комментарии Devi409:


В Stranded 2 уже было не плохо реализована система некоторых атрибутов, но а сейчас это вообще отлично. Немного смущает то что переменные типизированы. Многим начинающим моддерам придется серьезно изучать язык программирования. И тут как всегда тоже два варианта, если человек усидчивый, то он без проблем прочитает теорию и только потом приступит к программированию. Но как правило всем нужен моментальный результат. Например здесь на сайте есть примеры добавления объектов, предметов обычным способом - добавление строки в файл. Надеюсь более усложненная система не затруднит начинающих.


Насчет хранения объекта в объекте. Эта система создает некоторую логическую ошибку, если конечно ее не проработать. Как сказал Peter вложенность не ограниченная, но не известно проверяет ли он допустимость вложения по массе предметов. Например ветка вести 500 грамм. сам рюкзак весит 1 кг. рюкзак максимум может хранить 5 кг. значит мы положим в рюкзак 10 веток. Значит рюкзак должен весить уже 11 кг. Если он будет весить в место 11 кг - один кг то в какой либо склад мы можем сложить столько рюкзаков сколько их войдет согласно массе рюкзака, а не рюкзака + содержимое.


Еще один нюанс - это вложение себе подобных объектов самих в себя. например мы складываем в рюкзак еще 10 рюкзаков. в каждом их которых также лежат рюкзаки. Надеюсь Peter это предусмотрел.



Источник: http://stranded3.com/?p=67
Категория: Stranded 3 | Добавил: devi409 (06.02.2014)
Просмотров: 647 | Комментарии: 1 | Теги: Stranded 3, разработка stranded 3, Stranded III | Рейтинг: 0.0/0 |
Всего комментариев: 1
1  

Цитата
...в какой либо склад мы можем сложить столько рюкзаков, сколько их войдет согласно массе рюкзака, а не рюкзака + содержимое

Только при условии что масса рюкзака увеличивается при складывании в него вещей, если же не увеличивается, то придётся рассчитывать "рюкзак + содержимое".

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Наш опрос
Желаете ли вы участвовать в разработке нового мода?
Всего ответов: 1827
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Copyright MyCorp © 2017