Strona 4 z 13
Re: Hacki zyciowe do Mudleta
: 31 lip 2015 11:26
autor: Kjell
Mój błąd, pisałem na szybko i sknociłem local id =
getRoomIdByHash() <-- ta tunkcja nie może być bez parametru. Miało być
Kod: Zaznacz cały
local hash = makeHash()
cecho(hash.."\n")
local id = getRoomIdByHash(hash)
cecho("ID: "..id.."\n")
Sprawdziłem przy okazji, jeśli lokacja skojarzona z hashem nie istnieje, to getRoomIdByHash zwraca -1. Zatem jeśli po tej poprawce powinno ci działać. Przy testowaniu patrz zawsze na konsolę błędów (Central Debug Console). To pomoga od razu znaleźć wiele problemów.
Re: Hacki zyciowe do Mudleta
: 31 lip 2015 11:34
autor: Tercoral
LUA: ERROR running script SprawdzanieGmcpLokacji (SprawdzanieGmcpLokacji) ERROR:[string "function
SprawdzanieGmcpLokacji()..."]:9: attempt to call global 'getRoomIdByHash' (a nil value)
Poprawilem i wyszlo to.
Re: Hacki zyciowe do Mudleta
: 31 lip 2015 12:55
autor: Kjell
Biczuję się makaronem.
getRoomIDbyHash <- ID ma być wielkimi literami. Case sensitive.
Re: Hacki zyciowe do Mudleta
: 31 lip 2015 13:04
autor: Tercoral
Faktycznie, wszystko dziala jak trzeba. (Identycznie jak z ifami)
Tylko nadal ma takie cos ze przeskakuje lokacje jak szybciej gdzies podejde.
Pewnie skrypt mappera miesza.
Podzielil bys sie skryptem mappera?
Re: Hacki zyciowe do Mudleta
: 31 lip 2015 13:19
autor: Kjell
Najpierw podziałamy z twoim, jak ustaliliśmy. Jeśli zostanie mi czasu w weekend, to wrzucę swój na githuba i podam link.
Re: Hacki zyciowe do Mudleta
: 01 sie 2015 13:16
autor: Zorilazor
A jak ci sie to objawia, ze 'przeskakuje'?
Ja mam tak, ze mapper/gmpc dziala szybciej niz tekst z muda (mapa sie renderuje w 2-3ms przy kazdej zmianie gmpc.room)
Np sprypt mapujacy sprawdza czy pokoj juz istnieje:
Kod: Zaznacz cały
if getRoomIDbyHash(hash) ~= -1 then
cecho("<red>Pokoj juz zmapowany!\n")
return
end
i dziala to tak przy szybkim chodzeniu:
Kod: Zaznacz cały
e;e;e;e;e
Pokoj juz zmapowany!
Glowny korytarz.
Sa tutaj trzy widoczne wyjscia: polnoc, wschod i zachod.
Pokoj juz zmapowany!
Pokoj juz zmapowany!
Pokoj juz zmapowany!
Pokoj juz zmapowany!
> Glowny korytarz.
Sa tutaj trzy widoczne wyjscia: poludnie, wschod i zachod.
Krostowaty opasly krasnolud i brudny schorowany krasnolud.
> Glowny korytarz.
Sa tutaj trzy widoczne wyjscia: polnoc, wschod i zachod.
Nerwowy masywny krasnolud.
> Glowny korytarz.
Sa tutaj cztery widoczne wyjscia: polnoc, poludnie, wschod i zachod.
> Glowny korytarz.
Sa tutaj cztery widoczne wyjscia: polnoc, wschod, zachod i poludnie.
Brudny malomowny krasnolud i rudobrody przyjazny krasnolud.
>
Re: Hacki zyciowe do Mudleta
: 01 sie 2015 13:36
autor: Tercoral
No... przeskakuje lokacje wstecz. Mowie, ze w moim mapperze jest cos nie tak.
Sklejalem 3 skrypty mapera przez 2 lata az w koncu cos wyszlo.
edit: Ale ty chyba masz calosc w gmcp? Ja mam zrobione tylko niektore lokacje i moze temu przeskakuje.
Re: Hacki zyciowe do Mudleta
: 01 sie 2015 15:54
autor: Zorilazor
To co sie da to mam z gmcp. Mapa z klienta oficjalnego sie kopiuje autoamtycznie.
Do innych lokacjji to sobie skryptow nie dorobilem jeszcze, bo w sumie nie mam pomyslu jak to hashowac.
Mialem taki pomysl zeby hashe robic z krotkiego opisu i wyjsc ale jakos to mi utknelo
Kod: Zaznacz cały
function ZrobHashaTekstowego(tekst1,tekst2)
local suma = 0
for i = 1, string.len(tekst1) do
suma = suma + string.byte(tekst1,i)
end
for i = 1, string.len(tekst2) do
suma = suma + string.byte(tekst2,i)
end
return DEC_HEX(suma)
end
Re: Hacki zyciowe do Mudleta
: 01 sie 2015 16:14
autor: Tercoral
Dajesz do zmiennej:
Domene + ostatnie name + short lokacji + cyferkowe wartosci wyjsc.
Np ishtar.okolicenovi.przykrypcie.132
Re: Hacki zyciowe do Mudleta
: 01 sie 2015 17:26
autor: Zorilazor
no tylko to nie rozwiazuje problemu z podobnymi lokacjami, np jak tu:
Kod: Zaznacz cały
Nad przepascia.
Sa tutaj dwa widoczne wyjscia: polnoc i poludnie.
> s
Nad przepascia.
Sa tutaj dwa widoczne wyjscia: polnoc i poludnie.
> s
Nad przepascia.
Sa tutaj dwa widoczne wyjscia: polnoc i poludnie.
> s
Hashe musza byc unikalne w tym przypadku inaczej bedzie dzialal tylko ten przypisany najpozniej.
PS akurat lokacje w przykladzie da sie oskryptowac z gmcp, ale sa pdobne gdzie indziej ktore nie wysylaja nic poza gmpc.room.info.exits