.minerva – An AIR Shared Object Editor
- Compatibility: AIR 3.1 and later (ActionScript 3.0)
- File Size: About 950Kb
- Change Log
What’s New
- Allow ByteArrays to be deflated/inflated in viewer
- Display UTFBytes of ByteArray
- Added read/write support for Vectors
-
If you have v3.3.4 or older you will NEED to uninstall and install v3.4.0+ to update. Auto update WILL not work!
Description
.minerva is an Adobe AIR based utility. It is capable of reading and writing AS2 (AMF0) and AS3 (AMF3) Shared Objects (.sol Files). It is also capable of reformatting JavaScript that has been optimized. An example of optimized JavaScript is JavaScript that has all the line breaks removed in order to reduce file size. Thus reducing the entire script to a single line. While good for file size, it’s hard on readability. .minerva returns the code back to it’s formatted form.
Features
- Read/Write AS3 Shared Objects – Capable of reading/writing Flash 9 and newer .sol files.
- Read/Write AS2 Shared Objects – Capable of reading/writing Flash 8 and older .sol files.
- Reformat JavaScript – This is a bit of a random feature I added in becuase I didn’t feel like making an entire application for this feature. When you run across compressed JavaScript, it’s a pain to read. What this allows you to do is return that compressed (often one-lined) JavaScript back into formatted and legible text. Beautify Javascript
- Auto-update capability
- JSON Export
- Command Line Actions – Export JSON of a SOL file directly from the command line. Available commands are ‘json-export’ and ‘exit’. ‘json-export’ will immediately export the file url passed, and ‘exit’ will auto exit the program after exporting. Example: ‘C:\Program Files (x86)\Course Vector\minerva\minerva.exe” C:\Users\username\Desktop\myLSO.sol json-export exit’. The exported JSON file will be placed in the same folder and be the same name with a JSON extension (i.e. ‘myLSO.sol.json’)
Need Help?
Feel free to e-mail me a question. When you e-mail your question, please include pictures (if applicable) that clearly demonstrates the problem and provide a brief explanation.
Author: Gabriel Mariani, (e-mail: gabriel -at- coursevector.com)
Copyright 2012, CourseVector (This work is subject to the terms here.)
Leave a comment
115 Comments to .minerva – An AIR Shared Object Editor
Will it be possible to edit and save sol files with .minerva in the future?
January 11, 2009
If the demand was there for it. I’ll put it on my todo list, right now i’m in the middle of some updates to SideShow and Aroma.
May 4, 2009
Hello,
Do you plan to release it as opensource. I am interested in to look your AMF parser code. Thanks.
May 8, 2009
To tell you the truth, the first version I made I built the AS2 parser from scratch. With the AS3 updates, I pulled a lot of logic from the AMFPHP project which IS open source. AMFPHP
May 16, 2009
.minerva is a handy tool, but with testing you go through the process of “open>browse for sol” repeatedly, I think the ability to drag and drop a sol from the OS into .minerva would eliminate this and make it even more useful!!
May 29, 2009
[...] .minerva For .minerva I upgraded it’s support of AMF0 custom classes and typed objects. It now supports dragging and dropping files into the UI to speed up debugging. [...]
[...] all using a ByteArray, so I looked for a tool to do the job. I found a handy AIR application called Minerva, which can open a *.sol file and display its information. As of this writing, the current version [...]
September 18, 2009
Very cool.
I’d also be interested in the AMF parsers, releasing them as opensource would be absolutely great! But I’ve done some AIR apps also, and I know it’s not an easy decison…
Please keep me updated!
September 18, 2009
I would probaly consider doing that. I got most of the v2 logic from amfphp which was open source to begin with. Only makes sense to share! I’ll let you know when I get it up, mostly likely on Google Code or something.
September 21, 2009
That would be really useful!
I can help you write the code to handle updating the SOL.
Please ping me as soon as you can (directly if you want, I’m working on a project that would be way better with the help of such a lib)!
October 3, 2009
I found one error while formatting a Javascript file:
var A = 1e-10;
is wrongly formatted as:
var A = 1e – 10;
October 3, 2009
I don’t see whats wrong with that. Looks correct to me.
December 5, 2009
Very nice! I used to use .soleditor but they never updated it for AMF3 so I finally just uninstalled it.
I would add my vote for being able to write to the .sol as well. The data fields are editable so I thought this was feature at first glance.
Thanks for this.
- Aaron
December 5, 2009
Oh and also, “open with” functionality would be great, so I could set up file association with .sol files. In fact I’d be more than happy to contribute that code if you would be interested. – Aaron
January 7, 2010
Henk, I finally realized what you meant, and updated the JS Formatter engine. So your math error should be fixed now
January 8, 2010
good work!
January 20, 2010
Gabriel, I can open and edit .sol files, but cannot get the changes to save. Even the “save as” function doesn’t create a new file. Any help? I have updated Air to the latest version. Thanks!
February 11, 2010
I’ve enjoyed using your tool and though I would comment on an issue I’ve encountred. When I edit the loaded .sol file I’ve only been able to persist the changes using the “save as” option from the menu. Though the changes do appear in the new .sol file, I’ve noticed that all Number type data from the original .sol are converted into Integer types in the new file.
Thanks for sharing your tool.
February 25, 2010
Thanks for the tool. What would make this really useful for me, would be if it read the contents of your shared object directory directly (by adding that path in), and poll the contents frequently to reflect changes in the .sol for viewing/debiggun purposes.
March 13, 2010
“save as” function changes “filename : AMF3″ into “filename.sol : AMF3″.
And, cannot “save” function work on Windows7 ?
March 15, 2010
Would it be possible to add a sort option for the shown properties/variables. I have some very complex sol files and it is awkward to look through long lists for the desired item
Otherwise thanks a lot, one of the few editors/viewers that actually works
March 15, 2010
@elvis Maybe i’ll add a refresh button to reload the file
@Jap The first part it always adds an extension when saving. That’s how the program recognizes a SOL file. I don’t understand the second part of what you wrote.
@JJ i’ll look into that
@cmacleod I’ll check on that too
March 15, 2010
Is this App tested on Mac OS? I open it and only see an empty pane.
Thanks
March 19, 2010
Thanks for the sort option
March 19, 2010
I have had a couple of problems with the new version, both to do with Array() entries
a) minor issue if you expand the array to view it’s entries it always expands the first (0) entry. If I then minimise the element 0 it closes the entire Array. I just wants to hide the element 0 so I can see the others
b) If I expand element 3 or more entries at once (say 0, 1, 3 or whatever) the application hangs and I have to terminate it
If it matters the data structure is a custom class that contains an Array of another class. I can send you the sol file if you desire.
March 19, 2010
(slight typo above)
The hang is if I expand 3 or more Array() entries at once.
March 22, 2010
I’ve been having a problem with the utility where after making any changes to a .sol file and saving it, the .sfw that accesses it no longer recognizes the file. Any help would be appreciated.
March 23, 2010
hi, a little bug ? :
when i save a SO -amf3- (with version 3.2.0.2), your application add “.sol” to the name of the sharedobject
not the file name, the internal name : SharedObject.getLocal(“mySO”,”/”) , after saving “mySO” become “mySO.sol” …. )
so it is unusable ;)
March 23, 2010
Bah, the devil is in the details. Thanks alan! I’ll have an update hopefully tomorrow if work isn’t too hectic.
March 30, 2010
Ok so I finally took the time to really go over all the details and make sure everything (that I could tell) is up to par and fixed. As you can tell from the change log quite a bit was fixed. Please try out the latest version and let me know if anything is still wrong.
March 30, 2010
Thanks, the array issues are fixed, a couple of thoughts while checking
a) I have a couple of undefined types in my sol file (a bug) but I cannot fix these to Number. Is it possible to change the type of an entry?
b) also would it be possible to add new variables, or too complex to do?
March 30, 2010
No, it’s all quite possible. It’s just a matter of creating an interface that isn’t too complicated. But right now I’m just trying to fix bugs. Flashbug has some problems I need to get fixed. Maybe after everything is said and done I can get back to .minerva and add that capability. Trust me, its on my to-do list, just don’t have much time =p
April 6, 2010
Error #1065 when editing savegames of http://www.kongregate.com/games/garin/monsters-den-book-of-dread
April 8, 2010
Lollie, I have the exact same problem with the same exact game; I just used cheat engine instead. It would be awesome if there was a help section that can clarify what exactly are the errors and ways to solve them. I looked it up and got this:
ReferenceError: Error #1065: Variable LoadTest is not defined.
at global/flash.utils::getDefinitionByName()
at … (rest of stack trace deleted)
1065 Variable _ is not defined. You are using an undefined lexical reference. For example, in the following statements, the statement trace(x) generates an error because x is undefined. However, the statement trace(y) doesn’t generate an error because y is defined: trace(“hello world”) trace(x) // x is undefined var y trace(y) // No error, y is defined.
In this case I was trying to dynamically instantiate a class by first finding the definition of that class and then newing it. Something like this:
public function createInstance(className:String):Object {
var instance:Class = Class(getDefinitionByName(className));
new instance();
}
It turns out the reason why the error was being thrown was that in my Flex Application I didn’t have anything which “used” the class. In other words the compiler thought that the class was left over junk and didn’t include it in the compiled swf. By adding in a use of it, everything started working. As example use would be something like:
private static const loadTestRef:LoadTest = null;
Source: “Daniel R.: Flex 2 Runtime Error 1065.” NeoPhi. Web. 08 Apr. 2010. .”
Don’t know what the hell that means.
April 17, 2010
Similarly I have a significant error
a) load my sol file using minerva
b) change a field, click save changes on the field, then save via the File Menu
c) exit minerva. Re-run and open the same sol file and I get the error
AMF0::getObjectReference – Error – Undefined object reference ’512′
I have seen this error a couple of times, different references (also seen 768). My sol file is quite complex, many objects and arrays and many variables
May 14, 2010
AMF3::getObjectReference – Error : Undefined object reference ’147′
error when try to edit savegame of
http://www.newgrounds.com/portal/view/536018
May 31, 2010
Thanks for the bugfix, a small issue with the latest version:
Previously I could right-click on a .sol file anywhere (generally posted with a bug and copied to my hardrive somewhere) and .minerva would open the file just fine.
Not anymore, .minerva opens but the file is not open. A pity this was very useful.
This also happens if the file is in the standard folder, so it is an issue with the rightclick open process. The program works just fine otherwise
July 19, 2010
Is there going to be a fix for the sol errors?
It is very sad indeed that such a brilliant program is ruined by the fact that it destroys perfectly fine sol files :(
July 21, 2010
There’s a pretty glaring error that causes .minerva to incorrectly save(or parse, I’m not sure which step it’s failing at) .sol files. It causes .minerva to save files that if you were to re-open them, you get an Undefined object reference error.
If I’m not mistaken, isn’t that error caused when the AMF0 parser finds a ‘reserved’ variable with a null value?
I’m using flash 10(debug version). AMF0 shouldn’t really be parsing the files, since they should all be AS3 to my knowledge. Perhaps include a method in the future to force-specify which parser to use?
I have a sample .sol that I could upload to you if you wish. It opens fine the first time, but if you save it(even without changing a thing) you are guaranteed to get the Undefined object reference error. After saving the filesize of the .sol is reduced from 6.41k to 2.60k as most values are lost.
July 21, 2010
That would be awesome if you could email that to me. I’m sorry I didn’t catch this error. To be honest I only use minerva to read sol files not really edit them. So I only hear about these issues when somone speaks up. I’ll get to it asap. Or if you want you can post an issue/bug here: http://code.google.com/p/cv-minerva/issues/list
I’m going to start using Google code to keep track of bugs so people can tell when something has been fixed. Thanks!
September 16, 2010
[...] information inside the files we have a lot of programs but I discover recently one very nice named .minerva. This is an AIR application, that also has a JavaScript beautifier, that can open Flash cookies and [...]
October 11, 2010
Hi, I reported it via
http://code.google.com/p/cv-minerva/issues/list
and a new release came out, but unfortunately the save issue still happens (objects lose their contents)
Here is a save
http://www.multiupload.com/UZXSPA0329
October 27, 2010
Just checking, did you need anymore example files for the bug I reported?
November 10, 2010
Hi, this is a great little tool.
I have an .sol file that gives me the following error when I open it in minerva:
“Data Length MismatchFile Length:229715 Data Length:33107″
What exactly does this mean and how can I fix it?
Thanks a lot!
January 11, 2011
I am wondering if there is going to be a feature to manually add an integer to an array rather than only being able to modify pre-existing arrays
January 11, 2011
eventually, but not right now. pretty busy with life at the moment. When i get some time i’ll add some new features.
January 26, 2011
I have a question – how does AIR read/write to a shared object from another domain? Does it use the Shared Object class to do it, or do you have to load it as a text file?
January 29, 2011
I load it as a binary file and manually edit it. You usually can’t edit it from another domain which is why i don’t use the built in Shared Object class.
February 13, 2011
I get this error:
AMF3::readData – Error: Undefined AMF3 type encountered ’13′.
Could you fix it, please?
Thank you!
February 21, 2011
You’ll need to post a bug on google code with the sample SOL file. Otherwise i’ll have nothing to work with or keep track of. Thanks
March 23, 2011
Hi Gabriel, just wanted to drop a note and say thanks for the continued work on this project, it’s good to see improvements since I started using it in 2009. Keep up the good work!
- Aaron
March 24, 2011
Thanks! It’s a hobby, but i do chip away at it when i have time
April 2, 2011
Is there any way to get an older version of .minerva? I upgraded from 3.2.6 to 3.3.0, and now I am unable to edit .sol files without the contents of the file getting wiped out.
April 2, 2011
@Ricky
Could you send me the sol you are trying to edit? Post a bug issue here so I can keep track of it: http://code.google.com/p/cv-minerva/issues/list
I’d rather fix the issue than require people to use an older version. And to answer you question all versions are on the server, just change the url to the correct version. (i.e. http://blog.coursevector.com/downloads/Minerva-3-2-6.air)
April 4, 2011
Could you guys please make it harder to save changes?
I’m loving how I have to click in multiple places to save data, and that if I navigate away without clicking save my changes are lost.
Still I fear that some of my work may be inadvertently recorded.
You guys have boldly innovated in the field of unintuitive and unusable software, but I feel you need to go a bit futher to complete your vision. You can do it guys, I have faith in you!
April 5, 2011
Complaining about free software instead of giving constructive criticism. Stay classy ‘Bob’
April 13, 2011
Can you please add the ability to drag data types into custom orders?
It would really help in organizing things.
April 16, 2011
^ Can I please have a reply to the above idea?
April 16, 2011
That would be kinda complicated, since i’m using the Flex tree to display the data. It’s not entirely flexible (excuse the pun) in terms of doing custom things. I’d have to do a lot of work to customize that component to pull that off i think. So for now, it’s not a feature that will happen anytime soon. sorry.
April 16, 2011
Ok then
I appreciate the answer and can’t wait to see what you do with this program next.
April 20, 2011
a function to add and delete data instead of just editing it would be very usefull
April 22, 2011
I’ve been looking into it. But i think again, i’ll have to customize the Flex Tree component to get there. Currently working on an update to flashbug then i’ll refocus on minerva.
April 24, 2011
Hi there! I recently downloaded minerva to edit some .sol files for a flash game I play.
All the files show up, and I am able to edit the things (such as amount of money, levels, etc.)
However, none of my edits are showing up when I play the game. After I edit the things, I click the “Save Changes Button”. After that, I click the “Save” button on top, and I exit Minerva. None of my edits showed up, so I look at the file on Minerva again, and everything is back to how it originally was. Am I doing something wrong when saving my edits?
April 25, 2011
@Kevin
Could you upload the sol you are trying to edit to the bugtracker? Post a bug issue here so I can keep track of it: http://code.google.com/p/cv-minerva/issues/list
April 26, 2011
Fantastic app, thanks so much! Makes those quick sol edits nice and hassle free.
I was curious if it’s possible to import from json? It’d make my life so much easier when moving nested arrays around.
May 11, 2011
Thanks a lot of making this tool. It’s extremely useful and way better than any of the other editors I have used earlier.
/Michael
June 5, 2011
Minerva fail to load *.sol files from tankionline.com site with message «AMF3::readData – Error : Undefined AMF3 type encountered ’17′, at position ’336′»
June 5, 2011
@Max please post bugs to my bugtracker, i just mentioned it two posts above. I’m not going to fix that issue, i don’t even have a file to work from.
June 29, 2011
Hey man, one question : can we add new values to sol’s? And how?
If no, will it be available in the future?
I know other programs that can do that, but they won’t open 90% of the sol files…
July 4, 2011
I plan on it, but i’m too busy to get to that at this point so please be patient. Thanks!
July 25, 2011
You have the ability to export to JSON, could you support IMPORTING JSON? This would be very helpful as it is much easyer (for me at least) to edit the data from JSON then using the flash GUI.
November 14, 2011
@gabriel: Thanks for giving to the community. Great help.
December 1, 2011
Do you have an ETA on th feature to add and delete data from anywhere in the sol including arrays?
December 2, 2011
Not really, I made some progress on it a long while ago but ran into a road block. The Flex tree component doesn’t easily allow you to add or remove items anywhere inside. I didn’t really want to rebuild a good tree component nor do i really have the time so i kinda put it on the back burner for now.
January 16, 2012
[...] jó-ideje eltört, kénytelen voltam alternativát keresni. a sok találat közül végül a minerva nevű kis air app jött [...]
February 17, 2012
http://armorgames.com/play/11622/hands-of-war-2-expanded-edition
.sol file becomes corrupted and unusable when trying to edit it.
February 17, 2012
Please post a bug on my issue tracker. The link to it is the big red button above the comments section that you entered your comment in. After you post the bug I’m going to delete your comment to keep the comments area cleaner.
April 19, 2012
there are a problem with some .sol :
AMF3::readData – Error : Undefined AMF3 type encountered ’16′, at position ’112′
April 19, 2012
Please read the comment right before yours. This is why I have the comment box directly below a big red button that says ‘Find a bug?’
May 6, 2012
the Instaler ont strt i got A. Air installed and im runnig Win 7
May 6, 2012
I have no idea what you are saying. Please write something that makes more sense, thanks!
June 8, 2012
Hi, I am having a quick question (probably a novice one)
I have a AS3 app saving in sharedObjects.
I would like an AIR app (independent) reading the flash app’s shared object files (which is not currently), since they don’t share the same location.
Can you please advise? For you that should be the easiest thing…
By the way I love your app, it locates the flash shared objects and reads them all!
Thanks so much
I would appreciate any help!
June 11, 2012
This site summarizes what you can do to specify where the shared object can live (to share between multiple SWFs): http://jaycsantos.com/flash/the-trick-to-using-sharedobject/#tip2
But the problem lies in sharing a shared object between a web page and an AIR app. If you look at that site it’ll show you that AIR apps and webpages are more or less sandboxed into a folder that they can search for shared objects from. So unless you copy the shared object into yuor AIR folder somehow and it allows you to read it you might be stuck manually reading the shared object (bit for bit).
June 18, 2012
how i can add variables :S
June 18, 2012
You can’t. I haven’t updated it to support that yet, I work on it in my free time which I have little of lately. Sorry! =/
June 23, 2012
Looks like this app treat Number type as Interger.
July 6, 2012
this is a great tool, thanks!
July 18, 2012
Great, loved it!
I was able to see and edit in a beautiful way all my .sol files, great job!
ps: great job with AIR
July 31, 2012
Are there plans to be able to add/delete items? At least adding more items to the same array shouldn’t be a problem.
July 31, 2012
I did have plans but honestly minerva is on the back burner in terms of priorities in my life. i think if I ever do get some time to chip away at it I might totally redo minerva and update it to a more modern platform. But the current issue with minerva, the reason I haven’t added those ‘easy’ features is that the tree component that displays the structure of the file doesn’t easily allow you to add or remove items. That component itself is incredibly complicated and not something I wanted to rebuild so I kinda left it. But if/when I do re-do minerva and it’s interface I’ll totally add those features in…..someday.
August 24, 2012
My problem is as follows…
signature error
AppName: minerva.exe AppVer: 0.0.0.0 ModName:
adobe air.dll
ModVer: 3.4.0.2540 Offset: 0022b68f
Details
August 24, 2012
There are no details? What is the problem?
August 30, 2012
I have an issue where whenever I attempt to update my minerva installation I get a error telling me that the installation package is corrupt and to please get a new one…
I have the most recent update of Adobe Air, and am running Win 7.
I’d like to update my 3.3.1 installation if only to make Minerva stop asking me if I’d like to update every single time I open it.
Any suggestions?
September 1, 2012
Try following what they did on this post: http://forums.adobe.com/thread/772195
September 1, 2012
Hey Gabriel. None of that stuff worked but I realized it wasn’t anything to do with the app, most likely it was just Air and my Win7 64 bit comp not playing nicely together.
I actually found a great workaround on the stack overflow forums though.
So here’s the reply I left on the question I made in the Adobe forums:
“Oh hey I found an AWESOME workaround on Stack Overflow.
Turns out if you can find another computer to install the app on, you can take the folder it makes (in my case the course vector folder) in Program files (windows 7 64 bit is the x86 program files) and copy it.
Then assuming you have Adobe Air installed on the computer you wanted the app on (which if you spent a few hours trying to install an adobe air app without the program then I can’t help you…) you can simply paste the folder into the same location and it’ll work perfectly! X3″
September 6, 2012
Glad to hear you got it sorted out!
September 11, 2012
When you mouse over the about button then it says “About .Sparta”.
September 11, 2012
hahah thanks for catching that…. sigh
September 22, 2012
My computer can’t open .air, What should I do?
October 18, 2012
Install Adobe AIR
November 21, 2012
i would like to have either multiple windows open or a compare tool so i can take two saves and move variables to one side or another.
November 27, 2012
[...] está cambiando muy a menudo la URL del juego en Flash), puedes probar con Minerva de Course Vector (descarga), una aplicación de Adobe AIR que te permite modificar fácilmente archivos de configuración de [...]
December 1, 2012
Is it possible to use .minerva on an Android tablet? and if so how do i install it?
December 1, 2012
In theory. You would have to install Adobe AIR from the marketplace then install .minerva. I’ve never tested it on a tablet so your mileage may vary.
December 18, 2012
[...] modificare il contenuto dei cookies Flash tramite 2 apposite utility gratuite, .sol Editor o .minerva (quest’ultimo richiede Adobe [...]
December 25, 2012
Error# 5100 I keep uninstaling/reinstaling and that is the error I get
December 28, 2012
This is a general Adobe AIR issue. Try googling the solution for that. From what I could find, you may need to uninstall and reinstall both the application and Adobe AIR to resolve this.
January 7, 2013
It would be great if you could add in the feature of adding and removing data entries to sol files
January 30, 2013
Could you post an older version that will run on Linux with the 2.6 Air runtime? Adobe’s not supporting Air on Linux after 2.6.
Thanks!
January 30, 2013
v3.3.4 and below supported AIR 1.5, so you can just download that version. Be warned, the auto-update will nag you every time you open it up.
http://blog.coursevector.com/downloads/Minerva-3-3-4.air
May 9, 2013
I’m trying to attempt the “cheat” for a flash game I read into in the “website” field. Upon attempting to open the save files of the game, I get this message;
“Data Length Mismatch
File Length:64382 Data Length:64290″
and if I save the files, even without making any changes, it automatically causes the game to not recognize them, so they’re corrupted or something like that. I don’t understand, and I have searched a lot into the Internet without finding anything. I’d really appreciate it if anyone could me, as I don’t know how to work with this kind of thing but have attempted to do so without avail for about five days straight.
May 10, 2013
If you could email me the SOL file you’re trying to edit I can take a look at it. Otherwise I really can’t help you much until I see the file.
May 10, 2013
Wow! A really fast response! I’ll email it to you shortly. Many thanks!
May 13, 2013
Umm not to be a bother or anything, but did you get the email? I sended it to -removed-.
May 13, 2013
Yes I did, I’ll hopefully have a chance to look into it this week.




January 10, 2009