Oni Central Forum

A forum for the Oni community

You are not logged in.

#1 01/05/11 21:01

Lukas Kreator
Member
Registered: 05/07/10

Lukas Kreator's XML Editor - Demo Video!

Hello, I'm planning to develop a XML Editor especifically to edit Oni stuff, and ideas would be appreciated. Also, tell me if the community needs this right now, but I guess you would like one more tool for editing. big_smile

Introduction

The editor will be able to edit XML files based on a property-like user-friendly treeview, in wich you will be able to select a property and edit it easily. I plan to include some kind of property recognition, so you would be able to choose a value from a list, for example.

I had this idea while editing a Particle file, and I had no idea of what I was doing XD and then I understood that more people would be able to edit XML Files if the proccess was easier.

I also plan to make it a MDI, so you could edit several XML at once.

Ideas

I want to know what you most want to see in a XML editor, and what features would make it easier to edit XML stuff converted from ONI files. Any ideas would be appreciated.

Platforms

I would like to know for what Operation Systems should I aim, and what ones the community mostly use. Probabilly it will be cross-platform for Windows and Mac, but if you want to suggest something... Feel free.

Difference from common XML editors

Common XML editors focuse on editing XML files of anything and for anything. This editor will be focused on editing Oni, and so it will have features that other editors have not, allowing easier edition. Also, this editor will be ONLY capable of editing Oni XMLs, probabilly.


So, tell me what you think and if you intend to help in some way... And know that I didn't even start developing this, but I got a lot of ideas. I also must decide in exactly what language and IDE...


PS: Anyway, I cannot use Visual Studio, because it is not working for me for now.

Last edited by Lukas Kreator (01/18/11 18:01)

Offline

#2 01/05/11 22:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

I'm always interested in having a smart editor like the one you describe.  I've had notes on this idea for a couple years, but haven't had the time to do it myself.  Dirk Gently is working on his own editor, but it's currently Mac-only, and I don't know if it will incorporate all of the things I was looking for.  So I'll just repeat the bullet points I have in mind:
- Modular plugin format.  The program uses a plugin for each resource (M3GM, ONCC...) to tell it what each field is, and what values/ranges are acceptable.  This way, anyone can update the program's ability to read a certain format without your having to build a new version of the program when things change (e.g. we learn more about the resource, or OniSplit's output changes, or we invent new resource types that keep evolving).
- Help text.  Either it appears at the bottom of the window when you mouse over a field, or it appears in a side pane like in MS Office.  The text can of course be copied from the wiki.
- Batch-gazing and diff-gazing.  You can look at a collection of the same resource (for instance, all TRAMs in a folder) listed in a table format, or look at what changed between two versions of the same file.  The idea is that you can compare the resources by scanning down a column, such as "Damage dealt" in a TRAM, and seeing what is different.

The last feature would be really helpful for some of the modding work that has been done for the Edition.  Anyway, as far as language, I would suggest anything that's easy to make cross-platform.  Neo uses .NET for OniSplit, and we can run the binary on Macs using mono, but writing a GUI .NET app that runs in mono seems to be a bit more complicated.  Some have used Java for Mac/Win apps in the past.  REALBasic is also an option if you have it.  It's trickier to make a cross-platform app in C/C++, but that's what Gumby and I did for the AE Installer, so we could offer advice if you wanted to do it that way.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#3 01/05/11 22:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Thanks for the repply!

All your suggestions are really cool and I think I can put all of them in the editor. However, it will take time... Can I ask you to make some of these plugins when this feature is complete? It would be great ^^

Also, based on the features you supplied, it will be a lot of work anyway, so I have decided to develop some betas and stuff before really releasing the final project, so you and the other modders could try it and see what you think. I will choose the programming language and the IDE soon, but I will try many things first, to choose the best for this particular project.

I was also wondering if I could make so that my editor interacted with OniSplit, so that you could save your projects as an ONI file, directly...

EDIT: About the programming language and IDE, I think I found something...

Last edited by Lukas Kreator (01/05/11 23:01)

Offline

#4 01/05/11 23:01

Dirk Gently
Member
From: Boston, MA
Registered: 06/12/09
Website

Re: Lukas Kreator's XML Editor - Demo Video!

I can lend a hand whenever I can for testing a mac version with you. An XML editor for OSX would be a good thing because my editor is going to be a raw data editor instead of the traditional OniSplit style editor.

Offline

#5 01/05/11 23:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Oh, thanks. Any help is appreciated ^^

