Error flow is broken director cannot populate world

Рекомендованные сообщения
  • Назад
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • Вперёд
  • Страница 4 из 9  

Рекомендованные сообщения

3LoU_BaNaN

Enthusiast

    • Поделиться
Ссылка на комментарий
Поделиться на других сайтах

  • Ответы
    200
  • Создано
    9 г
  • Последний ответ
    7 г

Лучшие авторы в этой теме

  • Electr0

    82

  • 3LoU_BaNaN

    20

  • Empty

    17

  • EibachSprings

    12

°• REST ☣

Explorer

    • Поделиться
  • Обнаружено 05,01,2014  с 1:00 по москве
  • Любая
  • Покупаю Дефибриллятор оживить труп НО! Оживляется живой игрок который благополучно играет! и жалуется на потерю оружия.Да игрок оживляется с таким же скином труп Елиса значит ожив Елис
  • Зайти на МЕГУ и оживить кого нибудь и пронаблюдать….
  • я не кодер я не знаю :dont_know:  
Ссылка на комментарий
Поделиться на других сайтах

°• REST ☣

Explorer

    • Поделиться
  • Обнаружено 08,01,2014  с 2:00 по москве
  • c10m5_houseboat
  • При заходе на карту консоль выдает сообщение: ERROR: FLOW IS BROKEN — DIRECTOR CANNOT POPULATE WORLD
  • Также при захвате/отпуске курилой выдает сообщение: EventView °• REST ?, first 0, name revive_begin, g_bHatView 0 / EventView °• REST ?, first 1, name revive_success, g_bHatView 0
  • Зайти на МЕГУ
  • я не кодер я не знаю :dont_know:

[FIXED] —Сообщения содержашие EventView для отладки нужны, я отыскиваю момент зависания шапки перед лицом от первого вида, полное содержимое сообщения от EventView может дать ответы на эти вопросы. Electr0

Ссылка на комментарий
Поделиться на других сайтах

°• REST ☣

Explorer

    • Поделиться
  • Обнаружено 08,01,2014  с 4:00 по москве
  • Любая
  • Отсутствие текстур с ошибкой ERROR скрины —>Ссылка 1  Ссылка 2 Отсутствующие обведены красным
  • Даже и не знаю….зайти и построить!
  • :dont_know:

[FIXED] —установи и баг пропадет   :good bye:  http://www.l4dmaps.com/   3LoU_BaNaN +1 

Ссылка на комментарий
Поделиться на других сайтах

°• REST ☣

Explorer

    • Поделиться
Ссылка на комментарий
Поделиться на других сайтах

  • 5 недель спустя…

°• REST ☣

Explorer

°• REST ☣

Explorer

    • Поделиться
  • Обнаружено 07,02,2014  с 13:00 по москве
  • Любая
  • При покупке шапки деньги снимаются а текстуры нет!  Люди жалуются….
  • Поймать адеквата и по тестить
  • Без комментариев
  • AlcDuck

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

Empty

Rising Star

    • Поделиться

1. Когда появился: в 4 утра по МСК;

2. Карта: Facility 13;

3. Условия при которых появляется баг: просто отключилось меню стройки(fortspawn menu);

4. Как повторить: не знаю. По словам игрока «Батусай» такое уже было пару дней назад в районе 4-5 утра по МСК;

5. Ваши рекомендации по устранению: проверка плагина на предмет ошибок.

FIXED

где-то утечки памяти в плагинах стройки и фиксе афк нашлись, что ж поздравляю)

Ссылка на комментарий
Поделиться на других сайтах

EibachSprings

Collaborator

    • Поделиться

1) Заметил 4 дня назад.

2) c11m4_terminal

3) После положительного голосования за бан чата/вокалайза игрок всё равно может ими пользоваться.

4) Проголосовать. 

5) Проверить плагин на ошибки.

FIXED

исправлено, ошибка была только в бане на чат, остальные работают нормально

  • AlcDuck

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

RenariksLV

Newbie

    • Поделиться
  • Когда появился — 3dnja nazat
  • Карта — OutPost2
  • Условия при которых появляется баг — Kupil Laser_Sight pak (250$), polozhil v stroike, sohranil! Sleduishi round zagruzil stroiku, no laser_sight nebilo, dumal sto nesahranel, kupil esco odin raz! Sohranil 2raz, fsjo udalil, i zagruzil snova, no laser_sight pak sirovno nebilo! 
  • Как повторить — —-
  • Ваши рекомендации по устранению — Ustonovite etot objekt, na sahranenia!
    Обратите внимание!

    Данную заявку нужно отправлять в «Восстановление данных», вы по своей/не своей вине лишились покупного предмета. Ссылка на раздел, куда вы должны подать данную заявку, ниже.

    Восстановление данных

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя…

EibachSprings

Collaborator

    • Поделиться

1) Сегодня

2) Dust 2

3) Нету голосовалки за разблок кнопки, сразу стартет.

4) загрузить мапу, нажать кнопку, профит

