Mitrasphere Adventurers Guild

Just a minor note, the latest update to Mitrasphere has added an Adventurer’s Guild, as seen in every cliché but amusing fantasy anime & game. So much better than just face-grinding mobs, there’s a task board of mobs to face-grind (and other tasks sometimes, probably not including walking dogs).

I don’t necessarily play a lot every day, but it’s definitely building into a longer-term game.

What I’m Watching: Fear Street

So, I’d heard enough chatter about Fear Street to wtach it. New slasher flicks are rare enough. What I didn’t realize is these are based on R.L.Stine books, which I have never read (obviously). So for the first two movies, 1994 and 1978, I was baffled. Are these comedy horror? There’s almost no jokes; only in the end of the third film does it get funny. But there’s barely anything more than a few jump scares and bad fake blood in dark sets. While there’s some borderline teenage sex and drugs, it’s PG-13 even if it says “R”.

The first one’s not bad at 1994 period, but I assure you Nine Inch Nails was not played on mall PAs, and the black girl dating a very generic-brand white cheerleader would not have passed without comment in the time, nor would Nurse Betty (who I’ll note is a straight man playing a gay crossdresser/transwoman like Klinger, because there were apparently no gay/trans actors to take the role? This ought to be as taboo as putting honkies in blackface). If you’re gonna do period, you might at least milk the period’s tail-end racism and homophobia for some drama.

The unstoppable killers each have some unique character, but we never really find out much about several of them, and I’d much rather hear that. Long flashbacks to why they were chosen and what they did; instead we get a few quick-cut repeats of the same crimes. Everyone’s dumb in this. There’s one gross-out kill that actually startled me, telegraphed for like a minute and I still didn’t think they’d do it. But otherwise it’s the dullest, dumbest thing I’ve seen, there’s a half-assed explanation for the killers, a story about a witch which is driven into the ground so hard that it’s obviously bait.

After credits and at the start of each segment, there’s a tediously long spoiler and recap, as if they weren’t meant to come out at the same time. According to wiki, they started development in 2015, wrapped shooting in 2019(!), and then it took until this month to release them.

The summer camp story in 1978 is much better, focusing on “Ziggy” the tomboy redhead, her square sister, a punk rock girl, stoner dude, and about 30 absolutely indistinguishable honkie automaton clones blundering about. The problem is one of those is the killer, and another is… another problem… and I couldn’t pick them out of a lineup. But Ziggy and punk rock girl are pretty tough, the party sticks together until they stupidly split up and then terrible things happen, but we get another different bullshit explanation for the killers.

Third film is two films. 1666 fills in the Pilgrim Times theme park setting, but does the American Horror Story hack trick of reusing actors from the present as their ancestors, except Deena inexplicably plays someone who won’t have any descendants, least of all her. This is not The VVitch. This is tedious RenFaire play-acting with pig shit, co-ed dances in the woods, and an old wise woman with a copy of the Necronomicon. OH NO don’t read from the scary magic book, not-Deena, we don’t know what the consequences are. Then it’s back to reenacting Salem but with actual black magic so someone really did need to be hung & burned.

The final half, the comedy writers finally got their turn, and it becomes goofing off in a mall lit with blacklights, shooting super-soakers at killers, a lot of Scooby Doo hijinks, and an ending that doesn’t really make sense, permanently stop the killers, or provide any closure. But everyone who lives gets a cameo so that’s nice.

There’s a couple moments where R.L.Stine’s books are used as props in the show, and not respectfully. Stephen King is mentioned much more seriously.

These aren’t even as good as the worst Friday the 13th movies, let alone any actual horror movie, but I was amused enough to stay awake thru three movies. If you’re normally scared of horror movies, these are like tiny baby stories which won’t upset you much.

★★½☆☆

FreePascal Building

I went to do a little code maintenance on a couple utils I’d written in FreePascal, and they wouldn’t build. For a couple years, FPC just didn’t work on 64-bit Mac OS, but they finally fixed that. Current fpc 3.2.0 is in MacPorts, I’m not sure what the state of Lazarus is, I quit using it. But the core Pascal is fine for many tasks, and I may do some things in CP/M Pascal when I get my SpecNext (longest wait ever until fall/whenever).

Anyway, the error I got was ld: library not found for -lc and nobody on the Internet has ever posted with that error, that I can find.

And eventually I tracked it down to the SDK not being linked at all. So here’s an updated fpc.cfg which goes in your $PPC_CONFIG_PATH, note the DARWIN section. Also that’s x86_64 only, I need to add an ARM64 branch at some point.

