Keytar Update 01/20/2020

Lately I’ve been trying to work on the software side of things a bit lately, while I have this thing assembled (I’m still debating whether to embrace the scuffed look of the casing paint job).

For one thing, I found out that my last SD card image was 6 months old!  I had some things I had figured out since then, but as I tried new things I kept messing up the card, so I took the time to implement everything that I KNEW worked onto one card, while testing out things on a different SD card.  That way I have a safe image of all the things that work, while the other spare cards were considered expendable, and I’d only bother testing new things on them.  Once I was satisfied that I had made sufficient progress, I used Win32DiskImager to copy the image of the good card as a new baseline.

New things implemented in the baseline:

Loading all the files that I had been transferring via USB into the image so I don’t have to reload them

Establishing a new cyberdeck logo as a wallpaper (courtesy of fellow decker BillieRuben on the cyberdeck discord)

Changed screen resolution on the primary display (when I was at MAGfest I couldn’t access the buttons on some menus, which drove me NUTS).

Updating password, because apparently I had left it unlocked.  D’oh!

Implementing SSH on the Pi and installing PuTTY on my laptop.  This change was one of the more important ones!  I’ve been attempting to tweak some of the graphical settings, but every time I get them wrong, the screen on the Pi becomes unusable.  When that happens, that had forced me to swap cards, and start all over again.  It also led to me possibly corrupting cards because of powering the Pi off incorrectly, and having to wipe and reimage the cards before I could use them again.  Now, with SSH implemented, I can remote into the Pi and access the command line perfectly well, allowing me at the very least to be able to power off the Pi correctly, but it has also allowed me to continue trying new things while the display settings were messed up.  This saves a LOT of time (it takes far too long constantly reformatting and reimaging these SD cards).

Working but not baselined:

I’ve been able to VNC to share the Pi screen to an old android phone of mine.  So far that works with RealVNC Viewer on the android phone.

Instructions for VNC on Raspberry Pi

Current trials:

I’m attempting to use VNC to share a side-by-side version of the raspberry pi display onto my android device so I can use it as a head-mounted display (HMD) to simulate a larger monitor to work from on-the-go.  I’m attempting to use a software called VR VNC.  So far I’ve been receiving an error message about incompatible VNC security, and haven’t managed to get it to work.

20200120_203803.jpg

Upcoming tests:

Once I get VR VNC (or some equivalent) to work, I want to change the network interface from being over WiFi (which requires both devices to be on a WiFi network together, not ideal on-the-go) to being through a wired connection over USB.  Someone appears to have written a guide here:  Android Device as Screen for rPi via USB & VNC.  End goal:  wired connection between the keytar and the android headset to simulate a large monitor on-the-go, making using the system much easier… and has added cyberpunk vibes.  If/when I get this to work, I’m gonna get an old-fashioned-looking curly cable for the connection.  It just feels more authentic.

I’d like to add an app for simple-ish pass-through of the camera into an augmented reality display on the headset.  If the lag isn’t too bad, I might be able to wear the headset and still be able to see where I’m going at cons, if I want to fully indulge the costume at times.

Things I’ll have to get back to:

Attempting to switch between HDMI output (for a TV or digital projector) and back to the built-in LCD.  I was attempting to use some code I found to switch automatically, but that kept failing and rendering the screen unusable, hence the need for the SSH above.  Then I remembered the original scripts onboard for switching by command and thought I should make sure that works first.  So far I can get it to switch to HDMI, but not successfully back.  At least, the screen is still covered with some other text when it switches back.  I’ve already fixed one issue, from where the screen kept coming back upside down, but I haven’t gotten back to a useable desktop using this method.  Thankfully the SSH works and allows me to keep poking at it.

Down the line:

Now that I’m trying to add a HMD to the setup, I think I need to make some modifications to the casing.  I think I may either remove the existing branding from the case, and/or add a thematically appropriate sticker to cover it up.  I also may need to manufacture and attach an appropriate connection for hanging it from my belt securely.  I’m not going to want to wear it on my head all the time.

 

Random Updates:

I may or may not post more on these topics later, but I thought I’d go ahead and put these out there.

