Creating Factions And Unique NPCs

From Mod Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 16:55, 12 July 2008 (edit)
Don Reba (Talk | contribs)
m (added TOC)
← Previous diff
Current revision (17:02, 12 July 2008) (edit) (undo)
Don Reba (Talk | contribs)
(split into "Creating factions" and "Creating unique NPCs")
 
(One intermediate revision not shown.)
Line 1: Line 1:
-==Creating new factions==+#REDIRECT [[Creating factions]]
- +
-This is a short tutorial i on making factions its extracted from the russian wiki and i have edited it so that those who cant speak russian or was having a hard time understanding it can now do this, that plus i could never find a tutorial on how to do this.+
- +
-__TOC__+
- +
-I assume you have already extracted the DB's+
- +
-We will make a faction called wind+
- +
-'''1. To start, open game_relations.ltx and relations factions to the table at the end of the title and add the name of the factions and its relations ratios from other factions. Also, do not forget to register its own attitude to other groups:'''+
- +
-<source lang="ini">+
-[communities_relations]+
-;|actor |act_dol|act_fre|stalker|monolit|militar|killer |ecolog |dolg |freedom|bandit |zombied|strange|trader|arena_enemy|wind|+
-;=================================================================================================================================+
-actor = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0+
-actor_dolg = 0, 0, 0, 0, -5000, -500, -5000, 5000, 600, -5000, -5000, -5000, 0, 0, -5000+
-actor_freedom = 0, 0, 0, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, -5000, 0+
-stalker = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0+
-monolith = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, 5000, 5000, -5000, 0, -5000, 0+
-military = -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, -5000, -5000, -5000, 0, 0, -5000, 0+
-killer = -5000, -5000, 0, -5000, -5000, -5000, 5000, -5000, -5000, -5000, 0, -5000, -5000, 0, -5000, 0+
-ecolog = 0, 600, -5000, 0, -5000, 1000, -5000, 5000, 500, -5000, -500, -5000, 0, 0, 0, 0+
-dolg = 0, 600, -5000, 0, -5000, -500, -5000, 5000, 5000, -5000, -5000, -5000, 0, 0, 0, 0+
-freedom = 0, -5000, 600, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, 0, 0+
-bandit = -5000, -5000, 0, -5000, -5000, -500, 0, -5000, -5000, 0, 0, -5000, -5000, 0, -5000, 0+
-zombied = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, 0+
-stranger = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -500, -5000, 0, 0, 0, 0+
-trader = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0+
-arena_enemy = -5000, -5000, -5000, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, 0, 0, 0+
-wind = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0+
-</source>+
- +
-Also, change this line, adding there name and number groupings:+
- +
-titles factions communities+
-communities = actor, 0, actor_dolg, 1, actor_freedom, 2, stalker, 5, monolith, 6, military, 7, killer, 8, ecolog, 9, dolg, 10, +
-freedom, 11, bandit, 12, zombied, 13, stranger, 14, trader, 15, arena_enemy, 16, wind, 18,+
- +
-add wind into the communites_sympahy section+
- +
-<source lang="ini">+
-[communities_sympathy]+
-actor = 0.0+
-actor_dolg = 0.0+
-actor_freedom = 0.0+
-stalker = 0.0+
-monolith = 0.0+
-military = 0.0+
-killer = 0.0+
-ecolog = 0.0+
-dolg = 0.1+
-freedom = 0.1+
-bandit = 0.0+
-zombied = 0.0+
-trader = 0.0+
-stranger = 0.0+
-arena_enemy = 0.0+
-wind = 0.0+
-</source>+
- +
-'''2. After that, in a file death_manager.script line looking for local community_list in parentheses and add the name of your group:'''+
- +
-<source lang="lua">+
-function init_drop_settings()+
- local community_list = { "stalker", "dolg", "freedom", "bandit", "military", "zombied", "ecolog", "killer", "monolith", +
-"arena_enemy", "actor_dolg", "wind" }+
-</source>+
- +
-'''3. The file death_items_by_communities.ltx write [x]: stalker (instead of x - the name of your group):'''+
- +
-<source lang="ini">+
-[...]+
-af_dummy_spring = 0+
-af_fuzz_kolobok = 0+
- +
-;Еда+
-vodka = 0+
- +
-[arena_enemy]+
-[actor_dolg]+
- +
-[wind]: stalker+
-bread = 0+
-kolbasa = 0+
-vodka = 0+
-energy_drink = 0.3+
-</source>+
- +
-'''4. If respavn provides a new group of fighters, in se_respawn.script set in local simMaxCount = (row after row with zombified stalkers:'''+
- +
-<source lang="lua">+
-wind_novice = 20, wind_regular = 20, wind_veteran = 20, wind_master = 6,+
-</source>+
- +
-'''5. Write the faction in xr_statistic.script as follows just under the zombied lines:'''+
- +
-<source lang="lua">+
-zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4, +
-</source>+
- +
-write+
- +
-<source lang="lua">+
-wind_novice = 1, wind_experienced = 2, wind_veteran = 3, wind_master = 4 +
-</source>+
- +
-'''6. in character_desk_x.xml choose any NPC (or group) and changing its community:'''+
- +
-<source lang="xml">+
-<!---esc_wolf--->+
-<specific_character id="esc_wolf" team_default = "1">+
- <name>esc_wolf_name</name>+
- <icon>ui_npc_u_stalker_neytral_balon_1</icon>+
- <bio>esc_wolf_bio</bio>+
- +
- <class>esc_wolf</class>+
- <community>wind</community>+
- [...]+
-</source>+
- +
-'''7. To have character in the "Grouping" not to show "wind", and "Wind", record put the following at the top the file under the lines shown in bold in file string_table_general.xml:'''+
- +
-<source lang="xml">+
-<?xml version="1.0" encoding="windows-1251" ?>+
-<string_table>+
- <string id="wind">+
- <text>wind</text>+
- </string>+
- <string id="actor">+
- <text>wind</text>+
- </string>+
- [...]+
-</source>+
- +
-Your new faction should now be working and whoever you changed will now be part of that faction you can replace wind with whatever you want them to be called.+
- +
-==Creating new unique npc's==+
- +
-This is the way to do it if spawing the NPC from the all.spawn and its also needed to keep him there this is how i spawned blade in my LITZ mod+
- +
-the things below don't show the slashs it just takes them away so don't copy and paste it all as it wont work+
- +
-I Really hope this helps you+
- +
-you have to edit quite a few files:+
- +
-Config>Text>ENG:+
- +
-'''Stable_bio_name.xml'''+
- +
-Config>Gameplay:+
- +
-'''NPC_Profile.xml'''+
-'''Character_desc_escape'''+
- +
-Config>Cretures:+
- +
-'''m_stalker.ltx'''+
- +
-scripts or Config>scripts not sure which one+
- +
-'''Change the according gulag script EG:gulag_escape'''+
- +
-and then you would have to edit the all.spawn to accomadate and spawn him+
- +
-(shows example of blade My character from my LITZ mod)+
- +
-'''m_stalker.ltx'''+
- +
-<source lang="ini">+
-[esc_blade]:stalker+
-character_profile = esc_blade+
-visual = actorsdolgstalker_do_nauchniy.ogf+
-corpse_visual = actorsdolgstalker_do_nauchniy.ogf+
-immunities_sect = stalker_immunities+
-</source>+
- +
-thats placed at the bottom+
- +
-'''Character_desc_escape.XML'''+
- +
-<source lang="xml">+
-<!-------------------------------------esc_blade------------------------------------------------------->+
-<specific_character id="esc_blade" team_default = "1">+
- <name>esc_blade_name</name>+
- <icon>ui_npc_u_stalker_do_nauchniy</icon>+
- <bio>esc_blade_bio</bio>+
- +
- <class>esc_blade</class>+
- <community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>+
- +
- <rank>820</rank>+
- <reputation>840</reputation>+
- <money min="2000" max="5000" infinitive="0"></money>+
- +
- <snd_config>characters_voicehuman_03dolg</snd_config>+
- <crouch_type>0</crouch_type>+
- +
- <visual>actorsdolgstalker_do_nauchniy</visual>+
- <supplies>+
- [spawn] n+
- wpn_walther n+
- ammo_9x19_pbp = 1 n+
- wpn_groza n+
- ammo_9x39_ap = 1 n+
- ammo_9x39_sp5 = 1 n+
- ammo_vog-25p = 2 n+
- #include "gameplaycharacter_items.xml" n+
- #include "gameplaycharacter_food.xml" n+
- #include "gameplaycharacter_drugs.xml"+
- </supplies>+
- +
- +
- #include "gameplaycharacter_criticals_6.xml"+
- #include "gameplaycharacter_dialogs.xml"+
- +
- <start_dialog>hello_dialog</start_dialog>+
-</specific_character>+
-</source>+
- +
-'''NPC_Profile.XML'''+
- +
-<source lang="xml">+
-<character id="esc_blade">+
- <class>esc_blade</class>+
-</character>+
-</source>+
- +
-'''Stable_bio_name'''+
- +
-<source lang="xml">+
-<string id="esc_blade_name">+
- <text>Blade</text>+
-</string>+
-<string id="esc_blade_bio">+
- <text>The leader of the Duty camp near the military outpost, his good leadership skills and tactics won Duty the camp and overthrew the Bandits</text>+
-</string>+
-</source>+
- +
-'''(shows all.spawn section for blade):'''+
- +
-<source lang="ini">+
-[870]+
-; cse_abstract properties+
-section_name = stalker+
-name = esc_blade+
-position = 109.19536590576, 7.1485390663147, 0.9805214738846+
-direction = 0.0445535257458687,-0.000645029998850077,0.0144814234226942+
- +
-; cse_alife_trader_abstract properties+
-money = 5000+
-character_profile = esc_blade+
- +
-; cse_alife_object properties+
-game_vertex_id = 119+
-distance = 3.5+
-level_vertex_id = 410518+
-object_flags = 0x==bf+
-custom_data = <<END+
-[smart_terrains]+
-none = true+
-END+
- +
-; cse_visual properties+
-visual_name = actorsdolgstalker_do_nauchniy+
- +
-; cse_alife_creature_abstract properties+
-g_team = 0+
-g_squad = 1+
-g_group = 5+
-health = 2+
-dynamic_out_restrictions =+
-dynamic_in_restrictions =+
- +
-upd:health = 2+
-upd:timestamp = 0x6d6d695f+
-upd:creature_flags = 0x75+
-upd osition = -210.632614135742,-20.050708770752,-142.461120605469+
-upd _model = 0+
-upd _torso = -0.000645029998850077,0.0445535257458687,0+
-upd:g_team = 0+
-upd:g_squad = 1+
-upd:g_group = 5+
- +
-; cse_alife_monster_abstract properties+
- +
-upd:next_game_vertex_id = 65535+
-upd rev_game_vertex_id = 65535+
-upd:distance_from_point = 0+
-upd:distance_to_point = 0+
- +
-; cse_alife_human_abstract properties+
-predicate5 = 1,0,0,2,0+
-predicate4 = 2,2,1,2+
- +
-; cse_ph_skeleton properties+
- +
-upd:start_dialog =+
- +
-; se_stalker properties+
-</source>+
- +
-Apart from the gulag scripts thats pretty much it i belive however if i missed something out im sure someone will point it out and correct it or even explain it better+
- +
-Hope this helped you please tell me if this worked for you.+

Current revision

  1. REDIRECT Creating factions
Personal tools