5) К.О. говорит что надо сделать блочку

FIXED

про даст, вижу в логах ошибки, профиль изменений куда-то пропал, вернул на место.

Ссылка на комментарий
Поделиться на других сайтах

Empty

Rising Star

    • Поделиться
Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя…

Strrabbit

Enthusiast

    • Поделиться

1. любая (наверное)

2. вчера, т.е. 9 мая 

3. разрывные/зажигательные патроны можно взять 3 раза, после исчезают.

(внезапно выяснилось, что так и должно быть.)

Ссылка на комментарий
Поделиться на других сайтах

Empty

Rising Star

    • Поделиться

1. любая (наверное)

2. вчера, т.е. 9 мая 

3. разрывные/зажигательные патроны можно взять 3 раза, после исчезают.

(внезапно выяснилось, что так и должно быть.)

Мне кажется что просто конфликт двух плагинов. Игроков то может быть на серве аж 12 человек. 12 делим на 4 перса и получаем что разрывные/зажигательные патроны можно взять 3 раза. Поправьте меня если я не прав.

Ссылка на комментарий
Поделиться на других сайтах

Empty

Rising Star

    • Поделиться

Заметил прикольный глюк. У AWP звук становится как у военной снайперской винтовки, если зарядить её огненными патронами.

1. Когда появился: 14.05.2014 18:50 по МСК

2. Карта: Outpost

3. Условия при которых появляется баг: Имея в руках AWP взял огненные патроны

4. Как повторить: Имея в руках AWP взять огненные патроны

5. Ваши рекомендации по устранению: :wall::sos::hunter::prays::zakompon:

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя…

3LoU_BaNaN

Enthusiast

    • Поделиться

Заметил прикольный глюк. У AWP звук становится как у военной снайперской винтовки, если зарядить её огненными патронами.

1. Когда появился: 14.05.2014 18:50 по МСК

2. Карта: Outpost

3. Условия при которых появляется баг: Имея в руках AWP взял огненные патроны

4. Как повторить: Имея в руках AWP взять огненные патроны

5. Ваши рекомендации по устранению: :wall::sos::hunter::prays::zakompon:

Древний баг самой игры, который я заметил еще 2 года назад. Это со всеми оружками из cs (тоже самое звуки выстрела у SIG552 с мод. патронами как у М16)

  • Electr0

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя…

Strrabbit

Enthusiast

    • Поделиться

Быть может, так и должно быть, а может быть, что только у меня все так пнеудачнико (но на всякий случай я перепроверила, всегда ли так, а то вдруг). Вероятно, пройдет само собой, но:

1) сегодня 

2) крыша, мотель

3) случается при перезагрузке карты/ удалении всех объектов

4) загрузить слот- удалить все- попытаться загрузить. либо же просто попытаться удалить какой-нибудь одиночный объект командой !del

FIXED by electr0

В награду действие VIP++ продлено.

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя…

Paradise

Explorer

    • Поделиться
  • пару минут назад

    c10m5_houseboat

    рандомно

    нету

    з.ы. так же есть проблемы с новыми картами, после выбора карт через /vc  «Дополнение будет загружено игрокам через 1 сек.»  карта грузится нормально.

    но после того как выбрал карту выходит надпись  «Смена на выбранное DLC через 1 сек» но карта не меняется. Это происходит на 

    Killhouse

    Resident Evil Nevada Desert

    Vacant 2

    End of the Road

Ссылка на комментарий
Поделиться на других сайтах

SEVER S.Z

Community Regular

    • Поделиться
  • Проблема с кнопкой паники.
  • Когда появился-Примерно дня 2 назад заметил это
  • Карта-Бензоколонка
  • Условия при которых появляется-Голосование проходит, и ничего!
  • Как повторить-………
  • Ваши рекомендации по устранению-Без коментариев.
  • SEVER S.Z

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя…

Strrabbit

Enthusiast

    • Поделиться

1) карта «Вагон»

2) заметила сегодня

3) не запускается паника (даже невозможно открыть вагон с танком) 

4) повторить путем запуска паники на той карте

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

Ссылка на комментарий
Поделиться на других сайтах

Empty

Rising Star

    • Поделиться

1. Когда появился: 26.07.2014 18:30 по МСК

2. Карта: Побег из города(возможно и на других так же)

3. Условия при которых появляется баг: нет связи с базой данных сохранений

4. Как повторить: Поймать адеквата и попросить его загрузить сохранённую постройку

5. Ваши рекомендации по устранению: Проверка БД на предмет ошибок :wall::sos::hunter::prays::zakompon:

Ссылка на комментарий
Поделиться на других сайтах

°• REST ☣

Explorer

    • Поделиться
  • Обнаружено 02,08,2014  19.00 по москве
  • Любая
  • Не подгружается  список администраторов
  • Без комментариев
  • Проверка  на предмет ошибок    :zakompon:
Ссылка на комментарий
Поделиться на других сайтах

