Tworzenie OP jednostek (czyli jak zwiększyć maksymalny poziom atrybutów)Trochę zastanawiałem się, czy dać to tu, czy do OSP, no ale w końcu zdecydowałem się na Bazę Skryptów. Przejdźmy do tematu: Relkov98 zainspirował mnie tymi oto słowami
tak wystarczy 15-20 takich i wtedy 5 miast możesz zdobyć
do zrobienia OP jednostek. Pytanie: ale jak to osiągnąć? Można dać zbroje po 500 ochrony... pff... wolę coś trudniejszego ^^ A więc przejdźmy do sedna całego skryptu.
Powiedzmy, że będą się nazywać 'Swadiańscy Strażnicy Relikwii' (whateva). Od czego zacząć robienie tej 20 osobowej armii? Od header_troops.py. Interesuje nas ten fragment:
str_30 = bignum | 0x0000001eJak widać, jest to maksymalna wartość, wyższej nie ma... Ale nasi żołnierze mają być super, więc dodamy więcej specjalnie dla nich! Wklejcie to poniżej str_30:
str_31 = bignum | 0x0000001f
str_32 = bignum | 0x00000020
str_33 = bignum | 0x00000021
str_34 = bignum | 0x00000022
str_35 = bignum | 0x00000023
str_36 = bignum | 0x00000024
str_37 = bignum | 0x00000025
str_38 = bignum | 0x00000026
str_39 = bignum | 0x00000027
str_40 = bignum | 0x00000028
str_41 = bignum | 0x00000029
str_42 = bignum | 0x0000002a
str_43 = bignum | 0x0000002b
str_44 = bignum | 0x0000002c
str_45 = bignum | 0x0000002d
str_46 = bignum | 0x0000002e
str_47 = bignum | 0x0000002f
str_48 = bignum | 0x00000030
str_49 = bignum | 0x00000031
str_50 = bignum | 0x00000032
str_51 = bignum | 0x00000033
str_52 = bignum | 0x00000034
str_53 = bignum | 0x00000035
str_54 = bignum | 0x00000036
str_55 = bignum | 0x00000037
str_56 = bignum | 0x00000038
str_57 = bignum | 0x00000039
str_58 = bignum | 0x0000003a
str_59 = bignum | 0x0000003b
str_60 = bignum | 0x0000003c
Czy jest to maksymalna możliwa wartość? Oczywiście, że nie! Możecie sobie podnieść to tak wysoko, jak chcecie (oczywiście w pewnym momencie gra zacznie was wyrzucać w bitwach) według podanego przeze mnie wzoru, pamiętając tylko, że '0x0000003c' oznacza lvl tej cechy w zapisie hex(owym? sory, słowo po polsku mi wyleciało z głowy). Generalnie musicie pamiętać, że kod hexowy podajecie w zależności od cechy w innym miejscu (gdzie zz):
w sile to wygląda tak: 0x000000zz
w zręczności: 0x0000zz00
w inteligencji: 0x00zz0000
w charyźmie: 0xzz000000
Analogicznie, dodaj do 60 lvla zręczność:
agi_31 = bignum | 0x00001f00
agi_32 = bignum | 0x00002000
agi_33 = bignum | 0x00002100
agi_34 = bignum | 0x00002200
agi_35 = bignum | 0x00002300
agi_36 = bignum | 0x00002400
agi_37 = bignum | 0x00002500
agi_38 = bignum | 0x00002600
agi_39 = bignum | 0x00002700
agi_40 = bignum | 0x00002800
agi_41 = bignum | 0x00002900
agi_42 = bignum | 0x00002a00
agi_43 = bignum | 0x00002b00
agi_44 = bignum | 0x00002c00
agi_45 = bignum | 0x00002d00
agi_46 = bignum | 0x00002e00
agi_47 = bignum | 0x00002f00
agi_48 = bignum | 0x00003000
agi_49 = bignum | 0x00003100
agi_50 = bignum | 0x00003200
agi_51 = bignum | 0x00003300
agi_52 = bignum | 0x00003400
agi_53 = bignum | 0x00003500
agi_54 = bignum | 0x00003600
agi_55 = bignum | 0x00003700
agi_56 = bignum | 0x00003800
agi_57 = bignum | 0x00003900
agi_58 = bignum | 0x00003a00
agi_59 = bignum | 0x00003b00
agi_60 = bignum | 0x00003c00
No dobrze, a więc co teraz? Teraz dodajmy samą jednostkę:
["swadian_straznik_relikwi","Swadian Guard of Holy Relic","Swadian Guards of Holy Relic",tf_guarantee_shield|tf_guarantee_boots|tf_guarantee_armor|tf_guarantee_helmet,0,0,fac_kingdom_1,
[itm_awlpike,itm_pike,itm_great_sword,itm_morningstar,itm_sword_medieval_b,itm_tab_shield_heater_c,itm_tab_shield_heater_d,itm_coat_of_plates,itm_plate_armor,itm_plate_boots,itm_guard_helmet,itm_helmet_with_neckguard,itm_bascinet,itm_guard_helmet,itm_leather_gloves],
str_60|agi_60|int_12|cha_7|level(60),wp(300)|
knows_ironflesh_10|knows_power_strike_10|knows_athletics_10|knows_riding_10, swadian_face_young_1, swadian_face_old_2],
Ofkorz nie mają najlepszych cech i umiejętności, nie chciało mi się :P
Teraz skompilujcie MS i sprawdźcie czy nie występują jakieś błędy. Jeśli nie, teraz zabierzemy się za skrypt, który doda nam tych pr0 żołnierzy. Wyszukaj "start_phase_2". Powinien pokazać ci się tekst z menu, w którym wybieramy początkowe miasto. Lekko ten menu zmodyfikujmy - zaraz za tym:
("town_6",[(eq, "$current_startup_quest_phase", 0),],"join a caravan to Shariz, in the Sarranid Sultanate.",
[
(assign, "$current_town", "p_town_19"),
(assign, "$g_starting_town", "$current_town"),
(assign, "$g_journey_string", "str_journey_to_shariz"),
(jump_to_menu, "mnu_start_phase_2_5"),
# (party_relocate_near_party, "p_main_party", "$g_starting_town", 2),
# (change_screen_return),
]),
wklej to:
("town_1a",[(eq, "$current_startup_quest_phase", 0),],"join a pack of guardians of holy relic.",
[
(assign, "$current_town", "p_town_6"),
(assign, "$g_starting_town", "$current_town"),
(assign, "$g_journey_string", "str_journey_to_praven"),
(jump_to_menu, "mnu_start_phase_2_5"),
(party_add_members, "p_main_party", "trp_swadian_straznik_relikwi", 20),
(change_screen_return),
# (party_relocate_near_party, "p_main_party", "$g_starting_town", 2),
# (change_screen_return),
]),
Jak widać, jest to lekko zmodyfikowana opcja pierwsza - daje nam dodatkowo 20 Swadiańskich Strażników Relikwi. Teraz skompiluj MS i ewentualne błędy popraw, a oto efekt końcowy:
Miał być jeszcze skrin z walki, ale trochę za późno zorientowałem się, że mam ustawione "trochę" za wysokie ustawienia graficzne i WB mnie najpierw ściął, a potem wyrzucił :(