(( Here's something >>> http://dffd.wimbli.com/file.php?id=6008 ))
Dwarf Fortress modding made easy(er). We are still in the very early stages of development so don't expect anything soon.
But for those who want to check out what we are doing you can follow our progress at sourceforge. (I don't think you need an account for this.)
You should be able to see some pictures there, nothing you can't see here but it's better resolution.
More importantly is that you'll be able to look at the code itself and see how things are progressing.
And for those who wish to help us develop this tool, all you need is a sourceforge account, sent me your name and I'll add you as a member to the project.
You can sent me a personal message, drop your name in a reply here or maybe even over at the forum over at sourceforge. Your choice.
-========================================================================================================================-
How I see this going down.
- Design a Graphical User Interface in wxglade.
- Write code for program in python.
- Test program with public release and fine-tune it based on criticism.
- Add more options to the program as more demands/idea's come in.
- Release program as open source once it's bin completed.
- Do my best to keep up with new versions of Dwarf Fortress.
-========================================================================================================================-
-========================================================================================================================-
Current jobs I could use help with:
- Figuring out the proper placement of all creature tokens: http://www.bay12forums.com/smf/index.php?topic=102881.msg3056390#msg3056390
- Making Clip the Dwarf a reality. http://www.bay12forums.com/smf/index.php?topic=102881.msg3056548#msg3056548
- I need info on a great number of creature tokens. http://www.bay12forums.com/smf/index.php?topic=102881.msg3059699#msg3059699
-========================================================================================================================-
-========================================================================================================================-
I'll be using python code to build this program along with the help of a GUI designer called wxglade.
This means both Windows and Linux users can run it!
Python found here: http://python.org/ (http://python.org/)
wxglade found here: http://wxglade.sourceforge.net/ (http://wxglade.sourceforge.net/)
My DFFD page found here: http://dffd.wimbli.com/who.php?id=2810 (http://dffd.wimbli.com/who.php?id=2810) (I hope this works.) *STUFF HAS BIN ADDED* (only crappy wxglade stuff x 3)
NightS DFFD page found here: http://dffd.wimbli.com/who.php?id=1536
Sourceforge - Dwarf Fortress Mod Creation Kit - Found here: https://sourceforge.net/projects/dfmcreationkit/
Bazaar - sourceforge info found here: https://sourceforge.net/apps/trac/sourceforge/wiki/Bazaar
Meld wiki found here: http://en.wikipedia.org/wiki/Meld_%28software%29 (sadly linux only)
#NightS RAW Applications# found here: http://www.bay12forums.com/smf/index.php?topic=104069.new#new
-========================================================================================================================-
-========================================================================================================================-
Latest progress: (everything in these pictures is subject to change, a lot of it still looks crappy and requires sorting and such)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/beff298d.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/db4b7acf.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/7e11fee8.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/78954941.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/0f4d616a.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/37ad988b.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/5c062e24.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/b0741579.png)
-========================================================================================================================-
*HAS BIN UPDATED WITH A NEW LIST*
A little update on my progress.
I've bin sorting the various creature tokens into groups. The idea here is to get some coherent groupings going to make it easier to design an interface around all of this. And this is where your opinions come in! I could really use some suggestions what tokens people would like to see grouped together. Below is still just my first attempt, this really needs to be further refined.
Here's a link for reverence as to what all this stuff actually does in case you don't know.
http://dwarffortresswiki.org/index.php/DF2012:Creature_token (http://dwarffortresswiki.org/index.php/DF2012:Creature_token)
Please do not mind the unused group as the bottom, I haven't sorted those yet for various reasons.
NAME OF THE CREATURE
[name] singular:plural:adjective
[general_baby_name] singular:plural
[general_child_name] singular:plural
[description] text
HOW THE CREATURE LOOKS IN-GAME
[creature_tile] 'character' or tile number
[creature_soldier_tile] 'character' or tile number
[color] foreground:background:brightness
[glowtile] ascii character
[glowcolor] foreground:background:brightness
[alttile] 'character' or tile number
[soldier_alttile] 'character' or tile number
SOUNDS THE CREATURE MAKES IN-GAME
[sound] 7 points of too fucking much to care right now
CREATURE REPUTATION
[prefstring] string
[sphere] sphere name
[power]
WORLD-GENERATION RELATED (and stuff related to that)
[biome] biome token
[benign]
[evil]
[good]
[savage]
[ubiquitous]
[underground_depth] mindepth:maxdepth
[amphibious]
[aquatic]
[cave_adapt]
[swims_innate]
[swims_learned]
[swim_speed] speed
[arena_restricted]
[no_autumn]
[no_spring]
[no_summer]
[no_winter]
DAY/NIGHT ACTIVITY CYCLE OF THE CREATURE
[all_active]
[crepuscular]
[diurnal]
[nocturnal]
[vespertine]
[matutinal]
AGE/GROWTH OF THE CREATURE
[baby] integer
[child] integer
[body_size] years:days:size
[gravitate_body_size] target value
[maxage]
POPULATION MECHANICS
[cluster_number] min:max
[frequency] number
[population_number] min:max
[triggerable_group] min:max
[artificial_hiveable]
[hive_product] number:time:item tokens
[lays_eggs]
[clutch_size] min:max
[egg_material] material token:state
[egg_size] size
[lays_unusual_eggs] item token:material token
[colony_external]
[multiple_litter_rare]
[littersize] min:max
[large_roaming]
[loose_clusters]
[meanderer]
[triggerable_group] min:max
STUFF RELATED TO THE DEATH OF THE CREATURE
[beach_frequency]
[remains] singular:plural
[remains_color]
[small_remains]
[itemcorpse] item token:material token
[itemcorpse_quality]
[speech] speech file
[speech_female] speech file
[speech_male] speech file
[nomeat]
[no_butcherable]
[die_when_vermin_bite]
[remains_on_vermin_bite_death]
ABILITIES
[alcohol_dependent]
[buildingdestroyer] 1 or 2
[can_do_interaction] interaction token
[cdi] varies
[can_learn]
[can_speak]
[cannot_undead]
[canopendoors]
[crazed]
[equips]
[extravision]
[female]
[male]
[no_gender]
[fireimmune]
[fireimmune_super]
[fixed_temp] temperature
[fleequick]
[gets_infections_from_rot]
[gets_wound_infections]
[grasstrample] value
[has_nerves]
[homeotherm]
[immolate]
[light_gen]
[likes_fighting]
[lisp]
[lockpicker]
[magma_vision]
[mannerism_*] occasionally body part
[mundane]
[prone_to_rage]
[specific_food] plant or creature:plant/creature ID
[speed] value
[webber] material token
[thickweb]
[webimmune]
[trances]
[trapavoid]
[utterances]
[viewrange] value
[not_living]
PET/LIFESTOCK ABILITIES
[adopts_owner]
[common_domestic]
[equipment_wagon]
[gobble_vermin_class] class
[gobble_vermin_creature] creature:caste
[grazer]
[hunts_vermin]
[milkable]
[mount]
[mount_exotic]
[pack_animal]
[pet]
[pet_exotic]
[petvalue]
[petvalue_divisor]
[returns_vermin_kills_to_owner]
[shearable_tissue_layer] tissue modifier:required value
[trade_capacity]
[trainable_hunting]
[trainable_war]
[verminhunter] (???useless???)
[wagon_puller]
WILDLIFE ABILITIES
[ambushpredator]
[at_peace_with_wildlife]
[bonecarn]
[carnivore]
[cookable_live]
[curiousbeast_eater]
[curiousbeast_guzzler]
[curiousbeast_item]
[dive_hunts_vermin]
[extra_butcher_object] type or category or token
[ebo_item] item token:material token
[ebo_shape] gem shape
[extract] material token
[fishitem]
[flier]
[hasshell] (!!!no longer used!!!)
[immobile]
[immobile_land]
[large_predator]
[large_roaming]
[mischievous]
[natural_animal]
[patternflier]
[pearl]
[root_around]
VERMIN ABILITIES
[vermin_bite] chance of occurance:verb:material token
[vermin_eater]
[vermin_fish]
[vermin_grounder]
[vermin_hatable]
[vermin_micro]
[vermin_nofish]
[vermin_noroam]
[vermin_notrap]
[vermin_rotter]
[vermin_soil]
[vermin_soil_colony]
[penetratepower]
[gnawer] verb
MEGABEASTS/SEMIMEGABEASTS ABILITIES
[megabeast]
[semimegabeast]
[attack_trigger] pop:exported wealth:created wealth
[difficulty] integer
[fanciful]
[does_not_exist]
NIGHTCREATURE ABILITIES
[night_creature_bogeyman]
[night_creature_hunter]
[spouse_converter]
[spouse_conversion_target]
[converted_spouse]
LAIR RELATED (useful for both megabeasts and night creatures)
[lair] type:probability
[lair_characteristic] characteristic:probability
[lair_hunter]
[lair_hunter_speech] speech file
[habit] type:probability
[habit_num] number or test_all
UNDEAD ABILITIES
[bloodsucker]
[no_connections_for_movement]
[no_dizziness]
[no_drink]
[no_eat]
[noemotion]
[no_fevers]
[no_sleep]
[no_thought_center_for_movement]
[nobones]
[nobreathe]
[noexert]
[nofear]
[nonausea]
[nopain]
[noskin]
[noskull]
[nosmellyrot]
[nostuckins]
[nostun]
[nothought]
[opposed_to_life]
[paralyzeimmune]
PERSONALITY/MENTAL & PHYSICAL ATTRIBUTES/SKILLS/PROFFESIONS
[personality] attribute:lowest:median:highest
[ment_att_cap_perc] attribute token:cap %
[ment_attt_range] attribute:lowest:lower:low:median:high:higher:highest
[ment_att_rates] attribute token:cost to improve:unused counter rate:rust counter rate:demotion counter rate
[phys_att_cap_perc] attribute token:cap %
[phys_att_range] attribute:lowest:lower:low:median:high:higher:highest
[phys_att_rates] attribute token:cost to improve:unused counter rate:rust counter rate:demotion counter rate
[no_phys_att_gain]
[no_phys_att_rust]
[natural_skill] skill:value
[slow_learner]
[skill_learn_rate] skill token:percentage
[skill_learn_rates] percentage
[skill_rate] skill token:percentage:value:value:value
[skill_rates] % of improvement points you get:unused counter rate:rust counter rate:demotion counter rate
[skill_rust_rate] skill token:value:value:value
[skill_rust_rates] value:value:value
[profession_name] unit type token:singular:plural
UNUSED!!!!!!!!!!!!
app_mod_desc_range
app_mod_genetic_model
app_mod_importance
app_mod_noun
app_mod_rate
apply_creature_variation
apply_current_creature_variation
attack
blood
body
body_appearance_modifier
body_detail_plan
bodygloss
bp_appearance_modifier
caste
pop_ratio
select_additional_caste
select_caste
*see more caste stuff*
use_caste
change_body_size_perc
copy_tags_from
creature_class
cv_add_tag
cv_remove_tag
demon
unique_demon (!!!impossible!!!)
feature_attack_group
feature_beast (!!!unusable!!!)
general_material_force_multiplier
generated (!!!unusable!!!)
go_to_end
go_to_start
go_to_tag
ligaments
magical
material
select_material
material_force_multiplier
mischievious (!!!useless!!!)
modvalue (???useless???)
natural (!!!useless!!!)
plus_bp_group
plus_material
pus
relsize
remains_undetermined
remove_material
remove_tissue
retract_into_bp
secretion
set_bp_group
set_tl_group
tendons
tissue
tl_color_modifier
tlcm_genetic_model
tlcm_importance
tlcm_noun
tlcm_timing
trainable (!!!useless!!!)
tsu_noun
use_material
use_material_template
use_tissue
use_tissue_template
vegetation (!!!unknown!!!)
Here's a very crappy look at me diddling around with wxglade.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/24dbb997.png)
You might have noticed our first problem, there's just to much stuff in dwarf fortress to put on one screen. And this is just the start, and I didn't even use all of the creature tokens yet, in fact, this is less then half of what I'm going to need to put on screen.
This is going to be fun.
PS:this image is supposed to be 1920 by 1200
Little update.
I think it's starting to look better. Tabs help. All the previous screens will be added under the tabs on the left.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/c843f99b.png)
Another image
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/209d2402.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/1f7b9d5e.png)
You can see buttons now (to activate abilities on the creature.) Some, when pressed are held down. (on/off switch basically)
There are also drop down thingies that let me limit your choices as you can see with the min/max depth of underground placement.
The ADD button next to the Biome adds another biome selector (as many as you need). Not that this works yet of course.
Now onward!! ;D
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/def0f122.png)
Ok, I'll try to explain a little bit of how I see this thing working in my mind at the moment. With the help of the picture ^above^.
Already!
- On your leftmost side is a list of tabs. The top tab is a placeholder for general options that belong to the program. (still empty) I don't know if that's the best idea because I could also just add genuine menus like the [file : edit : view : history : bookmarks : tools : help] you see in firefox and generally every windows/linux program. (this would be preferable right?) The rest of the list is made up of all the possible types of "raw/objects" files that you can mod in dwarf fortress. (although I just noticed that I missed 3 located in "raw/object/text") Selecting any of these options takes you to it's tab (ALL the stuff that's right-side of it)
- Right now the tab "creature" is selected. Right-side of it (^top^) you can see two buttons saying "add creature" and "remove", underneath them is a creature list (empty right now, sorry.) This is where you select which creature you want to work on.
- Below the first list is another with it's own 2 buttons. By selecting a creature on the top list and using the new two buttons you can add and remove creatures that you want to add to your mod which will be displayed in the lower list. And I just see that I forgot a button, one that will save your collection of creatures to a place of your choice (choice box needs replacing with a proper directory selecting box, couldn't find one yet, don't think wxglade has one BUT my friend showed something made in python that will do the trick.) I realize that this may not be optimal since needing to select many, many creatures to add to a mod with such a small window/list is rather wearisome to work with, but right now thats all I got, alto I could probably just make it a pop-up window.
- With that out of the way, lets move another step to the right. At the top you see an box and two buttons, with these you can add castes tabs to the tab list directly below it. The cast tab here is just for show right now (and building necessity), normally you start without one since not every creature needs castes.
- You select the tab that says "creature" and you'll see... More tabs on it's right-side, lots of tabs! And this is finally where you start to freaking mod. Everything you can possibly add to a creature will be listed under those tabs (I hope, at least that's the idea of it.) The "creature" tab and "castes" tabs are there so you can edit your creature on both levels by choosing where you put certain abilities. Abilities put into the creature tab will work for all casts of that creature whereas those put under a certain caste will only apply to that caste of that creature. (you don't have to name those tabs "caste" by the way, choose something useful like "male" or "female", you get the idea.)
- I've only explained the modding of creatures so far but all the other stuff you can mod works exactly the same way (as long as we are talking about .txt files that is, I can't help you with the rest such as graphic mods or sound mods, at least not yet but that's a whole different card game.)
- I hope this was all understandable.
GAH! Forgot something again. Tooltips! I forgot to say that in the eventual final version tooltips will be added to every function and button. The tooltips will have all the info I can find on the wiki.
It's like I read your mind. ::) Just finished that. (stuff still looks rather messy but that will eventually be cleaned up, right not it's more important that we can fit in every last damn button!!
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/f9d01138.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/78954941.png)
Well looky here, only about less then one third of the skills can fit on a page. I wish I know how a simple scroll bar worked in wxglade, cause without that I can't add any more.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/37ad988b.png)
Things look better on the attribute side though, look how clean that looks.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/0f4d616a.png)
Yes, yes I can see the big black space in the corner there. That's on purpose, it's where a changing picture comes that will have helpful information on the tributes.
I touched up the creature abilities tab a bit. I think I'll actually be able to fit all of the "Megabeast/Night Creature/Undead + Lair" in there as well but not today.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/7e11fee8.png)
EDIT: I've fused the "world" with the "population" tab.
EDIT: I've fused the "name/look/age" and the "sound/death" tabs.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/beff298d.png)
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/db4b7acf.png)
The latest addition, looks awful, will be reshuffled some other time but I think I'll need the info about the creature tokens in my previous post to help me with that first.
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/5c062e24.png)
Can't continue with creature stuff right now so I decided to do this:
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/b0741579.png)
Someday you'll be able to easily control all your dwarf fortress setting with the program as well.
EDIT: I'll make sure the program will hold all the standard color schemes by default (those that I can grab off of the wiki.)
Got an idea just now. Hope people like it.
I'm decided to at a small tutorial, a Tips&Tricks page, a Builds&Traps page and to advertise other programs to the program.
I thought if I can make modding easier why not make everything easier. So a short and simple "how to play" to teach the basics of dwarf fortress, and a page when stuff like the "infinite stone dump" tricks are collected, and a page that has those nifty dwarfish trap designs, and finally a page where I can add links and explanations to other fine programs such as *Masterwork* and Dwarf Therapist to help starting dwarf fortress players.
I know that all of this can be found in both the forum and the wiki pages but I think it will be a great boon to people who know absolutely nothing and just start out.
Don't worry, all this stuff is secondary to the main purpose (modding) and will be added after everything else works. I'm just leaving some space open to accommodate these features.
Which looks like this:
(http://img.photobucket.com/albums/v731/AlexanderV/Dwarf%20Fortress/2d46169f.png)
(also, the game settings tap has bin moved up)
Something useful, soon anyone who wants to help can help. (as soon as I figure out all the option over at sourceforge)
But at least the project itself has a page now and soon I'll be uploading all the stuff I have there.
Here are some links that might be useful.
Sourceforge - Dwarf Fortress Mod Creation Kit
https://sourceforge.net/projects/dfmcreationkit/
Bazaar - sourceforge
https://sourceforge.net/apps/trac/sourceforge/wiki/Bazaar
Meld (allows for the melding of code, might come in useful for melding new generated code by wxglade and the code we've already made) (sadly only works for linux, check your repository)
http://en.wikipedia.org/wiki/Meld_%28software%29