Thursday, December 21, 2023

A Dissonant Chord - Part 7

In part 6, Ikram met a man named Arasen who told him he could help deal with Ikram's sodden problem. Arasen took Ikram to meet his wife Indirra. They revealed to Ikram that he and Indirra are both invokers. Indirra showed Ikram her enchanted mirror which allows her to move the interior space of buildings between the real world and an alternate location. That night, Ikram agreed to help Arasen and Indirra rescue their friend Kendi who was imprisoned by the Cove and together they concocted a plan for the next day.

34th day of spring, year 132

In the morning, we set our plan in motion. We put a leather cover over the mirror. I tied Arasen's hands, roughed up his face a bit, put the mirror on my back and went to the jail. I explained to the guards that I caught him stealing from my employer. I said I tracked him to his hideout where I captured him and found this very expensive mirror. I took off the leather cover and explained that my rich employer is preoccupied today but he will be visiting tomorrow to see if the mirror is from his wares, after making a list of missing items. "A thief, huh? We'll handle him. We'll make sure he tells us where he's hiding the rest of the loot," the guard said. I nodded to the guard to move away from Arasen and said to him in a low voice: "My employer has an unusual request. He would like to speak to the thief tomorrow and he would like him to be intact for that talk." I passed him a purse with forty arrowheads. He weighed the purse in his hands and said: "This is enough for me to delay the interrogation, but you realize I ain't the only one here. I believe another one like this would be enough to convince my colleagues too." I pulled out my purse and passed him another forty arrowheads. "Of course, I understand. Please do make sure that the thief is in good state until my employer talks with him." I said. He nodded with a smile and I left. When I got back to Indirra, we experimented to see if she could let me absorb mystical energy from her. We succeeded, but it was really taxing as the energy felt very different. Reusing my "eating" analogy, this felt like eating something that was still alive and then feeling it stop writhing inside me when it died. We then went to sleep.

35th day of spring, year 132

Next morning, Indirra said she was only able to sleep because of how drained she felt after the absorption. We got out and got to the jail. Indirra waited about 200 steps from the jail while I went to speak with the guard. "Good day. My employer would like to speak with the thief and he asked me to check that everything is in order. Is the mirror here?" I asked the same guard. "Good day sir. Yes, he is here and we have the mirror too," he replied. "Excellent. He'd be most grateful if you could chain the prisoner here in this room and have the mirror ready. He'll be here shortly." "Alright, alright, let me go get the prisoner and, here, put the mirror wherever you want," he said as he handed me the mirror. I placed the mirror next to a table in the entrance room. I stepped out and went to hide with Indirra. "Ready?" she asked. "I believe so," I replied. We nodded at each other and then looked at the graveyard next to the jailhouse. I thought of a fiery giant, and presumably Indirra did so too, as planned. Whoosh, a three-meter-tall primordial made of red-orange flames appeared as if someone lit a fireplace up, in the middle of the graveyard. People around started screaming: "Primordial! Gods save us! Run!" A guard came out from the jailhouse, saw the "primordial," put his head back through the doorway and shouted so. A moment later three guards were out of the jailhouse. One ran away in terror. The other three were looking at the now moving "primordial" and were asking each other what to do. "Now is our chance!" Indirra said. We both ran across the street, past a few panicking residents and into the jailhouse. None of the guards even saw us, all focused on the fake primordial. The mirror was exactly where I left it, and Arasen was chained to a chair next to the table. Indirra ran directly to the mirror and touched it. Almost immediately, the view from the door was replaced by an equally bright but completely amorphous veil and all the sound and screaming was gone. "Are there more guards?" I asked Arasen while Indirra hugged him. "No, they all just ran out. Kendi is chained in the back cell," he replied. We tried to find the keys for Arasen's chains but it looked like one of the guards took all the keys with him. I used an invocation to rotate the lock's mechanism and it worked! The two of them used their knives to cut Kendi down from the wall where he was tied. He was roughed up badly. Indirra tried to hug him but stopped when he squirmed. After getting him some water and checking that he was not infected anywhere, he looked at me. I introduced myself, and Arasen added that I'm after the Cove. Indirra immediately shouted "And he's an invoker too!" "Who's holding off the guards?" Kendi asked. We explained that we used the mirror and how we got it into the jailhouse yesterday. "Really smart. Thank you," he replied. "No! Thank you for holding out that long!" Indirra replied. "So what now?" he asked. "Now we break the back wall," Arasen said and explained the plan. Indirra kept tabs on the astonished guards who had no idea what had happened, while Arasen and I broke the back wall and Kendi rested until it was nighttime. Indirra came to the back and told us that the guards seemed to be freaked out by the whole disappearance of the jailhouse's interior and had not entered the building since the sun went down. So we would be able to skip the step of smoking the guards out. I wrapped Kendi's wounds and made a splint for his broken arm. Then we waited at the back exit while Indirra went to a point where she could see if anyone entered the alternate building. Once she saw it was clear, she flipped the mirror and came back to us. I took a look outside the hole in the wall and saw no one, so we covered the mirror and moved out. We headed away towards the darkest alley we could find, but as we entered it, a back door opened and a drunk man got out of it. He saw my face in the light of the building. His tired eyes opened wide and he drunkenly shouted, "Hey!...It's that...it's the Graycliff asshole! Guys! The Grayglidiot!" We ran as fast as we could, given Kendi's condition. We could hear commotion, probably the warrior explaining to his friends what he saw. We accidentally dropped some of the chemicals that we would have used to create smoke. I looked around and found a nice wooden board that we could hide behind, as it looked like a house wall from the alley. We hid as a group of three warriors passed by us. One of them was saying, "You drunk idiot, you do this every payday. I hope it's not another dog again..." We waited a few minutes, and while waiting, I realized how bad I was at sneaking and that I should rely more on my senses and in finding better hiding spots, like the one we were hiding in at that moment. I shushed Indirra and Arasen, who were talking, and listened carefully for any signs of the warriors. "I'm telling you we must have missed them! Just go back, I can take them on myself, I don't need you bastards." The warrior started looking around for us in any dark place he could find while his friends left him. Eventually, he sat down to rest, mumbling to himself. "Can I invoke sleepiness on him?" I whispered to Indirra. "Maybe, especially now that he is drunk," she replied. I focused on him and started to feel sleepy myself but then I jolted, and he did too. I fell backwards on Kendi, and broke the splint on his broken arm as he fell with me. He screamed in pain and quickly shut his mouth with his hands, but it was too late. The warrior ran towards us. We all, except Kendi, grabbed our weapons. I took aim where the warrior would come into view. It turns out the warrior had considered this danger and instead kicked the whole wooden board that we were hiding behind onto us. We tried to push the board off of us, but the warrior was already plunging his sword through it. Some of the wood that splintered off cut my forehead. I jumped and rolled out from under the board, but the warrior kicked my back and threw me to the ground. I turned around and stabbed his leg with an arrow as he punched down on my head. Indirra was moving the mirror away while Arasen grabbed the warrior from behind to throw him down. Dizzy, I stood up as Arasen started fighting with the warrior and was quickly thrown to the ground. The warrior lunged towards me again, and I failed to stab him as he kicked me in the gut. I crashed into the house wall and pushed off of it to launch myself towards the warrior, only to get another punch in my face. While I was recovering, the warrior lifted his sword and tried to say something, which I did not understand. I needed just one good opening, but I was clueless when it came to brawling. But I had no other option but to throw myself at him. His sword cut me on the ribs, but I did stab him in the neck. He stumbled back as I held my bleeding wound. I made the arrow in his neck pull out and held his wound open (through invocation) to maximize his bleeding. He tried to stop it, but within a few seconds, he slumped to the ground in a pool of blood. I jolted back to Kendi and picked him up, and we all ran towards where Valeri was waiting for us. We put Kendi on her and set off toward my old campsite outside Greatrock. Kendi, and we, were safe.


In the next part, seeking answers, Ikram communes with the spirit haunting him, and through their contact, a bargain is struck and secrets revealed. But he has to turn his focus on more mundane issues, preparing to further harm the Cove of Lament.

To be continued...

Wednesday, December 20, 2023

Dell Vostro 15 3525 review

I've got a Dell Vostro 15 3525 laptop since Q2 of 2022. 

Overall it's bad but let's start with the good things about it:

  • Devuan Linux worked almost out of the box on it although I think that back then I had to use a slightly newer kernel otherwise the sound card was not properly recognized and I was missing the sound input.
  • Opening the laptop to change the disks, battery and RAM is easy too. 
  • The screen is nice. It only had a single blue subpixel that was dead. Hardly noticeable, I didn't even see it during my first dead pixel tests.
  • The screen hinges and overall the body of the laptop feels solid.
  • The CPU is fast enough for what I need it for. Rimworld runs perfectly on it. Minecraft is playable.
  • It has a camera shutter.
Now, I may have been unlucky and maybe it's just my laptop that has the following issues, I have no way to check. Let's go over them one by one:
  • It would refuse to accept any of the spare SSDs that I had in it's SATA slot. It always showed communication errors. I thought it was some Linux incompatibility. It wasn't. I noticed it would accept HDDs though, so I used those. Within 6 months, it destroyed 6 HDDs. I've had many HDDs in my life, very few died on me, maybe 4 over multiple decades years. This laptop almost doubled the number within 6 months. I took it for service, Dell returned it saying they saw no issue. The shop I bought it from, which had seen the issue, sent it back to Dell. They replaced the whole motherboard and all the issues went away. SSDs started working with no communication issues.
  • It gets too hot. I've completely disabled turboboost because, with it enabled, a single thread of load would take the CPU to 95C-100C. With turboboost off it is at 50C when it's almost, but not completely idling. Running something like Wonderdraft will immediately take it to 100C, turboboost or not, a feat that no game can achieve. A friend has practically the same laptop but with a 17' screen and the cooling system is insanely better. Dell just dropped the ball with the 15' version. The keys above the area where the CPU is are extremely hot, which is both annoying when typing on them and I believe has caused issues to the keyboard itself.
  • The keyboard sucks. Horribly so:
    • I felt like shift stayed pressed for longer than I held it down, resulting very frequently in typos like "HEllo there stranger! DO you accept ROberto IErusalimschy as you LOrd and SAvior?" I thought I'd get used to it but this being not the only keyboard that I type on, it was practically impossible to train my fingers to hold shift for a shorter time than on other keyboards. I wasn't even completely sure that this wasn't just in my head but then the issue went away when my motherboard was replaced because of the SATA issues.
    • The top row with Esc and the F keys is either not exactly centered in the chassis or, if it is, the holes of the keys are not wide enough because if you press these keys a little bit sideways (not exactly straight down) they scrape the chassis and make a "crack" sound.
    • The horizontal row of numerical keys has recently started ignoring keypresses unless pressed hard. My 3, 5, and especially 9 are very easy to on-purpose press beyond the point of resistance without really causing a keypress to register, and I've been more and more typos during regular typing like often missing these digits or their shifted forms. I suspect that this may be partially caused by the extreme heat from the CPU speeding up any corrosive/oxidizing process that naturally happens on the contacts under the rubber domes.
  • Small annoyance but I have not found a good way to reliably turn off the jump-scare PC speaker which is extremely loud. Right now I have a cronjob that turns it off every minute, because when pulseaudio starts up or if I restart it for whatever reason, it re-enables the PC speaker.
At this point I need those numerical keys fixed and I'm about halfway through the 3 year warranty period but I don't want to stay without my main computer for a month or more. If the last time is any indication, Dell's service might need to have it shipped twice to them before they actually fix it. So I am considering buying a Tuxedo Aura 14, sending the Vostro for slow servicing and then selling it once I get it back.

Sunday, December 17, 2023

A Dissonant Chord - Part 6

In part 5, Ikram realized his provisions were ruined so he pressed on without camping, hoping to find help in fighting the Cove. When he reached Greatrock, he discovered that the city was actually where the Cove had their headquarters. Not wanting to risk encountering their warriors, he left Greatrock and camped in the forest to devise a way to safely enter the city. He tried to find some information about him enemies but did not achieve much.

32nd day of Spring, year 132

The next morning, or more accurately in the afternoon, I woke with a horrible hangover. I did not sleep well as I was still feeling jittery about someone from the Cove finding me. I ordered some food and sat at the bar to eat. A young man approached and asked if I was new to town. "Yes, I'm just passing through on my way to explore the world," I replied. "The world? You must be planning to talk your way out of trouble, because you sure don't look like you could wrestle your way out!" he joked. "I may have a job for you though. A friend has been captured by some ruffians and my friends and I will go rescue him while these fuckers have their guard down." My head still ached, but the thought of danger did wake me up. I said to the man, "Sorry, but I don't want more danger now. These last days had too much and I seem to bring bad things to folks near me, so I'd be no help on your rescue." "Nah," he replied. "Nobody reaches Greatrock by luck. We're in the Deep Wilds!" "Well, you got my lack of luck right. I was attacked by a fucking sodden just a week ago. Look, as I said..."  He cut in, "A sodden, you say? Well now... I got one bad and two good pieces of news to give you." "Just go ahead and tell me..." I tried to say, but he spoke over me again. "The bad is you need to lose that sodden, or they'll drown you or wear you down. They'll make you scared and weak." "Right," I said, disappointed. He went on, "The good news is I know someone who can help with that."  "Oh, alright. And what's the other good news?" I asked. "That, I'll let my wife tell you when you meet her for help with the sodden," he said. "You sure are pushy, aren't you?" I said. "I hope you aren't making all this up." "I swear it's true," he said, raising his ringed hand. "But there's no one in this town I can trust — not the guards, not the court, not even the merchants or the artisans, so I need your help." I agreed to visit his house and, after he gave me instructions on how to find it, I left to retrieve Valeri and my equipment before heading straight to his home. "You know, I never told you my name," he said, standing next to a young woman inside his door. "I'm Arasen, and this is Indirra." I gave them my name and hesitantly entered their home. We ate and discussed my trip. They warned me about the untrustworthy people in the city and how most were cooperating with an elf-bound clan who had even elected their leader as mayor. "Yes, the Cove of Lament," I said, which made them both recoil and hastily look at each other. I realized these people feared they had let in someone who was allied with the Cove, so I quickly started explaining: "They killed most of my village and burned much of it to the ground. I do want to travel the world, but the reason I'm here is to destroy them, although this seems foolish now — with me basically coming to their headquarters to look for help to defeat them and even managing to attract a sodden." They looked at each other and seemed to relax. Indirra spoke first: "I know this seems hopeless, but you've actually come to the right place." "The friend I told you about has been captured by the cove," continued Arasen. "And he was caught conspiring against them when he was really trying to kill their leader."  "So he could tell them about you at any time and lead them here???" I said, a bit more loudly than I intended. "Yes and no," said Indirra. "I'll show you what I mean, but just to lessen your shock — you, Ikram, are an Invoker." She stopped, waiting for my reaction. "I know," I said. "Oh, splendid, much less to explain then. I am one too and my mother was one as well. She was also the one who passed this enchanted mirror to me." She pointed to a medium-sized mirror on the wall while standing up and walking to it. "Open the door," she said with a smirk. I obeyed. To my astonishment, I found absolute darkness outside! "This house is not in Greatrock right now, you see," she said before I could even exclaim anything. "The house in Greatrock is the one you see inside the mirror." I looked at her next to the mirror and she was not reflected in it. In fact, the house in the mirror was not even lit up like the one I was in. "The mirror lets me flip the two houses, so if the guards were to pay us a visit, they would find an empty house. Even the neighbors know we live in a farmhouse outside the city most days." "Amazing!" I said in a hushed voice. "But why don't you know how to get rid of that sodden?", she asked, "I assumed most people would teach their children first about this." "My mother mentioned soddens to me but she never mentioned anything about invocation. She wasn't an invoker as far as I know, and I wasn't one, or wasn't aware I was one before this spring," I told her. "What about your father? Although it's strange that you hadn't realized till now," I said. "I never met my father. And, yeah, I didn't know I was an invoker until I was able to absorb that 'mystical energy'," she replied. "What do you mean 'absorb'?" she asked. "Well, when you get 'hungry' and can't invoke properly? Then you need to find some sort of energy to absorb," I tried to explain. "I feel 'tired' and I can invoke again after a few hours of good sleep," she said, "I've never heard of being 'hungry for mystical energy'. Invocations come from within." "Then what's the point of lodestones? I found one and some notes about it mentioned it can find sources of mystical energy and phase rifts," I asked. We discussed it for a bit more, but it sounded like she knew invocation as something quite different from what I had experienced. She also described it as something much more exhausting and risky than what I had experienced. Eventually we went to sleep.

33rd day of Spring, year 132

