Ищу напарников для развития проекта! Программисты Delphi, мододелы-консультанты
мой скайп
edifier751
(Начало)
Разработка "скелета" программы.
(prepreAlfa)
Создать основные редакторы для создания полноценного квеста (диалоги, НПС, квесты, поршни, функции) То есть, реализовать базовые и минимальные функциональные возможности соответствующих редакторов.
(preAlfa)
Адаптация базового функционала к "Зов Припяти" => (preAlfa_CoP)
Адаптация базового функционала к "Чистое Небо" => (preAlfa_CoP_CS)
Рефакторинг и оптимизация.
(Alfa)
Добавление уникальных редакторов во все версии трилогии.
[alife] schedule_min = milliseconds schedule_max = milliseconds process_time = microseconds update_monster_factor = time_factor = скорость для демонстрации смены дня и ночи, 1 = реальное время normal_time_factor = животные в оффлайне перемещаются со скоростью, делённой на этот фактор (чтобы не бегали очень быстро) max_combat_iteration_count = 5maximum combat iteration count switch_distance = Лучше не трогать! Отвечает за радиус загрузки локации в метрах switch_factor = start_time = время начала игры (16:30:00) start_date = дата начала игры autosave_interval = отвечает за промежуток между автоматическим сохранением игры. delay_autosave_interval = objects_per_update = start_game_callback = on starting new game or loading saved one
[Оружие] ;----------------- GroupControlSection = discovery_dependency = $spawn = name and section in level editor $npc =Может ли НПС использовать оружие (секцию) (?) $prefetch = scheduled =Опция для ALife Simulator cform = class = class of the weapon that corresponding to CPP class min_radius =Минимальный радиус на котором стреляет НПС или начинает стрелять (?) max_radius =Максимальный радиус на котором стреляет НПС или начинает стрелять (?) max_zoom_factor = description = ссылка на файл "string_table_enc_weapons.xml" с описанием оружия ef_main_weapon_type = основной тип, к которому принадлежит оружие ef_weapon_type = подтип, к которому принадлежит оружие attach_angle_offset = attach_position_offset = attach_bone_name = auto_attach = holder_range_modifier = во сколько раз увеличивается eye_range holder_fov_modifier = во сколько раз увеличивается eye_fov tri_state_reload = cost =Базовая цена (торговцы умножают её на некоторый коэффициент) weapon_class = класс оружия show_ammo = startup_ammo = ammo_limit = (obsolete) в игре не используется, наверно задумывалось как ограничение ношения ссобой патронов ammo_current = ammo_elapsed = obsolete ammo_mag_size =Размер магазина fire_modes = режимы ведения огня ammo_class =Имена ltx-секций с названиями патронов, которыми может стрелять оружие grenade_class = name of the ltx-section of used grenades launch_speed = hand_dependence = (возможно, речь идет о качании ствола) how many hands (1 or 2) we used to hold weapon in single_handed = держится ли только в одной руке slot = слот в инвентаре(1 - knife slot, 2 - pistol, 3 - rifle, 4 - grenade, 5 - apparatus) animation_slot = вид анимации (для пистолета/для винтовки) inv_name = name in inventory inv_name_short = ссылка на файл "string_table_enc_weapons.xml" с коротким названием оружия inv_weight = вес в инвентаре inv_grid_width = координаты первого угла иконки по x inv_grid_height = координаты первого угла иконки по y inv_grid_x = координаты второго угла иконки по x inv_grid_y = координаты второго угла иконки по y kill_msg_x = kill_msg_y = kill_msg_width = kill_msg_height = dispersion_start = fire_dispersion_base = угол (в градусах) базовой дисперсии оружия (оружия зажатого в тисках) control_inertion_factor = sprint_allowed = определяет, в состоянии ли бежать персонаж с этой пушкой (true — да, false — нет). ;отдача cam_relax_speed = скорость возврата в исходное положение cam_relax_speed_ai = cam_dispersion = увеличения угла (в градусах) с каждым выстрелом cam_dispersion_inc = увеличениe cam_dispersion с каждым выстрелом cam_dispertion_frac = ствол будет подыматься на cam_dispersion*cam_dispertion_frac +- cam_dispersion*(1-cam_dispertion_frac) cam_max_angle = максимальный угол отдачи cam_max_angle_horz = (degree) maximum shot horizontal degree cam_step_angle_horz = (degree) size of step camera moved in horizontal position while shooting cam_horz_factor = cam_horz_prob = disp_vel_factor = disp_crouch_factor = disp_jump_factor = fire_dispersion_condition_factor = увеличение дисперсии в процентах при максимальном износе misfire_probability = вероятность осечки при максимальном износе misfire_condition_k = порог, после которого оружие может заклинивать (0.01=1 <img src="/.s/sm/23/wacko.gif" border="0" align="absmiddle" alt="wacko" /> condition_shot_dec = увеличение износа при каждом выстреле fire_point = точка выстрела fire_point2 = точка выстрела 2 (when shooting with secondary fire) flame_particles = particles for shooting effects smoke_particles = grenade_flame_particles = shell_point = точка вылета гильз shell_particles = модель гильз, отлетающих в разные стороны при стрельбе. PDM_disp_base = PDM_disp_vel_factor = PDM_disp_accel_factor = PDM_crouch = PDM_crouch_no_acc = ; ttc hit_power = урон от оружия. Четыре числа: первое минимальный ущерб, последнее — максимальный, средние два, промежуточный. hit_impulse = сила пули, которая передается жертве hit_type = тип повреждения, наносимого оружием. Огнестрельное ранение — fire_wound, ножевое — wound и wound_2, взрыв — explosion. fire_distance = дальнобойность bullet_speed = начальная скорость пули rpm = Скорострельность rpm_empty_click = use_aim_bullet = Поддерживается ли первая суппер пуля time_to_aim = silencer_hit_power = урон от оружия с глушителем silencer_hit_impulse = сила пули с глушителем silencer_fire_distance = дальнобойность с глушителем silencer_bullet_speed = начальная скорость пули с глушителем hud = внешний вид оружия normal = position = позиция по отношению к игроку (?) orientation = направление, в которое смотрит ствол (?) direction = shell_dir = grenade_vel = weapon_min_queue_size_far = минимальная очередь на дальние дистанции. Одиночные. weapon_max_queue_size_far = Максимум -6 патронов в очереди. В принципе, здесь можно и поменьше, но практика показывает, что такой огонь довольно эффективен. weapon_min_queue_interval_far = Периодичность выстрелов. Как я понял, в миллисекундах. weapon_max_queue_interval_far = Секунда на прицеливание их же устроит? Но дальше уж надо жать на курок. weapon_min_queue_size_close = вблизи (почти в упор) им надо шмалять не щадя обоймы. Пока сталкер Меченый не опомнился. weapon_max_queue_size_close = при удаче они даже всадят всю обойму <img src="/.s/sm/23/smile.gif" border="0" align="absmiddle" alt="smile" /> weapon_min_queue_interval_close = интервал на ближних дистанциях также минимальный: с такого расстояния нужно стрелять не думая. weapon_max_queue_interval_close = ;--STRAP PARAMETERS----------------------------------------------------------------- strap_position = position (offset) and orientation of the weapon when it is strapped strap_orientation = (3rd person view in degrees) strap_bone0 = strap_bone1 = visual = модель оружия, используемая NPC, а также игроком при виде от третьего лица fragment_speed = explode_duration = light_color = params for light during the fire light_range = radius light_var_color = light_var_range = light_time = light_disabled = ph_mass = физическая масса, используемая при расчетах ;addons zoom_enabled = (on,off)Вкл/выкл возможность зума zoom_hide_crosshair = scope_texture = текстура прицельной сетки scope_zoom_factor = значение зума (fov), зависимость здесь обратно пропорциональна scope_status = снайперский прицел, 0 - no addon, 1 - permanent, 2 - attachable scope_name = название прицепляемого прицела scope_x = положение прицела на картинке в инвентаре, x scope_y = положение прицела на картинке в инвентаре, y weapon_remove_time = silencer_status = глушитель, 0 - no addon, 1 - permanent, 2 - attachable silencer_name = название прицепляемого глушителя silencer_x = положение глушителя на картинке в инвентаре, x silencer_y = положение глушителя на картинке в инвентаре, y grenade_launcher_status = подствольник, 0 - no addon, 1 - permanent, 2 - attachable grenade_launcher_name = название прицепляемого подствольника grenade_launcher_x = положение подствольника на картинке в инвентаре, x grenade_launcher_y = положение подствольника на картинке в инвентаре, y ;sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_draw = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_holster = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_gyro = snd_zoomin = snd_zoomout = snd_shoot = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_shoot1 = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_shoot2 = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_shoot3 = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_shoot_duplet = snd_shoot_1 = snd_reload_1 = snd_empty = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_reload = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_close = snd_shoot_grenade = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_reload_grenade = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_switch = sounds (name of the sound, volume (0.0 - 1.0), delay (sec)) snd_explode = snd_open_weapon = snd_add_cartridge = snd_close_weapon = grenade_bone = rocket_class = wallmark_section = auto_spawn_ammo = vision_present = vis_frame_speed = vis_frame_color = found_snd = lens_texture = lens_texture_x = lens_texture_y = lens_texture_w = lens_texture_h = ;params when silencer is attached ;similar to corresponding params without prefix silencer_ ;silencer_flame_particles= weapons\generic_weapon01 silencer_smoke_particles= snd_silncer_shot = silencer_light_color = silencer_light_range = silencer_light_var_color= silencer_light_var_range= silencer_light_time =
Сообщение отредактировал KomeR - Четверг, 19.01.2017, 17:21
Почему-то не могу добавить картинки $IMAGE1$ Добавлено (10.04.2016, 16:31) --------------------------------------------- в общем вот ССЫЛКА на v0.0.1.18 с новыми фичами и мелкими исправлениями.
0. Исправлены очепятки. 1. Добавление поршней в файлы в окне редактора квестов (скоро добавлю и в редакторе диалогов) 2. Временно отключена кнопка в РДиалогов "Сохранить поршни" 3. Включена возможность добавления диалога неписю (была выкл.) 4. В РДиалогов добавлен список функций и поршней как в РКвестов (пока без поиска) 5. Исправлена проблема с НЕ отображением русского текста в РДиалогов 6. Исправлено и добавлено внесение инфопоршней в диалог (раньше было только во фразы диалога, а теперь можно добавить поршень например на проверку запуска диалога) 7. мелкие исправления
1. Чтение файлов происходит при запуске проги (раньше было при запуске редактора) 2. Добавлено контекстное меню в дереве поршней РДиалогов 3. Добавлена примитивная связка поршня с квестом через контекстное меню в дереве поршней РКвестов 4. Исправлены ошибки при сохранении диалога (в некоторых случаях) 5. Исправлен баг отображения "string id=" в игре после редактирования прогой (в некоторых случаях) (восстановите папку "...text\rus") 6. Добавлена возможность удаления диалога (в 2-х режимах: 1. простое открепление диалога от НПС; 2. полное удаление диалога из файла), однако остаются фразы удаляемого диалога (вдруг пригодятся)
Пы.Сы.: 1. При создании квестов, русский текст сохраняется в самом квесте!!! То есть, что бы в игре квесты были на русском языке в редакторе заполняйте поля "rus text", а ткже проверяйте квест перед сохранением, кнопочка "Сформировать квест" и проверте правильность составления, особенно что бы русский тест был в тегах <title></title> и <text></text>
2. При редактировании диалога, не удаляйте сразу целую ветку, удаляйте ветку поэлементно начиная с конца удаляемой ветки. 2.1 Перед сохранением диалога проверяйте его на корректность составления, структура диалога перед сохранением показывается, т.к. известна проблема "залезания мусора" при генерации диалога. 3. На мой взгляд это более менее стабильная версия (создавал диалоги и квесты с проверкой запуска игры).
В планах ест , но не скоро. Сначала нужно по-максимуму допилить редакторы, а там и переносить можно.
ЦитатаDocpsix ()
Перевод файла из первого поста еще нужен?
Конечно! Еще бы перевести параметры броников, артов и т.д., т.к. это тоже в планах ;)
Добавлено (13.04.2016, 11:27) --------------------------------------------- Не много поторопился с версией v0.0.1.21, за сим извиняюсь за траблы! Как оказалось не правильно работало добавление фраз к игровым диалогам (при добавлении получались разногласия в формировании ID фраз), такм образом дерево вело себя не предсказуемым образом! Либо просто вылетала ошибка, либо прога зависала, либо в новую фразу копировался весь диалог!
В связи с этим исправлено формирование ID фраз, теперь даже в стандартных диалогах заново формируется ID и String_ID фразы, сохранение переименованных строк происходит при сохранении диалога и при выходе программы. Прошу протестировать! Спасибо.
P.S.: Появилась проблема "длинных" диалогов, когда вариантов ответов у нулевой фразы более 9, поэтому ссылка пока заморожена! Меняю принцип формирования ID фраз.
Сообщение отредактировал KomeR - Среда, 13.04.2016, 12:18
В редакторе квестов хавает пробелы в русском тексте. И какие изменения вносит редактор по умолчанию? После использования редактора на своем моде - игра крэшилась после интро видео, восстановил работоспособность только откатом папки config.
РКвестов создает квест из того, что ты заполнил. По-умолчанию редактор генерирует только титлы подзадач (подставляет циферки), но из-за проблем с сохранением русского текста в отдельные файлы было решено подставлять вместо титлов русский текст (с версии v0.0.1.21) и сохранять русский текст в файл квеста. Как ни странно, но игра это хавает
Решил попробовать идею загрузки ВСЕХ файлов с русским текстом в память проги, при редактировании диалогов и квестов строковые константы перезаписываются\создаются\удаляются в памяти, а за тем то, что осталось в памяти сохраняется обратно в файлы при выходе из проги.
Проверь пожалуйста следующее: 1. Восстанови папку конфиг 2. Запусти прогу 3. Закрой прогу 4. Запусти игру и проверь русский текст в игре. 5. Отпишись о результатах, если игра не запустится скинь лог если будет. 6. Если игра запустилась открой прогу измени что-либо в любом квесте 7. Повтори 5 пункт 8. Если игра запустилась открой прогу измени что-либо в любом диалоге 9. Повтори 5 пункт
Да меня смущали создавание прогой файлов типа my_mod, и system.ltx прога не трогает? Сейчас проверить не могу. Но лог был стэк оверфлоу, что самое интересное вылет был после интро при запуске игры, видимо что то с файловой системой т е xrCore.
И у меня папка config "не полная" прога ругнулась на не найденный файл (xml список иконок), но заработала, правда не видела скриптовые ф-ции - видимо что то с алгоритмами, хотелось бы что бы прога не агрилась на отсутствие некоторых файлов, а могла нормально работать с "тем, что есть" + к адаптивности под моды.
system.ltx прога трогает, дописывает туда файлы типа "my_mod", кстати, ВЕСМ КТО ЧИТАЕТ ЭТОТ ПОСТ!!! зайдите в system.ltx и удалите лишние "my_mod", была такая проблемка, когда прога без проверки впихивала файлы "my_mod" в system.ltx, но уже проверяет. что касаемо файлов которые прога читает: (в скобках, какой редактор читает) 1. gamedata\config\gameplay\ читает файлы (dialogs_*.xml, tasks_*.xml, character_desc*.xml, info_*.xml) (РКвестов, РДиалогов) 1.1 создает dialogs_my_mod.xml 1.2 создает info_my_mod.xml 1.3 создает tasks_my_mod.xml 1.4 добавляет в game_tasks.xml строку (#include "gameplay\tasks_my_mod.xml")
В проге уже частично реализовано чтение файла system.ltx, осталось подключить его в полную работу )) Но если это сделать, тогда прога не будет читать файлы которые игра не видит. Пока прога не анализирует файлы на наличие "#include", соответственно полной адаптации нет, но если найдет файлы по принципу trade_*.ltx , dialogs_*.xml и т.д. то прочитает их.