code-gen《星際爭霸2》局域網(wǎng)模擬器RC1視頻

2010/7/25 13:48:02    編輯:軟媒 - vivi     字體:【

Win7之家afsion.com.cn):code-gen《星際爭霸2》局域網(wǎng)模擬器RC1視頻

code-gen終于放出了《星際爭霸2》局域網(wǎng)模擬器RC1視頻,中文大意:

同學(xué)們,星際2的局域網(wǎng)破解已接近尾聲;蛟S一部分人仍認(rèn)為我們是騙子,但這無關(guān)痛癢。

無論如何,進(jìn)入正題!

最近較忙,但團(tuán)隊(duì)的StarEMU項(xiàng)目完成得十分出色。既然許諾過,故今日送上視頻演示。視頻中是我自己用臺(tái)機(jī)和筆記本聯(lián)機(jī)進(jìn)行的ZvP對戰(zhàn),所以得兩頭忙活,視頻里鼠標(biāo)不動(dòng)時(shí)我就在另外一端上建造。我主要操作蟲族端。對戰(zhàn)本身無關(guān)緊要,只是要說明比上次的模擬器流暢穩(wěn)定了很多,延遲也得以改善。目前我們正在著手處理些小問題,RC2將具有穩(wěn)定的1v1和2v2功能。屆時(shí)將有更多諸如截圖和多人對戰(zhàn)的證據(jù)。我們要對模擬器進(jìn)行測試和確證,最終版本將在 SC2發(fā)布后釋出。目前來看,不會(huì)很久。

我電腦比較垃圾,所以幀數(shù)一塌糊涂。

模擬器的相關(guān)技術(shù)細(xì)節(jié):

0,工作原理和最初的模擬器一樣,論壇中解釋不下一百遍了,F(xiàn)在只是告訴各位同學(xué)RC1中的LAN模擬器如何工作。

1,當(dāng)點(diǎn)擊“發(fā)送數(shù)據(jù)”,會(huì)有發(fā)送成功與否的的彈出窗口,所發(fā)送的數(shù)據(jù)是我用服務(wù)器配置功能設(shè)定的。如此完成服務(wù)端和客戶端的同步后,鎖定游戲狀態(tài)。我要表達(dá)的概念是,配置過程中,服務(wù)端和客戶端之間進(jìn)行同步減少了延遲以提高游戲體驗(yàn)。當(dāng)然視頻中可見,同步尚未完美,我們還在努力解決。

2,為什么要有四個(gè)連接呢。很簡單,三個(gè)用于游戲客戶端,第四個(gè)用于2v2的裁判,這一功能還未完成。

3,鑒于這是局域網(wǎng)對戰(zhàn)模擬,AI沒有存在的必要,另外AI和局域網(wǎng)對戰(zhàn)功能不兼容,在RC1中被禁用。我們將力爭將AI加入以滿足網(wǎng)友的要求。

4,服務(wù)端選項(xiàng)對話框里的70%選項(xiàng)工作正常,其他的還有待改善。但該選項(xiàng)并不重要。

5,插件功能目前為禁用狀態(tài)。對于該選項(xiàng),我們還有好多想法,稍后呈上。

6,反暴雪按鈕包含敏感內(nèi)容,視頻錄制前預(yù)先配置,而視頻中未予展示。該選項(xiàng)包含了DLL文件注入、隨機(jī)數(shù)據(jù)包、屏蔽官網(wǎng)、安全選項(xiàng)等,以支持局域網(wǎng)對戰(zhàn)。該選項(xiàng)為主要選項(xiàng),其他的就只是一般配置選項(xiàng)了。

7,當(dāng)點(diǎn)擊開始,隨機(jī)注入的DLL禁用了戰(zhàn)網(wǎng)驗(yàn)證并從Battle.net.dll奪取控制權(quán)。這還修改客戶端上的SC2.exe和其他文件。

8,客戶端必須先行離開,否則他就會(huì)死機(jī)。