I woke up feeling quite refreshed after resting well. Arasen had returned with some food and we sat down to eat together. Soon, the subject of our captured friend Kendi arose. "We need to get Kendi out of jail soon, perhaps even today. Our original plan was to try and get most of the guards out of the prison, then use the mirror inside to flip the building to an empty alternate version. But there are a few issues with this plan," Arasen explained. Indirra continued, "First, the mirror takes about a day to adapt to a new building. Second, if the mirror is left uncovered outside for more than a few minutes, it will break. And third, if the guards enter the alternate, empty building and we flip it back, they would be trapped in the alternate version. I don't know what would happen if we moved the mirror while humans were stuck in there." "What happens to items or even bugs that enter your alternate house if you try to move the mirror out?" I asked. "They disappear as far as I know, at least they are not there if I move the mirror back to the same building. But human souls are different than inanimate objects or insects," Indirra replied. "My mother always warned me never to use invocation to manipulate souls, as that would be inviting trouble. I won't risk trapping or destroying a soul." I thought for a moment before suggesting, "You could flush them out by setting the alternate version on fire, or at least smoke them out without burning it all down if that's a problem." "That could work. I'd avoid burning it completely just to be safe, as I've never tried to see what happens in cases where the whole alternate building is destroyed," she said. "As for the one day delay, we'll need to move the mirror earlier. But how? This sounds impossible. Unless we disguise it as a tray, table, or..." I said, but got lost in thought again. After five minutes, I said, "We could break down a wall to leave from the back. But to get the mirror in earlier, could we make them confiscate it?" "It's too risky. They may not unveil it, and we can't move it unveiled outside. They may also lock it up somewhere or, hell, break it," Indirra replied. "If we could make the mirror smaller..." I said through my teeth. "We can't, and it's one of a kind as far as I know. I've never heard of another one," she responded. "Does the jail have an attached outhouse?" I asked. "No, and even if it did, it wouldn't be seen as part of the same building by the mirror." "What if you pretend to have caught Indirra, whom you'll present as a thief, with the mirror and ask them to hold onto it until you notify the owner to come pick it up?", I suggested to Arasen. "Ha! I'm not letting her with the guards, are you crazy? But this could work in reverse - I can play the role of the thief and you two could pretend to be from out of town and say I tried to steal from you but you caught me." We spent the rest of the day fleshing out the details. I swore on my arrowheads to help them free their friend, Kendi. We slept in their house that night.


In the next part, Ikram, Arasen and Indirra enact their perilous plan. Through cunning deception and the use of arcane objects, they infiltrate the prison's halls. Danger arises as a foe from Ikram's past recognizes his face. If they can escape with their allies and avoid detection, their mission will succeed. But new threats may emerge as they make their way to safety with night falling.

To be continued...

Sunday, December 10, 2023

A Dissonant Chord - Part 5

In part 4, Ikram escaped from an elder wolf that chased him. He found an abandoned house and discovered strange artifacts and humanoid remains locked in the basement. After attempting to leave, he was instantly transported back to the edge of the forest. He continued his journey and saw a family of broken emerge from a cave and he was later almost drowned in a flooded river by a sodden.

27th day of spring, year 132

In the morning I immediately left for Greatrock. I realized en route that my provisions were ruined by water and something was growing on most of my fabrics. Camping would be difficult under the circumstances, so I decided to press on, hoping I'd soon find some road or settlement. The hilly terrain meant less dense forest, so I covered quite a distance before reaching dense foliage again, where I had to take a night's rest before continuing. I still couldn't sleep properly. I kept dreaming of that sodden. Was I getting too worried? I had more mundane things to worry about.

28th day of spring, year 132

I had no breakfast to eat this morning. I jumped on Valeri and left for Greatrock. I finally reached Greatrock! I went straight to the shops and reprovisioned for 18 arrowheads. I ate and slept in the inn.

29th day of spring, year 132

In the morning, I checked around town for any odd-jobs. I stumbled upon a mercenary who was looking for a crew to go after a nearby settlement of broken. I was shocked when he said the job would pay well because it was sponsored by both Greatrock's mayor and the "Cove of Lament" clan. I asked another man in the crowd who the "Cove" is. He told me the cove is the elf-bound clan led by Namura, Greatrock's newest mayor. I felt my heart sink. I had come to the base of my enemy to find help to defeat my enemy. I left before anyone could realize how shaken I was. I started walking toward the inn, thinking about my next step. Obviously, they were not actively looking for me, and they wouldn't expect me in their hometown either. But the chances of a random encounter would have been high, very high, based on my experience outside Mournwood. I finished loading Valeri and jumped on her. I had to camp alone outside the city and think about what to do next when my mind would be clearer. I found a good place in the forest, far from the road and hidden from Greatrock's view. I tried to sleep.

30th day of spring, year 132

I felt rested in the morning. I eventually would need to go into the city, so I needed some way to conceal my face. I experimented with applying a bit of mud to my skin, trying to find a way to make myself look more wrinkled. Then I cut my hair much shorter and tried tying it differently, but if anything, this seemed to make me stand out more — at least based on my rippling reflection in water. I wished I had an actual mirror or a shiny metal surface. In the evening, I spent some time rehearsing different fake voices. I got a few nailed down really well! But it was getting late.

31st day of spring, year 132

I woke up feeling rested again. I walked to the edge of the forest closest to the city gates. I spent the day watching who went in and out. That evening I saw a group of warriors, clearly part of the Cove by their clothes and armor, leaving Greatrock with their leader and enough provisions for a very long trip. I wasn't sure if many more remained in the city, but I was willing to risk spending some time there to learn more about them. I walked in and went straight to the inn. I sat next to an older man and ordered some food and ale for me and another ale for him. "You're not in a rush, are you?" I asked. "I haven't had a chance to talk with someone for days!" I added. He seemed friendly. We began talking. I kept buying ale for him, hoping to get him to open up, but I seemed to be getting drunk more quickly than him. His name was Cortin. He did not seem eager to discuss his past, but he was extremely enthusiastic about telling me all about his future hopes — to write a book about the elves and convince the Cove clan to take him along on their next trade journey. I asked if he was certain this was a good idea and how much he really knew about the Cove, whether he could trust them. He said he didn't know much but had secured a meeting with one of them the next morning. "Here at the inn?" I asked. "No, they have their headquarters in the east side of town," he replied. We had a few more drinks before I got a room to sleep.


In the next part, Ikram forms an alliance with an unusual couple who promise information and aid for one of his difficulties in exchange for assisting with a perilous mission. Danger, cunning, deception and arcane objects lie ahead as they plan their next steps.

To be continued...

Wednesday, December 6, 2023

A Dissonant Chord - Part 4

In part 3, Ikram came across a strange abandoned outpost that seemed designed for children or small people. He returned to Mournwood and completed his trade with Padma, receiving a large payment of arrowheads for the books. However, when Ikram tried to have a couple from his village distribute the arrowheads among the survivors rebuilding Graycliff, he was betrayed as the couple attempted to run off with the money. He eventually took money himself to his village. He then set off for Greatrock to seek mercenaries but was caught in a snowstorm.

23rd day of spring, year 132

The storm didn't allow us to sleep very well, but by the time we woke, the sky had cleared, so we continued our trip refreshed. We reached a grove. I heard a lot of howling coming from within, so I decided to ride around it instead of through. The extra distance took its toll on my and Valeri's stomachs. While eating, we were suddenly attacked by an elder wolf, possibly one that caught our scent while we were circling the grove. We were no match for this beast. We immediately broke into a gallop with the beast right behind us. "Smoke!" I thought - and thick gray smoke did appear, even more than I imagined! Valeri was engulfed in it, though I could still somehow see the beast through it. The beast was also getting enveloped in a smaller cloud. "And mirrors." I thought next. A horse the same chestnut color as Valeri now galloped closer to the beast than us. "Not bad," I thought, hoping for more. "Run!" I said, kicking Valeri. She sped up, putting some distance between us and the beast. I thought of more mirrors, and one more copy of me and Valeri popped into existence. But the beast was fixated on the real us. I started to panic as it closed the distance. I "tried" to make us disappear, whatever "trying" means when it comes to invocations, and failed. The beast was getting even closer. "Run girl! It's up to you now!" Valeri gave it her all. We kept distancing ourselves from the beast until it seemingly got tired or bored and stopped chasing us. We kept going for a good ten minutes more. When we finally stopped, I got off Valeri to check if she was alright. Her legs had been bloodied from running through branches and brambles. I gave her some water and patted her neck. Both of us knew she had saved us that day. I looked around for berries as night fell. By the time I had collected enough, it was already dark, so I set up camp for the night in a cave I found nearby.

24th day of spring, year 132

The cave helped Valeri and I both relax and enjoy a good night's sleep. I ate a big breakfast in the morning and continued my journey. We passed by a very tall cliff and later reached a small lake. I thought this would be a good place to restock on some fish or frogs, so I spent time until sunset fishing but didn't manage to catch anything edible. I ate some more from my supplies and had to throw some away as it seemed to have gone bad. After that, I fell into a tired sleep.

25th day of spring, year 132

I woke hungry but decided to keep my supplies for now as I was entering the Deep Wilds, unsure how easy it would be to find food. The first thing of note that we stumbled upon was an abandoned house. Like the outpost I saw on the 18th, the door, windows and height of the edifice seemed more appropriate for children than adults. I decided to squeeze in and take a look around. What I found were a couple strange contraptions. Both seemed to be made of bronze - the first looked like an alembic with one glass tube still filled with a blue fluid, while the other resembled a keychain but with more rigidly attached keys on a bigger ring. Even just for the bronze, these things held value. The blue liquid drew my attention as it seemed familiar. I opened the tube's lid - with a pop, a gray-blue steam started escaping and filling the room with the usual "smell." I closed my eyes, feeling it around me; almost seeing it. I started absorbing it but then felt like someone was watching me. I quickly opened my eyes and looked around. Some of the steam was being drawn into a crack on the floor. After closer inspection, it was a trapdoor with no apparent handle except for some holes forming a circle. The keychain! I rotated all the keys to point in the same direction and slid them all at once into the trapdoor's keyholes. Without even rotating anything, a click was made by the mechanism and the trapdoor popped upward a tiny bit, revealing a handle on its side. I opened it and peered into the coal-black room underneath. I lit a torch and went in. The room was full of metallic tablets (I think they were copper but they felt lighter than they should have been, even for their thinness) with unknown characters punched onto them. The tablets were mostly tidied onto stone shelves with some strewn on the floor next to some small skeletal remains. The clothes of the deceased human(oid?), or whatever rotten remains were left of the clothes, looked unfamiliar. The bones looked human but child-sized, perhaps a little thicker than I'd expect, but I was no expert in bones. I assumed the person was locked in here, probably by someone else, since the door would lock only after pressing it down and removing the keys. I looked around the house some more for any useful utensils to grab, then set up camp outside. I buried the remains and then fell into rest until morning.

26th day of spring, year 132

After an amazing night's sleep, I woke to find some berry bushes full of ripe berries right in front of the house, which I could have sworn were not there the day before. I ate as many as I could hold and packed a few more for the road. I then used some of my charcoal and paper to make copies of a few random tablets before continuing my journey. But as soon as I started to take a last look behind me, what I saw instead of the house was the same cliffs of the Ragged Coast that I had left behind when entering the Deep Wilds. I was somehow again at the border of the forest. Was this an attempt to impede my quest, or a friendly warning, a second chance to rethink delving into these otherworldly wilds? I didn't think I'd be any safer back, so I rode forwards into the forest again. As I rode through a hilly area, I encountered a cave. A gaunt face appeared in the dark depths. She started screaming at me, eyes wide open and fixated. More screams joined hers from within. I immediately remembered the stories my mother used to tell me about the broken. About four individuals came out of the cave's dark depths, wailing and waving their hands like madmen, followed by a child. I felt sorry for the kid - it seemed like a regular Ironlander child. I wondered how long it would take for the child to become like its parents, if any of them survived. I kicked Valeri and sped away from them. I ate some dried fruits and continued my journey. We reached a hill but Valeri was bothered by her wounds. I cleaned them with some water but I needed to apply some medication. Thankfully, I had some in my pack. I washed it up and bandaged it on her front legs. It was getting late, so I set up camp near some rapids freezing-cold water. That was a bad decision. I woke up suddenly when the river flooded the ground where I was sleeping. I jumped up and started looking for my things in the starlight. They were getting soaked and even being carried away by the rising water! First, I threw my bedroll as far onto dry ground as I could. It reached dry land but was already a bit wet. Then I noticed my backpack was almost in the river because of how much the water had risen. I raised my hands toward it, with my palms open, and caused it to jump out of the water from a distance and onto dry land. Then I saw some fabric flowing down the river. It was Valeri's night cover. Again, I telekinetically threw it onto dry land. It was too dark to make out anything else, so I turned my hand into a flaming torch that lit up the area. Everything was on dry land except me. I jumped over the water toward the forest, but two cold, gray hands grabbed my legs and pulled me into the water. It was a sodden! Even underwater, the unnatural flames on my hand kept burning. I turned to see my assailant: he looked like an old man with white eyes and mottled skin. I freed my left foot and stomped on his face, causing him to release me. I grabbed the grassy ground and pulled myself onto it as fast as I could. Shaken, I gathered my things and moved them near the trees where Valeri was standing. I was shaking both from the cold and because I knew I would see this sodden again. I lit a fire and tried to warm up and dry my things until dawn.


In the next part, Ikram arrives at Grayrock hoping to find clues about the Cove of Lament but quickly comes to an unwelcome realization that will waste his time and unfortunately some of yours too, as he tries to figure out what he should do next.

To be continued...

Aperito v1.6.0

     Version 1.6.0 of Aperito renames the compare command to compareboth. It also adds a lot more compare commands that print files fulfilling different combinations of seen and existing in the saved state file you are comparing too: comparefileonly, compareseenonly, comparediffonly. Compare now prints everything, even files that are both seen and in the state file.

 The latest version can be downloaded from here, and the signature from here. Source code is included in the zipfile.

A Dissonant Chord - Part 3

In part 2, Ikram reached the town of Mournwood seeking information about the elf-bound warriors who had attacked him and his village. There, he agreed to sell more old world books to Padma, a rarities trader, in exchange for a large payment of arrowheads. While traveling, Ikram encountered two of the elf-bound warriors whom he fought and narrowly escaped them. Ikram reached the frozen cavern, encountered some mysterious whirling mist, and eventually picked up hundreds books and headed back to Mournwood.

17th day of spring, year 132

We slept perfectly. In the morning, I made some adjustments to Valeri's bags to better distribute the load on her back. Then I went foraging. I found a lone shroud crab hiding under some rocks; its eyes followed me as I passed, but it seemed non-aggressive, so I left it be. Unfortunately, I found no food. I jumped onto Valeri and headed off. We passed by a beautiful pond when Valeri grew tired. I let Valeri rest awhile by a pond full of frogs. As I hunted around, I caught several frogs whose dried legs would sustain me for days. I even caught an enormous fish that had eaten one of the frogs I was pursuing. I rode a bit further before camping, as the pond was lovely but quite noisy, and I might not have heard someone approaching. As we walked next to each other, I ate some of the meat and came upon a ruin of some sort. Was it an old temple? That whole area was eerily silent — not even birds were around. We camped for the night.

18th day of spring, year 132

We didn't sleep badly, but the silence was quite eerie, to be honest. We set off and reached an outpost. Strangely, everything seemed to be designed for children or someone of that stature. I wonder what could have used this place? While scavenging around for anything useful, I found a bit of leather in a chest. Upon closer examination, it appeared to be reptilian in origin. That is not a common nor inexpensive type of leather to find in these lands. We continued our travels and reached a forest. I spent a long time cutting wood and then set up camp for the evening.

19th day of spring, year 132

I had a great sleep. We set off after some route planning. Before I knew it, we entered Mournwood with no sign of the warriors. I went straight to Padma's shop and placed the sack of books on the floor. "I was wondering if you were captured by those elf-bound who came asking about you," she said. "I ran away from them. Do you know them?" I asked. "They have been passing through Mournwood for the past few months, since the start of winter, I'd say. Bastards, they are carrying prisoners to those freaks," she scoffed. "Why are they let into the city if they are criminals?" I asked. "Because they are bringing living wood. They are our only source of it currently. And they may seem like assholes but are not really dangerous for the city," Padma sighed. "Until they burn it down like my village." "Wait, what? Why would they do that? This is horrible, I'm really sorry," she said. "Because I was stupid enough to resist them when they tried to rob me. I didn't think through how exactly I was going to fight a whole clan," I replied. "I don't think it's your fault. It sounds like you just stood your ground but you got really unlucky. I hope you can use the money to rebuild your village and speaking of..." She went to the backroom of her shop and came back with a small barrel. "Four thousand arrowheads, as promised. I trust you on the book count," I thanked her, wished her good luck with reselling the books, and promised to come back after taking care of the elf-bound problem. "Do you know how their clan is named, by the way?" I asked. "Oh yes,  Coven of Lament or something equally ridiculous," she smirked. I thanked Padma again and left Mournwood, which seemed like a bad place to seek help fighting these elf-bound. It was probable that any mercenaries would sell me off to the clan upon learning my target. Additionally, if they asked Padma about me, it's possible they had already turned people against me. I moved one hundred arrowheads to my purse, leaving another three thousand nine hundred in the barrel. I transferred all my belongings from my backpack to Valeri's saddlebags and emptied the barrel into my pack. Consulting my map, I saw the town of Greatrock deeper in the wilds but decided to offload some arrowheads first to help rebuild Graycliff. I set off for Stoneford as night fell, making camp at a foothill.

