Page 1 of 2
Proposed: INI Editor
Posted: Fri Feb 02, 2007 3:28 pm
by giwo
Would a GUI (with checkboxes / text fields) for the various UOX.ini settings be helpful?
Posted: Fri Feb 02, 2007 3:32 pm
by Grimson
For settings like:
NETRCVTIMEOUT=4262064
NETRETRYCOUNT=4227248
CLIENTSUPPORT=4227248
it might be usefull. The other ini entrys are IMHO quite self explaining.
Posted: Fri Feb 02, 2007 3:42 pm
by giwo
Agreed, some entries are easy to figure out. But beyond it giving perhaps a better description of the item, it also would make it more convenient for newbies.
For instance if we had an installer package, it could automatically include the executable then run it as a final step so they can setup their world.
Posted: Fri Feb 02, 2007 3:43 pm
by giwo
As an additional thought, it could be built to allow managing multiple ini files. (So if you wanted to do a quick-switch for some reason on your settings, you create a new ini, then load that as active).
Posted: Fri Feb 02, 2007 4:39 pm
by Xuri
Hm. Definitely sounds like an interesting idea! Might want to create the tool in such a way that it at first only displays the basic, necessary settings to get up and running though - perhaps with an "Advanced" button or something which will show the rest of the entries.
Posted: Fri Feb 02, 2007 6:19 pm
by stranf
I'll chime in!
Editing the .ini is not a big issue for me. So if nobody wants to spend the time on one, then that is understandable.
THAT SAID:
An executable with checkboxes would be sweet for newbies and myself (who has to change IP addresses all the time). It would be slicker and faster to run a program and "save changes" as opposed to using the "notepad" interface.
That said, it would probably save me, what? 4 or 5 seconds each time I load up? So for me it's ultimatley not worth it, but I would use one.
For newbies, a program with exlpinations would save them some grief.
Posted: Mon Feb 19, 2007 8:37 pm
by tdzbdao
Hi,
just wanted to tell, I'm currently working on such an editor. Didn't begin with the ini editing section so far, but I've already implemented a dfn viewer/editor and an item viewer with sprite preview.
I did theoretically the same for the POL server a couple of years ago, but there weren't much people interested at all. Now, my personal UO interest was born again, but I'm not very in UOX3's scripting yet (even though it's javascript), hence I spend some time to write an UOX tool.
If you'd be really interested in this, I could take this thing a little more serious, as for now it's just for fun and not to forget C++ in all my boring daily PHP doings ^^.
Regards,
TdZ
Posted: Mon Feb 19, 2007 8:47 pm
by tdzbdao
Posted: Tue Feb 20, 2007 12:08 am
by Xuri
Welcome to the forums, tdzbdao. That screenshot looks promising =)
Posted: Tue Feb 20, 2007 1:48 am
by giwo
Posted: Tue Feb 20, 2007 4:51 am
by stranf
Looks great giwo and tdzdao!
If you are looking for demand, I would use a .dfn viewer and .ini editor routinely.
My server isn't persistent, so we are constantly changing IPs, and adjusting settings for playbalance.
tdzdao: You're .dfn viewer looks great.....any chance you could program in an entry editor?
I know there are dozens of options for .dfn values for weather, items, npcs, etc. So hardcoding for such options could get out of hand and take too much time.
If you could have a window on the right that the person could just type in an entry, then click on a "submit" button and have the program format that entry, and append to a selected .dfn, it would save a LOT of headaches involved with editing .dfns in notepad.
The problem with notepad is you have to scroll up or down to find stuff and it gives you a headache. If you could just use the arrow keys like you showed in your screenshot, with the ability to type in and add entries I would use this a lot.
Posted: Tue Feb 20, 2007 5:54 am
by Xuri
Also looking nice, giwo!

Btw, what does "Crashprotection" do anyway? =P
Posted: Tue Feb 20, 2007 7:20 am
by giwo
UOX3 can never have enough tools.
One of my plans in writing the editor is to cleanup our INI file overall.
Crash Protection does not much, currently. If it is functioning (which I can't guarantee) it should automatically restart the server on a crash.
Posted: Tue Feb 20, 2007 11:45 pm
by tdzbdao
Hi!
Well, i've got some new screen shots to show off :)
@giwo: your editor looks pretty cool, did you already implement the functionality? I'd be very interested how you handle the ini in/output. I wrote a own library doing that, lots of work (*gasp gasp*:), but finally got it to read and write the uox files.
Posted: Wed Feb 21, 2007 9:54 am
by Maarc
What language are you using? Because there's a .NET group of classes in the CVS for doing things like loading DFNs, INIs and so on, that UOX3 uses. Does a bit of the parsing and stuff for you.
http://openuo.cvs.sourceforge.net/openu ... PI/csharp/
Which reminds me, I should update that sometime.
Posted: Wed Feb 21, 2007 11:09 am
by tdzbdao
Really? Didn't know that. But I needed write back functionality as well, so I guess writing my one was the better solution, at least since I'm not using C# ^^
Btw... A little off topic, but why is UOX using this strange ini file format? I mean with the '{' '}' at beginning and end of each section? Don't see any reason why not using simple conf/ini structures instead.
Posted: Wed Feb 21, 2007 1:53 pm
by Maarc
Hmmm, I thought the ToolAPI had save methods implemented so it could be written back. To be honest, I haven't checked in a while. I hope I don't have updates lingering around here that I haven't committed yet, I'll have to look it up. But obviously, if you're not using .NET, they're not going to be much use to you. Yup, a quick looks like it does have Save routines for most things. And it looks like the ValidationSchema stuff is in there too (syntactical, not semantic). So if you do end up using .NET, you'll probably find them useful. Obviously, if you don't, you won't

But if that's the case, it's another reason for me to kick along and backport those classes to other languages as well.
As far as the {} stuff goes, it's been like that for a long, long time. There probably isn't any really great reason to do it that way, but it does make it easier for parsing where a section starts and ends. It's especially handy for tools and such which may care about comments (none to my knowledge), as this way you know where the comment is relevant to (eg a comment after section 2, but before section 3, will properly be seen, but if you lose {}, it's still inside section 2).
Posted: Fri Feb 23, 2007 5:13 am
by giwo
tdzbdao: I am using Maarc's ToolAPI to handle most of the File I/O, currently. C# makes that part of it pretty simple, really.
I'm still working on a way to make it more modular (so I can associate a INI entry with a GUI control by adding only the control and one line of code).
As for the uox.ini format, it is like that because once apon a time it was not actually called an ini file. It originated as server.scp, which was (at the time) formatted just like all of our other scripts... Obviously things have changed a bit since then, we now have dfn files instead of scp files, but the ini file still basically follows the same format as our definitions.
Posted: Sat Mar 10, 2007 1:56 am
by tdzbdao
Ok, time has passed and I don't think I will ever continue developing this tool. As I said - it was a little just-for-fun project and I got other important projects running which need my attention at the moment.
However, maybe someone finds this useful:
http://rapidshare.com/files/20257564/libUOX.rar.html
It's a C++ library (Win32/GCC) which handles the dfn file read and write functionality. I've included a little sample inside the archive, so no need to talk about it here i guess.
If you're interested I could upload the sources as well.
Bye!
Posted: Sat Mar 10, 2007 3:19 am
by Xuri
That's too bad, tdzbdao :/ Seemed like an interesting tool.