Kantai Collection/Vita/Decompilation: Difference between revisions
Antonizoon (talk | contribs) No edit summary |
Antonizoon (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
The Kancolle Vita game provides the entire engine and logic of Kantai Collection in full, but in Unity. This makes decompilation and even a possible port to PC easy. | The Kancolle Vita game provides the entire engine and logic of Kantai Collection in full, but in Unity. This makes decompilation and even a possible port to PC easy. | ||
Unity uses one of two languages (C# and UnityScript), both of which use Microsoft's .NET framework. The .NET framework is cross-platform since it uses a unified bytecode format: Common Intermediate Language (CIL) which then runs on the portable Common Language Runtime (CLR). Like Java bytecode, CIL is designed for an idealized computer that is emulated by the CLR, so the bytecode is easier to decompile. | |||
== Move to PC Unity == | == Move to PC Unity == | ||
Line 7: | Line 9: | ||
== Decompiling Unity DLLs == | == Decompiling Unity DLLs == | ||
Use ILSpy or dotPeek to open three files, <code>Assembly-CSharp.dll</code>, <code>Assembly-CSharp-firstpass.dll</code>, and <code>Assembly-UnityScript.dll</code>. | |||
* C# | * C# | ||
* UnityScript (JavaScript basically) | * UnityScript (JavaScript basically) | ||
http://stackoverflow.com/a/5188580 | |||
http://www.alanzucconi.com/2015/09/02/a-practical-tutorial-to-hack-and-protect-unity-games | http://www.alanzucconi.com/2015/09/02/a-practical-tutorial-to-hack-and-protect-unity-games |
Revision as of 01:42, 12 October 2016
The Kancolle Vita game provides the entire engine and logic of Kantai Collection in full, but in Unity. This makes decompilation and even a possible port to PC easy.
Unity uses one of two languages (C# and UnityScript), both of which use Microsoft's .NET framework. The .NET framework is cross-platform since it uses a unified bytecode format: Common Intermediate Language (CIL) which then runs on the portable Common Language Runtime (CLR). Like Java bytecode, CIL is designed for an idealized computer that is emulated by the CLR, so the bytecode is easier to decompile.
Move to PC Unity
It may be possible that the same binaries, which are cross platform, will work on a PC Unity project. I'm not familiar with using it but I can learn.
Decompiling Unity DLLs
Use ILSpy or dotPeek to open three files, Assembly-CSharp.dll
, Assembly-CSharp-firstpass.dll
, and Assembly-UnityScript.dll
.
- C#
- UnityScript (JavaScript basically)
http://stackoverflow.com/a/5188580
http://www.alanzucconi.com/2015/09/02/a-practical-tutorial-to-hack-and-protect-unity-games
Decompiling Unity Assets
We do this all the time with the translation project, it's easy.
Recompiled/Reverse Engineered Replacement
After decompilation, the next step is to produce a completely reverse engineered version.
Engine
The first step is to simply extract the crucial game elements, and reimplement them in another form. This
UI and Visuals
The UI and Visuals must be implemented in Unity, since that's where the assets come from. This is a bit harder and can be more of a grey area. Maybe we could pitch this as providing Vita style visuals for the browser game.