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

Modding - BGEE - ciekawostki

viader - 2013-02-18, 11:51
Temat postu: BGEE - ciekawostki
Doszło nie tak wiele, ale może się przyda.

Opcode 319 - zmiana możliwości noszenia przedmiotów
Opcode 320 - zmiana pogody
Nowa akcja skryptowa, umożliwiająca nadpisanie skryptu obszaru.
Nowa komenda dla CLUAConsole, do odpalania skryptów .bcs a nawet .baf

Ponadto doszły pliki, a z nimi rozszerzenie których NI nie rozpoznaje. Ale segreguje do oddzielnych foderów
BGEE.gui, BGEE.sql
To one są odpowiedzialne za bugi z dziennikiem :) Ponieważ w BGEE dziennik jest praktycznie uzależniony od BGEE.sql, można tu też ustawić portrety tak by były one podczas wyboru jak z orginalnej zawartości
W BGEE.gui teoretycznie da się coś tworzyć, mi się udało tylko zepsuć menu startowe :)
Doszły pliki od czcionek
TOOLFONT.fnt itd...
Obszary .MOS są skompresowanie do formatu .pvrz
http://forum.baldursgate....0/total-modding

Wypowiedzi devów będę ujmował w spoilery, pewnie lepiej ode mnie je zrozumiecie :)


Opcode #319 Usability
Spell level set to 1 means only usable by
Parameter #1: IDS Entry
Parameter #2: IDS File
Special: STRREF displayed in the item description.



New Effect: 320 Change Weather

Triggers a weather transition to a new type.

Parameter #1: Type
1: Rain
2: Snow
3: Nothing



We're adding a new script action that will set the area script. It's mostly self explanatory.
The slot options are:
0 DEFAULT
1 GENERAL
2 RACE
3 CLASS
4 OVERRIDE
5+ DEFAULT

Only the default script is loaded when you move to an area or load.


TEST.BS
IF
HotKey(D)
THEN
RESPONSE #100
SetAreaScript("chicken", 2)
END

CHICKEN.BCS
IF
TRUE()
THEN
RESPONSE #100
CreateCreatureObject("CHICKE", Player1, 0, 0, 0)
END



This console command goes through all of the scripts attached to the area, or the creature you have your cursor over.

It evaluates all of the scripts, and spits out an annotated version with // TRUE and // FALSE comments depending on what it evaluated to.

Script Debugger - CLUAConsole:WriteScript("[Directory Name]")
Note: If the mouse is over a creature, the command will evaluate the scripts attached to that creature. Otherwise it will evaluate the area scripts.
Example - CLUAConsole:WriteScript("DebugScripts") will output the script results to a folder called DebugScripts in the root of your BG install.

viader - 2013-02-19, 12:07

A i jest jeszcze coś. W BGEE przy rozpoczęciu dialogu wybierana jest płeć naszego głównego bohatera nieważne do kogo zagadał BN. Dla większości to pewnie bez znaczenia :), ale mnie irytowało jak Elminster szósty raz gadał jakby do Imoen, a Imoen mu odpowiadała zamiast głównego bohatera, chociaż przez całą grę nie mamy wpływy na jej wypowiedzi.
Zireael - 2013-02-24, 20:16

viader napisał/a:
A i jest jeszcze coś. W BGEE przy rozpoczęciu dialogu wybierana jest płeć naszego głównego bohatera nieważne do kogo zagadał BN. Dla większości to pewnie bez znaczenia :), ale mnie irytowało jak Elminster szósty raz gadał jakby do Imoen, a Imoen mu odpowiadała zamiast głównego bohatera, chociaż przez całą grę nie mamy wpływy na jej wypowiedzi.


Mnie też to irytowało, mówisz, że to poprawiono?

dradiel - 2013-02-24, 21:51

Zireael napisał/a:
Mnie też to irytowało, mówisz, że to poprawiono?


Tak mi się coś przypomniało, co kiedyś sprawdzałem.

Czy przypadkiem ten problem to nie wynika przypadkiem z czegoś takiego?

Do inicjowania dialogów bardzo często wykorzystywany jest skrypt initdlg.bcs, zawiera tylko jeden blok, który często jest też wykorzystywany w innych skryptach w takiej samej formie.

Kod:
IF
    See([PC])
    NumTimesTalkedTo(0)
THEN
    RESPONSE #100
        Dialogue([PC])
END


Wykonanie takiego kodu powoduje, że postać zagaduje, do pierwszej z brzegu postaci z drużyny. Gdy jest to postać przeciwnej płci niż protagonista powoduje to dysonans. Ale jeśli ten fragment kodu delikatnie zmienimy:

Kod:
IF
    See([PC])
    NumTimesTalkedTo(0)
THEN
    RESPONSE #100
        Dialogue(player1)
END


W tym przypadku już rozmowę prowadzi protagonista i wszystko jest ok.

viader - 2013-03-03, 09:08

Możliwe, że tak to rozwiązali, kto ich wie, aż tak to się nie interesowałem :)

Co do kolejnych ciekawostek, wszystkie niewiadome z IESDP zostały omówione chyba tutaj:
http://forum.baldursgate....sdp-unknowns/p1

viader - 2013-06-13, 16:34

Co do ciekawostek, to mogę dodać, że dodali dwa przydatne cheaty, pierwszy umożliwie wykonanie akcji, oraz dodali drugą uproszczoną formę CLUAConsole, teraz można pisać już:

C:CreateCreature("cat") = CLUAConsole:CreateCreature("cat")

A teraz dwa dodatkowe cheaty, pierwszy umożliwia odpalanie dowolnej akcji

C:Eval(Kill(Myself)) takie coś zabije istotę na której mamy skierowany kursor

Druga umożliwia tworzenie własnych cheatów, ponieważ można odpalać komendy z pliku zewnętrznego (plik powinien być w katalogu z grą czyli z .exe lub musimy podać ścieżkę, albo absolutną albo względem katalogu z grą)

Załóżmy że mamy plik
/////cat.txt/////
//////START PLIKU/////////////
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
C:CreateCreature("cat")
//////KONIEC PLIKU//////////////

Po odpaleniu komendy [ C:Exec("nazwa_pliku") ]
C:Exec("cat.txt") - zobaczymy na planszy 10 kotów, przy odrobinie wyobrażni i połączeniu C:Eval oraz C:Exec można stworzyć całkiem niezłe usprawnienia :)

viader - 2013-06-28, 19:03

Kiepska to ciekawostka, ale rzecz przydatna, że można kilka razy uruchamiać grę, nie ma jak testować poprawki na 3 wersjach :P

Powered by phpBB modified by Przemo © 2003 phpBB Group