AlcDuck

Experienced

    • Поделиться

1. Когда появился: Вроде был всегда)
2. Карта: Любая
3. Условия при которых появляется баг: Закрепляю первую ячейку сохранений, потом пару раз сохраняю, загружаю(другие ячейки) и хоп защита спадает сама с первой ячейки)
4. Как повторить: описал выше)
5. Ваши рекомендации по устранению: Не знай я в этом не силен) 

P.S: Да да я стырил у Кекса форму :D

 
 
 
 
 °• REST ☣ ну CrazyKEKC у нас в почёте   :sarcastic:

CrazyKEKC :blink:

  • Empty

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

AlcDuck

Experienced

    • Поделиться

1. Когда появился: 06.08.2014 22:16(МСК)

2. Карта: C5m1_waterfront

3. Условия при которых появляется баг: Было голосование за разблокирование кнопки, было 2 на 2, в итоге она разблокироваться не должна была, но она разблокировалась и зомби побежали)
4. Как повторить: Можно ручками  :D
5. Ваши рекомендации по устранению: Проверить скрипт на ошибки) 

P.S: Да да я снова стырил у Кекса форму   :D


sla686: Как не стыдно?! Вроде бы взрослый человек… 

  • sla686

  • Нравится


    1

Ссылка на комментарий
Поделиться на других сайтах

AlcDuck

Experienced

    • Поделиться

1. Когда появился: 10.08.2014 17:51(МСК)

2. Карта: slope

3. Условия при которых появляется баг: дверь была на пароле, после загрузки убеги дверь не требует пароля, когда снимаю с нее пароль, она все равно не открывается… 
4. Как повторить: ручками) а так же у меня на Slope входная дверь всегда так багается) 
5. Ваши рекомендации по устранению: Проверить скрипт на ошибки) 
Свидетель Sever

P.S: Кекс давай пятюню :D

Ссылка на комментарий
Поделиться на других сайтах

  • 7 г

    Electr0 закрепил теме
  • 7 г

    Electr0 закрыл, сделал обычной и открепил теме
  • Назад
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • Вперёд
  • Страница 4 из 9  


Гость

Эта тема закрыта для дальнейших сообщений.

English

Left 4 Dead series Getting the nav flow right can be one of the hardest parts in creating a good, working Left 4 Dead series map. If the flow from the start to the end of the map is not valid, survivors may not be able to reach the end safe room or finale, rescue closets might not work and the wandering common infected will not spawn.

Please feel free to add to this if you discover any other useful methods/pieces of information.

Contents

  • 1 Introduction
  • 2 Console Commands
  • 3 Recomputing the Flow
  • 4 Correctly Setting up Checkpoints
    • 4.1 Survivor Spawn Point
    • 4.2 End Safe Room
    • 4.3 Beginning Safe Room
    • 4.4 Finale
    • 4.5 Rescue Closets
    • 4.6 Ladders
    • 4.7 Miscellaneous
  • 5 Elevators
    • 5.1 Notes About Elevators

Introduction

Firstly, a standard Left 4 Dead campaign consists of at least two levels. The first level contains the original player spawn area (referred to in the navigation mesh as PLAYER_START) and proceeds to a safe room (CHECKPOINT). The next map goes from safe room to safe room, or from safe room to finale (FINALE) if it is the final map. You can have any number of maps you like in your campaign, but for a five-map campaign the general flow is as follows:

  • PLAYER START to CHECKPOINT — e.g., l4d_airport01_greenhouse.bsp — «Player Start» map.
  • CHECKPOINT to CHECKPOINT — e.g., l4d_airport02_offices.bsp — «Checkpoint» map.
  • CHECKPOINT to CHECKPOINT — e.g., l4d_airport03_garage.bsp — «Checkpoint» map.
  • CHECKPOINT to CHECKPOINT — e.g., l4d_airport04_terminal.bsp — «Checkpoint» map.
  • CHECKPOINT to FINALE — e.g., l4d_airport05_runway.bsp — «Finale» map.

Note that if you only have a single map (that doesn’t lead onto others), the only technically correct format for this is PLAYER_START to FINALE. It is possible to create a single standalone map that does not utilize a finale, and this just involves creating an ending safe room as usual but putting a dummy value in the trigger_changelevel to tell it what map to switch to. As long as you include the next map value the navigation flow will be valid but when your players finish the level the session will not finish correctly, since there will be an error in the console saying the next map cannot be found.

Console Commands

To start editing the navigation mesh, type exec nav_mode into the console. This sets up Valve’s configuration for nav editing and is very useful in accessing all the commands you will need to use. To quit the nav editing mode, press PgDn.

Note.png Note: This doesn’t always seem to remove all editing functions, so you may need to type exec config_default afterwards to reset your controls to the default configuration.

The best way to get to know the commands is to open up the nav_mode.cfg file yourself and make a list of the keys; however, some very useful editing commands are below:

z_spawn (default 1)
This spawns a normal zombie at your crosshair. If you add a parameter after the command, the relevant zombie will be spawned; for example, z_spawn tank will spawn a tank.
noclip (default n)
Allows you to fly around the map and through objects. Very useful in positioning yourself for editing high-up areas or for getting to a specific area of your map quickly.
nav_save (default Tab )
Saves your navigation mesh. Do this often, as there’s no function for undoing changes if you mess things up!
director_start/stop (default F3)
Toggles the director’s enabled/disabled state. If enabled (and your flow is valid), wandering zombies will spawn, tanks and witches will spawn, etc.
respawn_bot (default DEL)
This respawns a random bot. Note that this is a custom alias created in the nav_mode.cfg file and so will not function unless you have exec’d the file. The alias respawn_bots respawns all four bots but is not bound to a key by default.
warp_all_survivors_here (default )
Warps all survivors (including you) to the spot under your crosshair.
nb_delete_all (default 2)
Deletes all NPCs (zombies, specials, survivors) from the world.
nb_move_to_cursor (default 3)
Tells all NPCs to move towards the point under your crosshair. The target point is marked temporarily with a small green cross.
nav_simplify_selected (default F7)
Attempts to merge any nav areas you have selected to simplify them.

Warning.png Warning: Don’t try this with the whole map selected, as the game will crash.

nav_gui (default F6)
Opens up the nav-editing GUI with some advanced options.

Note.png Note: The nav_gui command will need to be typed again to close the window and re-enable movement.

nav_trouble_report (default PgUp)
Runs a check for the common problems present in navigation meshes. Any problem areas will be highlighted and the number of errors displayed in the console. Try typing the command in the console and add a space to see the different parameters that can be given.

There are also some other very useful commands that are not included in the config:

z_show_flow_delta 1/2
This enables flow arrows on the nav sector that you’re looking at (if set to 1) or all nav sectors in the area (if set to 2).
z_show_flow_distance 1
This enables the flow distance to be displayed: xxxx/xxxx. These numbers relate to the units increasing towards map goal/units increasing from start. If -9999/-9999, the flow to this nav area is broken.

Recomputing the Flow

The most common error you’ll encounter while nav-editing is the flow error. For a map to work properly, there must be distinguishable start and end points and a completely-connected route through the map. The director uses the flow to work out how far the survivors are through the map, which areas are in front of them and which are behind.

If when running a map, you get a large «Map is unplayable!» error at the start, it’s likely that your flow is broken. To fix this, one magic command can help tremendously in debugging: nav_recompute_flow. The command attempts to hook up your starting area (PLAYER_START or CHECKPOINT) with the ending area (CHECKPOINT or FINALE); if it can’t, one of these possible errors will be displayed in the console:

GetGoalArea: Cannot find SPAWN_RESCUE_CLOSET area in FINALE, thus cannot guarantee reachability of goal area.
If your current map is a finale map, you will need to create at least one rescue closet available to the survivors before they reach the finale area. This ensures that there is an available place for the survivors to respawn in the map if they die, since there’s no ending safe room present.
To do: Do we always need a rescue closet? I didn’t have one in my recent finale, and it didn’t complain.
If your map is not a finale map, this means there is a problem with your ending safe room. The game cannot find a second checkpoint area in the map and so assumes that it has a finale event. Of course, it then cannot find any nav areas marked FINALE and so reports the finale as broken. See the third item on the checklist below for a list of the entities required in an ending safe room.
ComputeFlowDistances: ERROR - [Error here]
Depending on what error is being reported, this may be because of a number of problems:

  • Cannot determine start/end area: This means you have not set up your beginning/ending checkpoint or finale correctly. See the checklist below for more information.
  • Cannot reach start area from end area: This is the easiest of the nav errors and simply means that you have a break in your nav connections somewhere along the line. You can use nav_trouble_report orphan to check for disconnected nav areas and z_show_flow_distance/delta to check the flow ID for each area. Look out for dark blue (one-way) connections which could be pointing backwards, i.e., the survivors will be able to walk from the further area to the nearer area but not the other way around. Left 4 Dead also commonly mucks up the meshes on stairs, so these would be your first culprits to check.

Note.png Note: If you’re having a problem where this error won’t go away, there may be a checkpoint where you don’t want one. An easy way to find the rogue area is to type z_show_flow_distance 1 and look for any numbers that say either xxxx/-9999 or -9999/xxxx. Follow these numbers in the direction that they decrease and you should find your unwanted checkpoint.

GetGoalArea: Cannot find end area - no checkpoint or finale located.
This means that none of your nav areas have been marked with either CHECKPOINT or FINALE. If you want a checkpoint, you’ve probably done something wrong concerning your safe rooms—see the third item on the checklist below. If you want a finale, you need to apply the mark FINALE attribute liberally to the navigation sectors in your finale area.

Correctly Setting up Checkpoints

For the flow to be computed correctly, it is highly recommended to add what will be needed eventually:

Survivor Spawn Point