20th day of spring, year 132

In the morning, I checked my map and set off for Stoneford. I reached it by midday and as I was walking to the tavern, Beltran, the local head, stopped me. He explained that the warriors had come to Stoneford and inquired about me, saying one of their number was wounded and they would return tomorrow. I told him that I was sworn to kill them all for what they did to Graycliff. I asked whether he could coordinate with the survivors to rebuild Graycliff if I funded it, but he snapped back that he didn't want to get Stoneford further involved. I said I understood and looked for the survivors. In the tavern, I found Sidan and Nekuna, a young couple who had lived downhill from my house. They looked devastated but happy to see me. I asked them how many survived and where they were. They said 25 people survived, more than two-thirds of the population, and most had gone back to camp near Graycliff while repairing what they could to make it habitable. "I came across a lot of arrowheads," I told them. "Can I trust you to distribute them equally among the survivors?" I added. "Sorry Ikram, we're not going back. We will rebuild here," they replied. "I'm not asking you to go back - just to distribute the money and you can have your share too, 120 arrowheads for every survivor. Just swear you'll do it as instructed and I'll give you the arrowheads now." They looked at each other and nodded. "Alright, we'll do it," said Sidan. They both swore on Sidan's knife to follow my instructions. We moved to a quiet corner where I took 3,000 arrowheads from my backpack and put them in Nekuna's sack. We thanked each other, and I rented a room for the night, feeling both literally and figuratively lighter of burden.

21st day of spring, year 132

It was time to leave for Greatrock in hopes of finding mercenaries. However, the trip would be a formidable one, with days worth of distance to ride through the Deep Wilds. I ate something and left Stoneford quietly. As I rode up the hills on Valeri, I came across two Ironlanders. When I approached them, my heart sank. "What are you two doing all the way out here?" I asked them. They pressed against each other and looked at me without speaking. "You're running off with the money, aren't you?" I said flatly. "Look..." Sidan started, but I cut him off: "Give it back to me. Now." They looked at each other for a second, then Nakuna knelt and took her backpack off. She opened it, took out some food, and pushed the backpack towards Valeri's hooves. "All but 10 arrowheads are in here," she said in a low voice as she stood up. Sidan and Nakuna then walked back towards Stoneford, with Sidan looking back at me just once with what seemed like anger. I jumped down from Valeri and counted the arrowheads. Along with my own, I now had 3,890 arrowheads in the bag and 100 arrowheads in my purse. With this load, I wouldn't be able to travel safely, and I would risk losing the money, so I took a detour to Graycliff first. I gathered everyone rebuilding the village and told them to split 2,890 arrowheads equally amongst themselves. I kept 900 arrowheads on Valeri and 100 in my purse, sleeping in a somewhat repaired house for the night.

22nd day of spring, year 132

In the morning, I bid everyone farewell and left Graycliff with Valeri. We passed through a flatland and then started following a trail. Suddenly, the weather took a turn for the worse as a snowstorm swept through the relatively open area. With no natural refuge in sight and the strong wind making it impossible to set up camp, we were forced to just press through the storm. Exhausted, we eventually reached a sick and sparse forest providing enough cover to set up camp and weather the ongoing snowstorm.


In the next part, as Ikram journeys into the mysterious Deep Wilds, he faces new dangers at every turn in the dense forest  forced to call upon abilities he does not fully understand in order to escape the clutches of a dangerous foe. Further into the woods, Ikram discovers secrets long forgotten and unnatural forces that make him reconsider his journey. Unnerving encounters with the forest's inhabitants leave him on edge. Most disturbing of all, a menacing entity that weighs him down for the rest of his journey.

To be continued...

Tuesday, December 5, 2023

A Dissonant Chord - Part 2

In the first part of "A Dissonant Chord," the journal entries of the character Ikram were introduced. Taking place in the fictional Ironlands setting, the entries described Ikram leaving his hometown of Graycliff after his mother's passing. While traveling, Ikram and his companion Themon were attacked by a group of elf-bound warriors. Ikram managed to escape but was forced to abandon Themon. Upon returning to Graycliff, Ikram found it destroyed with Themon's head mounted as a gruesome display. Swearing vengeance, Ikram began exploring mysterious woods and caverns, discovering odd books and strange powers within himself. He then set out for the town of Mournwood seeking information about the elf-bound warriors, hoping to continue his quest for retaliation.



8th day of spring, year 132

I woke early, refreshed enough to consult my map and survey the surrounding area. I set off again toward Mournwood. I walked downhill toward a fen. All this traveling around left me quite hungry — for food, that is. The other hunger, which based on the notes I am convinced is mystical in nature, persists. Thankfully, that one is much easier to bear compared to hunger for sustenance. Pressing on, I reached a waterfall shadowed by the cliffs around it, dropping its water into a small lake below that likely flowed underground. I chose to make camp here overnight.

9th day of spring, year 132

It turns out I was camping very close to Mournwood, as it took me less than two hours to reach it in the morning. I had never seen a city before — it was huge and built around some ruins, with the nearby forest seeming to invade the city from one side. I wondered why the ruins at the center of the city had not been reused for building, which according to my grandfather was what had happened to the ruins Graycliff was built around. First things first, I needed some money. I looked around and met Padma, a rarities shopkeeper, who needed help sorting through an extensive collection of books. We spent the daylight working, and she compensated me with 10 arrowheads. I asked if she was interested in more old world books, as I saw a few in the box. She said yes, so I asked how much she was willing to pay for the three I had. She offered 30 arrowheads for each. I asked if she would like more. She suggested 2,000 arrowheads for 200 books. I asked for double. She last offered 4,000 arrowheads for 250 books, which I accepted. She swore an iron vow to pay me when I bring them. She said she would need to call in a few favors to get the full amount but was sure it would not be an issue. I slept at the inn for 2 arrowheads.

10th day of spring, year 132

I couldn't rest at all last night. I kept thinking about the money. I could easily hire mercenaries to take care of those warriors, or I could spend it on finding out more about "invocation". I set off immediately for the frozen cavern. The sooner I get the books, the better. But as I exited the city, I crossed paths with two of the warriors. I recognized them by their armor. I attempted to obscure my face, yet one of them saw me and wanted to know where I was from. They were not sure I was who they thought. I told them the first far-away village name I could think of, but one recognized my voice. I gave Valeri a kick, and we took off, with both warriors chasing us on horseback. At first, I struggled to put any distance between us. I tried to take some sharper turns by going into the woods to make it harder for them to shoot at me. There were many broken branches littering the ground and Valeri stumbled badly on one. I tried to stand her up, but failed. Somehow though, as if Valeri knew, she stayed silent and the two warriors didn’t see us as they rode past. I tried again to help Valeri up, but I was too slow. The warriors found us. Valeri, panicking, stood up on her own and I jumped on her. The warriors prepared their bows; I too took aim. We shot at each other. I missed; they barely missed. That was too close. I started panicking, thinking "Is this the same fight all over again?" as I hastily repositioned further from them and accidentally dropped my purse. I heard arrows whizzing around me, terrifying me even more. Then one asked if I liked the decorations in Graycliff. He said it was his idea. I tried to focus again. They were just toying with me. I took a shot at them, which hit, but they also hit my water pouch. I kept shooting and barely avoiding their shots. Then, suddenly, an arrow hit my arm from the back side. More warriors. I couldn’t survive this. I tried to run away, scared out of my wits. Eventually, I somehow managed to put enough distance between us for them to lose track of us. I needed to rest. Once I calmed down, I went hunting, killed a boar, and then set up camp.

11th day of spring, year 132

