Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

Packets fixed #9

Open
wants to merge 4 commits into from

1 participant

noobasaurus
noobasaurus

Fixed the packets, should work on 4.12. Weird name tag bug though. Dunno how to select just the common.h and merge that. Oh well.

noobasaurus added some commits
noobasaurus noobasaurus Making it identical to what I have
So it should work on the newest league version
8cef985
noobasaurus noobasaurus Revert "Making it identical to what I have"
This reverts commit 8cef9852485db8f98d40ebdd49f510136183fc7b.
621c7af
noobasaurus noobasaurus Updated packets, etc
Updated packets, works on 4.12, weird name tag but whatever.  You can
move, use .model to change your model.
28f3efb
noobasaurus noobasaurus Fixed emoticons
Screwed them up last one
b8b09e4
noobasaurus

Ignore the first two commits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Jul 17, 2014
  1. noobasaurus

    Making it identical to what I have

    noobasaurus authored
    So it should work on the newest league version
  2. noobasaurus

    Revert "Making it identical to what I have"

    noobasaurus authored
    This reverts commit 8cef9852485db8f98d40ebdd49f510136183fc7b.
  3. noobasaurus

    Updated packets, etc

    noobasaurus authored
    Updated packets, works on 4.12, weird name tag but whatever.  You can
    move, use .model to change your model.
  4. noobasaurus

    Fixed emoticons

    noobasaurus authored
    Screwed them up last one