Offline

#6 01/06/11 02:01

EdT
Moderator
From: Los Angeles, CA
Registered: 01/13/07
Website

Re: Lukas Kreator's XML Editor - Demo Video!

If you can write your program so that it can issue commands to the terminal or command line, then you can have it interact with OniSplit and create the .oni files from the xml files.

Looking forward to your program, I'm sure your xml editor will be valuable to the community.

Edit: I can see this workflow: From your xml editor, select the .oni file you want converted to xml, edit the xml document, then convert back to .oni, all in one program.

Last edited by EdT (01/06/11 11:01)

Offline

#7 01/06/11 09:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

Yes, as EdT says, the key to using OniSplit is knowing how to issue CLI commands to the OS.  It's easy to do in C (we control OniSplit this way from inside the AE Installer); not so sure about other languages.  Anyway, I'd be glad to help with the plugins.  Once you're ready to figure out the format of the plugins, maybe we can chat about how you want to do it.  Just let me know when you get to that point.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#8 01/06/11 10:01

Dirk Gently
Member
From: Boston, MA
Registered: 06/12/09
Website

Re: Lukas Kreator's XML Editor - Demo Video!

Objective-C cannot be that much harder than doing it in C, it is a bit more leg-work. Applescript is by far easier than both, I do not know about java or RB though.

Offline

#9 01/06/11 15:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Not much problem about the console commands. I did that before, so it can't be that difficult... But it depends on the language, of course. The only thing I never really did is recognizing the OS to issue the right commands...

And thank you all for the support. I will make a beta the fastest possible... However, I'll try to remember that I must make something fast, but with sufficient quality XD

EDIT: Decided the plugin files should be XMLs too.

Last edited by Lukas Kreator (01/06/11 15:01)

Offline

#10 01/06/11 15:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

Yes, XML would be good for the plugins.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#11 01/06/11 15:01

Dirk Gently
Member
From: Boston, MA
Registered: 06/12/09
Website

Re: Lukas Kreator's XML Editor - Demo Video!

Lukas Kreator wrote:

Not much problem about the console commands. I did that before, so it can't be that difficult... But it depends on the language, of course. The only thing I never really did is recognizing the OS to issue the right commands...

And thank you all for the support. I will make a beta the fastest possible... However, I'll try to remember that I must make something fast, but with sufficient quality XD

EDIT: Decided the plugin files should be XMLs too.

That should be a pretty simple matter to determine the OS, once you have the base down I might be able to give you some tips on how to do it.

Offline

#12 01/06/11 16:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Thanks. I'll ask you when I make that part.

Offline

#13 01/06/11 18:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Here's a basic compatibility test application...

It has nothing to do with the major project, nor does it read XML, but I wanted to make sure it would work on all platforms... So just run this, click some buttons and see if all the controls appear normally. If this works perfectly, then I will start to work on the project right now, and I will release real betas then...

The server didn't allow my attachment, because it had 2.63 MB, and I didn't know what to do... So I temporarily uploaded it to Mediafire, and I know you don't like it... But it is temporary, until someone give a suggestion... Sorry.

Link: http://www.mediafire.com/?qdn4sm4pfcvri4i

Offline

#14 01/06/11 19:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

Yep, works fine on my Mac, so that means we're good as far as this OS goes.  Screenshot below shows that the UI is native and Aqua-y.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#15 01/06/11 19:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Thats great! I will start then.

Can you provide me a suggestion where to upload files when I can't upload as attachment?

EDIT: Weird how the button's didn't look the same... Well, but that's not important...

Last edited by Lukas Kreator (01/06/11 19:01)

Offline

#16 01/06/11 19:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

The buttons in the app are Aqua-style, that is, native OS X, so that's the best possible outcome smile  Mac users hate non-native GUIs.

As far as sharing files, I think drop.io is good, but maybe others have some alternatives.  Once the app is working to some degree, we can store it on the Mod Depot.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#17 01/06/11 19:01

Dirk Gently
Member
From: Boston, MA
Registered: 06/12/09
Website

Re: Lukas Kreator's XML Editor - Demo Video!

ewwwwwwwwwwwwwww RB? REALLY?!? D:

Offline

#18 01/06/11 19:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

I may put the betas in the Depot, once they don't play some piano notes lol. Thanks.

----------------------------------------------------------------------

What is wrong? D:

It is cross-platform and support a treeview-like list... I tought it could be pretty useful...
Also, my first language was Basic, and so it is the language I'm better, I'd say... I'm pretty good with C++, but C++ compilers tend not to work on my computer... Other than that, not much languages are good for what I want to make. So the easiest and most functional seemed to be RB.

And it worked tongue

Last edited by Lukas Kreator (01/06/11 19:01)

Offline

#19 01/06/11 20:01

s10k
Member
Registered: 01/14/07
Website

Re: Lukas Kreator's XML Editor - Demo Video!

Works fine too in windows. Mediafire seems the best for temp file hosting.

The language isn't that important, I believe we only want that it works fine in both platforms. (and that you feel comfortable to program on)

An easy to use XML ui editor would be nice.

Last edited by s10k (01/06/11 20:01)

Offline

#20 01/06/11 20:01

Mukade
Member
From: Ottawa, Ontario - Canada
Registered: 05/29/07

Re: Lukas Kreator's XML Editor - Demo Video!

Hey Lucas, I love your idea! I'd suggest making a plugin that will support BINAs. So BINACJBOCharacters, and the others. That way, we could edit the level itself, add items, characters, change what the characters drop, weapons etc.. That alone will be a big help smile


"He looks mean enough to tear my arm off and beat me to death with it. In fact, he looks mean enough to tear his OWN arm off and beat me to death with it."

Offline

#21 01/06/11 21:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

I plan to add a Plugin and Addons interface, so you could import these Syntax Files and even Script Files, so any XML will be editable. However, the community will have to make these plugin files, as I have not much knowledge about certain file types.

In some days or weaks, maybe I'll send Private Alphas to some members, who need it most... Private Alphas because I don't know if people are ready yet for a Runtime Scripting Engine, because it could be dangerous. I must think... It's too soon to decide.

Last edited by Lukas Kreator (01/06/11 21:01)

Offline

#22 01/06/11 21:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

Hmm, what sort of scripting are we talking about — BSL editing, or the XML Editor itself being scriptable?


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#23 01/06/11 22:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

The XML Editor itself. I already added a Beta tab with minimal scripting UI to see what I can do. If I can forbid some Methods, maybe I can release the XML Editor with runtime scripting, to automate actions... But that is very theorical... I fear someone using Shell in his scripts...

EDIT: I also added a "To-do" tab, in wich you can create/delete To-do notes. Hmm... I feel I'm procastinating the Complex Scripting too much lol
Anyway, I have time... And I already made a demo at VB .NET, but as I said, my Visual Studio is screwed up, so I can't even compile my projects anymore... And .NET is only for Windows.

Last edited by Lukas Kreator (01/06/11 22:01)

Offline

#24 01/06/11 22:01

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Lukas Kreator's XML Editor - Demo Video!

Wow, that's what I thought you meant.  It sounds pretty ambitious, but it would be great to be able to perform a batch operation on some XML Oni resources (in fact, I believe Gumby wrote a little utility like that for his PAR3 work, but I suspect he doesn't consider the program to be suitable for public consumption).  That being said, maybe you should plan a roadmap of features.  Something like scripting might be a good 2.0 feature.

Edit: You could use .NET if you were willing to learn GTK+ or Windows.Forms, but I would not blame you one bit if you didn't feel like going to that extra trouble.  I think REALBasic should be fine for this kind of program (I doubt there would be any speed issues).


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#25 01/06/11 22:01

Lukas Kreator
Member
Registered: 05/07/10

Re: Lukas Kreator's XML Editor - Demo Video!

Yes, I will stay with RBasic. I am pretty ambitious, but it is funny like RB comes with a RBScript object LOL
About Batch, I fear that Batch operations would need using some Shell object...

I just found an incredible solution for this problem big_smile

It's simple: You can script, but only for yourself. You cannot distribute the script, unless you send some text file for everyone, what noone should accept anyway. If you have a good friend, he can supply you with the scripts, without you fearing him, I guess. Anyway, I'm currently using the RBScript object, but people must test if the RBScript is sufficient for Batch and stuff. Maybe people don't like Basic, but I don't know... Basic is made as an easy language (of course, you can do great stuff if you know it very well), and making an easy scripting engine would be good for everyone...

EDIT: Hmm... I have no more ideas... Seems I will have to start the actual scripting lol... I script pretty fast when I have nothing to do. The problem I mostly have is losing interest for something... But with such support from such a community, I will make this the fastest possible ;D

Last edited by Lukas Kreator (01/06/11 23:01)

Offline

Board footer

Powered by FluxBB