In the morning, I devoted some time to exploring the area, which seemed devoid of warriors. I continued traveling just to be safe, though. Later, I came across a grim battlefield strewn with the unburied bones of corpses. I wondered why nobody had bothered to care for the bodies of the fallen fighters. Were they fighting for no one? Or did the victors murder all who would have cared for their opponents? I quickly left and traveled through some cold fields before reaching a small village. I asked its name. "Timberwall," they said. I checked my map — I was a bit off course but close to the Black Tunnels. Unfortunately, when they saw my clearly man-made wounds, they kicked me out of the village because they didn't want trouble. Bullshit. I used some of my fabric to change the bandages on my injuries and then spent the night outside the village, but I got very little rest.

12th day of spring, year 132

In the morning I went hunting again, but it was a complete waste of time. Then I tried foraging, once more finding nothing edible. What a shitty place. I set off to travel. After a long while, I arrived at a peaceful coast close to the caverns. I tried fishing but only snapped my line. I tried again with a new line and got two huge fish. Finally, some fresh food. I tried to find some wood along the coast but some animal stole one of my fish while I was away. So I went fishing once more, thankfully catching some more. I set up camp but it turns out these fish were not edible. My stomach was upset all night.

13th day of spring, year 132

The next morning I went inland to forage. It took some time, but I found some fruit and gathered wood. I then spent time searching for herbs. Afterwards, I used more time crafting new pouches for water and arrowheads. I went to sleep early.

14th day of spring, year 132

I prepared some replacement arrows, as my stock was running low. This place was pleasant. I would stay here for a few days to relax and repair my equipment.

15th day of spring, year 132

I climbed a nearby hill today and actually saw the bay where the shack stood in the distance.

16th day of spring, year 132

My wounds had pretty much stopped bothering me, so I packed up and left. I arrived at the frozen caverns by midday and immediately delved deeper. I went straight to the vast chamber with the weird mystical energy. To my surprise, when I arrived, I saw a huge whirling cloud of mist almost filling the chamber. I walked carefully around, trying to find any opening. There was none, but I noticed that the swirling slowed periodically. I timed my first attempt to enter it wrong and the rotating mass flung me against a wall, dislocating my shoulder. It wasn’t the first time I had to put my shoulder back, so I downed a lot of alcohol, waited 10 minutes, and forced it back into place. I retried timing my entry again, took my time to do it right, and it worked. I was in the eye of the rotating mass. And here was that smell again. I breathed in and relaxed. Cold. I saw the swirling mass closing in on me. Was it trying to stop me? I tried again, tried to relax and take in my surroundings. Suddenly, silence. When I opened my eyes, there was no swirling mass anymore, and I felt satiated like never before. I knew I could do things now. I pressed on to the library and, once I reached it, I opened my sack and filled it with books — 250 of them. They weighed quite a lot. It would make traveling harder, but thankfully, I had Valeri with me. I retraced my steps but one of the ice formations had toppled over, blocking my path. I used some rope, a knife, and a heavy book to make a makeshift ice pick and started chipping away at the ice blocks until it broke. Once I got out and back to Valeri again, we set off immediately for Mournwood. We didn’t go far before Valeri started complaining about the extra weight. We halted to set up camp, and I noticed she had been slightly rubbed raw by the heavy bags.


In the next part, as Ikram leaves Mournwood out of fear his enemies could discover his plans for vengeance, he remains focused on his quest. Back in Stoneford, he hopes the money will help rebuild what was lost in Graycliff. But he finds out that trust in a harsh world is not easy to come by.

To be continued...

Sunday, December 3, 2023

A Dissonant Chord - Part 1

This serialized story follows the journal of Ikram, a character in my solo Ironsworn campaign. In his world, iron arrowheads serve as the common currency. Each year consists of 160 days divided equally among four seasons. The people of Ikram's version of the Ironlands use a calendar that tracks the approximate years since humans migrated from the old world to the Ironlands. While most of the standard details about the Ironlands remain as described in the official Ironsworn materials, there is an overarching custom backstory that has emerged over numerous game sessions. This underlying narrative will gradually reveal itself through Ikram's journal entries as the story progresses. Ikram is from Graycliff and suffers from a severe case of wunderlust. As I am writing this blog post, the campaign is still ongoing and has two distinct acts. Ikram's journal becomes more and more dialog-heavy as the story progresses.



35th day of winter, year 132

After the passing of my mother, I sold the family home and most of our possessions in order to purchase saddlebags, a horse named Valeri, provisions for a long journey, and a better set of clothes. Themon, who sold me Valeri, asked that I explore an abandoned silver mine north of the village known as the Black Tunnels. While traveling there, we passed through some rough mountain terrain. Further along the path, we encountered a caravan of warriors who appeared to be transporting prisoners. Hoping to avoid conflict, we attempted to take a different route. We made camp at a peaceful spot along the trail, but the warriors later found us. When they tried to take all of our supplies, we pleaded with them to let us go freely, but to no avail. One warrior knocked Themon unconscious before I could draw an arrow in our defense. Valeri had wandered away from me as well. Barely avoiding the fist of one attacker, I managed to jump onto Valeri's back. Taking careful aim, I fired an arrow at the warrior assaulting us, but Valeri startled and stumbled, ruining my shot. I pulled her reins to put distance between us and the warriors chasing after, and she responded perfectly. Taking aim once more, my next arrow found its mark in the face of one warrior, killing him instantly. But the others continued closing in. By circling around our camp while firing arrows back at our pursuers, I was able to gradually gain more ground between us until an arrow grazed my arm, eliciting a scream from me. After recovering from the pain, I once more pulled her behind some trees to put distance between us and the warriors. They mocked me from afar, and I thought of Themon still lying unconscious in the camp. Worried for his safety, I knew I had to return to him swiftly. When I emerged from behind the trees to change positions, I saw the warriors running towards me, which frightened me greatly. As I rode Valeri away from them, I noticed the warriors becoming entangled in some brambles that grew between us. Taking aim with my bow, I loosed an arrow in their direction but missed completely, as we had moved further from the campfire's light. I circled Valeri around to approach the camp from a different angle. An arrow then grazed her again, followed by another. Upon nearing the camp, I saw the warriors standing over Themon's still body. Continuing to move did not seem to be helping my situation. Exhausted from the prolonged fight and fearing I could not defend us much longer, as I attempted our escape another arrow struck Valeri and we both fell to the earth. More warriors appeared, blocking off another route of exit. However, I spotted an opening on one side and fled from the approaching men on foot, accidentally dropping some of my arrows in the process. Though I managed to escape with my life, I was forced to abandon our supplies and the unconscious Themon. Realizing I had failed in my vow to help him, I discarded an iron arrowhead as a symbol of breaking that oath, and began the long walk back home.

36th day of winter, year 132

To my surprise and relief, Valeri found me! I do not know how she managed to locate me, as I had assumed she perished with the fall. She appeared badly injured. Creating a makeshift camp on a withered hillside, we were both too wounded and fearful to rest, so we continued our journey together. As we passed through some corrupted woods, an unsettling event transpired - the surrounding trees seemed to wither before my eyes, and I felt a strange urge to somehow absorb them into myself. I grabbed some twigs form the ground and smelled them, the sensation was akin to a deep hunger that I didn't know I ever had, finally being sated for the first time. Late that night, I arrived at Graycliff only to find it destroyed. Themon's head had been mounted on a central pike in the town square. My legs weakened at the gruesome sight, yet anger fueled my resolve to remain standing. I pondered the identity of the warriors and how events may have differed had I surrendered our supplies without a fight. Swearing an iron vow for vengeance, I made camp in the forest outside of Graycliff to plan my retaliation.

37th day of winter, year 132

I attempted to reach Stoneford but became lost due to fatigue and hunger.

38th day of winter, year 132

Still lost, I spotted a familiar hill and got back on track. Later I became lost again, but eventually arrived back at Graycliff. But how? There are only two more days left in winter. I thought I would never reach Stoneford. I felt completely useless — if anything, my skills only gave me a false sense of security in surviving. I realized I would need greater power for my revenge. I would need more of whatever empowered me in the forest, although I still did not know its nature. Just as I knew I needed food and rest, so too did I know I required "that." I pressed on toward Stoneford once more, as I needed assistance.

39th day of winter, year 132

Somehow I made it to Stoneford. I told everyone about the destruction of Graycliff but did not mention that I drew my arrow first — that secret I would take to my grave.

6th day of spring, year 132

