I've started working on a program to help build areas offline. My goals are to make it do the following things:
- check .are files;
- read .are files and put them into an easily readable format (allowing the user to access all the information through a hopefully user-friendly interface);
- write out .are files (and rewrite them in a correct format, including indentation, mob/room/object description justification, reset ordering, and so on)
- enable the user to actually build new areas through it (by using the interface rather than having to work in the text file directly).
Currently, the first two goal are more or less implemented, but still require some testing. That's also the first time I have worked with Delphi, so I'm not sure if it is sufficient to just have the .exe file or if other libraries are necessary as well.
Anyway, if I remain motivated, I hope to have a downloadable version with at least the area-checking part in the following weeks.
Here are a few screenshots if you are interested (ignore all the buttons below the frame - they are there for testing purposes and will disappear in the final versions).
Screen 1: Area tab, with some general information about the area loaded (Waterdeep in the screenshot).
Screen 2: Quest logs related to the area.
Screen 3: First mobile tab; once one of the mob is chosen in the list in the top-left corner, the information related to this mob appear everywhere in this tab (and in the next one). In later versions, everything on this tab should be editable, and there should be buttons to create new mobs (from scratch or as a copy of an existing mob), and delete existing mobs.
Screen 4: Second mobile tab, with mobile programs and shop/repairer information.
Screen 5: First object tab, which works (or will work) like the mobile tab (the information updates when you select a mobile from the list).
Screen 6: Second object tab, with the descriptions, identification message, and programs.
Screen 7: First room tab, with basic information and connections. I'd like to get a more graphical interface for the exits if possible; the current one is a place-holder that was faster to code.
Screen 8: Second room tab, with the extra descriptions, the programs, and the room contents (at repop/reset).
More experienced builders might wonder where the resets, shops, repairs, and specials sections are... I chose to put the information they contain where they really belong. That is, the exit reset (and trap) information can be found with the room exits/connections; the shop/repairer/special info is found in the mob tabs; and the resets are in the corresponding room.
Screen 9: Log tab, where all the operations, warning, and error messages are presented; that's the main tab for checking an .are file.
Questions, comments, and advice are welcome.
New electronic aid to building
Agree with Kregor. A platform non-specific language like Java will definitely allow this program to be used by more people. Is it too late to rewrite this in Java? Or maybe a kind soul can port this over to Java for Dalvyn? I think writing the interface can be done with JBuilder or similar programs, what needs to be done is to convert the processing part of the code into Java. Or am I making this sound too simple?
Teck's Treehouse
http://teck78.blogspot.com/
http://teck78.blogspot.com/
-
- Sword Grand Master
- Posts: 4708
- Joined: Tue Jul 15, 2003 9:26 pm
- Location: House of Wonder, Waterdeep
There're some 5500 lines of code already (rough estimate), so I'm not starting over in Java
Turning the code from elegant Pascal into ugly C-based Java shouldn't be hard though (just very tedious) and I guess that there exist programs that would do it automatically. I will see what I can find and do. I do not think I have used anything Windows-specific that would be very hard to port over. (Though, it's the first time I have used Delphi, so... I might be wrong).
Turning the code from elegant Pascal into ugly C-based Java shouldn't be hard though (just very tedious) and I guess that there exist programs that would do it automatically. I will see what I can find and do. I do not think I have used anything Windows-specific that would be very hard to port over. (Though, it's the first time I have used Delphi, so... I might be wrong).
-
- Sword Grand Master
- Posts: 4708
- Joined: Tue Jul 15, 2003 9:26 pm
- Location: House of Wonder, Waterdeep
Or perhaps I might take a look at http://www.lazarus.freepascal.org/index.php