18 Commits
Author SHA1 Message Date
NaNandpieeebot 4b0520c938 fix PS4 networking support (#20)
gonna mark this a WIP till i test more with large worlds and achievements issues i dont wanna break the PS3 and other builds by enabling it freely,

ideally i can get it to work without it

also i wanna remove the GetLocalIPv4Interfaces auto discovery feature i just did that cause i had so many local networks it got confusing, will remove on Final PR editReviewed-on: #20

Co-authored-by: NaN <nan@str1k3r.xyz>
2026-08-04 22:49:46 +00:00
2840b7620b fix psvita being in trial mode + play game button freezing the entire game (#22)
fixed lock crash and enabled full mode for vita

---------

Co-authored-by: 552eden <552eden@gmail.com>
Reviewed-on: #22
Co-authored-by: ubergamer-pie <16+ubergamer-pie@noreply.localhost>
2026-08-04 22:19:29 +00:00
5451249347 fixed vita startup crash by guarding commerce calls (#21)
Commerce calls are now guarded with `#elif defined(__PSVITA__) && !defined(DISABLE_PSN)`

---------

Co-authored-by: 552eden <552eden@gmail.com>
Reviewed-on: #21
Co-authored-by: ubergamer-pie <16+ubergamer-pie@noreply.localhost>
2026-08-04 21:41:13 +00:00
str1k3r de8bf25fbe Merge branch 'main' into networking 2026-08-04 09:39:41 -04:00
pieeebot 64e95393c8 fix ps3 compile errors 2026-08-04 07:40:52 +03:00
pieeebot ea3621971f psvita networking (Experimental) 2026-08-04 07:04:38 +03:00
pieeebot ce3e83039d rename network scripts 2026-08-03 04:18:33 +03:00
pieeebot 42f09f93e5 Fix Windows64 720p crash 2026-08-03 04:11:11 +03:00
pieeebot 9f8dab8ebb Merge branch 'main' into networking 2026-08-03 02:03:23 +03:00
pieeebot 5ebaab0ac9 Fix Shadps4 crash 2026-08-02 23:05:25 +03:00
pieeebot 92209cf909 add ps4 support 2026-08-02 22:06:27 +03:00
pieeebot 94f1cefcf9 Merge branch 'main' into networking 2026-08-02 18:58:23 +03:00
pieeebot e254228cf5 update lcemp networking 2026-08-02 03:33:11 +03:00
pieeebot b87d044cf0 fix crash when opening loadorjoin a second time 2026-08-01 22:56:12 +03:00
pieeebot 01abe05b18 attempt at trying to get XB360 to work 2026-08-01 06:15:37 +03:00
pieeebot 2170209e26 Merge branch 'main' into networking 2026-08-01 02:04:05 +03:00
pieeebot 991369547a fix compile error 2026-07-31 22:35:05 +03:00
pieeebot dbd90a75c9 add lcemp networking + ps3 support
YES I KNOW ITS GARBAGE, THATS WHY ITS NOT ON MAIN

ILL FIX IT UP IN FUTURE COMMITS THEN MERGE TO MAIN
2026-07-31 22:08:30 +03:00
129 changed files with 5014 additions and 1490 deletions
+5 -3
View File
@@ -16,7 +16,7 @@ on:
jobs:
build:
runs-on: windows-2022
runs-on: sdk-orbis
strategy:
matrix:
@@ -27,6 +27,7 @@ jobs:
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
@@ -48,7 +49,8 @@ jobs:
Copy-Item "./ORBIS_${{ inputs.configuration }}/Minecraft.Client.pkg" staging/LCEOrbis.pkg
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+6 -4
View File
@@ -16,7 +16,7 @@ on:
jobs:
build:
runs-on: windows-2022
runs-on: sdk-ps3
strategy:
matrix:
@@ -27,6 +27,7 @@ jobs:
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
@@ -37,7 +38,7 @@ jobs:
/m
- name: Zip Build
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ inputs.configuration }}/* "-x!*.a" "-x!*.pch" "-x!*.elf" "-x!*.self" "-x!*.map"
- name: Stage artifacts
run: |
@@ -45,7 +46,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+5 -3
View File
@@ -16,7 +16,7 @@ on:
jobs:
build:
runs-on: windows-2022
runs-on: sdk-psvita
strategy:
matrix:
@@ -27,6 +27,7 @@ jobs:
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
@@ -46,7 +47,8 @@ jobs:
Copy-Item "./PSVita_${{ inputs.configuration }}/Minecraft.Client.vpk" staging/LCEPSVita.vpk
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+24 -10
View File
@@ -25,19 +25,31 @@ jobs:
build:
needs: validate
runs-on: windows-2022
strategy:
matrix:
configuration: [Release]
platform: [PS3, Windows64, Orbis] #[PS3, PSVita, Xbox360, ORBIS, Windows64]
platform: [Windows64, Xbox360, Orbis, PSVita, PS3]
include:
- platform: Windows64
sdk_label: windows-2022 # str1k3r - can run on any runner
- platform: Xbox360
sdk_label: sdk-xbox360
- platform: Orbis
sdk_label: sdk-orbis
- platform: PSVita
sdk_label: sdk-psvita
- platform: PS3
sdk_label: sdk-ps3
runs-on: [windows-2022, "${{ matrix.sdk_label }}"]
steps:
- name: Checkout Repository
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
lfs: false
clean: false
lfs: false
- name: Build Cafeberry
run: |
@@ -57,7 +69,7 @@ jobs:
} elseif ("${{ matrix.platform }}" -eq "PSVita") {
7z a -r "LCEPSVita.zip" "./PSVita_${{ matrix.configuration }}/PSVITA_GAME/*"
} elseif ("${{ matrix.platform }}" -eq "PS3") {
7z a -r "LCEPS3.zip" "./PS3_${{ matrix.configuration }}/PS3_GAME/*"
7z a -r "LCEPS3.zip" "./PS3_${{ matrix.configuration }}/*" "-x!*.a" "-x!*.pch" "-x!*.elf" "-x!*.self" "-x!*.map"
} elseif ("${{ matrix.platform }}" -eq "Xbox360") {
7z a -r "LCEXbox360.zip" "./X360_${{ matrix.configuration }}/*" "-x!*.pdb" "-x!*.pch" "-x!*.xdb"
} else {
@@ -78,17 +90,18 @@ jobs:
}
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
compression-level: 0
release:
needs: build
runs-on: windows-2022
steps:
- name: Download all build artifacts
uses: https://github.com/actions/download-artifact@v3
uses: https://github.com/christopherHX/gitea-download-artifact@v4
with:
path: downloaded
@@ -110,9 +123,10 @@ jobs:
}
$delimiter = "EOF_$([System.Guid]::NewGuid().ToString('N'))"
"description<<$delimiter" | Out-File -FilePath $env:GITHUB_OUTPUT -Append -Encoding utf8NoBOM
$body | Out-File -FilePath $env:GITHUB_OUTPUT -Append -Encoding utf8NoBOM
"$delimiter" | Out-File -FilePath $env:GITHUB_OUTPUT -Append -Encoding utf8NoBOM
$content = "description<<$delimiter`n$body`n$delimiter`n"
$utf8NoBom = New-Object System.Text.UTF8Encoding($false)
[System.IO.File]::AppendAllText($env:GITHUB_OUTPUT, $content, $utf8NoBom)
- name: Publish Release
uses: akkuman/gitea-release-action@v1
+4 -2
View File
@@ -27,6 +27,7 @@ jobs:
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
@@ -46,7 +47,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+5 -3
View File
@@ -16,7 +16,7 @@ on:
jobs:
build:
runs-on: windows-2022
runs-on: sdk-xbox360
strategy:
matrix:
@@ -27,6 +27,7 @@ jobs:
uses: https://github.com/actions/checkout@v4
with:
fetch-depth: 1
clean: false
lfs: false
- name: Build Cafeberry
@@ -48,7 +49,8 @@ jobs:
Copy-Item LCE${{ matrix.platform }}.zip staging/
- name: Upload artifacts
uses: https://github.com/actions/upload-artifact@v3
uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: build-${{ matrix.platform }}
path: staging/*
path: staging/*
compression-level: 0
+20 -28
View File
@@ -1,44 +1,35 @@
/*Debug
/*Release
/*ContentPackage
/*ContentPackage_NO_TU
/*ContentPackage_SYMBOLS
/*ReleaseForArt
.vs
/x64
/ipch
.vs/
.vscode
/*Debug
/*Release*
/*ContentPackage*
# Minecraft.Client
/Minecraft.Client/x64/
/Minecraft.Client/x64
/Minecraft.Client/x64_*
/Minecraft.Client/*Debug
/Minecraft.Client/*Release
/Minecraft.Client/*ContentPackage
/Minecraft.Client/*ContentPackage_NO_TU
/Minecraft.Client/*ContentPackage_SYMBOLS
/Minecraft.Client/*ReleaseForArt
/Minecraft.Client/*Release*
/Minecraft.Client/*ContentPackage*
/Minecraft.Client/Windows64/GameHDD
# Minecraft.world
/Minecraft.World/x64/
/Minecraft.World/x64
/Minecraft.World/x64_*
/Minecraft.World/*Debug
/Minecraft.World/*Release
/Minecraft.World/*ContentPackage
/Minecraft.World/*ContentPackage_NO_TU
/Minecraft.World/*ContentPackage_SYMBOLS
/Minecraft.World/*ReleaseForArt
/Minecraft.World/*Release*
/Minecraft.World/*ContentPackage*
# PS3 SPU
/Minecraft.Client/PS3/SPU_Tasks/objFiles/
/Minecraft.Client/PS3/SPU_Tasks/Texture_blit/PS3*
/Minecraft.Client/PS3/SPU_Tasks/LevelRenderer_FindNearestChunk/PS3*
/Minecraft.Client/PS3/SPU_Tasks/LevelRenderer_cull/PS3*
/Minecraft.Client/PS3/SPU_Tasks/CompressedTileStorage_compress/PS3*
/Minecraft.Client/PS3/SPU_Tasks/CompressedTile/PS3*
/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PS3*
# PS3 SPU Tasks
/Minecraft.Client/PS3/SPU_Tasks/objFiles
/Minecraft.Client/PS3/SPU_Tasks/*/PS3*
/Minecraft.Client/PS3/SPU_Tasks/*/Debug
/Minecraft.Client/PS3/SPU_Tasks/*/Release
/Minecraft.Client/PS3/SPU_Tasks/*/ContentPackage
# Misc
*.ppu.o
*.pkg
/*.gp4p
/*.vpk
@@ -46,4 +37,5 @@
*-app
*.sdf
*.opensdf
*.v11.suo
*.v11.suo
*.vcxproj.user
+66 -2
View File
@@ -50,11 +50,16 @@
#else
#include "Common\UI\UI.h"
#endif
#ifdef __PS3__
#if defined __PS3__ && !defined DISABLE_PSN
#include "PS3/Network/SonyVoiceChat.h"
#endif
#include "DLCTexturePack.h"
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
#include "Xbox\Network\NetworkPlayerXbox.h"
#include "Common\Network\PlatformNetworkManager.h"
#endif
#ifdef _DURANGO
#include "..\Minecraft.World\DurangoStats.h"
#include "..\Minecraft.World\GenericStats.h"
@@ -781,6 +786,32 @@ void ClientConnection::handleAddPlayer(shared_ptr<AddPlayerPacket> packet)
player->m_displayName = player->name;
#endif
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
{
PlayerUID pktXuid = player->getXuid();
const PlayerUID WIN64_XUID_BASE = (PlayerUID)0xe000d45248242f2e;
if (pktXuid >= WIN64_XUID_BASE && pktXuid < WIN64_XUID_BASE + MINECRAFT_NET_MAX_PLAYERS)
{
BYTE smallId = (BYTE)(pktXuid - WIN64_XUID_BASE);
INetworkPlayer *np = g_NetworkManager.GetPlayerBySmallId(smallId);
if (np != NULL)
{
NetworkPlayerXbox *npx = (NetworkPlayerXbox *)np;
IQNetPlayer *qp = npx->GetQNetPlayer();
if (qp != NULL)
{
wcsncpy(qp->m_gamertag, packet->name.c_str(), 31);
qp->m_gamertag[31] = L'\0';
if (g_NetworkManager.IsHost())
{
g_NetworkManager.UpdateAndSetGameSessionData();
}
}
}
}
}
#endif
// printf("\t\t\t\t%d: Add player\n",packet->id,packet->yRot);
int item = packet->carriedItem;
@@ -923,6 +954,39 @@ void ClientConnection::handleMoveEntitySmall(shared_ptr<MoveEntityPacketSmall> p
void ClientConnection::handleRemoveEntity(shared_ptr<RemoveEntitiesPacket> packet)
{
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
if (!g_NetworkManager.IsHost())
{
for (int i = 0; i < packet->ids.length; i++)
{
shared_ptr<Entity> entity = getEntity(packet->ids[i]);
if (entity != NULL && entity->GetType() == eTYPE_PLAYER)
{
shared_ptr<Player> player = dynamic_pointer_cast<Player>(entity);
if (player != NULL)
{
PlayerUID xuid = player->getXuid();
INetworkPlayer *np = g_NetworkManager.GetPlayerByXuid(xuid);
if (np != NULL)
{
NetworkPlayerXbox *npx = (NetworkPlayerXbox *)np;
IQNetPlayer *qp = npx->GetQNetPlayer();
if (qp != NULL)
{
extern CPlatformNetworkManagerStub *g_pPlatformNetworkManager;
g_pPlatformNetworkManager->NotifyPlayerLeaving(qp);
qp->m_smallId = 0;
qp->m_isRemote = false;
qp->m_isHostPlayer = false;
qp->m_gamertag[0] = 0;
qp->SetCustomDataValue(0);
}
}
}
}
}
}
#endif
for (int i = 0; i < packet->ids.length; i++)
{
level->removeEntity(packet->ids[i]);
@@ -1941,7 +2005,7 @@ void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
isAtLeastOneFriend = TRUE;
cantPlayContentRestricted= FALSE;
#if ( defined __PS3__ || defined __ORBIS__ || defined __PSVITA__)
#if !defined DISABLE_PSN && ( defined __PS3__ || defined __ORBIS__ || defined __PSVITA__)
if(!g_NetworkManager.IsHost() && !app.GetGameHostOption(eGameHostOption_FriendsOfFriends))
{
+1 -1
View File
@@ -162,7 +162,7 @@ MOJANG_DATA;
typedef struct
{
eDLCContentType eDLCType;
#if defined( __PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined( __PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
char chImageURL[256];//SCE_NP_COMMERCE2_URL_LEN
#else
-8
View File
@@ -4,14 +4,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CommonMedia", "CommonMedia.vcxproj", "{21BBD32C-AF5E-4741-8B80-3B73FC0D0F27}"
EndProject
Global
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 2
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = http://tfs_server:8080/tfs/storiespark
SccProjectUniqueName0 = CommonMedia.vcxproj
SccLocalPath0 = .
SccLocalPath1 = .
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
+28 -6
View File
@@ -4419,7 +4419,7 @@ int CMinecraftApp::EthernetDisconnectReturned(void *pParam,int iPad,const C4JSto
// 4J-PB - turn off the PSN store icon just in case this happened when we were in one of the DLC menus
#ifdef __ORBIS__
sceNpCommerceHidePsStoreIcon();
#elif defined __PSVITA__
#elif defined(__PSVITA__) && !defined(DISABLE_PSN)
app.GetCommerce()->HidePsStoreIcon();
#endif
app.SetAction(iPad,eAppAction_EthernetDisconnectedReturned_Menus);
@@ -5094,6 +5094,9 @@ void CMinecraftApp::NotificationsCallback(LPVOID pParam,DWORD dwNotification, un
#if defined __PS3__ || defined __PSVITA__ || defined __ORBIS__
int CMinecraftApp::MustSignInFullVersionPurchaseReturned(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef __PS3__
@@ -5106,11 +5109,15 @@ int CMinecraftApp::MustSignInFullVersionPurchaseReturned(void *pParam,int iPad,C
}
return 0;
#endif
}
#if defined __PS3__ || defined __PSVITA__ || defined __ORBIS__
int CMinecraftApp::MustSignInFullVersionPurchaseReturnedExitTrial(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef __PS3__
@@ -5126,6 +5133,7 @@ int CMinecraftApp::MustSignInFullVersionPurchaseReturnedExitTrial(void *pParam,i
app.SetAction(iPad,eAppAction_ExitWorldTrial);
return 0;
#endif
}
#endif
@@ -6761,7 +6769,7 @@ wstring CMinecraftApp::GetIconReplacement(unsigned int uiIcon)
#endif
}
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
unordered_map<PlayerUID, MOJANG_DATA *, PlayerUID::Hash> CMinecraftApp::MojangData;
unordered_map<int, char * > CMinecraftApp::DLCTextures_PackID;
unordered_map<string, DLC_INFO * > CMinecraftApp::DLCInfo;
@@ -6772,6 +6780,12 @@ unordered_map<int, wstring > CMinecraftApp::DLCTextures_PackID; // for mash-up
//unordered_map<ULONGLONG,DLC_INFO * > CMinecraftApp::DLCInfo_Trial; // full offerid, dlc_info
unordered_map<wstring,DLC_INFO * > CMinecraftApp::DLCInfo_Full; // full offerid, dlc_info
unordered_map<wstring, wstring > CMinecraftApp::DLCInfo_SkinName; // skin name, full offer id
#elif defined(DISABLE_PSN)
unordered_map<PlayerUID, MOJANG_DATA *, PlayerUID::Hash> CMinecraftApp::MojangData;
unordered_map<int, ULONGLONG > CMinecraftApp::DLCTextures_PackID;
unordered_map<ULONGLONG, DLC_INFO * > CMinecraftApp::DLCInfo_Trial;
unordered_map<ULONGLONG, DLC_INFO * > CMinecraftApp::DLCInfo_Full;
unordered_map<wstring, ULONGLONG > CMinecraftApp::DLCInfo_SkinName;
#else
unordered_map<PlayerUID, MOJANG_DATA *> CMinecraftApp::MojangData;
unordered_map<int, ULONGLONG > CMinecraftApp::DLCTextures_PackID;
@@ -6854,7 +6868,7 @@ HRESULT CMinecraftApp::RegisterConfigValues(WCHAR *pType, int iValue)
return hr;
}
#if (defined _XBOX || defined _WINDOWS64)
#if (defined _XBOX || defined _WINDOWS64 || defined DISABLE_PSN)
HRESULT CMinecraftApp::RegisterDLCData(WCHAR *pType, WCHAR *pBannerName, int iGender, __uint64 ullOfferID_Full, __uint64 ullOfferID_Trial, WCHAR *pFirstSkin, unsigned int uiSortIndex, int iConfig, WCHAR *pDataFile)
{
HRESULT hr=S_OK;
@@ -6871,12 +6885,20 @@ HRESULT CMinecraftApp::RegisterDLCData(WCHAR *pType, WCHAR *pBannerName, int iGe
// ignore the names if we don't recognize them
if(pBannerName!=L"")
{
#ifdef __PSVITA__
wcsncpy_s( pDLCData->wchBanner, MAX_BANNERNAME_SIZE, pBannerName, MAX_BANNERNAME_SIZE);
#else
wcsncpy_s( pDLCData->wchBanner, pBannerName, MAX_BANNERNAME_SIZE);
#endif
}
if(pDataFile[0]!=0)
{
#ifdef __PSVITA__
wcsncpy_s( pDLCData->wchDataFile, MAX_BANNERNAME_SIZE, pDataFile, MAX_BANNERNAME_SIZE);
#else
wcsncpy_s( pDLCData->wchDataFile, pDataFile, MAX_BANNERNAME_SIZE);
#endif
}
#endif
@@ -7046,7 +7068,7 @@ HRESULT CMinecraftApp::RegisterDLCData(char *pchDLCName, unsigned int uiSortInde
#if defined( __PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined( __PS3__) || defined(__ORBIS__) || defined(__PSVITA__))
bool CMinecraftApp::GetDLCFullOfferIDForSkinID(const wstring &FirstSkin,ULONGLONG *pullVal)
{
AUTO_VAR(it, DLCInfo_SkinName.find(FirstSkin));
@@ -7314,7 +7336,7 @@ DLC_INFO *CMinecraftApp::GetDLCInfoForProductName(WCHAR *pwchProductName)
return NULL;
}
#elif defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#elif !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
#else
DLC_INFO *CMinecraftApp::GetDLCInfoForFullOfferID(ULONGLONG ullOfferID_Full)
@@ -9425,7 +9447,7 @@ byteArray CMinecraftApp::getArchiveFile(const wstring &filename)
// DLC
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
int CMinecraftApp::GetDLCInfoCount()
{
return (int)DLCInfo.size();
+9 -3
View File
@@ -594,7 +594,7 @@ public:
MOJANG_DATA *GetMojangDataForXuid(PlayerUID xuid);
static HRESULT RegisterConfigValues(WCHAR *pType, int iValue);
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__))
HRESULT RegisterDLCData(char *pchDLCName, unsigned int uiSortIndex, char *pchImageURL);
bool GetDLCFullOfferIDForSkinID(const wstring &FirstSkin,ULONGLONG *pullVal);
DLC_INFO *GetDLCInfoForTrialOfferID(ULONGLONG ullOfferID_Trial);
@@ -631,7 +631,7 @@ private:
std::vector <SCreditTextItemDef *> vDLCCredits;
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
static unordered_map<PlayerUID,MOJANG_DATA *, PlayerUID::Hash > MojangData;
static unordered_map<int, char * > DLCTextures_PackID; // for mash-up packs & texture packs
static unordered_map<string,DLC_INFO * > DLCInfo;
@@ -642,6 +642,12 @@ private:
//static unordered_map<wstring,DLC_INFO * > DLCInfo_Trial; // full offerid, dlc_info
static unordered_map<wstring,DLC_INFO * > DLCInfo_Full; // full offerid, dlc_info
static unordered_map<wstring, wstring > DLCInfo_SkinName; // skin name, full offer id
#elif defined(DISABLE_PSN)
static unordered_map<PlayerUID,MOJANG_DATA *, PlayerUID::Hash > MojangData;
static unordered_map<int, ULONGLONG > DLCTextures_PackID; // for mash-up packs & texture packs
static unordered_map<ULONGLONG,DLC_INFO * > DLCInfo_Trial; // full offerid, dlc_info
static unordered_map<ULONGLONG,DLC_INFO * > DLCInfo_Full; // full offerid, dlc_info
static unordered_map<wstring, ULONGLONG > DLCInfo_SkinName; // skin name, full offer id
#else
static unordered_map<PlayerUID,MOJANG_DATA * > MojangData;
static unordered_map<int, ULONGLONG > DLCTextures_PackID; // for mash-up packs & texture packs
@@ -772,7 +778,7 @@ public:
void ClearTMSPPFilesRetrieved();
unsigned int AddTMSPPFileTypeRequest(eDLCContentType eType, bool bPromote=false);
int GetDLCInfoTexturesOffersCount();
#if defined( __PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined( __PS3__) || defined(__ORBIS__) || defined(__PSVITA__))
DLC_INFO *GetDLCInfo(int iIndex);
DLC_INFO *GetDLCInfo(char *);
DLC_INFO *GetDLCInfoFromTPackID(int iTPID);
@@ -9,7 +9,7 @@ const wstring LeaderboardManager::filterNames[eNumFilterModes] =
L"Friends", L"MyScore", L"TopRank"
};
#ifdef __PS3__ // str1k3r - only PS3 needs this, also this wasnt in the leak?
#if defined(__PS3__) && !defined(_CONTENT_PACKAGE) // str1k3r - only PS3 needs this, also this wasnt in the leak?
LeaderboardManager *LeaderboardManager::m_instance = NULL;
#endif
@@ -66,9 +66,9 @@ void CGameNetworkManager::Initialise()
ServerStoppedCreate( false );
ServerReadyCreate( false );
int flagIndexSize = LevelRenderer::getGlobalChunkCount() / (Level::maxBuildHeight / 16); // dividing here by number of renderer chunks in one column
#ifdef _XBOX
#if !defined(_DISABLE_XBLIVE) && defined _XBOX
s_pPlatformNetworkManager = new CPlatformNetworkManagerXbox();
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
#elif !defined(DISABLE_PSN) && (defined __PS3__ || defined __ORBIS__ || defined __PSVITA__)
s_pPlatformNetworkManager = new CPlatformNetworkManagerSony();
#elif defined _DURANGO
s_pPlatformNetworkManager = new CPlatformNetworkManagerDurango();
@@ -167,6 +167,11 @@ bool CGameNetworkManager::_RunNetworkGame(LPVOID lpParameter)
return true;
}
}
else
{
// Client needs QNET_STATE_GAME_PLAY so that IsInGameplay() returns true
s_pPlatformNetworkManager->SetGamePlayState();
}
if( g_NetworkManager.IsLeavingGame() ) return false;
@@ -336,10 +341,12 @@ bool CGameNetworkManager::StartNetworkGame(Minecraft *minecraft, LPVOID lpParame
// 4J Stu - Wait a while to make sure that DLC is loaded. This is the last point before the network communication starts
// so the latest we can check this
#ifndef DISABLE_PSN
while( !app.DLCInstallProcessCompleted() && app.DLCInstallPending() && !g_NetworkManager.IsLeavingGame() )
{
Sleep( 10 );
}
#endif
if( g_NetworkManager.IsLeavingGame() )
{
MinecraftServer::HaltServer();
@@ -496,7 +503,7 @@ bool CGameNetworkManager::StartNetworkGame(Minecraft *minecraft, LPVOID lpParame
// The connections should tick at 20 per second
Sleep(50);
app.DebugPrintf("<***> %d %d %d %d %d\n",IsInSession(), !connection->isStarted(),!connection->isClosed(),ProfileManager.IsSignedIn(idx),!g_NetworkManager.IsLeavingGame());
#if defined _XBOX || __PS3__
#if defined _XBOX || defined __PS3__ && !defined DISABLE_PSN
} while (IsInSession() && !connection->isStarted() && !connection->isClosed() && ProfileManager.IsSignedIn(idx) && !g_NetworkManager.IsLeavingGame() );
#else
// TODO - This SHOULD be something just like the code above but temporarily changing here so that we don't have to depend on the profilemanager behaviour
@@ -794,7 +801,7 @@ int CGameNetworkManager::JoinFromInvite_SignInReturned(void *pParam,bool bContin
// Check if user-created content is allowed, as we cannot play multiplayer if it's not
bool noUGC = false;
#if defined(__PS3__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__PSVITA__))
ProfileManager.GetChatAndContentRestrictions(iPad,false,&noUGC,NULL,NULL);
#elif defined(__ORBIS__)
ProfileManager.GetChatAndContentRestrictions(iPad,false,NULL,&noUGC,NULL);
@@ -1007,6 +1014,9 @@ int CGameNetworkManager::ExitAndJoinFromInviteThreadProc( void* lpParam )
// The pair of methods MustSignInReturned_0 & PSNSignInReturned_0 handle this
int CGameNetworkManager::MustSignInReturned_0(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef __PS3__
@@ -1025,10 +1035,14 @@ int CGameNetworkManager::MustSignInReturned_0(void *pParam,int iPad,C4JStorage::
}
return 0;
#endif
}
int CGameNetworkManager::PSNSignInReturned_0(void* pParam, bool bContinue, int iPad)
{
#ifdef DISABLE_PSN
return 0;
#else
JoinFromInviteData *inviteData = (JoinFromInviteData *)pParam;
// If the invite data isn't set up yet (indicated by it being all zeroes, easiest detected via the net version), then try and get it again... this can happen if we got
@@ -1061,12 +1075,16 @@ int CGameNetworkManager::PSNSignInReturned_0(void* pParam, bool bContinue, int i
}
return 0;
#endif
}
// This case happens when we were in the main menus when we got an invite, and weren't signed in... now can proceed with the normal flow of code for this situation
// The pair of methods MustSignInReturned_1 & PSNSignInReturned_1 handle this
int CGameNetworkManager::MustSignInReturned_1(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef __PS3__
@@ -1078,10 +1096,14 @@ int CGameNetworkManager::MustSignInReturned_1(void *pParam,int iPad,C4JStorage::
#endif
}
return 0;
#endif
}
int CGameNetworkManager::PSNSignInReturned_1(void* pParam, bool bContinue, int iPad)
{
#ifdef DISABLE_PSN
return 0;
#else
INVITE_INFO *inviteInfo = (INVITE_INFO *)pParam;
// If the invite data isn't set up yet (indicated by it being all zeroes, easiest detected via the net version), then try and get it again... this can happen if we got
@@ -1109,6 +1131,7 @@ int CGameNetworkManager::PSNSignInReturned_1(void* pParam, bool bContinue, int i
}
return 0;
#endif
}
#endif
@@ -1446,7 +1469,7 @@ void CGameNetworkManager::StateChange_AnyToEnding(bool bStateWasPlaying)
if(pNetworkPlayer != NULL && ProfileManager.IsSignedIn( i ) )
{
app.DebugPrintf("Stats save for an offline game for the player at index %d\n", i );
Minecraft::GetInstance()->forceStatsSave(pNetworkPlayer->GetUserIndex());
//Minecraft::GetInstance()->forceStatsSave(pNetworkPlayer->GetUserIndex());
}
}
}
@@ -1479,7 +1502,10 @@ void CGameNetworkManager::CreateSocket( INetworkPlayer *pNetworkPlayer, bool loc
Minecraft *pMinecraft = Minecraft::GetInstance();
Socket *socket = NULL;
shared_ptr<MultiplayerLocalPlayer> mpPlayer = pMinecraft->localplayers[pNetworkPlayer->GetUserIndex()];
shared_ptr<MultiplayerLocalPlayer> mpPlayer = nullptr;
int userIdx = pNetworkPlayer->GetUserIndex();
if (userIdx >= 0 && userIdx < XUSER_MAX_COUNT)
mpPlayer = pMinecraft->localplayers[userIdx];
if( localPlayer && mpPlayer != NULL && mpPlayer->connection != NULL)
{
// If we already have a MultiplayerLocalPlayer here then we are doing a session type change
@@ -1789,7 +1815,7 @@ void CGameNetworkManager::GameInviteReceived( int userIndex, const INVITE_INFO *
#endif
if( !g_NetworkManager.IsInSession() )
{
#if defined (__PS3__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined (__PS3__) || defined (__PSVITA__))
// PS3 is more complicated here - we need to make sure that the player is online. If they are then we can do the same as the xbox, if not we need to try and get them online and then, if they do sign in, go down the same path
// Determine why they're not "signed in live"
@@ -1821,7 +1847,7 @@ void CGameNetworkManager::GameInviteReceived( int userIndex, const INVITE_INFO *
// joinData->pInviteInfo = pInviteInfo;
// tell the app to process this
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
if(((CPlatformNetworkManagerSony*)s_pPlatformNetworkManager)->checkValidInviteData(pInviteInfo))
#endif
{
@@ -1939,7 +1965,7 @@ void CGameNetworkManager::HandleDisconnect(bool bLostRoomOnly)
if((g_NetworkManager.GetLockedProfile()!=-1) && iPrimaryPlayer!=-1 && g_NetworkManager.IsInSession() )
{
m_bLastDisconnectWasLostRoomOnly = bLostRoomOnly;
#if defined __PS3__ || defined __PSVITA__ || defined __ORBIS__
#if !defined(DISABLE_PSN) && (defined __PS3__ || defined __PSVITA__ || defined __ORBIS__)
m_bSignedOutofPSN=bPSNSignout;
#endif
app.SetAction(iPrimaryPlayer,eAppAction_EthernetDisconnected);
@@ -2064,7 +2090,7 @@ void CGameNetworkManager::FakeLocalPlayerJoined()
}
#endif
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
bool CGameNetworkManager::usingAdhocMode()
{
return ((CPlatformNetworkManagerSony*)s_pPlatformNetworkManager)->usingAdhocMode();
@@ -2079,5 +2105,17 @@ void CGameNetworkManager::startAdhocMatching()
{
((CPlatformNetworkManagerSony*)s_pPlatformNetworkManager)->startAdhocMatching();
}
#elif defined(__PSVITA__)
bool CGameNetworkManager::usingAdhocMode()
{
return false;
}
void CGameNetworkManager::setAdhocMode(bool bAdhoc)
{
}
void CGameNetworkManager::startAdhocMatching()
{
}
#endif
@@ -1,17 +1,19 @@
#pragma once
using namespace std;
#include <vector>
#ifndef _DISABLE_XBLIVE
#include <qnet.h>
#endif
#include "..\..\..\Minecraft.World\C4JThread.h"
#include "NetworkPlayerInterface.h"
#ifdef _XBOX
#if defined _XBOX && !defined _DISABLE_XBLIVE
#include "..\..\Xbox\Network\PlatformNetworkManagerXbox.h"
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
#elif !defined DISABLE_PSN && (defined __PS3__ || defined __ORBIS__ || defined __PSVITA__)
#include "..\..\Common\Network\Sony\PlatformNetworkManagerSony.h"
#elif defined _DURANGO
#include "..\..\Durango\Network\PlatformNetworkManagerDurango.h"
#else
#include "PlatformNetworkManagerStub.h"
#include "PlatformNetworkManager.h"
#endif
#include "SessionInfo.h"
@@ -30,9 +32,9 @@ const int NON_QNET_SENDDATA_ACK_REQUIRED = 1;
class CGameNetworkManager
{
#ifdef _XBOX
#if defined _XBOX && !defined _DISABLE_XBLIVE
friend class CPlatformNetworkManagerXbox;
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
#elif !defined DISABLE_PSN && (defined __PS3__ || defined __ORBIS__ || defined __PSVITA__)
friend class CPlatformNetworkManagerSony;
#elif defined _DURANGO
friend class CPlatformNetworkManagerDurango;
+94
View File
@@ -0,0 +1,94 @@
#pragma once
const int QNET_GETSENDQUEUESIZE_SECONDARY_TYPE = 0;
const int QNET_GETSENDQUEUESIZE_MESSAGES = 0;
const int QNET_GETSENDQUEUESIZE_BYTES = 0;
const int QNET_SENDDATA_LOW_PRIORITY = 0;
const int QNET_SENDDATA_SECONDARY = 0;
const int QNET_SENDDATA_RELIABLE = 0;
const int QNET_SENDDATA_SEQUENTIAL = 0;
#define QNET_E_SESSION_FULL 0
#define QNET_USER_MASK_USER0 1
#define QNET_USER_MASK_USER1 2
#define QNET_USER_MASK_USER2 4
#define QNET_USER_MASK_USER3 8
typedef enum _QNET_STATE
{
QNET_STATE_IDLE,
QNET_STATE_SESSION_HOSTING,
QNET_STATE_SESSION_JOINING,
QNET_STATE_GAME_LOBBY,
QNET_STATE_SESSION_REGISTERING,
QNET_STATE_SESSION_STARTING,
QNET_STATE_GAME_PLAY,
QNET_STATE_SESSION_ENDING,
QNET_STATE_SESSION_LEAVING,
QNET_STATE_SESSION_DELETING
} QNET_STATE, * PQNET_STATE;
class IQNetPlayer
{
public:
BYTE GetSmallId();
void SendData(IQNetPlayer *player, const void *pvData, DWORD dwDataSize, DWORD dwFlags);
bool IsSameSystem(IQNetPlayer *player);
DWORD GetSendQueueSize( IQNetPlayer *player, DWORD dwFlags );
DWORD GetCurrentRtt();
bool IsHost();
bool IsGuest();
bool IsLocal();
PlayerUID GetXuid();
LPCWSTR GetGamertag();
int GetSessionIndex();
bool IsTalking();
bool IsMutedByLocalUser(DWORD dwUserIndex);
bool HasVoice();
bool HasCamera();
int GetUserIndex();
void SetCustomDataValue(ULONG_PTR ulpCustomDataValue);
ULONG_PTR GetCustomDataValue();
BYTE m_smallId;
bool m_isRemote;
bool m_isHostPlayer;
wchar_t m_gamertag[32];
private:
ULONG_PTR m_customData;
};
void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal);
class IQNetCallbacks
{
};
class IQNetGameSearch
{
};
class IQNet
{
public:
HRESULT AddLocalPlayerByUserIndex(DWORD dwUserIndex);
IQNetPlayer *GetHostPlayer();
IQNetPlayer *GetLocalPlayerByUserIndex(DWORD dwUserIndex);
IQNetPlayer *GetPlayerByIndex(DWORD dwPlayerIndex);
IQNetPlayer *GetPlayerBySmallId(BYTE SmallId);
IQNetPlayer *GetPlayerByXuid(PlayerUID xuid);
DWORD GetPlayerCount();
QNET_STATE GetState();
bool IsHost();
HRESULT JoinGameFromInviteInfo(DWORD dwUserIndex, DWORD dwUserMask, const INVITE_INFO *pInviteInfo);
void HostGame();
void ClientJoinGame();
void EndGame();
static IQNetPlayer m_player[MINECRAFT_NET_MAX_PLAYERS];
static DWORD s_playerCount;
static bool s_isHosting;
};
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,232 @@
#pragma once
#if defined _WINDOWS64
#include <WinSock2.h>
#include <WS2tcpip.h>
#elif defined _XBOX
#include <stdint.h>
#include <winsockx.h>
#include <xtl.h>
#elif defined __PS3__ || defined __ORBIS__
#include <sys/socket.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/tcp.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/time.h>
#include <sys/select.h>
#elif defined __PSVITA__
#include <net.h>
#endif
#ifdef __PS3__
#include <netex/net.h>
#include <netex/errno.h>
#endif
#include <vector>
#include "..\..\Common\Network\NetworkPlayerInterface.h"
#ifdef _WINDOWS64
#pragma comment(lib, "Ws2_32.lib")
#endif
#define NETWORK_LAN_DEFAULT_PORT 25565
#define NETWORK_LAN_MAX_CLIENTS 7
#define NETWORK_LAN_RECV_BUFFER_SIZE 65536
#define NETWORK_LAN_MAX_PACKET_SIZE (4 * 1024 * 1024)
#define NETWORK_LAN_DISCOVERY_PORT 25566
#define NETWORK_LAN_BROADCAST_MAGIC 0x4D434C4E
#ifdef __PS3__
typedef int SOCKET;
#define INVALID_SOCKET -1
#define closesocket socketclose
#elif defined(__ORBIS__)
typedef int SOCKET;
#define INVALID_SOCKET -1
#define SO_NBIO SCE_NET_SO_NBIO
#define sys_net_errno errno
#define SYS_NET_EINPROGRESS EINPROGRESS
#define socketselect select
#define closesocket sceNetSocketClose
#define socketclose sceNetSocketClose
#elif defined(__PSVITA__)
typedef SceNetId SOCKET;
typedef SceNetSockaddr sockaddr;
typedef SceNetSocklen_t socklen_t;
#define getsockopt sceNetGetsockopt
#define setsockopt sceNetSetsockopt
#define recv sceNetRecv
#define send sceNetSend
#define bind sceNetBind
#define sendto sceNetSendto
#define recvfrom sceNetRecvfrom
#define listen sceNetListen
#define connect sceNetConnect
#define accept sceNetAccept
#define closesocket sceNetSocketClose
#define socketclose sceNetSocketClose
#define inet_ntop sceNetInetNtop
#define SOL_SOCKET SCE_NET_SOL_SOCKET
#define AF_INET SCE_NET_AF_INET
#define SOCK_STREAM SCE_NET_SOCK_STREAM
#define sys_net_errno sce_net_errno
#define SYS_NET_EINPROGRESS SCE_NET_EINPROGRESS
#define htonl sceNetHtonl
#define htons sceNetHtons
#define ntohl sceNetNtohl
#define ntohs sceNetNtohs
#define SO_BROADCAST SCE_NET_SO_BROADCAST
#define SO_ERROR SCE_NET_SO_ERROR
#define SO_RCVTIMEO SCE_NET_SO_RCVTIMEO
#define SO_REUSEADDR SCE_NET_SO_REUSEADDR
#define SO_NBIO SCE_NET_SO_NBIO
#define SOCK_DGRAM SCE_NET_SOCK_DGRAM
#define INADDR_ANY SCE_NET_INADDR_ANY
#define IPPROTO_TCP SCE_NET_IPPROTO_TCP
#define IPPROTO_UDP SCE_NET_IPPROTO_UDP
#define TCP_NODELAY SCE_NET_TCP_NODELAY
#define INADDR_BROADCAST SCE_NET_INADDR_BROADCAST
#define INVALID_SOCKET -1
#endif
class Socket;
#pragma pack(push, 1)
struct LANBroadcast
{
DWORD magic;
WORD netVersion;
WORD gamePort;
char hostName[32];
BYTE playerCount;
BYTE maxPlayers;
DWORD gameHostSettings;
DWORD texturePackParentId;
BYTE subTexturePackId;
BYTE isJoinable;
char playerNames[8][XUSER_NAME_SIZE];
};
#pragma pack(pop)
struct LANSession
{
char hostIP[64];
int hostPort;
wchar_t hostName[32];
unsigned short netVersion;
unsigned char playerCount;
unsigned char maxPlayers;
unsigned int gameHostSettings;
unsigned int texturePackParentId;
unsigned char subTexturePackId;
bool isJoinable;
DWORD lastSeenTick;
char playerNames[8][XUSER_NAME_SIZE];
};
struct RemoteConnection
{
SOCKET tcpSocket;
BYTE smallId;
C4JThread* recvThread;
volatile bool active;
};
class NetworkSocketLayer
{
public:
static bool Initialize();
static void Shutdown();
static bool HostGame(int port);
static bool JoinGame(const char *ip, int port);
static bool SendToSmallId(BYTE targetSmallId, const void *data, int dataSize);
static bool SendOnSocket(SOCKET sock, const void *data, int dataSize);
static bool IsHosting() { return s_isHost; }
static bool IsConnected() { return s_connected; }
static bool IsActive() { return s_active; }
static BYTE GetLocalSmallId() { return s_localSmallId; }
static BYTE GetHostSmallId() { return s_hostSmallId; }
static SOCKET GetSocketForSmallId(BYTE smallId);
static void HandleDataReceived(BYTE fromSmallId, BYTE toSmallId, unsigned char *data, unsigned int dataSize);
static bool PopDisconnectedSmallId(BYTE *outSmallId);
static void PushFreeSmallId(BYTE smallId);
static void CloseConnectionBySmallId(BYTE smallId);
static bool StartAdvertising(int gamePort, const wchar_t *hostName, unsigned int gameSettings, unsigned int texPackId, unsigned char subTexId, unsigned short netVer);
static void StopAdvertising();
static void UpdateAdvertisePlayerCount(BYTE count);
static void UpdateAdvertiseJoinable(bool joinable);
static void UpdateAdvertisePlayerNames(BYTE count, const char playerNames[][XUSER_NAME_SIZE]);
static bool StartDiscovery();
static void StopDiscovery();
static vector<LANSession> GetDiscoveredSessions();
static int GetHostPort() { return s_hostGamePort; }
private:
static int AcceptThreadProc(void* param);
static int RecvThreadProc(void* param);
static int ClientRecvThreadProc(void* param);
static int AdvertiseThreadProc(void* param);
static int DiscoveryThreadProc(void* param);
static SOCKET s_listenSocket;
static SOCKET s_hostConnectionSocket;
static C4JThread* s_acceptThread;
static C4JThread* s_clientRecvThread;
static bool s_isHost;
static bool s_connected;
static bool s_active;
static bool s_initialized;
static BYTE s_localSmallId;
static BYTE s_hostSmallId;
static BYTE s_nextSmallId;
static CRITICAL_SECTION s_sendLock;
static CRITICAL_SECTION s_connectionsLock;
static std::vector<RemoteConnection> s_connections;
static SOCKET s_advertiseSock;
static C4JThread* s_advertiseThread;
static volatile bool s_advertising;
static LANBroadcast s_advertiseData;
static CRITICAL_SECTION s_advertiseLock;
static int s_hostGamePort;
static SOCKET s_discoverySock;
static C4JThread* s_discoveryThread;
static volatile bool s_discovering;
static CRITICAL_SECTION s_discoveryLock;
static std::vector<LANSession> s_discoveredSessions;
static CRITICAL_SECTION s_disconnectLock;
static std::vector<BYTE> s_disconnectedSmallIds;
static CRITICAL_SECTION s_freeSmallIdLock;
static std::vector<BYTE> s_freeSmallIds;
};
extern bool g_MultiplayerHost;
extern bool g_MultiplayerJoin;
extern int g_MultiplayerPort;
extern char g_MultiplayerIP[256];
@@ -1,170 +1,171 @@
#pragma once
using namespace std;
#include <vector>
#include "..\..\..\Minecraft.World\C4JThread.h"
#include "NetworkPlayerInterface.h"
#include "PlatformNetworkManagerInterface.h"
#include "SessionInfo.h"
class CPlatformNetworkManagerStub : public CPlatformNetworkManager
{
friend class CGameNetworkManager;
public:
virtual bool Initialise(CGameNetworkManager *pGameNetworkManager, int flagIndexSize);
virtual void Terminate();
virtual int GetJoiningReadyPercentage();
virtual int CorrectErrorIDS(int IDS);
virtual void DoWork();
virtual int GetPlayerCount();
virtual int GetOnlinePlayerCount();
virtual int GetLocalPlayerMask(int playerIndex);
virtual bool AddLocalPlayerByUserIndex( int userIndex );
virtual bool RemoveLocalPlayerByUserIndex( int userIndex );
virtual INetworkPlayer *GetLocalPlayerByUserIndex( int userIndex );
virtual INetworkPlayer *GetPlayerByIndex(int playerIndex);
virtual INetworkPlayer * GetPlayerByXuid(PlayerUID xuid);
virtual INetworkPlayer * GetPlayerBySmallId(unsigned char smallId);
virtual bool ShouldMessageForFullSession();
virtual INetworkPlayer *GetHostPlayer();
virtual bool IsHost();
virtual bool JoinGameFromInviteInfo( int userIndex, int userMask, const INVITE_INFO *pInviteInfo);
virtual bool LeaveGame(bool bMigrateHost);
virtual bool IsInSession();
virtual bool IsInGameplay();
virtual bool IsReadyToPlayOrIdle();
virtual bool IsInStatsEnabledSession();
virtual bool SessionHasSpace(unsigned int spaceRequired = 1);
virtual void SendInviteGUI(int quadrant);
virtual bool IsAddingPlayer();
virtual void HostGame(int localUsersMask, bool bOnlineGame, bool bIsPrivate, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
virtual int JoinGame(FriendSessionInfo *searchResult, int localUsersMask, int primaryUserIndex );
virtual bool SetLocalGame(bool isLocal);
virtual bool IsLocalGame() { return m_bIsOfflineGame; }
virtual void SetPrivateGame(bool isPrivate);
virtual bool IsPrivateGame() { return m_bIsPrivateGame; }
virtual bool IsLeavingGame() { return m_bLeavingGame; }
virtual void ResetLeavingGame() { m_bLeavingGame = false; }
virtual void RegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
virtual void UnRegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
virtual void HandleSignInChange();
virtual bool _RunNetworkGame();
private:
bool isSystemPrimaryPlayer(IQNetPlayer *pQNetPlayer);
virtual bool _LeaveGame(bool bMigrateHost, bool bLeaveRoom);
virtual void _HostGame(int dwUsersMask, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
virtual bool _StartGame();
IQNet * m_pIQNet; // pointer to QNet interface
HANDLE m_notificationListener;
vector<IQNetPlayer *> m_machineQNetPrimaryPlayers; // collection of players that we deem to be the main one for that system
bool m_bLeavingGame;
bool m_bLeaveGameOnTick;
bool m_migrateHostOnLeave;
bool m_bHostChanged;
bool m_bIsOfflineGame;
bool m_bIsPrivateGame;
int m_flagIndexSize;
// This is only maintained by the host, and is not valid on client machines
GameSessionData m_hostGameSessionData;
CGameNetworkManager *m_pGameNetworkManager;
public:
virtual void UpdateAndSetGameSessionData(INetworkPlayer *pNetworkPlayerLeaving = NULL);
private:
// TODO 4J Stu - Do we need to be able to have more than one of these?
void (*playerChangedCallback[XUSER_MAX_COUNT])(void *callbackParam, INetworkPlayer *pPlayer, bool leaving);
void *playerChangedCallbackParam[XUSER_MAX_COUNT];
static int RemovePlayerOnSocketClosedThreadProc( void* lpParam );
virtual bool RemoveLocalPlayer( INetworkPlayer *pNetworkPlayer );
// Things for handling per-system flags
class PlayerFlags
{
public:
INetworkPlayer *m_pNetworkPlayer;
unsigned char *flags;
unsigned int count;
PlayerFlags(INetworkPlayer *pNetworkPlayer, unsigned int count);
~PlayerFlags();
};
vector<PlayerFlags *> m_playerFlags;
void SystemFlagAddPlayer(INetworkPlayer *pNetworkPlayer);
void SystemFlagRemovePlayer(INetworkPlayer *pNetworkPlayer);
void SystemFlagReset();
public:
virtual void SystemFlagSet(INetworkPlayer *pNetworkPlayer, int index);
virtual bool SystemFlagGet(INetworkPlayer *pNetworkPlayer, int index);
// For telemetry
private:
float m_lastPlayerEventTimeStart;
public:
wstring GatherStats();
wstring GatherRTTStats();
private:
vector<FriendSessionInfo *> friendsSessions[XUSER_MAX_COUNT];
int m_searchResultsCount[XUSER_MAX_COUNT];
int m_lastSearchStartTime[XUSER_MAX_COUNT];
// The results that will be filled in with the current search
XSESSION_SEARCHRESULT_HEADER *m_pSearchResults[XUSER_MAX_COUNT];
XNQOS *m_pQoSResult[XUSER_MAX_COUNT];
// The results from the previous search, which are currently displayed in the game
XSESSION_SEARCHRESULT_HEADER *m_pCurrentSearchResults[XUSER_MAX_COUNT];
XNQOS *m_pCurrentQoSResult[XUSER_MAX_COUNT];
int m_currentSearchResultsCount[XUSER_MAX_COUNT];
int m_lastSearchPad;
bool m_bSearchResultsReady;
bool m_bSearchPending;
LPVOID m_pSearchParam;
void (*m_SessionsUpdatedCallback)(LPVOID pParam);
C4JThread* m_SearchingThread;
void TickSearch();
void SearchForGames();
static int SearchForGamesThreadProc( void* lpParameter );
void SetSearchResultsReady(int resultCount = 0);
vector<INetworkPlayer *>currentNetworkPlayers;
INetworkPlayer *addNetworkPlayer(IQNetPlayer *pQNetPlayer);
void removeNetworkPlayer(IQNetPlayer *pQNetPlayer);
static INetworkPlayer *getNetworkPlayer(IQNetPlayer *pQNetPlayer);
virtual void SetSessionTexturePackParentId( int id );
virtual void SetSessionSubTexturePackId( int id );
virtual void Notify(int ID, ULONG_PTR Param);
public:
virtual vector<FriendSessionInfo *> *GetSessionList(int iPad, int localPlayers, bool partyOnly);
virtual bool GetGameSessionInfo(int iPad, SessionID sessionId,FriendSessionInfo *foundSession);
virtual void SetSessionsUpdatedCallback( void (*SessionsUpdatedCallback)(LPVOID pParam), LPVOID pSearchParam );
virtual void GetFullFriendSessionInfo( FriendSessionInfo *foundSession, void (* FriendSessionUpdatedFn)(bool success, void *pParam), void *pParam );
virtual void ForceFriendsSessionRefresh();
private:
void NotifyPlayerJoined( IQNetPlayer *pQNetPlayer );
#ifndef _XBOX
void FakeLocalPlayerJoined() { NotifyPlayerJoined(m_pIQNet->GetLocalPlayerByUserIndex(0)); }
#endif
};
#pragma once
using namespace std;
#include <vector>
#include "..\..\..\Minecraft.World\C4JThread.h"
#include "NetworkPlayerInterface.h"
#include "PlatformNetworkManagerInterface.h"
#include "SessionInfo.h"
class CPlatformNetworkManagerStub : public CPlatformNetworkManager
{
friend class CGameNetworkManager;
public:
virtual bool Initialise(CGameNetworkManager *pGameNetworkManager, int flagIndexSize);
virtual void Terminate();
virtual int GetJoiningReadyPercentage();
virtual int CorrectErrorIDS(int IDS);
virtual void DoWork();
virtual int GetPlayerCount();
virtual int GetOnlinePlayerCount();
virtual int GetLocalPlayerMask(int playerIndex);
virtual bool AddLocalPlayerByUserIndex( int userIndex );
virtual bool RemoveLocalPlayerByUserIndex( int userIndex );
virtual INetworkPlayer *GetLocalPlayerByUserIndex( int userIndex );
virtual INetworkPlayer *GetPlayerByIndex(int playerIndex);
virtual INetworkPlayer * GetPlayerByXuid(PlayerUID xuid);
virtual INetworkPlayer * GetPlayerBySmallId(unsigned char smallId);
virtual bool ShouldMessageForFullSession();
virtual INetworkPlayer *GetHostPlayer();
virtual bool IsHost();
virtual bool JoinGameFromInviteInfo( int userIndex, int userMask, const INVITE_INFO *pInviteInfo);
virtual bool LeaveGame(bool bMigrateHost);
virtual bool IsInSession();
virtual bool IsInGameplay();
virtual bool IsReadyToPlayOrIdle();
virtual bool IsInStatsEnabledSession();
virtual bool SessionHasSpace(unsigned int spaceRequired = 1);
virtual void SendInviteGUI(int quadrant);
virtual bool IsAddingPlayer();
virtual void HostGame(int localUsersMask, bool bOnlineGame, bool bIsPrivate, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
virtual int JoinGame(FriendSessionInfo *searchResult, int localUsersMask, int primaryUserIndex );
virtual bool SetLocalGame(bool isLocal);
virtual bool IsLocalGame() { return m_bIsOfflineGame; }
virtual void SetPrivateGame(bool isPrivate);
virtual bool IsPrivateGame() { return m_bIsPrivateGame; }
virtual bool IsLeavingGame() { return m_bLeavingGame; }
virtual void ResetLeavingGame() { m_bLeavingGame = false; }
virtual void RegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
virtual void UnRegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
virtual void HandleSignInChange();
virtual bool _RunNetworkGame();
private:
bool isSystemPrimaryPlayer(IQNetPlayer *pQNetPlayer);
virtual bool _LeaveGame(bool bMigrateHost, bool bLeaveRoom);
virtual void _HostGame(int dwUsersMask, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
virtual bool _StartGame();
IQNet * m_pIQNet; // pointer to QNet interface
HANDLE m_notificationListener;
vector<IQNetPlayer *> m_machineQNetPrimaryPlayers; // collection of players that we deem to be the main one for that system
bool m_bLeavingGame;
bool m_bLeaveGameOnTick;
bool m_migrateHostOnLeave;
bool m_bHostChanged;
bool m_bIsOfflineGame;
bool m_bIsPrivateGame;
int m_flagIndexSize;
// This is only maintained by the host, and is not valid on client machines
GameSessionData m_hostGameSessionData;
CGameNetworkManager *m_pGameNetworkManager;
public:
virtual void UpdateAndSetGameSessionData(INetworkPlayer *pNetworkPlayerLeaving = NULL);
private:
// TODO 4J Stu - Do we need to be able to have more than one of these?
void (*playerChangedCallback[XUSER_MAX_COUNT])(void *callbackParam, INetworkPlayer *pPlayer, bool leaving);
void *playerChangedCallbackParam[XUSER_MAX_COUNT];
static int RemovePlayerOnSocketClosedThreadProc( void* lpParam );
virtual bool RemoveLocalPlayer( INetworkPlayer *pNetworkPlayer );
// Things for handling per-system flags
class PlayerFlags
{
public:
INetworkPlayer *m_pNetworkPlayer;
unsigned char *flags;
unsigned int count;
PlayerFlags(INetworkPlayer *pNetworkPlayer, unsigned int count);
~PlayerFlags();
};
vector<PlayerFlags *> m_playerFlags;
void SystemFlagAddPlayer(INetworkPlayer *pNetworkPlayer);
void SystemFlagRemovePlayer(INetworkPlayer *pNetworkPlayer);
void SystemFlagReset();
public:
virtual void SystemFlagSet(INetworkPlayer *pNetworkPlayer, int index);
virtual bool SystemFlagGet(INetworkPlayer *pNetworkPlayer, int index);
// For telemetry
private:
float m_lastPlayerEventTimeStart;
public:
wstring GatherStats();
wstring GatherRTTStats();
private:
vector<FriendSessionInfo *> friendsSessions[XUSER_MAX_COUNT];
int m_searchResultsCount[XUSER_MAX_COUNT];
int m_lastSearchStartTime[XUSER_MAX_COUNT];
// The results that will be filled in with the current search
XSESSION_SEARCHRESULT_HEADER *m_pSearchResults[XUSER_MAX_COUNT];
XNQOS *m_pQoSResult[XUSER_MAX_COUNT];
// The results from the previous search, which are currently displayed in the game
XSESSION_SEARCHRESULT_HEADER *m_pCurrentSearchResults[XUSER_MAX_COUNT];
XNQOS *m_pCurrentQoSResult[XUSER_MAX_COUNT];
int m_currentSearchResultsCount[XUSER_MAX_COUNT];
int m_lastSearchPad;
bool m_bSearchResultsReady;
bool m_bSearchPending;
LPVOID m_pSearchParam;
void (*m_SessionsUpdatedCallback)(LPVOID pParam);
C4JThread* m_SearchingThread;
void TickSearch();
void SearchForGames();
static int SearchForGamesThreadProc( void* lpParameter );
void SetSearchResultsReady(int resultCount = 0);
vector<INetworkPlayer *>currentNetworkPlayers;
INetworkPlayer *addNetworkPlayer(IQNetPlayer *pQNetPlayer);
void removeNetworkPlayer(IQNetPlayer *pQNetPlayer);
static INetworkPlayer *getNetworkPlayer(IQNetPlayer *pQNetPlayer);
virtual void SetSessionTexturePackParentId( int id );
virtual void SetSessionSubTexturePackId( int id );
virtual void Notify(int ID, ULONG_PTR Param);
public:
virtual vector<FriendSessionInfo *> *GetSessionList(int iPad, int localPlayers, bool partyOnly);
virtual bool GetGameSessionInfo(int iPad, SessionID sessionId,FriendSessionInfo *foundSession);
virtual void SetSessionsUpdatedCallback( void (*SessionsUpdatedCallback)(LPVOID pParam), LPVOID pSearchParam );
virtual void GetFullFriendSessionInfo( FriendSessionInfo *foundSession, void (* FriendSessionUpdatedFn)(bool success, void *pParam), void *pParam );
virtual void ForceFriendsSessionRefresh();
public:
void NotifyPlayerJoined( IQNetPlayer *pQNetPlayer );
void NotifyPlayerLeaving( IQNetPlayer *pQNetPlayer );
#ifndef _XBOX
void FakeLocalPlayerJoined() { NotifyPlayerJoined(m_pIQNet->GetLocalPlayerByUserIndex(0)); }
#endif
};
@@ -1,7 +1,11 @@
#pragma once
using namespace std;
#include <vector>
#ifndef _DISABLE_XBLIVE
#include <qnet.h>
#else
#include "IQNet.h"
#endif
#include "..\..\..\Minecraft.World\C4JThread.h"
#include "NetworkPlayerInterface.h"
#include "SessionInfo.h"
@@ -84,7 +88,7 @@ public:
virtual void HandleSignInChange() = 0;
virtual bool _RunNetworkGame() = 0;
virtual void SetGamePlayState() {}
private:
virtual bool _LeaveGame(bool bMigrateHost, bool bLeaveRoom) = 0;
virtual void _HostGame(int usersMask, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0) = 0;
+34 -6
View File
@@ -1,12 +1,12 @@
#pragma once
#if defined(__PS3__) || defined(__ORBIS__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__))
#include "..\..\Common\Network\Sony\SQRNetworkManager.h"
#endif
// A struct that we store in the QoS data when we are hosting the session. Max size 1020 bytes.
#ifdef _XBOX
#if defined _XBOX && !defined _DISABLE_XBLIVE
typedef struct _GameSessionData
{
unsigned short netVersion; // 2 bytes
@@ -32,7 +32,7 @@ typedef struct _GameSessionData
subTexturePackId = 0;
}
} GameSessionData;
#elif defined __PS3__ || defined __ORBIS__ || defined(__PSVITA__)
#elif !defined DISABLE_PSN && (defined __PS3__ || defined __ORBIS__ || defined(__PSVITA__))
typedef struct _GameSessionData
{
unsigned short netVersion; // 2 bytes
@@ -47,6 +47,11 @@ typedef struct _GameSessionData
unsigned char playerCount; // 1 byte
bool isReadyToJoin; // 1 byte
char hostIP[64]; // 64 bytes
int hostPort; // 4 bytes
wchar_t hostName[XUSER_NAME_SIZE]; // 64 bytes ( 32*2 )
unsigned char maxPlayers; // 1 byte
_GameSessionData()
{
netVersion = 0;
@@ -57,7 +62,11 @@ typedef struct _GameSessionData
subTexturePackId = 0;
playerCount = 0;
isReadyToJoin = false;
memset(hostIP, 0, sizeof(hostIP));
hostPort = 0;
memset(hostName, 0, sizeof(hostName));
playerCount = 0;
maxPlayers = MINECRAFT_NET_MAX_PLAYERS;
}
} GameSessionData;
#else
@@ -69,6 +78,16 @@ typedef struct _GameSessionData
unsigned char subTexturePackId; // 1 byte
bool isReadyToJoin; // 1 byte
bool isJoinable; // 1 byte
char hostIP[64]; // 64 bytes
int hostPort; // 4 bytes
wchar_t hostName[XUSER_NAME_SIZE]; // 64 bytes ( 32*2 )
unsigned char playerCount; // 1 byte
unsigned char maxPlayers; // 1 byte
GameSessionUID players[MINECRAFT_NET_MAX_PLAYERS];
char szPlayers[MINECRAFT_NET_MAX_PLAYERS][XUSER_NAME_SIZE];
_GameSessionData()
{
@@ -76,6 +95,15 @@ typedef struct _GameSessionData
m_uiGameHostSettings = 0;
texturePackParentId = 0;
subTexturePackId = 0;
isReadyToJoin = false;
isJoinable = true;
memset(hostIP, 0, sizeof(hostIP));
hostPort = 0;
memset(hostName, 0, sizeof(hostName));
playerCount = 0;
maxPlayers = MINECRAFT_NET_MAX_PLAYERS;
memset(players, 0, sizeof(players));
memset(szPlayers, 0, sizeof(szPlayers));
}
} GameSessionData;
#endif
@@ -86,7 +114,7 @@ public:
SessionID sessionId;
#ifdef _XBOX
XSESSION_SEARCHRESULT searchResult;
#elif defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#elif !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
SQRNetworkManager::SessionSearchResult searchResult;
#elif defined(_DURANGO)
DQRNetworkManager::SessionSearchResult searchResult;
@@ -108,6 +136,6 @@ public:
~FriendSessionInfo()
{
if(displayLabel!=NULL)
delete displayLabel;
delete[] displayLabel;
}
};
@@ -1,5 +1,6 @@
#include "stdafx.h"
#include "NetworkPlayerSony.h"
#ifndef DISABLE_PSN
NetworkPlayerSony::NetworkPlayerSony(SQRNetworkPlayer *qnetPlayer)
{
@@ -135,3 +136,4 @@ int NetworkPlayerSony::GetTimeSinceLastChunkPacket_ms()
__int64 currentTime = System::currentTimeMillis();
return (int)( currentTime - m_lastChunkPacketTime );
}
#endif
@@ -1,5 +1,5 @@
#pragma once
#ifndef _DISABLE_PSN
#include "..\..\Common\Network\NetworkPlayerInterface.h"
#include "SQRNetworkPlayer.h"
@@ -41,3 +41,4 @@ private:
Socket *m_pSocket;
__int64 m_lastChunkPacketTime;
};
#endif
@@ -56,7 +56,7 @@ void CPlatformNetworkManagerSony::HandleStateChange(SQRNetworkManager::eSQRNetwo
// 4J Stu - We may be accepting an invite from the DLC menu, so hide the icon
#ifdef __ORBIS__
sceNpCommerceHidePsStoreIcon();
#elif defined __PSVITA__
#elif defined(__PSVITA__) && !defined(DISABLE_PSN)
app.GetCommerce()->HidePsStoreIcon();
#endif
m_bLeavingGame = false;
@@ -1,5 +1,5 @@
#include "stdafx.h"
#ifndef DISABLE_PSN
#include "SQRNetworkManager.h"
bool SQRNetworkManager::s_safeToRespondToGameBootInvite = false;
@@ -80,4 +80,5 @@ void SQRNetworkManager::TickWriteAcks()
}
}
LeaveCriticalSection(&m_csAckQueue);
}
}
#endif
@@ -80,7 +80,6 @@ public:
bool inviteOnly;
};
// Externally exposed state. All internal states are mapped to one of these broader states.
typedef enum
{
@@ -324,4 +323,4 @@ public:
virtual void HandleAddLocalPlayerFailed(int idx) = 0;
virtual void HandleDisconnect(bool bLostRoomOnly,bool bPSNSignOut=false) = 0;
virtual void HandleInviteReceived( int userIndex, const SQRNetworkManager::PresenceSyncInfo *pInviteInfo) = 0;
};
};
@@ -1,4 +1,5 @@
#include "stdafx.h"
#ifndef DISABLE_PSN
#include "SQRNetworkPlayer.h"
#ifdef __PS3__
@@ -609,3 +610,4 @@ bool SQRNetworkPlayer::IsMutedByLocalUser(int userIndex)
return SonyVoiceChat::isMutedPlayer(pMan->m_roomSyncData.players[userIndex].m_roomMemberId);
#endif
}
#endif
@@ -124,7 +124,7 @@ class SQRNetworkPlayer
int GetTotalSendQueueMessages();
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
void SendInternal_VitaAdhoc(const void *data, unsigned int dataSize, EAdhocDataTag tag = e_dataTag_Normal);
void SendMoreInternal_VitaAdhoc();
#endif
@@ -1,6 +1,7 @@
param(
[string]$OutDir,
[string]$ProjectDir
[string]$ProjectDir,
[string]$Configuration
)
Write-Host "PS3 Postbuild: script started. Output Directory: $OutDir, Project Directory: $ProjectDir"
@@ -59,7 +60,12 @@ foreach ($copy in $fileCopies) {
}
}
$builtFile = Join-Path $OutDir "Minecraft.Client.self"
if ($Configuration -match "ContentPackage") {
$builtFile = Join-Path $OutDir "Minecraft.Client.elf"
} else {
$builtFile = Join-Path $OutDir "Minecraft.Client.self"
}
$newName = "EBOOT.BIN"
$destDir = Join-Path $OutDir "PS3_GAME\USRDIR"
$destPath = Join-Path $destDir $newName
@@ -54,7 +54,7 @@ void IUIScene_StartGame::HandleDLCMountingComplete()
for(unsigned int i = 0; i < app.GetDLCInfoTexturesOffersCount(); ++i)
{
bTexturePackAlreadyListed=false;
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__))
char *pchName=app.GetDLCInfoTextures(i);
pDLCInfo=app.GetDLCInfo(pchName);
#elif defined _XBOX_ONE
+24 -45
View File
@@ -528,58 +528,37 @@ void UIController::loadSkins()
}
#endif
// Every platform has one of these, so nothing shared
if(m_fScreenHeight==1080.0f)
// str1k3r - Fixes 720p/480p Crashes on Windows64, also allows this to be used on 1080p consoles instead of just Windows64
// This also cleans up some 4J code and turns 3 if statements into 1.
if (m_fScreenHeight >= 1080.0f)
{
m_iggyLibraries[eLibrary_Platform] = loadSkin(platformSkinPath, L"platformskinHD.swf");
m_iggyLibraries[eLibrary_GraphicsDefault] = loadSkin(L"skinHDGraphics.swf", L"skinHDGraphics.swf");
m_iggyLibraries[eLibrary_GraphicsHUD] = loadSkin(L"skinHDGraphicsHud.swf", L"skinHDGraphicsHud.swf");
m_iggyLibraries[eLibrary_GraphicsInGame] = loadSkin(L"skinHDGraphicsInGame.swf", L"skinHDGraphicsInGame.swf");
m_iggyLibraries[eLibrary_GraphicsTooltips] = loadSkin(L"skinHDGraphicsTooltips.swf", L"skinHDGraphicsTooltips.swf");
m_iggyLibraries[eLibrary_GraphicsLabels] = loadSkin(L"skinHDGraphicsLabels.swf", L"skinHDGraphicsLabels.swf");
m_iggyLibraries[eLibrary_Labels] = loadSkin(L"skinHDLabels.swf", L"skinHDLabels.swf");
m_iggyLibraries[eLibrary_InGame] = loadSkin(L"skinHDInGame.swf", L"skinHDInGame.swf");
m_iggyLibraries[eLibrary_HUD] = loadSkin(L"skinHDHud.swf", L"skinHDHud.swf");
m_iggyLibraries[eLibrary_Tooltips] = loadSkin(L"skinHDTooltips.swf", L"skinHDTooltips.swf");
m_iggyLibraries[eLibrary_Default] = loadSkin(L"skinHD.swf", L"skinHD.swf");
}
else
{
m_iggyLibraries[eLibrary_Platform] = loadSkin(platformSkinPath, L"platformskin.swf");
m_iggyLibraries[eLibrary_GraphicsDefault] = loadSkin(L"skinGraphics.swf", L"skinGraphics.swf");
m_iggyLibraries[eLibrary_GraphicsHUD] = loadSkin(L"skinGraphicsHud.swf", L"skinGraphicsHud.swf");
m_iggyLibraries[eLibrary_GraphicsInGame] = loadSkin(L"skinGraphicsInGame.swf", L"skinGraphicsInGame.swf");
m_iggyLibraries[eLibrary_GraphicsTooltips] = loadSkin(L"skinGraphicsTooltips.swf", L"skinGraphicsTooltips.swf");
m_iggyLibraries[eLibrary_GraphicsLabels] = loadSkin(L"skinGraphicsLabels.swf", L"skinGraphicsLabels.swf");
m_iggyLibraries[eLibrary_Labels] = loadSkin(L"skinLabels.swf", L"skinLabels.swf");
m_iggyLibraries[eLibrary_InGame] = loadSkin(L"skinInGame.swf", L"skinInGame.swf");
m_iggyLibraries[eLibrary_HUD] = loadSkin(L"skinHud.swf", L"skinHud.swf");
m_iggyLibraries[eLibrary_Tooltips] = loadSkin(L"skinTooltips.swf", L"skinTooltips.swf");
m_iggyLibraries[eLibrary_Default] = loadSkin(L"skin.swf", L"skin.swf");
}
#if defined(__PS3__) || defined(__PSVITA__)
m_iggyLibraries[eLibrary_GraphicsDefault] = loadSkin(L"skinGraphics.swf", L"skinGraphics.swf");
m_iggyLibraries[eLibrary_GraphicsHUD] = loadSkin(L"skinGraphicsHud.swf", L"skinGraphicsHud.swf");
m_iggyLibraries[eLibrary_GraphicsInGame] = loadSkin(L"skinGraphicsInGame.swf", L"skinGraphicsInGame.swf");
m_iggyLibraries[eLibrary_GraphicsTooltips] = loadSkin(L"skinGraphicsTooltips.swf", L"skinGraphicsTooltips.swf");
m_iggyLibraries[eLibrary_GraphicsLabels] = loadSkin(L"skinGraphicsLabels.swf", L"skinGraphicsLabels.swf");
m_iggyLibraries[eLibrary_Labels] = loadSkin(L"skinLabels.swf", L"skinLabels.swf");
m_iggyLibraries[eLibrary_InGame] = loadSkin(L"skinInGame.swf", L"skinInGame.swf");
m_iggyLibraries[eLibrary_HUD] = loadSkin(L"skinHud.swf", L"skinHud.swf");
m_iggyLibraries[eLibrary_Tooltips] = loadSkin(L"skinTooltips.swf", L"skinTooltips.swf");
m_iggyLibraries[eLibrary_Default] = loadSkin(L"skin.swf", L"skin.swf");
#endif
#if ( defined(_WINDOWS64) || defined(_DURANGO) || defined(__ORBIS__) )
#if defined(_WINDOWS64)
// 4J Stu - Load the 720/480 skins so that we have something to fallback on during development
#ifndef _FINAL_BUILD
m_iggyLibraries[eLibraryFallback_GraphicsDefault] = loadSkin(L"skinGraphics.swf", L"skinGraphics.swf");
m_iggyLibraries[eLibraryFallback_GraphicsHUD] = loadSkin(L"skinGraphicsHud.swf", L"skinGraphicsHud.swf");
m_iggyLibraries[eLibraryFallback_GraphicsInGame] = loadSkin(L"skinGraphicsInGame.swf", L"skinGraphicsInGame.swf");
m_iggyLibraries[eLibraryFallback_GraphicsTooltips] = loadSkin(L"skinGraphicsTooltips.swf", L"skinGraphicsTooltips.swf");
m_iggyLibraries[eLibraryFallback_GraphicsLabels] = loadSkin(L"skinGraphicsLabels.swf", L"skinGraphicsLabels.swf");
m_iggyLibraries[eLibraryFallback_Labels] = loadSkin(L"skinLabels.swf", L"skinLabels.swf");
m_iggyLibraries[eLibraryFallback_InGame] = loadSkin(L"skinInGame.swf", L"skinInGame.swf");
m_iggyLibraries[eLibraryFallback_HUD] = loadSkin(L"skinHud.swf", L"skinHud.swf");
m_iggyLibraries[eLibraryFallback_Tooltips] = loadSkin(L"skinTooltips.swf", L"skinTooltips.swf");
m_iggyLibraries[eLibraryFallback_Default] = loadSkin(L"skin.swf", L"skin.swf");
#endif
#endif
m_iggyLibraries[eLibrary_GraphicsDefault] = loadSkin(L"skinHDGraphics.swf", L"skinHDGraphics.swf");
m_iggyLibraries[eLibrary_GraphicsHUD] = loadSkin(L"skinHDGraphicsHud.swf", L"skinHDGraphicsHud.swf");
m_iggyLibraries[eLibrary_GraphicsInGame] = loadSkin(L"skinHDGraphicsInGame.swf", L"skinHDGraphicsInGame.swf");
m_iggyLibraries[eLibrary_GraphicsTooltips] = loadSkin(L"skinHDGraphicsTooltips.swf", L"skinHDGraphicsTooltips.swf");
m_iggyLibraries[eLibrary_GraphicsLabels] = loadSkin(L"skinHDGraphicsLabels.swf", L"skinHDGraphicsLabels.swf");
m_iggyLibraries[eLibrary_Labels] = loadSkin(L"skinHDLabels.swf", L"skinHDLabels.swf");
m_iggyLibraries[eLibrary_InGame] = loadSkin(L"skinHDInGame.swf", L"skinHDInGame.swf");
m_iggyLibraries[eLibrary_HUD] = loadSkin(L"skinHDHud.swf", L"skinHDHud.swf");
m_iggyLibraries[eLibrary_Tooltips] = loadSkin(L"skinHDTooltips.swf", L"skinHDTooltips.swf");
m_iggyLibraries[eLibrary_Default] = loadSkin(L"skinHD.swf", L"skinHD.swf");
#endif // HD platforms
}
IggyLibrary UIController::loadSkin(const wstring &skinPath, const wstring &skinName)
+1 -18
View File
@@ -96,24 +96,7 @@ private:
eLibrary_HUD,
eLibrary_Tooltips,
eLibrary_Default,
#if ( defined(_WINDOWS64) )
// 4J Stu - Load the 720/480 skins so that we have something to fallback on during development
#ifndef _FINAL_BUILD
eLibraryFallback_Platform,
eLibraryFallback_GraphicsDefault,
eLibraryFallback_GraphicsHUD,
eLibraryFallback_GraphicsInGame,
eLibraryFallback_GraphicsTooltips,
eLibraryFallback_GraphicsLabels,
eLibraryFallback_Labels,
eLibraryFallback_InGame,
eLibraryFallback_HUD,
eLibraryFallback_Tooltips,
eLibraryFallback_Default,
#endif
#endif
eLibrary_Count,
};
@@ -13,7 +13,7 @@
#include "..\..\..\Minecraft.World\LevelType.h"
#include "..\..\DLCTexturePack.h"
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
#include "PSVita\Network\SQRNetworkManager_AdHoc_Vita.h"
#endif
@@ -1044,7 +1044,7 @@ void UIScene_CreateWorldMenu::CreateGame(UIScene_CreateWorldMenu* pClass, DWORD
#endif
bool isClientSide = ProfileManager.IsSignedInLive(ProfileManager.GetPrimaryPad()) && pClass->m_MoreOptionsParams.bOnlineGame;
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode())
{
if(SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())// && pClass->m_MoreOptionsParams.bOnlineGame)
@@ -1392,17 +1392,21 @@ int UIScene_CreateWorldMenu::ConfirmCreateReturned(void *pParam,int iPad,C4JStor
return 0;
}
#ifdef __ORBIS__
#if defined(__ORBIS__)
int UIScene_CreateWorldMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
UIScene_CreateWorldMenu* pClass = (UIScene_CreateWorldMenu *)pParam;
pClass->m_bIgnoreInput = false;
#ifdef DISABLE_PSN
UIScene_CreateWorldMenu::StartGame_SignInReturned(pClass, true, iPad);
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
SQRNetworkManager_Orbis::AttemptPSNSignIn(&UIScene_CreateWorldMenu::StartGame_SignInReturned, pClass, false, iPad);
}
#endif
return 0;
}
@@ -100,7 +100,7 @@ void UIScene_DLCMainMenu::handleInput(int iPad, int key, bool repeat, bool press
{
#ifdef __ORBIS__
sceNpCommerceHidePsStoreIcon();
#elif defined __PSVITA__
#elif defined(__PSVITA__) && !defined(DISABLE_PSN)
app.GetCommerce()->HidePsStoreIcon();
#endif
navigateBack();
@@ -174,7 +174,7 @@ int UIScene_DLCMainMenu::ExitDLCMainMenu(void *pParam,int iPad,C4JStorage::EMess
#ifdef __ORBIS__
sceNpCommerceHidePsStoreIcon();
#elif defined __PSVITA__
#elif defined(__PSVITA__) && !defined(DISABLE_PSN)
app.GetCommerce()->HidePsStoreIcon();
#endif
pClass->navigateBack();
@@ -201,7 +201,7 @@ void UIScene_DLCMainMenu::tick()
{
UIScene::tick();
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
if((m_bCategoriesShown==false) && (app.GetCommerceCategoriesRetrieved()))
{
// disable the timer display on this menu
@@ -6,7 +6,7 @@
#include "Common\Network\Sony\SonyHttp.h"
#endif
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
#include "PSVita\Network\SonyCommerce_Vita.h"
#endif
@@ -107,7 +107,7 @@ int UIScene_DLCOffersMenu::ExitDLCOffersMenu(void *pParam,int iPad,C4JStorage::E
#ifdef __ORBIS__
sceNpCommerceHidePsStoreIcon();
#elif defined __PSVITA__
#elif defined(__PSVITA__) && !defined(DISABLE_PSN)
app.GetCommerce()->HidePsStoreIcon();
#endif
ui.NavigateToHomeMenu();//iPad,eUIScene_MainMenu);
@@ -335,7 +335,7 @@ void UIScene_DLCOffersMenu::tick()
{
UIScene::tick();
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__))
if(m_bAddAllDLCButtons)
{
@@ -506,7 +506,7 @@ void UIScene_DLCOffersMenu::tick()
}
else
{
#ifdef __PSVITA__
#if !defined(DISABLE_PSN) && defined(__PSVITA__)
// MGH - fixes bug 5768 on Vita - should be extended properly to work for other platforms
if((SonyCommerce_Vita::getPurchasabilityUpdated()) && app.GetCommerceProductListRetrieved()&& app.GetCommerceProductListInfoRetrieved() && m_iTotalDLC > 0)
{
@@ -253,7 +253,7 @@ void UIScene_InGameInfoMenu::handleInput(int iPad, int key, bool repeat, bool pr
}
break;
case ACTION_MENU_Y:
#if defined(__PS3__) || defined(__ORBIS__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__))
if(pressed && iPad == ProfileManager.GetPrimaryPad())
{
#ifdef __PS3__
@@ -290,7 +290,7 @@ void UIScene_InGameInfoMenu::handleInput(int iPad, int key, bool repeat, bool pr
{
#ifdef __PSVITA__
PSVITA_STUBBED;
#else
#elif !defined(DISABLE_PSN)
ProfileManager.ShowProfileCard(iPad,uid);
#endif
}
@@ -502,6 +502,9 @@ UIScene_InGameInfoMenu::PlayerInfo *UIScene_InGameInfoMenu::BuildPlayerInfo(INet
#if defined __PS3__ || defined __PSVITA__
int UIScene_InGameInfoMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
UIScene_InGameInfoMenu* pClass = (UIScene_InGameInfoMenu*)pParam;
if(result==C4JStorage::EMessage_ResultAccept)
@@ -514,6 +517,7 @@ int UIScene_InGameInfoMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStora
}
return 0;
#endif
}
int UIScene_InGameInfoMenu::ViewInvites_SignInReturned(void *pParam,bool bContinue, int iPad)
@@ -528,7 +532,7 @@ int UIScene_InGameInfoMenu::ViewInvites_SignInReturned(void *pParam,bool bContin
#elif defined(__PS3__)
int ret = sceNpBasicRecvMessageCustom(SCE_NP_BASIC_MESSAGE_MAIN_TYPE_INVITE, SCE_NP_BASIC_RECV_MESSAGE_OPTIONS_INCLUDE_BOOTABLE, SYS_MEMORY_CONTAINER_ID_INVALID);
app.DebugPrintf("sceNpBasicRecvMessageCustom return %d ( %08x )\n", ret, ret);
#else // __PSVITA__
#elif !defined(DISABLE_PSN) // __PSVITA__
SQRNetworkManager_Vita::RecvInviteGUI();
#endif
}
+96 -18
View File
@@ -7,6 +7,7 @@
#include "..\..\MinecraftServer.h"
#include "..\..\..\Minecraft.World\net.minecraft.world.level.h"
#include "..\..\..\Minecraft.World\net.minecraft.world.h"
#include "..\..\Common\Network\NetworkSocketLayer.h"
#define UPDATE_PLAYERS_TIMER_ID 0
#define UPDATE_PLAYERS_TIMER_TIME 30000
@@ -50,7 +51,6 @@ void UIScene_JoinMenu::tick()
g_NetworkManager.GetFullFriendSessionInfo(m_selectedSession, &friendSessionUpdated, this);
m_friendInfoRequestIssued = true;
}
if( m_friendInfoUpdatedOK )
{
m_friendInfoUpdatedOK = false;
@@ -59,7 +59,7 @@ void UIScene_JoinMenu::tick()
m_buttonListPlayers.init(eControl_GamePlayers);
#if defined(__PS3__) || defined(__ORBIS__) || defined __PSVITA__
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined __PSVITA__)
for( int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++ )
{
if( m_selectedSession->data.players[i] != NULL )
@@ -105,6 +105,21 @@ void UIScene_JoinMenu::tick()
break;
}
}
#elif defined(_WINDOWS64) || defined(DISABLE_PSN)
for( int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++ )
{
if( m_selectedSession->data.players[i] != 0 && m_selectedSession->data.szPlayers[i][0] != 0 )
{
string playerName(m_selectedSession->data.szPlayers[i], XUSER_NAME_SIZE);
size_t end = playerName.find('\0');
if (end != string::npos) playerName.resize(end);
m_buttonListPlayers.addItem(playerName);
}
else
{
break;
}
}
#endif
m_labelLabels[eLabel_Difficulty].init(app.GetString(IDS_LABEL_DIFFICULTY));
@@ -353,6 +368,15 @@ void UIScene_JoinMenu::checkPrivilegeCallback(LPVOID lpParam, bool hasPrivilege,
void UIScene_JoinMenu::StartSharedLaunchFlow()
{
const bool bManualJoin = (g_MultiplayerJoin == true);
if (bManualJoin)
{
JoinGame(this);
return;
}
#if defined DISABLE_PSN
JoinGame(this);
#else
if(!app.IsLocalMultiplayerAvailable())
{
JoinGame(this);
@@ -366,12 +390,17 @@ void UIScene_JoinMenu::StartSharedLaunchFlow()
info.requireOnline = true;
ui.NavigateToScene(ProfileManager.GetPrimaryPad(),eUIScene_QuadrantSignin,&info);
}
#endif
}
int UIScene_JoinMenu::StartGame_SignInReturned(void *pParam,bool bContinue, int iPad)
{
UIScene_JoinMenu* pClass = (UIScene_JoinMenu*)ui.GetSceneFromCallbackId((size_t)pParam);
#if defined DISABLE_PSN
JoinGame(pClass);
return 0;
#else
if(pClass)
{
if(bContinue==true)
@@ -392,11 +421,18 @@ int UIScene_JoinMenu::StartGame_SignInReturned(void *pParam,bool bContinue, int
}
}
return 0;
#endif
}
// Shared function to join the game that is the same whether we used the sign-in UI or not
void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
{
if (pClass == NULL)
{
return;
}
const bool bManualJoin = (g_MultiplayerJoin == true);
DWORD dwSignedInUsers = 0;
bool noPrivileges = false;
DWORD dwLocalUsersMask = 0;
@@ -404,10 +440,14 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
int iPadNotSignedInLive = -1;
ProfileManager.SetLockedProfile(0); // TEMP!
if (bManualJoin)
{
isSignedInLive = true;
}
// If we're in SD mode, then only the primary player gets to play
if (app.IsLocalMultiplayerAvailable())
{
{
for(unsigned int index = 0; index < XUSER_MAX_COUNT; ++index)
{
if(ProfileManager.IsSignedIn(index))
@@ -418,7 +458,7 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
iPadNotSignedInLive = index;
}
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
if( !bManualJoin && !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
isSignedInLive = isSignedInLive && ProfileManager.IsSignedInLive(index);
}
@@ -428,11 +468,13 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
{
if(ProfileManager.IsSignedIn(ProfileManager.GetPrimaryPad()))
{
if( !ProfileManager.AllowedToPlayMultiplayer(ProfileManager.GetPrimaryPad()) ) noPrivileges = true;
if( !bManualJoin && !ProfileManager.AllowedToPlayMultiplayer(ProfileManager.GetPrimaryPad()) ) noPrivileges = true;
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(ProfileManager.GetPrimaryPad());
#ifndef DISABLE_PSN
isSignedInLive = ProfileManager.IsSignedInLive(ProfileManager.GetPrimaryPad());
#ifdef __PSVITA__
#endif
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode() && SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())
isSignedInLive = true;
#endif
@@ -441,7 +483,7 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
}
// If this is an online game but not all players are signed in to Live, stop!
if (!isSignedInLive)
if (!bManualJoin && !isSignedInLive)
{
#ifdef __ORBIS__
// Check if PSN is unavailable because of age restriction
@@ -470,15 +512,23 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
BOOL pccAllowed = TRUE;
BOOL pccFriendsAllowed = TRUE;
#if defined(__PS3__) || defined(__PSVITA__)
if(isSignedInLive)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__PSVITA__))
if(!bManualJoin && isSignedInLive)
{
ProfileManager.GetChatAndContentRestrictions(ProfileManager.GetPrimaryPad(),false,&noUGC,NULL,NULL);
}
#else
ProfileManager.AllowedPlayerCreatedContent(ProfileManager.GetPrimaryPad(),false,&pccAllowed,&pccFriendsAllowed);
if(!pccAllowed && !pccFriendsAllowed) noUGC = true;
if(!bManualJoin)
{
ProfileManager.AllowedPlayerCreatedContent(ProfileManager.GetPrimaryPad(),false,&pccAllowed,&pccFriendsAllowed);
if(!pccAllowed && !pccFriendsAllowed) noUGC = true;
}
#endif
if (bManualJoin)
{
noUGC = false;
noPrivileges = false;
}
#ifdef __PSVITA__
@@ -508,13 +558,16 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
ui.RequestErrorMessage( IDS_NO_MULTIPLAYER_PRIVILEGE_TITLE, IDS_NO_MULTIPLAYER_PRIVILEGE_JOIN_TEXT, uiIDA,1,ProfileManager.GetPrimaryPad());
}
else
{
#if defined(__ORBIS__) || defined(__PSVITA__)
bool chatRestricted = false;
ProfileManager.GetChatAndContentRestrictions(ProfileManager.GetPrimaryPad(),false,&chatRestricted,NULL,NULL);
if(chatRestricted)
{
ProfileManager.DisplaySystemMessage( SCE_MSG_DIALOG_SYSMSG_TYPE_TRC_PSN_CHAT_RESTRICTION, ProfileManager.GetPrimaryPad() );
#if defined(__ORBIS__) || defined(__PSVITA__)
if(!bManualJoin)
{
bool chatRestricted = false;
ProfileManager.GetChatAndContentRestrictions(ProfileManager.GetPrimaryPad(),false,&chatRestricted,NULL,NULL);
if(chatRestricted)
{
ProfileManager.DisplaySystemMessage( SCE_MSG_DIALOG_SYSMSG_TYPE_TRC_PSN_CHAT_RESTRICTION, ProfileManager.GetPrimaryPad() );
}
}
#endif
CGameNetworkManager::eJoinGameResult result = g_NetworkManager.JoinGame( pClass->m_selectedSession, dwLocalUsersMask );
@@ -524,6 +577,7 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
if( result != CGameNetworkManager::JOINGAME_SUCCESS )
{
pClass->m_bIgnoreInput = false;
int exitReasonStringId = -1;
switch(result)
{
@@ -590,7 +644,31 @@ void UIScene_JoinMenu::handleTimerComplete(int id)
playersList.SetCurSel(selectedIndex);
}
#endif
#if defined(_WINDOWS64) || defined(DISABLE_PSN)
{
bool success = g_NetworkManager.GetGameSessionInfo(m_iPad, m_selectedSession->sessionId, m_selectedSession);
if (success)
{
m_buttonListPlayers.clearList();
for (unsigned int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; ++i)
{
if (m_selectedSession->data.players[i] != 0 && m_selectedSession->data.szPlayers[i][0] != 0)
{
string playerName(m_selectedSession->data.szPlayers[i], XUSER_NAME_SIZE);
size_t end = playerName.find('\0');
if (end != string::npos) playerName.resize(end);
m_buttonListPlayers.addItem(playerName);
}
else
{
break;
}
}
}
}
#endif
addTimer(UPDATE_PLAYERS_TIMER_ID, UPDATE_PLAYERS_TIMER_TIME);
}
break;
};
}
}
@@ -731,7 +731,7 @@ void UIScene_LeaderboardsMenu::CopyLeaderboardEntry(LeaderboardManager::ReadScor
}
}
#ifdef __PS3__
#if !defined(DISABLE_PSN) && defined(__PS3__)
// m_name can be unicode characters somehow for Japan - should use m_onlineID
wstring wstr=convStringToWstring(statsRow->m_uid.getOnlineID());
swprintf(leaderboardEntry->m_gamerTag, XUSER_NAME_SIZE, L"%ls",wstr.c_str());
@@ -1550,7 +1550,7 @@ void UIScene_LoadMenu::StartGameFromSave(UIScene_LoadMenu* pClass, DWORD dwLocal
}
bool isClientSide = ProfileManager.IsSignedInLive(ProfileManager.GetPrimaryPad()) && pClass->m_MoreOptionsParams.bOnlineGame;
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode())
{
if(SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())// && pClass->m_MoreOptionsParams.bOnlineGame)
@@ -1784,17 +1784,20 @@ void UIScene_LoadMenu::handleGainFocus(bool navBack)
}
}
#ifdef __ORBIS__
#if defined __ORBIS__
int UIScene_LoadMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
UIScene_LoadMenu* pClass = (UIScene_LoadMenu *)pParam;
pClass->m_bIgnoreInput = false;
#ifdef DISABLE_PSN
UIScene_LoadMenu::StartGame_SignInReturned(pParam, true, iPad);
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
SQRNetworkManager_Orbis::AttemptPSNSignIn(&UIScene_LoadMenu::StartGame_SignInReturned, pClass, false, iPad);
}
#endif
return 0;
}
@@ -14,6 +14,7 @@
#include "..\..\TexturePackRepository.h"
#include "..\..\TexturePack.h"
#include "..\Network\SessionInfo.h"
#include "..\..\Common\Network\NetworkSocketLayer.h"
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#include "Common\Network\Sony\SonyHttp.h"
#include "Common\Network\Sony\SonyRemoteStorage.h"
@@ -181,7 +182,7 @@ UIScene_LoadOrJoinMenu::UIScene_LoadOrJoinMenu(int iPad, void *initData, UILayer
Initialise();
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode() && SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())
{
g_NetworkManager.startAdhocMatching(); // create the client matching context and clear out the friends list
@@ -290,13 +291,7 @@ UIScene_LoadOrJoinMenu::~UIScene_LoadOrJoinMenu()
g_NetworkManager.SetSessionsUpdatedCallback( NULL, NULL );
app.SetLiveLinkRequired( false );
if(m_currentSessions)
{
for(AUTO_VAR(it, m_currentSessions->begin()); it < m_currentSessions->end(); ++it)
{
delete (*it);
}
}
delete m_currentSessions;
#if TO_BE_IMPLEMENTED
// Reset the background downloading, in case we changed it by attempting to download a texture pack
@@ -1019,7 +1014,7 @@ void UIScene_LoadOrJoinMenu::handleInput(int iPad, int key, bool repeat, bool pr
#endif
break;
case ACTION_MENU_Y:
#if defined(__PS3__) || defined(__PSVITA__) || defined(__ORBIS__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__PSVITA__) || defined(__ORBIS__))
m_eAction = eAction_ViewInvites;
if(pressed && iPad == ProfileManager.GetPrimaryPad())
{
@@ -1391,20 +1386,24 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
if( m_buttonListGames.getItemCount() > 0 && gameIndex < m_currentSessions->size() )
{
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
const bool bManualJoin = (g_MultiplayerJoin == true);
// 4J-PB - is the player allowed to join games?
bool noUGC=false;
bool bContentRestricted=false;
// we're online, since we are joining a game
ProfileManager.GetChatAndContentRestrictions(m_iPad,true,&noUGC,&bContentRestricted,NULL);
// A direct LAN join should probnot use PSN matchmaking or account privileges (nansess)
if(!bManualJoin)
{
ProfileManager.GetChatAndContentRestrictions(m_iPad,true,&noUGC,&bContentRestricted,NULL);
}
#ifdef __ORBIS__
// 4J Stu - On PS4 we don't restrict playing multiplayer based on chat restriction, so remove this check
noUGC = false;
bool bPlayStationPlus=true;
int iPadWithNoPlaystationPlus=0;
bool isSignedInLive = true;
int iPadWithNoPlaystationPlus=-1;
bool isSignedInLive = true;
int iPadNotSignedInLive = -1;
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
{
@@ -1420,6 +1419,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
if(ProfileManager.HasPlayStationPlus(i)==false)
{
bPlayStationPlus=false;
iPadWithNoPlaystationPlus = (int)i;
break;
}
}
@@ -1433,7 +1433,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
}
#endif
if(noUGC)
if(!bManualJoin && noUGC)
{
// not allowed to join
#ifndef __PSVITA__
@@ -1449,7 +1449,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
m_bIgnoreInput=false;
return;
}
else if(bContentRestricted)
else if(!bManualJoin && bContentRestricted)
{
ui.RequestContentRestrictedMessageBox();
@@ -1458,7 +1458,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
}
#ifdef __ORBIS__
// If this is an online game but not all players are signed in to Live, stop!
else if (!isSignedInLive)
else if (!bManualJoin && !isSignedInLive)
{
UINT uiIDA[1];
uiIDA[0]=IDS_CONFIRM_OK;
@@ -1477,7 +1477,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
}
return;
}
else if(bPlayStationPlus==false)
else if(!bManualJoin && bPlayStationPlus==false)
{
if(ProfileManager.RequestingPlaystationPlus(iPadWithNoPlaystationPlus))
@@ -1486,6 +1486,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
UINT uiIDA[1];
uiIDA[0]=IDS_OK;
ui.RequestAlertMessage(IDS_ERROR_NETWORK_TITLE, IDS_ERROR_NETWORK, uiIDA, 1, ProfileManager.GetPrimaryPad(), NULL, NULL);
m_bIgnoreInput=false;
return;
}
@@ -1558,7 +1559,7 @@ void UIScene_LoadOrJoinMenu::CheckAndJoinGame(int gameIndex)
return;
}
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode() && !SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())
{
// not connected to adhoc anymore, must have connected back to PSN to buy texture pack so sign in again
@@ -2231,6 +2232,9 @@ int UIScene_LoadOrJoinMenu::MustSignInTexturePack(void *pParam,int iPad,C4JStora
{
UIScene_LoadOrJoinMenu* pClass = (UIScene_LoadOrJoinMenu*)pParam;
#ifdef DISABLE_PSN
UIScene_LoadOrJoinMenu::MustSignInReturnedTexturePack(pClass, true, iPad);
#else
if(result==C4JStorage::EMessage_ResultAccept)
{
SQRNetworkManager_Vita::AttemptPSNSignIn(&UIScene_LoadOrJoinMenu::MustSignInReturnedTexturePack, pClass);
@@ -2240,6 +2244,7 @@ int UIScene_LoadOrJoinMenu::MustSignInTexturePack(void *pParam,int iPad,C4JStora
pClass->m_bIgnoreInput = false;
}
#endif
return 0;
}
@@ -2385,6 +2390,9 @@ int UIScene_LoadOrJoinMenu::TexturePackDialogReturned(void *pParam,int iPad,C4JS
#if defined __PS3__ || defined __PSVITA__ || defined __ORBIS__
int UIScene_LoadOrJoinMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
UIScene_LoadOrJoinMenu* pClass = (UIScene_LoadOrJoinMenu*)pParam;
if(result==C4JStorage::EMessage_ResultAccept)
@@ -2403,6 +2411,7 @@ int UIScene_LoadOrJoinMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStora
}
return 0;
#endif
}
int UIScene_LoadOrJoinMenu::PSN_SignInReturned(void *pParam,bool bContinue, int iPad)
@@ -2416,6 +2425,7 @@ int UIScene_LoadOrJoinMenu::PSN_SignInReturned(void *pParam,bool bContinue, int
// Check if we're signed in to LIVE
if(ProfileManager.IsSignedInLive(iPad))
{
#ifndef DISABLE_PSN
#if defined(__PS3__)
int ret = sceNpBasicRecvMessageCustom(SCE_NP_BASIC_MESSAGE_MAIN_TYPE_INVITE, SCE_NP_BASIC_RECV_MESSAGE_OPTIONS_INCLUDE_BOOTABLE, SYS_MEMORY_CONTAINER_ID_INVALID);
app.DebugPrintf("sceNpBasicRecvMessageCustom return %d ( %08x )\n", ret, ret);
@@ -2423,6 +2433,7 @@ int UIScene_LoadOrJoinMenu::PSN_SignInReturned(void *pParam,bool bContinue, int
SQRNetworkManager_Vita::RecvInviteGUI();
#else
SQRNetworkManager_Orbis::RecvInviteGUI();
#endif
#endif
}
break;
@@ -8,6 +8,7 @@
#include "UIScene_MainMenu.h"
#ifdef __ORBIS__
#include <error_dialog.h>
#include "..\..\Common\Network\NetworkSocketLayer.h"
#endif
Random *UIScene_MainMenu::random = new Random();
@@ -318,7 +319,16 @@ void UIScene_MainMenu::handlePress(F64 controlId, F64 childId)
//CD - Added for audio
ui.PlayUISFX(eSFX_Press);
ProfileManager.RefreshChatAndContentRestrictions(RefreshChatAndContentRestrictionsReturned_PlayGame, this);
if(g_MultiplayerJoin)
{
// request only completes after the platform network timeout.
// this needs to be done before hand or else the PS4 crashes ill need to look more into this
CreateLoad_SignInReturned(this, true, primaryPad);
}
else
{
ProfileManager.RefreshChatAndContentRestrictions(RefreshChatAndContentRestrictionsReturned_PlayGame, this);
}
}
#else
m_eAction=eAction_RunGame;
@@ -550,6 +560,7 @@ int UIScene_MainMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EM
{
UIScene_MainMenu* pClass = (UIScene_MainMenu*)pParam;
#ifndef DISABLE_PSN
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef __PS3__
@@ -629,6 +640,9 @@ int UIScene_MainMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EM
pClass->m_bIgnorePress=false;
}
}
#endif
CreateLoad_SignInReturned(pClass, true, 0);
pClass->m_bIgnorePress=false;
return 0;
}
@@ -736,7 +750,7 @@ int UIScene_MainMenu::CreateLoad_SignInReturned(void *pParam, bool bContinue, in
if(ProfileManager.IsFullVersion())
{
bool bSignedInLive = ProfileManager.IsSignedInLive(iPad);
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(CGameNetworkManager::usingAdhocMode())
{
if(SQRNetworkManager_AdHoc_Vita::GetAdhocStatus())
@@ -1094,6 +1108,12 @@ void UIScene_MainMenu::RefreshChatAndContentRestrictionsReturned_PlayGame(void *
int primaryPad = ProfileManager.GetPrimaryPad();
UIScene_MainMenu* pClass = (UIScene_MainMenu*)pParam;
const bool bManualJoin = (g_MultiplayerJoin == true);
if (bManualJoin)
{
CreateLoad_SignInReturned(pClass, true, primaryPad);
return;
}
int (*signInReturnedFunc) (LPVOID,const bool, const int iPad) = NULL;
@@ -1323,7 +1343,7 @@ void UIScene_MainMenu::RunPlayGame(int iPad)
{
// are we offline?
bool bSignedInLive = ProfileManager.IsSignedInLive(iPad);
#ifdef __PSVITA__
#if !defined DISABLE_PSN && defined __PSVITA__
if(app.GetGameSettings(ProfileManager.GetPrimaryPad(),eGameSetting_PSVita_NetworkModeAdhoc) == true)
{
CGameNetworkManager::setAdhocMode(true);
@@ -409,7 +409,7 @@ void UIScene_PauseMenu::handleInput(int iPad, int key, bool repeat, bool pressed
case ACTION_MENU_Y:
{
#if defined(__PS3__) || defined(__ORBIS__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__))
if(pressed && iPad == ProfileManager.GetPrimaryPad())
{
#ifdef __ORBIS__
@@ -1029,6 +1029,9 @@ int UIScene_PauseMenu::BanGameDialogReturned(void *pParam,int iPad,C4JStorage::E
#if defined(__PS3__) || defined (__PSVITA__) || defined(__ORBIS__)
int UIScene_PauseMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
UIScene_PauseMenu* pClass = (UIScene_PauseMenu*)ui.GetSceneFromCallbackId((size_t)pParam);
if(result==C4JStorage::EMessage_ResultAccept && pClass)
{
@@ -1091,6 +1094,7 @@ int UIScene_PauseMenu::MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::E
}
return 0;
#endif
}
int UIScene_PauseMenu::ViewLeaderboards_SignInReturned(void *pParam,bool bContinue, int iPad)
@@ -1131,6 +1135,9 @@ int UIScene_PauseMenu::ViewLeaderboards_SignInReturned(void *pParam,bool bContin
int UIScene_PauseMenu::WarningTrialTexturePackReturned(void *pParam,int iPad,C4JStorage::EMessageResult result)
{
#ifdef DISABLE_PSN
return 0;
#else
UIScene_PauseMenu* pClass = (UIScene_PauseMenu*)ui.GetSceneFromCallbackId((size_t)pParam);
#ifdef __ORBIS__
@@ -1244,7 +1251,7 @@ int UIScene_PauseMenu::WarningTrialTexturePackReturned(void *pParam,int iPad,C4J
}
}
#endif //
#endif
return 0;
}
@@ -1333,6 +1340,7 @@ int UIScene_PauseMenu::ViewInvites_SignInReturned(void *pParam,bool bContinue, i
// Check if we're signed in to LIVE
if(ProfileManager.IsSignedInLive(iPad))
{
#ifndef DISABLE_PSN
#ifdef __ORBIS__
SQRNetworkManager_Orbis::RecvInviteGUI();
#elif defined __PS3__
@@ -1340,6 +1348,7 @@ int UIScene_PauseMenu::ViewInvites_SignInReturned(void *pParam,bool bContinue, i
app.DebugPrintf("sceNpBasicRecvMessageCustom return %d ( %08x )\n", ret, ret);
#else // __PSVITA__
PSVITA_STUBBED;
#endif
#endif
}
}
@@ -110,7 +110,7 @@ void UIScene_SaveMessage::handlePress(F64 controlId, F64 childId)
m_bIgnoreInput=true;
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__))
// wait for the profile to be read - this has been kicked off earlier, so should be read by now
addTimer(PROFILE_LOADED_TIMER_ID,PROFILE_LOADED_TIMER_TIME);
#else
@@ -141,13 +141,17 @@ void UIScene_SaveMessage::handleTimerComplete(int id)
// set defaults - which has already been done
killTimer(PROFILE_LOADED_TIMER_ID);
ui.NavigateToHomeMenu();
#ifndef DISABLE_PSN
SQRNetworkManager::SafeToRespondToGameBootInvite();
#endif
app.SetOptionsCallbackStatus(0,C4JStorage::eOptions_Callback_Idle);
break;
case C4JStorage::eOptions_Callback_Read_CorruptDeleted:
killTimer(PROFILE_LOADED_TIMER_ID);
ui.NavigateToHomeMenu();
#ifndef DISABLE_PSN
SQRNetworkManager::SafeToRespondToGameBootInvite();
#endif
app.SetOptionsCallbackStatus(0,C4JStorage::eOptions_Callback_Idle);
break;
case C4JStorage::eOptions_Callback_Read_Corrupt:
@@ -46,6 +46,7 @@ UIScene_SignEntryMenu::UIScene_SignEntryMenu(int iPad, void *_initData, UILayer
m_signRows[i].SetTitleAndText(IDS_SIGN_TITLE,IDS_SIGN_TITLE_TEXT);
#endif
m_textInputLines[i].init(m_sign->GetMessage(i).c_str(), i);
m_textInputLines[i].SetCharLimit(15);
}
parentLayer->addComponent(iPad,eUIComponent_MenuBackground);
@@ -150,6 +151,7 @@ int UIScene_SignEntryMenu::KeyboardCompleteCallback(LPVOID lpParam,bool bRes)
uint16_t pchText[128];
ZeroMemory(pchText, 128 * sizeof(uint16_t) );
InputManager.GetText(pchText);
pchText[15] = 0;
pClass->m_textInputLines[pClass->m_iEditingLine].setLabel((wchar_t *)pchText);
}
return 0;
@@ -1518,6 +1518,7 @@ void UIScene_SkinSelectMenu::HandleDLCMountingComplete()
void UIScene_SkinSelectMenu::showNotOnlineDialog(int iPad)
{
// need to be signed in to live. get them to sign in to online
#ifndef DISABLE_PSN
#if defined(__PS3__)
SQRNetworkManager_PS3::AttemptPSNSignIn(NULL, this);
@@ -1543,6 +1544,7 @@ void UIScene_SkinSelectMenu::showNotOnlineDialog(int iPad)
UINT uiIDA[1] = { IDS_CONFIRM_OK };
ui.RequestErrorMessage(IDS_PRO_NOTONLINE_TITLE, IDS_PRO_XBOXLIVE_NOTIFICATION, uiIDA, 1, iPad );
#endif
#endif
}
@@ -1701,12 +1703,16 @@ int UIScene_SkinSelectMenu::MustSignInReturned(void *pParam,int iPad,C4JStorage:
{
if(result==C4JStorage::EMessage_ResultAccept)
{
#ifdef DISABLE_PSN
UIScene_SkinSelectMenu::PSNSignInReturned(pParam, true, iPad);
#else
#ifdef __PS3__
SQRNetworkManager_PS3::AttemptPSNSignIn(&UIScene_SkinSelectMenu::PSNSignInReturned, pParam,true);
#elif defined __PSVITA__
SQRNetworkManager_Vita::AttemptPSNSignIn(&UIScene_SkinSelectMenu::PSNSignInReturned, pParam,true);
#elif defined __ORBIS__
SQRNetworkManager_Orbis::AttemptPSNSignIn(&UIScene_SkinSelectMenu::PSNSignInReturned, pParam,true);
#endif
#endif
}
return 0;
@@ -1105,6 +1105,7 @@ void CScene_Leaderboards::CopyLeaderboardEntry(PXUSER_STATS_ROW statsRow, Leader
}
//Is the player
#ifndef _DISABLE_XBLIVE
if( statsRow->xuid == ((XboxLeaderboardManager*)LeaderboardManager::Instance())->GetMyXUID() )
{
leaderboardEntry->m_bPlayer = true;
@@ -1143,6 +1144,7 @@ void CScene_Leaderboards::CopyLeaderboardEntry(PXUSER_STATS_ROW statsRow, Leader
}
}
}
#endif
}
void CScene_Leaderboards::SetLeaderboardHeader()
@@ -37,6 +37,7 @@ HRESULT CScene_MultiGameInfo::OnInit( XUIMessageInit* pInitData, BOOL& bHandled
// 4J-PB - don't delete this - it's part of the joinload structure
//delete initData;
#ifndef _DISABLE_XBLIVE
for(unsigned int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; ++i)
{
if( m_selectedSession->data.players[i] != NULL )
@@ -59,6 +60,7 @@ HRESULT CScene_MultiGameInfo::OnInit( XUIMessageInit* pInitData, BOOL& bHandled
break;
}
}
#endif
unsigned int uiGameHostSettings = m_selectedSession->data.m_uiGameHostSettings;
switch(app.GetGameHostOption(uiGameHostSettings,eGameHostOption_Difficulty))
@@ -185,12 +187,14 @@ HRESULT CScene_MultiGameInfo::OnKeyDown(XUIMessageInput* pInputData, BOOL& rfHan
rfHandled = TRUE;
break;
case VK_PAD_Y:
#ifndef _DISABLE_XBLIVE
if(m_selectedSession != NULL && playersList.TreeHasFocus() && playersList.GetItemCount() > 0)
{
PlayerUID xuid = m_selectedSession->data.players[playersList.GetCurSel()];
if( xuid != INVALID_XUID )
hr = XShowGamerCardUI(ProfileManager.GetLockedProfile(), xuid);
}
#endif
break;
}
@@ -351,6 +355,7 @@ HRESULT CScene_MultiGameInfo::OnTimer( XUIMessageTimer *pTimer, BOOL& bHandled )
{
if ( pTimer->nId == UPDATE_PLAYERS_TIMER_ID)
{
#ifndef _DISABLE_XBLIVE
PlayerUID selectedPlayerXUID = m_selectedSession->data.players[playersList.GetCurSel()];
bool success = g_NetworkManager.GetGameSessionInfo(m_iPad, m_selectedSession->sessionId,m_selectedSession);
@@ -384,6 +389,7 @@ HRESULT CScene_MultiGameInfo::OnTimer( XUIMessageTimer *pTimer, BOOL& bHandled )
}
playersList.SetCurSel(selectedIndex);
}
#endif
}
return S_OK;
@@ -1,7 +1,9 @@
#pragma once
using namespace std;
#include <vector>
#ifndef _DISABLE_XBLIVE
#include <qnet.h>
#endif
#include "..\Media\xuiscene_multi_gameinfo.h"
class FriendSessionInfo;
@@ -648,9 +648,11 @@ HRESULT CScene_MultiGameJoinLoad::OnKeyDown(XUIMessageInput* pInputData, BOOL& r
DWORD nIndex = m_pGamesList->GetCurSel();
FriendSessionInfo *pSelectedSession = currentSessions.at( nIndex );
#ifndef _DISABLE_XBLIVE
PlayerUID xuid = pSelectedSession->data.hostPlayerUID;
if( xuid != INVALID_XUID )
hr = XShowGamerCardUI(ProfileManager.GetLockedProfile(), xuid);
#endif
CXuiSceneBase::PlayUISFX(eSFX_Press);
}
else if(DoesSavesListHaveFocus())
@@ -4,14 +4,6 @@ Microsoft Visual Studio Solution File, Format Version 11.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameRules", "GameRules.vcxproj", "{0DD2FD59-36AC-476F-9201-D687A4CE9E98}"
EndProject
Global
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 2
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = http://tfs_server:8080/tfs/storiespark
SccProjectUniqueName0 = GameRules.vcxproj
SccLocalPath0 = .
SccLocalPath1 = .
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Xbox 360 = Debug|Xbox 360
Release|Xbox 360 = Release|Xbox 360
+185 -49
View File
@@ -5,6 +5,7 @@
#ifdef __PS3__
#include "PS3\Sentient\SentientManager.h"
#include "Common\Network\NetworkSocketLayer.h"
#include "StatsCounter.h"
#include "PS3\Social\SocialManager.h"
#include <libsn.h>
@@ -17,6 +18,7 @@
#include "Durango\DurangoExtras\xcompress.h"
#elif defined _WINDOWS64
#include "Windows64\Sentient\SentientManager.h"
#include "Common\Network\NetworkSocketLayer.h"
#include "StatsCounter.h"
#include "Windows64\Social\SocialManager.h"
#include "Windows64\Sentient\DynamicConfigurations.h"
@@ -26,6 +28,12 @@
#include "PSVita\Social\SocialManager.h"
#include "PSVita\Sentient\DynamicConfigurations.h"
#include <libperf.h>
#elif defined _XBOX
#include "Xbox\Sentient\SentientManager.h"
#include "StatsCounter.h"
#include "Xbox\Social\SocialManager.h"
#include "Xbox\Sentient\DynamicConfigurations.h"x
#include "Common\Network\IQNet.h"
#else
#include "Orbis\Sentient\SentientManager.h"
#include "StatsCounter.h"
@@ -34,6 +42,11 @@
#include <perf.h>
#endif
#if defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
#include "Common\Network\NetworkSocketLayer.h"
#endif
#ifndef _DISABLE_XBLIVE
#if !defined(__PS3__) && !defined(__ORBIS__) && !defined(__PSVITA__)
#ifdef _WINDOWS64
//C4JStorage StorageManager;
@@ -168,8 +181,10 @@ void PIXSetMarkerDeprecated(int a, char *b, ...) {}
bool IsEqualXUID(PlayerUID a, PlayerUID b)
{
#if defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__) || defined(_DURANGO)
#if !defined(DISABLE_PSN) && (defined(__PS3__) || defined(__ORBIS__) || defined (__PSVITA__) || defined(_DURANGO) || defined(_WINDOWS64) || defined(_XBOX))
return (a == b);
#elif defined(DISABLE_PSN)
return (a.XUID == b.XUID);
#else
return false;
#endif
@@ -185,49 +200,6 @@ D3DXVECTOR3::D3DXVECTOR3() {}
D3DXVECTOR3::D3DXVECTOR3(float x,float y,float z) : x(x), y(y), z(z) {}
D3DXVECTOR3& D3DXVECTOR3::operator += ( CONST D3DXVECTOR3& add ) { x += add.x; y += add.y; z += add.z; return *this; }
BYTE IQNetPlayer::GetSmallId() { return 0; }
void IQNetPlayer::SendData(IQNetPlayer *player, const void *pvData, DWORD dwDataSize, DWORD dwFlags)
{
app.DebugPrintf("Sending from 0x%x to 0x%x %d bytes\n",this,player,dwDataSize);
}
bool IQNetPlayer::IsSameSystem(IQNetPlayer *player) { return true; }
DWORD IQNetPlayer::GetSendQueueSize( IQNetPlayer *player, DWORD dwFlags ) { return 0; }
DWORD IQNetPlayer::GetCurrentRtt() { return 0; }
bool IQNetPlayer::IsHost() { return this == &IQNet::m_player[0]; }
bool IQNetPlayer::IsGuest() { return false; }
bool IQNetPlayer::IsLocal() { return true; }
PlayerUID IQNetPlayer::GetXuid() { return INVALID_XUID; }
LPCWSTR IQNetPlayer::GetGamertag() { static const wchar_t *test = L"stub"; return test; }
int IQNetPlayer::GetSessionIndex() { return 0; }
bool IQNetPlayer::IsTalking() { return false; }
bool IQNetPlayer::IsMutedByLocalUser(DWORD dwUserIndex) { return false; }
bool IQNetPlayer::HasVoice() { return false; }
bool IQNetPlayer::HasCamera() { return false; }
int IQNetPlayer::GetUserIndex() { return this - &IQNet::m_player[0]; }
void IQNetPlayer::SetCustomDataValue(ULONG_PTR ulpCustomDataValue) {
m_customData = ulpCustomDataValue;
}
ULONG_PTR IQNetPlayer::GetCustomDataValue() {
return m_customData;
}
IQNetPlayer IQNet::m_player[4];
bool _bQNetStubGameRunning = false;
HRESULT IQNet::AddLocalPlayerByUserIndex(DWORD dwUserIndex){ return S_OK; }
IQNetPlayer *IQNet::GetHostPlayer() { return &m_player[0]; }
IQNetPlayer *IQNet::GetLocalPlayerByUserIndex(DWORD dwUserIndex) { return &m_player[dwUserIndex]; }
IQNetPlayer *IQNet::GetPlayerByIndex(DWORD dwPlayerIndex) { return &m_player[0]; }
IQNetPlayer *IQNet::GetPlayerBySmallId(BYTE SmallId){ return &m_player[0]; }
IQNetPlayer *IQNet::GetPlayerByXuid(PlayerUID xuid){ return &m_player[0]; }
DWORD IQNet::GetPlayerCount() { return 1; }
QNET_STATE IQNet::GetState() { return _bQNetStubGameRunning ? QNET_STATE_GAME_PLAY : QNET_STATE_IDLE; }
bool IQNet::IsHost() { return true; }
HRESULT IQNet::JoinGameFromInviteInfo(DWORD dwUserIndex, DWORD dwUserMask, const INVITE_INFO *pInviteInfo) { return S_OK; }
void IQNet::HostGame() { _bQNetStubGameRunning = true; }
void IQNet::EndGame() { _bQNetStubGameRunning = false; }
DWORD MinecraftDynamicConfigurations::GetTrialTime() { return DYNAMIC_CONFIG_DEFAULT_TRIAL_TIME; }
void XSetThreadProcessor(HANDLE a, int b) {}
@@ -448,6 +420,156 @@ void C_4JProfile::Initialise( DWORD dwTitleID,
pGameSettings->ucTutorialCompletion[28] |= 1<<0;
}
}
#endif
#endif // DISABLE_XBLIVE
BYTE IQNetPlayer::GetSmallId() { return m_smallId; }
void IQNetPlayer::SendData(IQNetPlayer *player, const void *pvData, DWORD dwDataSize, DWORD dwFlags)
{
if (NetworkSocketLayer::IsActive())
{
NetworkSocketLayer::SendToSmallId(player->m_smallId, pvData, dwDataSize);
}
}
bool IQNetPlayer::IsSameSystem(IQNetPlayer *player) { return (this == player) || (!m_isRemote && !player->m_isRemote); }
DWORD IQNetPlayer::GetSendQueueSize( IQNetPlayer *player, DWORD dwFlags ) { return 0; }
DWORD IQNetPlayer::GetCurrentRtt() { return 0; }
bool IQNetPlayer::IsHost() { return m_isHostPlayer; }
bool IQNetPlayer::IsGuest() { return false; }
bool IQNetPlayer::IsLocal() { return !m_isRemote; }
PlayerUID IQNetPlayer::GetXuid() { return (PlayerUID)(0xe000d45248242f2e + m_smallId); }
LPCWSTR IQNetPlayer::GetGamertag() { return m_gamertag; }
int IQNetPlayer::GetSessionIndex() { return m_smallId; }
bool IQNetPlayer::IsTalking() { return false; }
bool IQNetPlayer::IsMutedByLocalUser(DWORD dwUserIndex) { return false; }
bool IQNetPlayer::HasVoice() { return false; }
bool IQNetPlayer::HasCamera() { return false; }
int IQNetPlayer::GetUserIndex() { return this - &IQNet::m_player[0]; }
void IQNetPlayer::SetCustomDataValue(ULONG_PTR ulpCustomDataValue) {
m_customData = ulpCustomDataValue;
}
ULONG_PTR IQNetPlayer::GetCustomDataValue() {
return m_customData;
}
IQNetPlayer IQNet::m_player[MINECRAFT_NET_MAX_PLAYERS];
DWORD IQNet::s_playerCount = 1;
bool IQNet::s_isHosting = true;
QNET_STATE _iQNetStubState = QNET_STATE_IDLE;
void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal)
{
player->m_smallId = smallId;
player->m_isRemote = !isLocal;
player->m_isHostPlayer = isHost;
swprintf(player->m_gamertag, 32, L"Player%d", smallId);
if (smallId >= IQNet::s_playerCount)
IQNet::s_playerCount = smallId + 1;
}
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index);
HRESULT IQNet::AddLocalPlayerByUserIndex(DWORD dwUserIndex){ return S_OK; }
IQNetPlayer *IQNet::GetHostPlayer() { return &m_player[0]; }
IQNetPlayer *IQNet::GetLocalPlayerByUserIndex(DWORD dwUserIndex)
{
if (s_isHosting)
{
if (dwUserIndex < MINECRAFT_NET_MAX_PLAYERS &&
!m_player[dwUserIndex].m_isRemote &&
Win64_IsActivePlayer(&m_player[dwUserIndex], dwUserIndex))
return &m_player[dwUserIndex];
return NULL;
}
if (dwUserIndex != 0)
return NULL;
for (DWORD i = 0; i < s_playerCount; i++)
{
if (!m_player[i].m_isRemote && Win64_IsActivePlayer(&m_player[i], i))
return &m_player[i];
}
return NULL;
}
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index)
{
if (index == 0) return true;
return (p->GetCustomDataValue() != 0);
}
IQNetPlayer *IQNet::GetPlayerByIndex(DWORD dwPlayerIndex)
{
DWORD found = 0;
for (DWORD i = 0; i < s_playerCount; i++)
{
if (Win64_IsActivePlayer(&m_player[i], i))
{
if (found == dwPlayerIndex) return &m_player[i];
found++;
}
}
return &m_player[0];
}
IQNetPlayer *IQNet::GetPlayerBySmallId(BYTE SmallId)
{
if (SmallId >= MINECRAFT_NET_MAX_PLAYERS)
return NULL;
m_player[SmallId].m_smallId = SmallId;
if (SmallId >= s_playerCount)
s_playerCount = SmallId + 1;
return &m_player[SmallId];
}
IQNetPlayer *IQNet::GetPlayerByXuid(PlayerUID xuid)
{
for (DWORD i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++)
{
if (Win64_IsActivePlayer(&m_player[i], i) && m_player[i].GetXuid() == xuid) return &m_player[i];
}
return NULL;
}
DWORD IQNet::GetPlayerCount()
{
DWORD count = 0;
for (DWORD i = 0; i < s_playerCount; i++)
{
if (Win64_IsActivePlayer(&m_player[i], i)) count++;
}
return count;
}
QNET_STATE IQNet::GetState() { return _iQNetStubState; }
bool IQNet::IsHost() { return s_isHosting; }
HRESULT IQNet::JoinGameFromInviteInfo(DWORD dwUserIndex, DWORD dwUserMask, const INVITE_INFO *pInviteInfo) { return S_OK; }
void IQNet::HostGame() { _iQNetStubState = QNET_STATE_SESSION_STARTING; s_isHosting = true; }
void IQNet::ClientJoinGame()
{
_iQNetStubState = QNET_STATE_SESSION_STARTING;
s_isHosting = false;
for (int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++)
{
m_player[i].m_smallId = (BYTE)i;
m_player[i].m_isRemote = true;
m_player[i].m_isHostPlayer = false;
m_player[i].m_gamertag[0] = 0;
m_player[i].SetCustomDataValue(0);
}
}
void IQNet::EndGame()
{
_iQNetStubState = QNET_STATE_IDLE;
s_isHosting = false;
s_playerCount = 1;
for (int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++)
{
m_player[i].m_smallId = (BYTE)i;
m_player[i].m_isRemote = false;
m_player[i].m_isHostPlayer = false;
m_player[i].m_gamertag[0] = 0;
m_player[i].SetCustomDataValue(0);
}
}
#ifndef _DISABLE_XBLIVE
#if defined _WINDOWS64 || (defined(__PS3__) && defined(DISABLE_PSN))
void C_4JProfile::SetTrialTextStringTable(CXuiStringTable *pStringTable,int iAccept,int iReject) {}
void C_4JProfile::SetTrialAwardText(eAwardType AwardType,int iTitle,int iText) {}
int C_4JProfile::GetLockedProfile() { return 0; }
@@ -460,11 +582,24 @@ UINT C_4JProfile::DisplayOfflineProfile(int( *Func)(LPVOID,const bool, const
UINT C_4JProfile::RequestConvertOfflineToGuestUI(int( *Func)(LPVOID,const bool, const int iPad),LPVOID lpParam,int iQuadrant) { return 0; }
void C_4JProfile::SetPrimaryPlayerChanged(bool bVal) {}
bool C_4JProfile::QuerySigninStatus(void) { return true; }
void C_4JProfile::GetXUID(int iPad, PlayerUID *pXuid,bool bOnlineXuid) {*pXuid = 0xe000d45248242f2e; }
BOOL C_4JProfile::AreXUIDSEqual(PlayerUID xuid1,PlayerUID xuid2) { return false; }
void C_4JProfile::GetXUID(int iPad, PlayerUID *pXuid,bool bOnlineXuid)
{
if (iPad != 0)
{
// previously INVALID_XUID
*pXuid = 0;
return;
}
if (IQNet::s_isHosting)
*pXuid = 0xe000d45248242f2e;
else
*pXuid = 0xe000d45248242f2e + NetworkSocketLayer::GetLocalSmallId();
}
BOOL C_4JProfile::AreXUIDSEqual(PlayerUID xuid1,PlayerUID xuid2) { return xuid1 == xuid2; }
BOOL C_4JProfile::XUIDIsGuest(PlayerUID xuid) { return false; }
bool C_4JProfile::AllowedToPlayMultiplayer(int iProf) { return true; }
#endif
#ifdef _WINDOWS64
#if defined(__ORBIS__)
bool C_4JProfile::GetChatAndContentRestrictions(int iPad, bool thisQuadrantOnly, bool *pbChatRestricted,bool *pbContentRestricted,int *piAge)
{
@@ -487,8 +622,8 @@ char fakeGamerTag[32] = "PlayerName";
void SetFakeGamertag(char *name){ strcpy_s(fakeGamerTag, name); }
char* C_4JProfile::GetGamertag(int iPad){ return fakeGamerTag; }
#else
char* C_4JProfile::GetGamertag(int iPad){ return "PlayerName"; }
wstring C_4JProfile::GetDisplayName(int iPad){ return L"PlayerName"; }
char* C_4JProfile::GetGamertag(int iPad){ extern char g_Win64Username[17]; return g_Win64Username; }
wstring C_4JProfile::GetDisplayName(int iPad){ extern wchar_t g_Win64UsernameW[17]; return g_Win64UsernameW; }
#endif
bool C_4JProfile::IsFullVersion() { return s_bProfileIsFullVersion; }
void C_4JProfile::SetSignInChangeCallback(void ( *Func)(LPVOID, bool, unsigned int),LPVOID lpParam) {}
@@ -654,4 +789,5 @@ void StatsCounter::WipeLeaderboards() {}
#ifdef __PS3__
bool C_4JProfile::IsFullVersion() { return true; }
#endif
#endif
File diff suppressed because it is too large Load Diff
@@ -726,6 +726,9 @@
<Filter Include="net\minecraft\client\resources">
<UniqueIdentifier>{889a84db-3009-4a7c-8234-4bf93d412690}</UniqueIdentifier>
</Filter>
<Filter Include="Windows64\Network">
<UniqueIdentifier>{a86cfe95-eafc-414e-8ba4-190ff049fde4}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<None Include="ReadMe.txt" />
@@ -890,6 +893,7 @@
<None Include="Common\Postbuilds\Windows64-postbuild.ps1" />
<None Include="Common\Postbuilds\Xbox-postbuild.ps1" />
<None Include="Common\Postbuilds\PSVita-postbuild.ps1" />
<None Include="ClassDiagram1.cd" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="stdafx.h">
@@ -3106,9 +3110,6 @@
<ClInclude Include="Xbox\Network\PlatformNetworkManagerXbox.h">
<Filter>Xbox\Source Files\Network</Filter>
</ClInclude>
<ClInclude Include="Common\Network\PlatformNetworkManagerStub.h">
<Filter>Common\Source Files\Network</Filter>
</ClInclude>
<ClInclude Include="Xbox\Network\NetworkPlayerXbox.h">
<Filter>Xbox\Source Files\Network</Filter>
</ClInclude>
@@ -3772,9 +3773,18 @@
<ClInclude Include="Common\Leaderboards\LeaderboardInterface.h">
<Filter>Common\Source Files\Leaderboards</Filter>
</ClInclude>
<ClInclude Include="PSVita\OldSdk.h">
<ClInclude Include="PSVita\PSVitaExtras\OldSdk.h">
<Filter>PSVita</Filter>
</ClInclude>
<ClInclude Include="Common\Network\IQNet.h">
<Filter>Common\Source Files\Network</Filter>
</ClInclude>
<ClInclude Include="Common\Network\NetworkSocketLayer.h">
<Filter>Common\Source Files\Network</Filter>
</ClInclude>
<ClInclude Include="Common\Network\PlatformNetworkManager.h">
<Filter>Common\Source Files\Network</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
@@ -5325,9 +5335,6 @@
<ClCompile Include="Xbox\Network\PlatformNetworkManagerXbox.cpp">
<Filter>Xbox\Source Files\Network</Filter>
</ClCompile>
<ClCompile Include="Common\Network\PlatformNetworkManagerStub.cpp">
<Filter>Common\Source Files\Network</Filter>
</ClCompile>
<ClCompile Include="Xbox\Network\NetworkPlayerXbox.cpp">
<Filter>Xbox\Source Files\Network</Filter>
</ClCompile>
@@ -5916,9 +5923,15 @@
<ClCompile Include="Common\Leaderboards\LeaderboardInterface.cpp">
<Filter>Common\Source Files\Leaderboards</Filter>
</ClCompile>
<ClCompile Include="PSVita\OldSdk.cpp">
<ClCompile Include="PSVita\PSVitaExtras\OldSdk.cpp">
<Filter>PSVita</Filter>
</ClCompile>
<ClCompile Include="Common\Network\NetworkSocketLayer.cpp">
<Filter>Common\Source Files\Network</Filter>
</ClCompile>
<ClCompile Include="Common\Network\PlatformNetworkManager.cpp">
<Filter>Common\Source Files\Network</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<Library Include="Xbox\4JLibs\libs\4J_Render_d.lib">
@@ -6176,6 +6189,7 @@
<Library Include="PSVita\4JLibs\libs\libSceNpToolkitUtils_rtti_dbg.a">
<Filter>PSVita\4JLibs\libs</Filter>
</Library>
<Library Include="Windows64\4JLibs\libs\4J_Profile.lib" />
</ItemGroup>
<ItemGroup>
<Xsd Include="Xbox\Sentient\SentientStats.xsd">
@@ -1,3 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>
+6
View File
@@ -3966,6 +3966,7 @@ void Minecraft::releaseLevel(int message)
// time when exiting from an online game
void Minecraft::forceStatsSave(int idx)
{
#ifndef DISABLE_PSN
//4J Gordon: Force a stats save
stats[idx]->save(idx, true);
@@ -3977,6 +3978,7 @@ void Minecraft::forceStatsSave(int idx)
stats[idx]->saveLeaderboards();
ProfileManager.SetLockedProfile(tempLockedProfile);
}
#endif
}
// 4J Added
@@ -4982,12 +4984,16 @@ ColourTable *Minecraft::getColourTable()
int Minecraft::MustSignInReturnedPSN(void *pParam, int iPad, C4JStorage::EMessageResult result)
{
Minecraft* pMinecraft = (Minecraft *)pParam;
#ifdef DISABLE_PSN
Minecraft::InGame_SignInReturned(pMinecraft, true, iPad);
#else
if(result == C4JStorage::EMessage_ResultAccept)
{
SQRNetworkManager_Orbis::AttemptPSNSignIn(&Minecraft::InGame_SignInReturned, pMinecraft, false, iPad);
}
#endif
return 0;
}
#endif
@@ -619,7 +619,6 @@ DWORD GetFileAttributesA(LPCSTR lpFileName)
SceFiosStat statData;
if(sceFiosStatSync(NULL, filePath, &statData) != SCE_FIOS_OK)
{
app.DebugPrintf("*** sceFiosStatSync Failed\n");
return -1;
}
if(statData.statFlags & SCE_FIOS_STATUS_DIRECTORY )
@@ -671,19 +670,25 @@ BOOL QueryPerformanceCounter(LARGE_INTEGER *lpPerformanceCount)
#ifndef _FINAL_BUILD
VOID OutputDebugStringW(LPCWSTR lpOutputString)
{
wprintf(lpOutputString);
VOID OutputDebugStringW(LPCWSTR lpOutputString)
{
if (lpOutputString != NULL)
wprintf(L"%ls", lpOutputString);
fflush(stdout);
}
VOID OutputDebugStringA(LPCSTR lpOutputString)
{
printf(lpOutputString);
VOID OutputDebugStringA(LPCSTR lpOutputString)
{
if (lpOutputString != NULL)
printf("%s", lpOutputString);
fflush(stdout);
}
VOID OutputDebugString(LPCSTR lpOutputString)
{
printf(lpOutputString);
VOID OutputDebugString(LPCSTR lpOutputString)
{
if (lpOutputString != NULL)
printf("%s", lpOutputString);
fflush(stdout);
}
#endif // _CONTENT_PACKAGE
@@ -787,4 +792,4 @@ DWORD XGetLocale()
DWORD XEnableGuestSignin(BOOL fEnable)
{
return 0;
}
}
+4
View File
@@ -550,7 +550,9 @@ void CConsoleMinecraftApp::CommerceTick()
{
SonyCommerce::ProductInfo *pProductInfo=&(pvProductList->at(j));
// just want the final 16 characters of the product id
#ifndef DISABLE_PSN
RegisterDLCData(&pProductInfo->productId[20],0,pProductInfo->imageUrl);
#endif
}
iter++;
}
@@ -1068,7 +1070,9 @@ void CConsoleMinecraftApp::SystemServiceTick()
{
case SCE_SYSTEM_SERVICE_EVENT_GAME_CUSTOM_DATA:
{
#ifndef DISABLE_PSN
OrbisNPToolkit::getMessageData((SceNpGameCustomDataEventParam*)event.data.param);
#endif
// Processing after invitation
//SceNpSessionInvitationEventParam* pInvite = (SceNpSessionInvitationEventParam*)event.data.param;
//SQRNetworkManager_Orbis::GetInviteDataAndProcess(pInvite);
@@ -39,8 +39,12 @@
#include "..\..\Minecraft.World\OldChunkStorage.h"
#include "Leaderboards\OrbisLeaderboardManager.h"
#ifndef DISABLE_PSN
#include "Network/Orbis_NPToolkit.h"
#include "Orbis\Network\SonyVoiceChat_Orbis.h"
#else
#include "..\..\Minecraft.Client\Common\Network\NetworkSocketLayer.h"
#endif
#define THEME_NAME "584111F70AAAAAAA"
#define THEME_FILESIZE 2797568
@@ -702,7 +706,9 @@ void RegisterAwardsWithProfileManager()
// Rich Presence init - number of presences, number of contexts
//printf("Rich presence strings are hard coded on PS3 for now, must change this!\n");
ProfileManager.RichPresenceInit(4,1);
#ifndef DISABLE_PSN
ProfileManager.SetRichPresenceSettingFn(SQRNetworkManager_Orbis::SetRichPresence);
#endif
char *pchRichPresenceString;
pchRichPresenceString=(char *)AddRichPresenceString(IDS_RICHPRESENCE_GAMESTATE);
@@ -949,7 +955,9 @@ int main(int argc, const char *argv[] )
#endif
app.InitTime();
#ifndef DISABLE_PSN
NPToolkit.init();
#endif
// Set the number of possible joypad layouts that the user can switch between, and the number of actions
InputManager.Initialise(1,5,MINECRAFT_ACTION_MAX, ACTION_MAX_MENU);
@@ -1052,6 +1060,7 @@ int main(int argc, const char *argv[] )
// ProfileManager for XN_LIVE_INVITE_ACCEPTED for QNet.
g_NetworkManager.Initialise();
NetworkSocketLayer::Initialize();
// debug switch to trial version
ProfileManager.SetDebugFullOverride(true);
@@ -1198,7 +1207,9 @@ int main(int argc, const char *argv[] )
while (TRUE)
{
#ifndef DISABLE_PSN
SonyVoiceChat_Orbis::tick();
#endif
RenderManager.StartFrame();
#if 0
if(pMinecraft->soundEngine->isStreamingWavebankReady() &&
+5 -12
View File
@@ -74,12 +74,10 @@ PlayerUID::PlayerUID(wstring fromString)
wstring onlineID = fromString.substr(15 + userIdLen + 1);
if(onlineID.size() > 0)
{
wcstombs(m_onlineID, onlineID.c_str(), 16);
m_bSignedIntoPSN = true;
}
else
{
m_onlineID[0] = 0;
m_bSignedIntoPSN = false;
}
}
@@ -87,13 +85,8 @@ PlayerUID::PlayerUID(wstring fromString)
bool PlayerUID::operator==(const PlayerUID& rhs) const
{
// comparing online IDs
if(isSignedIntoPSN() && rhs.isSignedIntoPSN())
{
return (strcmp(m_onlineID, rhs.m_onlineID) == 0);
}
// comparing offline IDs
if(m_userID != rhs.m_userID)
if(XUID != rhs.XUID)
return false;
for(int i=0; i<SCE_NET_ETHER_ADDR_LEN;i++)
if(m_macAddress[i] != rhs.m_macAddress[i])return false;
@@ -147,13 +140,13 @@ std::wstring PlayerUID::toString() const
sprintf(macAddr, "%02x%02x%02x%02x%02x%02x", m[0],m[1],m[2],m[3],m[4],m[5]);
sprintf(finalString, "%s_%s_%08d_%s", isPrimaryUser() ? "P" : "N",
macAddr, m_userID,
isSignedIntoPSN() ? m_onlineID : "");
"");
mbstowcs(finalStringW, finalString, 64);
return std::wstring(finalStringW);
}
void PlayerUID::setOnlineID(SceNpOnlineId& id, bool bSignedIntoPSN)
{
memcpy(m_onlineID, id.data, SCE_NP_ONLINEID_MAX_LENGTH);
//memcpy(m_onlineID, id.data, SCE_NP_ONLINEID_MAX_LENGTH);
term = id.term;
m_bSignedIntoPSN = bSignedIntoPSN;
}
@@ -180,7 +173,7 @@ bool PlayerUID::isPrimaryUser() const /* only true if we're on the local machine
#ifndef DISABLE_PSN
GameSessionUID::GameSessionUID()
{
memset(this,0,sizeof(GameSessionUID));
@@ -214,4 +207,4 @@ GameSessionUID& GameSessionUID::operator=(const PlayerUID& rhs)
m_bSignedIntoPSN = rhs.isSignedIntoPSN();
return *this;
}
#endif
+11 -7
View File
@@ -9,17 +9,19 @@
// (2) An offline ID, where there is also a primary login on the system. This has m_onlineID set up to copy the primary SceNpOnlineId, except with dummy[0] set to the controller ID of this other player
// (3) An offline ID, where there isn't a primary PSN login on the system. This has SceNpOnlineId fully zeroed.
#pragma pack(push, 4)
class PlayerUID
{
char m_onlineID[SCE_NP_ONLINEID_MAX_LENGTH];
// PS4 4JLibs needs exactly 28 bytes for playerUID,
//char m_onlineID[SCE_NP_ONLINEID_MAX_LENGTH];
char term;
bool m_bSignedIntoPSN : 1;
unsigned char m_quadrant : 2;
uint8_t m_macAddress[SCE_NET_ETHER_ADDR_LEN];
SceUserServiceUserId m_userID;
char m_padding[8];
public:
ULONGLONG XUID;
class Hash
{
@@ -30,6 +32,8 @@ public:
PlayerUID();
PlayerUID(SceUserServiceUserId userID, SceNpOnlineId& onlineID, bool bSignedInPSN, int quadrant);
PlayerUID(std::wstring fromString);
PlayerUID(ULONGLONG xuid) { XUID = xuid; }
operator ULONGLONG() const { return XUID; }
bool operator==(const PlayerUID& rhs) const;
bool operator!=(const PlayerUID& rhs);
@@ -40,8 +44,7 @@ public:
void setOnlineID(SceNpOnlineId& id, bool bSignedIntoPSN);
void setUserID(unsigned int id);
const char* getOnlineID() const { return m_onlineID; }
const char* getOnlineID() const { return ""; }
SceUserServiceUserId getUserID() const { return m_userID; }
int getQuadrant() const { return m_quadrant; }
bool isPrimaryUser() const; // only true if we're on the local machine and signed into the first quadrant;
@@ -61,10 +64,10 @@ namespace std
}
};
}
#pragma pack(pop)
#ifndef DISABLE_PSN
class GameSessionUID
{
char m_onlineID[SCE_NP_ONLINEID_MAX_LENGTH];
@@ -83,3 +86,4 @@ public:
int getQuadrant() const { return m_quadrant; }
bool isSignedIntoPSN() const { return m_bSignedIntoPSN; }
};
#endif
@@ -53,16 +53,16 @@ HRESULT PS3LeaderboardManager::destroyTransactionContext(int transactionContext)
return sceNpScoreDestroyTransactionCtx(transactionContext);
}
HRESULT PS3LeaderboardManager::getFriendsList(const SceNpId &myNpId, SceNpId* &npIds, uint32_t &len)
{
EFilterMode filterMode = m_eFilterMode;
m_eFilterMode = eFM_Friends;
HRESULT ret = fillByIdsQuery(myNpId, npIds, len);
m_eFilterMode = filterMode;
return ret;
HRESULT PS3LeaderboardManager::getFriendsList(const SceNpId &myNpId, SceNpId* &npIds, uint32_t &len)
{
EFilterMode filterMode = m_eFilterMode;
m_eFilterMode = eFM_Friends;
HRESULT ret = fillByIdsQuery(myNpId, npIds, len);
m_eFilterMode = filterMode;
return ret;
}
char *PS3LeaderboardManager::getComment(SceNpScoreComment *comment)
@@ -1,4 +1,6 @@
#include "stdafx.h"
#ifndef DISABLE_PSN
#include "SQRNetworkManager_PS3.h"
#include "Common/Network/Sony/SQRNetworkPlayer.h"
#ifdef __PS3__
@@ -3621,4 +3623,5 @@ int SQRNetworkManager_PS3::GetJoiningReadyPercentage()
{
return 100;
}
}
}
#endif
@@ -1,5 +1,13 @@
#include "stdafx.h"
#ifdef DISABLE_PSN
// global func, so we can call from the profile lib
void SonyCommerce_UpgradeTrial()
{
// we're now calling the app function here, which manages pending requests
app.UpgradeTrial();
}
#else
#include "SonyCommerce_PS3.h"
#include "..\PS3Extras\ShutdownManager.h"
#include <sys/event.h>
@@ -1511,3 +1519,4 @@ void SonyCommerce_PS3::DownloadAlreadyPurchased( CallbackFunc cb, LPVOID lpParam
#endif
@@ -1,5 +1,5 @@
#include "stdafx.h"
#ifndef DISABLE_PSN
@@ -762,3 +762,4 @@ void SonyVoiceChat::setState( EAVCState state )
sm_state = state;
printStateAndEvent();
}
#endif
+3 -2
View File
@@ -1,5 +1,5 @@
#pragma once
#ifndef _DISABLE_PSN
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -154,4 +154,5 @@ private:
static void printStateAndEvent();
};
};
#endif
+6
View File
@@ -10,7 +10,9 @@
#include "..\..\Minecraft.World\LevelSettings.h"
#include "..\..\Minecraft.World\BiomeSource.h"
#include "..\..\Minecraft.World\LevelType.h"
#ifndef DISABLE_PSN
#include "..\..\PS3\Network\SonyCommerce_PS3.h"
#endif
#include "..\..\Minecraft.World\StringHelpers.h"
#include "PS3Extras\ShutdownManager.h"
#include "PS3\Network\SonyRemoteStorage_PS3.h"
@@ -560,6 +562,7 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
void CConsoleMinecraftApp::CommerceInit()
{
#ifndef DISABLE_PSN
m_bCommerceCategoriesRetrieved=false;
m_bCommerceProductListRetrieved=false;
m_bCommerceInitialised=false;
@@ -572,10 +575,12 @@ void CConsoleMinecraftApp::CommerceInit()
m_iCurrentCategory=0;
m_iCurrentProduct=0;
memset(m_pchSkuID,0,48);
#endif
}
void CConsoleMinecraftApp::CommerceTick()
{
#ifndef DISABLE_PSN
// only tick this if the primary user is signed in to the PSN
if(ProfileManager.IsSignedInLive(0))
{
@@ -695,6 +700,7 @@ void CConsoleMinecraftApp::CommerceTick()
}
}
else
#endif
{
// was the primary player signed in and is now signed out?
if(m_eCommerce_State!=eCommerce_State_Offline)
+14
View File
@@ -24,6 +24,7 @@ SYS_PROCESS_PARAM(1001, 0x10000); // thread priority, and stack size
#include <sysutil/sysutil_msgdialog.h>
#include "PS3/Network/SonyRemoteStorage_PS3.h"
#include "..\..\Minecraft.Client\Common\Network\NetworkSocketLayer.h"
// define to use spurs (otherwise SPU threads or raw will be used)
#define USE_SPURS
@@ -35,6 +36,9 @@ SYS_PROCESS_PARAM(1001, 0x10000); // thread priority, and stack size
#include <sys/spu_image.h>
#endif
#ifdef DISABLE_PSN
#include "../Passphrase/ps3__np_conf.h"
#endif
/* Encrypted ID for protected data file (*) You must edit these binaries!! */
char secureFileId[CELL_SAVEDATA_SECUREFILEID_SIZE] =
{
@@ -519,7 +523,9 @@ void RegisterAwardsWithProfileManager()
// Rich Presence init - number of presences, number of contexts
//printf("Rich presence strings are hard coded on PS3 for now, must change this!\n");
ProfileManager.RichPresenceInit(-1,-1); // 4J-JEV - Presence and Context count not used.
#ifndef DISABLE_PSN
ProfileManager.SetRichPresenceSettingFn(SQRNetworkManager_PS3::SetRichPresence);
#endif
char *pchRichPresenceString;
pchRichPresenceString=(char *)AddRichPresenceString(IDS_RICHPRESENCE_GAMESTATE);
@@ -855,7 +861,9 @@ int main()
app.CommerceInit(); // MGH - moved this here so GetCommerce isn't NULL
// 4J-PB - Kick of the check for trial or full version - requires ui to be initialised
#ifndef DISABLE_PSN
app.GetCommerce()->CheckForTrialUpgradeKey();
#endif
static bool bTrialTimerDisplayed=true;
@@ -888,8 +896,13 @@ int main()
// Initialise the profile manager with the game Title ID, Offer ID, a profile version number, and the number of profile values and settings
#ifndef DISABLE_PSN
ProfileManager.Initialise(SQRNetworkManager_PS3::GetSceNpCommsId(),
SQRNetworkManager_PS3::GetSceNpCommsSig(),
#else
ProfileManager.Initialise(&s_npCommunicationId,
&s_npCommunicationSignature,
#endif
PROFILE_VERSION_10,
NUM_PROFILE_VALUES,
NUM_PROFILE_SETTINGS,
@@ -1116,6 +1129,7 @@ int main()
if(ShutdownManager::ShouldRun(ShutdownManager::eMainThread))
{
g_NetworkManager.Initialise();
NetworkSocketLayer::Initialize();
g_NetworkManager.SetLocalGame(true);
}
+2 -2
View File
@@ -160,7 +160,7 @@ bool PlayerUID::isPrimaryUser() const /* only true if we're on the local machine
#ifndef DISABLE_PSN
GameSessionUID::GameSessionUID()
{
memset(this,0,sizeof(GameSessionUID));
@@ -194,4 +194,4 @@ GameSessionUID& GameSessionUID::operator=(const PlayerUID& rhs)
m_bSignedIntoPSN = rhs.isSignedIntoPSN();
return *this;
}
#endif
+7 -1
View File
@@ -2,6 +2,7 @@
#pragma once
//#include "stdafx.h"
// Note - there are now 3 types of PlayerUID
@@ -19,6 +20,7 @@ class PlayerUID
CellSysutilUserId m_userID; // user logged on to the XMB
public:
ULONGLONG XUID;
class Hash
{
@@ -29,6 +31,8 @@ public:
PlayerUID();
PlayerUID(CellSysutilUserId userID, SceNpOnlineId& onlineID, bool bSignedInPSN, int quadrant);
PlayerUID(std::wstring fromString);
PlayerUID(ULONGLONG xuid) { XUID = xuid; }
operator ULONGLONG() const { return XUID; }
bool operator==(const PlayerUID& rhs) const;
bool operator!=(const PlayerUID& rhs);
@@ -51,7 +55,7 @@ private:
#ifndef DISABLE_PSN
class GameSessionUID
{
char m_onlineID[SCE_NET_NP_ONLINEID_MAX_LENGTH];
@@ -70,3 +74,5 @@ public:
int getQuadrant() const { return m_quadrant; }
bool isSignedIntoPSN() const { return m_bSignedIntoPSN; }
};
#endif
Binary file not shown.
@@ -171,15 +171,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -211,8 +211,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -234,8 +237,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -257,9 +263,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -0,0 +1,15 @@
# str1k3r - This prebuild makes sure that the ObjFiles directory exists so the PS3 SPU tasks can properly build
param(
[string]$ProjectDir,
[string]$Configuration
)
$ParentDir = Split-Path -Path $ProjectDir -Parent
$directories = @(
"ObjFiles\$Configuration"
)
foreach ($dir in $directories) {
New-Item -ItemType Directory -Path (Join-Path $ParentDir $dir) -Force | Out-Null
}
Binary file not shown.
@@ -65,15 +65,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -104,8 +104,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -127,8 +130,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -150,9 +156,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -61,15 +61,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -100,8 +100,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -123,8 +126,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -146,9 +152,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -57,15 +57,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_Release\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_Release\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -96,8 +96,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -142,8 +148,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -1,6 +1,10 @@
<?xml version="1.0" encoding="us-ascii"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="ContentPackage|PS3">
<Configuration>ContentPackage</Configuration>
<Platform>PS3</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|PS3">
<Configuration>Debug</Configuration>
<Platform>PS3</Platform>
@@ -25,6 +29,10 @@
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>SPU</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>SPU</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>SPU</PlatformToolset>
@@ -35,25 +43,34 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</GenerateManifest>
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</GenerateManifest>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(ProjectName)</TargetName>
<SpursUsage>SpursInit</SpursUsage>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(ProjectName)</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(ProjectName)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">
<ClCompile>
@@ -74,7 +91,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -96,8 +117,37 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
<AdditionalOptions>-ffunction-sections -fdata-sections -fstack-check %(AdditionalOptions)</AdditionalOptions>
<AdditionalIncludeDirectories>$(SN_PS3_PATH)\spu\include\sn;$(SCE_PS3_ROOT)\target\spu\include;$(SCE_PS3_ROOT)\target\common\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<OptimizationLevel>Level3</OptimizationLevel>
<PreprocessorDefinitions>SN_TARGET_PS3_SPU;NDEBUG;__GCC__;SPU;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ProjectReference>
<LinkLibraryDependencies>true</LinkLibraryDependencies>
</ProjectReference>
<Link>
<AdditionalOptions>-Wl,--gc-sections -g %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>-ldma;-lspurs_jq;%(AdditionalDependencies)</AdditionalDependencies>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -56,15 +56,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -95,8 +95,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -143,9 +149,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -56,15 +56,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -95,8 +95,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -143,9 +149,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
@@ -56,15 +56,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -95,8 +95,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -143,9 +149,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
Binary file not shown.
@@ -61,15 +61,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -101,8 +101,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -125,8 +128,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -149,9 +155,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
Binary file not shown.
@@ -56,15 +56,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -95,8 +95,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -143,9 +149,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
+53 -24
View File
@@ -13,60 +13,89 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LevelRenderer_FindNearestCh
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Texture_blit", "Texture_blit\Texture_blit.spu.vcxproj", "{A71AAA51-6541-4348-9814-E5FE2D36183B}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CompressedTileStorage_getData", "CompressedTileStorage_getData\CompressedTileStorage_getData.spu.vcxproj", "{ED672663-B86E-436B-9530-A6589DE02366}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameRenderer_updateLightTexture", "GameRenderer_updateLightTexture\GameRenderer_updateLightTexture.spu.vcxproj", "{1F6ECBFE-3089-457D-8A11-5CFDC0392439}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LevelRenderer_zSort", "LevelRenderer_zSort\LevelRenderer_zSort.spu.vcxproj", "{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PerlinNoise", "PerlinNoise\PerlinNoise.spu.vcxproj", "{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Renderer_TextureUpdate", "Renderer_TextureUpdate\Renderer_TextureUpdate.spu.vcxproj", "{AEC81E5C-04B5-4F77-91A0-D94065F885B7}"
EndProject
Global
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 7
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = http://tfs_server:8080/tfs/storiespark
SccLocalPath0 = .
SccProjectUniqueName1 = CompressedTile\\CompressedTile.spu.vcxproj
SccProjectName1 = CompressedTile
SccLocalPath1 = CompressedTile
SccProjectUniqueName2 = LevelRenderer_cull\\LevelRenderer_cull.spu.vcxproj
SccProjectName2 = LevelRenderer_cull
SccLocalPath2 = LevelRenderer_cull
SccProjectUniqueName3 = ChunkUpdate\\ChunkUpdate.spu.vcxproj
SccProjectName3 = ChunkUpdate
SccLocalPath3 = ChunkUpdate
SccProjectUniqueName4 = CompressedTileStorage_compress\\CompressedTileStorage_compress.spu.vcxproj
SccProjectName4 = CompressedTileStorage_compress
SccLocalPath4 = CompressedTileStorage_compress
SccProjectUniqueName5 = LevelRenderer_FindNearestChunk\\LevelRenderer_FindNearestChunk.spu.vcxproj
SccProjectName5 = LevelRenderer_FindNearestChunk
SccLocalPath5 = LevelRenderer_FindNearestChunk
SccProjectUniqueName6 = Texture_blit\\Texture_blit.spu.vcxproj
SccProjectName6 = Texture_blit
SccLocalPath6 = Texture_blit
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
ContentPackage|PS3 = ContentPackage|PS3
Debug|PS3 = Debug|PS3
Release|PS3 = Release|PS3
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.Debug|PS3.ActiveCfg = Debug|PS3
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.Debug|PS3.Build.0 = Debug|PS3
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.Release|PS3.ActiveCfg = Release|PS3
{4B7786BE-4F10-4FAA-A75A-631DF39570DD}.Release|PS3.Build.0 = Release|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.Debug|PS3.ActiveCfg = Debug|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.Debug|PS3.Build.0 = Debug|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.Release|PS3.ActiveCfg = Release|PS3
{4B436D43-D35B-4E56-988A-A3543B70C8E5}.Release|PS3.Build.0 = Release|PS3
{297888B4-8234-461B-9861-214988A95711}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{297888B4-8234-461B-9861-214988A95711}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{297888B4-8234-461B-9861-214988A95711}.Debug|PS3.ActiveCfg = Debug|PS3
{297888B4-8234-461B-9861-214988A95711}.Debug|PS3.Build.0 = Debug|PS3
{297888B4-8234-461B-9861-214988A95711}.Release|PS3.ActiveCfg = Release|PS3
{297888B4-8234-461B-9861-214988A95711}.Release|PS3.Build.0 = Release|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.Debug|PS3.ActiveCfg = Debug|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.Debug|PS3.Build.0 = Debug|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.Release|PS3.ActiveCfg = Release|PS3
{0FC6FCFB-7793-4EEE-8356-2C129621C67A}.Release|PS3.Build.0 = Release|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.Debug|PS3.ActiveCfg = Debug|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.Debug|PS3.Build.0 = Debug|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.Release|PS3.ActiveCfg = Release|PS3
{E26485AE-71A5-4785-A14D-6456FF7C4FB0}.Release|PS3.Build.0 = Release|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.Debug|PS3.ActiveCfg = Debug|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.Debug|PS3.Build.0 = Debug|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.Release|PS3.ActiveCfg = Release|PS3
{A71AAA51-6541-4348-9814-E5FE2D36183B}.Release|PS3.Build.0 = Release|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.Debug|PS3.ActiveCfg = Debug|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.Debug|PS3.Build.0 = Debug|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.Release|PS3.ActiveCfg = Release|PS3
{ED672663-B86E-436B-9530-A6589DE02366}.Release|PS3.Build.0 = Release|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.Debug|PS3.ActiveCfg = Debug|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.Debug|PS3.Build.0 = Debug|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.Release|PS3.ActiveCfg = Release|PS3
{1F6ECBFE-3089-457D-8A11-5CFDC0392439}.Release|PS3.Build.0 = Release|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.Debug|PS3.ActiveCfg = Debug|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.Debug|PS3.Build.0 = Debug|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.Release|PS3.ActiveCfg = Release|PS3
{BE7A14B2-1761-4FDF-82C0-B50F8BC9633A}.Release|PS3.Build.0 = Release|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.Debug|PS3.ActiveCfg = Debug|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.Debug|PS3.Build.0 = Debug|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.Release|PS3.ActiveCfg = Release|PS3
{4CDF5745-FCF3-474D-941B-ABBEA788E8DA}.Release|PS3.Build.0 = Release|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.ContentPackage|PS3.ActiveCfg = ContentPackage|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.ContentPackage|PS3.Build.0 = ContentPackage|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.Debug|PS3.ActiveCfg = Debug|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.Debug|PS3.Build.0 = Debug|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.Release|PS3.ActiveCfg = Release|PS3
{AEC81E5C-04B5-4F77-91A0-D94065F885B7}.Release|PS3.Build.0 = Release|PS3
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Binary file not shown.
@@ -56,15 +56,15 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">PS3_Debug\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'" />
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|PS3'">false</GenerateManifest>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">PS3_Release\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">PS3_ContentPackage\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">$(Platform)_$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">$(Platform)_$(Configuration)\</IntDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">*.obj;*.d;*.map;*.lst;*.pch;$(TargetPath);undefined;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|PS3'" />
@@ -95,8 +95,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Debug\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">
<ClCompile>
@@ -119,8 +122,11 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\Release\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">
<ClCompile>
@@ -143,9 +149,12 @@
</Link>
<SpuElfConversion>
<EmbedFormat>JobBin2</EmbedFormat>
<OutputFile>..\ObjFiles\ContentPackage\$(TargetName).ppu$(ObjectExt)</OutputFile>
<OutputFile>..\ObjFiles\$(Configuration)\$(TargetName).ppu$(ObjectExt)</OutputFile>
<StripMode>Hard</StripMode>
</SpuElfConversion>
<PreBuildEvent>
<Command>powershell -ExecutionPolicy Bypass -File "$(ProjectDir)../Common/Prebuild.ps1" -ProjectDir "$(ProjectDir)/" -Configuration "$(Configuration)/" </Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
Binary file not shown.
@@ -24,6 +24,7 @@ class PlayerUID
int m_userID; // user logged on to the XMB
public:
ULONGLONG XUID;
class Hash
{
@@ -34,6 +35,8 @@ public:
PlayerUID();
PlayerUID(int userID, SceNpOnlineId& onlineID, bool bSignedInPSN, int quadrant);
PlayerUID(std::wstring fromString);
PlayerUID(ULONGLONG xuid) { XUID = xuid; }
operator ULONGLONG() const { return XUID; }
bool operator==(const PlayerUID& rhs) const;
bool operator!=(const PlayerUID& rhs);
@@ -56,6 +59,7 @@ private:
typedef PlayerUID *PPlayerUID;
#ifndef DISABLE_PSN
class GameSessionUID
{
char m_onlineID[SCE_NP_ONLINEID_MAX_LENGTH];
@@ -76,6 +80,7 @@ public:
void setForAdhoc();
};
#endif
enum eAwardType
{
@@ -10,7 +10,7 @@
#include "..\..\Common\Network\Sony\SQRNetworkManager.h"
#include "../OldSdk.h"
#include "../PSVitaExtras/OldSdk.h"
class SQRNetworkPlayer;
class ISQRNetworkManagerListener;

Some files were not shown because too many files have changed in this diff Show More