The people of Stoneford have helped me greatly. Valeri and I are both feeling well once more. Zanita, a forester from Stoneford who went to Graycliff to look for survivors, returned today with a few others who fled into the forest during the attack. I asked her about the warriors and she said that from what she gathered, she believes they are one of the elf-bound clans that guard the Deep Wilds and trade with the elves. The elves provide them rare medicinal plants and types of living wood (wood that repairs itself when carved using special procedures), and the clans provide the elves with anything they request — very often humans with specific characteristics. No one knows why they need them or what they do with those taken. I left all my arrowheads at the church to thank them for taking care of me and left again for the corrupted woods. On the way, while passing by an isolated bay, I stepped down from Valeri to look at an abandoned shack. Beneath the shack, I found a frozen cavern through a trapdoor. The cavern "smelled," if I can call it that, just like the corrupted woods, and I felt compelled to explore it. The cavern was extremely dark, so I used some cloth to make a torch and delve deeper. I found a vast chamber that had that "smell" and I somehow let it into me. It made me feel more full, more ready — to do what, I was not sure. I was plunged into darkness when my torch unexpectedly went out, but then it started emitting flames again even though there was no oiled cloth on it. I should probably have used it to go back, but there was more there to explore and I knew I was close to something important. Adding to my perplexity, I stumbled upon a library. I took a few books with me: "The Final Alliance," "Surviving the Ocean," and "Unlikely Victories: A Review of Our History." These must have been old world books, as their quality was amazing. On the back side of the library, there was a locked iron door. I felt compelled to open it. After much searching, I located the key in the library, but it snapped when I tried to use it. Perhaps it wasn't even the right key. But I had come so close! I really thought I'd hear the lock click. And then, I did! The lock made the sound, but it remained locked. Did the mechanism move itself, or was I losing my mind? I thought perhaps I did manage to rotate the key a bit before it broke, and now the mechanism simply fell into place. I looked at the keyhole and again considered how close I must have been — it just needed a few more degrees to the left. I tilted my head, and then the clicking sound again. "Am I doing that?" I wondered. I tilted my head again, thinking of the rotating key. "Click," but this one was fuller, louder. I pushed the door, and it opened. Behind it was a small room with a desk containing some books and a stone arrowhead in the middle. I took the stone and looked around the desk. Some notes with a drawing of it mentioned that it is an invoker's lodestone and that an expert invoker should be able to use it to reduce the risks of invocations, as well as find sources of "mystical energy" and "phase rifts". I retraced my steps to the surface with the notes. Night had fallen, so I made camp.

7th day of spring, year 132

I set off for Mournwood, one of the border towns next to the deep wilds, hoping to find information about the elf-bound warrior clan. I passed a hill covered with water running downhill. It was likely the beginning of the new spring, as the water had not yet eroded the earth. I pressed on to a river rich with fish. I used my bow to fish but by evening it had grown dark, so I made camp for the night.


In the next part, Ikram visits Mournwood where a business opportunity awaits. But danger lurks closer than expected, as he encounters more weird phenomena and finds himself in yet another life-threatening situation.

To be continued...

Wednesday, November 29, 2023

Trash Favorites: Games

Here are some hot takes, because I love venting by shitting on people's favorite games. I will also suggest superior alternatives.

GTA San Andreas

This game has aged like a smartphone. The camera sucks, the controls are mediocre at best, and the sound quality is inconsistent. Fights are based on finding a way to cheese them, and the lack of either a proper save system or proper checkpoints means so much replaying that, in an age where I have another hundred games that I want to play, it means I won't bother replaying this one. I used to like this game a lot when it came out, but nowadays? I only touch this again because there are no other good open world games on Switch. Superior alternative: Postal 2

Doom Eternal

Possibly the biggest disappointment in my life when it comes to gaming. I loved the Doom reboot. Loved it. With the exception of some of the optional challenges and the shitty boss fights (I dislike inorganic boss fights and bosses with phases as they feel cheap to me), Doom 2016 is one of the best games I've ever played. I pre-ordered Eternal, thinking I'd get more of the same. Instead, I got an annoying puzzle platformer shooter. Now, I wish I could find what else the designers of this game worked on so that I can avoid buying it. In fact, that's a good idea for a website that I'll consider making. Anyhow, the level design looked good to the eye but made zero sense: Two titans (who at that point you have no idea what they are) are frozen in place as one struck the other with a lance. You need to find a battery to plug into the lance so that it turns on and pierces the chest of the other titan so that you can slide through the wall and fall behind the titan in a place looking like Bowser's castle, with spinning flaming chains, and other silly distractions and traps. What the hell were they thinking when designing this level? They were simply trying to make it "look cool" with no consideration of whether it makes sense, if it is fun or even what game they are designing levels for. The graphics were great. The music was fine, though Mick did a much better job in Doom 2016 in my opinion. The gameplay was garbage, focusing on quantity over quality, with the challenge being mainly to figure out the correct sequence of enemies to kill and with what weapon and on what weak spot instead of just going with the flow like in 2016. You used to have a set of amazing tools to have fun with, now you have an array of puzzle pieces to be selected in the right order when they aren't cooling down or out of ammo. And, maybe worse of all, the story and the protagonist would only need to be slightly worse in order to reach the point where they are so bad that they become good again. Unfortunately, they didn't reach that point, so they are both left being just shit. The protagonist, who I refuse to call Doomguy or Doomslayer as he is clearly a different character, since he can't even punch as hard or move as fast as the 2016 Doomslayer or even the original Doomguy unless he has his abilities charged and not in a cooldown or whatever. So anyway, that new boy bent the knee to some king almost at the start of the game. Absolute Haram. Meanwhile, the Doomslayer in 2016 was smashing screens on the ground because he couldn't bother to listen to Hayden's attempts to provide exposition. This new boy is some Game-of-Thrones-nerd's wet dream and does not belong in a series like Doom. Superior alternative: Doom (2016)

Red Dead Redemption 2 Online

An empty, boring hub-world that you very slowly traverse, going from mini-game to mini-game, because that is all Rockstar knows how to do nowadays. Superior alternative: Any Civcraft-style Minecraft server.

GTA V Online

See Red Dead Redemption 2.

Skyrim

This is still one of the best games I've ever played, but Bethesda deserves a ton of shitting for still having game-breaking bugs even after re-releasing the game countless times and for not providing a save-fixing service for console players, not even as a paid service. My opinion about Skyrim is oscillating between 0/10 and 11/10 fast enough to be audible to humans. Superior alternative: Skyrim, when it works.

The Witcher 3

Also buggy, but also not as good as Skyrim. The Witcher 2 actually kept me playing a bit longer then 3 before I went back to Skyrim. I may finish this someday. It's just not high in my priorities based on what I saw after a few hours of playing. Superior alternative: Skyrim

Stardew Valley

I liked fishing in this game. And that was all I liked. Everything else I hated. Farming was tedious. I couldn't care less about the villagers. I constantly wanted to take my protagonist back to his previous career. Finally, I got extremely pissed during the egg hunt because it would not let me go fishing. Overall, it has this mildly puke-inducing Nintendo-goodie feeling that I cannot stand in games. Superior alternative: Rimworld in peaceful difficulty.

Undertale

Yeah, ha-ha, genuinely smart gimmicks all over the game but it was uninteresting and had boring gameplay, mediocre graphics, and an annoying cast of characters. Some amazing music though. Superior alternative: Browsing /b/ for 20 minutes and then going out with a real person.

Bloodborne

Other than the amazing graphic design and atmosphere, this was a disaster for me, one that I thankfully didn't pay for. Not only do I not like the idea of souls-like games in general, because I get precisely zero kicks out of overcoming tedious, hard, trial-and-error challenges, but Bloodborne also seemed unpolished to me. I didn't bother to go past the first two fights or so. Superior alternative: Diablo 2 or 3.

Monster Hunter Generations

Horrible world design with invisible walls all over. Practically unplayable without looking up stuff in the wiki unless you luck out. Needlessly complex mechanics. No feeling of control, it was like I was simply SMSing my character what to do next and the character would sometimes do it while some other times maybe he didn't have time to really check his SMSes right then and there. Basically take the cheap, inorganic boss fight mechanics that I keep complaining about and make a crappy game around them and only them. Superior alternative: Terraria

Rainbow Six Siege

Pretty boring. I played it with friends too, so I had someone to talk to while I was down. Still, I got bored by how little action this game had. The action is good but so little as a ratio of time spent on the game! And I wasn't even half bad - I did fine after some rounds - but the only reason that I didn't uninstall it after a few round was that I had friends in my party. I played for a few days, then dropped it for something else. Superior alternative: TF2 or Overwatch.

