Jump to content

Dodajemy nową rangę - Legenda [SoC]


Guest Diegtiariow

Recommended Posts

Guest 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/

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.