I reorganized my workspace, mostly by adding a rolling cart to store things on (and still be able to move out of the way when I need that particular floorspace back).  My living room (including the top of my workbench) was getting rather cluttered with projects, materials, etc. and it was becoming unusable.  I’ve now tossed some stuff, and reorganized the rest onto the cart, reclaiming some needed square-footage off of the floor, workbench, and other shelves.  I now even have space to run my laptop out of the way of the bench itself for when I want to SSH into my cyberdeck at the bench.

WorkbenchUpdate.png

I thought the table lamp needed a lampshade, so I designed and printed one inspired by a Japanese style pagoda roof.  The green is a reference back to the Jade Pagoda from Whovian lore.  Right now 3 out of the 4 segments match.  I ran out of material when printing a later version of the design.  I still need to get some more green filament to finish this properly one of these days.  I’ve posted the files on Thingiverse here:

Pagoda Style Lampshade

20200120_204007.jpg

Super MAGfest

I was at Super MAGfest (Music And Gaming festival) this past weekend.  It’s in National Harbor, Maryland the first weekend of January every year.  As you would think from the name, it’s mainly focused around music and gaming… but there is a LOT of cosplaying and associated photography as well.  It’s been recommended to me for years, and this is the second time I’ve gone.

Super MAGfest

Convention Prep:

I did another temporary build of my raspberry pi keytar cyberdeck to show off at the convention.  I loaded it up with 80s music and often had it cycling through songs as I wandered the halls of the convention center.

20200102_232011.jpg

It was extremely gratifying to get stopped in the hallways and/or called over to answer questions about it!  When you’ve worked on something for months, it’s satisfying to find that other people think it’s about as cool as you think it is.

Since I had the cyberdeck running, I decided to do a somewhat subtle cosplay as a Decker/Netrunner/Console Cowboy (depending on your cyberpunk franchise of choice).

20200103_225240.jpg

I picked up some new gear before going to the convention, just to be prepared.  I stopped by REI and picked up a backpack cover (to protect the keytar when I was walking outside through rain) and a 20L water resistant nylon backpack that compresses to be smaller than a soda can (an adventurer’s gotta have a lootbag).  I was so glad I did, as it was raining much of the day Saturday.  I was able to keep my keytar and loot dry, and able to carry a good bit more than my satchel would hold.

20200107_145721.jpg

20200107_145841.jpg

 

 

Convention Shoutouts:

I figure the best way to describe most of my experiences at the convention this year is in the form of shoutouts to some of the awesome people and groups that I met while there.

 

NOVA Labs:

NOVA Labs Main Website

NOVA Makers Meetup Group

I talked to these guys in the convention makerspace they were hosting (which I think is an AWESOME idea).  They have a permanent makerspace facility in Reston, VA.  I had a good conversation with those guys about some things people do with 3D printing, CNC milling, and CNC embroidery.  Also some mutual fandoms.

 

YNOT Cosplay:

YNOT Cosplay Instagram Page

I ran into this guy in the hallway a few times.  He’s a Ghostbusters cosplayer who has done an AMAZING job upgrading his Spirit Halloween proton pack.  I mean, way beyond anything I had dreamed of doing.  The lights and sound are awesome, the proton pack has an overheat sequence inspired by the 2009 video game, and he’s soon even gonna add a smoke dispenser to cap off that sequence.

He also had a really cool custom belt gadget (I can’t remember the name at the moment) with nixie tubes and other interesting electrical bits.

 

Duffy Austin:

DuffyAustin.com

This guy is a tabletop game designer who was having people playtest a new game he’s developing, called Scrap Packs: Deckbuilding RPG.  It’s in the very early development stages, but it’s a highly entertaining game based around the following ideas:
You are handed randomly drawn cards with equipment on them, and THEN you design your RPG character based on the setting the gamemaster sets.

When you name the character you give them a title, which the GM might later use to justify or deny whether you have the ability to do something.

You can combine these cards, along with a currency called Skrap, to make new items, as long as you can give it a name and describe it’s function.  The GM makes the stats on a simplified system to facilitate flexibility.

Plot elements are a combination of what cards come up as the game progresses, and how the gamemaster decides to implement them.

Example of my experience:

I began with a rusty spoon, a ballpoint pen, a feathered cap, an aluminum bucket, and a lucky coin.  We were told that our characters were from a high school, going to a cabin in the woods scenario.  I called my character “Eric the Survivalist,” and declared that he was a guy way too into “surviving” and who nobody trusted with anything dangerous because he might hurt someone with it, so things like guns would be yanked out of his hands by the party.  Hijinks ensued, including stabbing aliens with a rusty spoon (his weapon of choice), and using the skrap mechanics to have the party build a human sized slingshot and launch him at the lead alien while wielding a rocket-powered hammer and screaming “LEEROY JENKINS!”

