Для того чтобы спавнующиеся NPC начали сидеть на барахолке и уходить только после взятия ключа к Х18, вам нужно добавить следующее условие в их сеции:
1. В секции [smart_terrains] для NPC пропишите условие:
gar_psevdowounded = {+agroprom_military_case_done; -key_taken_h18}
2. В самой части [smart] также добавьте это же условие:
cond = {-agroprom_military_case_done; +key_taken_h18}
Эти изменения должны заставить NPC оставаться на барахолке до тех пор, пока у игрока не будет взят ключ к Х18.