Strona 1 z 10

GMCP na Arkadii - pomysły

: 15 paź 2015 10:51
autor: Eday
Witam!

Bardzo podoba mi się GMCP na Arkadii. Mam jeden pomysł, który może podnieść użyteczność:

Czy jest możliwość żeby room.info zawierało nazwe pokoju?

Teraz mamy:

Kod: Zaznacz cały

{
   "exits":[
     ...
   ],
   "map":{
      "name":"Wyzima",
      ...
   }
}
A fajnie by było mieć:

Kod: Zaznacz cały

{
   "name": "Ulica Zlotnicza."
   "exits":[
     ...
   ],
   "map":{
      "name":"Wyzima",
      ...
   }
}
Oczywiście z uwzględnieniem widoczności. Ułatwiłoby to pisanie i używanie mapperów z Arkadią. Aktualnie wykrywania nazwy pokoju jest kłopotliwe, czasem nie wiadomo która linijka w odpowiedzi to nazwa pokoju. Co wy na to?

PS. Zgłaszałem pomysł na Arkadii. Ale pomyślałem, że dedykowany wątek pozwoli na dyskusje na o pomysłach i dopracowanie ich nim zgłosimy do Administracji.

Eday

Re: GMCP na Arkadii - pomysły

: 15 paź 2015 11:29
autor: Migr
Nie wiem jak to bedzie z synchronizacja, ale opis lokacji mozesz zlapac color triggerem z opcji kolory ansi -> krotki opis dniem/noca.
Co do pomyslow, mam swoj maly. Chodzi o dodanie pozycji (desc)(Ty) w numie wlasnej postaci w object.data.

Re: GMCP na Arkadii - pomysły

: 15 paź 2015 15:22
autor: Zorilazor
fajnie by byo dostac opisy w GMCP ale wiele to nie zmienia. Krotki opis to zwykle pierwsza linia tekstu po nowym room.info, i jak wyzej, mozna wylapac kolorowym triggerem.
Niektore krotkie opisy zmieniaja sie w roznych porach roku, dnia, oswietlenia, czasem nawet losowo, wiec i tak dzialajacy mapper nie bedzie na nich polegal w 100%

Re: GMCP na Arkadii - pomysły

: 15 paź 2015 15:34
autor: Zurwen
Migr pisze:Nie wiem jak to bedzie z synchronizacja, ale opis lokacji mozesz zlapac color triggerem z opcji kolory ansi -> krotki opis dniem/noca.
Co do pomyslow, mam swoj maly. Chodzi o dodanie pozycji (desc)(Ty) w numie wlasnej postaci w object.data.
Nie ma takiej potrzeby, skoro masz pole avatar.

Tak jak napisali wyżej, nazwę roomu lepiej łapać po kolorku ansi. GMCP przychodzi niezależnie od reszty informacji, więc trudniej by to było zgrać w skryptach.

Re: GMCP na Arkadii - pomysły

: 15 paź 2015 17:51
autor: Gleanevall
Zurwen pisze:GMCP przychodzi niezależnie od reszty informacji, więc trudniej by to było zgrać w skryptach.
afaik mylisz się tutaj, a Zorilla ma rację.

Moja propozycja: niech core.ping odpowiada tymi samymi danymi, które zostały wysłane, żeby można było tam podać timestampa.

Re: GMCP na Arkadii - pomysły

: 25 lis 2015 08:59
autor: Migr
Zauwazylem, ze objects.data nie przysyla aktualizacji "hp" podczas akcji typu walka->ucieczka->powrot ponizej hp przeciwnika == "1". Zastanawiam sie czy jest to blad, czy tez zamierzona sprawa?

Powiedzmy, ze walcze z wilkiem. Zbijam go do hp == 1, uciekam, wracam i dostaje z gmcp:

Kod: Zaznacz cały