This is the point at which the survivors originally spawn in the very first map of a campaign. You will need:

  • Four info_survivor_position entities, placed at least one unit above the ground. Each one will need to have a unique «Order» value and a unique survivor name out of Zoey, Bill, Francis and Louis.
  • A weapon_ammo_spawn. This is very important as, bizarrely, it is also used to help determine the flow through a map. If a weapon_ammo_spawn at minimum is not present in either a beginning or ending checkpoint (an area with nav squares marked as CHECKPOINT), the game may not recognize it as a valid checkpoint area.To do: confirm

Note.png Note: If your ammo spawn is on a table, it may be required to create a nav area on top of the table and connect it up, just to make sure that the ammo spawn sits over CHECKPOINT nav.

  • An info_player_start, placed at least 1 unit above the ground. It is recommended to mark the nav sector directly underneath this with the PLAYER_START attribute. To do: confirm. I thought it was used before a nav was generated. After a nav is created.
  • Four weapon_first_aid_kit_spawns and low-powered weapon spawns (weapon_smg_spawn, weapon_pumpshotgun_spawn) are also recommended. Note that any item spawns that are in checkpoints do not need the «Must Exist» flag ticked; they will always be forced to spawn.

The navigation mesh must have the following:

  • One single square of nav marked as PLAYER_START.
  • A fair radius around this marked as CHECKPOINT. It doesn’t really matter too much how big this area actually is, but bear in mind that zombies will not be allowed to spawn on it (same with infected players in Versus mode). Don’t make this too small, either; it needs to have plenty of room to cover the survivor’s spawn points and any weapon spawns.
  • It is recommended to cover a little of the surrounding non-checkpoint nav with the EMPTY attribute, as this will prevent wandering zombies from spawning too near the survivors at the start of the game while not contributing to the checkpoint area. The EMPTY attribute is also recommended for a little way outside of beginning safe rooms.

End Safe Room

This is any safe room at the end of a map which leads onto the next map. You will need:

  • A prop_door_rotating_checkpoint. This is essential to the mechanics of a safe room and must not be a plain prop_door_rotating. It is also highly recommended to name this door «checkpoint_entrance» (to «enter» the safe room) and to set the keyvalue to start open (in whichever direction is most convenient).

Note.png Note: The checkpoint door names are the opposite of the way you’d expect: the starting door exits the previous safe room, the ending door enters the next one.

  • An info_changelevel or trigger_changelevel. The trigger volume should be at least flush with the floor of your safe room and should touch the majority of it (the game works out which nav sectors should be marked as CHECKPOINTby the presence of this volume). The New Map Name value absolutely must have something in it, although it does not specifically matter whether the specified map exists or not (if it does not, the safe room will work but just won’t load the next map). The name of the map should not include the .bsp extension. The Landmark Name value should be the name of…
  • An info_landmark. This should be somewhere in your safe room and be named uniquely. It should be in exactly the same relative position in the end safe room of the first map and the beginning safe room of the next map, as entities such as players and weapons will be teleported to their new positions relative to this landmark. ALWAYS align these things to the grid, it goes without saying.
  • A trigger_transition. This should fill the entirety of you safe room but ideally no more than this, since any entities inside its volume when the map changes will be teleported to their new positions in the next map relative to an info_landmark. The trigger_transition should be named the same as the info_landmark in your safe room, so that they work together.
  • A weapon_ammo_spawn. Once again, this is essential for computing the flow.
  • First aid kits and weapons of any kind are recommended.

The navigation mesh needs to be set up as follows:

  • The entirety of the nav in the safe room, up to and including the door mesh marked as DOOR, needs to be marked with the CHECKPOINT attribute. Any areas that you miss marking will allow zombies to spawn upon them; not too useful if you stagger into an end safe room feeling fairly pleased with yourself, then get pounced on by a Hunter who won’t allow a map change until he’s dead or out of the safe room.

Note.png Note: nav_trouble_report checkpoint may assist in highlighting any nav areas you’ve missed marking.

Beginning Safe Room

This is the safe room at the beginning of the second map of a campaign onwards. You will need:

  • An info_player_start, placed slightly above the ground. This must be over the section of nav marked as CHECKPOINT (PLAYER_START is not required this time).
  • A weapon_ammo_spawn over the CHECKPOINT nav. Weapon and first aid kit spawns should be in pretty much the same places as they were in the previous safe room to maintain continuity. Note that if the map is loaded after a previous one is completed, on load the default weapons/ammo/first aid in the safe room will be deleted and the items from the previous safe rooms spawned in their relevant places. This ensures that there aren’t duplicate spawns for items when the map loads.
  • An info_landmark placed in the same relative position as in the previous safe room.
  • A prop_door_rotating_checkpoint, recommended to be named «checkpoint_exit» (as it «exits» the safe room).

The navigation mesh should be as follows:

  • The entirety of the mesh, up to and including the square marked with the DOOR attribute, should be marked as CHECKPOINT.
  • The EMPTY attribute should be used a little way after the exit door to ensure that zombies don’t start off spawning too close.

