Children of Bhaal (Forum)
Największy polski Klan Sagi Baldur's Gate - Children of Bhaal

Modding - Pytania i porady odnośnie modowania w wersji Enhanced

nowus777 - 2015-07-15, 15:02
Temat postu: Pytania i porady odnośnie modowania w wersji Enhanced
Przygotowuję się do pisania romansowego modu NPC do BG:EE. Chciałbym skorzystać z poradnika napisanego przez użytkownika Lava. Napiszcie proszę, czy jest on aktualny dla wersji EE?

Poprawiłem nieco nazwę tematu - teraz można tu pisać na temat wszystkich aspektów modowania wersji rozszerzonych oraz różnic w pisaniu modów do EE. - L`f

Lava Del'Vortel - 2015-07-15, 19:04

Ale masz zamiar dopisać romans do istniejącej postaci, czy chodzi o nowego NPC? Jeżeli chodzi o nowego NPC to nie wiem na ile to dobry pomysł korzystać z mojego starego i trochę out-dated poradnika. Polecam Branwen NPC autorstwa Kulyok bo to mod-tutorial, wszystko jest w nim opisane co i jak się robi. Od biedy z tego mojego też można, ale jest wiele lepszych rozwiązań, niż te proponowane tam (w gruncie rzeczy najlepiej by było gdyby np. Kirara zaktualizowała moje poradniki, nie mam nic przeciwko, nawet jeśli miały by być zmienione w 75-80%).

Jeżeli chodzi o EE to wiele to się nie różni - inne kodowanie by polskie znaki działały (jeśli piszesz po polsku), nie używaj znaku # w plikach związanych z podklasami (jeśli dodajesz), inne rozmiary portretów, musisz mieć najnowsze WeiDU, inaczej się dodaje wpisy do dziennika... zmiany nie są gigantyczne, a w ogóle mody i sama gra stabilniej działa na EE.

nowus777 - 2015-07-15, 20:18

Myślałem zarówno o stworzeniu romansu dla Safany z kontynuacją w BG2 jak i o stworzeniu zupełnie odrębnego NPC z własną historią.

Dzięki za odpowiedź, będę korzystał z obydwóch tutoriali :)

Lava Del'Vortel - 2015-07-15, 22:45

Hmmm, nie wiem czy Safana nie ma być przypadkiem rozwinięta w nowym EE SoD, więc wstrzymałbym się na Twoim miejscu, by treść Twojego dodatku była jako tako kompatybilna z treścią nowej części. Zawsze warto coś takiego wziąć pod uwagę.

W tym czasie warto pomyśleć (chyba - tak przynajmniej ja uważam) nad tą postacią, którą chcesz zrobić od zera, lub jeśli chcesz umieścić w BG2 kogoś z BG1 (nie mam na myśli NPC, ale np. gdybyś chciał umieścić w grze taką Tamoko, czy kogoś z drużyny treningowej z prologu w wersji rozwiniętej) to zapoznałbym się z tekstami, soundsetami czy cokolwiek już istnieje. Tak by odwalić jak najlepszą robotę.

nowus777 - 2015-07-15, 22:48

Hm, a natknąłeś się gdzieś na taką informację o Safanie?
Lava Del'Vortel - 2015-07-15, 23:02

Taki mój luźny wniosek po przeczytaniu takich notek:

Cytat:
The presence of Safana in most of the parties shown seen so far suggests Coran isn't included.


Cytat:
Right now we know of at least 16 NPCs for SoD: the 4 new NPCs (Captain Corwin, Voghiln, M'Khiin, and Glint) 4 returning Enhanced Edition NPCs (Dorn, Neera, Rasaad, Baeloth) and 8 NPCs from the original BG who will continue to accompany you at some point on your SoD quest (Khalid, Jaheira, Minsc, Dynaheir, Imoen, Edwin, Viconia, Safana).


Cytat:
It will be interesting to see how Beamdog fleshes out Safana and her personality since she appears destined for more "screen time" in SoD and we know of her ultimate betrayal in BG2. I'd also like to see how a player character/Dynaheir/Minsc triangle plays out.


Bazuje to na domysłach innych fanów, może wcale nie będzie miała dialogów, nie wiadomo jak ta część jest rozpisane, ale jest możliwość, że coś tam mówi...

źródło: http://forums.beamdog.com...w-so-far#latest

nowus777 - 2015-07-15, 23:13

Jasne, dzięki za źródło. W takim razie póki co rzeczywiście skupię się na razie na swoim własnym autorskim NPC :)
Ruffle_truffle - 2015-08-15, 20:20

Co mam zrobić z plikiem #fl_add_kit? Napisałem technologa pod EE, ale nie mogę rozszyfrować o co chodzi z tym plikiem (angielski dopiero od liceum, ech).
K4thos - 2015-08-15, 23:56

w tp2
Kod:
INCLUDE ~nazwaModu/fl#add_kit_ee.tpa~


tu masz 2 komplety przykładowego kodu dodającego nowe kity do EE. Komponent 25 (start od linii 1887) i komponent 26 (linia 2099): https://github.com/K4thos/EET_Tweaks/blob/master/EET_Tweaks/EET_Tweaks.tp2

// to komentarz niewidoczny przez wiedu. Co oznacza który 2da znajdziesz w necie (w przykładowym kodzie masz też komentarze po których odgadniesz działanie większości z nich i bez sprawdzania). Już to chyba kiedyś dla ciebie wstawiałem. Nie bardzo rozumiem w czym problem. fl#add_kit_ee.tpa to po prostu funkcja weidu dodająca nowe bajery do kitów (w większości niemożliwe do implementacji w oryginalnym baldurze). Na dobrą sprawę niczym nie różni się od ADD_KIT, ot kilka dodatkowych 2DA do patchowania.

Ruffle_truffle - 2015-08-31, 10:42

Rzecz w tym, że klasa się instaluje bez errorów, ale nie może zostać wybrana. Instaluje się poprawnie zarówno stara, jak i nowa wersja (pisana z poradnikiem w eng. Do ee). Ktoś miał już taki problem ("class cannot be selected"). P.S. Zdublował mi się post w projektach.
K4thos - 2015-08-31, 12:42

a nie przekroczyłeś przypadkiem limitu podklas w EE? Obecnie jest chyba max 9 na klasę. Suwak umożliwiający wybór nieograniczonej liczby podklas dojdzie w następnym patchu dla BG:EE/BG2:EE/IWD:EE (element nowego, przyjaznego modderom GUI).
Ruffle_truffle - 2015-08-31, 18:07

Może wersję miałem nie taką, nie wiem. W sumie BG EE Kitpack jest już nieaktualny (tylko to instalowałem), ale ten mod nie wprowadził nowych klas - one nie się nawet nie pojawiały na pasku.

Zainstalowałem na innym komputerze tylko technologa. Klasa zainstalowała się bez żadnych informacji o błędach (jak już wspominałem), ale nie dało się jej wybrać.

Mam chyba jeszcze to, co pisałem pod ee. Na swoim komputerze. Sprawdzę, czy jest kompatybilne to coś z nową wersją (podejrzewam jednak, że nie).

P.S. Klasa pod EE była bliższa pierwotnym założeniom - brak kradzieży kieszonkowej, cichego chodzenia, krycia się w cieniu, sztyletowania i możliwy praworządny dobry charakter.

Ruffle_truffle - 2016-04-18, 10:57

Wciąż nie wiem jak przekonwertować podklasę pod EE. Mam tu coś takiego:
https://forums.beamdog.com/discussion/6950/player-how-to-getting-mods-to-work-on-bgee/p1

Nie wiem, czy to nie przestarzałe. Ogólnie wszystko się instaluje, lecz "class cannot be selected".



EDIT: Znalazłem jeszcze coś takiego - Kit cannot be selected

Ściągnąłem plik fl#add_kit_ee.tpa, ale nie wiem do końca co dalej. Może mi ktoś wytłumaczyć jak dziecku? Próbuję sam to zrobić, ale nie wiem, czy dam radę.

EDIT 2: Sposób wodza nad wodzami, by dodać podklasę Shadowkeeperem nie działa na EE. Co prawda podklasa (Derwisz) się instaluje, można ją wybrać i dodać ten "kit" do postaci, ale nic się nie dzieje po wczytaniu gry. Help! Chciałbym bardzo zagrać na EE derwiszem czy technologiem.

Ruffle_truffle - 2016-08-28, 14:51

Jak to aktualnie jest z tym modowaniem EE? Obiło mi się o uszy, że patch 2.0 wszystko zniweczył (to cenzuralne słowo).

Chciałem się zabrać za konwersję modów pod edycję rozszerzoną i swego czasu poświęciłem na to trochę czasu. Czyżby to był czas zmarnowany?

Może ktoś inny, niewtajemniczony, też skorzysta z odpowiedzi.

Tuldor88 - 2016-08-31, 18:38

Z tego co kojarzę wersja 2.0 ze streama, goga i inszych pochodnych kaszani się z modami i trzeba używać jakiego niewielkiego programu jaki promieniste pieski wypuściły by nie stanowiło to problemu... więc wypadkowo modować można i wymaga to raptem kilku s na odpalenie pliku acz nie zmienia to faktu że marketingowo to wygląda conajmniej paradnie
AL|EN - 2016-09-11, 14:29

Jeżeli wersjia BG:EE:
- posiada zakupiony dodatek SoD
- jest w wersji ze Steam/GoG

To należy raz zainstalować modmegre:
https://github.com/ScottBrooks/modmerge/releases
https://forums.beamdog.com/discussion/50441/modmerge-merge-your-steam-gog-zip-based-dlc-into-something-weidu-nearinfinity-dltcep-can-use/p1

wersja bezpośrednio ze sklepu Beamdog nie posiada tej uciążliwości.

Ruffle_truffle - 2016-09-11, 16:13

Dobrze wiedzieć. Gdzieś na innym kompie mam coś pod EE.

Przedpotopowa?

Główne rozczarowanie EE: przecież to Trilogy z kilkoma bohaterami/zadaniami(!), do oryginału + mody się nie umywa.

Nie umywa się nawet do Reloaded, gdzie zrobiono to w 3D (paradoksalnie, Neverwinter się szybciej zestarzał).

Ja jestem konserwa (wbrew pozorom?), dla której lata to godziny... I już!

Zed Nocear - 2017-02-26, 14:43

Widzę, że temat stoi, choć wersja EE 2.x wprowadziła całkiem sporo nowych kłopotów.

Nie szperam po forum Beamdoga, więc może mnie ktoś oświeci, czy jest planowana nowa wersja enginu i co ma poprawiać?

Czy engine EE jest w sumie jeden dla BGEE, BG2EE i IWDEE? Tak sugeruje jeden z plików konfiguracyjnych w BGEE, gdzie można wybrać tryb działania, choć jak ustawiłem tryb BG2EE, nie zauważyłem żadnych różnic w działaniu gry.

W tej chwili największy problem sprawiają mi wpisy do dziennika. Używam ADD_JOURNAL i wpisy questowe funkcjonują w BGEE 2.3 bez zarzutu, ale część wpisów informacyjnych (niequestowych) dodawanych w dialogach przez JOURNAL nie pojawia się w dzienniku, podobnie jak też niektóre oryginalne zapiski dziennika w grze. Co ciekawe, te wpisy są w save'ie, bo jak ten sam save wczytam w wersji BGEE 1.3, to wspomniane wpisy były na swoim miejscu w sekcji "dziennik". Teraz nie mam pewności, czy to moje TWM coś miesza, czy jest to mniej lub bardziej znany problem wersji 2.3?

Na marginesie dziennik w BGEE 2.x wygląda okropnie, mieści mniej tekstu i przez to jest mniej czytelny. Jedynym fajnym pomysłem jest połączenie w jedną listę otwartych i zakończonych questów.

Cahir - 2017-02-26, 15:01

Zed Nocear napisał/a:
Czy engine EE jest w sumie jeden dla BGEE, BG2EE i IWDEE? Tak sugeruje jeden z plików konfiguracyjnych w BGEE, gdzie można wybrać tryb działania, choć jak ustawiłem tryb BG2EE, nie zauważyłem żadnych różnic w działaniu gry.


O ile się orientuję nie do końca: BGEE, BG2EE i SoD (Siege of Dragonspear) faktycznie działają na tym samym silniku (wszystkie 3 gry śmigają na aktualnym patchu 2.3), natomiast IWDEE jest trochę w tyle (patch 1.4). W związku z tym w IWDEE niektóre nowe rzeczy z BGEE/BG2EE nie będą działać.

Zed Nocear napisał/a:
W tej chwili największy problem sprawiają mi wpisy do dziennika. Używam ADD_JOURNAL i wpisy questowe funkcjonują w BGEE 2.3 bez zarzutu, ale część wpisów informacyjnych (niequestowych) dodawanych w dialogach przez JOURNAL nie pojawia się w dzienniku, podobnie jak też niektóre oryginalne zapiski dziennika w grze. Co ciekawe, te wpisy są w save'ie, bo jak ten sam save wczytam w wersji BGEE 1.3, to wspomniane wpisy były na swoim miejscu w sekcji "dziennik". Teraz nie mam pewności, czy to moje TWM coś miesza, czy jest to mniej lub bardziej znany problem wersji 2.3?


Nie kojarzę, żeby ktoś stworzył jakiś poradnik dotyczący wpisów do dziennika uwzględniający ADD_JOURNAL, ale może w tym temacie znajdziesz odpowiedzi na swoje problemy.

Zed Nocear napisał/a:
Na marginesie dziennik w BGEE 2.x wygląda okropnie, mieści mniej tekstu i przez to jest mniej czytelny. Jedynym fajnym pomysłem jest połączenie w jedną listę otwartych i zakończonych questów.


To fakt, dziennik im się nie udał. Na szczęście znacznie poprawili możliwości modowania UI i powstało już kilka modyfikacji znacznie poprawiających wygląd UI. Polecam przejrzeć ten temat.

Ruffle_truffle - 2017-07-01, 09:14

Jakoś udało mi się dwie podklasy dostosować do EE (w końcu).

Co do handle charsets - wpisałem w pliku .tp2:

INCLUDE ~%MOD_FOLDER%/handle_charsets.tpa~

oraz umieściłem ten plik w folderze z modem.
Działa i nie wykazuje błędów.

Resztę dokonałem po otrzymaniu pliku w formacie UTF - 8. Po prostu w ten (straifikowany?) plik zacząłem wklejać zawartość wszystkich tekstowych plików, edytując to w Notepad ++, po czym zapisując jako plik .tp2, .baf czy .d. Crash przestał wyskakiwać. O ile w BGT pliki edytowane w Notatniku działały, o tyle Notepad ++ jest konieczny dla EE (przynajmniej u mnie bez tego nie działa).

Poza tym zabieram się za Belaree NPC.

Meisarcha - 2017-07-01, 10:53

ciekawe, analizując tutorial o tym i zawartość modyfikacji (np. Kulyok) sądziłem, że trzeba tam nieco więcej zdefiniować i dołożyć katalog iconv, ale widać nie, skoro działa.
K4thos - 2017-07-01, 12:14

Cytat:
Czy engine EE jest w sumie jeden dla BGEE, BG2EE i IWDEE? Tak sugeruje jeden z plików konfiguracyjnych w BGEE, gdzie można wybrać tryb działania, choć jak ustawiłem tryb BG2EE, nie zauważyłem żadnych różnic w działaniu gry.

Jest jeden engine, ale wydanie patcha o wyższej numeracji dla którejś z gier oznacza, że reszta do czasu aktualizacji będzie używać starszej wersji silnika (przykładowo PST:EE używa wersji silnika 3.x i nie jest powiedziane czy reszta gier kiedykolwiek zostanie zaktualizowana, żeby móc go używać - a nie zaczną działać od tak, bo jest cała masa zmian w kodzie GUI i stare GUI z nową wersją nie działają). Zmiany w engine.lua dotyczą samej gry. Z rzeczy o których wiem:
- zmieniają się numery hardcodowych odniesień stringów do dialog.tlk (znaczy się np. jakiś efekt przy engine_mode = 0 wyświetli string 1000 a przy engine_mode = 1 np. 4000, bo tak Beamdog ustawił odniesienia w silniku)
- przy engine_mode = 0 inaczej działa przechodzenie stworzeń z planszy do planszy - tak jak w BG1, wychodząc np. z domku wrogowie zostaną w nim, a przy engine_mode = 1 podążą za drużyną (tak jak w BG2)
- tu masz kolejny przykład różnic: http://gibberlings3.net/f...=28#entry248244
- RACETEXT i CLASTEXT 2da działają tylko dla engine_mode = 0 lub 2. Na 1 (BG2:EE) brany jest do biografii pojedynczy przypisany string (żeby to obejść musiałem od zera napisać kod LUA tworzący biografię w zależności od wybranej kampanii)
- w wersji silnika 3.x engine_mode = 3 (PST:EE) to już w ogóle jest masa zmian - np. w trakcie dialogów odgrywane są animacje (wyłączana jest na chwile pauza po wybraniu odpowiedzi), fog of war odkrywany jest z większej odległości etc.

Takich zmian jest pewnie więcej. Pierwszą rzeczą jaką sprawdzam, jak ktoś zgłasza różnice w działaniu EET w stosunku do BG:EE to testowanie engine_mode.

Cytat:
Co do handle charsets - wpisałem w pliku .tp2:

INCLUDE ~%MOD_FOLDER%/handle_charsets.tpa~

Najprawdopodobniej używasz jakiejś przestarzałej implementacji, skoro masz kod w tpa zamiast bezpośrednio użyć HANDLE_CHARSETS jako funkcji weidu (została dodana w którejś tam wersji).

Cytat:
ciekawe, analizując tutorial o tym i zawartość modyfikacji (np. Kulyok) sądziłem, że trzeba tam nieco więcej zdefiniować i dołożyć katalog iconv, ale widać nie, skoro działa.

iconv jest konieczne i trzeba też ustawić odpowiednie ścieżki etc. Pewnie ruffie zmienił kodowanie na UTF8 (bez boom) i dlatego u niego działa, a sam kod nie robi nic. Ewentualnie skopiował kod z moda, który ma dokładnie tak samo nazwane pliki TRA i nazwę katalogu z tłumaczeniami.

K4thos - 2017-07-01, 17:13

Cytat:
Resztę dokonałem po otrzymaniu pliku w formacie UTF - 8. Po prostu w ten (straifikowany?) plik zacząłem wklejać zawartość wszystkich tekstowych plików, edytując to w Notepad ++, po czym zapisując jako plik .tp2, .baf czy .d. Crash przestał wyskakiwać. O ile w BGT pliki edytowane w Notatniku działały, o tyle Notepad ++ jest konieczny dla EE (przynajmniej u mnie bez tego nie działa).

jeśli to wersja tylko dla EE to może tak zostać. Jeśli zamierzasz wspierać zarówno klasycznego Baldura, jak i EE w jednym modzie (bo po co 10 różnych wersji?) to musisz zostać przy ANSI i użyć HANDLE_CHARSETS. Jak wspomniałem post wyżej ten plik tpa w Twoim przypadku nie robi nic. A jak użyć masz w 1000 i 1 modzie.

Na przykładzie moda Lavy:
Kod:
  // No exception, everything needs to be converted
  ACTION_DEFINE_ARRAY EsXnoconvert BEGIN END

  // any tra files used in LANGUAGE need to be reloaded after UTF-8 conversion
  ACTION_DEFINE_ARRAY EsXreload BEGIN Setup-Eilistraee END

  LAF HANDLE_CHARSETS
  INT_VAR
    infer_charsets = 1
  STR_VAR
    tra_path = EVAL ~%MOD_FOLDER%/Translations~
    noconvert_array = EsXnoconvert
    reload_array = EsXreload
  END

1. Ściągasz mod Elistree Song Lavy
2. Kopiujesz z jego folderu Translations folder iconv do swojego folderu
3. Zmieniasz ścieżkę podaną w tra_path na tą gdzie sam trzymasz tłumaczenia (jak nie wiesz o co chodzi to zobacz co ten folder zawiera w modzie Lavy)
4. Setup-Eilistraee w powyższym kodzie zmieniasz na nazwę swojego pliku zawierającego stringi np. setup, jeśli plik nazywa się setup.tra
5. Wklejasz tak zmodyfikowany kod do swojego tp2, zaraz po BEGIN lub do sekcji ALWAYS.

Ruffle_truffle - 2017-07-01, 17:39

Dzięki. Może mi się uda zrobić wersję pod klasyczne BG i EE zarazem.
Nobanion - 2017-07-01, 17:40

Jednak pod EET trzeba coś dodawać? Dobrze by było żeby pamiętać o EET panie Ruffle :koza: meeee.....
K4thos - 2017-07-01, 22:41

Noba, nic nie trzeba zmieniać. Chyba, że w przyszłości gdzieś ruffie użyje GAME_IS to musi pamiętać o uwzględnieniu ~eet~. Jakbyś chciał sobie doinstalować tego kita to najpierw musisz odinstalować setup-EET_end.exe, bo ten ostatni komponent aktualizuje pliki 2da związane z kitami (oczywiście potem znowu zainstaluj, bo inaczej zobaczysz komunikat w grze, że instalacja nie została skończona).
Ruffle_truffle - 2017-07-04, 18:17

Chciałem dedykować Belaree wersji EE, ale dialogi się nie odpalają same. Inicjowanie ich też nie działa.

Działa tylko banter z Viconią przy pierwszym spotkaniu. No i podstawka - czyli dialog przyłączenia. Jest to dziwne, bo w BGT działało o wiele więcej.

Chyba "krasnoludzicę" również zrobię dla BGT, bo jeśli chodzi o EE - udają się głównie podklasy.

K4thos - 2017-07-04, 23:58

Ruffle, jeśli chodzi o dialogi to nic mi nie wiadomo o zmianach w silniku EE (co najwyżej dodano jakieś nowe actiony, ale stare też są dostępne). Jeśli masz na myśli bantery to najprawdopodobniej miałeś w BGT inaczej ustawioną ich częstotliwość (wielu autorów modów daje możliwość customizacji, ewentualnie miałeś zainstalowany akcelerator banterów). Jeśli chodzi o normalne dialogi (inicjowane skryptami) to brak odpalenia jest równoznaczny z bugami w kodzie. BGT nic tu nie zmieni.

Cytat:
Jest to dziwne, bo w BGT działało o wiele więcej.

a nie powinny działać wszystkie? :dontgetit:

tu masz akcelerator banterów dla EE: https://github.com/Argent77/A7-BanterAccelerator/releases

EDIT: Scalono posty - M

Ruffle_truffle - 2017-07-05, 09:16

Spróbuję z tym akceleratorem. Miały działać wszystkie, ale podpalają się najczęściej dwa. Dwa pozostałe można zainicjować samemu. Uznałem, że tak lepiej, niż jakby miało się odpalać "kwadratowo", po ściśle określonym odstępie czasu. Oczywiście jeśli chodzi o EE, wolałbym, aby mód był bardziej dopracowany. Grzebię w skrypcie i plikach .d, acz bez zauważalnych rezultatów. Jeśli uda mi się z Belaree, Zajmę się Holnarą. Jeśli...
Ruffle_truffle - 2017-07-09, 11:06

Będzie osobna wersja dla WoBG i EE(T).

K4thos napisał/a:
W GAME_IS proszę dopisz też ~eet~. EET ( https://github.com/K4thos/EET ) to odpowiednik BGT dla gier EE. Jeszcze go nie wydałem, ale mod jest skończony i czeka tylko na naprawę problemu z wodą: http://forum.baldursgate....h-weird-overlay


Ogólnie nie mam komendy GAME_IS, chciałbym dostosować kotokształtnego do EET, bo na zamówienie podklasa z priorytetem czeka na naprawę.

Może jakiś przykład co do użycia tej komendy?

IF GAME_IS ~eet~ then?

K4thos - 2017-07-09, 11:12

jak nie masz GAME_IS to nic nie musisz w podklasach zmieniać dla EET. Będzie działać, jeśli działa z BG2:EE. A przykład użycia to:
Kod:
ACTION_IF GAME_IS ~bg2ee eet~ BEGIN
  //kod który ma zadziałać tylko na BG:EE i EET
END ELSE ACTION_IF GAME_IS ~bgt~ BEGIN //takie coś to odpowiednik "elseif" w każdym znanym języku programowania
  //kod który ma zadziałać tylko na BGT
END ELSE BEGIN //odpowiednik "else" w innych językach programowania
  //kod który ma zadziałąc na wszystkich innych grach oprócz wspomnianych powyżej
END

nowus777 - 2017-08-12, 21:33

Czy instalacja Siege of Dragonspear może mieć wpływ na kompatybilność? Wyjaśnię może, na czym polega mój problem.

Stworzony przeze mnie mod NPC został stworzony pod BG:EE (bez zainstalowanego SOD). Czy jeśli ktoś ma BG:EE razem z zainstalowanym SOD, to może mieć problemy z poprawnością działania stworzonego przeze mnie moda? Pytam, gdyż jedna z osób testujących ma problem z moim modem już na samym początku, a ja naprawdę nie wiem, co może stanowić błąd (u mnie wszystko ładnie działa). Stąd też pytanie z innej beczki - jak w takim przypadku zlokalizować przyczynę błędu?

Błąd polega na tym, że w momencie pierwszej rozmowy z moim NPC, pokazuje się dziwny tekst zamiast dialogu przyłączenia.



Czy ktoś mądrzejszy ode mnie w kwestii modowania potrafi pomóc?

memory - 2017-08-12, 22:09

Cytat:
Czy instalacja Siege of Dragonspear może mieć wpływ na kompatybilność?

Jak najbardziej może. Jeśli kopia SoD pochodzi Z GoGa lub Steama, to do poprawnej współpracy z modami wymaga narzędzia Modmerge. Do pobrania gdzieś stąd. Należy to zainstalować przed wszystkimi innymi modami, żeby uniknąć pomieszania stringów właśnie.

nowus777 - 2017-08-23, 12:17

Zaczynam się trochę bawić w tworzenie skryptów walki dla wrogów. Stąd też mam 2 pytanka:

1) Jak rozumieć akcję "AttackReevaluate"? Czy gra zaczyna w tym momencie sprawdzać cały skrypt walki od samego początku?

2) Chciałbym, aby rozpoczęcie walki rozpoczynało się od przyzwania przez wroga np. leśnych istot. Zależałoby mi na tym, aby nie było możliwości przerwania rzucania tego czaru, a zatem korzystam z akcji ReallyForceSpell(). Problem jest jednak taki, że wróg zaczyna przyzywać nieskończoną ilość leśnych istot. W czym robię błąd? Zapewne brakuje jakiegoś warunku...

Będę wdzięczny za pomoc.

K4thos - 2017-08-23, 13:21

AttackReevaluate masz wytłumaczone tu: https://gibberlings3.github.io/iesdp/scripting/actions/bgeeactions.htm
I:ReevaluationPeriod* odnosi się tylko do O:Target*, a nie sprawdzania całego skryptu od początku

Co do rzucania czaru na początku walki to przede wszystkim musisz zrozumieć jak działają skrypty. Analizowane są z góry na dół, do czasu znalezienia bloku, który zwróci wartość "true". Skoro w nieskończoność rzucane jest to zaklęcie to znaczy, że cały czas ten blok zwraca wartość "true". Od tego są zmienne (variables - GLOBAL, LOCALS, AREA), liczniki (timers) i inne triggery, żeby po wykonaniu przez dany blok zadania zaczął zwracać "false". Nie widzę na stronie generalnego tutoriala działania skryptów. Jak znasz angielski to przed pisaniem skryptów zapoznaj się z tym jak działa silnik: http://www.pocketplane.ne.../simscript.html

edit: ewentualnie dałeś czarowi timing mode 9 (we właściwościach pliku SPL) przypisujący permanentne działanie danego efektu.

nowus777 - 2017-08-23, 13:25

K4thos, dzięki, że zawsze można na Ciebie liczyć! :)
nowus777 - 2017-09-01, 23:36

Kolejna rzecz nie daje mi spokoju.

Tworząc nowe postaci na lokacjach czasem zdarza się, że nie pojawiają się one w grze pomimo spełnienia wszystkich warunków, które wpływają na pojawienie się danej postaci. Czasem wystarczy, że zmienię lokację (bez zmiany warunków) i postać się pojawia. O co może chodzić? Strasznie mnie to irytuje i nurtuje - czy niektóre lokacje są w jakiś sposób "zablokowane"?

Zastanawiam się też, czy może mieć to związek z komendą podaną w instalacji. Dotychczas zawsze korzystałem z:

Cytat:
EXTEND_BOTTOM ~AR3600.bcs~ ~bgee10npcproject\ALETHRA\SCRIPTS\ar3600ext.baf~


Spróbowałem z EXTEND_TOP i też nie pomogło.

Jeśli ktoś może wiedzieć, z czego wynika opisany problem, będę wdzięczny :)

Zed Nocear - 2017-09-03, 11:47

nowus777 napisał/a:
Tworząc nowe postaci na lokacjach czasem zdarza się, że nie pojawiają się one w grze pomimo spełnienia wszystkich warunków, które wpływają na pojawienie się danej postaci. Czasem wystarczy, że zmienię lokację (bez zmiany warunków) i postać się pojawia. O co może chodzić? Strasznie mnie to irytuje i nurtuje - czy niektóre lokacje są w jakiś sposób "zablokowane"?


Kluczowe może być właśnie "przejście na nową lokację". Teoretycznie zmiany wprowadzane do skryptów działają natychmiast, bo nie są zapisywane w save'ie, ale zdarza się, że jeśli zapiszesz grę na danej lokacji, zmienisz skrypt i wczytasz zapis, to ta zmiana nie jest uwzględniona, póki nie zmienisz lokacji. Nowe akcja skryptowa dopiero zadziała, jak wczytasz grę z innego zapisu i przejdziesz na tę lokację. Być może gra trzyma jednak w jakimś cache'u pliki z bieżącej lokacji, w tym zdekompilowane skrypty, i dopiero przejście na nową lokację je resetuje.

nowus777 - 2017-09-03, 12:05

Gdy teraz czytam swoją wiadomość, to zdaję sobie sprawę, że może być ona niezrozumiała. Opiszę więc sytuację na przykładzie.

Stworzyłem nową postać, oskryptowałem ją i postanowiłem umieścić ją na lokacji z latarnią morską (AR3600). Niestety, postać nie pojawia się w grze. Byłem przekonany, że mam jakiś błąd w skryptach, zmarnowałem 2 dni szukając babola. Po jakimś czasie (bez żadnych zmian skryptów) postanowiłem sprawdzić, czy postać pojawi się w innej lokacji. Zmieniłem więc w pliku .baf lokację z AR3600 na lokację Jarmarku w Nashkel. Buuuum - postać jest, działa, wszystko śmiga.

Identyczny problem mam z lokację Trakt Nashkel-Beregost II (AR4300), na której nie mogę umieścić żadnej postaci.

Meisarcha - 2017-09-03, 13:39

Jedyne co przychodzi mi do głowy to to, że już wcześniej byłeś w tych lokacjach i gra ich nie uaktualniła. W ogóle to dobrze byłoby po zainstalowaniu sprawdzić edytorowo, czy w ogóle zaktualizowało plik skryptowy danej lokacji.
No i pytanie, co modujesz - klasyczną BG I (jak sugeruje temat) czy w wersji Enhanced (jak sugeruje zawartość Twojej komnaty). W tym drugim przypadku jest na to osobny temat.

EDIT: Przeniosłem, choć teraz sam nie wiem, czy ten temat faktycznie służy do wszelkich pytań związanych z modowaniem na EE, czy tylko różnic między wersją zwykłą i EE. Chyba te różnice (zwłaszcza w przypadku BG I i BG I EE) są na tyle spore, że warto to podkreślić osobnym tematem. Zobaczymy, póki co pozwoliłem sobie podnieść rangę tematu

nowus777 - 2017-09-03, 13:42

Meisarcha napisał/a:
Jedyne co przychodzi mi do głowy to to, że już wcześniej byłeś w tych lokacjach i gra ich nie uaktualniła. W ogóle to dobrze byłoby po zainstalowaniu sprawdzić edytorowo, czy w ogóle zaktualizowało plik skryptowy danej lokacji.
No i pytanie, co modujesz - klasyczną BG I (jak sugeruje temat) czy w wersji Enhanced (jak sugeruje zawartość Twojej komnaty). W tym drugim przypadku jest na to osobny temat.


Moduję w EE. Sądziłem, że to ogólny temat z pytaniami odnośnie modowania. W przyszłości będę zatem pisał we wskazanym przez Ciebie temacie.

Zed Nocear - 2017-09-03, 17:31

Nadal nie piszesz kluczowej informacji, z jakiego skryptu używasz do umieszczenia postaci na lokacji, ale chyba się domyśliłem. Jeżeli dodajesz bloki przywołania postaci do skryptu lokacji, to nie każda lokacja ma ustawiony skrypt w pliku ARE. Zakładasz, że lokacja ARxxxx.ARE ma skrypt ARxxxx.BCS. Część lokacji, których oryginalna fabuła BG1 nie używa skryptu, po prostu nie mają ustawionego żadnego skryptu. Tak też jest np. z AR4300.ARE. Nie wystarczy, że sam skrypt istnieje, trzeba wstawić jego nazwę pod offsetem 94h w pliku ARE. W BG1 w AR4300.ARE wpis jest, choć samego skryptu w oryginale nie ma, a w BGEE skwapliwie pousuwali z ARE odwołania do nieistniejących skryptów lokacji. Efekt zależy też od dodatkowych modów. Na czystym BG1 NTotSC też usuwał odwołania do nieistniejących skryptów. Z kolei TWM zarówno w BG1 jak i BGEE przywraca hurtowo odwołania do skryptów lokacji o tej samej nazwie co plik ARE.

EDIT. Trochę chyba namotałem niepotrzebnie, więc wersja skrócona: aby skrypt lokacji działał, trzeba ustawić odwołanie do niego w pliku ARE.

nowus777 - 2017-09-03, 19:19

Tak, teraz chyba staje się to jasne. Dla pewności podpytam o kolejność działań:
1) podaję nazwę lokacji pod offsetem 94h
2) eksportuję poprawiony plik .are, zmieniam mu nazwę na ar4300ext i wrzucam do folderu instalacyjnego,
3) w instalacji wymuszam kompilację poprawionej lokacji, tj.

EXTEND_BOTTOM ~AR4300.bcs~ ~folder moda\SCRIPTS\ar4300ext.baf~

Dobrze kombinuję?

Zed Nocear - 2017-09-03, 21:14

Tak, jak najbardziej, ale nie podmieniaj pliku ARE na własny (punkt 1,2), można zmodyfikować ten już istniejący w grze:

COPY_EXISTING ~AR4300.ARE~ ~override~
WRITE_ASCII 0x94 ~AR4300~

Ruffle_truffle - 2017-11-09, 16:48
Temat postu: GLR Parse error
Prawie wykonałem podklasę dla mnicha (muni), ale mam podobny problem, jak na forum Beamdoga.

Kod:
In state 42, I expected one of these tokens:
  [2] ~~
Parse error (state 42) at SAY

[SETUP-7CDEE.TP2] PARSE ERROR at line 36 column 1-4
Near Text: SAY
        GLR parse error

[SETUP-7CDEE.TP2]  ERROR at line 36 column 1-4
Near Text: SAY
        Parsing.Parse_error
ERROR: parsing [SETUP-7CDEE.TP2]: Parsing.Parse_error
ERROR: problem parsing TP file [SETUP-7CDEE.TP2]: Parsing.Parse_error

FATAL ERROR: Parsing.Parse_error

Press ENTER to exit.


Ja mam State 49, line 22, column 1-3 at SAY (near text SAY).

Nie widzę rozwiązania na forum. Wstawię dodatkowo kod:

Kod:
BACKUP ~Muni\Backup~
AUTHOR ~Ruffle_truffle~

BEGIN ~Nowa podklasa dla mnicha: Muni~
INCLUDE ~%MOD_FOLDER%/lib/fl#add_kit_ee.tpa~
INCLUDE ~%MOD_FOLDER%/lib/functions.tpa~
INCLUDE ~%MOD_FOLDER%/handle_charsets.tpa~

ADD_KIT ~Muni~
~Muni                0           1           0           0           1           0           0           1~
~Muni 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0~
~Muni                0       9       9       0       9       -9~
~Muni                0       0       0       0       0       0~
~Muni                0       17      0       0       17      0~
~Muni                0       15      0       0       15      0~
~Muni                0       0       0       1       0       0       0       0       0~
~Muni                0       0       0       0       0       0~
~Muni\Muni.2da~
~0x00004000       20~
~Mo0~
~HELM19 BAG23 RING06 RING29 CLCK02 BOOT01 AMUL19 BRAC16 BELT06 AROW11,40 BULL03,40 BOLT06,40 POTN52,5 POTN4,2 POTN14,5~
SAY ~muni~
SAY ~Muni~
SAY ~MUNI: Terminem "muni" określa się milczących ascetów, pustelników, którzy złożyli śluby ciszy. Taka forma wyrzeczenia sprawia, że muni nie są zbyt rozmowni i odzywają się jedynie wtedy, gdy sytuacja tego wymaga. Nie jest to milczenie absolutne, lecz próżno namawiać mnicha tego typu do czczych pogawędek i bycia gadatliwym. Dzięki życiu w milczeniu, ascezie i medytacji, muni otrzymują specjalne moce. Niestety ich główną wadą jest to, że nie są odbierani jako zbyt towarzyscy.

ZALETY:

- na 1, 3 i 6 poziomie muni otrzymuje zdolność rzucenia Ciszy, 5 metrów
- na 3, 6 i 9 poziomie muni otrzymuje zdolność rzucenia Ugłosowienia
- na 9, 12 i 15 poziomie muni otrzymuje zdolność rzucenia Słowa mocy: ciszy

WADY:

- może być wyłącznie Praworządny neutralny
- jego charyzma może wynosić co najwyżej 9
- nie ma dostępu do zdolności Drżąca dłoń~

LAF fl#add_kit_ee
STR_VAR kit_name = ~MUNI~
END

COPY ~Muni\Muni.2da~ ~override~
COPY ~Muni\sppr211b.spl~ ~override~
SAY NAME1 ~Cisza, 5 metrĂłw~
COPY ~Muni\spwi219b.spl~ ~override~
SAY NAME1 ~Ugłosowienie~
COPY ~Muni\spwi612b.spl~ ~override~
SAY NAME1 ~SĹ‚owo mocy: Cisza~


Temat na forum Beamdoga z podobnym błędem można znaleźć tutaj

morgan - 2017-11-09, 17:40

Wiesz, że są granice kopiowania czyichś tekstów (po to właśnie moddarzy piszą tutoriale, których czytania nie uznajesz)? Kopiowanie znak w znak pracy innych jest niejednoznaczne moralnie;) (choć oczywiście nie jestem od moralizowania), w dodatku - moim zdaniem - może generować błędy. Dlaczego? Katalog z plikami - przynajmniej kiedyś tak było - powinien się nazywać zbieżnie z setupem. U Ciebie katalog nazywa sie Muni, a plik setup SETUP-7CDEE.TP2 (ew. małymi, chodzi o samą nazwę). Spróbuj z Setup-Muni.tp2 (i identycznie nazwać plik WeiDu.

EDIT (do dołu): Cieszę się, że znalazłeś rozwiązanie. Odnosiłem się do tego, że swego czasu pisałeś, iż nie korzystasz z tutoriali (jeśli z kimś Cię mylę, wybacz).

Ruffle_truffle - 2017-11-09, 17:48

Ja nie kopiowałem pracy, wzorowałem się tylko na instalce moda Sun Soul monk kit. Jakaś przeróbka dodatkowej podklasy. Właśnie miałem edytować posta i napisać, że nie mam problemu z [SETUP-7CDEE.TP2], mnie zamiast tego wyskakuje [SETUP-MUNI.TP2], także problem jest gdzieś w tyldach, skryptowaniu, no po prostu nie mogę znaleźć pogrzebanego psa.

Wszystko wydaje mi się odpowiednio zakodowane.

Tutoriale jak najbardziej uznaję i czytałem je.

EDIT: Już mam. Zabrakło mi umiejscowienia na liście ras i podklas.

Zed Nocear - 2017-12-17, 14:30

Skalowanie NPCów do CHARNAME w wersji TWM do BGEE nie działa. Nie mam pojęcia jak to naprawić. W oryginalnym BG1 zależne jest to od NPCLEVEL.2DA, gdzie w pierwszej kolumnie wpisujemy imięNPCa a nie skript name, jak podaje IESDP dla wszystkich gier EE (widać to po Shar-teel, gdzie w BG1 jest wpisane "Shar-teel", a w BGEE "sharteel"). Zmieniłem w NPCLEVEL.2DA imię Ann'amortha i Tsuki na skript name, ale dostosowanie poziomu przy przyłączeniu dalej nie działa. Enine 2.3.x.x miesza w tym mechanizmie, bo zamiast podmiany plików dokładany jest EXP do maksymalnie 32.000 a nie następuje podmiana pliku CRE i w związku z tym NPCLEVEL.2DA ponownie jest zmieniony. Zakupiłem wreszcie SOD i tam z kolei o dostosowaniu NPCów decyduje NPCLVLDS.2DA. Ciekawe, że mam zapisany save po cutscence ze śmiercią Goriona i w BGEE 2.3 jak przyłącza się Imoen, to dostaje dostosowujący EXP, a w BGEE 2.3 + SOD z tego samego save'a Imoen nie jest dopasowana do poziomu CHARNAME. Inne postacie np. Khalid i Jaheira dostają doświadczenie przy przyłączeniu zarówno w samym BGEE jak i BGEE+SOD z tego samego save'a.

Zastanawiam się, czy w BGEE o aktywacji mechanizmu skalowania decyduje jeszcze jakiś warunek?

Ściągnąłem kilka przykładowych NPCów do BGEE i do BG2EE ale w kodzie TP2 nie znalazłem wpisu do NPCLEVEL.2DA. Czy ktoś zna jakiegoś moda z NPCem do BG(2)EE, którego poziom dostosowuje się do poziomu CHARNAME i jest to potwierdzone w praktyce?

Biję się myślami czy nie machnąć ręką na oryginalny mechanizm gry i dodać po prostu skalowanie NPCów skryptem przy przyłączeniu, ale w takim razie który mechanizm zasymulować, ten oryginalny z podmienianiem całych CRE, czy ten z enginu 2.3.x.x z dodawaniem EXPa?

nowus777 - 2018-04-25, 19:28

Jak dobrze wiecie, tworzę właśnie modyfikację do BGEE. Czy aby była ona kompatybilna z EET muszę dodać w pliku instalacyjnym/skryptach jakiś specjalny zapis? Z góry dzięki za pomoc!
Cahir - 2018-04-25, 19:30

Nowusie, przeczytaj sobie ten temat. Powinien rozjaśnić większość kwestii dotyczących kompatybilności z EET.
Nobanion - 2018-04-26, 00:01

nowus777 napisał/a:
Jak dobrze wiecie, tworzę właśnie modyfikację do BGEE. Czy aby była ona kompatybilna z EET muszę dodać w pliku instalacyjnym/skryptach jakiś specjalny zapis? Z góry dzięki za pomoc!

Z EET?
To obok WoBGa drugi mój poligon do walki ze Złem.
Jakby chodziło o EET, to mogę potestować, ale sugeruję porozmawiać z mistrzem Lavą, bo on już to przerobił, a po co otwarte drzwi wyważać. Tym bardziej że masz dodatek oficjalny SoD a to ciut zmienia postać rzeczy...Chodzi mi o język, kompatybilność...Jeszcze szlachetny mistrz Zed uczynił w swoim modzie czary, wiem bo grałem i fajnie było...

nowus777 - 2018-04-26, 09:28

Coś czuję, że z kwestią dopasowania mojej modyfikacji do EET czeka mnie całkiem niezła przeprawa...
nowus777 - 2018-05-09, 09:55

Jeden z graczy, który dysponuje GOGowską wersją BGEE + SOD ma problemy z moim modem. Twierdzi, że zainstalował MODMERGE przed instalacją mojego moda i w czasie instalacji nie zoabserwował żadnych błędów, a jednak w grze owe błędy już się pojawiają. Bez wątpienia chodzi o SOD, gdyż osoby grające w czysty BGEE nie mają (póki co) żadnych błędów z moim modem. Czy ktoś wie, o co może chodzić? Czy poza instalacją MODMERGE trzeba zrobić coś jeszcze (może dodać jakiś skrypt?), aby mody działały pod GOGowską wersją BGEE + SOD?
Cahir - 2018-05-09, 15:10

Zapytaj czy nie gra czasem w betę patcha 2.5 do BGEE. Beta jsst niekompatybilna z SoD (dopiero wersja finalna patcha będzie). To mu może właśnie takie efekty dawać.
nowus777 - 2018-05-09, 16:02

Cahir napisał/a:
Zapytaj czy nie gra czasem w betę patcha 2.5 do BGEE. Beta jsst niekompatybilna z SoD (dopiero wersja finalna patcha będzie). To mu może właśnie takie efekty dawać.


Uzyskałem odpowiedź, iż gra w wersję 2.3.67.3 (B).

Cahir - 2018-05-09, 18:48

Czyli nie beta, to w takim razie nie mam pojęcia co jest grane:(
nowus777 - 2018-05-09, 21:03

Cahir napisał/a:
Czyli nie beta, to w takim razie nie mam pojęcia co jest grane:(


Astharoshe sprawdziła wszystko u siebie na GOGowskiej wersji i wszystko śmiga :) Bahzell być może popełnia jakiś błąd przy instalacji... W każdym razie dzięki za próbę pomocy! :)

Nobanion - 2018-05-11, 11:17

nowus777 napisał/a:
Cahir napisał/a:
Zapytaj czy nie gra czasem w betę patcha 2.5 do BGEE. Beta jsst niekompatybilna z SoD (dopiero wersja finalna patcha będzie). To mu może właśnie takie efekty dawać.


Uzyskałem odpowiedź, iż gra w wersję 2.3.67.3 (B).


GoG ostatnio daje pupy z grami, szczególnie tymi ciut starszymi, poważnie a chodzi patche, jaką jazdę miałem z np. NWN 1 GoG nie ma ostatniej wersji mimo zapewnień, a po spaczowaniu do ostatniego gry oryginalnej swojej, nie widział w mojej bibliotece...
Czasami ważne jest by GoG sam zaktualizować, bo np wersja beta GoG może mieszać z pobieraniem paczy, tak naprawdę tęsknię za czasami płyt, bez jakikolwiek platform...
Ja bym na miejscu pana Bahzella, spróbował o ile jest to możliwe przy tej grze w trybie offline zagrać...
Btw, SoD np. w steamie idzie wyłączyć z instalacji, a jak jest w GoGu z tą grą?

Astharoshe - 2018-05-11, 13:10

nowus777 napisał/a:
Uzyskałem odpowiedź, iż gra w wersję 2.3.67.3 (B).

Mam identyczną wersję i na niej wszystko ładnie chodzi, więc raczej nie w tym problem.

Nobanion napisał/a:
Ja bym na miejscu pana Bahzella, spróbował o ile jest to możliwe przy tej grze w trybie offline zagrać...

Nie ma takiego trybu, bo i po co? GOG startował jako platforma to grania w gry offline. Jeśli ktoś sobie życzy tak grać, to może po prostu wejść w folder, gdzie instalują się gry z GOGa i sobie odpalić .exe. Nie potrzeba do tego sieci.
A jak ktoś chce korzystać z perków, jakie daje GOG Galaxy (np. save'y zapisywane w chmurze), to uruchamia grę przez klienta. Wtedy oczywiście internet już jest potrzebny.

Nobanion napisał/a:
Btw, SoD np. w steamie idzie wyłączyć z instalacji, a jak jest w GoGu z tą grą?

Nigdy tego nie testowałam, bo od kiedy mam SoD to instaluje mi go automatycznie podczas instalacji BG:EE, ale też mi jest to na rękę. Z tego co widzę w ustawienia w GOG Galaxy, to oprócz ustawienia języka, można sobie odhaczyć DLC. Aczkolwiek pewnie trzeba to zrobić przed ściąganiem/instalacją. Tak więc jakaś opcja istnieje.
Aczkolwiek trochę słabo byłoby, gdyby trzeba było usuwać/nie instalować całe DLC ze względu na mody. Na szczęście mój przypadek pokazuje, że daje radę instalować mod nowusa na BGEE + SoD.

Cahir - 2018-05-11, 18:24

Trzeba jedynie uważać, żeby nie mieszać bety patcha 2.5 do BGEE z SoD. Po wyjściu patcha z bety, wszystkie gry powinny być ze sobą kompatybilne na wszystkich platformach (Windows, IOS, Linux, Android, Mac).
nowus777 - 2018-05-20, 02:28

Mam problem z dziennikiem w moim modzie, tzn. nie wyświetlają mi się wpisy w zakładce nierozwiązanych zadań. Czy tutaj jest gdzieś błąd?

IF~~THEN BEGIN MIRANDA-00
SAY~bla bla~
IF~~THEN DO~SetGlobal("MIRANDAJoined","GLOBAL",1) JoinParty()~
UNSOLVED_JOURNAL~Tytuł wpisu

Treść wpisu.~EXIT
END

Zaznaczę jeszcze tylko, że gdy zamiast "UNSOLVED_JOURNAL" wpiszę "JOURNAL", wpis w dzienniku się pojawia (tyle tylko, że w złym miejscu, tzn. w luźnym dzienniku). Czy ktoś może wskazać błąd/powiedzieć, o co tutaj może chodzić?

Zed Nocear - 2018-05-21, 10:58

W wersjach EE wpisy questowe do dziennika muszą być wcześniej "zarejestrowane" w grze instrukcją weidu ADD_JOURNAL, inaczej UNSOLVED_JOURNAL i SOLVED_JOURNAL nie działają (wyskakuje w grze komunikat o wpisie do dziennika, ale sam wpis się nie pojawia w dzienniku).

Sttrefy tekstów wpisów do dziennika są dodawane do listy w BGEE.SQL lub BGEE.LUA zależnie czy jest to BGEE 1.x czy BGEE 2.x.

nowus777 - 2018-05-21, 11:06

Zed Nocear napisał/a:
W wersjach EE wpisy questowe do dziennika muszą być wcześniej "zarejestrowane" w grze instrukcją weidu ADD_JOURNAL, inaczej UNSOLVED_JOURNAL i SOLVED_JOURNAL nie działają (wyskakuje w grze komunikat o wpisie do dziennika, ale sam wpis się nie pojawia w dzienniku).


O widzisz, czyli o to chodzi... Będę jeszcze wdzięczny za informację, czy instrukcję ADD_JOURNAL wrzucam do pliku .d czy .baf?

Zed Nocear - 2018-05-21, 13:43

Nie, to jest instrukcja pliku TP2, polecam readme weidu:

Cytat:
ADD_JOURNAL [ EXISTING ] [ MANAGED ] [ TITLE ( text ) ] reference list [ USING traFile list ]

If the game is not of an EE-type, this action does nothing. If the game is of an EE-type, this action patches BGEE.SQL or BGEE.LUA (depending on game version) with the provided quests and journal entries, so they will work with the EE-type journal system.

For each of the provided references, which are taken to be journal entries, the first line of text, up to a newline character, is taken to be the title of the journal entry. Titles isolated in this way have any trailing whitespace and full stops trimmed. The title is added as a separate string to the TLK, together with the complete journal entry. The game files patched with the strrefs of the title and journal entry. Each unique title is given a unique quest id and journal entries that share titles end up sharing quest ids.

If EXISTING is specified, the strref of the title is matched against the existing title strrefs. If a match is found, the journal entry is added under the quest id of the existing quest. Otherwise it is added as a new quest. Note that TITLE should be given a string reference in this case. ADD_JOURNAL cannot guarantee correct results if EXISTING is used without TITLE or if TITLE is given a string or tra reference instead of a string reference.

If MANAGED is specified, all provided journal entries are given a unique, non-zero quest-group number. They share the same quest-group number regardless of whether they share the same title. If EXISTING is also specified, the quest-group numbers for all existing journal entries that match the provided titles are assigned a quest-group number, provided they do not already have one. This option does nothing unless the game version supports quest groups.

If TITLE is specified, the provided text is used as the title for all provided journal entries. The titles of each individual journal entry remains unchanged, they are just all listed under the same title.

For more information on ADD_JOURNAL and some usage examples, refer to the journal section of this tutorial.

nowus777 - 2018-05-24, 19:31

No ok, poprawiłem ten dziennik i niby wszystko śmiga, ale... Otóż zdarza się, że kolejne wpisy do dziennika (dotyczące tego samego questu) występują w różnych plikach .tra utworzonych przeze mnie analogicznie do plików .d. W dzienniku w grze pojawiają się przez to oddzielne wpisy o takim samym tytule, podczas gdy wpisy te powinny dodawać się pod jednym tytułem. Jestem przekonany, że chodzi tutaj o jakiś błąd w poniższym zapisie z pliku .tp2

ADD_JOURNAL TITLE (@0) @2 USING ~bgee10npcproject\tra\%LANGUAGE%\TALINDRJ.tra~
ADD_JOURNAL TITLE (@0) @3 @4 USING ~bgee10npcproject\tra\%LANGUAGE%\DARVIN.tra~

Zgodnie z komendami powyżej dziennik dodaje dwa osobne wpisy o tytule @0 (pod jednym z nich jest tekst @2, a pod drugim teksty @3 i @4). Co zrobić, aby wpisy @2, @3 i @4 pojawiły się w dzienniku tylko raz pod tytułem @0?

Jeśli ktoś wskaże mi błąd, będę bardzo wdzięczny. Możliwe, że chodzi o jakąś bzdurę, ale ja patrzę już na to przez tyle godzin, że mogę tej bzdury nie dostrzegać.

Zed Nocear - 2018-05-25, 19:08

Jak pisałem wcześniej w tym wątku do końca z działaniem dziennika w BGEE 2.x nie doszedłem do ładu, ale postaram się coś doradzić.

Jak zauważyłem u innych moderów (np. Jastey w BGQE) przerzucają oni wszystkie testy wpisów do dziennika do SETUP.TRA, który jest zawsze załadowany w trakcie instalacji moda, więc i zawarte w nim teksty zawsze dostępne, nawet jeśli nie jest to jawnie zdeklarowane. Trzeba tylko numerację tekstów w SETUP.TRA zacząć od np. @10000, by nie pokrywały się z numerami tekstów w TRA dialogów. Ja też tak zrobiłem w TWM w wybranych questach, gdy wpisy do dziennika były rozrzucone po kilku plikach dialogów i nie chciałem ich łączyć w jeden D/TRA.

Możesz też skleić dwa pliki D w jeden z ciągłością numeracji, to będzie też jeden plik TRA. Plik D może zawierać w sobie polecenie tworzenia wielu plików DLG (kolejne BEGIN)

Reszta rozwiązań nie sprawdzona w praktyce:

Możliwe jest podanie dla USING obu plików TRA (wg. składni z instrukcji [ USING traFile list ] czyli można podać całą listę TRA). Wtedy też trzeba uważać by zakresy numerów tekstów w obu plikach TRA nie pokrywały się, np DARVIN.TRA numerujesz od @1000. Bardzo możliwe też, że wystarczy, aby tylko teksty wpisów do dziennika nie miały numerów pokrywających się z numerami tekstów w drugim pliku TRA, a dla reszty tekstów dialogowych nie ma to znaczenia:

ADD_JOURNAL TITLE (@0) @2 @1003 @1004 USING ~bgee10npcproject\tra\%LANGUAGE%\TALINDRJ.tra~ ~bgee10npcproject\tra\%LANGUAGE%\DARVIN.tra~

Można też podczepić kolejną porcję wpisów do już utworzonego questu z ustalonym tytułem używając przełącznika "EXISTING", choć tylko teoretycznie, bo instrukcja nie gwarantuje poprawnego działania gdy tytuł podany jest jako numer w TRA a tylko jako strref odwołujący się do TLK. Tylko "nie gwarantuje" a "nie działa" robi pewną różnicę, którą można by sprawdzić szybko, bo w sumie dodanie słowa EXISTING do kodu to najmniej kłopotliwa przeróbka:

ADD_JOURNAL TITLE (@0) @2 USING ~bgee10npcproject\tra\%LANGUAGE%\TALINDRJ.tra~
ADD_JOURNAL EXISTING TITLE (@0) @3 @4 USING ~bgee10npcproject\tra\%LANGUAGE%\DARVIN.tra~

nowus777 - 2018-05-27, 03:04

Zed, sprawdziłem każdą z Twoich propozycji i niestety nie udało mi się rozwiązać problemu.

Dzisiaj przez pół dnia przerabiałem wszystkie pliki na przykładzie Mirandy w taki sposób, aby wszystkie odwołania do dziennika znajdowały się wyłącznie w jednym pliku: MIRANDAJ.d - oczywiście teksty do dziennika analogicznie znajdują się w jednym pliku: MIRANDAJ.tra

W pliku .tp2 mam:
ADD_JOURNAL TITLE (@0) @1 @3 @4 @5 @6 @7 @8 @9 @10 USING ~bgee10npcproject\tra\%LANGUAGE%\MIRANDAJ.tra~

No i, niestety, wpisy @1, @3, @5 itd. pokazują mi się w dzienniku jeden pod drugim (o takim samym tytule), zamiast dopisywać się do jednego wpisu. Oczywiście wpis @1 zostaje uzupełniony o wpis @3, ale w dzienniku są zdublowane 2 wpisy (każdy z nich ma taki sam tytuł i zawiera treść @1 oraz @3). Gdy dochodzi wpis @4, w dzienniku pojawiają się 3 wpisy o tytule @0, z których każdy jeden zawiera wpisy @1, @3 i @4. Gdy dochodzi wpis @5, w dzienniku pojawiają się 4 wpisy o tytule @0, z których każdy zawiera wpis @1, @3, @4 i @5. Itd.

Ja już naprawdę nie wiem, co robię źle :(

Zed Nocear - 2018-05-27, 08:42

Czyli teraz cały quest z wszystkimi wpisami instaluje się jednym poleceniem, tak?

Być może deinstalacja moda nie przywróciła pierwotnej wersji Baldur.lua i nadal jest tam utworzone kilka ID questów a kolejna instalacja dodaje do nich wpisy. Zainstaluj swojego moda na czystej instalce BGEE i zobacz czy nadal wpisy pojawiają się po kilka razy. Jeśli tak, to już nie wiem co doradzić, ale zdarzyło mi się już parę razy, że pozornie uporczywy błąd znikał, gdy zainstalowałem swojego moda na świeżo zainstalowanym BG1.

nowus777 - 2018-05-27, 10:37

Zed Nocear napisał/a:
Czyli teraz cały quest z wszystkimi wpisami instaluje się jednym poleceniem, tak?

Być może deinstalacja moda nie przywróciła pierwotnej wersji Baldur.lua i nadal jest tam utworzone kilka ID questów a kolejna instalacja dodaje do nich wpisy. Zainstaluj swojego moda na czystej instalce BGEE i zobacz czy nadal wpisy pojawiają się po kilka razy. Jeśli tak, to już nie wiem co doradzić, ale zdarzyło mi się już parę razy, że pozornie uporczywy błąd znikał, gdy zainstalowałem swojego moda na świeżo zainstalowanym BG1.


Zed, pomogło Dziękuję, jesteś moim Mistrzem! I tak sobie teraz myślę, że być może te wszystkie sposoby, które próbowałem też działały, tylko chodziło o to, że gra nie miała przywróconej pierwotnej wersji Baldur.lua...


Powered by phpBB modified by Przemo © 2003 phpBB Group