Сегодня решил поиграть в Тень Чернобыля. Но она не запустилась. Запускал и под wine и под xp.
После поисков, выдёргивания сетевого кабеля да просмотра снифера я понял, что в этом виноват gamespy.
Заменив хосты на свои
/etc/hosts:
...
ip-addr stalkercoppc.available.gamespy.com
ip-addr stalkercs.available.gamespy.com
...
я также изменил стандартный пример из lua echosrv
local socket = require("socket")
host = host or "0.0.0.0"
port = port or 27900
if arg then
host = arg[1] or host
port = arg[2] or port
end
print("Binding to host '" ..host.. "' and port " ..port.. "...")
udp = assert(socket.udp())
assert(udp:setsockname(host, port))
assert(udp:settimeout(5))
ip, port = udp:getsockname()
assert(ip, port)
print("Waiting packets on " .. ip .. ":" .. port .. "...")
while 1 do
dgram, ip, port = udp:receivefrom()
if dgram then
print("Echoing '" .. dgram .. "' to " .. ip .. ":" .. port)
dgram = string.char(254,253,9,0,0,0,1)
udp:sendto(dgram, ip, port)
else
print(ip)
end
end
и получил вылет на следующих версиях игры при запуске. Если оканчивать на 0 то запускается.
Вот интересно, это они специально вырубили игру или разрабы сталкера такие разрабы. Хотя понятно что зонд он и в Африке зонд.