Home Forum Downloads My Favorites Register FAQ Mark Forums Read

Go Back   EQInterface Forums > Developer Discussion > General authoring help / discussion
User Name
Password

Reply
 
Thread Tools Display Modes
Old 01-11-2007, 11:05 AM   #1
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default EQInterface Arcitect (EQIA) - EQUI Designer/Editor in the works


EQInterface Architect is the name of the editor I have in the works (The name is not final yet, but sounds good to me). I am taking a different approach to this than others have. The parts of the program that load the interface into a programmable object will be contain inside a DLL (Dynamic Link Library) for portability into other editors.

If any C# developers are interested in helping with this project. Grab a copy of the source code and send me a message indicating what part of the project you'd be interested in developing. I could use all the help I can get on this project.

I'm not making any promises because that's bad luck around here. But I want to at least finish the DLL, but really want to have a full featured editor. If you have any suggestion of features to include, describe them the best you can and post them here in this thread (or PM them to me).

Please don't turn this thread into a .Net is to slow argument, all I will say on that matter is, like every other programming library, .Net is fast as long as the developer knows how to use it properly.

Link to the site where the file is hosted and terms of download are stated: EQIA Website

Last edited by shillingworth : 01-27-2007 at 02:07 AM. Reason: Reformatting the thread, Inclusion of link to my site
shillingworth is offline   Reply With Quote
Old 01-11-2007, 11:07 AM   #2
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

I set up a message board today at http://siferion.smfforfree2.com/ for communication about this project and it's various parts. Feel free to create an account there and post information relevant to each section. For now it is just bare bones of what will be there later on. There are google ads on the site since it's a free message board, but it doesn't seem to inject them into post yet.

Last edited by shillingworth : 01-27-2007 at 01:09 AM.
shillingworth is offline   Reply With Quote
Old 01-15-2007, 10:56 AM   #3
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Updated today, along with a nice parse of a couple windows.

Here's a pic of how far i've got so far, isn't far but at least i'm able to read data.
Click Me for Screen Shot

Currently having a problem with reading size/location tags, can see the result on the form1 window in the screen shot. Player window those sections were commented out, the other one they were not, in turn it read nothing past them. I believe this to be due to my method of reading those tags, so will work on a new reading method for buried tags like the x/cx,y/cy of location and size.
shillingworth is offline   Reply With Quote
Old 01-15-2007, 10:58 PM   #4
Drakah
Skinning Guru
 
Drakah's Avatar
 
Join Date: Jul 2002
Posts: 1,076
Interface Author - Click to view interfaces
Default

Nice job so far Shill I wish I new how to dive deep into programming code to help out. Hopefully someday the community can get a working program that would raise the modding authors interests as well as newcomers.

Good luck again!
__________________
Regards,

Drakah

shakahr.com
Remember...it is only a GAME
Drakah is offline   Reply With Quote
Old 01-16-2007, 02:18 AM   #5
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Thanks Drakah, well I definitely at least want to make this usable. With the way i'm designing it, the actual Xml Parser will be in a dll file that others will be able to use in writing their own editors. But i'm not making any promises like others have, seems to be bad luck around here.
__________________

"Computers are like Air Conditioners, they stop working properly when you open Windows."
shillingworth is offline   Reply With Quote
Old 01-18-2007, 06:30 AM   #6
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default Breakthrough !

Had a breakthrough in my understanding of working with Xml documents in C#.Net today. Will have a functional version of the Parser DLL in the next source update at this rate, which should be in the next couple of days. Was going about this the wrong way, XmlReader (what i was using) is a foward only reader, figured out how to work with the natural node structure of Xml after a little bit of trial and error. Already seeing doubly fast parse times with much less complex code, which should in theory make this very easy to manage.
shillingworth is offline   Reply With Quote
Old 01-29-2007, 01:08 PM   #7
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Just got done with the new layout since Docking Panels are out of the question. Also got half the EQIDL classes set up for the property grid now.

Here's the screen shots of the layout i'm going with. This layout is thanks to Phil Wright for writing the Krypton Control Toolkit and keeping to use of it free to public.
Layout - Property group collapsed
Layout - Both groups collapsed

They can be expanded and collapsed by clicking the arrows in the heading on them.

Getting very close to the first usable release. First release wont have the visual preview in, because I'd like to iron out the bugs in the actual data side of things and the xml editor itself before I even both finishing the graphics library.
shillingworth is offline   Reply With Quote
Old 01-29-2007, 05:58 PM   #8
Drakah
Skinning Guru
 
Drakah's Avatar
 
Join Date: Jul 2002
Posts: 1,076
Interface Author - Click to view interfaces
Default

I love the simplicity of it thus far
Drakah is offline   Reply With Quote
Old 02-02-2007, 08:36 AM   #9
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Well I took a tumble down 2 stories of stairs helping my mom's bf move yesterday. His two birds are so anoying that I can't get more than a couple hours of sleep at a time (even with a blanket over their cage), being so tired I fell down two stories of steps with a TV in my hands. Doc says I'll be fine, but my whole back has swallen up to the point where I can barely move. He gave me some muscle relaxers until the swelling goes down.

So until I recover from this, I probably wont get much work done, keeping my laptop near me so I can work on it when I can concentrate ewnough. These muscle relaxers got me real hazy.
shillingworth is offline   Reply With Quote
Old 02-02-2007, 10:42 AM   #10
LlyonAyes
A Gray Wolf
 
Join Date: Mar 2004
Posts: 5
Interface Author - Click to view interfaces
Default Take Care of Yourself

Sorry to hear about your tumble, you just take care of yourself and work on this later.
LlyonAyes is offline   Reply With Quote
Old 02-05-2007, 01:12 PM   #11
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Got a bit of work on this done, has been slow going since I took that tumble. Working on the project system now, so far I have it doing two things when the user clicks new/open. It loads default into an object of it's own, then parses sidl.xml in the default folder to get sidl's defaults loaded. After that it creates/loads an interface. Any time a file is changed that exist in default but not in the ui being worked on, it copies over the file to the ui directory from default then applies the modifications done.

Also have the start of the save project code. Currently it can save 4 out of the 41 actual usable interface tags. When it saves it goes through each setting for that tag (like x and y in location tags) and checks them against sidl.xml, if they are the same value as a default entry in sidl or a 0 value, it gets ignored by the saving code (only saving the important tags and ones that have been changed).

So far the projects are saved in My Documents/EQIA Projects, when the ui is saved and the testing methods find no faults in it, it gets copied to the eq/uifiles folder and saved to a zip file. Will probably change this functionality to use a publish button to send it to eq/uifiles though.
shillingworth is offline   Reply With Quote
Old 02-11-2007, 01:23 PM   #12
Fyrecaster
A Hill Giant
 
Join Date: Aug 2006
Posts: 37
Interface Author - Click to view interfaces
Default Watching / Awaiting with interest

Just to say I think what you're trying to set up Shilling is one of the best ideas I have heard of so far. Especially waiting to see a program that will allow for WYSIWYG. So tired of having to tie up both mine and my wifes comps while working on on designs for UI pieces. So I'll keep my eye buried as to this projects progress, I just wish I had more programming knowledge so I could help out.
Fyrecaster is offline   Reply With Quote
Old 02-17-2007, 07:32 AM   #13
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Got back on track today with working on this. Instead of checking defaults before the xml document is created, I am checking them before it is saved. Had to change that a tad to make use of the serializer i recently learned how to use properly.

In the process i accidentally created an Undo feature. Got a line of code wrong in the deserialization (data to readable text), and instead of clearing the element that was being edited and re-adding it. It buried it inside it like the following:

Code:
<?xml version="1.0" encoding="us-ascii"?> <TextureInfo item="CS_Buttons.bmp"> <XmlDocument> <TextureInfo item="CS_Buttons.bmp"> <XmlDocument> <TextureInfo item="CS_Buttons.bmp"> <Size> <CX>256</CX> <CY>256</CY> </Size> </TextureInfo> </XmlDocument> <Size> <CX>256</CX> <CY>300</CY> </Size> </TextureInfo> </XmlDocument> <Size> <CX>256</CX> <CY>400</CY> </Size> </TextureInfo>


However the code that reads the individual elements before saving to file doesn't know to look for XmlDocument element, so it only grabs the outermost one:
Code:
<?xml version="1.0" encoding="us-ascii"?> <TextureInfo item="CS_Buttons.bmp"> <Size> <CX>256</CX> <CY>400</CY> </Size> </TextureInfo>


So i'm going to use that to my advantage, hahaha.
shillingworth is offline   Reply With Quote
Old 02-19-2007, 09:18 AM   #14
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Alright came up with a cool feature today. Say your editing the property to a Size's X value: If you enter basic math like 5 + 10, when you hit enter it will convert it to 15, essentially performing the math operation. So I have a question now, any math formula's ya'll think I should put in other than: Addition, Subtraction, Multiplication, and Division?
shillingworth is offline   Reply With Quote
Old 02-19-2007, 10:09 AM   #15
kudilukudzu
Premium Member
 
Join Date: Sep 2002
Server: povar
Posts: 207
Interface Author - Click to view interfaces
Send a message via ICQ to kudilukudzu Send a message via AIM to kudilukudzu Send a message via MSN to kudilukudzu Send a message via Yahoo to kudilukudzu
Default

well, my boyfriend is a programmer, and he suggested having the mod command operator. breif description for those that don't know -
17 mod 3 = 2
because
17 / 3 = 5 remainder 2

the mod command gives the remainder for a division problem that is solved in integers rather than in decimals. i assume division in this program would be performed in integers, as i don't believe that you can put something halfway through a pixel.

his suggestion for how it could be used involved window sizing and placement - say you have a certain number of window you want to place along the bottom of your screen. you want them to take up an equal amount of horizontal space, so that people can stack them vertically and have them line up if they want. you take the horizontal screen resolution and divide it by the number of pieces to get the number of pixels wide each window should be.
however, then you think of some skinny window you'd like to place in the extra space (because it's increadibly unlikely that it will be exactly even). use the mod command with the same numbers to find out how much room you have left to put the skinny window in (such as a vertical potion window, or a mod of an unused window that just lists stats). then you could simply take 1 or 2 pixels from each of the other windows if you decided you needed a little more room.

don't know how useful it would be, but if it's not complicated, you could include it. i understand that in programming, the symbol generally used for mod is %.
__________________
Sanity's Edge, Povar
Kudilu Kudzu, 80 Human Monk
Darenla, 75 Drakin Cleric
Ruritha Queenclaw, 72 Vah Shir Beastlord
Kamendae Namorlane, current trader mule

Universal Brotherhood, Povar
Lythra Amaranthus, 49 Wood Elf Druid
Kasya Earthspeaker, 35 Erudite Magician
Urasei, 14 Barbarian Shaman
Ukis, 14 Barbarian Berserker
kudilukudzu is offline   Reply With Quote
Reply



Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off


All times are GMT -5. The time now is 03:38 PM.


vBulletin Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© MMOUI