Logo Platform
logo amplifiers simplified

Endless Legend XML Editing Tool version 0.1

Reply
Copied to clipboard!
10 years ago
Oct 2, 2014, 4:48:48 PM
So, I got bored one day and decided to make a tool that could easily edit the XML files that Endless Legend runs on.

Weeks later I look back and realize that it was a much more involved task than I had previously supposed.



EXE: You may need the Visual C# Redist for this: v0.2

https://mega.co.nz/#!bg9EwDRR!d6cRNW33YXbl3INphCpb9cR6HYx3PYfbR4twJbY4PTA



It's written in Python 2.7 and uses Tkinter and lxml

It also uses \ for file directories, so no support for mac or linux as far as I can tell.



If you want to run the source, you must install Python 2.7, then install lxml. (I used pip to install it, but you can try to manually do so)



Python Source: v0.2

https://mega.co.nz/#!Ss9GmTQL!M0wMVUty8fX3OeziHz_T9zEK0sQmBed98To_olv9vX8



I'll be copy-pasting the readme here for clarity's sake: (How do I spoiler tags 0.o)



Endless Legend eXtensible Markup Language Editor version 0.2.0 by Krdax Drkrun



Written in Python utilizing lxml and Tkinter



Syntax folder included encompasses Endless Legend v1.0.0 on 24 September, 2014



This editor is a work in progress designed to make XML editing easier for the Endless series games designed by Amplitude Studios.

Other uses are permitted, but may not work as well as liked...



Usage: For whatever you like, though it only works on files with the extension of .xml. Hopefully those are actually xml files...

The first usage will attempt to locate the Working Public Folder. If that folder is in the same directory as the editor, it will remember it.(See 2. under To Avoid Thesesmiley: smile



This program uses the file ELSyntax.json (that is quite large) to find suggestions while editing. If you move it those suggestions will no longer appear

To create a new ELSyntax.json, from the Browsing phase, select the Menu Dir -> Parse XML

#####THIS WILL TAKE AN ENORMOUS AMOUNT OF TIME, DURING WHICH THE PROGRAM WILL HANG UNTIL THE PARSING IS COMPLETE###### (My computer is rather nice, but it still takes 10 minutes to complete)



Right clicking on elements will get you the context menu.

-Current Context Menu bindings- (Right click on these to see what they do)

--Browsing Mode:

---.xml Files

--Treeview Mode:

---Tags

---Tagged Values

---Comments



Selecting a menu item will more often than not bring up a new window over top of the previous window.

There may be some instructions on the window itself, but if you are confused as to how things work, I will try to add more clarity. Message me or post.



Currently Attribute Editing is very confusing but works:

Looks like this:

- | AttrKey | | AttrValue |UP DOWN

- | AttrKey2| | AttrValue2|UP DOWN

+

Append Edit | Undo | Cancel | Save



clicking on the minus(-) will delete that attribute



clicking on the plus(+) will bring up two entries and listboxes for the new attribute

Typing an asterisk (*) into an Entry will display all currently parsed Attribute names from Endless Legend XML files

Typing something else in will cause the listbox to attempt to match it with Attribute names from Endless Legend XML files

Double clicking on an entry from the listbox will add it to the Entry field above it

If a valid ELXML value is in the first Entry, the second Listbox will only hold values that are current possibilities of that Key



selecting UP will move the key and value up, unless it's at the top already, and down will do the opposite.

Doing this will close the append tab and delete whatever is in the Append Entries.



Once you have the intended Key and Value in the Append Fields, select Append Edit



IMPORTANT NOTE: If you don't Append Edit, it will not appear in the Tag Attributes if you save the list

----ONLY THE ATTRIBUTES SAVED ABOVE THE PLUS(+) WILL BE ATTRIBUTES OF THE TAG WHEN SAVE IS PRESSED-----



List of currently known issues:

#-KNOWN: Attempting to edit a file with *.xml but isn't actually xml or is badly formed will cause the editor to explode

#-KNOWN: Not having a Public folder/working directory selected will still kind of work, but not super well



#-POSSIBLY KNOWN: Does not work on Mac or Linux? Maybe... Haven't tried, so no guarantees. It works like a charm for me on Windows 7. \ vs. / most likely candidate



If you like it, cool, use it.

If you hate it, tell me why.



Happy Modding
0Send private message
10 years ago
Dec 3, 2014, 2:16:03 PM
Hmmm, I was kind of hoping for a bit more feedback. I'll live though.

Soon to come: Version 0.2, support for unicode, fix for the directory bug, and general cleanup throughout the entire code.
0Send private message
10 years ago
Dec 3, 2014, 4:39:48 PM
While I have the utmost respect for anyone working with XML in Python (I've done it and it isn't fun), I fail to see the advantage of this over a decent editor like Sublime or Notepad++?
0Send private message
10 years ago
Dec 4, 2014, 4:47:52 PM
'Tis a valid question.

I would like this program to be specifically tailored to Endless Legend modding. I grew frustrated with tags and XML in general, so I wrote a tool to expedite XML editing with the intent of modding Endless Legend. This tool is functional for general XML editing, but I have a large amount of specific things planned. Hence the v0.1. I also wanted to see if I created a tool, how many people would use it instead of their preferred tools. My program is simple, but I guess I don't have any good reasons (currently) to help you or anyone decide to switch to it. If it's not too much of a bother, try it out, tell me how crappy it is and in what ways, and I'll try to improve it. This is my first true experience with a code project, and so testing would be greatly appreciated.

I'll probably be uploading version 0.2 later today. EDIT: Released.

-Unicode support

-Fix for the directory bug

-Clearing of root tags

-General code cleanup
0Send private message
10 years ago
Dec 4, 2014, 8:44:59 PM
chrome seems to not like the download... first time for everything...



I like the idea and I'd consider playing around with it but I'm leary of lowering my security settings.
0Send private message
10 years ago
Dec 4, 2014, 9:10:44 PM
If you could suggest a better upload mirror, I would oblige you. Mega has proven to be rather simple and reliable, but it's hosted in New Zealand by who knows what.

The previous upload sites I've used have either been arbitrarily complex or ad-riddled.
0Send private message
10 years ago
Dec 5, 2014, 12:57:37 AM
not sure it was the site so much as the download itself. Chrome thinks it so bloody dangerous its refusing to allow the file to remain on my computer.
0Send private message
10 years ago
Dec 5, 2014, 5:13:25 PM
Slight001 wrote:
not sure it was the site so much as the download itself. Chrome thinks it so bloody dangerous its refusing to allow the file to remain on my computer.




Annoyingly Chrome does that not because of the contents of the file, but because of the number of downloads. Its silly. Chrome actually keeps a record online somewhere of how often people download files and if you try to download something that isn't in its database it will block it.



This ZIP file contains nothing but text files so Chrome can't possibly know anything about how malicious or not it could be.
0Send private message
?

Click here to login

Reply
Comment