This might sound like a stupid question, but how do i run the browser script on osx in other/webUI? thanks in advance!
Detailed Answer targetted at my own Great Mother
Hey! She has also the right to play DF, But does not like too much those internet things...
Relevant info from the Milo file other/Rubble Readme.md extracted from the version 8.0.0:
Rubble: Modding Made Easy!
Rubble is a general purpose mod installer and creation tool. Mod installation is done with an easy
to use HTML GUI or a basic CLI front end. Mod creation is facilitated by a powerful template and
scripting system that allows automation of many common modding tasks.
Users of Rubble can install many unrelated mods (called "addons") simply by selecting them in the
web UI and generating (which takes only a few seconds). Addons are designed to install quickly and
cleanly with a minimum of effort on the part of the user.
Rubble is specifically designed to make it easy to have several worlds with radically different
settings playable at the same time. You can even have things like per-world population cap settings
(via `addon:Util/Pop Cap`) or switching tilesets on worlds in progress (perfect for trying
that new tileset you found or changing the tileset of a world you got from a buddy). Tileset switching
even works on worlds who's raws were not generated by Rubble!
For modders Rubble automates many common tasks allowing you to create mods in a small fraction of
the time using standard methods would take, plus users of your mod can use it together with many
other addons, making your mod *much* more user friendly and easier to install.
Rubble has been in continuous development since mid 2013, and many changes and improvements have been
made since the first version (which was a simple Blast clone). All of my mods have been made to use
it, so I have extensive experience with Rubble modding and along the way fixed most of the bugs and
streamlined things as much as possible both for modders and users.
For modders Rubble cuts down repetition and encourages compatibility, for users it gives easy
flexibility and simple customization. In short Rubble is the most powerful and easiest to use
modding utility and mod manager ever made for Dwarf Fortress. Enjoy!
All documentation is in the "other" directory, this includes tutorials, template documentation,
script documentation, and basic documentation of Rubble's internals.
If you want to view the documentation as it was designed to be viewed start the web UI and visit the
[documentation](/doclist) page.
General users have no need to read *anything* except this readme! Everything most users need to know
(aside from things like how to install Rubble, which can be found in this document) can be found in
the web UI addon description pages.
Most of the documentation assumes you know what you are doing as far as general DF modding goes,
please do not read documentation that is above your level and then complain that "Rubble is too hard".
I do assume that modders will have at least some knowledge of programming (I apologize for this, as
I know that not everyone does). If you do not know anything about programming most of the scripting
stuff will be hard (if not impossible) to follow, but if you stick to using templates you will be
fine (scripting is only needed for advanced stuff anyway, most people will never need it).
For examples of what all is possible with Rubble see the included addons, they cover a broad range
of possibilities. Sadly comments explaining what is being done and why are often lacking, so if you
cannot figure out why something was done a certain way just ask.
Modders will want to read the following (in most-important-first order):
* The Tutorials - Read as many as you can, some are advanced and/or are for something not of general interest.
* [Rubble Base Templates][BT] - The template documentation for the `addon:Libs/Base` addon, this stuff
is VERY important!
* [Rubble Basics][RB] - Lots of stuff about addons and Rubble in general, some of this stuff is kinda
advanced, but there is a lot of good basic information here.
* The included addons - A little short on comments but full of great examples.
Some file paths in this readme use the syntax used by the AXIS Virtual File System. These paths take
the form `location/directory/some.file`, for example `addons/addonlist.ini` points to a file
named `addonlist.ini` in your addons directory. For details see the section about AXIS paths in
[Rubble Basics][RB1].
If you have anything in your Dwarf Fortress directory that you want to keep back it up! Rubble will
delete all your existing raw files, including creature graphics and the DFHack `onLoad.init` and
`init.lua` files (and many other things)!
Anything outside of your `data/init` and `raw` directories should be safe, but just in case...
1. Delete or otherwise remove any old Rubble version you may have.
2. Extract the new Rubble to `<DF Directory>/rubble`.
3. Install any custom addons you may have to `<DF Directory>/rubble/addons`.
4. See the appropriate "Running Rubble" section below.
Now you are good to go!
**Do not extract a new Rubble version over an old one!** This can cause all sorts of hard to find problems!
If you use OSX or Linux, 32 and 64 bit binaries for these OSes are included.
To use non-Windows binaries they must be placed in the same directory as the Windows ones (you can
delete the Windows binaries if you don't need them). OSX binaries are in "other/darwin", Linux
binaries may be found in "other/linux".
For more help see the "Rubble OS Specific Information" section in [Rubble Basics][RB2]
A basic Rubble installation is fine for most users, but If you want to make use of some of Rubble's
advanced features you may want to do some additional steps. All of the things listed here are **optional**.
If you will not be using the features these steps enable then do not bother with them.
* * *
If you will be installing a bunch of extra addons it may be a good idea to add an extra addons directory
so that it is easier to upgrade to a new Rubble version. To do this simply create a directory (name it
"My Addons" or some such) and then create a file named "rubble.ini" in the directory where you installed
Rubble. Add the following lines to "rubble.ini":
# If your custom addons directory is not in the rubble directory or is not named "My Addons"
# then you will need to change this. The path given here may be an AXIS path (only the "rubble",
# "df", and "out" locations work) or an OS path (which may be relative or absolute).
addonsdir=rubble/My Addons
# You should list your custom directory first so Rubble uses it for any downloaded addons.
addonsdir=rubble/addons
From now on Rubble will load addons from both the default addons directory and your custom directory.
* * *
If you commonly set certain configuration variables when you generate you may want to create a "userconfig.ini"
file. To do this the easy way simply generate a set of raws with the options you want, then copy "genconfig.ini"
from your raw directory to your Rubble directory and rename it to "userconfig.ini".
Once you have the file in place edit it to remove any options you don't care about, and from then on Rubble
will use your settings as the defaults (you can still change them from the web UI as normal).
* * *
If you have favorite sets of addons it is possible to save them for later. Simply create a directory
named "presets" in your Rubble directory. Whenever you generate a set of raws where you want to save
the addon activation state for later simply copy the "addonlist.ini" file from the raw directory to
your "presets" directory and name it something descriptive (keeping the ini extension). The only name
limitation is that you may not use "Default", as it is reserved for the default settings.
To use these "presets" simply select them from the drop-down list at the bottom of the "select addons"
page in the web UI (this control will not be shown unless you have at least one preset installed). This
will set the addon activation state to match the state listed in the preset file.
The web UI is simple, functional, and easy to use.
This operation mode is the recommended way of running Rubble, as it always has full support for the
latest ways of doing things.
To use the web UI all you need to do is start the server (just run the universal interface with no command
line options, `web` is the default mode), it should automatically open your web browser to the web UI main
page. Linux and OSX users will have to configure a browser startup script for this to work, see the "Rubble
Web UI Customization" section in [Rubble Basics][RB3].
The web UI does not support everything Rubble can do, for some rare advanced actions you will need to
use more advanced manual interface modes. Generally if you find something that the universal interface
CLI modes allow but the web UI does not you should stop and ask yourself, "do I really want to do this?"
The UI's look and feel can be customized, see the "Rubble Web UI Customization" section in
[Rubble Basics][RB3].
It is **highly** recommended that you use the Web UI. It is generally much faster then doing everything
by hand (plus you don't have to mess around with the command prompt, if you dislike that kind of thing)
For basic documentation on each option run `rubble help` or `rubble help <mode>`.
The Rubble universal interface uses a set of generic command line options who's exact meaning changes
based on the operation mode. These modes are not actually part of the interface program itself, but
are compiled in from external libraries. There may be more modes available than mentioned here, it
depends on the Rubble version and how the interface was compiled.
Generally the universal interface defaults to launching the web UI server, but by changing the mode it
is possible to access much more advanced functionality.
* * *
Common Tasks:
To activate or deactivate a Rubble addon manually you may set it's entry in `addons/addonlist.ini`
to `true` or `false`. If you just installed an addon it will not have an entry until Rubble has run
at least once (after the addon was installed).
If you want to run Rubble without generating anything (so as to update the addon list file) just run
`rubble refresh`.
To generate with the last used addons (aka the settings in `addons/addonlist.ini`) just run
`rubble generate` with no other arguments.
Here are a few example command lines to generate various configurations:
Vanilla (ignoring the addon list, but not `rubble.ini`):
rubble generate -addons="Base"
Vanilla with Vanilla creature graphics (plus anything you have in `rubble.ini`):
rubble generate -addons="Base;Graphics/Vanilla"
If you wish you can explicitly specify "generation" mode (`generate`), but this is not required as generation mode
is the default.
* * *
Some addons may allow additional configuration via "config variables", these are generally for
advanced users and may be specified with the `-config` command line option.
Example (vanilla with 10 dummy reactions):
rubble generate -addons="Base;Dev/Dummy" -config="DEV_DUMMY_REACTION_COUNT=10"
* * *
To switch tilesets on a world in progress use:
rubble tset -region="<region name>" -addons="<name of tileset addon>"
When specifying a region you may use "raw" to refer to the main raw directory.
* * *
Some addons may be applied to a world in progress. These addons are fairly rare, but sometimes handy.
To do this you use "iapply" (independent apply) mode:
rubble iapply -region="<region name>" -addons="<name of tileset addon>"
This is mechanically very similar to applying a tileset, but it carries out a different set of actions.
* * *
It is generally possible to regenerate the raws for a world, but this is a task fraught with peril,
do not attempt unless you know what you are doing!
The first step is to change the `addonlist.ini` file that is in the world's raw directory, make sure
not to change it too much or you can mess up your world!
If you wish you can change `genconfig.ini` as well, but that is usually a bad idea.
Now for regenerating the raws, what follows is an example command line to do that for the save "region1":
rubble generate -addons="df/data/save/region1/raw/addonlist.ini" -config="df/data/save/region1/raw/genconfig.ini" -outputdir="df/data/save/region1/raw"
Note that if you have any addon or config settings in `rubble.ini` this will probably fail horribly (or
silently, which is worse).
* * *
There are also some extra tools that may be useful, run `rubble help` for a full list of all
the modes that are currently installed.
When making an error report please post the FULL log file! Posting just a few lines tells me almost
nothing about the problem, after all I made Rubble write all that stuff for a reason
I cannot stress this enough! With Rubble the actual error message is only a small part of the
information I need for tracking an error down! In particular the list of active addons is **very**
important (and it tends to get cut from most reports because it is near the start of the log).
If at all possible when reporting a bug in a template provide a [test][RB5] that demonstrates the bug.
This will make reproducing the bug *much* easier.
If any of the documentation is not 100% clear just ask. I know everything there is to know about how
Rubble works and so I tend to forget to put "obvious" stuff in the docs. A reminder that I forgot
something is more a help than a hindrance.
In the event that I cannot be contacted on the Bay12 forums (user name "milo christiansen"), my
email address is:
milo.christiansen (at) gmail (dot) com
Please wait 1-4 weeks before giving up hope, as my Internet access is VERY irregular (and I check my
email less often then I check the forums).
[RB]: /doc/Rubble%20Basics.md
[RB1]: /doc/Rubble%20Basics.md#AXIS
[RB2]: /doc/Rubble%20Basics.md#OSSpecific
[RB3]: /doc/Rubble%20Basics.md#WebUI
[RB4]: /doc/Rubble%20Basics.md#AddonLoader
[RB5]: /doc/Rubble%20Basics.md#Tests
[BT]: /doc/Rubble%20Base%20Templates.md
In order to have a full working Rubble installation, you need to have the rubble directory placed in the root of DF directory, and to have all the functionalities you need also a working copy of DFHACK, PeridexisErrant has done in his
pack an excellent job integrating DF with DFHACK and some additional utils and other content, you should use that if you want to evite the hassle of integrating yourself DFHACK into your working DF installation.
At the moment if you also want to evite the hassle of integrating yourself Rubble into your working DF installation, the only option by now is the Release Candidate 2 of
HDFPS that you can download from
DFFD.
Caveats
1.) All in the DF raw directory is erased and regenerated at each new rubble generate
2.) This mean that if you do any modifications in a Rubble piloted DF install they go instead in the Rubble/addons directory or any of its nested subdirs.
3.) If you use HDFPS, limit yourself to
play any of the considered safe mods, those in green in the 2nd post of
HDFPS , all the others are a work in progress, that are there only to show how to interact with the Rubble system, in ways more involved that the Rubble tutorials.
4.) Any constructive feedback will be appreciated
I am a linux and windows user, I do not know ni use
OSX, ni
Safari, but the generic solution (works in Linux, OSX and Windows) that I am proposing to you relies in your
web browser and
OS supporting
bookmark favorites, and that you know how to use and organize them. If you have any other web browser you can
google it for specific information.
If for example you use Safari web browser
here you have a short tutorial about how to manage your Safari bookmarks on your
Mac.
I have placed the
Rubble main menu
URIhttp://127.0.0.1:2120/menu <- click here to open Rubble in your open web browser.
in the
favorites bookmark bar of my web browser (you can do that with firefox, chrome, opera, explorer, safari or any other modern web browser)
Doing that, you have Rubble open in the tab of your choice inside the web browser of your choice, remember also to run first the executable rubble32.exe (this one works in
32 bits and
64 bits platforms, that effectively means in all platforms supported by your OS) to start the Rubble local
web server.
I find that less disturbing that relying on the script...
It is really hard to support 5 o 6 web browsers in 3 OS having each 2 platforms (32 bits and 64 bits) with a opening script.
Like other modders I am developing a mod that relies in Rubble to compose many
DF mods together, I will use this answer in the
FAQ of my own mod, That is the reason because it is so detailed, I am personally interested that all people that want to have a try at Rubble dispose of online information able to make their starting steps less steep and abrupt helping their learning curve.