Приветствую Вас, Гость
Главная » 2018 » Сентябрь » 26 » Мало памяти! Новая надежда! От Эверона до Меркаллило!
23:47
Мало памяти! Новая надежда! От Эверона до Меркаллило!

2018-Сен-28 14:44 МСК Пт. Тут нашёл скриншоты знакомых мест.

2018-Сен-28 11:41 МСК Пт. Бьёт врагов НЕ_МАСТЕР с утра до ночи, реально всю ночь был на острове этот человечише! Явно он обуреваем идеями спасения человечества от буржуазной экспансии. Есть у него счёт к буржуинам прошлого  и настоящего. И пока  дышит он виртуальным воздухом свободы, не бывать буржуинам в нашей виртуальной стране :o) 

И только в 10:30 прибыл Цэрес и вскоре Йети, на помощь во взятии Меркаллило, что достаточно нудная процедура!

Сам опять отбываю на сельхоз-строй работы на выходные.  Вместе со мной отбывают все админы, большие и маленькие. И остаётся только сервер и вы, одинокие и сирые.

Но даже если и упадёт серверок наш, не горюйте сильною. Ибо зажглась звезда надежды в виде ключа при запуске сервера, которая, не исклчено, устранит текущую основную причину падения. Вы больше знаете слово зависание, так оно выглядит у вас на клиенте.

На деле в 95% случчаев именно падение сервера приводит к процессу зависания. Т.е. сервер ещё формально принимает запросы по IP, но уже не ведёт никакой работы с объектами, а то, что Вы наблюдаете  у себя (неубиваемые боты, недопуск в технику и т.д.) - всё это лишь домыслы Вашего клиента, который продолжает экстраполировать  последние полученные данные с сервера, не понимая, что они уже безнадёжно устарели.

На виртуальной машине сервера в этот момент уже висит  сообщение об ошибке по памяти. Если нажать на нём кнопку "Ok", программа сервера уже полностью вырубается и на ваших клиентах появляется в правом нижнем углу красная иконка разрванной цепочки и начинает бежать зловещая строка "С сервера не получено сообщений в течении XX секунд".

Восстановиться с такого состояний заагрузкой преддыдущего сохранения удаются только в 5-10% случаев, по моим прикидкам, т.е. это - маловероятно. В августе разок это удалось, например. Но последние 2 миссии ужне получилось. 2-3 восстановления не дают результата - значит всё, конец, запуск по новой.

А в 5% случаев сервер действительно зависает, т.е. почему-то замедляет реакцию свою примерно раз в 100. Этот случай менее понятен, т.к. никакой диагности нет. И зависание это более мягкое, иногда что-то всё же происходит. Также с этого состояния вероятность излечения через восстановление сохранённых копий памяти около 50%.

2018-Сен-27 11:05 МСК Чт. Эверон брали Инженер, НЕ_МАСТЕР и вездесущий Роксе! Т.к. Иинженер не получал сообщений, то и не слышал возможную мать-перемать со стороны страдающего по отсутствию ботов НЕ_МАСТЕРА. Благодаря этой благостно-напряжённой атмосфере вдруг задумался.

А не давать ли ботов, начиная с ефрейтора? Так и так НЕ_МАСТЕР уже проверен, в том плане, что не будет с ботами влезать в основной процесс, Разве только по плаксивым просьбам сослуживцев по острову. И занят он постоянно истреблением патрулей, т.е делом благоротным и альтруистичным Почему бы и не с рядового? Но боты и сами ведь  - рядовые. И не будут слушаться такого-же как они, мальца :o)

2018-Сен-27 00:45 МСК Чт. Вроде есть ключ командной строки для Armed Assault:  

-maxmem, устанавливающий передельный размер памяти для этой задачи. По умолчанию Арма, судя по дампу ошибки, запрашивает где то 512 мегабайт. Вроде бы достаточно, да можно и увеличить. Памяти хватает. Следующий раз так и сделаю!

Вспоминаю, что и физической памяти в виртуальной машине она кушает под 450 мегабайт, по моим наблюдениям. Скриншот этого приложу после включения окна на остров. Всё это внушает смутные надежды, но реальностью ои могут стать только после испытания при следующем запуске. А здорово бы было, если бы миссия жила тихо и спокойно до самомго её конца. Так надоели эти судорожные попытки выпрямить кривое дерево.

2018-Сен-26 23:45 МСК Ср.

Вот такая вот ошибка возникает, а сообщение достаточно невнятное, то ли угрожающее, то ли неверное:

Out of Memory
2018/09/26, 23:23:45 Virtual memory total 2047 MB (2147352576 B)
2018/09/26, 23:23:45 Virtual memory free 1377 MB (1444585472 B)
2018/09/26, 23:23:45 Physical memory free 1258 MB (1319784448 B)
2018/09/26, 23:23:45 Page file free 2720 MB (2852728832 B)
2018/09/26, 23:23:45 Process working set 460 MB (483221504 B)
2018/09/26, 23:23:45 Process page file used 458 MB (480677888 B)
2018/09/26, 23:23:45 Runtime reserved 512 MB (536870912 B)
2018/09/26, 23:23:45 Runtime committed 447 MB (469061632 B)
ErrorMessage: Out of memory (requested 13 KB).
Reserved 262144 KB.
Total free 20 KB
Free blocks 24, Max free size 30305 KB

 

В новой версии работает гудок на наших грузовиках. Проверьте!

Просмотров: 65 | Добавил: Engineer | Рейтинг: 0.0/0
Всего комментариев: 16
15 Rokse LT  
Все это хорошо. Я просто думаю как изпользовать нами добытые трофеи по максималке. А то мы их струдом добываем а изпользуем дай бог 5 % от всего и только те каторые поблизлсти от базы. А вообще нашлась хорошая тема для дискусии и обсуждении. Я думаю что любой вариант подойдёт. Главное что бы мы знали где что оставленно. А там и на точку парашутироватся можно. Если останутся метки этого в полне достаточно. Главное что бы програмнно получилось. Было просто но эфективно.

0
16 Engineer  
Золотые слова! Их бы манагерам в уши. Но у них в ушах только звон будущих зряплат, а не здравый смысл. Но я отвлёкся.

Отвечу же так:
1. Если исчезнут падения сервера по памяти, то будем разрабатывать далее. не исчезнут, надо либо переводить сервер на linux (сейчас Windows, а они кушают хорошо), либо уходить на Арму-2 (это оченьдолго) .
2. Сделаю тогда в любомслучае просто. И попытаюсь эффективно)

0
13 Engineer  
Стыдно, т-щ Эд! Телепортация - вообще чуждая буржуазная идея!  За очки (считай, деньги, доллАры!) делать нечто, не марая штанов в масле и соляре!

Наш путь - деритринитация (ищи в домике ГРУ)! А через неё не пролазит ничего крупнее человеческого организма))

Вместо Вашего предложения, в своё время, предлогал получат призы на месте, в городах и деревнях. Как бы находить их в местах боёв, что устраняет волшебные призы и добавляет реализьму.
Тут бы и пригодилась идея о маркировании найденных предметов на  общей карте. Нашёл приз, залез в него или выбрал меню на нём - и видишь его на карте, именно как призовую технику, например красным цветом. Потом, когда приз уже исчез с места - маркер сам собой тоже исчезает.
Повторяю, технику в отбитом городе сначала надо найти, а тот, что первым сел в неё или выполнил пункт меню "Пометить приз на штабной карте", получает некоторые очки. А?

Тогда на карту будут рассеяны повсеместно наши боевые единицы, которые, в купе с аммотраками, можно использовать весьма и весьма эффективно.  Но без разведки тут не обойтись, Всегда надо знать, где же патрули, чтобы они не вынесли призовую технику на раз-два. Помогут нам в этом гражданские, которые будут сообщать о наличии патрулей и даже помечать их как-либо на карте, в районах освобождённых городов, причём динамически, т.е. в движении. Конечно, это будет примерно, но зато реалистично, динамично, заманчиво -  и феерично. И без телепорта, с солярой и маслом)))

12 Агент  
Нуу... телепортация... А как же тащить технику через всю карту, посекундно останавливаясь и оглядываясь в поисках патрулей, дрожащими руками вытирая холодный пот с лица. Неее - нафиг телепортацию!

10 Agent7B  
Фактически это модификация предложенного тобой варианта N1. Конечно это дело не одного вечера, но не думаю что это займет больше времени, чем у меня парашютисты

9 Agent7B  
Как-то все сложно в плане использования получается. Да и еще система поощрений сюда притягивается. Основная-то наша проблема пропадание маркеров от захода к заходу. Остальное - это уже проблемы реализации. Я тут размышлял немножко и вообразил себе такую ситуацию: насколько я помню, по правой кнопке мыши на карте никаких действий нет. То пусть тогда по ней появляется диалог из двух пунктов: поставить метку, убрать метку. При постановке запрашивается наименование, а при снятии появляется перечень стоящих на заданном расстоянии от места клика меток, из которых можно выбрать удаляемую. Единственное - при таком методе стандартным методом простановки меток пользоваться не стоит.

0
11 Engineer  
Не уверен, что на карте можно создавать диалоговые окна.

Вот если получится находить созданные пользователем маркеры, то дальнейшее бы несколько упростилось.

Останется, собственно, только задача удаления отдельных системных маркеров по типу удаления ручных. Тут нужно перехватывать нажатие "Delete", знать курсор на карте и т.д.

Это было бы проще всего. И ответило бы на текущий вопрос по сохранению маркеров. 

А картографические задания можно делать или не делать - это вопрос интереса.

0
14 Engineer  
Поиск методов обнаружения маркеров пользователя результатов не дал. Нету такого надёжного метода. Если в одиночной игре это поиск как-то работает, хотя и кривовато, с разными длинными циклами, то про мультиплеер Интерннет и Богемия Интерэктив глухо молчат.
Т.е. решение с ручными маркерами не проходит.

Надо делать свои собственные маркеры. Диалоговые окна на карте возможны, сделать их технически возможно. Надо сначала подумать про этом.
Более важным мне представляется борьба  с падениями сервера по памяти.

Заметил следующее: по мере хода миссии размер  задачи в памяти помаленьку растёт. Как в физической, так и  в виртуальной памяти.
Рассмотрим текущую миссиию. В состоянии незагруженной карты она была 30 мегабайт. После начала миссии с приходом первопроходца уже 360 мегабайт, После взятия Долорес уже 380. Ближе к концу она будет 460-480 мегабайт. А так быть не должно. Действительно, по мере хода миссии накапливаются новые данные, в виде маркеров освобождённых городов, но не мегабйты же онги загнимают. Есть подозрение, что на деле память утекает. Чем болше времение. тем больш безвозвратная утеря памяти.И, по моим предположениям, уже после 5-10 города память может подойти к заданному пределу, где уже происходит ошибка при запросе памяти.
Также, размер памяти может зависеть  от числа игроков на карте бывающих в игре. В последнее время их у нас стало больше, раза в 2. Это тоже может потреблять память.
И вот теперь, я пытаюсь, с помощью ключа -maxmem, увеличить объём доступной памяти в 2 (два) раза.
Так и не ясно, действует ли этот ключ для сервера, или он предназначен только для клиента.
Вот и посмотрим, получится. Если ошибки по недостатку памяти исчезнут, это будет просто отлично! Мы перейдём на новый уровень и продолжим развиваться. Если ошибки продолжатся, это может означать, что дальнейшее развитие нввозможно, что достигнут физический предел  для соложности миссии в Арме-1. И мне надо думать, куда переходить дальше :o) А вам удовлетвориться имеющимся. И даже откатиться назад! Т.к. текущая миссия не обеспечивает устойчивой работы!

7 Agent7B  
Пробежавшись по мануалу скриптинга армы, не нашел никаких событий, сопутствующих простановке маркера, равно как и функций для перечисления установленных маркеров, даже программно установленых. Так что кодить придется действительно очень много. Остается слабая надежда на то, что я плохо искал...

0
8 Engineer  
Ты искал хорошо. Событий нет. Надо перехватывать клавиатуру находясь на карте. Это всё возможно, но малоинтересно и натужно как то.

Что, если завести специальный вертолёт, на котором ты летаешь, находишь пустую технику (танк, вертолёт, хаммер), зависаешь над ней и выбираешь команду "Нанести на карту"? В этот момент у тебя на карте появляется соответствующий тематический маркер соответствущего вида (символы  танка, самолёта, автомобиля). Если ты завис над пустым местом или не попал в радиус 5 метров, то маркер не появляется. Затем ты прибываешь на базу. Если ты погиб, то все твои достижения пропали. Если жив, то на флаге базы или на доске с картой появится команда "передать карту в штаб". За это тебе дают очки, по числу техники, обнаруженной тобой во время полёта, и ещё не опмеченной на карте, ммеющейся в штабе.
Также на доске с картой появится команда "Получить карту из штаба". По ней ты получаешь все маркеры, имеющиеся в картографической группе штаба (на сервере). Т.е. все объекты, найденные  всеми картографами острова до тебя. Получать карту может только участник картографирования острова. Т.е. игрок, нанёсший на карту хотя бы один новый маркер. Очём делается отметка в его  книжке "Бойца-интернационалиста".

Также, каждый маркер, перед передачей его из штаба, проверяется на актуальность. Если техники, помеченной маркером, уже нет (сгорела, увезена), то маркет стирается с карты.

А можно и по другому актуализировать:
пусть каждый маркер на карте имеет на острове свой собственный привязанный к нему дорожный конус (вы его сразу узнаете, но скриншота пока нет). И тогда, если ты видишь конус, стоящий на острове одиноко, без техники,  то сможешь к нему подойти и вызвать на нём команду "Удалить точку с карты". Конус исчезает с земли, а привязанный к нему маркер исчезает  с штабной карты. При этом удалить конус злонамеренно не удастся, т.к. будет проверка на реальное отсутствиесвязаной с конусом и маркером техники. И толькот тогда, когда техники нет, конус  с маркером удаляются. И тебе даётся очко, за активность в обновлении штабной карты :o)

Дорожные конусы будет полезны в том смысле, что ты сразу видишь, помечен уже объект накарте или нет. И нетратишь времени на его нанесения, добавляя только реально новые объекты.

Наверное. должна иметься возможность отключать штабные маркеры, чтобы они не заполоняли карту.

В принципе, это не позволяет проставить вечный маркер произвольного типа "СППМ" (только маркеры техники), но пусть это станет вторым этапом внедрения топографической военной службы на острове.

5 Rokse LT  
НЕ МАСТЕР - Я смотрю наши мысли совподают. Я тоже предлогал в штабе (палатка) поставить доску с картой на каторой можно увидеть где есть оставлены сослуживцами ДОП базы. Пойдем дальше - ,нажав на точку на карте если хочеш можно посмотреть что там оставленно с птичьево полета (пример). Если тебе по званию подходить, можно нажав на ДОП позицию парашутироватся на место. А вот тут и сама загвостка. Отнимается очки 10-15 (дискусия). Теперь плюсы - если создается ДОП получяеш +10-15 лично (хотя как сделать чтобы не халтурили) или в общии инжинерный кател. Можно ли это делать автоматом решать програмерам. Если это только вручную, то тот кто записывает на доску данные тоже получает доп. очки... (Это просто обсуждение). Может это совсем идея фикс.

3 Rokse LT  
Дублирую идею : Парни, тут возникло обсуждение насчет карты и обозночения на ней. Смысл в том. что бы оставались наши пометки.Особенно там где мы делаем ДОП БАЗЫ из отвоёванной техники. Это просто идея фикс а если пошире то мысли есть. Я Инжинеру докладывал. Что думаете а ?

4 НЕ_Мастер  
Я это предлагал ещё хрен знает когда...
Бестолку. Движок Армы это нен поддерживает. Максиму что мы можем - это некий "Боевой Листок" в каком-нибудь месте. Например в здании ГРУ возле карты или ещё где, где работает простой редактор (текстовой).
Автоматом это не получится - это раз.
И второе - если это осуществить, то кто то перед выходом должен заносить туда информацию... Подозреваю что это опять буду я wacko 
В принципе если у меня с ефрейтора будут боты, которые будут прикрывать меня на базе со спины пока я занимаюсь эпистолярным жанром, я готов попробовать! )))  tongue

0
6 Engineer  
"Боевой листок" - это ведь записывание различной информации в текстовом виде. Типа "СППМ на пупыре у Коразола, 1 Абрамс + 2 грузовика", "У бензоколонки Ортего Страйк-пушка+Абрамс". Это было бы полезным, думаю. Пришёл на остров, почитал сообщения, узнал.

Но есть и ещё варианты.
Для начала соглашусь с НЕ_МАСТЕРОМ в плане маркеров. Действительно, встроенная система маркеров действует только на момент  присутствия в игре того ктомаркер ставит и ктоэто видит. Собственно, это система осуществляет заурядный посыл маркера всем имеющимся с ети игрокам. И если игрок зашёл после посылки маркера, он его не увидит. Точно также автор маркера после перезахода в игру свои маркеры тоже не увилит, в то время как его товарищи, наблюдавшие маркеры в момент создания, продолжают их видеть.

Итак, какие варианты обменов маркерами у нас есть?
1. Это накопление введённых вручную маркеров на сервере и досыл их ко вновь пришедшим игрокам. Пробемой будет то, что маркеры, созданные скриптами, не могут быть стёрты вручную. В отличие от привычных ручных маркеров. Пометил я пустой грузовик, и этот маркер остаётся навечно? Это не правильно, т.к. грузовик даыно сгорел, был отправлен на базу и т.д. И маркер надо стереть. а мы не момжем.ЧТОбы стирать этот маркер, придётся громоздить систему сигнализации серверу о том, что некоторый маркер следует удалить. Например, выбрав команду "Удалить маркер" и кликкнув на него в карте.
Основной трудностью, которую предполагаю, будет поиск процедуры удаления вручную введённых маркеров для замены их внутренними. Внутренние маркеры - маркеры созданные кодом миссии. Примерами являются маркеры городов, зоны базы, точки дополнительных заданий. Эти маркеры как раз легко искать, удалять. хранить. Маркеры. введённые вручную, никто никогда не искал и тем более не удалял скриптами. Это ещё неисследолванная область и нефакт, чтотам удастся всё это сделать. 
Так как ручные и внутренние маркеры различны посвоей природе, придётся избавляться от ручных прямо в момент их появления и заменять внутренним маркером.
Всё это требует достаточно длительного кодирования, предполагаю.

2. Разработка методикипо фрмированию маркеров скриптами. Например, при выборе некой команды, и затрате некоторых очков, ты видишь на карте маркеры, помечающие пустые вертолёты, танки, прочую технику. Пока только на своём компьютере. Затем ты запоминаешь эти маркеры на общей карте. И любой человек может их забрать насвою карту. В свою очередь, ты тоже можешь с общей карты забирать маркеры и смотреть их на своём клиенте. вместе со ссвоми.
Проблемой может быть дублирование маркеров. Ведь ты получил маркер вертолёта, другой получилего-же. И вы оба передали его в общее пользование. Маркеры то наложатся! С этми можно боротьсятем, что удалять накладывающиеся геометрически маркеры. Например, можно ввести требование о том, чтобы маркер всегда соответствовал некому механизму, расположенному не далее полуметра от центра маркера. Если таковогоустройства нет, то маркер на сервере устраняется.

... продолжение следует!

1 Rokse LT  
Погудим то наконец

0
2 Engineer  
Вот такие пожелания приятно делать! Они просты, имеют приятное послевкусие, и не мешают ничему другому.

Спасибо Роксе за данную идею, скорее, глубокомысленное замечание, высказанное в процессе шуточной перепалки.

P.S. Значит, за Роксе бутылка. Она материализуется ТОЛЬКО в случае случайно встречи, простите за невольный каламбур. Тогда не отвертится. А пока работаем по целям в обычном режиме.

Хорошо бы ещё, с помощью найдённого ключа -maxmem, устранить и основные причины зависания. Насколько помню, 95% последних зависаний  связаны именно с ошибкой по отсутствию запрашиваемой памяти.
Только программисты поймут, насколько это критическая ошибка, и поэтому средства борьбы с нею встроены в любую приличную систему. Надеюсь, Арма  тоже покажет себя с хорошей строны, в этом плане!

Имя *:
Email *:
Код *: