Welcome to IOP Wiki. This website is maintained by the Girls' Frontline community and is free to edit by anyone.
GFL
Texts
- assettexttable
- explore_affair_server,explore_affair_client: random exploration events
- skin: individual costume names,unlock line,notebook memento,VA
- skin_group: notebook event names+desc
- skin_bonus: notebook completion bonus
- career_quest, achievement
- item: name+desc
- furniture: name+desc
- furniture_establish: upgradable base objects name+desc
- furniture_classes
- chess_seasonevent
- fairy
- equip
- enemy_illustration: name+desc+VA
- sangvis: different desc
- enemy_illustration_skill (lore desc) / battle_skill_config+mission_skill_config (data)
- commander_uniform
- sangvis_gasha: banner names
- building
- organization
- story_util: chapters desc
- assettextes
- unit lines (CharacterVoice, NewCharacterVoice)
- Kalina lines (KalinaLevelVoice)
- assettextavg
- assets/resources/dabao/avgtxt/ ; assets/resources/dabao/avgtxt/battleavg : Cube: -1, -6 ; Arctic Warfare: -2, -3, -4, -5 ; Cube+: -7 ; Rabbit Hunt: -8 ; Deep Dive: -10, -11, -12, -13 ; Only Master: -14, -15 ; Singularity: -16, -17, -18 ; Glory Day: -19, -20, ; Continuum Turbulence: -24, -25, -26, -27, -28 ; Isomer: -31 ; Valhalla: -32 ; Shattered Connexion: -33 ; Freaky Pandemic: -34 ; A Snowy Night Capriccio : -35 ; Polarized Light: -36 ; The Photo Studio Mystery: -37 ; Dream Theatre: -38 ; Far Side of the Sea: -40 ; Dual Randomness: -41 : Butterfly in a Cocoon: -42 ; Bounty Feast: -43 ; Mirror Stage : -44 ; Untranslated: -45 ; My Devil's Frontline: -46 ; The Waves Wrangler: -47 ; Poincaré Recurrence: -48 ; One Coin Short: -49 ; Love Bakery: -50 ; Fixed Point: -51, -99 ; Lycan Sanctuary: -52 ; Longitudinal Strain: -54 ; Eclipses & Saros: -56 ; The Glistening Bloom: -57 ; Slow Shock: -58 ; Maze Guess: -59 ;
- assets/resources/dabao/avgtxt/anniversary: NPCs with minus tag, assimilation with s_ tag
- assets/resources/dabao/avgtxt/fetter/: Bookshelf of Memories
- assets/resources/dabao/avgtxt/memoir/: Neural Upgrades
- assets/resources/dabao/avgtxt/skin/: Notebook
- assets/resources/dabao/avgtxt/va11/va11_1.txt: Valhalla special scenes
- assets/resources/dabao/avgtxt/tutorials: assimilation tutorial
Files
- resourceavgpicprefab__ ; resourcebossskillpic ; resourcepic__add ; resourcepic_
- Texture2D alphas for all character types
- resourceavgtexture_ ; resourceavgbase
- Story illustrations
- Sometimes contains Sprite tutorials
- resourcecommander_ ; charactercommander ; charactersummercommander ; resourceiconcommanderemoji ; resourcecommanderemoji
- Commander chibi Sprite, Texture2D, TextAsset .skel, MonoBehavior SkeletonData & Atlas, Shader
- resourceiconenemy
- _I profile icons
- On-map structures
- resourceiconuniform
- Commander costumes shop icons
- resourceiconlogo
- character_
- For Dolls, assimilation and enemies, Sprite, Texture2D, includes alphas
- Sometimes packages MonoBehavior skeletondata and Shader (characterunknown)
- characterboss: groups Sangvis bosses
- characternpc_: includes some fairies duplicated from resourcefairy
- characterspecial: story sprites for allies
- characterpet
- resourcefairy
- _spine
- Spritesheets, atlases, shaders and scripts for all chibi dolls, enemies, map structures, pets, dorm characters and animated furniture. Still has Valkyria charas and K7. charactersupershortysangvisspine = Super Shorty during assimilation scene. charactercoffeespine = Springfield in cafe.
- resourcespine_
- resourceiconops
- assetlogin1: login illustration
- atlasclipscommonattri: Doll stats icons
Story backgrounds
- assets/resources/dabao/avgtxt/profiles.txt -> To find where a background is used in the story: search for the background file name in profiles.txt, check the line number, subtract one to align on zero-indexing, and search in the story files the background ID between the <BIN> tags.
- 21Jashin: My Devil's Frontline
- CG-Houkai: Only Master
- 2020TCTD: Bounty Feast
- gunCG, HenriettaCG: Dream Theater
- va11_: Valhalla
- BG-Djmax, CG-DJMAX: Glory Day
- GGXX: Rabbit Hunt
- SEAPARTY: Far Side of the Sea
- sp2.: Cube
- CG-2017Winter: Arctic Warfare
- 17xh: Deep Dive
- 2018Winter: Singularity
- 2018Summer: Continuum Turbulence
- 19Winter: Isomer
- 2019summer: Shattered Connexion
- 19christmas: A Snowy Night Capriccio
- 2019halloween: Freaky Pandemic
- 19winter: Polarized Light
- 2020summer ; 20summer: Dual Randomness
- 2020HW: Butterfly in a Cocoon
- 2021white, 2021_ink: Mirror Stage
- 2021summer: Poincaré Recurrence
- 2021_Christmas: One Coin Short
- 2022winter: Fixed Point
- 2022summer: Longitudinal Strain
- 2022saros
- 2023NewYear: Mystery Box Theorem
Special unit names
- BOSS-7: Gager
- BOSS-9: Architect
- BOSS-11: Dreamer
- BossJustice: Judge
- Weaver: Ouroboros
- resourceavgpicprefabsd\DUMMY_N ?
- 春田咖啡: Springfield
- pmhe: Makarov
- ar: Galil
- mlemk: Lee-Enfield
- dupijin: Dupieux
- mrsgray
- excutioner: Executioner
- soldier: Gunner
- ISC -> Papasha mech
- landmine_beach -> krab
- PM -> Makarov
- Rogue -> Machlian or Dandelion
- Shark -> Sharkitect
- Gunner -> Soldier_New / StreletPlus
- Teal -> Grig
- TeslaTrooper -> Minotaurus
- TOW -> BGM-71
- Nyto_mecha -> Tareus; Nyto_mecha2 -> Sana
Sorting bat
@echo off
for /f "skip=1" %%i in ('wmic os get localdatetime') do if not defined fulldate set fulldate=%%i
set foldername=GFextract%fulldate:~0,8%
md %foldername%
md %foldername%\alphas
md %foldername%\storybg
md %foldername%\sounds
md %foldername%\videos
md %foldername%\commander
md %foldername%\NPC
md %foldername%\units
md %foldername%\furnitures
md %foldername%\menus
md %foldername%\maps
md %foldername%\eventmenus
md %foldername%\guide
md %foldername%\particles
md %foldername%\live2d
md %foldername%\spines
md %foldername%\text
md %foldername%\battlebg
md %foldername%\icons
set "source=%~dp0\"
set "destination=%foldername%\alphas"
robocopy "%source%" %destination% *resourceavgpic*.ab /mov
robocopy "%source%" %destination% *resourcepic*.ab /mov
robocopy "%source%" %destination% *resourceboss*.ab /mov
set "destination=%foldername%\storybg"
robocopy "%source%" %destination% *resourceavgtexture*.ab /mov
robocopy "%source%" %destination% *resourceavgbase*.ab /mov
set "destination=%foldername%\sounds"
robocopy "%source%" %destination% *.acb.bytes /mov
set "destination=%foldername%\videos"
robocopy "%source%" %destination% *.usm.bytes /mov
set "destination=%foldername%\commander"
robocopy "%source%" %destination% *resourcecommanderclass*.ab /mov
robocopy "%source%" %destination% *resourceiconuniform*.ab /mov
robocopy "%source%" %destination% *charactercommander*.ab /mov
robocopy "%source%" %destination% *charactersummercommander*.ab /mov
robocopy "%source%" %destination% *resourceiconcommanderemoji*.ab /mov
robocopy "%source%" %destination% *resourcecommanderemoji*.ab /mov
set "destination=%foldername%\furnitures"
robocopy "%source%" %destination% *furniture*.ab /mov
robocopy "%source%" %destination% *spritesdorm*.ab /mov
set "destination=%foldername%\live2d"
robocopy "%source%" %destination% *live2d*.ab /mov
set "destination=%foldername%\spines"
robocopy "%source%" %destination% *spine*.ab /mov
set "destination=%foldername%\NPC"
robocopy "%source%" %destination% *characternpc*.ab /mov
set "destination=%foldername%\maps"
robocopy "%source%" %destination% *assetmap*.ab /mov
set "destination=%foldername%\eventmenus"
robocopy "%source%" %destination% *activemap*.ab /mov
robocopy "%source%" %destination% *activityops*.ab /mov
robocopy "%source%" %destination% *resourceactivitymap*.ab /mov
set "destination=%foldername%\guide"
robocopy "%source%" %destination% *guide*.ab /mov
set "destination=%foldername%\particles"
robocopy "%source%" %destination% *assetparticles*.ab /mov
set "destination=%foldername%\icons"
robocopy "%source%" %destination% *resourcenotebook*.ab /mov
robocopy "%source%" %destination% *spritescardbg*.ab /mov
robocopy "%source%" %destination% *resourceicon*.ab /mov
robocopy "%source%" %destination% *spritesguncamps*.ab /mov
robocopy "%source%" %destination% *spritesui*.ab /mov
robocopy "%source%" %destination% *spritesdeploymentbuilding*.ab /mov
robocopy "%source%" %destination% *resourcecardavatar*.ab /mov
robocopy "%source%" %destination% *resourcecardhomebg*.ab /mov
set "destination=%foldername%\menus"
robocopy "%source%" %destination% *spriteshome*.ab /mov
robocopy "%source%" %destination% *atlasclips*.ab /mov
robocopy "%source%" %destination% *characterbuild*.ab /mov
robocopy "%source%" %destination% *spritestips*.ab /mov
robocopy "%source%" %destination% *spritescredits*.ab /mov
robocopy "%source%" %destination% *assetotherres*.ab /mov
robocopy "%source%" %destination% *assetthreedscenes*.ab /mov
robocopy "%source%" %destination% *assetmotherbase*.ab /mov
robocopy "%source%" %destination% *assettheater*.ab /mov
robocopy "%source%" %destination% *assetmaterials*.ab /mov
robocopy "%source%" %destination% *assetplayable*.ab /mov
robocopy "%source%" %destination% *assetmanual*.ab /mov
robocopy "%source%" %destination% *assetassetother*.ab /mov
robocopy "%source%" %destination% *assetspecialops*.ab /mov
robocopy "%source%" %destination% *assetshader*.ab /mov
robocopy "%source%" %destination% *assetfonts*.ab /mov
robocopy "%source%" %destination% *assetlogin*.ab /mov
robocopy "%source%" %destination% *assetanimation*.ab /mov
robocopy "%source%" %destination% *assetflightchessmap*.ab /mov
robocopy "%source%" %destination% *resourceavglanguage*.ab /mov
robocopy "%source%" %destination% *resourcecard*.ab /mov
robocopy "%source%" %destination% *resourcebattle*.ab /mov
robocopy "%source%" %destination% *resourcetitle*.ab /mov
robocopy "%source%" %destination% *resourcefairy*.ab /mov
robocopy "%source%" %destination% *resourcetopstory*.ab /mov
robocopy "%source%" %destination% *resourceeffect*.ab /mov
robocopy "%source%" %destination% *resource*prefab*.ab /mov
robocopy "%source%" %destination% *resourceguncamps*.ab /mov
robocopy "%source%" %destination% *resourcetargettrain*.ab /mov
robocopy "%source%" %destination% *resourcesquad*.ab /mov
robocopy "%source%" %destination% *resourcefetter*.ab /mov
robocopy "%source%" %destination% *resourceprofiles*.ab /mov
robocopy "%source%" %destination% *resourcefontsprefabs*.ab /mov
robocopy "%source%" %destination% *resourcewishgunbg*.ab /mov
robocopy "%source%" %destination% *resourceworldcollide*.ab /mov
robocopy "%source%" %destination% *resourcesquads.ab /mov
robocopy "%source%" %destination% *resourcetheater.ab /mov
set "destination=%foldername%\units"
robocopy "%source%" %destination% *character*.ab /mov
set "destination=%foldername%\text"
robocopy "%source%" %destination% *text*.ab /mov
set "destination=%foldername%\battlebg"
robocopy "%source%" %destination% *sprites*.ab /mov
exit /b
PNC Files
- AvgConfig.*.AvgCfg_*.lua : story chapter configuration
- AvgConfig.*.AvgLang_*_EN_US.lua : raw text
- CharacterTextConfig.*_EN_US.lua : Files + Story text
- CvTextConfig.*_EN_US.lua : voice lines transcriptions
- LuaConfigs.loading_tips.lua: loading screens text
- LuaConfigs.noun_des.lua : most worldview entries
- LuaConfigs.locale_text.lua.bytes.txt : loose strings data (use lister in UTF-8 for CN version)
- LuaConfigs.skin.lua.bytes: Skin names and descriptions
- LuaConfigs.item.lua.bytes: Item descriptions (match id and furniture textures with LuaConfigs.dorm_furniture.lua.bytes.txt)
- LuaConfigs.activity_name.lua.bytes: Events names
- LuaConfigs.hero_relationship.lua.bytes
- LuaConfigs.camp.lua.bytes: hero factions
- LuaConfigs.event.lua.bytes/event_replace_txt + LuaConfigs.event_choice.lua.bytes.txt/event_assist: Anomaly Nodes (regular exploration)
- LuaConfigs.warchess_event.lua.bytes + LuaConfigs.warchess_event_choice.lua.bytes.lua: Anomaly Nodes (Matrix Mode)
- LuaConfigs.hero_data.lua.bytes: hero id
- LuaConfigs.avg_character.lua.bytes.lua: hero id in stories
- LuaConfigs.sector.lua.bytes.txt: chapters + event names
- LuaConfigs.sector_stage.lua.bytes.txt: stages names
- spriteatlas/athsuiticon: Algo Sets icons
- LuaConfigs.noun_des: World View (Horizon Records -> Type = 7)
- tables.ab\BattleSkillCfg.bytes: skills description
- spriteatlas\skillicon.ab: hero + commander + enemy skill icons
- LuaConfigs.monster.lua.bytes.lua: Enemies names, description, skills id
- LuaConfigs.battle_grid.lua.bytes.lua: Grid effects names and descriptions
- spriteatlas\explorationicon.ab: protocol, active tiles, function pools icons
- spriteatlas\commonicon.ab: items, dorm, functions, attributes icons
- images\activity\whiteday22.ab: white day portraits 1024
- LuaConfigs.career.lua.bytes.lua: Classes ids and names
- images\loginbg.ab: login artwork
- LuaConfigs.skill_label_info.lua.bytes: Skill effects tooltips
- LuaConfigs.attribute.lua.bytes.lua: Names and IDs of hero stats (calculation formulas in Game.PlayerData.Hero.HeroData.lua.bytes.lua + Game.PlayerData.AttributeBonus.lua.bytes + LuaConfigs.hero_star.lua.bytes + LuaConfigs.hero_potential.lua.bytes)
- images\dynhead.ab: animated profile pictures
- images\mainscenebg.ab: main menu backgrounds
- images\oasisbuilding.ab
- images\sectoricon.ab
- spriteatlas\ui_signinminigamebq.ab: Anniversary Emote Generator chibis
- spriteatlas\sectorbuilding: Procedural Efficiency/Specialty Training icons
- LuaConfigs.warchess_tip.lua.bytes: Warchess story nodes
Files processes
GFL Dolls
Wiki filename
|
Extracted from
|
Comments
|
<Name>[_costumeX].png
|
Android/New/character<Name>/pic_<Name>[_HD] + pic_<Name>[_HD]_Alpha (use René's tool to combine)
|
full body - main
|
<Name>[_costumeX]_D.png
|
Android/New/character<Name>/pic_<Name>_D[_HD] + pic_<Name>_D[_HD]_Alpha
|
full body - damaged
|
<Name>[_costumeX]_S.png
|
Android/New/character<Name>/pic_<Name>_N
|
portrait (use René's extractor to separate and recrop)
|
Icon_Skill_<icon name>.png
|
Android/New/spritesui
|
icon name fetched from "icon" parameter in /skill[X]data
|
<Name>[_costumeX]_chibi[_dorm]_spritemap.png
|
Android/New/character<Name>spine/<Name>.png
|
sprite map. There may be another spritemap with the "R" prefix for dorms.
|
<Name>[_costumeX]_chibi[_dorm]_skel.skel
|
Android/New/character<Name>spine/<Name>.skel
|
skel bytes. The "R" version is necessary for the dorm animations switch to work.
|
<Name>[_costumeX]_chibi[_dorm]_atlas.txt
|
Android/New/character<Name>spine/<Name>.atlas
|
atlas bytes. There may be another atlas with the "R" prefix for dorms.
|
Live2D (all assets defined in /Live2DSettings - get hit_areas from CubismHitDrawable - archives internally organized in normal and destroy)
|
<Name>[_costumeX][_D]_live2d_texture.png
|
Android/New/live2dnewgun<Name>/*.png
|
|
<Name>[_costumeX][_D]_live2d_[motion id].mtn
|
Android/New/live2dnewgun<Name>/*.fade.json (AnimationClip)
|
|
<Name>[_costumeX][_D]_live2d_model.moc
|
Android/New/live2dnewgun<Name>/*.fbx (Animator)
|
|
<Name>[_costumeX][_D]_live2d_physics.txt
|
|
Only for old Live2D
|
GFL Enemies
Wiki filename
|
Extracted from
|
Comments
|
<Name>_I.png
|
Android/New/resourceiconenemy
|
icon
|
<Name>_S.png
|
Android/New/character<Name>/pic_<Name>_SS + pic_<Name>_SS_Alpha
|
portrait
|
<Name>.png
|
Android/New/character<Name>/pic_<Name>_LL + pic_<Name>_LL_Alpha
|
full body
|
Icon_Skill_<icon name>.png
|
Android/New/spritesui
|
icon name fetched from "icon" parameter in subpage /skill[X]data
|
<Name>_chibi_spritemap.png
|
Android/New/character<Name>spine/<Name>.png
|
sprite map
|
<Name>_chibi_skel.skel
|
Android/New/character<Name>spine/<Name>.skel
|
skel bytes
|
<Name>_chibi_atlas.txt
|
Android/New/character<Name>spine/<Name>.atlas
|
atlas bytes
|
GFL Assimilated
Name must always remain the base enemy name without attachment (even for alt versions).
If there is only one set of animation files in the game (no "ally" fileset), reuse enemy files.
Wiki filename
|
Extracted from
|
Comments
|
<Name>_S.png
|
Android/New/character<Name>/pic_<Name>_SS + pic_<Name>_SS_Alpha
|
portrait
|
<Name>.png
|
Android/New/character<Name>/pic_<Name>_LL + pic_<Name>_LL_Alpha
|
full body
|
Icon_Skill_<icon name>.png
|
Android/New/spritesui
|
icon name fetched from "icon" parameter in subpage /skill[X]data
|
<Name>_assimilated[_alt]_chibi_spritemap.png
|
Android/New/character<Name>spine/<Name>.png
|
sprite map (the _alt tag is used for "costume" variants) - May be optional
|
<Name>_assimilated[_alt]_chibi_skel.skel
|
Android/New/character<Name>spine/<Name>.skel
|
skel bytes - May be optional
|
<Name>_assimilated[_alt]_chibi_atlas.txt
|
Android/New/character<Name>spine/<Name>.atlas
|
atlas bytes - May be optional
|
<Name>_Upgrade.png
|
Android/New/character<Name>/pic_<Name>_LL_1 + pic_<Name>_LL_1_Alpha
|
full body - assimilation last stage (ringleaders only)
|
<Name>_Skill_CutIn.mp4
|
Android/New/<Name>.usm.bytes
|
assimilated skill anim (VGMToolbox for decompression then ffmepg for m2v to mp4 conversion)
|
GFL HOCs
Wiki filename
|
Extracted from
|
Comments
|
<Name>_S.png
|
|
|
Icon_Skill_<icon name>.png
|
Android/New/spritesui
|
icon name fetched from "icon" parameter in /skill[X]data
|
<Name>_chibi_spritemap.png
|
Android/New/character<Name>spine/<Name>.png
|
full unit - sprite map
|
<Name>_chibi_skel.skel
|
Android/New/character<Name>spine/<Name>.skel
|
full unit - skel bytes
|
<Name>_chibi_atlas.txt
|
Android/New/character<Name>spine/<Name>.atlas
|
full unit - atlas bytes
|
<Name>[_A/_B/_C]_chibi_spritemap.png
|
Android/New/character<Name>spine/R_<Name>_M[1/2/3].png
|
single unit - sprite map
|
<Name>_chibi_skel.skel
|
Android/New/character<Name>spine/R_<Name>_M[1/2/3].skel
|
single unit - skel bytes
|
<Name>_chibi_atlas.txt
|
Android/New/character<Name>spine/R_<Name>_M[1/2/3].atlas
|
single unit - atlas bytes
|
<Name>_Promotion.jpg
|
|
Weibo previews
|
<Name>_Artwork.jpg
|
|
Reddit previews
|
GFL Fairies
Wiki filename
|
Extracted from
|
Comments
|
<Name>[_2/_3].png
|
Android/New/resourcefairy
|
full body
|
<Name>_chibi[_2/_3].png
|
Android/New/resourcefairy
|
chibi fairy
|
GFL Equipment
Wiki filename
|
Extracted from
|
Comments
|
<Name>.png
|
Android/New/resourceiconequip
|
That's litterally all
|
PNC Dolls
Wiki filename
|
Extracted from
|
Comments
|
Character_Profile_<Name>.png
|
files\bundles\res\character_npic
|
portrait
|
<Name>[_costumeX].png
|
files\bundles\res\character\<Name>\lpic_<Name>\lpic_<Name>.png
|
full body
|
<Name>_base[2/3].png
|
files\bundles\res\character\<Name>_p[2/3]\lpic_<Name>_p[2/3]\lpic_<Name>_p[2/3].png
|
full body - first and second breakthrough
|
Icon_Skill_<name>_[passive/skill/ult].png
|
files\bundles\res\spriteatlas\skillicon
|
|
<name>_face[X].png
|
files\bundles\res\character\<Name>_avg\face
|
|
<Name>_Ult.mp4
|
files\media\videos\UltSkill\ultskill<HeroId>.usm
|
ultimate skill animation (decrypt with CRID.usmDemux_Tool then ffmpeg conversion)
|
PNC_<Name>_Promo[_X].[jpg/png]
|
Weibo previews
|
|
PNC Enemies
Wiki filename
|
Extracted from
|
Comments
|
<Name>.png
|
files\bundles\res\character\<Name>_avg\lpic_<Name>_avg
|
full body
|
<Name>_face[_X].png
|
files\bundles\res\character\<Name>_avg\face
|
|
spic_<name>.png
|
files\bundles\res\character_spic
|
icon
|