Darkest Dungeon – A visit to the Weald – Part 2

We had been trudging through the undergrowth for the best part of an hour, although it already felt like a day. Even if we hadn’t encountered anything more dangerous than a thorn, we are all already tired and on edge. The ground has changed, the soil has now a darker tint to it and the ground seems to shift slightly under my boots every step I take. My cloak has been ripped to shreds by the grasping branches and brambles which permeate the Weald. Even my sturdy boots are no match for the inch long steel-like thorns of these brambles. The enclosed feeling of the forest is oppressive. The trail we are following meanders back and forth, avoiding trees and impassable terrain for the wagon, bringing us deeper into the forest. Whatever was on that wagon was exceedingly valuable for these thieves to expend such effort into bringing it so deep into the woods. I had expected them to loot it and leave it closer to the road.

I looked back at Eivind as he cursed his way through the forest and wished he would stop mumbling swearwords into his scarf. He stumbled once more as the undergrowth grabbed at his boots, as if it was alive, and suddenly it was. His shriek was the first clue that we had walked headlong into an ambush and that our retreat was cut off. Two huge bundles of brambles burst out of the undergrowth, flailing limbs of green death raking at us. Eivind was drawn into one of them and I heard his pistol discharge into the green mass, without much visible effect. I could see his skin being lacerated by the thorns as I ran to pull him from the plant’s grasp. Behind me, Kara and Regis were engaged by the other mass, I could hear Kara whooping and intoning a battle chant as she tore into the bramble monster with her huge halberd.

Grabbing Eivind out of the mass of thorns and pulling him back took more courage than I dare to admit. His scalp was a bloody mess and every inch of his skin was covered in lacerations. We fought back the vines with our daggers, chopping off parts of the monstrosity’s limbs and seemingly winning until Eivind collapsed and started spasming. The brambles must be poisonous! I cried out a warning to the others and retreated from the grasping limbs. Regis came to my aid by grappling the bramble monster with a hook and chain and literally dragging it away from Eivind and me. He left Kara to hack the bramble monster limb from limb, nothing could have stopped her now, her battle chant having reached a frenzy, she whirled like a dervish.

I used the momentary respite to fling a vial of acid I normally kept to dissolve stubborn or rusted locks at the plant, hitting it square in the center. The fumes of dissolving plant matter and hissing of the acid a comforting sight in the face of such a monstrous creature. We triumphed thanks to Kara hacking the bramble monsters into tiny pieces. I looked at her with a newfound respect and a slight sense of fear. She was heaving from the exertion, steam rising off her overworked body with plant matter splattered all over her. Regis and I tried to revive Eivind while Kara leaned on her pole-arm, the fight having suddenly left her. Eivind was barely conscious, taking great gasps of air every time he managed to breathe, so we pulled him to the side and sat him up. I washed his wounds as best I could while the other two stood guard. It would be a few hours before we could move again…

Darkest Dungeon – A visit to the Weald – Part 1

The Darkest Dungeon Kickstarter is inspiring me.

The Weald are the twisted woods in which I might finally find a clue as to where my sister disappeared to. I have been on her trail for months now, drawn to this Estate like a moth to the flame. Throughout the land, forces have been gathering these last months, rumors about the Master Clarke’s return to his estate have been running wild and even the last day’s events have conspired to bring me here.

From what I have gathered in the Hamlet, the Weald is no place to venture alone, even for one used to such danger as I. So I have joined up with other travelers and mercenaries that have all made the journey to the estate and at daybreak, we will head to the Weald. Officially, our mission there is to find where a wagon of supplies has disappeared to, but I have no interest in that. I now know that the Coven in these woods has gathered their followers over the last months and are preparing a ritual. I must find out more about their whereabouts and how to stop them, only then will I be able to find my sister Eolene and bring her back.

As we gather in the morning, we are given our instructions. The plan is to search the eastern border of the Weald, first to find the place where the wagon was taken into the woods, and then to follow it’s trail. We have three days of supplies with us, but I do not expect us to be that long.

