|
|
This article has just been started and needs the article basics added. |
Girls' Frontline: Project Neural Cloud is a roguelike gacha game where you command virtual AIs known as 'Dolls' to fight against viruses and other electronic nonsense. Does this remind you of anything?
The game stopped receiving updates in January 2025 after the final chapter was released, and all seasonal events have ceased.
Undocumented Keyboard/Mouse Support#
The AfterAoTStart() function maps the ESC key to the back button action for Lua based screens. Since not all screens are written in Lua, this doesn't always function properly.
InputUtility.GetClick() has the ability to check which mouse button is being used and/or the number of fingers on screen, although it's not known if this is used anywhere.
In addition, the scroll wheel works for the in-game scrollable menus. It's not known if this is explicitly mapped like the ESC key or simply a feature of the UI component they used.
Strangely the battle UI purposely ignores mouse input, making it impossible to start a battle.
Although the game uses a virtual joystick in the 3D areas it does not have any keyboard support in the code.
Map/Chapter Select#
LuaConfigs.sector.lua contains all the information corresponding to the map. Notably there is a description field for each map, but the value is always "Test data, to be updated". Clicking a map immediately brings you to the stage select, so this was probably deemed pointless.
Unused Map Icon#
The file bundles/res/images/sectoricon.ab contains all the icons used for the chapter select. Within this file is an unused icon named sector_icon_test.png.
No database references this icon.
Anti-Cheat#
- The game comes with libanort.so, Tencent's anti-cheat solution for mobile games. If a real device is used and a debugger is attached to the game, it will crash after exactly 1 minute. Ironically, it does not work on emulators, making it somewhat useless as an anti-cheat solution.
- The first 5000 bytes of global-metadata.dat are scrambled. global-metadata.dat itself seems to be a dummy file; the real one loaded in memory is much smaller. As is standard for all MICA games, the header is still zeroed out after decryption and must be manually patched back in for analysis. The header zeroing may or may not have been done as an additional step to thwart memory dumping since standard metadata dumpers can no longer scan this game's memory for the header pattern normally found in Unity games.
- libil2cpp is encrypted and must be dumped from memory.
- Even after decrypting both files the function names are not actually embedded into global-metadata.dat but patched in on game start. The game loads files from cs_script, decrypts them, then patches them in. This ironically makes analysis easier since the encrypted files contain real unstripped il assembly and not AOT compiled assembly.
Story Playback#
The playback engine is written in lua and named Game.Avg.UI.UIAVGSystem.lua. The error messages are written in English instead of Chinese for some reason.
The default player name is "bravo" (in lowercase) in the story and gets replaced on the fly with the player's set nickname.
AvgConfig_Test.lua#
A very interesting file that tests every command that the story playback engine has.
LuaConfigs.monster.lua#
This is a database containing the name, description, and icon of every enemy in the game. Tutorial/story pop-ups during battles also use this database for what character icon to display next to their text.
The description tag is never used in game. Despite this, the majority of enemy descriptions are still translated, although many have internal developer comments. And since some definitions were meant for displaying pop-ups only and not assigned to any enemies, the speaker field sometimes contains placeholder names.
Seeing as roughly 95% of the descriptions have proper translations it can be assumed that you were meant to be able to view enemy descriptions in a future update. Currently only enemy name and skills can be viewed during battle.
(Not all fields contained within the file are shown below as it has been converted from lua to tsv for the sake of readability.)
Template:User:結衣/Templates/Pre
Interestingly, ID 40058 which shows Entropic Kurisu's icon is named "Assistant".
|
The Girls' Frontline series | |
|---|---|
|
Windows |
|
|
iOS, Android |
Girls' Frontline • Girls' Frontline: Neural Cloud • Girls' Frontline 2: Exilium |