#IFDEF DEBUG
    #WRITE DEBUG
    -gl
    -Crtoi
#ELSE
    # Strip debuginfo
    -O2
    -Xs
#ENDIF

#IFDEF DARWIN
    #WRITE DARWIN
    # use pipes instead of temporary files for assembling
    -ap
    #DEFINE CPUX86_64
    -Px86_64
    -FD/Library/Developer/CommandLineTools/usr/bin
    -XR/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
#ENDIF

#IFDEF OBJFPC
    #WRITE OBJFPC
    -Mobjfpc
#ELSE
    #WRITE FPC
    -Mfpc
#ENDIF

# use ansistrings
-Sh

# stop after warnings
-Sew

# don't show Hint: (5023) Unit "X" not used in Y
-vm5023
# don't show Hint: (5024) Parameter "name" not used
-vm5024

#-Fl/usr/X11/lib
#-Fl/usr/local/lib

-Fu/opt/local/libexec/fpc/lib/fpc/$fpcversion/units/$fpctarget
-Fu/opt/local/libexec/fpc/lib/fpc/$fpcversion/units/$fpctarget/*

And a quick hello world/Unicode tester:

{ hello.pas
    Copyright ©2017 by Mark Damon Hughes. Do what thou wilt.
}

program hello;

uses crt, sysutils;

var
    name: utf8string;
    c: widechar;
    i: integer;
begin
    write('What is your name? ');
    readln(name);
    writeln('Hello, ', name, ' from code page ', stringCodePage(name), '!');
    for i := 1 to length(name) do begin
        c := name[i];
        writeln(i, ': ', c, '(', ord(c), ')');
    end;
    readkey();
end.

fpc -dDEBUG hello.pas produces a couple dozen warnings like: ld: warning: object file (/opt/local/libexec/fpc/lib/fpc/3.2.0/units/x86_64-darwin/rtl/baseunix.o) was built for newer macOS version (11.0) than being linked (10.8) and I’d love it if someone could tell me how to get FPC to tell ld to make that STFU.

But it works:

% ./hello
What is your name? Mark
Hello, Mark from code page 65001!
1: M(77)
2: a(97)
3: r(114)
4: k(107)
5: �(239)
6: �(163)
7: �(191)

Script the Scheme REPL with Expect

Routinely I want to open the Chez Scheme REPL in my code dir and load my standard libraries; I’ve been copy-pasting from a Stickies to get my setup each time, because you can’t easily set a common prelude from command line. Finally solved that.

In ~/bin/scheme-repl, I put:

#!/usr/bin/env expect -f
log_user 0
cd "$env(HOME)/Code/CodeChez"
spawn scheme
expect "> "
send -- "(import (chezscheme) (marklib) (marklib-os)"
send -- "  (only (srfi s1 lists) delete drop-right last)"
send -- "  (only (srfi s13 strings) string-delete string-index string-index-right string-join string-tokenize) )\n"
log_user 1
interact

(make sure to change the path to wherever you keep your Scheme scripts, and whatever imports you like)

Added alias s=scheme-repl to my .zshrc

Now I can just hit one letter for shortcut:

% s
(import (chezscheme) (marklib) (marklib-os)  (only (srfi s1 lists) delete drop
-right last)  (only (srfi s13 strings) string-delete string-index string-index-r
ight string-join string-tokenize) )
> (os-path 'pwd)
"/Users/mdh/Code/CodeChez"
>

You can sort of do the same thing with a Chez boot file, but I wasn’t able to get it to load libraries from thunderchez, even with –libdirs flag, so screw it.

I’d forgotten everything I ever knew about expect, and the only resources online are exact copies of the same “log into ssh with expect!” (which you should never do! Set up SSH keys for Cthulhu’s sake!) tutorial over and over again, so had to read the man page to make even this trivial thing work.

What I’m Playing: Mitrasphere

Another of Crunchyroll’s translated gachapon games. This one’s: All PVE, mostly co-op but you can solo most things, casual/free-to-play friendly (no PVP rankings to keep up with!). The art’s very cute anime paper-doll style (like Another Eden, or Crunchyroll’s previous, DanMachi Memoria Freese), the music’s lovely. You run a single character, the gacha is just for equipment. You use a lot of equipment.

Most of the gameplay loop is:

  • Go to the next quest zone, click on whoever has (!) over their head (mostly Matilda), go thru a series of Normal (easy) story & fight stages. You can pretty much faceroll or hit Auto on these if you even slightly try to keep up your gear. If you see someone with (?) over their head, you haven’t unlocked their quest yet.
  • Go to Events, there’s currently (until 07-11) Canary Eggs (basic mid-tier armor), Pehn (progressively harder werewolf boss fight), Job Coaching (you can switch jobs any time), Skill Training (“impossible” target dummies, for seeing how your build works). At any time there may also be Guerilla (1 hour, 3x a day, progress thru a short boss grind to get gear & upgrade gems), and a Weekly mission (same thing, different gear & upgrades). WHEW!
  • Menu brings up your char, check the “Panel Missions” which are long-term goals, “Missions” which are daily and progression completion rewards, and treasure chest.
  • Now look at your Equipment & Upgrades. Limit break duplicates, upgrade gear levels (uses seeds/gems you’ll be spending the rest of your life grinding), slot anything that’s better than current, auto-slot “support” gear (just adds stats, but your old levelled gear isn’t useless!). The game will instruct you once, so pay attention. I’m constantly fiddling with new gear to add another few points to Power.
  • Repeat forever. And ever. Uh, Screen Time reports I’ve now played 28h55m, and it’s only been out 3 days. Some of that’s idle-grinding, but uh, yeah. This ate my free time, sleep, and probably cut into useful work time.

Once you’ve finished the main quest, which currently ends at a bit of a downer cliffhanger (beachcomber) on Edol Outskirts Night (huh, very much like Another Eden dumping you alone on a beach mid-game…), go back to the start and do Hard mode. This requires you to grind a lot and get your “Power” (total gear & stat scores) up, so I’m currently only about halfway thru Hard mode. Once you get thru Hard mode in a zone, you can do Expert… and currently these just demolish me even in a good co-op group. Another week and I should be capable of clearing Expert.

The boss fights are fun, all but expert are tough but doable with a smart group, or a clusterfuck with a bad group. For fuck’s sake, when you’re in Wave 1/2 of a boss fight, sitting at the “lobby” (10 HP monster that doesn’t attack), WAIT FOR FIVE PLAYERS! Half the time, some jackass pokes the lobby as soon as they get in, and then me and them get murdered by the boss before anyone else can join. OH SWEET CTHULHU I’ve never been so angry at some people. But for every one of those, there’s a group where everyone does their job, the healer heals, the tank holds aggro, the rest of us murder the boss, and there’s that sense of “this is a really good game!” It’s like every MMO wants to be in hours, but this does it in minutes. Even some of the almost-clusterfucks are fun, where there’s 1 or 2 of us last-man-standing, the boss nearly dead, and we flick between heal, attack, and just barely squeak out a victory.

Side tasks:

  • Searching: See at the bottom of the screen if you have 0 to 5/5 sparklies you can collect, they’re scattered in various overworld levels, they give you currency for the in-world shop (no gold here, they trade in pearls and souls!). There’s not much more point to exploring the small levels, jumping and walking up the side pathways is pointless, but they’re pretty.
  • Essence of Battle: Complete each of the jobs in Job Training and you unlock this, a leaderboard where you grind bosses to get trivial stat upgrades (they do add up to something, but not much). It’s mostly meters you can move to 100%, which we all love to do!
  • Social: World chat’s like any MMO public chat. Sometimes informative, sometimes nonsense memes. You can make private rooms, join pre-made groups for taking on hard bosses.
  • Fashion: You keep the appearance of every gear you’ve ever taken, and can use it as a cosmetic item over whatever you’re actually wearing. There’s only 2 genders (but you can switch if you don’t like your first choice), the face & hair options aren’t that much initially, but you can buy new options from the in-world merchant! By rank 10 or so everyone looks pretty distinct, instead of just random pickup gear.
  • Spreadsheets: I’m currently working on a big zone spreadsheet just so I can figure out where to go next, where to grind what I need. Will update this link as I finish Hard mode: Mitrasphere

Almost all of this is perfect for me. I can stat-wonk and grind all day on slightly different gear, but I like having my own unique protagonist. I would like more NPCs for personal stories; this has about 6 NPCs who matter, and they have only a couple small side-quests or personal stories to tell. Another Eden was crazy with hundreds of characters you have to level, find the one spot in the world where their personal quests trigger, etc., I’m paralyzed by choice in it; DanMachi was much more playable where the story-mode only has about two dozen characters, but there’s equally hundreds of in-game character variants you have to level, so that was annoying. A couple dozen NPCs with stories, please. No more.

There’s a big content update coming on 07-05, so now is a good time to get started, then see the update as soon as you finish main quest.