Need for Speed World

Need for Speed World, formerly Need for Speed: World Online, is a downloadable MMO Racing Game published by EA Games.

At the time of writing, the game was in a private beta stage, and can only be played with a beta account (see needforspeed.com/web/world ). Since then, the game is available as a public beta, and the game launcher/setup can be downloaded from http://cdn.world.needforspeed.com/world/static/download/nfssetup.exe

For information on older clients, see this article's http://nettech.wikia.com/index.php?title=Need_for_Speed_World&amp;action=history.

User Authentication and Client Updating
Note that at the time of writing this site has an expired and invalid HTTPS certificate, so it must be overridden or ignored. https://94.236.124.241/nsfw/Engine.svc/User/AuthenticateUser
 * The client connects to https://94.236.124.241/.
 * The client authenticates the email and password by using a POST to

The request is sent with content-type: text/xml;charset=utf-8 The request body consists of:

 user email address user password US 

The server should then reply back with an XML response. A sample response is provided below (reindented for clarity, personal information censored with ****):

      ****     true   false <landlinePhone i:nil="true" /> <language i:nil="true" /> <lastAuthDate>YYYY-MM-DD HH:MM:SS</lastAuthDate> <lastName i:nil="true" /> <mobile i:nil="true" /> ****   <postalCode i:nil="true" /> <realName i:nil="true" /> <reasonCode i:nil="true" /> <remoteUserId>****(~10 digits)</remoteUserId> <securityToken> ****(hex in the form aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa)</securityToken> <starterPackEntitlementTag>NFSW_FULL_GAMEPLAY</starterPackEntitlementTag> <status i:nil="true" /> <subscribeMsg>false</subscribeMsg> <tosVersion i:nil="true" /> <userId>****(~5 digits)</userId> <username i:nil="true" /> </User> The server should response with an XML configuration file.
 * The client requests https://94.236.124.241/nfsw/Engine.svc/launcherinfo

A sample response is provided below: <configuration xmlns="http://schemas.datacontract.org/2004/07/EA.NFSWO.ENGINE.Service" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> http://bbx-qafarm-05/engine_R2_1/Engine.svc http://bbx-qafarm-05/engine_R2_1/Web.svc US       EU      http://static.cdn.ea.com/blackbox/u/f/NFSWO/Client/Rel_4_42 http://static.cdn.ea.com/blackbox/u/f/NFSWO/Launcher/1.8.1.44 <en>http://world.needforspeed.com/static/world/beta_agreement.txt</en> <de>http://world.needforspeed.com/static/world/beta_agreement_de.txt</de> The client then requests [LAUNCHER_URL]/DownloadInfo.xml The server should response with an XML update file
 * Terms of service are displayed according to the url above. The user must accept for the client to continue.
 * If this is the first download or updating the client,

A sample response is below: <application name="GameLauncher"> 1.8.1.44       <file name="GameLauncher.exe" size="1672464" hash="7ryAQM5Cslr/LqLpAMA5pQ==" /> <file name="LZMA.dll" size="80656" hash="P+cLbdieuFUvpLwuiWEsUQ==" /> This contains a whole bunch of information about if the system is open to downloads, players, and contains URLS to other configs. A sample response is: <SystemInfo xmlns="http://schemas.datacontract.org/2004/07/EA.NFSWO.ENGINE.Service" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <Branch>R4</Branch> <ChangeList>513698</ChangeList> <ClientVersion>3</ClientVersion> <ClientVersionCheck>true</ClientVersionCheck> <Deployed>06/29/2010 16:12:03</Deployed> <EntitlementsToDownload>true</EntitlementsToDownload> <EntitlementsToPlay>true</EntitlementsToPlay> <ForcePermanentSession>false</ForcePermanentSession> <JidPrepender>nfsw</JidPrepender> <LauncherServiceUrl> http://10.100.15.202/LauncherService/onlineconfig.aspx</LauncherServiceUrl> <NucleusNamespace>nfsw-ob</NucleusNamespace> <NucleusNamespaceWeb>nfs_web</NucleusNamespaceWeb> <PortalDomain>world.needforspeed.com</PortalDomain> <PortalSecureDomain> webkit.secure.world.needforspeed.com</PortalSecureDomain> <PortalTimeOut>60000</PortalTimeOut> <Time>2010-07-03T18:52:20.9799447+00:00</Time> <Version>R4_41</Version> </SystemInfo>
 * Also, https://94.236.124.241/nfsw/Engine.svc/systeminfo is retrieved

Downloading data files happens from the URLs in  [CLIENT_URL]/index.xml The data files are more or likely compressed using LZMA.