Finale

A finale is the event at the end of the final map in a campaign. It should include:

  • A trigger_finale somewhere within the FINALE nav. This is needed to compute the flow, especially for a standard finale. Otherwise the furthest flow point will be the middle of the finale area. The trigger_finale doesn’t necessarily have to interact with the player directly; it can be activated via inputs an entity such as a func_button.
  • Left 4 Dead 2 Flow can also be manipulated with an info_target with a special target name nav_flow_target. This especially useful for Gauntlet style finales but will result in the survivors gaining 100% score as soon as they reach it. Consider how it will effect Versus mode scoring when using this feature.
  • If a rescue vehicle is required, take advantage of the outputs that will be fired at different stages by the trigger_finale. It will help synchronize major events during the finale. This is generally beyond the scope of this article. Please see Finale Events Part 1 for more details.

The navigation mesh should be set up as follows:

  • The FINALE attribute should be applied liberally to your finale area. Make sure it covers everything, even places where players can’t get to but zombies can. Zombies are spawned upon the FINALE section of the mesh; breaks in it can cause problems. Use nav_trouble_report finale to highlight any bits you may have missed. As a note, when the survivors first «see»/walk over the finale mesh, one of them will call out «We’re almost outta here!» or similar.
  • If a rescue vehicle is used (theoretically the survivors could just run into a safe room that’s unlocked at the end of the finale by the trigger_finale, although this wouldn’t be very exciting), a nav_generate_incremental should be used to generate the nav at the point where the survivors stand inside the vehicle. These sectors should be marked with the RESCUE_VEHICLE attribute. Without this marking, the flow may not be computed correctly.

Rescue Closets

These are small rooms that dead survivors can be «rescued» from to allow them back into the game. As I have found out recently, the placing of rescue closets should follow some logic; there’s no point putting one right next to the beginning/ending safe room (oops on both counts) as the survivors will respawn in these anyway. Rescue closets aren’t required but do make gameplay a little easier and also may aid in stopping nav_recompute_flow from complaining about «No rescue closets in finale».

The setup should be thus:

  • The room should be completely sealed off apart from one prop_door_rotating. This does not need to have any special properties apart from starting closed.
  • The closet should include three info_survivor_rescue entities, not four, as you won’t be rescuing yourself. They should be placed slightly off the floor.

The navigation mesh should be marked appropriately by the nav_analyze phase.

Ladders

Ladders can be a non-obvious source causing a break in your flow. Although a ladder connected with nav_build_ladder may still work for path finding and climbing for NPCs and players, if the ladder is not tied to a func_ladder, the game cannot compute flow through them.

  • Make sure all ladders are tied to a func_ladder. Use nav_trouble_report to find ladders which are not. It will report the assigned numerical name to them. Use nav_edit 1 and z_debug 1 and point at ladders in-game to see their assigned numbers.

Miscellaneous

  • If nav_trouble_report is highlighting all your nav sectors as «Missing Checkpoint», this means that either your beginning or end safe rooms aren’t set up properly. Check through the list above.
  • If all else fails with nav editing, a full nav_generate can sort out any non-obvious problems.

Elevators

A basic elevator can start on the bottom or top of the floors available. It is recommended that flow/escape route is already established from starting point to the goal area before setting elevators. This can be done by adding a temporary path to test with, such as adding a temporary ladder for survivors.

If adding an elevator and removing the temporary ladder breaks the flow that was known to work before, consider the following:

  • Make sure there are two info_elevator_floor entities for your elevator that are centered, and that there is a nav mesh for each floor. Theinfo_elevator_floor entitieswill not work properly unless they are level with the floor. When your elevator is properly connected you will see 4 green tracelines from each corner of the nav mesh with nav_edit 1 and z_debug 1. If you see these green tracelines and Survivor Bots follow you into the elevator, but your flow is still broken, it means you have a flow break somewhere else in your map.
  • Simplify the nav area that is covering the elevator floor. There should be a single nav area covering the entire floor.
  • ESCAPE_ROUTE should reach the elevator floor nav area. If there is a small nav area touching the elevator floor, the ESCAPE_ROUTE will stop there on that particular floor and can cause problems with bots on other floors. Delete the small nav areas touching the elevator and reestablish all appropriate connections.
  • Make sure the elevator nav areas on each floor are the same size and parallel to each other. In nav mode and with nav_snap_to_grid turned on: create the nav area of the same size with the elevator floor, raise the unconnected copy above the next floor, move the elevator to the next floor, and finally place the nav area on ground. Delete an extraneous nav areas and establish appropriate connections.To do: confirm claims made by this bullet point. needs pictures!
  • info_changelevel should point to a non-empty map name. An actual map name is recommended.
  • info_changelevelshould point to a non-empty landmark. An actual landmark within the map is recommended.

This results in correct nav flow to the goal area and proper bot behavior on an arbitrary number of floors.

