Poprzedni temat «» Następny temat
problemy z płynnością w WoBG
Autor Wiadomość
Adun 

Posty: 11
Wysłany: 2014-02-22, 13:36   

Faktycznie, gdy właściwie oczyściłem ekwipunek drużyny gra chodzi znacznie lepiej bez pauzy :smile: . Tylko co w takim przypadku mam zrobić? Pozbyć się tych, co by nie było, dość przydatnych przedmiotów?
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-22, 14:51   

Nie znam rozwiązania Twojego problemu. Jesteś jak na razie drugą osobą, która ma problem z pojemnikami, a przynajmniej drugą, która coś takiego zgłasza.

Tak w ogóle to przy starcie gry uruchamia Ci się konsola TobeX-a? Coś takiego się działo, gdy grało się bez niego.
Podziękuj autorowi tego posta
 
 
bunio

Posty: 67
Podziękowania: 2/4
Wysłany: 2014-02-22, 14:55   

To i ja zgłoszę, bo mnie ciekawi to.

Znalazłem do tej pory 2 lokacje na których gra mi przycina i jest pokaz slajdów (moc obliczeniowa komputera jest wystarczająco duża).
Jest to most do Wrót Baldura, oraz jakaś jaskinia z modów.

Czy komuś poza mną lokacja z mostem się tnie?
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-22, 14:59   

Ten problem jest akurat dość dobrze znany. Występuje u dość sporej liczby osób i sposób na niego, to wyłączenie dźwięku na takich lokacjach. Moc obliczeniowa nie ma znaczenia, to jest problem gdzieś na linii gra - sterowniki dźwięku.
Podziękuj autorowi tego posta
 
 
Adun 

Posty: 11
Wysłany: 2014-02-22, 17:17   

Konsola tobexa otwiera mi się... Nie jest mi chyba dane cieszyć się wobgem :?
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-22, 18:56   

Podrzuć mi sejwa, obejrzę co tam w nim jest.
Podziękuj autorowi tego posta
 
 
Sythe 

Wiek: 29
Posty: 42
Podziękowania: 6/16
Skąd: LBN
Wysłany: 2014-02-22, 20:41   

Adun napisał/a:
Konsola tobexa otwiera mi się... Nie jest mi chyba dane cieszyć się wobgem :?
Jeżeli masz to co u mnie to problem jest w sakwach a nie samych itemach. Przerzuć wszystkie itemy do jednej torby przechowywania a reszte toreb wywal. (to na bg1)
W icewindzie torby przechowywania maja limity wiec pozostaje edytor i dodanie torby z bg1. Lepiej grać tak niż nie grać wcale.
Podziękuj autorowi tego posta
 
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-22, 21:14   

Mam rozumieć, że po wrzuceniu wszystkich gratów z toreb, pojemników na mikstury, tub na zwoje, itd. do jednej torby, przycinanie gry zniknęło?
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-23, 17:57   

Udało mi się spreparować sejwa, który w niewielkim stopniu ma u mnie podobny efekt związany z torbami jak u Was. Wykonałem pewne zmiany w związku z tym w kodzie kilku głównych skryptów gry i lag zniknął na moim sejwie.

Teraz zadanie dla Was dwóch. Załączone pliki wypakujcie do katalogu override i napiszcie mi w jakim stopniu zmniejszył się lag albo czy w ogóle się zmniejszył.

Edit:
Pliki są zawarte w patchu 1.36, więc załącznik został usunięty.
Ostatnio zmieniony przez dradiel 2014-04-19, 07:22, w całości zmieniany 1 raz  
Podziękuj autorowi tego posta
 
 
Sythe 

Wiek: 29
Posty: 42
Podziękowania: 6/16
Skąd: LBN
Wysłany: 2014-02-23, 23:04   

U mnie jest połowicznie dobrze. Save na którym byłem juz w bg2 a miałem torby z icewinda tnie tak samo jak wczesniej ale ...
w bg1 do tej pory biegałem z jedną torbą. wrzuciłem teraz sześć i ładnie chodzi. Akurat mam troche czasu to sprawdze jak to wygląda w Icewindzie
Podziękuj autorowi tego posta
 
 
 
Adun 

Posty: 11
Wysłany: 2014-02-25, 13:32   

Wrzuciłem te pliki, ale niestety nadal występuje problem z płynnością. Ciężko stwierdzić, czy się poprawił - może trochę.
W PW wysłałem swojego save'a, ale jest w zakładce do wysłania zamiast wysłane, ocb? :P
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-02-25, 17:33   

Adun napisał/a:
Wrzuciłem te pliki, ale niestety nadal występuje problem z płynnością. Ciężko stwierdzić, czy się poprawił - może trochę.
W PW wysłałem swojego save'a, ale jest w zakładce do wysłania zamiast wysłane, ocb? :P


Dopóki adresat nie odbierze wiadomości to jest ona do wysłania.

Problem dotyczy trzech warunków używanych w skryptach: HasItem, PartyHasItem oraz PartyHasItemIdentified.
Problem od strony gry ma dwa aspekty. Jeden został poprawiony przez optymalizację kodu przeszukującego ekwipunek. Drugi to niestety w pewnym sensie syzyfowa praca, ponieważ wszystkie skrypty zawarte w grze wymagają tak naprawdę optymalizacji z powodu tych trzech warunków sprawdzających obecność przedmiotów.

Dla testu zrobiłem taką wstępną optymalizację dla pliku baldur.bcs. Efekt u mnie był wyraźny, u Scythe'a też coś tam poprawiło się. Skryptów w grze jest jednak ogromna ilość i przejrzeć wszystkie to abstrakcja. Przy jakichś okazjach coś będę tam od czasu do czasu poprawiał.

