今年，微软的《帝国时代4》就要推出了，前些天看到了预告。突然想玩以前的《帝国时代II》，发现，这个游戏实在是太旧了，分辨率不匹配现在的宽屏显示器。于是，转而找《帝国时代II高清版》（Age of Empires II HD），分辨率合适了，但是发现一个闹心的地方，随着时代推移，微软把局域网联机功能给取消了，只留下了Steam互联网联机。在网上找解决办法，找到了一个Steam模拟器SmartSteamEmu（简称SSE），能够再局域网环境下，不连接互联网，而模拟Steam联机，这个东西挺好。但是在国内找了找，大家提供的版本太低，于是找到这个模拟器的官方，原来是俄罗斯的一个游戏网站（https://cs.rin.ru），幸好用的是英语，经过注册下载了下来。现在放到这里，方便大家使用。
以《帝国时代II高清版》（Age of Empires II HD）为例
1. 安装《帝国时代II高清版》（Age of Empires II HD）
链接: https://pan.baidu.com/s/1mhFGouG 密码: zdqr
3. 下载SmartSteamEmu 1.4.3
4. 设置SmartSteamEmu 1.4.3
以Age of Empires II HD The African Kingdoms为例
(1) 先运行SmartSteamEmu 1.4.3
(2) 到游戏文件夹，将游戏的运行文件aok hd.exe拖动到模拟器SmartSteamEmu 1.4.3窗口中，Game App ID设置为221380。
注意下面的Status of steam_api.dll，如果下面一行的steam_api.dll前面是绿灯，就是可以的，如果是红灯，就是说明steam_api.dll不是原版。我的同一个游戏，在三台电脑上，有两台可以通过，有一台通过不了，现在还不知道是什么原因。
(3) DLC如图设置，先切换到DLC Manager标签，按照我标记的序号，手动输入DLC App ID，DLC Name，然后按Add键，就添加成功了。
(4) 保存这些设置之后，模拟器SmartSteamEmu 1.4.3窗口中就会出现Age of Empires II HD游戏的图标，双击进入游戏。
三、Game App Id如何获得呢？
然后，搜索你要玩的游戏名称，比如Age of Empires II HD，在新的游戏介绍页面，查看他的网页地址，如：
在地址里面找到221380，这就是Game App Id
DLC的Game App Id同样获得：
This is a steam client emulator which enables you to play steam games without STEAM client and play online games or lobby enabled-games on LAN without any internet connection or online.
This emulator initially intended only for Age of Empires II HD to enable lobby features without depending on STEAM. Now the emulator has been updated and can be used with other steam’s game.
这个模拟器最初仅仅是为《帝国时代II高清版》（Age of Empires II HD）模拟使用Steam游戏大厅功能而设计的。但是现在，这个模拟器经过版本升级，已经能够支持几乎所有Steam在线游戏的局域网模拟了。
– Run steam game without steam
– Enables play online OR on LAN without internet connection
– Emulates lobby, server browser
– Stats, Achievements and Save games
– Configurable DLC subscription
– Avatar support
– Plugins support
– Overlay support (DX9/11/OpenGL)
– Steam Workshop partial support
– Microsoft(R) Visual C++ 2010 Runtime (x86)
– .NET Framework 4 (SSELauncher only)
– Steam games
如何使用（How to use）:
– Extract all files to game directory or any directory.
– Open SmartSteamEmu.ini and edit as neccessary.
– Launch SmartSteamLauncher.exe and not the game executable.
– To use different configuration file, add configuration file path to launcher parameter.
If you use cracked version that replace steam_api.dll, make sure you restore the original steam_api.dll file first. If your games use CEG or DRM as protection, you might need to regenerate the executables for that computer first (CEG only) or use the cracked version.
Some games may require pre-cracked file to run the games, but be sure steam_api.dll is the original.
Some games such as tomb raider that can host private match require invite friends function to invite others to join their private match. Since this emulator didn’t have any invite friend implemented, to JOIN the server press SHIFT+TAB simultaneously.
Beginning with version 1.3.5, online mode is introduced (by SSEOverlay plugin). It will connect to several server (torrent tracker) and STUN server. If you do not wish to connect to these server, it can be disabled completely via overlay settings or modifying its setting file.
Plugin is simply a dll file to extend or change the emulator or game behaviour. The dll will be loaded by SmartSteamEmu via LoadLibrary(). Additionally the plugin can have SmartInit() and SmartShutdown() exported function. To get better understanding, download the PDK.
PDK can be downloaded here: http://cs.rin.ru/forum/viewtopic.php?f=20&t=65200
Version 1.4.3 (April 11, 2017)
– Added x64 launcher
– Added game server rules support
– Added protection on game server callback
– Updated steamstub patcher
– Internet server list will query LAN too
– Fixed Plugin PostCallback doesn’t copy the data
– Fixed Plugin callback may not run
– Fixed GC reply missing job source
– Fixed deadlock around callback
– Faster lobby request
– Plugin with wrong platform will not be loaded
– SSELauncher: All list box item’s (dlc, broadcast, direct patch, ban) can be individually disabled
– SSELauncher: Added option to launch the game using x64 launcher (and can enable x64 inject)
Thanks to OSW members and supporting friends.
Thanks to all cs.rin.ru Developers Group members including ChrisTX
Thanks to Mitsukarina for helping and maintaining SSELauncher
Thanks to Sisah for helping and maintaining SSEOverlay
Thanks to people who provided translation for SSEOverlay: Czech (Sisah), Russian (Shlak), Spanish (xatornet)
在模拟器官方下载最新版本（Download Current Version）:
Frequently Asked Question
Q What is SmartSteamEmu?
A SmartSteamEmu is a steam emulator, allowing you to run steam games without requiring steam. Playing games with friends and family both online or offline (LAN) without requires internet connection.
Q There are too many version, which one should I download?
A The latest one of course. If your game is not working with latest version, report it and while waiting for a fix you may try the old one. There is no support for old version and using version below 1.4.0 is not recommended!.
Q How to use it?
A Extract everything on a folder of your choice and launch SSELauncher. Then drop the game executables (.exe) to the launcher and give it an appid. I recommend location that doesn’t requires admin privileges for both games and emu – Program Files requires admin privileges. NOTE: If you have obtained game files through other means than steam, you may have steam_api/64.dll file replaced. Restore the original first before using this emu.
Q Does this emulator works with games XYZ?
A It works with most steam games. If no one reported yet, you will need to try it yourself.
Q How can I find my game appid?
Q Can I use my Arabic/Chinese/Russian/other non latin character for my name?
A Yes, the emulator has full unicode support including file path. Remember to save the SmartSteamEmu.ini as unicode format. However game support may vary.
Q Where save game file is stored?
A If you are using SSELauncher, it will be on your SSELauncher folder. By default, it will be on your C:\Users\<your name>\AppData\Roaming\SmartSteamEmu\[persona name]\remote_<appid>
Q Can I use my save game from steam/other emulator?
A Yes, but some game protect their save game file by checking your steam id.
Q If save game is protected with steam id, how can I use it with this emulator?
A You need to change emulator steam id to the steam id the save game file used previously. However it is better if you can modify the save game file to match your steam id.
Q Where can I get my steam id?
A You can use some service on website, example: http://steamidconverter.com/STEAM_0%3A0%3A11101 and use steamID64 and put into ManualSteamId setting and change SteamIdGeneration to Manual.
Q How to activate overlay?
A Press SHIFT+TAB combination. The combination changes when you changed the QuickJoinHotkey.
Q Overlay doesn’t appear in my games. How to activate it?
A If it doesn’t appear, overlay might not yet supported on those games. Currently its only support DX9, DX11 and OpenGL.
Q My games uses DX9/DX11/OpenGL, I still can’t activate overlay.
A Check if overlay plugin present in plugins directory and the QuickJoinHotkey combination. If it still doesn’t appear, then overlay is not supported in your games yet.
Q When using overlay, games are unstable.
A You can disable overlay by turning off Overlay on SSELauncher setting or manually add DisableOverlay = 1 to [SSEOverlay] section on SmartSteamEmu.ini file.
Q What is SSEFirewall?
A Basically it stop games from making a connection to some server.
Q How does it work?
A It work by redirecting domain name to ip query to localhost ip address.
Q How do I use it?
A Open SmartSteamEmu\Plugins\SSEFirewall.ini and add entry to [Block] list with this format domain.com = 1 to block. Also explained here: viewtopic.php?p=1228659#p1228659
Q Can I play multiplayer with this emulator?
A Yes, online and LAN without internet connection.
Q Do I need tunggle/hamachi/etc to play multiplayer online?
A Basically no.
Q How do I play online?
A The online mode is enabled by default, just launch the games
Q I can’t find my partner.
A Check your firewall first, if you are playing online, you may need to do portforwarding. Then check your appid, it must match to found each other online. If any one of you didn’t do portforwarding, connecting to each other may takes some time up between 1 to 20 minutes.
Q I still can’t find my partner online.
A Some type of NAT isn’t supported yet (Symmetric NAT). If both of you are behind Symmetric NAT, you may need to rely on 3rd party solutions such as Tunggle, Hamachi, Evolve or others.
Q What port number does this emulator use?
A By default its 31313 and using UDP. If it is in use, it will bind to next number, 31314 and so on.
Q I saw strangers on my friend list. Who is that?
A Another players that play the same game you are playing now.
Q How do I add friends?
A There is no yet friend features, all SmartSteamEmu users that playing the same game will appear on your friend list.
Q I found others lobby, but unable to connect or play together. What happened?
A You must have same game version.
Q I just disabled online mode, after launching the game, others still connected to me.
A It takes up to 1 hour for your IP to be removed from tracker server and other people.
Q I only want to connect just between me and my friends without the others.
A You will need to disable Online Mode, then know your friend external IP and Port and add it to BroadcastAddress under [Networking] section. For easier, use overlay console to determine external ip and port by telling your friend to type externalip and externalport or port (if portforwarding is used) and add to your broadcast address list using add_broadcast_address ip:port.
Q I tried to find match on Counter-Strike Global Offensive, but after waiting some times it still searching for match.
A This emulator doesn’t provide server list to game. If you need to play with other, create a private match and invite others. Then set the game type other than competitive and make it as a private game.
Q Does Counter-Strike Global Offensive inventory works?
A Yes, it’s working.
Q How do I disable random item drop in CS:GO
A Change RandomItemAwards to false on [SmartSteamEmu] section.
Q Is it possible to create the item by myself?
A Yes, there is a collection of tools to craft items here: viewtopic.php?f=10&t=67795
Q Does Payday 2 inventory works?
A Yes, it’s working.
Q I have frequent crash when opening steam inventory or got item drop.
A Update to latest version. If it still crashing, you will need to delete inventory.bin as using previous emu version gives an invalid items thus crashing your game.
PROBLEM/HANGING/CRASHING & BUG REPORT
Q My game crashes/hanging. What happened?
A There is a number of reasons, and one of them is bugs in the emulator or overlay.
Q What to do when game is crashing/hanging?
A First determine what causing the problem:
- Some game/engine request stats infinitely (can be seen with logging enabled), if so set FailOnNonExistanceStats to true.
- Disable SSEOverlay plugin and try again, if it won’t crash then the overlay may be causing the problem. The crash dump might be generated, upload it.
- If it still causing the problems then perhaps its a bug inside the emulator. Please report it and upload any dump created.
Q I found a bug in this emulator. How do I report them?
A Just post in this thread with all the information about the bugs. It must have a detailed explanation what are you experiencing and steps to reproduce. Post log file and dump (*.mdmp) file if available.
Q There is no dump file after crashing.
A Some games have its own crash handler, be sure to check games folder for dump file such as on My Documents\Games. For example, game that using Bugsplat will open its own crash dialog, click View Report Details and paste all relevant information. You may find the location of dump file inside the report details.
Q My game hangs and I can only terminate it using task manager.
A Use Sysinternals Process Explorer to create a minidump file while its hanging. Once created compress it and upload the file.
Q If my players are cheating, is it possible to ban that player on my server?
A If you are using this emu to host your server, you can use SSEBanHammer to ban/unban players from connecting to your server.
Q But the steam id can be changed. I must ban them again if they change the steam id.
A Once you banned them using SSEBanHammer, they will not be able to connect again even after changing their steam id or using random one.
Q I use dproto to host my server, does it work like SSEBanHammer?
A Yes, dproto will assign static steam id to the SmartSteamEmu’s player and you can still ban them.
Q Is it safe to use this emulator?
A Yes, it is safe.
Q Does this emulator connects to steam?
Q Does SmartSteamEmu connects to something?
A Basically no. However it does connect to one of these server to query your public IP (api.ipify.org, ipinfo.io, myexternalip.com). If you enabled SSEOverlay Online Mode, it will connect to some more server, see question below.
Q Which server does SSEOverlay online mode connect to?
A By default, it will connect to open.demonii.com, tracker.openbittorrent.com, tracker.coppersurfer.tk, tracker.leechers-paradise.org, tracker.internetwarriors.net and stun.l.google.com
Q How online mode works?
A The SSEOverlay will query the tracker server to get the IP lists of others and try to connect to them. Your external ip and port will be sent to tracker server for others to find you.
Q What information is submitted to others when playing online/multiplayer?
A This emu will send your steam ID, persona name and avatar to other players.