Fun times.

I look forward to seeing the fully developed version of this game.  It’d be great for when I wanted to get people into RPGs while being rules-lite and not prepping a lot in advance.

 

Justin Wood:

This artist’s work caught my eye.  He had a couple comics in a series called NPCs, where NPC characters are dealing with the aftermath of a new hero’s inciting event (the town burning down) and coping with losing people and rebuilding without the help of the town’s strongest guy.  I’m enjoying it so far, and hope to see more!

I’m having trouble tracking down his webpage or listing, or I’d include it here.

 

Cait May:

This artist makes a lot of RPG related artwork, a lot of which seems to be inspired by The Adventure Zone, Critical Role, and her own D&D adventures, though what initially caught my eye was an Animorphs based painting.  I really like her art style, and she draws some comics, too.

CaitMayArt.com

Irregular Comic

 

Glitch Gear:

These guys had some fun apparel.  I got me another “Trust me I’m an Engineer shirt”… but this time with the Team Fortress 2 Engineer on it.  At this rate I might be collecting these as a theme.  Sadly, they were out of the other shirt I wanted.  Hopefully they’ll restock the “Use More Gun” engineer shirt.

Glitch Gaming Apparel

 

Miscellaneous:

I didn’t end up going to any of the scheduled events I had originally planned to go to, but that’s alright.  I was able to try new games, catch up with friends, meet new people, snag some loot, and see some cool things.  There were museums for the history of video games, performances of music all around the convention center, a large merch floor, and game demos galore (both tabletop and digital).  It was all around a well spent day for me.

Setting up my Wyze v2 Camera

