Creatures Editor |
The Black Wyrm's Lair Terms of Use | Help Search Members Calendar |
Creatures Editor |
Jul 25 2009, 08:54 AM
Post
#1
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Well, this is my new project!
This editor will allow you to easily edit creatures and generate a set of files. These files will be processed by WEIDU macro. It could be seen like Near Infinity Editor for Creatures. Except it will patch files, which is far better! Example of use: you want to add "Invisibility Detection" effect for a set of creatures that should see invisibility? You will be able to select these creatures from a list (with a checkbox system) and then click add effect. Select Invisiblity Detection and click Add. It will be possible to change most of the things doable with Near Infinity. I will exclude some of them because I don't need them, but it will be possible to include them on a later stage. Additionally, I will add a support for creating complex spellbooks based on schools selection or other factors. This could be something like building a set of generic spellbooks, each one identified by a name. Then adding one to a creature and freely change some spells after this. There will be a support for creating complex baf script. Something like affecting a long list of baf files for one script slot. Each baf will have its own order number. When generating files, final baf name (previously set) will be created by adding together all baf. I will release this editor if some are interested in it. It will be done in PHP with framework CakePHP and MySQL database. I will code this while testing it with Enhanced Creatures. My purpose is to code Enhanced Creatures in a better developping station. So I will add features when I will need them. I guess that in end december, I will have released both of them. |
|
|
Jul 25 2009, 12:21 PM
Post
#2
|
|
consiglieri Member of Graphics Dept. Posts: 2343 Joined: 13-August 04 From: Michigan, U.S.A. |
Would this editor allow one to edit the colors of creatures and then see the color changes on that creature in the editor/tool?
It would real nice see your changes without having to save it then load the game. with all the new creatures that one could make with this. some nice new colors to go with them would be nice too. -------------------- |
|
|
Jul 25 2009, 01:48 PM
Post
#3
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Actually, no it won't. Colors and sounds won't be part of it.
In fact, it won't have any graphics at all. I will share my work if someone want to add colors & sounds editing. Would this editor allow one to edit the colors of creatures and then see the color changes on that creature in the editor/tool? It would real nice see your changes without having to save it then load the game. with all the new creatures that one could make with this. some nice new colors to go with them would be nice too. |
|
|
Jul 28 2009, 06:02 AM
Post
#4
|
|
Forum Member Posts: 49 Joined: 20-October 06 |
This would indeed be interesting, particularly the spellbook and script-generating stuff. I do a lot of this manually right now, and even with the newer WeiDU commands, it can be a pain.
-------------------- "Humor is an affirmation of dignity, a declaration of man's superiority to all that befalls him." -Romain Gary, Promise at Dawn
|
|
|
Jul 31 2009, 05:16 PM
Post
#5
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
One week later, I've already spent a good 30 hours on this project.
However, I'm learning CakePHP et JQuery in the process, it slows me down. I'm trying to do a nice looking interface without spending too much time. Soon, I will post some screenshots and more details about advancements. First, I will make a version without spells, inventory, and special effects. Because those require more tables, more code, and so much more time. |
|
|
Jul 31 2009, 05:32 PM
Post
#6
|
|
Premium Member Tactical reputation: 2 Posts: 6118 Joined: 23-February 08 |
If I may ask, how are you planning to distribute the tool later?
I mean, one thing is to use it for yourself on a local server, which is not a problem for you as a web-developer, but what about those modders who do not have a web-server and / or an experience of web-development? Or, are you planning on publishing the tool later on the web for everyone to use? PS: I haven't seen any web-based BG2 modding tools yet (public ones, at least), so I think this idea is quite fresh and interesting. |
|
|
Aug 1 2009, 06:36 AM
Post
#7
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Of course I will release it!
I chose web application because that's what I do the most in my job. And they are also free of charges. As for local installation, you will have to install something like xampp. Simple, quick, and efficient. I admit that it is more complicated than a simple executable. But at least, anyone can look at sources and improve things they want. And yes, I will still use WEIDU to patch CRE after using web editor. But I will discharge anything I can from WEIDU. |
|
|
Aug 19 2009, 05:56 PM
Post
#8
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
I am already late in schedule. Basically, I planned to release a simple web application.
Now, I have building a complex web application with lots of ajax and intensive use of JQuery to produce a nice-looking user-interface. Well, it's not only look but features, convenience, and intuitive. So I will have a first version of this editor in october with most of features. At this point, I will have to choose between using this editor to import and continue work on EC or programming advanced features on editor. Or... both of them at the same time! Not to mention one very important thing : first release of editor will only maintains a database. There will be no import module in WEIDU! Because I will need to have everything done before starting this module. I have devoting a lot of time into this (about 3 hours per day) and I am very happy with it. I will be very please to work again on EC in this new editor! Soon, I will post some screenshots. |
|
|
Sep 5 2009, 06:00 PM
Post
#9
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Some news:
Except effects, spells, scripts, proficiencies, and inventory (which is quite a lot), all others creatures characteristics are done and set in a nice looking form with tabs (something like Shadow Keeper) It is now possible to add, edit and delete creatures. Most fields are select list (classes, kits, generals, sex, ...) and those data come from database. A creature are bound to a monster and a group. And a monster belong to a group. So, you can classify creatures into monsters and groups. If it is not a monster, just leave monster blank. When you are editing a creature, you have 3 combo select list which allow you to select creatures, monsters, and groups. These selections will be updated with current creature as well. This is very usefull for mass editing. Currently, this feature update everything but filename and creature name. I am currently working on a way to import data from game directory using WEIDU. Purpose is to import spells list, items list, creatures list, and most 2da and ids to build a complete database. Those data will be used when editing a creature. For example, you can click on a button to retrieve saving throws, thac0, hit points, number of proficiencies you can set, memorized spells, known spells... All theses numbers are set when clicking on one button. After this, you can still modifiy everything of course. So current planning: - loading data from game directory (which require to code a parameter module for game directory) : 1 week (considering about 3 hours per day) - auto-setting all theses parameters on a click : 1 week. But it won't include everything like spells because I haven't code this part yet. Well, as you can see, I am still very far from release. I can't give any release date yet. But be sure that this editor will help me to produce a very polished mod, far more reliable, and better in many ways. 2 screenshots in attachments.
Attached File(s)
|
|
|
Sep 16 2009, 09:28 PM
Post
#10
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Some quick news:
I am late on schedule. In fact, it took me some time to add autocomplete feature to my project. I can now import nearly everything I want from game directory. But some imports are really long (more than one hour for a complete list of all cre with their name extracted from dialog). Mainly because I used WEIDU to read dialog.tlk. But this is not so important as I can include my database with release and change import so it doesn't touch existing entries. I will make a final touch to autocomplete tomorrow. (example can be seen there: http://jquery.bassistance.de/autocomplete/demo/) This is better than a select list when there are many items because you can still use it as a select, but also type some characters to quickly find something. More news coming in end week |
|
|
Sep 21 2009, 06:42 PM
Post
#11
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Form attached to this post is now fully filled with autocomplete feature. All selectlist are gone for more advanced components!
It took me some time, a lot more than I planned but the result is good. It is now really quick and user-friendly to fill fields. Now, it's time to go on! About one week to finish classic tabs (mostly to autofill some data like hp, saving throws, ...) And then I will work on inventory, effects, and spells. I will begin with a very simple version of these. Move on exporting data, and WEIDU installs. This way, I will release an alpha version, just to show how it is. Then, I might make a stop on this to work on EC with current editor and mix both project when I need to add some features. |
|
|
Sep 26 2009, 12:57 PM
Post
#12
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
I forgot to add data validation, a very important part of any application.
I have just finished to implement a good system : you can't switch tabs if there are some errors in current tab. And a classic form validation are called when submitting changes. Tough part was to do an ajax form validation, server-side, with 2 states : validates et updates on submit, or just validate on tab switching. Now it is working, I just have to add validation rules, easy part. |
|
|
Sep 27 2009, 06:14 AM
Post
#13
|
|
Forum Member Posts: 49 Joined: 20-October 06 |
Good to see you're making progress.
But some imports are really long (more than one hour for a complete list of all cre with their name extracted from dialog). Mainly because I used WEIDU to read dialog.tlk. This should really be quite quick... not longer than a minute or two, if that.CODE COPY_EXISTING_REGEXP GLOB ~^.+\.cre$~ ~override~ I have some code like this that will extract not just the CRE names, but just about the rest of the relevant data and put it in a spreadsheet (or database). But you may already have something similar.
PATCH_IF SOURCE_SIZE > 0x71 BEGIN READ_STRREF 0x8 name INNER_ACTION BEGIN APPEND_OUTER ~cre_list.csv~ ~%SOURCE_RES%,%name%~ END END BUT_ONLY -------------------- "Humor is an affirmation of dignity, a declaration of man's superiority to all that befalls him." -Romain Gary, Promise at Dawn
|
|
|
Sep 28 2009, 06:36 PM
Post
#14
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
No I don't have such a thing. Originally, I have coded the exact opposite : patch a cre from a set of spreadsheets.
Concerning my imports, I don't exactly know how I will use these data. Basically, you just update some creatures: Pick a creature by filename, and fill forms. Filled fields will be patched, others will left untouched. It is not possible to use existing data from game and compare to local database to choose which ones need to be patch (because it depends on installed mods). So retrieving existing data can be a feature at best. I will add this to my todo list because I see some interesting use. Back to your code, I will use something like that, but I admit I am not familiar with WEIDU. I could easily use this in tp2 file, as I did in my installation code. But here I don't want to install anything, just run this and get results. Is it possible to put your code into a file, input.tp2 for example. And use a command like WEIDU < input.tp2 Thanks for your help! Good to see you're making progress.
But some imports are really long (more than one hour for a complete list of all cre with their name extracted from dialog). Mainly because I used WEIDU to read dialog.tlk. This should really be quite quick... not longer than a minute or two, if that.CODE COPY_EXISTING_REGEXP GLOB ~^.+\.cre$~ ~override~ I have some code like this that will extract not just the CRE names, but just about the rest of the relevant data and put it in a spreadsheet (or database). But you may already have something similar.PATCH_IF SOURCE_SIZE > 0x71 BEGIN READ_STRREF 0x8 name INNER_ACTION BEGIN APPEND_OUTER ~cre_list.csv~ ~%SOURCE_RES%,%name%~ END END BUT_ONLY This post has been edited by aigleborgne: Sep 28 2009, 06:38 PM |
|
|
Sep 30 2009, 11:16 AM
Post
#15
|
|
Forum Member Posts: 49 Joined: 20-October 06 |
I could easily use this in tp2 file, as I did in my installation code. This doesn't install anything, because it uses a combination of READs (not WRITEs) with a BUT_ONLY that specifies only objects will be copied if changed. On top of that is a NO_LOG_RECORD which means it not only installs nothing, but leaves no record in your WeiDU.log, therefore needn't be uninstalled. The only thing you end up with is a crelist.csv file in the /crelist folder that can be opened as a spreadsheet or imported into a database. It is very easy to customise this if you want to add more fields or change the layout, and could presumably be used to retrieve live data from the game on the fly.But here I don't want to install anything, just run this and get results. Is it possible to put your code into a file, input.tp2 for example. And use a command like WEIDU < input.tp2 Just extract this to your game folder and run setup-crelist.exe. crelist.rar ( 543.2k ) Number of downloads: 2 -------------------- "Humor is an affirmation of dignity, a declaration of man's superiority to all that befalls him." -Romain Gary, Promise at Dawn
|
|
|
Sep 30 2009, 06:59 PM
Post
#16
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Thank you for explanations!
I will take a few days to try a migration from PHP to C# Winforms. I wasn't very satisfied with performances and general problems with web developpment. I surely got rid of all problems, but... it took me some time. Constant need to write javascript code along with PHP, adding ajax to most elements... Well, I tihnk it's time to change on a better platform! I chose .NET C# Winform as I am familiar with it. First, I will see if I can quickly migrate everything I have done. Considering that many things can be done effortless on winforms, I am positive. I am using Visual Studio 2008 Express with MySQL database. It should slow me down for about 2 weeks but let's see advantages: - faster execution - clear and lightweight code - more controls which means better user interface - easier installation and execution |
|
|
Oct 9 2009, 09:18 PM
Post
#17
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
I'm now developping on C# VS 2008. I've worked a lot on a user control : a combobox with mutli-column and autocomplete feature.
For those that know .NET, basic autocomplete suck. This component is very important as it is a corner stone in my application. Most data are representated by combobox. So, I'm glad to say that it will be a lot better now. It is very fast, I was impressed. During those next weeks, I will re-done all I did in PHP. |
|
|
Oct 15 2009, 06:40 AM
Post
#18
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Creature form is now more advanced than my previous one. I'll join sceenshots to show those tabs.
On first screen, you can see my multicolumn combobox in action. You may notice a strange "Sys" on Movement box. It's a bug with mysql connector that doesn't properly handle some types. I'll try different versions of connectors, but it is not a priorty as my code is good. In a few days, I'll start to work on spells / effects / inventory. Please note that I haven't redone yet : monster and group UI, configuration, and importation. It will be easy to do but I'm focusing on creatures right now. I expect to release a first version on december. This post has been edited by aigleborgne: Oct 15 2009, 06:43 AM
Attached File(s)
|
|
|
Oct 25 2009, 10:51 AM
Post
#19
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Current state with estimated time to finish task
- Import game data: 0% (1 week) - Export creature to files: 0% (1 week) - mod TP2 install : 0% (3 week) - Global navigation and configuration : 10% (2 days) - Sub-category manipulation : 0% (3 days) - Creature (create and update) on simple fields : 100% - Linked entities for updating many creatures in a single update : 100% - Creature's script : 100% - Creature's inventory : 0% (1 week) - Creature's spellbook : 0% (2 week) - Creature's effects : 0% (1 week) - Creature's proficiency : 0% (1 week) Concerning linked entities for mass update, I want to improve it with an advanced feature that allow to choose which fields to update. I would take about 1 more week and is not essential for fist release. As you can see, there is a lot to do. I will probably be late on schedule. It's just than sometimes, I'm exhausted after work and can't work at all in the evening.... So, don't expect a release for Enhanced creatures before summer 2010. If some are interesting in working on this edtor, you can mail me. It is written in C# Visual studio express 2008 with MySQL database. This post has been edited by aigleborgne: Nov 7 2009, 04:37 PM |
|
|
Nov 21 2009, 08:36 AM
Post
#20
|
|
Mod Developer Posts: 210 Joined: 3-December 05 |
Current progress:
- Import game data : 60% I haven't done a lot recently because my son is born the 16th november. I was busy but now, I have a bit more time. To conclude import process, I need to import lists of cre, spells, and items. Time and patience is all I need. |
|
|
Lo-Fi Version | Time is now: 19th November 2024 - 07:54 AM |