DFMcreationkit develepment plan

---=== The MENU of our program. ===---

=- Menu
The Menu tab. This tab contains "Dwarf Fortress Options", "Load Mod", and "Load All"
-Dwarf Fortress Options is just a placeholder right now so ignore it.
Load Mod and Load All are very important.
-Load All is easy, it imports everything it can find in it's file structure, including all mods and all imports.
-Load Mod is simular but only loads all files belonging to a single mod. This mod is selected under the next tab.

=- Select Mod
-The Select Mod tab. This tab contains a list of all the differant mods that are saved in our program's mod folder.
By selecting one of the mods from the menu the program will know what to load once you ask it to load the mod.
Perhaps it useful to make it possible to allow for multiple mods to be loaded. I'm not sure of this yet, this might still be too clumsy to implement.

=- View
The View tab. This tab contains options for switching certain visials on and off.
-The Infobar is the empty text bar at the bottom of the program. This was a very early idea about showing additional information to the modder and may have become redundant.
-Tooltips speaks for itself, turn them on or off. The tooltips have not bin made yet since this is a shitload of work and I wasn't sure yet if I could start to add them without it being a waste of time.
-Dropdown Boxes Global/Mod is a little tricky to explain. This has a relation with all the "ComboBox" found in the rest of the program. By checking this option you make the program switch between displaying options found only in the mod you are working on or displaying all possible options.
-Pony? Pony! is fluff I hope to one day implement, it will change Clip the Dorf into a my little pony.

=- Tools
-Search. Oops, don't recall why I made this. Ignore for now.
-Mod-wide Change. A very late stage power-user option that will allow for the editing of many files at the same time. For example: needing to add an spesific item allowance to all entity files of a single or multiple mods. This will be very, VERY complicated, ignore for now.

=- Help
- Clip the Dorf. Think clippy from windows word, only now for dwarf fortress! Only much less annoing. Will open an extra window with a picture of clip and a text box that has useful information about what you have selected with the mouse in our program. More details then we can show with Tooltips which only show basic info, clip will give as much info as we can get off the wiki and from the modder's community. This is basicaly not all that important right now so ignore.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

---=== The LEFTMOST TABS of our program. ===---

These are "Mod General", "Body Detail Plan", etc all the way to "Tissue Template"
=- Mod General.
-Mod General in Mod General. This contains options related to the program itself such as the directory directions where what needs to be saved or is located.
-DF: Game Settings. Contains editable options for the 3 raw files that dwarf fortress uses to read player options. These are the "init", "d_init", and the "colors" files. Editing these files is done in the same way we mod creatures and such exept these can be directly saved into your local dwarf fortress directory.
-How to Play DF. This will eventualy contain tuturials. Late stage fluff, ignor for now.
-TipsTricks. This will eventualy contain tuturials. Late stage fluff, ignor for now.
-BuildsTraps. This will eventualy contain tuturials. Late stage fluff, ignor for now.
-Other DF Utilities. This will eventualy contain links to other dwarf fortress programs and utilities made my other people. Late stage fluff, ignor for now.

=- Body Detail Plan
empty

=- Body
empty

=- Building
empty

=- Creature Variation
empty

=- Creature
Editing of creature files is done here.
In this tab, on the left you cab see the "Add creature" and "Remove" buttons, under them a listbox, under the box two more buttons and another box but this time a listctrl, and at the very bottom a Save to location and a text field.
-Add creature will add a new creature file to the list by creating a new creature file in the folder where our program saves such files. Naming the file is either done within the box or by means of a pop-up window casting for a name.
-Remove, removes a selected creature file while also creating a backup of it and placng it in the programs backup folder.
-first ListBox. Shows all available creature files you can select for editing.
-Add to mod. Copies a creature file from the ListBox and puts it into the ListCtrl.
-Remove, removes a selected creature from the ListCtrl.
-ListCtrl. This contains a list of creature files that need to be added to a mod.
-Save to location. The location of the mod where you want to save it. This is stupid, I need to replace this with a dropbox or something.
(I just realise that this little system is silly and requires some improvement!)

=- Descriptor: Color
empty

=- Descriptor: Pattern
empty

=- Descriptor: Shape
empty

=- Entity
empty

=- Inorganic
empty

=- Interaction
empty

=- Item
empty

=- Language
empty

=- Material Template
empty

=- Plant
empty

=- Reaction
empty

=- Tissue Template
empty

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

-= storing information =-

I hope to use nothing but python files and .txt files to store all information for the program.
This is to keep it simple for other users to work with files and the program.
So no databases! This mean that users don't have to know how to install and work a database in order to use our program.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

-= writing a reader program =-

requirements:
-ability to read .txt files
-must recognise differant file types by their [OBJECT:] tag
-ability to read/catagorize multiple object tags

-for the [OBJECT:CREATURE] files it must recognise the [CASTE:] tag and know what abilities belong it it
-the abilitie to read/catagorize multiple caste tags.
-there are more [CASTE:] type tags that need to be found and worked with and handeled in the same way
-other [OBJECT:] files may have additional variations of the caste tag, this must also be worked with and handeled in the same way

-the ability to read the init, d_init, and color files from dwarf fortress

-and finaly the ability to read/catagorize multiple files

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

-= writing a writer program =-
same as with the read program exept now you write the files

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

 

Last edit: Alexander Hagers 2012-03-17