I haven’t paid much attention to my companions till now, I have joined up with two rougher looking men and one of the blue painted women from the Pagan East. One of the men, I gather, is a bounty hunter, specializing in capturing fugitives, and I am hoping we can use his skills to subdue and interrogate anyone we capture from the Coven. The other man looks untrustworthy, his garb of a loose coat and a scarf he keeps wound against his neck and face make me believe that without those, we might recognize the face from a Wanted poster. Maybe this is why the bounty hunter is here? As for the woman, she has yet to utter a word since we left.

By Midday, we have found our first goal, by skirting the edge of the woods, we have come upon tracks where the Weald’s undergrowth has be broken and crushed by a wagon’s wheels. The wagon must have been traveling unwisely close to make the hamlet before nightfall. A short search reveals what we already expected, none of the handlers survived the encounter, their broken bodies were stuffed among the roots of the trees. Examining them brought us only more questions, their bodies were covered in lacerations from vines and their necks were bruised and broken. What killed these men? Whatever killed them must still be interested in money, since their pockets had been emptied and anything of value has gone.

I have finally learned the name of my companions and it was as easy as pulling nails from a hardwood coffin. Regis, the bounty hunter was first to give up his name, followed by what I assume is an alias from the Highwayman, Eivind, which sounds to be a name of the north, unlike his appearance. Finally, the woman did uttered her name, Kara. Soon, we will be walking into the Coven’s lands and face whatever they have summoned to serve them and I will have to trust my companions with my life. But what other choice do I have?

We carefully make our way into the Weald, Regis taking the lead to examine the trail. He soon commented on one set of tracks which are definitely human. The trees close in us and quickly the sun is blotted out, leaving only a slight eerily green light filtering through the canopy above…

Oracle – Reclaiming LOB space after deletion (CLOB, BLOB)

To reclaim space after a deleting LOBs, use the following commands. XXXXX is my tablename, data is my column name for the lob, in pink the size of the table.

1) Check size of the table XXXXX

SELECT table_name, column_name, segment_name, a.bytes
FROM dba_segments a JOIN dba_lobs b
USING (owner, segment_name)
WHERE b.table_name = 'XXXXX';

>> XXXXX DATA SYS_LOB0000025315C00007$$ 1073741824

2) Delete, in my case, I just clean up all files in my table.

DELETE FROM XXXXX;
COMMIT;

>> 183 rows deleted.
>> committed.

3) Ask Oracle to shrink the tablespace used by the LOB column ‘data’. Have a coffee break.

ALTER TABLE XXXXX MODIFY LOB (data) (SHRINK SPACE);

>> table XXXXX altered.

4) Check size again:

SELECT table_name, column_name, segment_name, a.bytes
FROM dba_segments a JOIN dba_lobs b
USING (owner, segment_name)
WHERE b.table_name = 'XXXXX';

>> XXXXX DATA SYS_LOB0000025315C00007$$ 65536

	

SqlFiddle – A way to share SQL snippets so that they can be tested in the browser

A couple of days ago, I stumbled upon SQLFiddle, a little magical website that allows you to upload a DBSchema and run queries on it, live in the browser. It also allows to share them with other users.

In the course of my work, I’ve often come across a table that has an identifier, a timestamp and a value, and these rows must be mapped to one new row containing multiple identifiers. Two typical examples of that are two identifiers defining a minimum and a maximum value timeseries that must be put into a single row entry and an entry that is built from three identified timeseries representing value, volatility and mean reversion parameters of a stochastic process.

In my earlier blog post, Oracle 10g – Pivoting data, I provided two different sql scripts to solve the first case min/max time series. You can find the SQLFiddles here:

Decode with subquery and max 

Decode in one query and max 

You can even view your query’s execution plan, which is a really nice touch. I’ll take the time to share some more oracle sql statements next time in an SQLFiddle.

Raspberry Pi update: Arkos

Since I haven’t talked much about what I’ve been doing with my Pi, here’s the latest:

I’ve installed a distribution called ArkOS, which exposes a web interface allowing the easy configuration of many network accessible services, including a blog and an owncloud instance.

I use owncloud as my private, unlimited, Dropbox. The first time I set it up, on a nginx server, it took a lot of configuration to get just right. ArkOS does it all out of the box.

For dynamic DNS, instead of my previous self-hosted “poor man’s” link, I am now using DuckDNS which promises free dynamic DNS and is really easy to use.