Battlefield 3 Source Code
|
|
TRIADA | Дата: Воскресенье, 24.02.2013, 19:47 | Сообщение # 1 |
Группа: Проверенные
Сообщений: 518
| Code: class fb::ClientGameContext {
class fb::GameContext // Inherited class at offset 0x0 {
class fb::PlayerManager * m_playerManager; // this+0x0 class fb::GameTime * m_gameTime; // this+0x4 class fb::Level * m_level; // this+0x8 class fb::MaterialGridManager * m_materialGridManager; // this+0xC class fb::ant::AnimationManager * m_animationManager; // this+0x10 class fb::ModelAnimationManager * m_modelAnimationManager; // this+0x14 class fb::MessageManager * m_messageManager; // this+0x18 class fb::BlueprintBundleManager * m_blueprintBundleManager; // this+0x1C class fb::DLCManager * m_dlcManager; // this+0x20 class fb::DemoControl * m_demoControl; // this+0x24 enum fb::Realm m_realm; // this+0x28 class fb::GameContext * s_currentGameContext;
}; // fb::GameContext
class fb::ClientPlayerManager * m_clientPlayerManager; // this+0x2C class fb::online::OnlineManager * m_onlineManager; // this+0x30 class fb::ClientGameView * m_gameView; // this+0x34 class fb::network::InterpolationManager * m_interpolationManager; // this+0x38 class fb::ClientPlayerScoreManager * m_clientPlayerScoreManager; // this+0x3C class fb::Client * m_client; // this+0x40
}; // fb::ClientGameContext Code: class PlayerManager { public: virtual void unknown000();
/*class fb::SmartRef*/unsigned int m_playerData; // this+0x4 unsigned int m_maxPlayerCount; // this+0x8 unsigned int m_playerCountBitCount; // this+0xC unsigned int m_playerIdBitCount; // this+0x10
__forceinline ClientPlayer* getLocalPlayer() { return *(ClientPlayer**) ((DWORD)this + 0xB8); }
__forceinline ClientPlayer** getIdToPlayerMap() { return *(ClientPlayer***) ((DWORD)this + 0xBC); }
__forceinline ClientPlayer* getPlayerFromId(unsigned int id) { fb::ClientPlayer *result = 0;
if (id < this->m_maxPlayerCount) result = this->getIdToPlayerMap()[id];
return result; }
};
. . . .
fb::GameContext* g_gameContext = (fb::GameContext*)0x23022E0; printf("%s\n", g_gameContext->m_clientPlayerManager->getLocalPlayer()->m_name);
for (int i = 0; i < 64; i++) { printf("testing ent %i ", i); if (g_gameContext->m_clientPlayerManager->getPlayerFromId(i) == NULL) { printf("\n"); continue; }
if (!IsBadReadPtr( (PVOID)g_gameContext->m_clientPlayerManager->getPlayerFromId(i)->m_name, 4)) { printf("%s\n", g_gameContext->m_clientPlayerManager->getPlayerFromId(i)->m_name); } } Credits: batfitch
Code: class ClientGameContext { public: PlayerManager* m_playerManager; //0x0000 char unknown4[40]; //0x0004 ClientPlayerManager* m_clientPlayerManager; //0x002C char unknown48[208]; //0x0030 }//Size=0x0100(256)
class ClientPlayerManager { public: char unknown0[8]; //0x0000 __int32 m_maxPlayerCount; //0x0008 __int32 m_playerCountBitCount; //0x000C __int32 m_playerIdBitCount; //0x0010 char unknown20[164]; //0x0014 ClientPlayer* m_localPlayer; //0x00B8 ClientPlayer ** m_idToPlayerMap; //0x00BC BYTE m_idToPlayerMapIsDirty; //0x00C0 char unknown193[63]; //0x00C1 }//Size=0x0100(256)'
|
|
| |
TRIADA | Дата: Воскресенье, 24.02.2013, 19:51 | Сообщение # 2 |
Группа: Проверенные
Сообщений: 518
| ServerPlayer Code:
|
|
| |
TRIADA | Дата: Воскресенье, 24.02.2013, 19:53 | Сообщение # 3 |
Группа: Проверенные
Сообщений: 518
| RecoilData
Code:
|
|
| |
TRIADA | Дата: Воскресенье, 24.02.2013, 19:54 | Сообщение # 4 |
Группа: Проверенные
Сообщений: 518
| Code: class ClientPlayerManager { public: char unknown00[8]; //0x0000 INT32 m_maxPlayerCount; //0x0008 INT32 m_playerCountBitCount; //0x000C INT32 m_playerIdBitCount; //0x0010 char unknown01[0x84]; //0x0014 class eastl::vector<fb::ClientPlayer *,fb::eastl_arena_allocator> m_players; //0x0098 Player iteration starts here ClientPlayer* m_localPlayer; //0x00B8 ClientPlayer ** m_idToPlayerMap; //0x00BC
};
class ClientPlayer { //VFT to VFunctions virtual class SoldierEntity * getSoldier(); // VFT: 0x4 virtual class EntryComponent * getEntry(); // VFT: 0x8 virtual bool isInVehicle(); // V: 0xC virtual unsigned int getId(); // V: 0x10 //virtual bool isUnlocked(const class UnlockAssetBase *); // V: 0x18
//------------------------------------------------------------- char unknown1[0xC]; // 0x04 char m_name[20]; // 0x10 char unknown4[0x304]; INT32 m_teamId; // 0x324, 1 for Attacker, 2 for Defender
int m_refCount; // this+0x3C0 ... unsigned int m_id; // this+0x3F0
unsigned int m_connectionId; // this+0x3F4
}; // fb::ClientPlayer
for (int i = 0; i<64; i++) { INT32 PlayerPtr = pPlayersMapPtr + (i*4); if ( PlayerPtr == FirstBadPlayerPtr ) { printf("---- Player list end, we have %d players ----\n", i); break; }
//read name, team, ID, refCount, connectionID, etc ... ... printf("Player%d name:%s, teamID:%d, ID:%d, refCount:%d, connectID:%d\n", i, theName, theTeamID, m_ID, refCount,m_connectionID );
}//end of FOR loop
|
|
| |
TRIADA | Дата: Воскресенье, 24.02.2013, 19:59 | Сообщение # 5 |
Группа: Проверенные
Сообщений: 518
| Game client header Code:
|
|
| |
TRIADA | Дата: Воскресенье, 24.02.2013, 21:01 | Сообщение # 6 |
Группа: Проверенные
Сообщений: 518
| Эмуляторная чать запускается и регулируется на основе кодов PHP и прочих языках для C++ через микро браузеры типо батлога (там их уже наштамповали немало на выбор), это расшифровка вытекшего и скомпилированых кодов некоторыми сообществами может помочь кому нибудь в дальнейшем
|
|
| |
родя | Дата: Понедельник, 04.03.2013, 15:50 | Сообщение # 7 |
Группа: Проверенные
Сообщений: 111
| <script type="text/javascript"> // <![CDATA[ var speed=100; var glow=4; var raincol=new Array("#ff0000", "#ff9900", "#ffff00", "#99ff00", "#00ff00", "#00ff99", "#00ffff", "#0099ff", "#0000ff", "#9900ff", "#ff00ff", "#ff0099"); // change the
var rainbow, raintxt, raincnt=0; window.onload=function() { if (document.getElementById) { var i, rainbeau; rainbow=document.getElementById("rainbow"); raintxt=rainbow.firstChild.nodeValue; while (rainbow.childNodes.length) rainbow.removeChild(rainbow.childNodes[0]); for (i=0; i<raintxt.length; i++) { rainbeau=document.createElement("span"); rainbeau.setAttribute("id", "rain"+i); rainbeau.appendChild(document.createTextNode(raintxt.charAt(i))); rainbow.appendChild(rainbeau); } rainbow=setInterval ("raining()", speed); }}
function raining() { var i, c; for (i=0; i<raintxt.length; i++) { c=raincol[(i+raincnt)%raincol.length]; document.getElementById("rain"+i).style.color=c; if (glow) document.getElementById("rain"+i).style.textShadow=c+" 0px 0px "+glow+"px"; } raincnt++; } // ]]> </script>
ВРОДЕ ИСХОДНИК БЛЕЙЗАДобавлено (04.03.2013, 13:44:09) --------------------------------------------- И заметьте сли nofate-ВСЕ РАДЫ ДА Добавлено (04.03.2013, 13:45:02) --------------------------------------------- код мастер сервера.НУ ПРОГРАММИСТЫ УДАЧИ Добавлено (04.03.2013, 13:50:54) --------------------------------------------- ЧЕ ЭТО НАМ ДАЕТ-А ХЗ ЧЕСТНО.
И ПОХ,ЧТО ЯНЕ ПРОГРАММИСТ,ЗАТО Я БЛЯ ИДЕЙНЫЙ ГЕНИЙ...
|
|
| |
TRIADA | Дата: Среда, 06.03.2013, 00:33 | Сообщение # 8 |
Группа: Проверенные
Сообщений: 518
| родя, ты выдал часть кода текстовых фильтров для браузера , подобное я встречал на форуме для изменения функциональности батлога в браузере, также для патчинга DLL и EXE с помощью программы с данного форума http://aluigi.altervista.org/ , я им давно пользуюсь нечто вроде карманного хранения, greeen, полазь на нем может чо интересного для себя накопаеш просто рекомендую.
|
|
| |
TRIADA | Дата: Среда, 06.03.2013, 02:48 | Сообщение # 9 |
Группа: Проверенные
Сообщений: 518
| код "слитый" из сервера можно проследить какую датабазу забивать для эмуляторов Failed to add server read timeout read timeout at /usr/local/lib/perl5/site_perl/5.12.4/LWP/Protocol/http.pm line 452. serverid 98336 game BF3 cfg_path
mod
alt_game_version /retail cfv 0 standalone 0 dir_sep \ games_base C:/games game_exe bf3_server_Final.exe game_dir bf3 profileid 337578 profilename Anarchy servername Multiplay::Anarchy UK Back To Karkand All Maps affinity 255 resolution 10000 console 0 ftp 0 add 1 stop 1 start 1 add 1 VAR_map0 XP1_002 VAR_map1 XP1_001 VAR_map2 XP1_003 VAR_map3 XP1_001 VAR_map4 XP1_004 VAR_map5 XP1_003 VAR_maps_crlf XP1_002 XP1_001 XP1_003 XP1_001 XP1_004 XP1_003 VAR_maps_space XP1_002 XP1_001 XP1_003 XP1_001 XP1_004 XP1_003 VAR_maplist_1096 1096 VAR_maplist_name_1096 Default VAR_maplist_identifier_1096
VAR_map_1096_0000 gametype=ConquestLarge0 2#:#identifier=#:#name=XP1_002#:#title=Gulf of Oman#:#official=1#:#mod= VAR_map_1096_0001 gametype=ConquestAssaultLarge0 2#:#identifier=#:#name=XP1_001#:#title=Strike at Karkand#:#official=1#:#mod= VAR_map_1096_0002 gametype=ConquestAssaultLarge0 2#:#identifier=#:#name=XP1_003#:#title=Sharqi Peninsula#:#official=1#:#mod= VAR_map_1096_0003 gametype=RushLarge0 2#:#identifier=#:#name=XP1_001#:#title=Strike at Karkand#:#official=1#:#mod= VAR_map_1096_0004 gametype=ConquestAssaultLarge0 2#:#identifier=#:#name=XP1_004#:#title=Wake Island#:#official=1#:#mod= VAR_map_1096_0005 gametype=RushLarge0 2#:#identifier=#:#name=XP1_003#:#title=Sharqi Peninsula#:#official=1#:#mod= VAR_port0 19567 VAR_port1 19568 VAR_port2 19569 VAR_port3 19570 VAR_port4 19571 VAR_port5 19572 VAR_port6 19573 VAR_port7 19574 VAR_port8 19575 VAR_port9 19576 VAR_port10 19577 VAR_port11 19578 VAR_port12 19579 VAR_port13 19580 VAR_port14 19581 VAR_port15 19582 VAR_port16 19583 VAR_port17 19584 VAR_port18 19585 VAR_port19 19586 VAR_port20 19587 VAR_port21 19588 VAR_port22 19589 VAR_port23 19590 VAR_port24 19591 VAR_port25 19592 VAR_port26 19593 VAR_port27 19594 VAR_port28 19595 VAR_port29 19596 VAR_port30 19597 VAR_port31 19598 VAR_port32 19599 VAR_port33 19600 VAR_port34 19601 VAR_port35 19602 VAR_port36 19603 VAR_port37 19604 VAR_port38 19605 VAR_port39 19606 VAR_port40 19607 VAR_port41 19608 VAR_port42 19609 VAR_port43 19610 VAR_port44 19611 VAR_port45 19612 VAR_port46 19613 VAR_port47 19614 VAR_port48 19615 VAR_port49 19616 VAR_port50 19617 VAR_port51 19618 VAR_port52 19619 VAR_port53 19620 VAR_port54 19621 VAR_port55 19622 VAR_port56 19623 VAR_port57 19624 VAR_port58 19625 VAR_port59 19626 VAR_port60 19627 VAR_port61 19628 VAR_port62 19629 VAR_port63 19630 VAR_port64 19631 VAR_port65 19632 VAR_port66 19633 VAR_port67 19634 VAR_port68 19635 VAR_port69 19636 VAR_port70 19637 VAR_port71 19638 VAR_port72 19639 VAR_port73 19640 VAR_port74 19641 VAR_port75 19642 VAR_port76 19643 VAR_port77 19644 VAR_port78 19645 VAR_port79 19646 VAR_port80 19647 VAR_port81 19648 VAR_port82 19649 VAR_port83 19650 VAR_port84 19651 VAR_port85 19652 VAR_port86 19653 VAR_port87 19654 VAR_port88 19655 VAR_port89 19656 VAR_port90 19657 VAR_port91 19658 VAR_port92 19659 VAR_port93 19660 VAR_port94 19661 VAR_port95 19662 VAR_port96 19663 VAR_port97 19664 VAR_port98 19665 VAR_port99 19666 VAR_port100 19667 VAR_mod_name_6_11603 PB Configs VAR_mod_identifier_6_11603
VAR_ord_mod_identifier_6_11603 0 VAR_mod_title_6_11603 Punkbuster - Configs VAR_file_dynamic_Admin/BanList.txt 1 VAR_file_updated_Admin/BanList.txt 1343293680 VAR_file_dynamic_Admin/MapList.txt 0 VAR_file_updated_Admin/MapList.txt 1323596280 VAR_file_dynamic_Admin/ReservedSlotsList.txt 0 VAR_file_updated_Admin/ReservedSlotsList.txt 1339798800 VAR_file_dynamic_Admin/Startup.txt 0 VAR_file_updated_Admin/Startup.txt 1336488240 VAR_file_dynamic_BF3.init 0 VAR_file_updated_BF3.init 1343293680 VAR_file_dynamic_pb/pbsv.cfg 0 VAR_file_updated_pb/pbsv.cfg 1341983820 VAR_file_dynamic_pb/pbsvlog.cfg 0 VAR_file_updated_pb/pbsvlog.cfg 1323596520 VAR_file_dynamic_pb/pbsvuser.cfg 0 VAR_file_updated_pb/pbsvuser.cfg 1341949140 VAR_file_dynamic_pb/pbucon.use 1 VAR_file_updated_pb/pbucon.use 1323596520 VAR_file_dynamic_pb/sv_cheat.log 1 VAR_file_updated_pb/sv_cheat.log 1323596520 VAR_file_dynamic_pb/sv_viol.log 1 VAR_file_updated_pb/sv_viol.log 1323596520 VAR_asid 94049 VAR_event Online VAR_server_key
VAR_login_username
VAR_login_password
VAR_login_profile
VAR_login_email
VAR_event_desc Online 50000 players 25 Oct 02 - 25 Jan 20 VAR_commercial 1 VAR_gametype ConquestLarge0 2 VAR_gametype_title Conquest64 - Rounds 2 VAR_gamespy_type
VAR_ip 85.236.100.90 VAR_game BF3 VAR_mod_custom
VAR_name Multiplay::Anarchy UK Back To Karkand All Maps VAR_name_xml Multiplay::Anarchy UK Back To Karkand All Maps VAR_servername Multiplay::Anarchy UK Back To Karkand All Maps VAR_port 19567 VAR_serverid 98336 VAR_serverprofile Anarchy VAR_profileid 337578 VAR_max_players 64 VAR_teams 2 VAR_team_players 32 VAR_team_size 32 VAR_team_size_safe 33 VAR_teams_size 32 VAR_1/2_max_players 32 VAR_1/4_max_players 16 VAR_game_passworded_flag 0 VAR_game_passworded_boolean False VAR_game_passworded_yesno no VAR_game_passwd
VAR_admin_passwd ********* VAR_admin_passwd_md5
VAR_admin_port 19577 VAR_voip_port 19572 VAR_pb_port 19662 VAR_telnet_port 19657 VAR_query_port 19577 VAR_admin_email clanservers@multiplay.co.uk VAR_admin_name EntraVenuS VAR_timelimit 20 VAR_timelimit_seconds 1200 VAR_server_config Admin/Startup.txt VAR_server_config_basename Startup.txt VAR_server_maplist Admin/MapList.txt VAR_server_maplist_basename MapList.txt VAR_server_motd
VAR_country_code GB VAR_region_code EU VAR_ping_site lhr VAR_city London VAR_location London, GB VAR_max_memory 0 VAR_mod_version R28 VAR_game_version
VAR_proxy_port 19567
|
|
| |
родя | Дата: Суббота, 16.03.2013, 17:33 | Сообщение # 10 |
Группа: Проверенные
Сообщений: 111
| VAR_server_key
VAR_login_username
VAR_login_password
VAR_login_profile
VAR_login_email кажись только эти строки еще действительно нужны-все остальное так конфиги сервераДобавлено (16.03.2013, 15:33:10) --------------------------------------------- тут на куп лене видео находил как парниша ковырял dll филда3, менял значения и смог запустить игру без ориджина. а если этот способ применить к мультику игры.ковырнуть дллелки и отбить клиент от баттлога.
И ПОХ,ЧТО ЯНЕ ПРОГРАММИСТ,ЗАТО Я БЛЯ ИДЕЙНЫЙ ГЕНИЙ...
|
|
| |
TRIADA | Дата: Суббота, 16.03.2013, 22:14 | Сообщение # 11 |
Группа: Проверенные
Сообщений: 518
| Разшифровка кода через cas extractor
|
|
| |
TRIADA | Дата: Суббота, 19.10.2013, 18:27 | Сообщение # 12 |
Группа: Проверенные
Сообщений: 518
| C:\Program Files (x86)\Origin Games\Battlefield 3\bf3.exe +clientport 20000 http://forums.multiplay.co.uk/1104684-post2.html
|
|
| |