Tip.png Tip: Valve provides an example map, deadline02, with a basic elevator. Try breaking and restoring the flow on the map while in nav mode.

Notes About Elevators

The nav mesh must flow seamlessly throughout a level, but what happens when you add elevators? Nav sectors seem to not connect vertically down elevator shafts, at least visually, but they will connect properly, generate the desired flow/ESCAPE_ROUTE, when the criteria are met. It may start working as the campaign reaches completion, but that is most likely an unacceptable answer!

Whereas conventional elevators are made using entities like func_door or func_movelinear (for two-stop elevators) and func_tracktrain (for elevators with 3+ stops), Left 4 Dead uses a bespoke entity for this purpose called func_elevator. This article does not cover the construction of elevators; please see the Elevators article for details.

Getting an elevator to work with bots and maintaining a proper flow can become frustrating. This has resulted in a some creative workarounds:

  • Create a large elevator in order to coax the bots into following you in to at least the front
  • Create a «backdoor» where the flow is going through a ladder hidden in the elevator shaft
  • Start at the top position only
  • Add the BATTLESTATION attribute to the nav area covering the elevator floors
  • nav_connect, nav_splice, nav_split nav area floors together, near or on the elevator
  • Add a giant trigger_push or teleport to force survivor bots into the elevator
  • Creating nav areas between floors if elevator moves on a slope

These workarounds may or may not work to various degrees and may depend on the situation. In official maps, the situation is always simple and consistent: two floors, in sealed container, moving either up or down the elevator vertically, and towards a goal. None of the workarounds listed were needed in that situation. In more complicated situations, however, these workarounds may offer a solution.

I have a favorite way of doing network request on Android (using Retrofit). It looks like this:

// NetworkApi.kt

interface NetworkApi {
  @GET("users")
  suspend fun getUsers(): List<User>
}

And in my ViewModel:

// MyViewModel.kt

class MyViewModel(private val networkApi: NetworkApi): ViewModel() {
  val usersLiveData = flow {
    emit(networkApi.getUsers())
  }.asLiveData()
}

Finally, in my Activity/Fragment:

//MyActivity.kt

class MyActivity: AppCompatActivity() {
  private viewModel: MyViewModel by viewModels()

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    viewModel.usersLiveData.observe(this) {
      // Update the UI here
    }
  }
}

The reason I like this way is because it natively works with Kotlin flow, which is very easy to use, and has a lot of useful operations (flatMap, etc).

However, I am not sure how to elegantly handle network errors using this method. One approach that I can think of is to use Response<T> as the return type of the network API, like this:

// NetworkApi.kt

interface NetworkApi {
  @GET("users")
  suspend fun getUsers(): Response<List<User>>
}

Then in my view model, I can have an if-else to check the isSuccessful of the response, and get the real result using the .body() API if it is successful. But it will be problematic when I do some transformation in my view model. E.g.

// MyViewModel.kt
class MyViewModel(private val networkApi: NetworkApi): ViewModel() {
  val usersLiveData = flow {
    val response = networkApi.getUsers()
    if (response.isSuccessful) {
      emit(response.body()) // response.body() will be List<User>
    } else {
       // What should I do here?
    }
  }.map { // it: List<User>
    // transform Users to some other class
    it?.map { oneUser -> OtherClass(oneUser.userName) }
  }.asLiveData()

Note the comment «What should I do here?». I don’t know what to do in that case. I could wrap the responseBody (in this case, a list of Users) with some «status» (or simply just pass through the response itself). But that means that I pretty much have to use an if-else to check the status at every step through the flow transformation chain, all the way up to the UI. If the chain is really long (e.g. I have 10 map or flatMapConcat on the chain), it is really annoying to do it in every step.

What is the best way to handle network errors in this case, please?

На чтение 4 мин. Просмотров 2.8k. Опубликовано 03.09.2019

Если вы используете ноутбук HP или настольный компьютер HP all-in-one, вы можете столкнуться с тем, что Flow теперь завершит работу с ошибкой после перезагрузки системы или после установки обновлений. Известно, что эта ошибка повлияла на устройства HP под управлением Windows.

Полная ошибка гласит: Произошла ошибка; Теперь поток будет остановлен . Ошибка, кажется, с драйвером аудио потока Conexant. Audio Drive поставляется с ноутбуками HP или поставляется с обновлениями. Если вы столкнулись с подобной ошибкой, вот, как устранить ее на вашем ноутбуке HP.

Содержание

  1. Как исправить Произошла ошибка. Теперь поток будет остановлен на компьютерах HP.
  2. 1. Обновление аудио драйвера
  3. 2. Откат аудио драйвера
  4. 3. Удалите драйвер и устройство
  5. 4. Обновите Windows
  6. 5. Выполните восстановление системы, используя точку восстановления

Как исправить Произошла ошибка. Теперь поток будет остановлен на компьютерах HP.

