Как играть в SimCity по сети. Сетевая версия SimCity 4.

Как играть в легендарную игру SimCity 4 по локальной сети? Чтобы можно было играть в пределах одного региона по локальной домовой сети.

Кто не знает — SimCity4 это градостроительный симулятор, где регионы разбиты на города. В каждый момент времени управляешь только одним городом, но после его сохранения соседние города начинают видеть изменения друг у друга и ограниченно взаимодействуют (делятся жителями, немного торгуют…). Вот эти особенность игры и можно использовать для сетевой работы.
Возможно, всё делается проще, но я сделал как сумел.
Да, без недостатков не обошлось — о них в конце статьи.
Главное — SimCity 4 работает по сети! 🙂

В личном каталоге каждого из игроков, в стандартной папке «Документы» нашёлся каталог «SimCity 4», в нём каталог «Regions» c папками регионов, в которых лежат отдельные файлы для каждого города. Уже хорошо 🙂
Рассудил так: вряд ли игра захватывает разом весь каталог — наверняка работает с конкретным файлом и соседние не трогает. Тогда, надо сделать каталог «Regions» сетевым ресурсом и отобразить его прямо в папку Мои документы -> SimCity 4 -> Regions
на каждом из компьютеров. Тогда все игроки будут работать с одним и тем же набором файлов, но каждый только с одним файлом-городом единовременно.
Сказано — сделано.

Итак, решение

На одном из двух компов сделал каталог «Мои документы\SimCity 4\Regions» сетевым ресурсом и выставил его в Сеть с правами записи «для всех» (пока так, об этом ниже).
Это будет компьютер по имени Comp1 с сетевым ресурсом Regions.

Осталось отобразить содержимое этого сетевого ресурса на второй компьютер в папку ~Документы -> SimCity4 -> Regions.

Второй компьютер — Comp2, с пользователем Vasya, у которого личные настройки SimCity 4 лежат в локальной папке C:\users\Vasya\Мои документы\SimCity 4\Regions
Открываем командную строку Windows на компьютере Comp2 (я открыл с правами администратора). То есть, нажимаем на клавиатуре клавиши Win+R и вводим команду cmd. Далее в чёрном окошке вводим команду:

Жмём клавишу Enter и видим отчёт об успешно созданной ссылке.
Я в этом месте сначала увидел ошибку, потому что по указанному пути уже была старая папка c именем Regions — сам виноват :). Переименовал старую папку Regions в Regions-old и запустить команду заново.

Собственно, всё! Теперь SimCity 4 работает по сети в многопользовательском режиме!

Потом был небольшой затык, связанный с тем, что уже созданные города с клиентского компа Comp2 нужно было правильно перенести в общее пространство Regions на Comp1. Это нужно сделать только один раз, если нужно сохранить старые наработки и не играть с чистого листа.
Вручную скопировать не прокатило.

Сами игроки подсказали, что в игре есть функция импорта городов — нужно сначала скопировать эти города в папку Regions\Download. Потом щёлкнуть по тому месту куда хотим поставить город на карте региона, нажать на изображение ПК со стрелкой, далее в списке регионов выбрать «Загрузка» и уже там выбрать нужный город.
Из каких регионов и какие города переносить — сами разберётесь. Коротко — из какого региона брали на одном ПК — точно туда и кладите на втором (теперь уже основном), в то же место на карте.

Недостатки этого решения

Первый недостаток — теперь играть в эту игру на ПК с именем Comp2 можно только если Comp1 включён. Это издержки большинства сетевых версий игр…
Выход первый — закинуть сетевой ресурс Regions на постоянно работающую машину или на домашний сервер.
Выход второй — запускать игру через командный файл, который перед запуском будет проверять доступность Comp1 и подключать сетевой ресурс указанной выше командой, либо локальную сохранённую копию Regions.
У меня такой нужды пока нет. Если кто попросит — напишу…

Недостаток второй — нужно повозиться с правами доступа. Это тема для отдельной статьи. Если не осилите — спросите в комментариях, расскажу подробнее. А сейчас вкратце.
В самой игре никаких настроек прав нет. Поэтому настраиваем права игроков на города через раздачу прав на папки и файлы средствами Windows. Есть полные права на файл — редактируешь город. Нет прав — идёшь мимо.
Надеюсь, у вас есть права администратора своего ПК?
Самое простое — разрешить всем (выбрать «Все») доступ с правами на чтение и запись. Нужно же разрешить пользователям сохранять свои города 🙂
По умолчанию сетевой ресурс в Windows делается с правами «только чтение». Так что, при настройке сетевого ресурса нужно не забыть переставить галочку с «чтение» на «чтение и запись». И не забудьте про вкладку «Безопасность» — там тоже нужно поставить разрешение на доступ.
Да, с такими правами кто угодно по сети может испортить этот каталог или войти в чужой город и что-то там сделать. Чтобы этого не было, нужно отдельно устанавливать права доступа на файлы городов внутри региона и/или на каталоги регионов.
В простейшем случае всё строится на доверии и мутить с правами доступа каждому пользователю не особо нужно. Но, если речь идёт о локалке, где есть незнакомые люди (сеть школы или посёлка), то без этого не обойтись.

ПС: был замечен сбой — один из городов пропал, а на его месте появился ровный зелёный квадрат на карте. Оказалось, что город «выбросило» в папку «C:\users\Vasya\Мои документы\SimCity 4\Regions\Dowloads». Причина не выяснена. Импортировали его обратно описанным выше стандартным способом и дальше всё работало без сбоев.