9,無戰(zhàn)績統(tǒng)計(jì),因?yàn)檫@是戰(zhàn)網(wǎng)組件,而后者已被如愿禁用:)或許我們該設(shè)法重啟戰(zhàn)績統(tǒng)計(jì)功能。

10,歡迎來電來函來人評(píng)論或詢問!

--------------------還算華麗的分割線--------------------

關(guān)于對浩方SC2房間的設(shè)想:

一旦code-gen發(fā)布了局域網(wǎng)模擬器,只需修改浩方使其調(diào)用StarEMU,并像調(diào)用魔獸爭霸和CS那樣為其分配局域網(wǎng)地址將其納入浩方,即可在浩方中聯(lián)機(jī)對戰(zhàn)星際爭霸II



Ok folks. Here is almost final result of our work. We are aware 99% of you thinks of us as some kind of scammers but I really don’t know what we have gained with all this. If you do please let us know. Anyway, that is discussion for noobs who don’t know the difference between patata, krumpir or krtola.

Anyway!

Didn’t have the time lately to do stuff, because there are tons of projects to be worked on + RL. But my teammates made excellent work on StarEMU. But I promised a video today so here is a game I played yesterday. It is Zerg vs Protoss and I am playing myself vs myself in one room (PC and Laptop connected via Ethernet) so everything is slow because I am building on both sides so when you see my cursor standing still it means I am building drones, 3 gateways and a dozen zealots. But I am mainly playing Zerg. But since this is only a demonstration I don’t really care what is the battle. I just wanted to show that there is 90% less lag than last time and 90% more stability. There are known bugs of course and we are working on them. With RC2 who will be out by saturday we will get full blown 1v1 and 2v2 battles with even better overall performance. Then expect tons of videos and other proofs like screenshots of people playing in the room, video of people playing, etc. Final version will come out after SC2 makes it out. We need to verify and test the software but as I saw from SC2 code, it won’t take long.

My computer sucks so FRAPS-ing is horrible. I did my best for the video to be best quality and still manages to YouTube.

Now for some Technical Details about how it works.

0. First, you all remember the primal concept on how it works. It was explained on forums 100 times. What I want now is to tell you something how LAN Emulation in RC1 works.

1. When I click “Send Data” and you get a pop up message “Data Sent”, Data is NOT sent YET. It is sending during the server configuration when I press “CONFIGURE SERVER”. When I press that, synchronization between Server and Client is done. After that “GameState” is LOCKED and both are in “perfect” sync. Well, it’s not perfect, we are still working on it. But you get the idea. While configuring, Server Data is sent to Client and Client synchronizes with Server. This is done to reduce LAG and improve performance. Still needs to be worked on as you will see some lag in video.

2. Why are there 4 connections? Simple, 3 for Game Clients and fourth for the Spectator/Referee for 2v2. This is not yet functional.

3. AI is DISABLED in RC1 and will be in all future builds. Will be removed… No point in it really. This is LAN software, not AI fight.
EDIT: Some people have expressed desire for AI to be enabled. We will look into it. Problem is high incompatibility.

4. SERVER OPTIONS dialog speaks for itself. It has lot of options and 70% of them work. Some still need fixing and some need to be done, but that is not really important since those options are not critical.

5. PLUGINS are DISABLED for now. There will be some nice goodies that are planned for this. More info later.

6. ANTI-Blizzard contains touchy stuff and that’s why I didn’t open it in the video. I preconfigured it before I started recording. It contains the options for DLL Injection, Random Offsets Patching, Internal functions, Deny access to Battle.net, Security features and many other things that in fact ENABLE LAN play. This is the main Option component. Rest is just configuration.

7. When I Launched the game you saw a pop up with Random Offset and DLL Injection + usage of different rewritten DLL. After that, that DLL disabled Battle.net communication with SC2 and took over functions from Battle.net.dll. It also patched SC2.exe and some other files to start SC2 on Client computer. It is crazy stuff inside.

8. Client ALWAYS must leave the game first or else his computer will freeze.

9. There is no score screen because it is a Battle.net component and Battle.net is disabled. I wish it had. Maybe we will find a way to enable it.

10. Comments are always welcome. Even flame, we don’t care.