  1. Обновить аудиодрайвер
  2. Откат аудио драйвера
  3. Удалите драйвер и устройство
  4. Обновить Windows
  5. Выполните восстановление системы с помощью точки восстановления

1. Обновление аудио драйвера

Эта проблема может возникнуть, если диск Conexant Flow Audio поврежден. Вы можете решить эту проблему, обновив драйвер из диспетчера устройств. Вот как это сделать.

  1. Нажмите Windows Key + R, , чтобы открыть диалоговое окно «Выполнить».
  2. Введите devmgmt.msc и нажмите ОК , чтобы открыть диспетчер устройств. Кроме того, вы также можете открыть диспетчер устройств, набрав его в строке поиска.
  3. В диспетчере устройств разверните раздел «Контроллеры звука, видео и игр ».
  4. Нажмите правой кнопкой мыши на аудио драйвер Conexant High Definition и выберите « Обновить драйвер ».
  5. Выберите « Автоматический поиск обновленного программного обеспечения драйвера ». Windows просканирует все ожидающие обновления для драйвера и загрузит его.
  6. Закройте диспетчер устройств и перезагрузите компьютер. Проверьте на любые улучшения.

2. Откат аудио драйвера

Если у вас установлена ​​последняя версия аудио драйвера, попробуйте откатить обновление драйвера. Пока нет возможности откатить драйвер напрямую, но вы можете установить старый драйвер вручную. Вот как это сделать.

  1. Нажмите Windows Key + R , чтобы открыть диалоговое окно «Выполнить».
  2. Введите devmgmt.msc и нажмите ОК , чтобы открыть диспетчер устройств.
  3. В диспетчере устройств разверните « Звуковые, видео и игровые контроллеры ».
  4. Нажмите правой кнопкой мыши на «Conexant High Definition Audio» и выберите Свойства.
  5. Теперь нажмите на вкладку «Драйвер» и запишите версию драйвера.
  6. Вам необходимо найти и загрузить аудиодиск старше установленной версии. Вы можете найти его на официальном сайте большую часть времени.
  7. После загрузки драйвера нажмите правой кнопкой мыши на Audio Drive в диспетчере устройств и выберите Обновить драйвер.
  8. Нажмите « Просмотреть мой компьютер для выбора драйвера» . Найдите загруженный драйвер и установите его.
  9. Перезагрузите компьютер и проверьте наличие улучшений.
  • Также читайте: 9 способов исправить медленное время загрузки в Windows 10 на SSD

3. Удалите драйвер и устройство

Если обновление и откат обновления драйвера не сработали, попробуйте удалить Conexant High Definition Audio. Вот как это сделать.

  1. Нажмите Windows Key + R .
  2. Введите контроль и нажмите ввод, чтобы открыть панель управления.

  3. Нажмите «Программа» и откройте « Программы и компоненты» .
  4. Найдите « Conexant High Definition Audio » и удалите его.

Теперь вам нужно удалить устройство из диспетчера устройств.

  1. Нажмите Windows Key + R.
  2. Введите devmgmt.msc и нажмите клавишу ввода.
  3. В диспетчере устройств разверните « Звуковые, видео и игровые устройства ».
  4. Нажмите правой кнопкой мыши на Conexant High Definition Audio и выберите Удалить устройство.
  5. Перезагрузите систему, и Windows автоматически установит любые аудио драйверы, если это необходимо.
  • Также читайте: 6 лучших 4K медиаплееров для Windows 10 для использования в 2019 году

4. Обновите Windows

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

  1. Нажмите Пуск и выберите Настройки.
  2. Откройте Обновление и безопасность.

  3. Нажмите Центр обновления Windows.
  4. Проверьте, ожидают ли какие-либо обновления. Если нет, нажмите « Проверить наличие обновлений» .
  5. Загрузите и установите обновления и перезагрузите систему, чтобы завершить обновление.
  • Также читайте: 5 лучших программ резервного копирования от Microsoft для обеспечения безопасности ваших данных

5. Выполните восстановление системы, используя точку восстановления

ОС Windows по умолчанию создает точку восстановления всякий раз, когда пользователь вносит существенные изменения в компьютер, такие как установка обновлений Windows, установка программного обеспечения и т. Д. Вот как это сделать.

  1. Введите «Создать восстановление» в поиске и откройте « Создать точку восстановления».
  2. Нажмите кнопку Восстановление системы .
  3. Нажмите « Выбрать другую точку восстановления » и нажмите « Далее». Если у вас нет опции «Выбрать другую точку восстановления», просто нажмите « Далее». .

  4. Установите флажок «Показать больше точек восстановления» .
  5. Выберите одну из точек восстановления и нажмите Далее.
  6. Нажмите Готово , чтобы начать процесс восстановления.
  7. Windows перезагрузит систему после того, как система будет восстановлена ​​до более раннего состояния.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Error floating point exception ansys
  • Error code 29004 this list name has been used
  • Error flexible array member
  • Error code 29 game client encountered an application error
  • Error flashing zip при прошивке twrp

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии