Статус: |
|
: |
|
Сообщений: |
|
Регистрация: |
|
|
Для начала зайдем в gamedata/config/creatures/game_releations.ltx и там изменим:
;реальное разделение на группы репутаций на шкалы rating = novice, 300, experienced, 600, veteran, 900, master, 1200, legend
и затем строчку с наименованием рангов:
;шкалы для вывода названий вместо чисел ;рейтингов, репутаций и благосклонности в интерфейсе rating_names = novice, 300, experienced, 600, veteran, 900, master, 1200, legend
Затем там же ищем эту строчку и изменяем ее:
[rank_relations] ; novice, experienced, veteran, master, legend ;=================================================================== novice = 0, 0, 0, 0, 0 experienced = 0, 0, 0, 0, 0 veteran = 0, 0, 0, 0, 0 master = 0, 0, 0, 0, 0 legend = 0, 0, 0, 0, 0
Затем там же изменяем одну строчку. Не уверен в ее работоспособности, но лучше не рисковать:
;очки рейтинга, получаемые за убийство персонажа ;с определенным статусом [rank_kill_points] novice = 0 experienced = 0 veteran = 0 master = 0 legend = 0
С конфигами вроде разобрались. Лезем в скрипты. gamedata/scripts/_g.script:
function set_actor_rank(rank) if rank == "novice" then db.actor:set_character_rank(0) elseif rank == "stalker" then db.actor:set_character_rank(300) elseif rank == "veteran" then db.actor:set_character_rank(600) elseif rank == "master" then db.actor:set_character_rank(900) elseif rank == "legend" then db.actor:set_character_rank(1200) end end
Вместо 1200 можете поставить любое свое значение. Этот скрипт отвечает либо за то, когда ранг получается у actor`a, либо, если меняешь через скрипт ранг у последнего, то очки его ранга ровны тому, что мы только что подставили (то бишь 1200)...
Затем меняем gamedata/scripts/xr_info.script:
local info_by_rank = { novice = { "encyclopedy_zone_artifact_af-medusa", "encyclopedy_zone_artifact_af-cristall-flower", "encyclopedy_zone_artifact_af-vyvert", "encyclop edy_zone_artifact_af-gravi", "encyclopedy_zone_artifact_af-blood", "encyclopedy_zone_artifact_af-soul", "encyclopedy_zone_zone-story_stor y-2006", "encyclopedy_zone_anomalies_bald", " encyclopedy_zone_anomalies_gravi", "encyclopedy_zone_anomalies_meat", "encyclopedy_zone_anomalies_electra", "encyclopedy_z one_anomalies_radioactive", "encyclopedy_zone_locations_escape", "encyclopedy_zone_locations_garbage", "encyclopedy_mutant _crow_general", "encyclopedy_mutant_rat_general", "encyclopedy_mutant_flesh_general", "encyclopedy_mutant_blind_general", " encyclopedy_mutant_boar_general", "encyclopedy_social_military_army", "encyclopedy_social_stalker-clans_duty", "encycloped y_social_stalker-clans_bandits" },
stalker = { "encyclopedy_zone_artifact_af-medusa", "encyclopedy_zone_artifact_af-cristall-flower", "encyclopedy_zone_artifact_af-night-sta r", "encyclopedy_zone_artifact_af-vyvert", "encyclopedy_zone_artifact_af-gravi", "encyclopedy_zone_artifact_af-gold-fish", "encyclopedy_ zone_artifact_af-blood", "encyclopedy_zone_artifact_af-mincer-meat", "encyclopedy_zone_artifact_af-soul", " encyclopedy_zone_zone-story_story-2008", "encyclopedy_zone_anomalies_fuzz", "encyclopedy_zone_anomalies_radioactive", "enc yclopedy_zone_anomalies_electra", "encyclopedy_zone_anomalies_ameba", "encyclopedy_zone_locations_escape", "encyclopedy_zo ne_locations_garbage", "encyclopedy_zone_locations_agroprom", "encyclopedy_zone_locations_darkdolina", "encyclopedy_zone_l ocations_bar", "encyclopedy_zone_locations_rostok", "encyclopedy_mutant_tushkano", "encyclopedy_mutant_pseudodog_general", "encyclopedy_ mutant_bloodsucker_general", "encyclopedy_mutant_burer_general", "encyclopedy_mutant_snork_general", " encyclopedy_mutant_flesh_general", "encyclopedy_mutant_blind_general", "encyclopedy_mutant_boar_general", "encyclopedy_soc ial_stalker-clans_freedom", "encyclopedy_social_stalker-clans_monolith", "encyclopedy_social_stalker-clans_killers", "ency clopedy_social_stalker-clans_zomstalkers", "encyclopedy_social_scientists_mobile-labs", "encyclopedy_social_military_army", " encyclopedy_social_stalker-clans_duty", "encyclopedy_social_stalker-clans_bandits", "stalker_story_2", "stalker_story_3", " stalker_story_7", "stalker_story_11", "stalker_story_12", "stalker_story_16", "stalker_story_17", "stalker_sto ry_18", "stalker_story_19", "stalker_story_20" },
veteran = { "encyclopedy_zone_artifact_af-electra-sparkler", "encyclopedy_zone_artifact_af-electra-flash", "encyclopedy_zone_artifact_af-r usty-thorn", "encyclopedy_zone_artifact_af-rusty-kristall", "encyclopedy_zone_artifact_af-gravi", "encyclopedy_zone_artifa ct_af-gold-fish", "encyclopedy_zone_artifact_af-blood", "encyclopedy_zone_artifact_af-mincer-meat", "encyclopedy_zone_arti fact_af-soul", "encyclopedy_zone_artifact_af-electra-sparkler", "encyclopedy_zone_artifact_af-electra-flash", "encyclopedy _zone_artifact_af-electra-moonlight", "encyclopedy_zone_artifact_af-ameba-slime", "encyclopedy_zone_artifact_af-ameba-slug", " encyclopedy_zone_zone-story_story-2010", "encyclopedy_zone_zone-story_story-raid", "encyclopedy_zone_anomalies_fuzz", "enc yclopedy_zone_anomalies_radioactive", "encyclopedy_zone_anomalies_electra", "encyclopedy_zone_anomalies_ameba", "encyclope dy_zone_locations_agroprom", "encyclopedy_zone_locations_darkdolina", "encyclopedy_zone_locations_bar", "encyclopedy_zone_ locations_rostok", "encyclopedy_zone_locations_military-loc", "encyclopedy_zone_locations_yantar", "encyclopedy_zone_locat ions_radar", "encyclopedy_mutant_pseudogiant_general", "encyclopedy_mutant_poltergeist_general", "encyclopedy_mutant_contr oller_general", "encyclopedy_mutant_bloodsucker_general", "encyclopedy_mutant_burer_general", "encyclopedy_mutant_snork_ge neral", "encyclopedy_social_stalker-clans_loners", "encyclopedy_social_military_milstalkers", "encyclopedy_social_stalker- clans_freedom", "encyclopedy_social_stalker-clans_monolith", "encyclopedy_social_stalker-clans_killers", "encyclopedy_soci al_stalker-clans_zomstalkers", "encyclopedy_social_scientists_mobile-labs", "stalker_story_2", "stalker_story_3", "s talker_story_7", "stalker_story_10", "stalker_story_11", "stalker_story_12", "stalker_story_13", "stalker_stor y_14", "stalker_story_16", "stalker_story_17", "stalker_story_18", "stalker_story_19", "stalker_story_20" } ,
master = { "encyclopedy_zone_artifact_af-electra-sparkler", "encyclopedy_zone_artifact_af-electra-flash", "encyclopedy_zone_artifact_af-e lectra-moonlight", "encyclopedy_zone_artifact_af-rusty-thorn", "encyclopedy_zone_artifact_af-rusty-kristall", "encyclopedy _zone_artifact_af-rusty-sea-urchin", "encyclopedy_zone_artifact_af-drops", "encyclopedy_zone_artifact_af-fireball", "encyc lopedy_zone_artifact_af-cristall", "encyclopedy_zone_zone-story_story-raid", "encyclopedy_zone_anomalies_fuzz", "encyclope dy_zone_anomalies_radioactive", "encyclopedy_zone_anomalies_electra", "encyclopedy_zone_anomalies_ameba", "encyclopedy_zon e_locations_yantar", "encyclopedy_zone_locations_radar", "encyclopedy_zone_locations_pripiat", "encyclopedy_zone_locations _stancia", "encyclopedy_mutant_pseudogiant_general", "encyclopedy_mutant_poltergeist_general", "encyclopedy_mutant_control ler_general", "encyclopedy_social_stalker-clans_loners", "encyclopedy_social_military_milstalkers", "stalker_story_6", " stalker_story_9", "stalker_story_10", "stalker_story_13", "stalker_story_14", "stalker_story_16", "stalker_sto ry_17", "stalker_story_18", "stalker_story_19", "stalker_story_20" },
legend = { "encyclopedy_zone_artifact_af-electra-sparkler", "encyclopedy_zone_artifact_af-electra-flash", "encyclopedy_zone_artifact_af-e lectra-moonlight", "encyclopedy_zone_artifact_af-rusty-thorn", "encyclopedy_zone_artifact_af-rusty-kristall", "encyclopedy _zone_artifact_af-rusty-sea-urchin", "encyclopedy_zone_artifact_af-drops", "encyclopedy_zone_artifact_af-fireball", "encyc lopedy_zone_artifact_af-cristall", "encyclopedy_zone_zone-story_story-raid", "encyclopedy_zone_anomalies_fuzz", "encyclope dy_zone_anomalies_radioactive", "encyclopedy_zone_anomalies_electra", "encyclopedy_zone_anomalies_ameba", "encyclopedy_zon e_locations_yantar", "encyclopedy_zone_locations_radar", "encyclopedy_zone_locations_pripiat", "encyclopedy_zone_locations _stancia", "encyclopedy_mutant_pseudogiant_general", "encyclopedy_mutant_poltergeist_general", "encyclopedy_mutant_control ler_general", "encyclopedy_social_stalker-clans_loners", "encyclopedy_social_military_milstalkers", "stalker_story_6", " stalker_story_9", "stalker_story_10", "stalker_story_13", "stalker_story_14", "stalker_story_16", "stalker_sto ry_17", "stalker_story_18", "stalker_story_19", "stalker_story_20" } }
Этот скрипт отвечает за истории, услышанные от сталкеров (которые остаются в дневнике).
Затем лезем в gamedata/scripts/xr_statistic.script:
local killCountProps = { neutral_novice = 1, neutral_experienced = 2, neutral_veteran = 3, neutral_master = 4, neutral_legend = 5, monolith_novice = 1, monolith_experienced = 2, monolith_veteran = 3, monolith_master = 4, monolith_legend = 5, military_novice = 1, military_experienced = 2, military_veteran = 3, military_master = 4, military_legend = 5, killer_novice = 1, killer_experienced = 2, killer_veteran = 3, killer_master = 4, killer_legend = 5, ecolog_novice = 1, ecolog_experienced = 2, ecolog_veteran = 3, ecolog_master = 4, ecolog_legend = 5, dolg_novice = 1, dolg_experienced = 2, dolg_veteran = 3, dolg_master = 4, dolg_legend = 5, freedom_novice = 1, freedom_experienced = 2, freedom_veteran = 3, freedom_master = 4, freedom_legend = 5, bandit_novice = 1, bandit_experienced = 2, bandit_veteran = 3, bandit_master = 4, bandit_legend = 5, zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4, zombied_legend = 5,
Вместо 5 можно подставить любое число. Это сколько капает в ранг очков когда убиваешь людей с рангом легенда...
Лезем далее в gamedata/scripts/se_respawn.script:
-- Таблица ограничений на спаун: всего в симуляции не должно быть больше, чем указано. local simMaxCount = { stalker_novice = 43, stalker_regular = 48, stalker_veteran = 43, stalker_master = 20, stalker_legend = 5, monolith_novice = 0, monolith_regular = 30, monolith_veteran = 35, monolith_master = 30, monolith_legend = 10, military_novice = 0, military_regular = 32, military_veteran = 22, military_master = 5, military_legend = 2, killer_novice = 0, killer_regular = 18, killer_veteran = 17, killer_master = 10, killer_legend = 2, ecolog_novice = 1, ecolog_regular = 1, ecolog_veteran = 1, ecolog_master = 1, ecolog_legend = 0, dolg_novice = 0, dolg_regular = 33, dolg_veteran = 36, dolg_master = 17, dolg_legend = 13, freedom_novice = 50, freedom_regular = 20, freedom_veteran = 26, freedom_master = 21, freedom_legend = 13, bandit_novice = 40, bandit_regular = 50, bandit_veteran = 18, bandit_master = 10, bandit_legend = 2, zombied_novice = 20, zombied_regular = 15, zombied_veteran = 10, zombied_master = 10, zombied_legend = 10,
Ну, тут, я думаю, понятно. Остался последний штрих, отображение ранга в текстовом значении. То бишь залезаем в config\text\rus и открываем любой файл, например ui_st_mm.xml и добавляем туда:
<string id="legend"> <text>Легенда</text> </string>
Чтобы протестировать, лезем в config\gameplay\character_desc_general.xml и меняем ранг у актора. Поставим, например, 1201:
<specific_character id="actor" no_random = "1"> <name>actor_name</name> <icon>ui_npc_u_actor</icon> <map_icon x="2" y="5"></map_icon>
<team>Actor</team> <supplies> [spawn] \n device_torch \n </supplies>
<class>actor</class> <community>actor</community>
<rank>1201</rank> <reputation>0</reputation> <visual>actors\hero\stalker_novice</visual> </specific_character>
Заходим в игру и проверяем. И да! У ГГ теперь ранг Легенда!
Автор статьи: Fireman3000.
Сообщение отредактировал Nikitos817 - Пятница, 27.05.2011, 19:21
|