Generalnie o co chodzi z tą optymalizacją.
Oryginalna gra nie posiadała jakoś tam szczególnie rozbudowanych skryptów, więc twórcy gry nie przejmowali się takimi pierdołami. Nie myśleli, że po tylu latach gra będzie wciąż w miarę popularna i będzie można ją rozbudować do takich rozmiarów, jak WoBG czy BWP. Większość osób piszących mody albo nie ma świadomości w czym rzecz, albo to olewa, tak jak ja do tej pory, skoro nic mi się nie tnie, to co tam się będę przejmował, aby skrypt optymalnie został wykonywany. Sama optymalizacja kodu, którą wprowadza ToBeX, to niestety nie wszystko. Każdy blok skryptu jest sprawdzany warunek po warunku, jeśli pierwszy napotkany jest fałszywy, to i nie ma po co bloku sprawdzać dalej. Sprawdzanie przeskakuje do następnego bloku w skrypcie.
I w tym właśnie jest problem. Mnóstwo skryptów w grze ma przykładowo konstrukcję:

IF
HasItem("bow01")
Global("mam_luk","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("mam_luk","GLOBAL",1)
END

W takim wypadku za każdym razem jest przeszukiwany ekwipunek, w wielu wypadkach po prostu bez potrzeby. Ktoś mający pełno pojemników i przedmiotów może mieć spore opóźnienie z tego powodu.

Blok ten powinien wyglądać tak:

IF
Global("mam_luk","GLOBAL",0)
HasItem("bow01")
THEN
RESPONSE #100
SetGlobal("mam_luk","GLOBAL",1)
END

W tym wypadku warunek zajdzie raz. Nie ma spamowania przeszukiwania ekwipunku przy każdym obiegu skryptu.
To tylko prosty przykład. Warunki potrafią być dużo bardzo skomplikowane i przeszukują czasem w jednym tylko bloku bardzo dużą ilość przedmiotów.

Pokrótce warunki przeszukiwania ekwipunku powinno się umieszczać na końcu, aby bez potrzeby skrypt ich nie wykonywał.

Istnieje oczywiście też trzeci aspekt sprawy. To niestety komputer osoby, która gra. Ewidentnie w Waszych przypadkach, coś u Was ma wpływ na takie zachowanie gry. Wasze sejwy chodzą u mnie płynnie. Porządna optymalizacja być może znacznie by poprawiła zachowanie gry u Ciebie Adun, jednak jest to niezwykle czasochłonna sprawa i przypuszczalnie wiele wody upłynie zanim zrobię coś więcej niż tylko przy okazji w tej kwesti. Spróbuj potestować co takiego u Ciebie na komputerze może mieć wpływ na takie zachowanie gry. Może jakiś program w tle, może sterownik. Niestety takie rzeczy nie łatwo wyłapać.
Podziękuj autorowi tego posta
 
 
buciek-83 
Pożeracz Świata


Wiek: 35
Posty: 33
Podziękowania: 1/4
Skąd: Zaandam
Wysłany: 2014-03-03, 12:21   

Czy nie można po prostu dodać bezdenne torby do sklepikarzy w ID ? zawsze to spowoduje że mniejsza ich ilość wystarczy. Tym bardziej że wiele osób aby komfortowo grać i tak je przywołuje kodem bądz SK.
Podziękuj autorowi tego posta
 
 
dradiel 
Dziecię Bhaala
Jeździec Shaundakula

Posty: 1650
Podziękowania: 775/110
Wysłany: 2014-03-03, 12:50   

Zamierzam w następnym patchu ustawić wszystkie pojemniki na bezdenne, jednak to w niewielkim stopniu poprawi sytuację, jeśli u kogoś pojawi się ten problem, ponieważ toreb z ograniczoną ilością miejsca na przedmioty nie ma w grze znowu tak dużo.
Najlepiej w takim przypadku nie bawić się w zbieranie wszystkiego co popadnie.
Podziękuj autorowi tego posta
 
 
Dead 
Bibliotekarz
Follower of Satan


Wiek: 29
Posty: 670
Podziękowania: 27/63
Wysłany: 2014-03-03, 12:51   

Cytat:
Czy nie można po prostu dodać bezdenne torby do sklepikarzy w ID ? zawsze to spowoduje że mniejsza ich ilość wystarczy. Tym bardziej że wiele osób aby komfortowo grać i tak je przywołuje kodem bądz SK.

Jestem przeciwny. Jak ktoś chce 'komfortowo' grać to niech sobie przyzywa kodem bądź SK co chce, podnosi poziom zdobywania XP na 100% czy nawet na 500%, ale nie widzę powodu by ułatwiać na siłę rozgrywkę tym, którzy lubią mieć problemy z zapchanym ekwipunkiem, a w końcu uzyskaną bezdenną torbę przechowywania traktują jako długo wyczekaną nagrodę, a nie jako oczywistość. Torby, szczególnie te ze skóry Yeti (bodajże 20 itemów pojemności) mi się bardzo podobają i jeżeli coś zmieniać z torbami, to wprowadziłbym bardziej restrykcyjne ograniczenia przechowywania w sakiewkach, tubach na zwoje, pasach amunicji, torbach na mikstury i tym podobnym.
_________________
Tawerna Bibliotekarzy
Podziękuj autorowi tego posta
 
 
 
Więcej szczegółów
Za tę wypowiedź podziękowali:
Aristo, nowyU, Scol
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  
Powered by phpBB modified by Przemo © 2003 phpBB Group