So… I made a trip to Microcenter.  Fully intending to get in and out with just a couple spools of filament since I seemed to be running out of the material I was using for the light staves (Inland’s 1.75mm Silver PLA filament, #notsponsoredbutIusealotofit).

Yeah, that didn’t work out as planned.  I never walk out of Microcenter with just what I intended to buy.  I ended up getting a Wyze v2 camera.  And some purge filament.  And a new shirt…

79492771_10156897558247864_7529573493797552128_o.jpg

Just following the first rule of engineering.

I’ve been considering getting a wifi camera to watch my 3D printer from another room and potentially monitor while out and about.  So I got the Wyze v2, as it was cheap and available.  My only gripe was that it had a built-in microphone that is electronically controlled, and I’ve seen reviews of previous versions of Wyze cameras that spoke of security issues with data leaking and/or being routed suspiciously.  Supposedly this has been fixed somewhat recently.

Video footage I was okay with, because by placing the camera carefully (and putting it on the same light switch controlled circuit that I use to run the printer) I can make sure that the camera only sees what I want it to see.  Most of the time I won’t care if people are watching my 3D printer run.

However, sound isn’t so simple a matter.  Sound bounces around, and I don’t want any private conversations accidentally (???) being streamed. But, I figured, what the heck, it’s a $25 camera, I’ll open it up and cut the microphone out if I have to!  If I mess it up, it’s not like I’ve broken a super expensive camera in the process.

When I got home I found out that other people have the same concerns, and this guy in particular had my back with his instructional video:

Hardware disabling the mic on WyzeCam v2

Turns out all you have to do is disassemble the thing, take a pair of pliers, and pull the microphone off the circuit board.  No cutting or de-soldering required!  I do highly recommend viewing his blog and watching the video, there were a couple tricks I didn’t realize at first.  Wasn’t too hard, but this other video shows the trick to getting the bottom off easier than the other guy’s.

So far so good, the camera now streams video but not sound.  But it only goes to the phone apps.  Dammit.I did a bit of searching around, and found this guide made by a channel called Gross Technology.  It explains exactly how to set it up for streaming to your PC on the same network.  Apparently it’s a new feature for these cameras.

Now I can get it to stream to VLC.Demo of printer monitoring2.pngOne step closer to my goal!  I eventually want to set up a control page where this video feed is streamed so I can view it remotely, whether on my phone or PC, ideally with a connection to the wifi printer controls so I can kill a failing print.  Needs a big red button on it.  That’s going to take a bit more than I plan to work on at the moment.  I just couldn’t resist though, and so far it’s kinda been a one evening fun learning project.

I did take enough time to start setting up the printer’s wifi controls, but that’s probably gonna require a firmware update to get working properly.  And those come with big warnings of DO NOT DO THIS IF YOU CAN’T BE WITHOUT YOUR PRINTER FOR A FEW DAYS.  Given that I’m in the middle of a couple of time sensitive projects with it, I think I’ll wait till they are done.  Maybe make a day of it along with the other maintenance items that need to be done.

In the meantime, I can check on my prints from within VR using Oculus’s desktop viewer without having to pause and duck out of VR.  Eventually I’ll be able to check whether my printer has something on it and send files to it over the wifi.  I hope to streamline the printing and monitoring process as I go along.  

Addendum: I use VLC to watch the video stream for now. Turned out I had been using the Windows store version, which is stripped down and I also couldn’t figure out where it was located. That was only an issue because I was trying to make a direct shortcut to the stream on my desktop. Anyway, I’ve installed the full version of VLC, and now have a shortcut that goes directly to the camera feed, so I don’t have to go through additional steps anymore. Doubleclick to watch the printer. Done.

 

Christmas Presents: Light Staves

This year I decided I wanted to build something for at least part of the Christmas presents for a couple kids in my family.  They are active outdoors, so I figured I’d make them some custom walking sticks.  This… has been an adventure, and I’m not done yet.

And, yes, Gandalf was an inspiration for it, as well as some 3D printed light up “crystals” I saw online.

Premise:  if you print a “crystal” in translucent filament, and point a light into it, the crystal glows in a cool way.  I thought I’d create a 3d printed case for a flashlight to hold such a crystal, epoxy the flashlight into the case, attach it to a broom handle (cut to length), and put a little rubber foot on the bottom (to protect floors).

proof of concept.jpg

Note: This crystal is not my design, I made a new one for the staff.

After talking with some people about flashlights to use, I settled on an old favorite, the mini-maglite.  It’s been updated since when I got one as a kid, to now use an LED and be over 300 lumens.  The simpler shape also allows me to slide bits on, epoxy them, and use the threaded connections of the flashlight’s parts to hold everything together while allowing it to be disassembled for swapping batteries and possibly changing light filters.

minimag.jpg

An upgraded classic.

Other concepts I had considered were shake lights and a flashlight that had a recharging port on the side.  The idea being that in either case you wouldn’t have to be able to open it up to change batteries, but one was unavailable and the other was… 1000 lumens.  A bit much for kids.  Also, on a trail when you want a light source, you want to be able to change your batteries and not rely on having a plug handy or having to shake the staff a bunch (though it would be amusing to watch).

I attempted it first with the 1000 lumen light (I had ordered one for myself) as  practice, and it just got weird as I went on.  I experimented with leaving accessible holes for the button and the charging port on the opposite side.  I added some greeblies for fun, and a shroud on the basis that you wouldn’t want to blind yourself (or hopefully your scout leaders) with it while walking.

76771575_730157074060709_4059131234482126848_nearlyprototype.png75636114_774111729722731_9002262524841689088_n.jpg77401441_476384649657656_350761603878092800_n.png

Various iterations, not all in order.

When the maglites arrived, I started over from scratch, using what I had learned from my earlier experiments.  New crystal, new models, new everything.  As I went on, it felt more and more like making a custom lightsaber.

75576415_2364811317164386_894318869424898048_n.png

74522930_553193332196397_807801108343816192_n.png78635942_2495744473866667_3034818226291736576_n.png

A few intermediate models

So far I’ve built 1 prototype (for testing fit, getting the parents’ opinions).  The greeblies on this version were simpler, and serve more than one purpose.  Yes, they look kinda cool… but every point where you see greeblies is a spot where you need grip when unscrewing parts for changing lenses, batteries, or turning the flashlight on or off.

late prototype off.jpg

late prototype on.jpg

Casing on the workbench.  Each segment can rotate separately.

78614864_2709821205730375_7434568765670424576_n.jpg

Visualization, until I figure out how to screw the thing on

I think it’s looking pretty good.  I still have to figure out the threaded interface to the broom handle that serves as the shaft.  I also plan to print some cross-sectional models to check fit better (you can only see so much from the full model), then running a few of these off, painting them, epoxying the plastic bits to the flashlight, and modifying the length of the handles.

Whew, I hope I haven’t bitten off more than I can chew.

VRFree Gloves: VR Haptic Gloves?

Ever since reading Ready Player One years back, I’ve wanted haptic gloves (gloves that allow you to feel things you touch in VR) or at least a good glove for tracking my hands in VR.  I just saw a reference to these in my youtube viewing, and I’m gonna give my thoughts on them as I’m looking at them.

The main company website is here:

SensoryX

I’m not gonna go everything point by point, they have their own marketing team for that.  I’m just gonna comment on things I find interesting.

So far it appears that they have what is supposed to be a precision tracking system with fingerless gloves to be delivered January 2020 and later, but there is reference to a haptic feedback version.

Let’s see, compatible with Oculus, Gear VR, Vive, Open VR.  Nice.

Price point for the fingerless gloves, CHF 650, which is about $656 US.  Pricey… but possibly doable.  They’ve gotta sell me on it’s capabilities, and importantly, compatibility, before I start throwing around that kind of money again.

Features:

Looks like there is a sensor you add onto your headseat, and a pair of gloves.  I’m not sure if there are any other parts.

Tracking outside my field of view?  Niiiiiiice.  That’s been the number one drawback for the other tracking systems I’ve heard of.

Wireless, definitely a must.

Millimeter-scale precision, a definite plus.  I have often have trouble interacting with objects precisely in VR, and this should help with that.

Rechargeable… eh.  I’m not sure how I feel about that.  Probably helps the form factor of the battery packs, but it’s gonna suck if I forget to recharge and I want to jump into VR with them.  I keep batteries on hand to swap out with my current controllers.

 

Demo videos:

The below videos are mostly the ones posted on their main page, in order.

Video 1

This looks like a promise of capability, but so far I’m not seeing anything that proves capability, just fanciful renderings of what “could be”.  I’m not seeing game titles.  Definitely seems to emulate a version of the Minority Report display.  I’m seeing a lot of promises and cool renders… but nothing proving it works.

Video 2

Ah, an actual demo.  Someone trying to play piano with it.  The person appears to have the music memorized like an actual pianist playing the song… but their movements and playing are suuuuper hesitant.  Then again, they don’t have force feedback in this version of the glove, so I’ll at least give them credit for being able to somewhat play the piano with the gloves.

Video 3

This one is kinda cool.  Used on a gun range.  This is also a rough prototype.  Hopefully they’ll have more later stage prototype videos soon.

Video not on main page

This one followed one of the other ones on Vimeo.  I don’t know why the hell they didn’t use this one as one of their primary demos, as in it’s own way it is much more impressive of a demo than the gun one.  Shows someone picking up virtual balls and tossing them, with the on-screen hand closely following their movements.  Looks like they did include it on the demos page, though.

FlyInside Flight Sim

Okay, this is pretty darn cool.  Flying in a plane, being able to push the controls with the gloves.

 

 

Well, it definitely warrants looking into this further, I just hope to see some videos of a more finished product as I go along.   I really hope I can find somewhere to try these before I make a decision on whether or not to get a pair of them.

Project Update 11/6/19: The Scratchening

The Scratchening:

This last weekend I was attempting to “improve” my keytar case paint job.  There were some blobs of paint from how I had painted the first couple coats.  I thought I was following the advice of some other people (particularly the Cyberdeck discord, yes, it’s a thing).

Apparently I failed.

I sanded the case and parts, and put another coat of paint on… and now there are visible scratches.  I’ll have to sand it again… much more carefully, and then repaint.  I’m not sure how well it will show up in the photos.

20191106_194718

20191106_194800.jpg

20191106_194745.jpg

These are apparently not what was meant by “use coarse, medium, and fine sandpaper”.

20191105_075811.jpg

I’m still annoyed at myself, and per further elaborated advice, I’m going to re-sand the thing again with a series of finer grains of sandpaper on a proper sanding block.  “When you think you’re done, keep sanding.”

 

In other news:

Over the weekend I had to clean/lube/recalibrate my printer.  I had been noticing some layer shifts in some prints, and this was the easiest possibility for me to address.

20191030_080856.jpg

Seems to have worked, as my prints since then have been good so far.  I needed something to test a long print time on something with verticality to make it obvious if these shifts occurred again.  I decided to look for an appropriate Benchy, and someone had my back!

20191103_081219.jpg

Benchy-209 on Thingiverse

Optimus Prime!  As a no assembly required print!  I was in the mood for printing a robot, and thought to look him up.  He transforms!

20191103_183000

20191104_071320.jpg

Optimus Prime on Thingiverse

COM|POST: Quick Project Weekend in Review 10/28/19

So, I’ve apparently got a lot to log this week, which is both awesome (yay, stuff was accomplished!) and annoying (shards, I’ve gotta log all this stuff).

I’ll try got go through it pretty quickly, since it’s multiple projects, and not a lot of focus on any one project.

Keytar Progress:

I finally found time to epoxy and prime my keytar.  I’m gonna need to get some sand paper to smooth out some parts I messed up on (I’m new to spraypainting).  Later I’ll put on another layer (I missed some stuff) or more.  Then it’s back to maybe sanding a bit, stickering, clear coating, and matte coating.  Here are a few images of where things stand now.

Keytar Parts.jpg

Keytar Whole.jpg

I’m still debating how I want to paint these greeblies.  Maybe a metallic color of some kind?

Greeblie1.jpg

Greeblie2.jpg

And here is what I’m thinking of for stickers at the moment.  I’ve got a bunch of other random stickers from a Ready Player One bundle that I’m considering layering under these, but I wonder whether I should do that, or if it might cause problems.  Also might cause these top stickers to not stand out as much.

Proposed Stickers.jpg

 

 

Costume Update:

I’ve been updating my Ghostbusters costume this year.  I’m able to fit into an actual jumpsuit this year, so I got one.  And it’s a bit too big on me (yaaaay for weight loss, but boooo, I was hoping for a good fit).  Still, at least I can wear it!  And I can (kinda) use one web belt instead of needing two.

Anyway, new jumpsuit means I need to sew patches again… or if you are lazy like me (and know that you are gonna get another suit later) you attach them to Velcro for easy transfer.  Still had to sew the name patch onto the Velcro strip that came on the uniform, but just had to attach the adhesive Velcro panels for the logo patch.

Ghostbusters Patch.jpg

I also decided since I suddenly had free time to work on projects that I’d go a bit further, and make the connectors and tube that hang off the left side of the uniform.  3D models were available on Thingiverse here:

Ghostbusters Leg Hose Connector on Thingiverse

I printed that sucker out, ordered some magnets that I superglued in, and attempted to dye the hose.

Hose and connector.jpg

connector-magnets.jpg

The dyeing didn’t go too well, but at least it is slightly greenish, which was kinda my intent.  Yes, per the first movie they are supposed to be yellowish… but I didn’t like the catheter explanation for the tube that the color implies.  I went with the video game option that implies it has something to do with slime, and tried to dye it neon green.  I think I didn’t account for some things in the process.

Also, on the printer right now is the LifeGard II monitor that the Ghostbusters wear on their belts.  Apparently it was a thing firemen would wear that would alert people if the wearer wasn’t moving for an extended period of time.  Mine is nonfunctional, just a shell, but I like adding detail.  I’m having to do it at 80% scale because anything larger wouldn’t fit on my tiny printer.

Lifegard II 3D Model on Thingiverse

 

Random Printing:

I can’t remember why or how I came across this box on Thingiverse, but I found it interesting, so I printed it.

inro-box-closed.jpg

Inro Top.jpg

inro-box-open.jpg

I also thought I could use a screw tray with all the screws I’ve been taking out of the keytar prior to painting, so I printed this one (after running it through the customizer) and used some of my extra magnets on it.  I was too frustrated with superglue at the moment (I forgot that it kinda spews when it’s first opened) so I just have painter’s tape holding it in the slots right now.

Screw Tray.jpg

Customizable Magnetic Screw Tray/Box (with optional lid) on Thingiverse

 

Gaming:

The Outer Worlds came out last Friday.  This game is AMAZING, and I’m already getting ideas of costume props that I would like to either find or create models for.  There are a lot of cool technological bits on the outfits in that game.

I think I may have to do a review of this at some point because I LOVE THIS GAME.  Briefly:  companion social interactions are believable and contribute to the narrative, I’m not constantly chasing weapon upgrades, and I’m not bogged down in junk collection.

Maintained by Adept Ral