[PYTANIE] poprawienie reakcji NPC

Regulamin forum
Dział "Tworzenie Modyfikacji" służy do zadawania pytań odnośnie tworzenia modyfikacji, edytowania plików gry, oraz pisania tzw. tutoriali, czyli poradników odnośnie modyfikowania gry.
Nie zadajemy tutaj pytań odnośnie modyfikacji gotowych (nie dyskutujemy o nich!), prócz prób ich połączenia etc.


Przy cytowaniu plików *.LTX stosować tag [SYNTAX="ini"], przy cytowaniu plików *.script [SYNTAX="lua"] a przy cytowaniu plików *.xml - [SYNTAX="xml"].

[PYTANIE] poprawienie reakcji NPC

Postprzez scigacz1975 w 28 Lut 2014, 15:36

Gdzie, jak i co, oraz w których skryptach (bo sądzę że to jest zawarte w skryptach ale przecież mogę się mylić) można by poprawić, żeby nasi kompani z frakcji reagowali szybciej - np. kiedy dostaję zlecenie pomóż zająć xx - zajmujemy ale oni dalej świecą z zadaniem - jak to poprawić żeby po wybiciu obsady i zajęciu lokacji zaliczało się zadanie. Kolejny problem - oczyść coś i poczekaj na przybycie posiłków (utrzymaj do przybycia posiłków) - jak ich popędzić?
Awatar użytkownika
scigacz1975
Monolit

Posty: 3243
Dołączenie: 29 Sty 2010, 00:26
Ostatnio był: 28 Gru 2022, 19:35
Miejscowość: Stalowa Wola
Frakcja: Samotnicy
Ulubiona broń: --
Kozaki: 926

Reklamy Google

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez ZwinnyŻwawy w 30 Mar 2014, 12:25

@odp pewnie i tak za późno. :E ale dla przyszłych pokoleń:

1. (ważniejsze)
Poszukaj skryptu od opcji "atak" w Fraction Commander.
I wymień ten normalny w Vanilli na ten z moda (czy tam cs fun) .

2. ( i tak nie zadziała.)
Pobierz moda MSO od Trojanucha i poszukaj skryptów które ulepszają AI enpeców...
ale jest haczyk, bo mod jest do CoP'a...
Jestem znany na forum jako singlekonto... i nic tego nie zmieni.

Za ten post ZwinnyŻwawy otrzymał następujące punkty reputacji:
Negative Poldzer.
Awatar użytkownika
ZwinnyŻwawy
Kot

Posty: 47
Dołączenie: 05 Gru 2013, 18:36
Ostatnio był: 06 Maj 2014, 17:40
Miejscowość: Polska
Frakcja: Samotnicy
Ulubiona broń: SGI 5k
Kozaki: -3

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez scigacz1975 w 30 Mar 2014, 13:01

A możesz trochę dokładniej - np. które pliki?

PS - nie jest za późno, poza tym jest to akurat największy problem z jakim się borykam. Jeżeli chce Ci się przy tym pobawić to na PW masz betę moda. Bardzo mi zależy żeby to usprawnić i wywali władcę zony z moda bo za bardzo ułatwia życie.
Awatar użytkownika
scigacz1975
Monolit

Posty: 3243
Dołączenie: 29 Sty 2010, 00:26
Ostatnio był: 28 Gru 2022, 19:35
Miejscowość: Stalowa Wola
Frakcja: Samotnicy
Ulubiona broń: --
Kozaki: 926

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez ZwinnyŻwawy w 31 Mar 2014, 15:48

nie pobiorę tego modu - masz wyjaśnienie na pw.

nie znam się zbytnio na modowaniu, ale obczaję te pliki z Fractiona.
ewentualnie znajdę odpowiedni plik i podrzucę jakiemuś modderowi by mi pomógł.
Jutro robię sobie wolne od szkoły (z resztą podstawówka też ma wolne) więc popracuję.

ps. a kiedy wersja? ile mam czasu?

-----------------
@edit

O proszzzz... oto kodzik. Nie wiem co z tym dalej robić. Zapisz to w scripcie, czy zrób co tam chcesz.

To chyba dialog najemników...
:

Kod: Zaznacz wszystko
class "AttackDialog" ( Dialog )
function AttackDialog:__init( dialog ) super( dialog )
end
function AttackDialog:__finalize()
end
function AttackDialog:rebuildPhraseBuffer()
   --faction_commander.debugPrint( "AttackDialog:rebuildPhraseBuffer()" )
   Dialog.clearPhraseBuffer( self )
   local commander = faction_commander.facadeSingleton:getProtagonistCommander()
   if commander ~= nil then
      local expansion = faction_commander.Expansion( commander, 0 )
      local orders = expansion:getOrders()
      for i, order in pairs( orders ) do
         local smart = faction_commander.SmartTerrainEvaluator( nil, order:getDestination() ):getSmart()
         Dialog.enablePhrase( self, smart:name() )
         Dialog.enablePhrase( self, smart.smart_level )
      end
   end
end
function AttackDialog:init()
   --faction_commander.debugPrint( "AttackDialog:init()" )
    local phrase = self.dialog:AddPhrase( "dialog_fc_init_faction_attack", "0", "", -10000 )
   phrase:GetPhraseScript():AddAction( "faction_commander_dialog.bind_Action_rebuildPhraseBuffer" )
   
   phrase = self.dialog:AddPhrase( "dialog_fc_no_targets", "no_targets", "0", -10000 )
   phrase:GetPhraseScript():AddPrecondition( "faction_commander_dialog.bind_Precondition_isPhraseBufferEmpty" )
   
   phrase = self.dialog:AddPhrase( "dialog_fc_select_level", "select_level", "0", -10000 )
   phrase:GetPhraseScript():AddPrecondition( "faction_commander_dialog.bind_Precondition_isnotPhraseBufferEmpty" )
   
   for i, level in pairs( getAllSmartTerrain() ) do
      phrase = self.dialog:AddPhrase( game.translate_string( level.name ), level.name, "select_level", -10000 )
      phrase:GetPhraseScript():AddPrecondition( "faction_commander_dialog.bind_Precondition_isPhraseAvailable" )
      
      phrase = self.dialog:AddPhrase( "dialog_fc_select_target", level.name.."_select_target", level.name, -10000 )
      for j, smart in pairs( level.smarts ) do
         phrase = self.dialog:AddPhrase( "NO TEXT", smart:name(), level.name.."_select_target", -10000 )
         phrase:GetPhraseScript():AddPrecondition( "faction_commander_dialog.bind_Precondition_isPhraseAvailable" )
         phrase:GetPhraseScript():AddAction( "faction_commander_dialog.bind_Action_setPhraseValue" )
         phrase:GetPhraseScript():SetScriptText( "faction_commander_dialog.bind_Action_scriptedText_target" )
         
         phrase = self.dialog:AddPhrase( "dialog_fc_confirm_sir", "confirm", smart:name(), -10000 )
      end
      phrase = self.dialog:AddPhrase( "dialog_fc_cancel", "select_target_cancel", level.name.."_select_target", -10000 )
      phrase = self.dialog:AddPhrase( "dialog_fc_ok_sir", "select_target_cancel_ok", "select_target_cancel", -10000 )
   end
   phrase = self.dialog:AddPhrase( "dialog_fc_cancel", "select_level_cancel", "select_level", -10000 )
   phrase = self.dialog:AddPhrase( "dialog_fc_ok_sir", "select_level_cancel_ok", "select_level_cancel", -10000 )
   phrase = self.dialog:AddPhrase( "dialog_fc_yes", "yes", "confirm", -10000 )
   phrase:GetPhraseScript():AddAction( "faction_commander_dialog.bind_Action_orderFactionAttack" )
   
   phrase = self.dialog:AddPhrase( "dialog_fc_no", "no", "confirm", -10000 )
end


A tutaj zaraz obczaję inne pliczki.
Nie wiem, przykro mi... za długo by było roboty z tymi plikami.
A, że znam się kiepsko na modowaniu - poproś, by ktoś przerobił tamten script, by nie działał tylko na najemników, a na wszystkich stalkerów.


PS.
:

a nie łatwiej Ci wymienić władce zony na fraction commander? :caleb:
Jestem znany na forum jako singlekonto... i nic tego nie zmieni.
Awatar użytkownika
ZwinnyŻwawy
Kot

Posty: 47
Dołączenie: 05 Gru 2013, 18:36
Ostatnio był: 06 Maj 2014, 17:40
Miejscowość: Polska
Frakcja: Samotnicy
Ulubiona broń: SGI 5k
Kozaki: -3

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez ZwinnyŻwawy w 03 Kwi 2014, 14:38

Nie połączę postów, bo oba nie mają ze sobą nic wspólnego.

Robisz, czy się obraziłeś?

A tak naprawdę bardzo dobrym pomysłem jest zamienienie WŁADCY ZONY na Faction Commander
tylko trzeba tak zrobić, by NPC mieli non stop ustawieni "eskploracja" (?) czyli żeby chodzili po wszelkich
wrogich terenach oraz unieszkodliwiali wrogów.
Moim zdaniem np. ty lub smoq powinniście wiedzieć, jak zrobić blokadę lub po prostu wypier*zielić gdzieś inne opcje.
Był tutaj na forum taki temat... koleś chciał wywalić okno handlu. Poszukaj go - wczoraj go obczaiłem.

Pozdrawiam ZŻ. ;)
Jestem znany na forum jako singlekonto... i nic tego nie zmieni.
Awatar użytkownika
ZwinnyŻwawy
Kot

Posty: 47
Dołączenie: 05 Gru 2013, 18:36
Ostatnio był: 06 Maj 2014, 17:40
Miejscowość: Polska
Frakcja: Samotnicy
Ulubiona broń: SGI 5k
Kozaki: -3

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez scigacz1975 w 03 Kwi 2014, 15:07

Połowicznie sobie poradziłem - wywaliłem spawnera i zostawiłem tylko Faction Commander-a. Zrobiłem mu swoje tłumaczenie i jak na razie śmiga. Ale fajnie by było jak by ktoś mi podpowiedział jak przerobić pliki żeby NPC mieli defaultowo włączony "expansion"

Ja też nie jestem mocny w skryptach - tak naprawdę to dłubię bardziej na czuja niż to rozumiem.
Awatar użytkownika
scigacz1975
Monolit

Posty: 3243
Dołączenie: 29 Sty 2010, 00:26
Ostatnio był: 28 Gru 2022, 19:35
Miejscowość: Stalowa Wola
Frakcja: Samotnicy
Ulubiona broń: --
Kozaki: 926

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez ZwinnyŻwawy w 04 Kwi 2014, 14:42

najprościej jest gdzieś wypier*olić poza ekran (żeby player nie mógł go otworzyć) te opcje. Będą, ale nie będą. ;)
Jestem znany na forum jako singlekonto... i nic tego nie zmieni.
Awatar użytkownika
ZwinnyŻwawy
Kot

Posty: 47
Dołączenie: 05 Gru 2013, 18:36
Ostatnio był: 06 Maj 2014, 17:40
Miejscowość: Polska
Frakcja: Samotnicy
Ulubiona broń: SGI 5k
Kozaki: -3

Re: [PYTANIE] poprawienie reakcji NPC

Postprzez scigacz1975 w 04 Kwi 2014, 19:03

O ile da się to zrobić z dodatkami typu hud to z tym niestety nie, ponieważ uruchamiane jest osobną komendą w osobnym oknie. A mnie chodzi właśnie o to żeby nie trzeba było stosować żadnych dodatkowych komend. Chociaż korzystanie z Faction Commandera ma też swoje dobre strony - nie musimy wtedy czekać do usranej śmierci na posiłki których nie ma/nie przybywają. Wystarczy wejść do FC i dać komendę zbiórka. Działa to nawet wtedy gdy mamy zadanie na bagnach zdobądź i utrzymaj żwirowisko czy wieżę.
Awatar użytkownika
scigacz1975
Monolit

Posty: 3243
Dołączenie: 29 Sty 2010, 00:26
Ostatnio był: 28 Gru 2022, 19:35
Miejscowość: Stalowa Wola
Frakcja: Samotnicy
Ulubiona broń: --
Kozaki: 926


Powróć do Czyste Niebo

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość