|
Online Rubble |
Under construction, please wait! This is a work in progress and (as may be assumed reasonably enough) may be highly unstable just yet.
|
| | |
|
|
♫♪♀HDFPS♂♪♫ Index 01.) Updated Catalog of supported Mods 02.) Frequently Asked Questions FAQ 03.) Code of Conduct 04.) Graphs and tutorials about used tools 05.) A vertical fort,plans, levels screen shots, work flow automation... 06.) Rules or conventions to make composable Mods 07.) What is a semantic Delta? How to use Git Extensions with it? 08.) Using a batch file renaming tool to identify the origin of a file 09.) How can you rename IDs in all files of a hierarchy of directories? 10.) Debugging DFHACK lua, actual state? 11.) Rubble based macro system, a short tutorial 12.) The three testbeds Mods of Vanilla Library: Vanilla, Haiku Vanilla and Haiku Extreme 13.) My FPS aware Mods:, mostly Milo´s adapted for easy use with QuickFort Humble and Singularity! 14.) Why Lua? 15.) So what is all this fuss about the semantic Deltas thing?
♫♪♀HDFPS♂♪♫ Contract As a player I have great respect for the time of any other player, that means that I will do all that is at my reach to release Mods or packages that are as bug free as possible, at least from my perceived standpoint, that means that each released mod will pass a semiautomatic process of verification where the different Dwarf Fortress logs will be investigated for problems, the entity checker utility or any similar application will be also used. As a modder I expect that every user of this project, me included, will adapt his behavior in this forum to the code of conduct of our project. For someone that likes to support the development of content for Dwarf Fortress universe, the origine, the Tarn Brothers is maybe the most sensible option. for those that additionally want to support the development of DF content out of ToadyOne limits, time or priorities: 1.) Japa Mala is developing a realtime 3D viewer for DF (Armok Vision). 2.) Meph is leading a collaborative initiative to better integrate mods and mechanisms into a fully coherent system (Masterwork Mod). 3.) PeridexisErrant is maintaining and distributing THE more comprehensive package of DF related tools (DF Starter Pack).
|
|
♫♪♀HDFPS♂♪♫ Purpose 01.) Opening the process of mods maintenance to all those that love this game. 02.) Investigate ways to facilitate the migrations of Mods between DF versions. 03.) Enable a system of dependencies between Mods: Haiku<Vanilla<Modest<Rest. 04.) Decompose Dark Ages mod into its components mods. 05.) Find creative solutions for the problem of collisions in the mix of mods. 06.) Extract the experience of Df from Scratch to build a minimal DF base>Haiku. 07.) Use Git for version control and as online documentation and tutorials server. 08.) Build a community of maintainers that cares of the DF heritage. 09.) As DFHACK maintain their code base, ♫♪♀HDFPS♂♪♫ will do with the raws of Mods. 10.) Apply useful semantic transformations over the declarative DF raws.
♫♪♀HDFPS♂♪♫ Disclaimer All the graphical art in this page is the intellectual property of their original authors. There are two groups in the art used: Haiku and Dwarf Fortress related. Those of DF are related to gruesome events that happens naturally in the simulation. Or the visceral reaction that those events frequently produce in the players. The artist simply use their freedom of speech or creation to reinterpret them. They are there to offer an immersive experience in the DF universe. As each image is randomly linked with a powerful tale in The Hall of Legends If you think that an image should be retired for any reasons, please ask it! The mods being adapted to ♫♪♀HDFPS♂♪♫ are owned by their authors. Any loss of functionality in the conversion process is only my fault not theirs. As they know their works better than me, any insight or help will be appreciated. Once completed, the final conversion, will be offered to the authors or maintainers. If somewhat ♫♪♀HDFPS♂♪♫ eat your dirty laundry as in the Don Henley Lyrics you alone will be the only responsable if you use it. 
|
| ♫♪♀HDFPS♂♪♫ TODO list 01.) Finish implementation of nested objects 02.) Implement macro generics for all the categories of DF objects supported in Rubble {COPY_TAGS_FROM:ID}, {APPLY_VARIATION:ID}, {GO_TO_END} {GO_TO_START}, {SELECT;NESTED:ID} 03.) Re-implement as Rubble categories WORLD_GEN and PROFILE, make shared object for them 04.) Make Vanilla Library and the Haikus automatically generated from the ToadyOne Version instead of manually 05.) Correct the generic materials to use a FOREACH to be migration resistants 06.) More artificial hiveable 07.) Make the rest of generic materials, wood, thread ... 08.) Cornucopia of trees 09.) Fork Rubble into Nibble for a more meaningfull and reusable, basic semantic metadata ... nn.) Archived TODO list

|
|
♫♪♀HDFPS♂♪♫ Features:
1.) Is in spirit a publishing system for (DF) Dwarf Fortress related content using DFFD as file server
2.) Does something similar to what
Battle of Wesnoth does with his campaigns, offering to the player a catalogue of mods to download, compose and play.
3.) Use a common system for importing parts of
composable mods, in a chain of dependencies, like libraries of raws.
4.) Is usable in all Dwarf Fortress supported platforms (Windows, Linux and OSX) as it relies only in
Milo´s Rubble that has support for the three, Lua that also do, and the interface is generic HTML5, same support. No one is forgotten out in the cold.
5.) Have auto update capacity of the mods that is attained exploiting the
JSON metadata of the DFFD file-server for each download, to know when a update is available and doing the auto update if the mod is defined as having this characteristic.
6.) Some functional approach to the problem of version control of DFraws is used, this helps in how to decide the correct order of application of required
change-sets.
7.) To further reduce the complexity of the problem some rules are applied; first of all Vanilla raws are declared immutable, you only can modify them indirectly (in fact you modify a copy or prototype, but the original object is always accessible

) by means of
semantic deltas (
DIFF) that have some insight of the DF grammar and works in a context of objects and tags instead of file-names and line numbers as normal
DIFF do. One short auto example:
-- less fuel required to do a bar of iron
{@CONTEXT;REACTION:PIG_IRON_MAKING}
{@DELTA;REAGENT:A;300:BAR:NO_SUBTYPE:METAL:IRON}
{@DELTA;PRODUCT:100;2:BAR:NO_SUBTYPE:METAL:PIG_IRON}
-- A more detailed explanation.
8.) The full Lovechild´s
All races playable mod weighs
12.3 kb unpacked in our system and
417.6 kb without. -> less bandwidth needs and easier mod maintenance.
9.) For being able of supporting all that, some support of the DF grammar will be necessary, until now we have support for DF namespaces (called categories in Rubble: creature, material, plants) and DF prototypes (called objects in Rubble: DWARF, IRON, STONE_TEMPLATE, ...) and the generic support for nested objects (castes, noble positions, ...) is being developed.
Should such a mod publishing system for DF be made sticky in the forum of Mod Releases to give it a good visibility? Please use the top pool to give your opinion. or post any concerns that you could have!