Я далек от системных реестров и протоколов :) Трудно в этом топике разобраться.
Объясните простыми словами. Если я стреляю и вижу попадания, то это еще не признак того что попал?
Вид для печати
Я далек от системных реестров и протоколов :) Трудно в этом топике разобраться.
Объясните простыми словами. Если я стреляю и вижу попадания, то это еще не признак того что попал?
Я считаю "да" - верный признак. За 1.5 года не было факта для усомнения. Другое дело что накладываются разные факты, как то: правильная ДМ, удача и лаги, что дает невероятную по вариантам и обалденную по результатам ситуацию.
Я бы сказал - при хорошей связи скорее "да".Цитата:
Originally posted by orion71
Я далек от системных реестров и протоколов :) Трудно в этом топике разобраться.
Объясните простыми словами. Если я стреляю и вижу попадания, то это еще не признак того что попал?
При плохой (твоей или жертвы, неважно), 50 на 50 ;)
При лаге - скорее "нет".
Но факторов действительно много. И удача тоже немаловажна ;)
Так что - удачи! ;)
Попал, попал, однозначно:DЦитата:
Originally posted by orion71
Объясните простыми словами. Если я стреляю и вижу попадания, то это еще не признак того что попал?
А вот результат может быть заторможен.
Какой же бред развели... какие-то зависимости попадпний от пинга...
тебе уже отвечали. не ждет. но пока жертва не скажет что у нее изменился статус повреждений - никто об этом не узнает.Цитата:
Originally posted by dets
Что ж - допустим ты прав! Попадания считаются на клиенте.
Тогда вот тебе ситуация из жизни - ты атакуешь жертву - стреляешь в нее крупным калибром, видишь как твой снаряд попадает в нее, потом проходит (часто довольное ощутимое) время, после чего жертва разваливается.
Внимание, вопрос - ПОЧЕМУ?
[Сюда писать ответ ;) ]
P.S. Если ты скажешь что твой компьютер ждет от компа жертвы отчета о повреждениях, то это бред, поскольку твой комп
может и сам ЛЕГКО посчитать результат попадания.
твой - не может, т.к. не знает точного состояния самолета. ему сообщается только то, что необходимо знать для отрисовки.
dets!
Самолет клиента не может обсчитать вред от попадания, т.к. у него нет инфы о состоянии самолета. А почему нет инфы? да что б канал не забивать, иначе ж сколько лишних данных придется гонять к себе бедному юзверю! И это при том что каждому самолету придется знать о каждом и обо всех изменениях! Да весь исходящий канал у сервака и без того часто не очень широкий совсем в даун уйдет.
2 монах&pwl
Любой комп любого игрока ВСЕГДА знает состояние КАЖДОГО самолета. В зависимости от этого состояния он и рисует повреждения. Если у него не будет этой информации, все самолеты будут всегда как новенькие.
С другой стороны разделять данные для прорисовки повреждений и данные о состоянии самолета - это нонсенс!
Как ты себе представляешь эти "данные для отрисовки"?
Сейчас в ЗС каждый самолет имеет несколько частей - их немного, около 20-30, у каждой части есть набор конечных состояний, их тоже не очень много - состояние каждой части я уверен в один байт умещается.
Вот этот массив из 20-30 байт описывает состояние любого самолета!
На основании этих данных можно нарисовать ЛЮБОЙ самолет с ЛЮБЫМИ повреждениями.
А изменение состояния самолета умещается в 3-4 байта.
2 pwl:
cкажи плиз что такое "данные для прорисовки повреждений"?
2 монах:
что сложного в том чтобы передать 3-4 байта по сети?
2 pwl:
Но мы отвлеклись.
Вопрос был - почему есть задержка между моментом попадания и результатом.
Ты говорищь - задержка потому что мой комп не знает состояние жертвы, а знает только визуальное ее состояние. Я убедил тебя в том что "визуального состояния" нет?
А что, не зависят? ;)Цитата:
Originally posted by 23AG_Oves
Какой же бред развели... какие-то зависимости попадпний от пинга...
Ладно возможно что комп стреляющего и знает о состоянии цели. Но DM полюбому должна считаться на компе цели. Вот пример. Летит за бомбером два чела один с 37мм а другой с 20 мм. Оба стреляют из пушек по одному и тому же крылу (от 37 мм крыло скажем не отваливает, и от 20 тоже, а если вместе прилетят то отвалится - условный пример, может на самом деле не так).. оба попадают и обасчитают свою ДМ относительно идеально нового самолета, т.к. попали они почти одновременно. И вот один шлет бомберу инфу "у тебя дырка в крыле, огроменная" , другой тоже шлет инфу "у тебя дырка в крыле, небольшая".. и что делать цели? сначала принять одну модель, а потом когда вторая придет? перекрыть ею предыдущие? не думаю что можно сложить "Дырка + дырка побольше = отвалиось крыло" (даже если и можно, кто это будет складывать, логичнее сложить цели не так ли? тогда мы пришли к тому что есть сейчас, если складывать будет последний стрелявший то как его выяснить? пока сервак думал что последний был второй, первый тоже может стрельнуть и даже когда выяснят кто был крайним, ему пришлют инфу обо всех повреждениях(не попаданиях, т.к. пересылается именно повреждених) кроме тех что зделал он,опять же надо убеждаться что вся инфа дошла и перепосылать если что да и трафик считай лишний идет, впустую гонять инфу о ДМ сначала от игроков к цели, потом от цели к последнему стрелявшему), а, а вот "37 мм + 20 мм = отвалилось крыло" подсчитать можно. Ладно предположим там какой нибудь хтрый механизм коррекции будет, что он незасчитывает второе попадаение, пока не пошлет свой дэмейдж после первого попадания всем и не получит подтверждение, что инфа дошла (ведьу всех должна быть достоверная инфа о текущем дэмейдже бомбера). И тока потом принимает второй дэмйдж. но как это выглядит для игрока стрелявшего вторым?
1) выстрел (просчет попадания)
2) инфа к цели: "дырка в крыле. небольшая"
3) инфа от цели : "между 1) и 2) было состояние цели "дырка в крыле. большая"
4) повторная инфа к цели: "крыло , отвались!"
не кажется что слишком сложно? тем более реализовать этот корректирующий механизм не думаю что так просто как у меня это выглядит, ведь за время корректировки еще много чего может случится (еще кто то пришлет скажем " у тебя попадание от 7.62 мм", и ему надо ответить тоже " обломись, корректировка - крыла в тот момент уже не было") и все это будет накапливаться как снежный ком. А теперь представь себе что
а) бомбер поливают из 6 пулеметов 2 самолета.
б) инфу надо разослать не только бомберу но и всем остальным. и вот людям которые воюют где то в другом месте приходит "у бомбера дырка в крыле, большая"(это отсылает 1 чел), потом "у бомбера дырка в крыле поменьше" (второй чел), и затем "у бомбера нет крыла" (тоже второй чел, после того как придет к нему корректировка от бомбера)
если сложить пункты А и Б то получается неимоверная трата трафика ВПУСУТЮ причем для всех на серваке.
Не смущайте человека. Здесь пока что вы- единственный заблуждающийся, имейте совесть.Цитата:
Originally posted by dets
Я бы сказал - при хорошей связи скорее "да".
При плохой (твоей или жертвы, неважно), 50 на 50 ;)
При лаге - скорее "нет".
Но факторов действительно много. И удача тоже немаловажна ;)
Так что - удачи! ;)
Если атакующий видит попадание- значит попадание было.
Есть только два момента:
1. Если пакет о попадании пропал при передаче по сети, значит жертва никогда не узнает что в нее попали, а значит повреждений не будет.
2. Если жертва отвалилась от сети (насовсем) то никто никогда не узнает, что у нее повредилось, и не отобразит этого у себя.
При этом событие 2 всегда очевидно, а событие 1 крайне маловероятно.
Возьмем картинку: два самолета с пингом по 500 виражат один за другим на скорости 360км/ч (100 м/с). Один стреляет во второго. При этом, координаты жертвы запаздывают на 1 сек (500+500). А значит, отличаются от реальных на 100 метров. Это около 10 корпусов.Цитата:
Originally posted by dets
Цитата1:
"Но какие у тебя основания считать, что в Ил2 реализовано так, как ты хочешь?"
Цитата2:
"А вот у людей есть основания считать, что в Ил2 реализовано так, как они говорят."
Да, у меня нет никак оснований считать что в ЗС реализовано так как я говорю или хочу. (Я кстати всегда стараюсь делать оговорки на эту тему). Но такого основания нет ни у кого, кроме разработчиков.
В идеале я просто хотел бы понять, как некоторые сетевые вещи сделаны в ЗС.
Сейчас у меня есть свои мысли и идеи на этот счет.
Если ты хочешь оспорить/опровергнуть мои идеи, пожалуйста, я буду только рад и скажу - да, здесь я был неправ.
По вашей теории, по жертве невозможно попасть, если брать правильное (не зависящее от пинга) упреждение.
А люди, почему-то, попадают. И, заметьте, никто не выносит упреждение на 10 корпусов...
И все-таки по настройке модемного канала. Мой случай: WinXpPro SP1, цифровая линия и модем Genius 56PCI-LA. Коннект - 50.2 (V90) и по статистике модема (ATI11) ниже не сваливается.
1. Какую скорость соединения ставить в ИЛ2-ЗС (стоит 28к)
2. Читал, что надо что-то в HyperLobby прописывать - что и куда? (это про скорость соединения) Если имеется в виду clientRate=2000 то скока его надо?
3. Параметр реестра TcpWindowSize влияет на Ил2?
И на последок: TCPWindowSize - если ставлю 218h - то могу ходить по всем сайтам, но тянется файло мееедленно.. Если ставлю 2180h - закачка отличная, но не все сайты доступны. Компромиссные решения (между 218-2180) уменьшают скорость закачки, но доступ, например к Сухой.ру не дают... Как бы найти такое решение, чтоб и закачка и все сайты, а? :)
по поводу TCPWindowSize. Логи на все соединения, логи =))). Причём желательно по пакетам.
да не бред похоже....Цитата:
Originally posted by 23AG_Oves
Какой же бред развели... какие-то зависимости попадпний от пинга...
в оффлайне стреляю и знаю - попал.
проверю с Arcade=1 - попал.
в онлайне ЗНАЮ - попал... а хера лысого... не попал... вот и думай...
Мда, хороший у вас пример, заставил задуматься ;)Цитата:
Originally posted by deCore
Возьмем картинку: два самолета с пингом по 500 виражат один за другим на скорости 360км/ч (100 м/с). Один стреляет во второго. При этом, координаты жертвы запаздывают на 1 сек (500+500). А значит, отличаются от реальных на 100 метров. Это около 10 корпусов.
По вашей теории, по жертве невозможно попасть, если брать правильное (не зависящее от пинга) упреждение.
А люди, почему-то, попадают. И, заметьте, никто не выносит упреждение на 10 корпусов...
Что ж, как обещал, признаю что был не прав!
Обсчет попаданий действительно производится на компе атакующего. Ибо в противном случае упреждение будет зависеть от пинга, а этого на самом деле нет!
Тогда придется признать и тот факт, что задержка между попаданием и результатом действительно вызвана ожиданием отчета о повреждениях от жертвы. Потому что в этом случае ничем другим она и не может быть вызвана.
Тогда можно объяснить и невозможность нанести повреждения самолету в лаге как результат отсутствия этого самого отчета.
Хотя как мне кажется здесь можно было сделать и лучше.
P.S. Вот ведь заклинило меня на своей навязчивой идее. Причем уже давно! ;) Видимо очень хотелось выдать желаемое за действительное.
TCPWindowSize точно ни на что не влияет, потому что относится к параметрам TCP, а ЗС использует UDP.Цитата:
Originally posted by DrBit
3. Параметр реестра TcpWindowSize влияет на Ил2?
Похоже, бред подействовал...Цитата:
Originally posted by 228ShAD_Liar
да не бред похоже....
в оффлайне стреляю и знаю - попал.
проверю с Arcade=1 - попал.
в онлайне ЗНАЮ - попал... а хера лысого... не попал... вот и думай...
Попадания зависят от пинга единственным образом - когда лагает (дёргает) самолёт противника - то попасть трудно.
2 MikeR : Выяснил, что глюк с TcpWindowSize=2180h и неоткрываемостью некоторых сайтов - косяк одного из моих провайдеров. С другими провайдерами такой проблемы нет.