HoGGi napisał
Yep, coś w tym rodzaju. Znalazłem analizę oraz teorię, która brzmi bardzo logicznie:
@
HoGGi ;
Dokładnie tak, i j/cowboy.
Dodam jeszcze, że expire time, to po prostu czas respawnu ryby. Tzn. skrypt od fishingu (poszukajcie sobie "fishing" w moveuse.dat) sprawdza czy łowimy na kratce o danym ID i po złowieniu zmienia to ID, które zostanie przywrócone po 2200 sekundach.
Wykorzystując fakt, że kratka "z rybą" ma inne ID, choć ten sam wygląd, co "bez ryby", robiono kiedyś te czity, pokazujące, gdzie są ryby (efektywne łowienie).
Z kolei "Disguise" to nie do końca "wygląd". Disguise oznacza przebranie, ukrycie, i o to tu chodzi. Podłoże z "Disguise" ma imitować zupełnie normalne podłoże i tu jest inaczej niż z rybami, bo po stronie klienta będzie widoczne ID tego normalnego podłoża, natomiast rzeczywiste ID będzie ukryte (i rozpoznawalne tylko po stronie serwera). Najlepiej to można wytłumaczyć na przykładzie pickowania. Otóż, każdy pickhole nie jest oskryptowany z osobna. Jest jeden zbiorczy skrypt:
Kod:
MultiUse, IsType (Obj1,3456), IsType (Obj2,372) -> Change(Obj2,394,0)
Widać tutaj, że jeżeli użyjemy item o ID 3456 (kilof) na podłożu o ID 372, to zmieni się ono w 394. Podłoże 372 to:
Kod:
TypeID = 372
Name = "muddy floor"
Flags = {Bank,UseEvent,LiquidSource,Unmove,Disguise}
Attributes = {Waypoints=200,SourceLiquidType=4,DisguiseTarget=355}
Czyli kratka ta ma ID 372, ale imituje kratkę o ID 355 (czyli zwykła kratka "muddy floor") i po stronie klienta ich nie rozróżnimy, gdyż obie będą widoczne jako 355. ID 394 to dziura, która ma expire time = 300 (5 minut).
Tak jest z wieloma rzeczami, dlatego przyjęło się, że kratki z "disguise" są "oskryptowane". W przekonwertowanej mapie, która wyciekła dawno temu, były one przyciemnione, lub brakujące (czarne pola), stąd ludzie myśleli, że w tych miejscach można aktywować jakieś ukryte skrypty. W rzeczywistości skrypty są jednak w innym pliku i sama kratka z flagą "disguise" nic jeszcze nie znaczy, a wyświetlanie ich w taki sposób było po prostu błędem edytora lub konwersji.
Aha, i dodam jeszcze, że w taki sam sposób były zakodowane questowe skrzynki itp.
Kod:
TypeID = 2469
Name = "a box"
Flags = {Container,Avoid,Take,Destroy,Height}
Attributes = {Capacity=10,AvoidDamageTypes=0,Weight=3500,DestroyTarget=3135,Elevation=8}
TypeID = 2470
Name = "a box"
Flags = {Container,Unmove,Avoid,Height,Disguise}
Attributes = {Capacity=10,AvoidDamageTypes=0,Elevation=8,DisguiseTarget=2469}
Wyżej zwykła skrzynka z wagą 35, niżej questowa, która ma imitować tą pierwszą.
Z innej beczki, a propos pickowania, to ciekawostką jest, że przy rozwalaniu kamienia kilofem (na desercie i na naginacie) brany pod uwagę jest axe fighting. Im wyższy, tym szybciej rozwalimy kamień.
A z nieznanych powszechnie skryptów, to jest jeszcze np. przy drzewku w którym bierzemy klucz do paradox tower. Kto robił, to pewnie pamięta, że jak się wyciągało klucz z wyschniętego drzewa na minosach to obrywalo się od trucizny i pojawiały się poison fieldy. Można tego uniknąć, jeśli rzuci się coś na niedostępną kratkę pomiędzy krzakami po prawej (cokolwiek, musi tam leżeć co najmniej 1 item), wtedy skrypt nie będzie aktywowany.
Zakładki