Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Laxus

Strony: [1]
1
W oryginalnych skryptach g1, też ich nie widziałem. Możliwe że ja je jakoś dziwnie dekompilowałem.

Przed chwilą się z tym uporałem.

https://www.sendspace.com/file/5hohoo

U mnie działa. Co prawda to jest najbardziej rozbudowany mod świata, bo poza usunięciem tego błędu nic nie wnosi :)

Ale może komuś się przyda do czegoś, póki ktoś nie stworzy jakiegoś porządniejszego.


2
Cytuj
podeślij mi nowy kod na ZS_Sleep

Nie wiem czy o to chodzi, bo nigdy niczego nie modowałem.

func void zs_sleep() {
    printdebugnpc(pd_ta_frame, ÿ17489);
    b_setperception(self);
    ai_setwalkmode(self, npc_walk);
    if(!c_bodystatecontains(self, bs_mobinteract)) {
        if(hlp_strcmp(npc_getnearestwp(self), self.wp) == 0) {
            ai_gotowp(self, self.wp);
        };
    };
    ai_startstate(self, zs_sleepbed, 1, ÿ17490);
};

func void zs_sleepbed() {
    printdebugnpc(pd_ta_frame, ÿ17491);
    lightsleepperception();
    if(wld_ismobavailable(self, ÿ17492)) {
        ai_usemob(self, ÿ17493, 1);
    }
    else if(wld_ismobavailable(self, ÿ17495) || wld_ismobavailable(self, ÿ17494)) {
        ai_usemob(self, ÿ17496, 1);
        ai_usemob(self, ÿ17497, 1);
    }
    else {
        ai_startstate(self, zs_standaround, 1, ÿ17498);
    };
};

func int zs_sleepbed_loop() {
    printdebugnpc(pd_ta_loop, ÿ17499);
    if(((!npc_getbodystate(self)) == bs_mobinteract) || ((!npc_getbodystate(self)) == bs_mobinteract_interrupt) && (npc_getstatetime(self) > 3)) {
        ai_startstate(self, zs_sitaround, 1, ÿ17500);
    };
    ai_wait(self, 1.0);
    return loop_continue;
};

func void zs_sleepbed_end() {
    printdebugnpc(pd_ta_frame, ÿ17501);
    if(wld_istime(7, 0, 8, 30)) {
        b_say(self, ÿinstance_help, ÿ17502);
    };
    ai_usemob(self, ÿ17503, -1);
    ai_usemob(self, ÿ17504, -1);
    ai_usemob(self, ÿ17505, -1);
};

func void b_sleepquietsound() {
    printdebugnpc(pd_ta_detail, ÿ17506);
    if((npc_getdisttonpc(self, other) < perc_dist_dialog) && npc_canseenpcfreelos(self, other)) {
        ai_startstate(self, zs_wakeup, 0, ÿ17507);
    }
    else {
        b_tossandturn();
    };
};

I jakieś stałe:

const string ÿ17489 = "ZS_Sleep";
const string ÿ17490 = "";
const string ÿ17491 = "ZS_SleepBed_Loop";
const string ÿ17492 = "BED";
const string ÿ17493 = "BED";
const string ÿ17494 = "BEDLOW";
const string ÿ17495 = "BEDHIGH";
const string ÿ17496 = "BEDHIGH";
const string ÿ17497 = "BEDLOW";
const string ÿ17498 = "";
const string ÿ17499 = "ZS_SleepBed_Loop";
const string ÿ17500 = "";
const string ÿ17501 = "ZS_SleepBed_End";
const string ÿ17502 = "$AWAKE";
const string ÿ17503 = "BEDHIGH";
const string ÿ17504 = "BEDLOW";
const string ÿ17505 = "BED";
const string ÿ17506 = "B_SleepQuietSound";
const string ÿ17507 = "";

Post połączony: 2020-03-20, 12:20
Z tego co widzę różni się 1 linijka w funkcji zs_sleepbed_loop.

Z bugiem:
func int zs_sleepbed_loop() {
    printdebugnpc(pd_ta_loop, ÿ17635);
    if((!c_bodystatecontains(self, bs_mobinteract)) && (npc_getstatetime(self) > 3)) {
        ai_startstate(self, zs_sitaround, 1, ÿ17636);
    };
    ai_wait(self, 1.0);
    return loop_continue;
};

!c_bodystatecontains(self, bs_mobinteract)) && (npc_getstatetime(self) > 3

Unpatch:

func int zs_sleepbed_loop() {
    printdebugnpc(pd_ta_loop, ÿ17499);
    if(((!npc_getbodystate(self)) == bs_mobinteract) || ((!npc_getbodystate(self)) == bs_mobinteract_interrupt) && (npc_getstatetime(self) > 3)) {
        ai_startstate(self, zs_sitaround, 1, ÿ17500);
    };
    ai_wait(self, 1.0);
    return loop_continue;
};

!npc_getbodystate(self)) == bs_mobinteract) || ((!npc_getbodystate(self)) == bs_mobinteract_interrupt) && (npc_getstatetime(self) > 3

3
Pytania i problemy / NPC nie kładą się spać - Gothic 1
« dnia: 2020-03-19, 17:39 »
Witam.

Mam pewien problem. Chciałem sobie przejść ponownie Gothica 1 z jakąś nieco odświeżoną grafiką i po paru dniach męki z instalowaniem patchy, wywalaniem z gry, czy psuciem się save'ów po zapisie podczas deszczu (tu chyba najbardziej szlag mnie trafił, bo już myślałem że gra działa  :D ), w końcu udało mi się dojść do starego obozu bez konsultacji z psychiatrą. Lecz jak się okazało po czasie, chwile szczęścia z grania w Gothica minęły, bo ujawnił się dziwny błąd.

NPC w ogóle nie śpią, co znacznie utrudnia okradanie chat. Siedzą przeważnie na stołku, a jak wczytam grę to się kładą, po kilku sekundach wstają i znowu wracają na stołek (o ile po drodze coś im nie przeszkodzi  :D ).

Mógłby mi ktoś pomóc, jak naprawić ten błąd. Dodam że nie jestem moderem, więc proszę o jakieś proste odpowiedzi. Myślę, że to któraś z poprawek to powoduje, albo coś zainstalowałem w niepoprawnej kolejności.

Lista zainstalowanych elementów, wg. kolejności:

1. Gothic 1 - czysta gra, wersja Steam
2. Gothic 1 PlayerKit 1.08k
3. Gothic 1 PlayerKit 2.8
4. G1Classic System Pack 1.8
5. GD3D11 Clockwork Edition v17.6.4
6. 4GB patch
7. Big Nature Mod 1.0.1
8. FreeAimingPatch
9. Gothic 1 DX11 Normalmaps
10. MorOrs Mod
11. Texture Pack By Artemiano
12. ReShade NeuroFunkeR Edition + Real-light
13. Gothic 1 3D+ 2.0.21.11.2012


Post połączony: 2020-03-19, 18:11
Na anglojęzycznych stronach znalazłem jakieś rozwiązanie. Unpatch do Gothica eliminuje ten problem, lecz patch zmienia napisy na angielskie. Czy idzie coś z tym zrobić?

Strony: [1]
Do góry