Skocz do zawartości

Dodajemy nową rangę - Legenda [SoC]


Gość Diegtiariow

Rekomendowane odpowiedzi

Gość Diegtiariow

NAZWA: Dodajemy nową rangę - Legenda [SoC]
TWÓRCA: Fireman3000

 

NIEZBĘDNE PLIKI:

Spoiler
  • game_relations.ltx (gamedata/config/creatures/)
  • _g.script (gamedata/scripts/)
  • xr_info.script (gamedata/scripts/)
  • xr_statistic.script (gamedata/scripts/)
  • se_respawn.script (gamedata/scripts/)
  • ui_st_mm.xml (gamedata/config/text/pol)


W celach przetestowania:

  • character_desc_general.xml (gamedata/config/gameplay/character_desc_general.xml)

 

CO ZMIENIĆ W PLIKACH:

Spoiler

1. GAME_RELATIONS.LTX:

Spoiler

Zmieniamy:

;rzeczywisty podział na grupy reputacji na skale
rating = novice, 300, experienced, 600, veteran, 900, master, 1200, legend

 

A potem wiersz z nazwą rang:

;skale dla wyświetlenia nazw zamiast liczb
;oceny, reputacje itd. w interfejsie
rating_names = novice, 300, experienced, 600, veteran, 900, master, 1200, legend

 

Potem szukamy tej linijki i zmieniamy ją:

[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

 

Potem zmieniamy jeszcze jedną linijkę. Nie jest znana jej działanie, ale lepiej nie ryzykować:

;punkty rankingowe zdobyte za zabicie postaci
;z określonym statusem
[rank_kill_points]
novice = 0
experienced = 0
veteran = 0
master = 0
legend = 0

 

 

2. _G.SCRIPT:

Spoiler
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

Zamiast 1200 możesz wpisać dowolną wartość. Ten skrypt jest odpowiedzialny albo za to, kiedy ranga gracza zostanie uzyskana, albo jeśli zmienisz rangę tego ostatniego za pomocą skryptu, wówczas jego punkty rangi są równe temu, co właśnie zastąpiliśmy (czyli 1200)...

 

 

3. XR_INFO.SCRIPT:

Spoiler
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"
}
}

Ten skrypt odpowiada za historie usłyszane od/znalezione u stalkerów (które pozostają w encyklopedii).

 

 

4. XR_STATISTIC.SCRIPT:

Spoiler
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,

Zamiast 5 można wstawić inną wartość. Tyle punktów wpada do sumy punktów, gdy zabijasz ludzi z rangą legendy...

 

 

5. SE_RESPAWN.SCRIPT:

Spoiler
-- Tablica ograniczeń na spawn: wszystkich NPC w symulacji nie powinno być więcej, niż określono.
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,

 

6. UI_ST_MM.XML:

Spoiler
<string id="legend">
<text>Legenda</text>
</string>

 

 

7. PLIK DO TESTU - CHARACTER_DESC_GENERAL.XML:

Spoiler
<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>

Aby przetestować wystarczy zmienić rangę u gracza na np. 1201.

Wchodzimy do gry i voila! GG ma rangę Legenda.

 

 

ŹRÓDŁO:

https://ap-pro.ru/forums/topic/1180-soc-dobavlyaem-novyy-rang-legenda/

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z tej strony, zgadzasz się na nasze Warunki użytkowania.