branchrust_reboot/main/d11_console_versioncancel
4,583 Commits over 731 Days - 0.26cph!
[D11] disable steam analytics for console
[D11] enable performance UI for console
[D11] Cleaner disconnect for client on console
[D11] Allow controller to respawn on death
[D11] Initial support for console controller - wip
Some more temporary measures to get into a network game on ps4 - disable encryption on both client and server, avoid procedural levels which are taking too long and running out of memory. Also remove a bit of spam logging I left in raknet by accident.
Temporarily disabled timeouts in Raknet as the levels are taking a very long time to load. Use Application.temporaryCachePath instead of Application.persistentDataPath as the latter is crashing for some reason, will investigate later.
More console fixes: disable filesystem warmups for now as it's taking excessively long to load into levels, will come back to this later. Use Application.persistentDataPath to write procedural map data to, cannot just write to the root directory on console.
rebuild raknet DLL for x64 against the same source code that we got for console support. This mismatch was stopping the ps4 version connecting to the server.
additional change for detecting the local player without steam present. This means currently we can only connect one player to our local server, but we will replace the user id generation with our own system and remove this as things progress.
Part 2 of changes to boot ps4 into a fixed server game. This commit removes client side checks that are specific to Steam, and makes a hard coded local server appear in the server list (click "FIND GAME" button, select "Local Network" server list, then click the refresh button and "localserver" should show up, connect to this like normal)
Part 1 of changes to boot ps4 into a fixed server game. This commit removes server side checks that are specific to Steam.
Initial Xbox One fixes, native dlls
[D11] More console changes, allows for package builds (with manual intervention for now), and loading into a level from FE.
[D11] More changes to get console versions working - wip
[D11] Added ability to disable steam via build defines
[D11] More changes to help get console working
[D11] Added EAC_DISABLED for console builds to disable via build defines
rebuild ps4 native DLLs with __declspec (dllexport)
Consoles load bundles from Application.streamingAssetsPath.
Switch to IL2CPP by default for PS4 until we can address the .NET 4 requirements which prevent a console mono build.
Prebuilt native dlls for ps4, these are built from the respective directories in Plugins folder at the top of the tree, using premake to generate the solutions and then build them and copy them here.
Enable json.net for PS4 build
Editor script changes for building asset bundles and doing the actual build for consoles
Missed another shader fix for ps4
Initial JIT fixes, this is enough to get into the main menu, there will likely be lots more. Unity docs suggest this kind of code doesn't actually need to be called but my experiences have been otherwise, need to look into and potentially raise a question about it.
WIP ps4 shader fixes. It is not possible to test any of these changes yet, it is just needed to get everyone able to build and run the console versions. It is also not designed to be merged back into the main branch, I will need to test that these changes are ok on the original platforms and if not, make them conditional.
Add a copy of the racknet native code. This is Facepunch's wrapper layer in "Networking.cpp/s", merged with the latest full source of raknet, and premake files. I've duplicated dll's premake4.exe but will tidy this up when the structure settles down. Racknet DLL for windows and ps4 (prx) can be built, I haven't tried xbox one yet.
Add a copy of the rust Rust native dll source code for the d11 console branch, and premake files to build it. I've used d11's modified version of premake4 which has been modified to support ps4 and xbox one.