BF2042

This is not really a hot take, as this is, after all, widely considered one of the worst Battlefield games. First of all, it does not feel like BF. Specialists? Really? Are they copying Rainbow Six? And the cringe every time they open their mouths is truly unbearable. At least EA reduced it a bit in the latest patches. I should have guessed the series would eventually become a cringe-fest from back when they started selling ridiculous atmosphere-destroying cosmetics in BF5. Superior alternative: BF2142

Baldur's Gate 1

I did not play this back in the day. I got this and BG2 after I liked (though not loved) playing BG3. I still have not tried BG2, but BG1 was unplayable for me. At this point you'd have to pay me quite a lot to play this. It is basically a save-load simulator: Tons of trial and error, and I mean tons. Easy to die. Needlessly complex mechanics. Random deaths galore. I played for some hours and got rid of it. I don't care how innovative this was when it came out, it is complete garbage by today's standards, and there are tons of other games from the same year that are still perfectly enjoyable even today. Maybe BG2 is better, but I doubt it, we'll see. Superior alternative: Divinity: Original Sin II

GTA Vice City

More punishing than San Andreas. Again, I don't care how innovative these games were. There is no enjoyment to be had by playing this today for the first time. If you are nostalgic about it, then fine. But there are tons of other games from the same era that are excellent even by today's standards. FFS, the way-older GTA 2 is much better and super fun to play, even today. Superior Alternative: GTA 2

Mario Odyssey 

Nice controls and graphics but I couldn't find anything interesting in this game. It felt slow, unrewarding, and pointless. Superior Alternative: Super Mario Bros.

It Takes Two

I never finished this game. Developers seem to forget something: Players have the option to stop playing. If you make your story so shit that the "best ending" is to actually stop playing, some players with brain cells will actually do so. We are not bound to the couch, nor did we run out of other games to play. The moment the psychopathic elephant scene was finished, we decided that we do not want our characters to succeed. We were immediately pitted against them. Any willingness to help them get back to their daughter was completely eradicated. So I finished the game, with the actual good ending, by uninstalling it so that they never go back to their daughter. I bought this game because I liked "A Way Out" but I'm not buying any more of this tone-deaf moron's creations. This game really did make me feel like I was scammed out of my money. Superior alternative: Unravel Two

Heavy Rain

Annoying controls, annoying camera, extremely boring story - gameplay slow enough to be played by a tree. I dropped it midway, read the rest of the story on Wikipedia and I am thankful I didn't continue playing it. I loved Beyond Two Souls, but Heavy Rain was just unbearable in every aspect. Superior alternative: Beyond Two Souls

Another World / Out Of This World

One of the worst "games" I've ever played. I get it: amazing graphics for the era, but it, and other similar games like Dragon's Lair, are basically walking simulators with the difficulty turned to "impossible" so that you have to fail at every scene a few times until you find what to do, each time having to replay previous scenes. I don't understand why "games" like this even get anniversary editions. There's zero fun to be had there unless you are a masochist or have been completely blinded by nostalgia. Just go watch the whole thing on YouTube. Superior alternative: Another World walkthrough videos.

Dwarf Fortress

A shitty game with great ideas that served as the basis for so many great games. I would not recommend it to anyone, not even the new graphical version. I just cannot picture any person I know that would enjoy this. There is no sound, alerts don't interrupt by default the game even if they are important (have fun changing the default behavior by going through a list of hundreds of alerts choosing which ones you want to interrupt the game when you don't know what half of them even are until you lose a game for missing them), the game runs too quickly by default. All of these contribute to having no clue about what is going on around your fortress. Top that off with the slowest saves ever so that you cannot save-scum by saving every day and you are basically forced to eat shit whenever the game feels like it. It takes an inordinate amount of reading wikis and forums to find out how to do the most basic things. Nothing is intuitive. Nothing. Every single serious choice in the UI is made in the most awkward way. I really wanted to like this. It seems like there is a gem behind all the trash, but I don't have enough time to waste trying to find the gem only to be tricked by not knowing something and losing it again. Games take a long time to restart too, it's not like this piece of crap gives you a quick way to learn from your mistakes. I also strongly believe that the game will become even worse in the future as more features are added to it when what it needs is 1 metric ton of polishing and a major redesign of the interface, which becomes harder and harder as more bloat is added. Superior alternative: Rimworld

Do you disagree with me? Leave a comment and I guarantee that it will be ignored because you are objectively wrong.

Monday, November 20, 2023

Aperito v1.5.5

     Version 1.5.5 of Aperito allows the load command to read from pipes, opening the way on Linux to read from sets of files at once using the <(cat *.asd) construction. It also fixes a few mistakes in the help page.

 The latest version can be downloaded from here, and the signature from here. Source code is included in the zipfile.

Monday, April 17, 2023

Aperito v1.5.4

     Version 1.5.4 of Aperito fixes some potential multi-threading issues.

 The latest version can be downloaded from here, and the signature from here. Source code is included in the zipfile.

Wednesday, February 22, 2023

Failure track analysis

The Delve expansion for Ironsworn describes an optional mechanic that rewards players for their rolls that result in a miss. Every time they miss, they add 1 tick (or 3 ticks if the roll was a progress roll, but I'll completely ignore these for this analysis) to a failure track. Every 4 ticks constitute a full mark and the failure track can have up to 10 marks. Once the track has 6 marks (in other words after 24 miss-rolls) the player can choose to "learn from their mistakes". This move is resolved by a roll and resets the fail track to zero ticks again. The resolution is a simple progress roll against the fail track where a strong hit awards 3 XP, a weak hit awards 2XP and a fail rewards 1XP. Additionally a strong hit will let the player discard an asset for more XP (which I will ignore for this analysis) and a weak hit will narratively force the player to learn the wrong lesson from their failures which is in my opinion a hefty penalty if role-played correctly.

I did a small analysis of the 5 different points when a player can trigger the "learn from your mistakes" move:

Learn from your mistakes when you have this many marksMiss-rolls to gain 1XPMiss-rolls to have to learn the wrong lesson
61296
712.73175
813.33355.6
913.85900
1014.294000

Triggering the "learn from your mistakes" move as frequently as possible gives more XP overall but the difference is minor: less than 20% extra XP compared to waiting for a full failure trackbefore you trigger. At the same time frequent triggers will result in a 4066% increase in how often you'll be learning the wrong lesson compared to waiting for a full failure track before triggering!

If someone wants to verify the code that produced the above table, I wrote it on a casio fx-3650P II just for fun so I can't exactly upload the code but here's a rough dump:

For 6->M To 10:
0->X:
0->Y:
1->A:
Lbl 1:
1->B:
Lbl 2:
(M>A)+(M>B)+1+X->X:
(M<=A)+(M<=B)=2=>Y+1->Y:
B+1->B:
B<=10=>Goto 2:
A+1->A:
A<=10=>Goto 1:
M[output triangle symbol]
M*400/X[output triangle symbol]
M*400*Y[output triangle symbol]
Next

Wednesday, January 25, 2023

Aperito v1.5.3

    Version 1.5.3 of Aperito doesn't show the message about applying permissions to directories when there are none to apply. It also stops affecting the modification times of directories in the source tree (those would change as files were moved out of them). A bug that could stop read-only files from being moved has been fixed as well as a potential crash when "keep shallow" was used and a few bugs regarding the preservation of mofication times in directories on the target tree were squashed. Finally the copy commands will no longer overwrite files in the target directory, not even if you use the nonstop command because that's not what nonstop is supposed to be doing. Finally Aperito now has an end2end test suit (mind you, I have not yet tested the test framework on anything but Linux) which I'll keep expanding to see if I've missed any cases. Upgrading is highly recommended.

 The latest version can be downloaded from here, and the signature from here. Source code is included in the zipfile.

Wednesday, January 18, 2023

Aperito v1.5.2

   Version 1.5.2 of Aperito fixes a problem I encountered when it had to copy or move files into a write protected directory. Directory permissions are now applied at the end of the process, after all files have been copied or moved.

 The latest version can be downloaded from here, and the signature from here. Source code included in the zipfile.

Thursday, January 5, 2023

Aperito v1.5.1

  Version 1.5.1 of Aperito has some more examples in its help and is open source for the first time under GNU GPLv3. The source code and my build script is in the zipfile.

 The latest version can be downloaded from here, and the signature from here.

Popular Posts