bruvzg / gdsdecomp

Godot reverse engineering tools
MIT License
1.47k stars 147 forks source link

How convert .atlas file #97

Closed slmarcos closed 1 year ago

slmarcos commented 1 year ago

Hi, I'm trying to recover a project from an .exe but I receive an error in the atlas files and the final .atlas is not generated. Can I convert this files in another way?

Thanks!

nikitalita commented 1 year ago

Huh, I was wondering when someone would run into that.

Atlas converting is currently not implemented, I didn’t bother since it didn’t seem like it was widely used. Can you post your GDRE log from the recovered project folder?

slmarcos commented 1 year ago

@nikitalita The file has more characters than allowed for GitHub. I am going to post the section that informs about the failures. If you need another specific one I can post in another comment.

`****EXPORT REPORT****

Totals: Decompiled scripts: 664 Failed scripts: 0 Imported resources for export session: 1534 Successfully converted: 1421 Lossy: 4 Rewrote metadata: 0 Failed to rewrite metadata: 17 Not converted: 113 Failed conversions: 0

The following files were converted from an import that was stored lossy. You may lose fidelity when re-importing these files upon loading the project. res://.import/tex_dirt2.jpg-d033b6fa20e29127e393ade4eb24937e.stex to res://textures/environment/tex_dirt2.jpg res://.import/tex_dirt_real.jpg-f6aa2d6397c2a9f8973b238a0c50d54e.stex to res://textures/environment/tex_dirt_real.jpg res://.import/tex_dirt_real_high_res.jpg-78d10dccefdd688d5406ae14942d8a57.stex to res://textures/environment/tex_dirt_real_high_res.jpg res://.import/tex_splash.jpg-27bee83601081b3dceba80cfbbfc92c7.stex to res://textures/environment/tex_splash.jpg

The following files were converted and saved to a non-original path, but did not have their import data rewritten. These files will not be re-imported when loading the project. res://.import/ReloadSmall.svg-372cc480d3ddeb0809a56c85fde29903.stex to res://addons/code-snapshot/icons/ReloadSmall.png res://.import/Save.svg-8e26ae2f5149c323216329e669d247ca.stex to res://addons/code-snapshot/icons/Save.png res://.import/icon_add.svg-d3e2a1bf01ab1646fd533c0ae739c6af.stex to res://addons/godot-next/icons/icon_add.png res://.import/icon_cycle.svg-704a1bd2b44d109f39c24978002f0840.stex to res://addons/godot-next/icons/icon_cycle.png res://.import/icon_geometry_2d.svg-3e8b75bb6a38693255a76162660a3237.stex to res://addons/godot-next/icons/icon_geometry_2d.png res://.import/icon_import_fail.svg-7ad0927b5823c3399ba221a5daf198eb.stex to res://addons/godot-next/icons/icon_import_fail.png res://.import/icon_mirror_y.svg-6c3f2164b83aecbf9b78540511f7cf06.stex to res://addons/godot-next/icons/icon_mirror_y.png res://.import/icon_trail_2d.svg-51013538d456b189cea8a9180694fa86.stex to res://addons/godot-next/icons/icon_trail_2d.png res://.import/icon_trail_3d.svg-6391c60a03eaeff4d2799492f411ae5b.stex to res://addons/godot-next/icons/icon_trail_3d.png res://.import/icon_v_box_item_list.svg-883dcb141d0b41e3fd00f437f70206b0.stex to res://addons/godot-next/icons/icon_v_box_item_list.png res://.import/add-white-18dp.svg-06b50d941748dbfd6e0203dec68494ea.stex to res://addons/imjp94.yafsm/assets/icons/add-white-18dp.png res://.import/arrow_right-white-18dp.svg-10d349447e9bd513637eade1f10225f0.stex to res://addons/imjp94.yafsm/assets/icons/arrow_right-white-18dp.png res://.import/close-white-18dp.svg-3d0e2341eb99a6dc45a6aecef969301b.stex to res://addons/imjp94.yafsm/assets/icons/close-white-18dp.png res://.import/compare_arrows-white-18dp.svg-7313ec3b54f05c948521b16e0efaaeed.stex to res://addons/imjp94.yafsm/assets/icons/compare_arrows-white-18dp.png res://.import/remove-white-18dp.svg-984af3406d3d64ea0f778da7f0f5a4c3.stex to res://addons/imjp94.yafsm/assets/icons/remove-white-18dp.png res://.import/subdirectory_arrow_right-white-18dp.svg-09b2961410e6b2c0e48e0cf1138c3548.stex to res://addons/imjp94.yafsm/assets/icons/subdirectory_arrow_right-white-18dp.png res://data/translations.en_US.translation to res://.assets/data/translations.csv

The following files were not converted because support has not been implemented yet: res://.import/AN_RBX_Evos.atlas-888871d66927f9f1637c63643e560c7d.spatlas res://.import/FX_BACK_Head.spjson-152f76a8fbf995831a8f307026746833.spjson res://.import/AN_RBX_Evos.atlas-88c0a15c072b95be36ab80ec048b0b67.spatlas res://.import/FX_BACK_Weapon_Slash.spjson-7b1fd09f662b28acf6cde86d89be3765.spjson res://.import/AN_RBX_Evos.atlas-60a262bc74efa240586da59afa76e9a7.spatlas res://.import/FX_BACK_Weapon_Throw.spjson-8bd73c6ef288122008dd91466dedeeda.spjson res://.import/AN_RBX_Evos.atlas-27f8f907d61369cf5b6a285a3b15ca2a.spatlas res://.import/FX_BACK_Weapon_Up.spjson-2ef6d84a06e8649d8c7aa2c2c3ca53c5.spjson res://.import/AN_RBX_Evos.atlas-74cdf8ccaf9ab9baa04a9662789ace29.spatlas res://.import/FX_FRONT_Boots.spjson-014f0da710e86295ed87cb578893d0c6.spjson res://.import/AN_RBX_Evos.atlas-50331b22a7a987172332929922a0a046.spatlas res://.import/FX_FRONT_Dust.spjson-91de8b844f2a7b3ee655dd9670f0f318.spjson res://.import/AN_RBX_Evos.atlas-b0a23bd198d0c02e535e1d44cf63eb9c.spatlas res://.import/FX_FRONT_Explosion.spjson-728f7289e54f5668f55bb2cbb1637c90.spjson res://.import/AN_RBX_Evos.atlas-d673c6a1de0900486b05533e6713c8f9.spatlas res://.import/FX_FRONT_Head.spjson-081c0e498a06fe7cb4d5d9d5813b8f5e.spjson res://.import/AN_RBX_Evos.atlas-a217ab62f642cf780d1e15ab1e078cbf.spatlas res://.import/FX_FRONT_Kick.spjson-180789d3f45d46b4a4edae05ed1129d0.spjson res://.import/AN_RBX_Evos.atlas-3e9c4bf6ff68c4c2cfc4037255cddadc.spatlas res://.import/FX_FRONT_Punch_Down.spjson-64cccf0ad9b55a20ac7cd5aa6c3a806f.spjson res://.import/AN_RBX_Evos.atlas-1b4973c697232cac362eab94cb700ce1.spatlas res://.import/FX_FRONT_Shield.spjson-4bd85fcb4531bbf63a6fb286300692eb.spjson res://.import/AN_RBX_Evos.atlas-16fc713f15fa23bf2aedec022e5e1b44.spatlas res://.import/FX_FRONT_Shot.spjson-c2c6f6bd1d54ff2d47d64e43eb974255.spjson res://.import/AN_RBX_Evos.atlas-f3a72ad262b618aa15c42ac3f4845bfd.spatlas res://.import/FX_FRONT_Stomp.spjson-d1a5fb62c668fbaabfd6a21e1f294794.spjson res://.import/AN_RBX_Evos.atlas-e6c7a0071cd04fef1c4e5c992cd3e4e0.spatlas res://.import/FX_FRONT_Water.spjson-71bb87db962f083f62e60fe9c3e3cda8.spjson res://.import/AN_RBX_Evos.atlas-bdcf01047b6f408ffdb1b27c628b9651.spatlas res://.import/FX_FRONT_Weapon_Stab.spjson-c54af1b12170345b00061348784e44d0.spjson res://.import/AN_RBX_Evos.atlas-041378978acf679dabbbc1d4bb0b2649.spatlas res://.import/FX_FRONT_Weapon_Up.spjson-41cd66ba980dfbe2ba53f56e16d20f9f.spjson res://.import/AN_RBX_Minion_Aracny.atlas-0c86fa261533f0b3ba67b325972f0356.spatlas res://.import/FX_Acid_Spit.spjson-43595a27db639b367f278dd89ae6e51d.spjson res://.import/FX_Electric_Web.spjson-4724ee2794108d629545ac67712d458c.spjson res://.import/FX_Infected_Bite.spjson-0634b38f0f73de1327252cf1e7feec64.spjson res://.import/FX_Laser_Beam.spjson-f6bb371e1c1136fa50b641cf54bb6b65.spjson res://.import/FX_Poisonous_Armor.spjson-7cef274796fc1eec8c05a60ebd85a7ba.spjson res://.import/Minion_Aracny.spjson-1c1a71aac684c5e60a8939a90b50baed.spjson res://.import/AN_RBX_Minion_Beetle.atlas-10eaf4273c5022a98794f80a69e9d7fd.spatlas res://.import/FX_Cutting_Edges.spjson-103167284f3c07cad59b8dccae4b6533.spjson res://.import/FX_Electrified_Sting.spjson-fd60a080d925984b2c50359851f7c787.spjson res://.import/FX_Interference.spjson-91cd4fc1067236cf143c6370b7d3a8bc.spjson res://.import/FX_Proto_Barrier.spjson-0112f473e540aec5b14f997d983c4dd3.spjson res://.import/FX_Proto_Beam.spjson-a798fb46fdc7a8b5c6b8cdeb38ef6751.spjson res://.import/FX_Sharper_Blow.spjson-de27f1ba1c16ce1731048f882f53e72c.spjson res://.import/FX_Swarm_Beam.spjson-e4bc1a3c88e930201913a63376887f3f.spjson res://.import/FX_Waveforms.spjson-a3201ec6bf02f2d4070e847bafcd1c55.spjson res://.import/Minion_Beetle.spjson-2c09322f54abf3b221cb642df5978e7e.spjson res://.import/AN_RBX_Boss_DrillShark.atlas-b6a5efd0ca05437b890661c6b72f5c79.spatlas res://.import/BG.spjson-fbd59ab1fa49363c91d32cd29ac073ec.spjson res://.import/DrillShark.spjson-200f833fe622676cd3b43f97983cc7ff.spjson res://.import/FX_Dagger_Fin.spjson-e8f7490a510be10b38ead0f4ef7c8b5f.spjson res://.import/FX_Damage_DrillShark.spjson-0852a72366cd1dd27b5a1f596e740e9e.spjson res://.import/FX_Death_DrillShark.spjson-9bcc65edd86876618b0f5d872009ceee.spjson res://.import/FX_Drill_Missile.spjson-421064ef5bf24ba145ed9622719eb4e0.spjson res://.import/FX_Entrance_DrillShark.spjson-42f362efab0c0ed5c15b62c3dae8c749.spjson res://.import/FX_Mecha_Bite.spjson-9484f692fb33271b8d6a7fa091b762c0.spjson res://.import/AN_RBX_Boss_SandWurm.atlas-11518b264bb5060ef53fd7e0bd39dee5.spatlas res://.import/BG.spjson-6cf32921993237fe0937a3879cd606cb.spjson res://.import/FX_Damage_SandWurm.spjson-e1dbf719b9b5d297642639cdf6feec63.spjson res://.import/FX_Death_SandWurm.spjson-b67d51041da862d4876237781d975986.spjson res://.import/FX_Drill_Missiles.spjson-12882ec10bd94fdef9b804684a74625d.spjson res://.import/FX_Entrance_SandWurm.spjson-7698229945a7b6d3f9abb2c595e375d6.spjson res://.import/FX_Heal_Wave.spjson-f1184557d4a95f66f6abd5c973979783.spjson res://.import/FX_Idle_SandWurm.spjson-660506cb06d5a8850e8d0ef07df1e50b.spjson res://.import/FX_Mecha_Drill.spjson-aa17408a1a5f156d9b4ccbe80da1512b.spjson res://.import/FX_Photon_Beam.spjson-6c6887589c75ae6d2acfd21caa2f4f2c.spjson res://.import/SandWurm.spjson-ce2c659435294e15dfa9407b964944cb.spjson res://.import/AN_RBX_Minion_Crab.atlas-f1417511cf0f8e9f1a94394c1c9b8a41.spatlas res://.import/FX_Beam.spjson-370bb4213ba9e9cda346932fd2f3f547.spjson res://.import/FX_Damping.spjson-c555cf6265afac5b1742b954bd9c5fdf.spjson res://.import/FX_Electro_Crimper.spjson-c84bf09527cef56d50d9e7a5248f6d6c.spjson res://.import/FX_Laser_Sight.spjson-8330b717ebfa9c5f9bfdbf5737e5fe80.spjson res://.import/FX_Mirror_Shield.spjson-5ab7185780101b7fcb5d46e31b4d3d4c.spjson res://.import/FX_Proto_Laser.spjson-3fc7a5ebfae5546775ea25ed5e117a2f.spjson res://.import/FX_Pulse_Frequency.spjson-de1d56613be957aff2b65d1ec3381ac2.spjson res://.import/FX_Transistor.spjson-9349308894cbacbf72e8d23222810a65.spjson res://.import/FX_Wave_Blaster.spjson-501cfd89e83107ba8f6f1e3f0419ccea.spjson res://.import/Minion_Crab.spjson-78fed842aac63c17eee46e058ea3f02e.spjson res://.import/AN_RBX_Minion_Snake.atlas-84999b3c7015af0471faeee51edd2778.spatlas res://.import/FX_Driller.spjson-699f55714569c5f651ce23666b082963.spjson res://.import/FX_Hook_Tail.spjson-1c333bfd010fa2e39e99c2766efeff67.spjson res://.import/FX_Photon_Signal.spjson-0bee9b0a639afcf6b7ea7250e666e2ac.spjson res://.import/FX_Sharp_Whip.spjson-b83651e34517c4980112ae6facab08c6.spjson res://.import/FX_Shockbite.spjson-c0248dbc330fcc0f7353b26580a8cbe0.spjson res://.import/FX_Venom_Blast.spjson-19c9d4e87cdeae0e512c657731260def.spjson res://.import/Minion_Snake.spjson-bee8b6945626f981485461fe46767c11.spjson res://.import/AN_RBX_UI_Energy.atlas-1e7fa2f5f951c6b3bbe12f439b677363.spatlas res://.import/skeleton.spjson-b53cc53246fcf1774f1a045ff093d9a9.spjson res://.import/AN_RBX_Evos.atlas-06f7b410cf88439d7ac744f7e01622ef.spatlas res://.import/Evos.spjson-6f91d7f939b1abe42c2c01edf29fee5f.spjson res://.import/AN_RBX_Evos.atlas-8a40c24b8fbd2dd863b0b634613b530a.spatlas res://.import/Evo_After_Death.spjson-3ed091b4aa2c25ad2ded6bd0e69e7d3c.spjson res://.import/Evos.atlas-3bd1f003863f9a2a65780d443efa73d6.spatlas res://.import/Evos.spjson-05f583372d7f0c4809de4da1e4272956.spjson res://.import/Evos.atlas-f10090337b35c73abf779cffa218c77e.spatlas res://.import/Evos.spjson-53779158ef3571a7a12e5df418a02069.spjson res://.import/Evos.atlas-7f207beda2691d99fc624e0759faf7c6.spatlas res://.import/Evos.spjson-295313e73d033ba2a7bedd297537e985.spjson res://.import/AN_RBX_UI_Arena.atlas-7b0170f62a50a7533e3eddc93dfb72ea.spatlas res://.import/skeleton.spjson-602c5319b77ba7e846d83674d4c7e192.spjson res://.import/AN_RBX_UI_Home.atlas-db11c9eef61a747691696e745c7e0ddc.spatlas res://.import/skeleton.spjson-3e10c6a6e943c55f11dff0c15a6a6eec.spjson res://.import/skeleton.atlas-3c9c00964a4ed601554347e1e30926bb.spatlas res://.import/skeleton.spjson-2f3a8edc4ce3951f19a0ab9254ab3b6d.spjson res://.import/AN_RBX_UI_Buttons_B.atlas-3c71a91f896f9b84879ae042275d03e5.spatlas res://.import/AN_RBX_UI_Home.atlas-d11af2eff89b9cc2e59485cc9d40cd8e.spatlas res://.import/skeleton.spjson-70254cca0e2621ca94e006ae14a49c98.spjson res://.import/AN_RBX_UI_Adventure.atlas-46d48c37a3638cbf4f42d420c07abda8.spatlas res://.import/skeleton.spjson-1c8735aefa79d30aea25ee87603eaa3f.spjson res://.import/skeleton.atlas-d63ed8e0133a893365832c551e119543.spatlas res://.import/skeleton.spjson-33bb465e62b6209c33a0ce4f0c2f4c81.spjson `

nikitalita commented 1 year ago

Just upload the file directly by dragging and dropping it into the issue message box. image

slmarcos commented 1 year ago

My apologies, I didn't see this option. Thanks

gdre_export.log

nikitalita commented 1 year ago

So it looks like all the resources that I have implemented support for converting were converted successfully and it didn't error out, so you'll still be able to edit the game. However, the atlases in this game are not just atlas resources, those are spine atlases, which is a custom resource type provided by an external module linked above. I am probably not going to implement support for converting any custom resources unless they're insanely popular. However, if you'd like to do it yourself, I'll take a PR.