This page is out of date. Refresh to see the latest.
136 CONNECT TO LAN.bat
View
@@ -0,0 +1,136 @@
+@echo off
+setlocal enabledelayedexpansion
+echo -----------------------
+echo IntWars Solo Launcher
+echo -----------------------
+set RADS_PATH=
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\Classes\VirtualStore\MACHINE\SOFTWARE\Wow6432Node\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\Classes\VirtualStore\MACHINE\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\Software\Wow6432Node\Riot Games\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\Software\Wow6432Node\Riot Games\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKLM\Software /V /F "LocalRootFolder" /S /E ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKLM\Software /s ^| %systemroot%\system32\find.exe "LocalRootFolder" ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKCU\Software /V /F "LocalRootFolder" /S /E ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path again..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKCU\Software /s ^| %systemroot%\system32\find.exe "LocalRootFolder" ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+goto cannotFind
+:runApp
+set RADS_PATH=%RADS_PATH:/=\%
+@cd /d "%RADS_PATH%\solutions\lol_game_client_sln\releases"
+
+set init=0
+set v0=0&set v1=0&set v2=0&set v3=0
+for /f "delims=" %%F in ('dir * /b ^| findstr ^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$') do (
+ for /F "tokens=1,2,3,4 delims=." %%i in ("%%F") do (
+ if !init! equ 0 ( set init=1&set flag=1 ) else (
+ set flag=0
+
+ if %%i gtr !v0! ( set flag=1 ) else (
+ if %%j gtr !v1! ( set flag=1 ) else (
+ if %%k gtr !v2! ( set flag=1 ) else (
+ if %%l gtr !v3! ( set flag=1 )
+ )
+ )
+ )
+ )
+
+ if !flag! gtr 0 (
+ set v0=%%i&set v1=%%j&set v2=%%k&set v3=%%l
+ )
+ )
+)
+
+if !init! equ 0 goto cannotFind
+set lolver=!v0!.!v1!.!v2!.!v3!
+
+@cd /d "!RADS_PATH!\solutions\lol_game_client_sln\releases\!lolver!\deploy"
+if exist "League of Legends.exe" (
+ @start "" "League of Legends.exe" "8394" "LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 47917791"
+ goto exit
+)
+:cannotFind
+echo ===================
+echo Cannot find LoL path automatically :(
+echo ===================
+@pause
+goto exit
+:exit
0  bin/VC120_Debug/error.txt
View
No changes.
0  bin/VC120_Debug/output.txt
View
No changes.
130 common.h
View
@@ -20,73 +20,77 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
enum GameCmd : uint8
{
- PKT_S2C_MoveAns = 0x60,
+PKT_S2C_MoveAns = 0x61,
};
//Currently attuned to Live 4.5.0.264
enum PacketCmd : uint8
-{ //Channel //Type
- PKT_KeyCheck = 0x00, //0 //UPDATED
-
- PKT_S2C_EndSpawn = 0x11, //? //UPDATED
- PKT_C2S_QueryStatusReq = 0x14, //1 //UPDATED
- PKT_S2C_SkillUp = 0x15, //3 //UPDATED
- PKT_C2S_Ping_Load_Info = 0x16, //1 //UPDATED
-
- PKT_S2C_ViewAns = 0x2B, //3 //UPDATED
- PKT_C2S_ViewReq = 0x2D, //1 //UPDATED
-
- PKT_C2S_SkillUp = 0x38, //1 //UPDATED
- PKT_S2C_AttentionPing = 0x3F, //3 //UPDATED
-
- PKT_S2C_Emotion = 0x41, //3 UPDATED
- PKT_C2S_Emotion = 0x47, //1 UPDATED
- PKT_S2C_HeroSpawn = 0x4B, //3 UPDATED
- PKT_S2C_Announce = 0x4C, //3
-
- PKT_S2C_GameTimer = 0xC0,
- PKT_S2C_GameTimerUpdate = 0xC1,
-
- PKT_C2S_StartGame = 0x51, //1 //UPDATED
- PKT_S2C_SynchVersion = 0x53, //3 //UPDATED
- PKT_C2S_ScoreBord = 0x55, //1 //UPDATED
- PKT_C2S_AttentionPing = 0x56, //1 //UPDATED
- PKT_S2C_StartGame = 0x5B, //? //UPDATED
-
- PKT_S2C_StartSpawn = 0x61, //? //UPDATED
- //PKT_C2S_OpenShop = 0x63, //1 - DEPRECATED
- PKT_C2S_ClientReady = 0x64, //6 //UPDATED ?
- PKT_S2C_LoadHero = 0x65, //6 //UPDATED
- PKT_S2C_LoadName = 0x66, //6 //UPDATED
- PKT_S2C_LoadScreenInfo = 0x67, //6 //UPDATED
- PKT_ChatBoxMessage = 0x68, //5 //UPDATED
- PKT_S2C_BuyItemAns = 0x6E, //3 //UPDATED
-
- PKT_C2S_MoveReq = 0x71, //1 //UPDATED
- PKT_C2S_MoveConfirm = 0x76, //1 //UPDATED
-
- PKT_C2S_LockCamera = 0x80, //1 //UPDATED
- PKT_C2S_BuyItemReq = 0x81, //1 //UPDATED
- PKT_S2C_QueryStatusAns = 0x87, //? //UPDATED
- PKT_C2S_Exit = 0x8E, //1 //UPDATED
-
- PKT_World_SendGameNumber = 0x91, //3 //UPDATED
- PKT_S2C_Ping_Load_Info = 0x94, //4 //UPDATED
- PKT_S2C_TurretSpawn = 0x9C, //3 UPDATED
-
- PKT_C2S_Surrender = 0xA3, //1 //UPDATED
- //PKT_C2S_GameNumberReq = 0xA6, //1 //DEPRECATED
- PKT_C2S_StatsConfirm = 0xA7, //1 UPDATED
- PKT_C2S_Click = 0xAE, //1 //UPDATED
-
- PKT_C2S_SynchVersion = 0xBC, //1 //UPDATED
- PKT_C2S_CharLoaded = 0xBD, //1 //UPDATED
-
- PKT_S2C_CharStats = 0xC3, //4 //UPDATED
- PKT_S2C_FogUpdate2 = 0x23, //3 //UPDATED?
- PKT_S2C_LevelPropSpawn = 0xCF, //3 UPDATED
-
- PKT_Batch = 0xFF, //3
+{ //Channel //Type
+PKT_KeyCheck = 0x00, //0 //UPDATED
+PKT_C2S_ClientConnect_NamedPipe = 0x01,
+
+PKT_S2C_EndSpawn = 0x11, //? //UPDATED
+PKT_C2S_QueryStatusReq = 0x14, //1 //UPDATED
+PKT_S2C_SkillUp = 0x16, //3 //UPDATED
+PKT_C2S_Ping_Load_Info = 0x16, //1 //UPDATED
+
+PKT_S2C_ViewAns = 0x2C, //3 //UPDATED
+PKT_C2S_ViewReq = 0x2E, //1 //UPDATED
+
+PKT_C2S_SkillUp = 0x39, //1 //UPDATED
+PKT_S2C_AttentionPing = 0x3F, //3 //UPDATED
+
+PKT_S2C_Emotion = 0x42, //3 UPDATED
+PKT_C2S_Emotion = 0x48, //1 UPDATED
+PKT_S2C_HeroSpawn = 0x4C, //3 UPDATED
+PKT_S2C_Announce = 0x4D, //3
+
+PKT_S2C_GameTimer = 0xC0,
+PKT_S2C_GameTimerUpdate = 0xC1,
+
+PKT_C2S_StartGame = 0x52, //1 //UPDATED
+PKT_S2C_SynchVersion = 0x54, //3 //UPDATED
+PKT_C2S_ScoreBord = 0x56, //1 //UPDATED
+PKT_C2S_AttentionPing = 0x57, //1 //UPDATED
+PKT_S2C_StartGame = 0x5C, //? //UPDATED
+
+PKT_S2C_StartSpawn = 0x62, //? //UPDATED
+//PKT_C2S_OpenShop = 0x63, //1 - DEPRECATED
+PKT_C2S_ClientReady = 0x64, //6 //UPDATED ?
+PKT_S2C_LoadHero = 0x65, //6 //UPDATED
+PKT_S2C_LoadName = 0x66, //6 //UPDATED
+PKT_S2C_LoadScreenInfo = 0x67, //6 //UPDATED
+PKT_ChatBoxMessage = 0x68, //5 //UPDATED
+PKT_S2C_BuyItemAns = 0x6F, //3 //UPDATED
+
+PKT_C2S_MoveReq = 0x72, //1 //UPDATED
+PKT_C2S_MoveConfirm = 0x77, //1 //UPDATED
+
+PKT_C2S_LockCamera = 0x81, //1 //UPDATED
+PKT_C2S_BuyItemReq = 0x82, //1 //UPDATED
+PKT_S2C_QueryStatusAns = 0x88, //? //UPDATED
+PKT_C2S_Exit = 0x8F, //1 //UPDATED
+
+PKT_World_SendGameNumber = 0x92, //3 //UPDATED
+PKT_S2C_Ping_Load_Info = 0x95, //4 //UPDATED
+PKT_S2C_UpdateModel = 0x97,
+PKT_S2C_TurretSpawn = 0x9D, //3 UPDATED
+
+PKT_C2S_Surrender = 0xA4, //1 //UPDATED
+//PKT_C2S_GameNumberReq = 0xA6, //1 //DEPRECATED
+PKT_C2S_StatsConfirm = 0xA8, //1 UPDATED
+PKT_S2C_HeroSpawnUnk3 = 0xAE,
+PKT_C2S_Click = 0xAF, //1 //UPDATED
+
+PKT_S2C_HeroSpawnUnk2 = 0xBA,
+PKT_C2S_SynchVersion = 0xBD, //1 //UPDATED
+PKT_C2S_CharLoaded = 0xBE, //1 //UPDATED
+
+PKT_S2C_CharStats = 0xC4, //4 //UPDATED
+PKT_S2C_FogUpdate2 = 0x23, //3 //UPDATED?
+PKT_S2C_LevelPropSpawn = 0xD0, //3 UPDATED
+
+PKT_Batch = 0xFF, //3
};
enum MoveType : uint8
2  gamed/Client.h
View
@@ -27,7 +27,7 @@ struct ClientInfo
keyChecked = false;
name = type = NULL;
ticks = 0;
- skinNo = 0;
+ skinNo = 1;
}
~ClientInfo()
381 gamed/Handlers.cpp
View
@@ -18,6 +18,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdafx.h"
#include "PacketHandler.h"
#include "NetworkListener.h"
+#include <iostream>
+#include <cstdio>
+
+int log(int argc, char* argv[])
+{
+ using namespace std;
+ freopen("output.txt", "w", stdout);
+ freopen("error.txt", "w", stderr);
+ return true;
+
+}
bool PacketHandler::handleNull(HANDLE_ARGS) {
return true;
@@ -37,8 +48,9 @@ bool PacketHandler::handleKeyCheck(ENetPeer *peer, ENetPacket *packet) {
PDEBUG_LOG_LINE(Logging," Enc id: %s\n", buffer);*/
if(userId == keyCheck->userId) {
PDEBUG_LOG_LINE(Logging, " User got the same key as i do, go on!\n");
- peerInfo(peer)->keyChecked = true;
- peerInfo(peer)->userId = userId;
+ peerInfo(peer)->keyChecked = true;
+ peerInfo(peer)->userId = userId;
+ peerInfo(peer)->userId = userId;
} else {
Logging->errorLine(" WRONG KEY, GTFO!!!\n");
return false;
@@ -54,7 +66,7 @@ bool PacketHandler::handleKeyCheck(ENetPeer *peer, ENetPacket *packet) {
bool PacketHandler::handleGameNumber(ENetPeer *peer, ENetPacket *packet) {
WorldSendGameNumber world;
world.gameId = 1;
- strcpy((char *)world.data1, "EUW1");
+ strcpy((char *)world.data1, "NA1");
memcpy(world.data, peerInfo(peer)->name, peerInfo(peer)->nameLen);
return sendPacket(peer, reinterpret_cast<uint8 *>(&world), sizeof(WorldSendGameNumber), CHL_S2C);
}
@@ -63,10 +75,10 @@ bool PacketHandler::handleSynch(ENetPeer *peer, ENetPacket *packet) {
SynchVersion *version = reinterpret_cast<SynchVersion *>(packet->data);
Logging->writeLine("Client version: %s\n", version->version);
SynchVersionAns answer;
- answer.mapId = 1;
+ answer.mapId = 1;
answer.players[0].userId = peerInfo(peer)->userId;
- answer.players[0].skill1 = SPL_Ignite;
- answer.players[0].skill2 = SPL_Flash;
+ answer.players[0].skill1 = SPL_Teleport;
+ answer.players[0].skill2 = SPL_Flash;
return sendPacket(peer, reinterpret_cast<uint8 *>(&answer), sizeof(SynchVersionAns), 3);
}
@@ -78,9 +90,30 @@ bool PacketHandler::handleMap(ENetPeer *peer, ENetPacket *packet) {
playerHero->skinId = peerInfo(peer)->skinNo;
//Builds team info
LoadScreenInfo screenInfo;
- screenInfo.bluePlayerNo = 1;
- screenInfo.redPlayerNo = 0;
- screenInfo.bluePlayerIds[0] = peerInfo(peer)->userId;
+ screenInfo.bluePlayerNo = 10;
+ screenInfo.redPlayerNo = 10;
+ int z = 0;
+ int blueid = 0;
+ int redid = 0;
+ if (z%2 == 0)
+ {
+ screenInfo.bluePlayerIds[blueid] = peerInfo(peer)->userId;
+ printf("New blue player connected, team ID is %i\n", blueid);
+ z = z++;
+ blueid = blueid++;
+ }
+ if (z % 2 != 0)
+ {
+ if (z > 0)
+ {
+ screenInfo.redPlayerIds[redid] = peerInfo(peer)->userId;
+ printf("New red player connected, team ID is %i\n", redid);
+ z = z++;
+ redid = redid++;
+ }
+ }
+ screenInfo.redPlayerIds[0] = peerInfo(peer)->userId;
+ printf("Info: %i\n", peerInfo(peer)->userId);
bool pInfo = sendPacket(peer, reinterpret_cast<uint8 *>(&screenInfo), sizeof(LoadScreenInfo), CHL_LOADING_SCREEN);
//For all players send this info
bool pName = sendPacket(peer, reinterpret_cast<uint8 *>(playerName), playerName->getPacketLength(), CHL_LOADING_SCREEN);
@@ -96,9 +129,9 @@ bool PacketHandler::handleSpawn(ENetPeer *peer, ENetPacket *packet) {
StatePacket2 start(PKT_S2C_StartSpawn);
bool p1 = sendPacket(peer, reinterpret_cast<uint8 *>(&start), sizeof(StatePacket2), CHL_S2C);
printf("Spawning map\r\n");
- HeroSpawn spawn;
+ HeroSpawn spawn;
spawn.netId = peerInfo(peer)->netId;
- spawn.gameId = 0;
+ spawn.gameId = 0; // 0
memcpy(spawn.name, peerInfo(peer)->name, peerInfo(peer)->nameLen);
memcpy(spawn.type, peerInfo(peer)->type, peerInfo(peer)->typeLen);
bool p2 = sendPacket(peer, reinterpret_cast<uint8 *>(&spawn), sizeof(HeroSpawn), CHL_S2C);
@@ -142,6 +175,7 @@ bool PacketHandler::handleSpawn(ENetPeer *peer, ENetPacket *packet) {
sendPacket(peer, reinterpret_cast<uint8 *>(&turretSpawn), sizeof(TurretSpawn), CHL_S2C);
}
//Spawn Props
+
LevelPropSpawn lpSpawn;
lpSpawn.SetProp("LevelProp_Yonkey", "Yonkey");
lpSpawn.header.netId = 0;
@@ -160,18 +194,17 @@ bool PacketHandler::handleSpawn(ENetPeer *peer, ENetPacket *packet) {
lpSpawn.netId = GetNewNetID();
lpSpawn.x = 13374;
lpSpawn.y = 194;
- sendPacket(peer, reinterpret_cast<uint8 *>(&lpSpawn), sizeof(LevelPropSpawn), CHL_S2C);
- lpSpawn.SetProp("LevelProp_ShopMale1", "ShopMale");
- lpSpawn.header.netId = 0;
- lpSpawn.netId = GetNewNetID();
- lpSpawn.x = -99;
- lpSpawn.y = 191;
- sendPacket(peer, reinterpret_cast<uint8 *>(&lpSpawn), sizeof(LevelPropSpawn), CHL_S2C);
+ sendPacket(peer, reinterpret_cast<uint8 *>(&lpSpawn), sizeof(LevelPropSpawn), CHL_S2C);
+ lpSpawn.SetProp("LevelProp_ShopMale1", "ShopMale");
+ lpSpawn.header.netId = 0;
+ lpSpawn.netId = GetNewNetID();
+ lpSpawn.x = -99;
+ lpSpawn.y = 191;
StatePacket end(PKT_S2C_EndSpawn);
bool p3 = sendPacket(peer, reinterpret_cast<uint8 *>(&end), sizeof(StatePacket), CHL_S2C);
BuyItemAns recall;
recall.header.netId = peerInfo(peer)->netId;
- recall.itemId = 2001;
+ recall.itemId = 2001; //2001
recall.slotId = 7;
recall.stack = 1;
bool p4 = sendPacket(peer, reinterpret_cast<uint8 *>(&recall), sizeof(BuyItemAns), CHL_S2C); //activate recall slot
@@ -182,10 +215,16 @@ bool PacketHandler::handleSpawn(ENetPeer *peer, ENetPacket *packet) {
GameTimerUpdate timer3(0.4); //0xC1
sendPacket(peer, reinterpret_cast<uint8 *>(&timer3), sizeof(GameTimerUpdate), CHL_S2C);
//lvl 1 R for elise
- for(int i = 0; i < 4; i++) {
- SpellSet spell(peerInfo(peer)->netId, i, 1);
- sendPacket(peer, reinterpret_cast<uint8 *>(&spell), sizeof(SpellSet), CHL_S2C);
- }
+// for(int i = 0; i < 4; i++) {
+ int i;
+ i = 1;
+ if (i > 0)
+ {
+ i = i++;
+ SpellSet spell(peerInfo(peer)->netId, 1, 1);
+ sendPacket(peer, reinterpret_cast<uint8 *>(&spell), sizeof(SpellSet), CHL_S2C);
+ }
+// }
return p1 & p2 & p3;
}
@@ -199,13 +238,13 @@ bool PacketHandler::handleStartGame(HANDLE_ARGS) {
test.unk1 = 2;
//uint8 p[] = {0xC5, 0x19, 0x00, 0x00, 0x40, 0x00, 0x00, 0x50};
//sendPacket(peer, reinterpret_cast<uint8*>(p), sizeof(p), 3);
- sendPacket(peer, reinterpret_cast<uint8 *>(&test), sizeof(FogUpdate2), 3);
+// sendPacket(peer, reinterpret_cast<uint8 *>(&test), sizeof(FogUpdate2), 3);
//playing around 8-)
- /*
- CharacterStats movement;
- movement.netId = peerInfo(peer)->netId;
- movement.statType = STI_Movement;
- movement.statValue = 800;
+ /*
+ CharacterStats movement;
+ CharacterStats *stats = CharacterStats::create(STI_Movement, 0, 0, 0, 0);
+ stats->netId = peerInfo(peer)->netId;
+ stats->setValue(1, STI_Movement, 800);
sendPacket(peer,reinterpret_cast<uint8*>(&movement),sizeof(movement), 4);*/
return true;
}
@@ -276,19 +315,40 @@ std::vector<MovementVector> readWaypoints(byte *buffer, int coordCount) {
bool PacketHandler::handleMove(ENetPeer *peer, ENetPacket *packet) {
MovementReq *request = reinterpret_cast<MovementReq *>(packet->data);
+ std::vector<MovementVector> vMoves = readWaypoints(&request->moveData, request->vectorNo);
switch(request->type) {
//TODO, Implement stop commands
- case STOP:
- Logging->writeLine("Move stop\n");
- return true;
+ case STOP:
+ {
+ MovementAns *answer = MovementAns::create(request->vectorNo);
+ answer->ok = 1;
+ answer->vectorNo = request->vectorNo;
+ answer->netId = peerInfo(peer)->netId;
+
+ float x = ((request->x) - MAP_WIDTH) / 2;
+
+ float y = ((request->y) - MAP_HEIGHT) / 2;
+
+ for (int i = 0; i < vMoves.size(); i++){
+ answer->getVector(i)->x = x;
+ answer->getVector(i)->y = y;
+
+ }
+
+
+ bool bRet = broadcastPacket(reinterpret_cast<uint8 *>(answer), answer->size(), 4);
+ MovementAns::destroy(answer);
+ return bRet;
+ }
case EMOTE:
Logging->writeLine("Emotion\n");
return true;
}
- std::vector<MovementVector> vMoves = readWaypoints(&request->moveData, request->vectorNo);
Logging->writeLine("Move to(normal): x:%f, y:%f, type: %i, vectorNo: %i\n", request->x, request->y, request->type, vMoves.size());
for(int i = 0; i < vMoves.size(); i++)
- { printf(" Vector %i, x: %f, y: %f\n", i, 2.0 * vMoves[i].x + MAP_WIDTH, 2.0 * vMoves[i].y + MAP_HEIGHT); }
+ {
+ printf(" Vector %i, x: %f, y: %f\n", i, 2.0 * vMoves[i].x + MAP_WIDTH, 2.0 * vMoves[i].y + MAP_HEIGHT);
+ }
MovementAns *answer = MovementAns::create(request->vectorNo);
answer->ok = 1;
answer->vectorNo = request->vectorNo;
@@ -324,128 +384,131 @@ bool PacketHandler::handleQueryStatus(HANDLE_ARGS) {
}
bool PacketHandler::handleChatBoxMessage(HANDLE_ARGS) {
- ChatMessage *message = reinterpret_cast<ChatMessage *>(packet->data);
- //Lets do commands
- if(message->msg == '.') {
- const char *cmd[] = { ".set", ".gold", ".speed", ".health", ".xp", ".ap", ".ad", ".mana", ".model", ".help" };
- //Set field
- if(strncmp(message->getMessage(), cmd[0], strlen(cmd[0])) == 0) {
- uint32 blockNo = atoi(&message->getMessage()[strlen(cmd[0]) + 1]);
- uint32 fieldNo = atoi(&message->getMessage()[strlen(cmd[0]) + 3]);
- float value = (float)atoi(&message->getMessage()[strlen(cmd[0]) + 5]);
- uint32 mask = 1 << abs(((int)fieldNo - 1));
- CharacterStats *stats = CharacterStats::create(blockNo, mask);
- stats->netId = peerInfo(peer)->netId;
- stats->setValue(blockNo, mask, value);
- Logging->writeLine("Setting to %f in block: %i, field: %i\n", value, blockNo, fieldNo);
- sendPacket(peer, reinterpret_cast<uint8 *>(stats), stats->getSize(), CHL_LOW_PRIORITY, 2);
- stats->destroy();
- return true;
- }
- // Set Gold
- if(strncmp(message->getMessage(), cmd[1], strlen(cmd[1])) == 0) {
- float gold = (float)atoi(&message->getMessage()[strlen(cmd[1]) + 1]);
- CharacterStats *stats = CharacterStats::create(FM1_Gold, 0, 0, 0, 0);
- stats->netId = peerInfo(peer)->netId;
- stats->setValue(1, FM1_Gold, gold);
- Logging->writeLine("Set gold to %f\n", gold);
- sendPacket(peer, reinterpret_cast<uint8 *>(stats), stats->getSize(), CHL_LOW_PRIORITY, 2);
- stats->destroy();
- return true;
- }
- /*
-
- //movement
- if(strncmp(message->getMessage(), cmd[2], strlen(cmd[2])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[2])+1]);
-
- charStats.statType = STI_Movement;
- charStats.statValue = data;
- Logging->writeLine("set champ speed to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- //health
- if(strncmp(message->getMessage(), cmd[3], strlen(cmd[3])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[3])+1]);
-
- charStats.statType = STI_Health;
- charStats.statValue = data;
- Logging->writeLine("set champ health to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- //experience
- if(strncmp(message->getMessage(), cmd[4], strlen(cmd[4])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[4])+1]);
-
- charStats.statType = STI_Exp;
- charStats.statValue = data;
- Logging->writeLine("set champ exp to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- //AbilityPower
- if(strncmp(message->getMessage(), cmd[5], strlen(cmd[5])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[5])+1]);
-
- charStats.statType = STI_AbilityPower;
- charStats.statValue = data;
- Logging->writeLine("set champ abilityPower to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- //Attack damage
- if(strncmp(message->getMessage(), cmd[6], strlen(cmd[6])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[6])+1]);
-
- charStats.statType = STI_AttackDamage;
- charStats.statValue = data;
- Logging->writeLine("set champ attack damage to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- //Mana
- if(strncmp(message->getMessage(), cmd[7], strlen(cmd[7])) == 0)
- {
- float data = (float)atoi(&message->getMessage()[strlen(cmd[7])+1]);
-
- charStats.statType = STI_Mana;
- charStats.statValue = data;
- Logging->writeLine("set champ mana to %f\n", data);
- sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
- return true;
- }
- */
- //Model
- if(strncmp(message->getMessage(), cmd[8], strlen(cmd[8])) == 0) {
- std::string sModel = (char *)&message->getMessage()[strlen(cmd[8]) + 1];
- UpdateModel modelPacket(peerInfo(peer)->netId, (char *)sModel.c_str()); //96
- broadcastPacket(reinterpret_cast<uint8 *>(&modelPacket), sizeof(UpdateModel), CHL_S2C);
- return true;
- }
- }
- switch(message->type) {
- case CMT_ALL:
- return broadcastPacket(packet->data, packet->dataLength, CHL_COMMUNICATION);
- break;
- case CMT_TEAM:
- //!TODO make a team class and foreach player in the team send the message
- return sendPacket(peer, packet->data, packet->dataLength, CHL_COMMUNICATION);
- break;
- default:
- Logging->errorLine("Unknown ChatMessageType\n");
- return sendPacket(peer, packet->data, packet->dataLength, CHL_COMMUNICATION);
- break;
- }
- return false;
-}
+ ChatMessage *message = reinterpret_cast<ChatMessage *>(packet->data);
+ //Lets do commands
+
+ if (message->msg == '.') {
+ const char *cmd[] = { ".set", ".gold", ".speed", ".health", ".xp", ".ap", ".ad", ".mana", ".model", ".help" };
+ //Set field
+
+ if (strncmp(message->getMessage(), cmd[0], strlen(cmd[0])) == 0) {
+ uint32 blockNo = atoi(&message->getMessage()[strlen(cmd[0]) + 1]);
+ uint32 fieldNo = atoi(&message->getMessage()[strlen(cmd[0]) + 3]);
+ float value = (float)atoi(&message->getMessage()[strlen(cmd[0]) + 5]);
+ uint32 mask = 1 << abs(((int)fieldNo - 1));
+ CharacterStats *stats = CharacterStats::create(blockNo, mask);
+ stats->netId = peerInfo(peer)->netId;
+ stats->setValue(blockNo, mask, value);
+ Logging->writeLine("Setting to %f in block: %i, field: %i\n", value, blockNo, fieldNo);
+ sendPacket(peer, reinterpret_cast<uint8 *>(stats), stats->getSize(), CHL_LOW_PRIORITY, 2);
+ stats->destroy();
+ return true;
+ }
+ // Set Gold
+ if (strncmp(message->getMessage(), cmd[1], strlen(cmd[1])) == 0) {
+ float gold = (float)atoi(&message->getMessage()[strlen(cmd[1]) + 1]);
+ CharacterStats *stats = CharacterStats::create(FM1_Gold, 0, 0, 0, 0);
+ stats->netId = peerInfo(peer)->netId;
+ stats->setValue(1, FM1_Gold, gold);
+ Logging->writeLine("Set gold to %f\n", gold);
+ sendPacket(peer, reinterpret_cast<uint8 *>(stats), stats->getSize(), CHL_LOW_PRIORITY, 2);
+ stats->destroy();
+ return true;
+ }
+ /*
+ //movement
+ if(strncmp(message->getMessage(), cmd[2], strlen(cmd[2])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[2])+1]);
+
+ CharacterStats.statType = STI_Movement;
+ CharacterStats.statValue = data;
+ Logging->writeLine("set champ speed to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+
+ //health
+ if(strncmp(message->getMessage(), cmd[3], strlen(cmd[3])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[3])+1]);
+
+ CharacterStats.statType = STI_Health;
+ CharacterStats.statValue = data;
+ Logging->writeLine("set champ health to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+ //experience
+ if(strncmp(message->getMessage(), cmd[4], strlen(cmd[4])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[4])+1]);
+
+ CharacterStats.statType = STI_Exp;
+ CharacterStats.statValue = data;
+ Logging->writeLine("set champ exp to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+
+ //AbilityPower
+ if(strncmp(message->getMessage(), cmd[5], strlen(cmd[5])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[5])+1]);
+
+ charStats.statType = STI_AbilityPower;
+ charStats.statValue = data;
+ Logging->writeLine("set champ abilityPower to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+ //Attack damage
+ if(strncmp(message->getMessage(), cmd[6], strlen(cmd[6])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[6])+1]);
+
+ charStats.statType = STI_AttackDamage;
+ charStats.statValue = data;
+ Logging->writeLine("set champ attack damage to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+ //Mana
+ if(strncmp(message->getMessage(), cmd[7], strlen(cmd[7])) == 0)
+ {
+ float data = (float)atoi(&message->getMessage()[strlen(cmd[7])+1]);
+
+ charStats.statType = STI_Mana;
+ charStats.statValue = data;
+ Logging->writeLine("set champ mana to %f\n", data);
+ sendPacket(peer,reinterpret_cast<uint8*>(&charStats),sizeof(charStats), CHL_LOW_PRIORITY, 2);
+ return true;
+ }
+ */
+ //Model
+ if (strncmp(message->getMessage(), cmd[8], strlen(cmd[8])) == 0) {
+ std::string sModel = (char *)&message->getMessage()[strlen(cmd[8]) + 1];
+ UpdateModel modelPacket(peerInfo(peer)->netId, (char *)sModel.c_str()); //96
+ broadcastPacket(reinterpret_cast<uint8 *>(&modelPacket), sizeof(UpdateModel), CHL_S2C);
+ return true;
+ }
+ }
+ switch (message->type) {
+ case CMT_ALL:
+ return broadcastPacket(packet->data, packet->dataLength, CHL_COMMUNICATION);
+ break;
+ case CMT_TEAM:
+ //!TODO make a team class and foreach player in the team send the message
+ return sendPacket(peer, packet->data, packet->dataLength, CHL_COMMUNICATION);
+ break;
+ default:
+ Logging->errorLine("Unknown ChatMessageType\n");
+ return sendPacket(peer, packet->data, packet->dataLength, CHL_COMMUNICATION);
+ break;
+ }
+ return false;
+}
bool PacketHandler::handleSkillUp(HANDLE_ARGS) {
SkillUpPacket *skillUpPacket = reinterpret_cast<SkillUpPacket *>(packet->data);
//!TODO Check if can up skill? :)
@@ -473,19 +536,19 @@ bool PacketHandler::handleEmotion(HANDLE_ARGS) {
switch(emotion->id) {
case 0:
//dance
- Logging->writeLine("dance");
+ Logging->writeLine("dance\n");
break;
case 1:
//taunt
- Logging->writeLine("taunt");
+ Logging->writeLine("taunt\n");
break;
case 2:
//laugh
- Logging->writeLine("laugh");
+ Logging->writeLine("laugh\n");
break;
case 3:
//joke
- Logging->writeLine("joke");
+ Logging->writeLine("joke\n");
break;
}
EmotionResponse response;
35 gamed/NetworkListener.cpp
View
@@ -18,6 +18,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdafx.h"
#include "NetworkListener.h"
#include "Log.h"
+#include <string>
+#define NAME "%id%"
+#define CHAMP "%ch%"
uint32 GetNewNetID() {
static DWORD dwStart = 0x40000019;
@@ -63,40 +66,38 @@ void NetworkListener::netLoop()
{
ENetEvent event;
- while(enet_host_service(_server, & event, 10) >= 0 && _isAlive)
+ while (enet_host_service(_server, &event, 10) >= 0 && _isAlive)
{
switch (event.type)
{
- case ENET_EVENT_TYPE_CONNECT:
- Logging->writeLine("A new client connected: %i.%i.%i.%i:%i \n", event.peer->address.host & 0xFF, (event.peer->address.host >> 8) & 0xFF, (event.peer->address.host >> 16) & 0xFF, (event.peer->address.host >> 24) & 0xFF, event.peer->address.port);
-
- /* Set some defaults */
- event.peer->mtu = PEER_MTU;
-
- event.peer->data = new ClientInfo();
- peerInfo(event.peer)->setName("Test");
- peerInfo(event.peer)->setType("Teemo");
- peerInfo(event.peer)->skinNo = 6;
- peerInfo(event.peer)->netId = GetNewNetID();
-
+ case ENET_EVENT_TYPE_CONNECT:
+
+ Logging->writeLine("A new client connected: %i.%i.%i.%i:%i \n", event.peer->address.host & 0xFF, (event.peer->address.host >> 8) & 0xFF, (event.peer->address.host >> 16) & 0xFF, (event.peer->address.host >> 24) & 0xFF, event.peer->address.port);
+ /* Set some defaults */
+ event.peer->mtu = PEER_MTU;
+ event.peer->data = new ClientInfo();
+ peerInfo(event.peer)->setName("coolman");
+ peerInfo(event.peer)->setType("Braum");
+ peerInfo(event.peer)->skinNo = 0;
+ peerInfo(event.peer)->netId = GetNewNetID();
break;
case ENET_EVENT_TYPE_RECEIVE:
- if(!_handler->handlePacket(event.peer, event.packet,event.channelID))
+ if (!_handler->handlePacket(event.peer, event.packet, event.channelID))
{
//enet_peer_disconnect(event.peer, 0);
}
/* Clean up the packet now that we're done using it. */
- enet_packet_destroy (event.packet);
- break;
+ enet_packet_destroy(event.packet);
+ break;
case ENET_EVENT_TYPE_DISCONNECT:
Logging->writeLine("Client disconnected: %i.%i.%i.%i:%i \n", event.peer->address.host & 0xFF, (event.peer->address.host >> 8) & 0xFF, (event.peer->address.host >> 16) & 0xFF, (event.peer->address.host >> 24) & 0xFF, event.peer->address.port);
/* Cleanup */
delete (ClientInfo*)event.peer->data;
- break;
+ break;
}
}
}
38 gamed/Packets.h
View
@@ -81,8 +81,8 @@ typedef struct _SynchVersionAns {
_SynchVersionAns() {
header.cmd = PKT_S2C_SynchVersion;
ok = ok2 = 1;
- memcpy(version, "Version 4.5.0.264 [PUBLIC]", 27);
- memcpy(gameMode, "CLASSIC", 8);
+ memcpy(version, "SANDBOX WOO", 27);
+ memcpy(gameMode, "COOLMAN", 8); //8
memset(zero, 0, 2232);
end1 = 0xE2E0;
end2 = 0xA0;
@@ -91,11 +91,11 @@ typedef struct _SynchVersionAns {
PacketHeader header;
uint8 ok;
uint32 mapId;
- SynchBlock players[12];
+ SynchBlock players[20];
uint8 version[27]; //Ending zero so size 26+0x00
uint8 ok2; //1
uint8 unknown[228]; //Really strange shit
- uint8 gameMode[8];
+ uint8 gameMode[1]; // 8
uint8 zero[2232];
uint16 end1; //0xE2E0
uint8 end2; //0xA0 || 0x08
@@ -117,16 +117,16 @@ typedef struct _LoadScreenInfo {
//Zero this complete buffer
memset(this, 0, sizeof(_LoadScreenInfo));
cmd = PKT_S2C_LoadScreenInfo;
- blueMax = redMax = 6;
+ blueMax = redMax = 10;
}
uint8 cmd;
uint32 blueMax;
uint32 redMax;
- uint64 bluePlayerIds[6]; //Team 1, 6 players max
- uint8 blueData[144];
- uint64 redPlayersIds[6]; //Team 2, 6 players max
- uint8 redData[144];
+ uint64 bluePlayerIds[10]; //Team 1, 10 players max
+ uint8 blueData[400];
+ uint64 redPlayerIds[10]; //Team 2, 10 players max
+ uint8 redData[400];
uint32 bluePlayerNo;
uint32 redPlayerNo;
} LoadScreenInfo;
@@ -141,8 +141,8 @@ typedef struct _LoadScreenPlayer {
_LoadScreenPlayer *packet = (_LoadScreenPlayer *)buf;
packet->cmd = cmd;
packet->length = size;
- packet->userId = 0;
- packet->skinId = 0;
+ packet->userId = 1;
+ packet->skinId = 0;
memcpy(packet->getDescription(), str, packet->length);
return packet;
}
@@ -488,7 +488,7 @@ struct ChatMessage {
typedef struct _UpdateModel {
_UpdateModel(DWORD netID, const char *szModel) {
ZeroMemory(this, sizeof(_UpdateModel));
- header.cmd = (PacketCmd)0x96;
+ header.cmd = (PacketCmd)0x97;
header.netId = netID;
id = netID & ~0x40000000;
bOk = 1;
@@ -548,7 +548,7 @@ struct HeroSpawn {
} ;
struct HeroSpawn2 {
HeroSpawn2() {
- header.cmd = (PacketCmd)0xB9;
+ header.cmd = (PacketCmd)0xBA;
ZeroMemory(unk, 30);
unk[15] = 0x80;
unk[16] = 0x3F;
@@ -571,10 +571,10 @@ struct HeroSpawn2 {
};
struct HeroSpawn3 {
HeroSpawn3() {
- header.cmd = (PacketCmd)0xAD;
+ header.cmd = (PacketCmd)0xAE;
unk = 0;
- health = 1337;
- maxHealth = 666;
+ health = 1000;
+ maxHealth = 1000;
}
PacketHeader header;
@@ -671,9 +671,9 @@ typedef struct _SkillUpPacket {
typedef struct _SkillUpResponse {
_SkillUpResponse() {
header.cmd = PKT_S2C_SkillUp;
- skill = 0;
- level = 0;
- pointsLeft = 0;
+ skill = 1;
+ level = 1;
+ pointsLeft = 1;
}
PacketHeader header;
uint8 skill;
2  gamed/main.cpp
View
@@ -4,7 +4,7 @@ Copyright (C) 2012 Intline9 <Intline9@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
+the Free Software Foundation, either version 3 of the License, orlth
(at your option) any later version.
This program is distributed in the hope that it will be useful,
7 local.bat
View
@@ -1,4 +1,9 @@
@echo off
+set /P id=Enter username: %=%
+set /P ch=Enter champion: %=%
+set /P ip=Enter IP: %=%
+
+pause
setlocal enabledelayedexpansion
echo -----------------------
echo IntWars Solo Launcher
@@ -124,7 +129,7 @@ set lolver=!v0!.!v1!.!v2!.!v3!
@cd /d "!RADS_PATH!\solutions\lol_game_client_sln\releases\!lolver!\deploy"
if exist "League of Legends.exe" (
- @start "" "League of Legends.exe" "8394" "LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 47917791"
+ @start "" "League of Legends.exe" "8394" "LoLLauncher.exe" "" "%ip% 5119 17BLOhi6KZsTtldTsizvHg== 47917791"
goto exit
)
:cannotFind
137 localz.bat
View
@@ -0,0 +1,137 @@
+@echo off
+
+setlocal enabledelayedexpansion
+echo -----------------------
+echo IntWars Solo Launcher
+echo -----------------------
+set RADS_PATH=
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\Classes\VirtualStore\MACHINE\SOFTWARE\Wow6432Node\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\Classes\VirtualStore\MACHINE\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\Software\Wow6432Node\Riot Games\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\Software\Wow6432Node\Riot Games\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKCU\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+FOR /f "usebackq skip=2 tokens=3,4,5,6,7,8,9" %%i in (`%systemroot%\system32\REG.EXE QUERY "HKLM\SOFTWARE\RIOT GAMES\RADS" /v "LOCALROOTFOLDER"`) DO (
+ SET RADS_PATH=%%i %%j %%k %%l %%m %%n %%o
+ goto runApp
+)
+cls
+echo ===================
+echo Finding other LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKLM\Software /V /F "LocalRootFolder" /S /E ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKLM\Software /s ^| %systemroot%\system32\find.exe "LocalRootFolder" ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKCU\Software /V /F "LocalRootFolder" /S /E ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+echo ===================
+echo Finding another LoL directory path again..
+echo ===================
+for /f "Tokens=3,4,5,6,7,8,9,10,11,12,13,14,15" %%a in ('%systemroot%\system32\REG.EXE Query HKCU\Software /s ^| %systemroot%\system32\find.exe "LocalRootFolder" ^| %systemroot%\system32\find.exe "RADS"') do (
+ set RADS_PATH=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m
+ goto runApp
+)
+cls
+goto cannotFind
+:runApp
+set RADS_PATH=%RADS_PATH:/=\%
+@cd /d "%RADS_PATH%\solutions\lol_game_client_sln\releases"
+
+set init=0
+set v0=0&set v1=0&set v2=0&set v3=0
+for /f "delims=" %%F in ('dir * /b ^| findstr ^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$') do (
+ for /F "tokens=1,2,3,4 delims=." %%i in ("%%F") do (
+ if !init! equ 0 ( set init=1&set flag=1 ) else (
+ set flag=0
+
+ if %%i gtr !v0! ( set flag=1 ) else (
+ if %%j gtr !v1! ( set flag=1 ) else (
+ if %%k gtr !v2! ( set flag=1 ) else (
+ if %%l gtr !v3! ( set flag=1 )
+ )
+ )
+ )
+ )
+
+ if !flag! gtr 0 (
+ set v0=%%i&set v1=%%j&set v2=%%k&set v3=%%l
+ )
+ )
+)
+
+if !init! equ 0 goto cannotFind
+set lolver=!v0!.!v1!.!v2!.!v3!
+
+@cd /d "!RADS_PATH!\solutions\lol_game_client_sln\releases\!lolver!\deploy"
+if exist "League of Legends.exe" (
+ @start "" "League of Legends.exe" "8394" "LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 47917791"
+ goto exit
+)
+:cannotFind
+echo ===================
+echo Cannot find LoL path automatically :(
+echo ===================
+@pause
+goto exit
+:exit
4 win/VC100/enet-1.2.5.vcxproj
View
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@@ -19,10 +19,12 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
4 win/VC100/gamed.vcxproj
View
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@@ -19,10 +19,12 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
4 win/VC100/intlib.vcxproj
View
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@@ -19,10 +19,12 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
Something went wrong with that request. Please try again.