object.data: {279231}{{desc}{siwy drapiezny wilk}{defense_target}{false}{attack_num}{475
020}{attack_target}{false}{team_leader}{false}{team}{false}{enemy}{true}{living}
{true}{hp}{1}}{475020}{{attack_num}{279231}}
Hp jest na swoim miejscu, dobijam do hp == 0 (ledwo zywy), uciekam z lokacji, wracam i dostaje:

Kod: Zaznacz cały

object.data: {279231}{{desc}{siwy drapiezny wilk}{defense_target}{false}{attack_num}{475
020}{attack_target}{false}{team_leader}{false}{team}{false}{living}{true}{enemy}
{true}}{475020}{{attack_num}{279231}}
Tutaj juz nie ma pozycji hp == 0...
Edit:
Zmienilem wartosci hp, gdyz nie jestem na 100% pewny czy jest tak juz od hp == 1, czy tylko nie wysyla wartosci zerowej.

Re: GMCP na Arkadii - pomysły

: 26 lis 2015 09:52
autor: Tuargan
Komuś się może udało odpytać GMCP o dane Object.Data dotyczące tylko jednego, konkretnego obiektu? Próbowałem kilku wersji, za każdym razem uzyskiwałem albo dane dotyczące wszystkich obiektów na lokacji, albo brak odpowiedzi.

[Edit: bo mało pomysłu w pomyśle :P]

Jeśli nie jestem w błędzie, to takiej możliwości nie ma i pomysłem byłoby wprowadzenie. Jeśli w owym błędzie tkwię, byłbym wdzięczny za wyprowadzenie z niego.

Re: GMCP na Arkadii - pomysły

: 26 lis 2015 11:02
autor: Rafgart
Arkadia przesyla dane w momencie ich zmiany. Odpytywanie nie powinno byc potrzebne i jest zbednym obciazaniem muda. Zostawilem taka mozliwosc dla sytuacji wyjatkowych, ale pewnie wiekszosc to bedzie 'nie umiem zakodowac, to bede non stop pobieral dane z muda'. Jesli sie myle, to przedstaw mi przypadek, gdzie taka mozliwosc naprawde cos wnosi.
Migr: juz powinno byc dobrze.

Re: GMCP na Arkadii - pomysły

: 26 lis 2015 15:28
autor: Tuargan
Próbuję obejść problem, który opisałem tutaj, jednym z pomysłów było przy liczbie obiektów 7+ odpytywanie o nie po kolei. Ale rzeczywiście to zły pomysł.

A może dałoby się rozbić przesyłanie Objects.data w przypadku podawania pełnych danych na temat obiektów? W sensie, że zamiast jednego komunikatu:

Kod: Zaznacz cały

object.data {"6890":{"desc":"oszalaly zablizniony mezczyzna","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6},"6905":{"desc":"usmiechniety przystojny mezczyzna","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6},"6901":{"desc":"powabna ladna kobieta","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6}}
Otrzymać:

Kod: Zaznacz cały

object.data {"6890":{"desc":"oszalaly zablizniony mezczyzna","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6}}
object.data {"6905":{"desc":"usmiechniety przystojny mezczyzna","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6}}
object.data {"6901":{"desc":"powabna ladna kobieta","defense_target":false,"attack_num":false,"attack_target":false,"team_leader":false,"team":false,"enemy":false,"living":true,"hp":6}}
Różnice w ilości przesłanych danych marginalne, różnice w oskryptowywaniu tego też...

Re: GMCP na Arkadii - pomysły

: 26 lis 2015 15:48
autor: Rafgart
Wyglada na to, ze GMCP jest ucinane po 1024? znakach.
Arkadia bez problemu wysyla do 30k, wiec problem jest raczej w kliencie. Nie wiem czy jest dostepny kod zrodlowy TF-a, ale nalezaloby sprawdzic maksymalna wielkosc kolejki dla subnegocjacji opcji GMCP.
Rozbicie moze nic nie dac, bo i tak wszystko trafi do jednego bufora.