Giter Site home page Giter Site logo

benlubar / weblegends Goto Github PK

View Code? Open in Web Editor NEW
20.0 5.0 3.0 813 KB

A web server that runs inside Dwarf Fortress to show you world history

License: zlib License

CMake 0.93% C++ 96.63% CSS 1.73% Lua 0.71%
dfhack dwarf-fortress http-server plugin-api

weblegends's Introduction

What is weblegends?

weblegends is a DFHack plugin that runs a web server, inside Dwarf Fortress, that allows you to view your entire world's history, artifacts, settlments, heros, and so much more... over the internet or just locally.

Installation & Setup

  1. Download & Install the latest Dwarf Fortress.
  2. Download & Install the latest DFHack.
  3. Download the latest weblegends.
  4. Extract the weblegends.plug.* file to the <Dwarf Fortress Folder>/hack/plugins folder.
  5. Load Dwarf Fortress.
  6. Since a web server is being created to host the files, your computer may ask for authorization the first time you run Dwarf Fortress with weblegends installed. This is normal behavior, click on Allow/OK.
  7. Load or create a settlement.
  8. Using your web browser, visit the page listed in the DFHack console. (Example: http://localhost:5080/)

DF-AI Support

weblegends also has support for df-ai, allowing you to monitor the current state of the AI, the current needs and demands of the fortress, drill down into the individual lives of each of your inhabitants, see health reports, committed crimes, jobs, and so much more...

weblegends's People

Contributors

benlubar avatar lethosor avatar mattregul avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

weblegends's Issues

It seems ghosts can become crazed.

weblegends 0.47.05-r1-0-gfcdcbe3d debug log opened
weblegends commit: fcdcbe3
[weblegends] [change_hf_mood.cpp:59] missing event type handler for CHANGE_HF_MOOD: event-76119: In the late winter of 252, the ghostly dwarf Thob Moralvault became crazed in Ironelders after a great deal of stress.
[weblegends] [change_hf_mood.cpp:62] missing enum-item: history_event_reason(great_deal_of_stress): event-76119 (CHANGE_HF_MOOD)
[weblegends] [change_hf_mood.cpp:59] missing event type handler for CHANGE_HF_MOOD: event-76276: In the late winter of 253, the ghostly dwarf Thob Moralvault became crazed in Ironelders after a great deal of stress.
[weblegends] [change_hf_mood.cpp:62] missing enum-item: history_event_reason(great_deal_of_stress): event-76276 (CHANGE_HF_MOOD)

Missing event type handler, enum-item

Historical descriptions appear with placeholders (e.g., "Mebzuth became crazedCHANGE_HF_MOOD:531812") for certain events and corresponding debug messages are written in the current build. See the attached log for relevant "missing event type handler" and "missing enum-item" messages.

DFHack version 0.44.12-r2 (release) on x86_64 Linux
weblegends 0.44.12-r2-0-gf625d135, commit f625d13

weblegends_debug.log

Masterpiece events need writing

Craftsdwarves create a lot of things. Some of these things are masterful or even legendary. You can get rid of almost all of the ALL_CAPS_WITH_DOTTED_UNDERLINES on their pages with this one simple function:

static void do_event(std::ostream & s, const event_context & context, df::history_event_masterpiece_created_itemst *event)

Any plans to include more information?

First I want to say this is great! The idea of having your own world's wiki is amazing. Some things I'd like to see in the future if it were possible:

  • Some search function like on most wikis
  • More info on the dwarves, like their thoughts, relationships, appearance, etc.

That's pretty much it. Maybe these are already available? If so, I don't see them in my page. Thanks again for such a great plugin.

Ghostly events need writing/rewriting

If a dwarf is resurrected as a ghost, it triggers a HIST_FIGURE_REVIVED event. This is not displayed in the Death List on the DF-AI report, leading to the apparent impossibility of dwarves dying twice. The event is also stubbed out in the historical figure record. As a first step, this function should probably output a "$hf came back to life as a $df::ghost_type" message.

static void do_event(std::ostream & s, const event_context & context, df::history_event_hist_figure_revivedst *event)

This death message appears when a ghost is removed from play by way of a memorial being created for it, so "put to death" is probably not appropriate, maybe "laid to rest"?

s << " was put to death";

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.