Author Topic: wut specturr'z playing  (Read 31420 times)

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #15 on: July 22, 2019, 10:02:06 AM »
I downloaded it years ago because of this video. RIP one of the better lets players on the internet, probably got a life or something.

Lives are overrated. id took them out of Doom, after all. :P

Gotta say, that mod looks pretty legit. I'm going to have to check that out.

And yeah, it is nice having an LPer who has a decent sounding mic setup and doesn't spend half of the video SCREAMING. IN. YOUR. EAR. I also like how he took the time to prep his videos for easy YouTube consumption and didn't just dump a bunch of massive 4 hour Twitch VODs on his channel. It's a shame he stopped.

Oh, yeah definitely need a setup if there's a chance of getting a WR.

I mean, in a pinch I could just get a USB 3 HDMI capture device, steal the webcam from my OctoPrint rig, hook up my mic, and call it a day. My PC is in the same room. It wouldn't be ideal, but it would work. :)
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #16 on: August 15, 2019, 03:16:40 PM »
I managed to nail the Zero Press on Doom 2 MAP15 last night:


It took a while to figure out the exact position to hit the switch, but after working that out it's surprisingly easy to do and fairly consistent.

The way you're supposed to do this is to fight through the yellow key area, which involves going through the inside area, hitting a switch to activate some stairs, then crawling up to the battlements and pressing a switch to open a door on the first floor, then collecting the blue key from inside the door. Along the way are some awkwardly placed enemies that tend to get in your way and make it difficult to do the necessary backtracking to get the blue key. It's slow enough that it's faster, easier, and more consistent to open up the secret exit and go through the first secret level.

The Zero Press (discovered by the runner Zero Master) takes advantage of several quirks of the Doom engine to hit the switch from the ground level.

First of all, height is not accounted for when checking for activation. If a switch is 10000 units above your head you can still press it as long as it's within your activation range. Second, two-sided linedefs do not block activation, making it trivial to hit switches through a ledge if they're positioned right (hitting the exit switch in E2M2 in the slime and activating the secret exit switch on E3M6 are two popular examples of this in action). The thing that's initially tricky about the MAP15 press, I suspect, is the distance between the player position outside of the "castle" area and the switch itself. The positioning is precise, but there's enough clues on the texture to help you line it up.

Basically, you go to the far wall, turn right, go right around the middle, find the fairly noticeable texture seam and move 3.5 texels to the right of that. Face the wall at such an angle that you move very slowly to the left, hold forward, and mash spacebar until you hear the switch press sound, then run into the castle, pick up the blue key, and complete the level normally.

Feels good, man.
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: wut specturr'z playing
« Reply #17 on: August 16, 2019, 02:57:01 AM »
I love that there's still so much complexity in a seemingly fairly simple FPS when it comes to speedrunning. Doom is one hell of a game.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #18 on: August 16, 2019, 10:34:09 AM »
Indeed! I think the best part about it is that a lot of these little tricks is that most of them are a result of the game being able to run on a 386/486. :p
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #19 on: August 26, 2019, 08:45:47 AM »
So I'm going to be venturing over to the Madison, WI, area to run Doom II (Ultra-Violence), Quake (Easy), and Hyrule Warriors: Definitive Edition (Main Quest) at Super Stigma Slam (a charity gaming marathon benefiting Take This) in early October this year. They're not really going to be speedruns, per say; more like a faster-than-average semi-casual sort of thing.

I'll create a topic on this when I have more specific info to share.
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #20 on: October 21, 2019, 01:41:36 PM »
Played a bunch of Hyrule Warriors this weekend (roughly 12.5 hours, judging from the iOS Screen Time feature (I always have a reference guide up on my iPad while I play, not to mention some sort of music app)) and cleaned out a decent chunk of the Master Mode Adventure Map (grabbing a bunch of level 3 weapons during my rampage), as well as a few squares on the Master Mode Wind Waker map.

In addition to that, I also finished clearing the Legend Mode stages on Hard and snagged all of the hard mode Skulltulas. There's one thing I never have to do ever again. I do need to pick up some heart containers/pieces from the legend mode maps and finish clearing them on Hero mode (shouldn't be a problem, seeing as Link is level 154 now).

Oh, Link also got his third row of hearts, giving him a total of 41. Not at all excessive.
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #21 on: January 22, 2020, 08:54:32 AM »
Renamed this thread because I'm great at sticking with specific games and goals. \o/

So I'm starting to slowly get back into Monster Hunter World. I have a couple of people to consistently play with, so that should make it a bit easier to get back into it.

Additionally, I just started playing through the current Path of Exile league (with SSF—solo self-found—enabled, per my usual playstyle). I ended up changing things up a bit and rolling a marauder (most of my other toons are ranged), fittingly named ANGERYLAD.

I can't say that the metamorph league is really doing much for me, at least not where I'm at right now (just starting Act 3). The overall gist of it is that you collect parts from creatures in the world and combine them into a sort of amalgamation. The metamorph creature acquires different traits from the parts that you give it, and the higher quality the parts are (that is, the rarity of the creatures that they come from) the more damage the metamorph does and the better the rewards are.

The rewards haven't been terrible, but I was kind of hoping that the parts would last a bit longer, making farming high quality parts across multiple zones more viable. However, it seems like the parts are only viable within a single area and must be used before you change zones, so if you aren't lucky enough to get parts from rare spawns you're going to be stuck with common-quality parts. Things might improve later, so I'm reserving my final judgment for now.

I've managed to keep a decent balance between offensive and defensive power at this point, so hopefully I can keep that up. I have a nasty habit of making glass cannon melee characters in ARPGs, and that usually ends in tears (unless the game is piss easy like Diablo III).
"This is a machine for making cows."

vladgd

  • Hero Member
  • *****
  • Posts: 635
    • View Profile
Re: wut specturr'z playing
« Reply #22 on: January 23, 2020, 11:25:11 PM »
How far are you in dat monster hunter? Do remember, game starts at high rank. Would totally play with if cross compatable multiplayer, but nope.  I got half way through iceborne waiting for a friend to play with, but he ditched out on me so I stopped.

I did notice PoE had some big update, maybe enough to make me look into playing it past act2 without getting bored? maybe? How is that update anyway?


Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #23 on: January 24, 2020, 10:14:52 AM »
I made it to the early stages of high rank (currently on nergi) before I got distracted and fell out of it. At this point I'm basically using the stronger low-rank and weaker high-rank monsters as a refresher before I start making that push toward master rank. And yeah, it's a shame they don't have some sort of cross-compatible multiplayer system. Then again, even if they did the PC version is something like 6 months behind the console versions.

As far as PoE is concerned, I guess it depends on when you've last played. The game doesn't feel as slow as it did when I first started playing it, and I don't think that's necessarily due to familiarity. It feels like the game gives you more skill gems earlier on so that you can experiment with them from an earlier time and aren't relegated to auto-attacking everything for the first act. In addition to that, they've integrated mechanics from several of the previous leagues into the mainline game, giving you a bit more to do in early-game.

There's also the distinct possibility that I'm full of shit and the game just clicked for me at some point, but I can safely say that I'm enjoying it a lot more now than I did a couple of years ago.
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: wut specturr'z playing
« Reply #24 on: January 24, 2020, 06:40:30 PM »
The variety in gems has gotten better. Still, generally there aren't nearly as many good leveling skills as there are endgame viable ones due to many of them needing lots of scaling to be any good. They almost always add a few gems per season and tweak some of them too.

They are always considering whether to keep a mechanic from a league and by this point the game has grown massively compared to a few years ago.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #25 on: February 20, 2020, 12:48:06 PM »
This doesn't really relate to playing games, per se, (though I am going to need to test it :P) but I've been in the process of porting MegaZeux, a mid-90s game creation system, to the PS Vita:



This was kind of an interesting project. On the surface it should be easy since the Vita has a reasonably complete SDL2 implementation (which MZX supports) and, like the PS3 and PS4, use a BSD-derived OS. Since MZX uses POSIX calls for file management you'd think you could just configure the package then build and package it with the Vita SDK toolchain. Noooooope.

Vita's OS lacks one crucal feature: the ability to traverse directories in userspace. This sounds like an odd omission, but when you think about it, it's not really something that a packaged game should need to do. MZX, however, does need this feature. Luckily, functions that return file listings will still identify directories as expected, otherwise it would be impossible to actually do anything about it.

What I ultimately did was intercept all of the commands that open files by directory or change directories and writing my own reasonably-POSIX-compliant (they comply to the description given in the Linux man pages, anyway) functions that handle tracking the current directory and changing the directory, including throwing the expected errors when an invalid path is given. Here's a link to the black magic itself:

https://github.com/Spectere/megazeux/blob/viva_la_vita/arch/psvita/vitaio.c

For the sake of simplicity it uses some linked list code I wrote for another project to track the directory chain. That also gives it a bit of inherit safety, as the list implementation's delete routines won't do anything if the list is empty, preventing ".." from root from working. This also acts as a sandbox, preventing MZX from accessing files outside of its root directory. The implementation is also OS-agnostic. I was able to use it on a Linux build with zero issues. :P

After all of that was written, all it took to replace the default functions was a bit of #define magic:

Code: [Select]
#define chdir(path) vitaio_chdir(path)
#define fopen(pathname, mode) vitaio_fopen(pathname, mode)
#define getcwd(buf, size) vitaio_getcwd(buf, size)
#define mkdir(path, mode) vitaio_mkdir(path, mode)
#define opendir(name) vitaio_opendir(name)
#define rmdir(path) vitaio_rmdir(path)
#define stat(path, buf) vitaio_stat(path, buf)

Hacky, yes, but it allowed everything to work without me having to #ifdef off every single I/O call in the MZX source.

There were some other considerations that needed to be made. setvbuf doesn't seem to do anything on the Vita, for example, which would cause saved games to take 20+ seconds to save on a good day. Since the Vita has plenty of memory, I changed it to use a memory buffer instead, then dump the entire file in one pass. Now it takes less than a second.

The Vita also has the ability to use a Bluetooth keyboard, making it the only embedded platform that can feasibly use MZX's editor. The issue there is that the Vita's SDL2 implementation doesn't properly pass Unicode characters to the target program. I ended up borrowing some code from the 3DS build's touchscreen keyboard implementation to translate the scancodes into Unicode. It isn't perfect, but it's a workable solution for now.

Lachesis (she posts on here as Alice once in a while) gave me a ton of pointers and assistance on the non-Vita stuff. Definitely couldn't have pulled this off so quickly without her help!

The next thing I want to take a crack at is using the front/rear touchpads to emulate a trackpad/mouse, since MZX can take advantage of those as well. We'll see how that goes.
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #26 on: February 24, 2020, 07:09:31 AM »
I decided to start playing through AI: The Somnium Files yesterday. Woo, that's been a bit of a ride so far. 11 hours in and I'm terribly confused. What I'm trying to say is that it's what you'd expect from a game by Kotaro Uchikoshi (and, if you know my opinion on the Zero Escape series you'll know that that's a very good thing).

It's not something that I can really say much about without spoiling the plot, so consider this to be a proverbial "checking of the box." I'll post more about my thoughts on it after I've beaten it.
"This is a machine for making cows."

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #27 on: March 01, 2020, 04:22:36 PM »
I decided to start playing through AI: The Somnium Files yesterday.

Just beat it. Took roughly 26 hours—28 with the occasional reload to get some collectibles. I still have some more to grab, though I'll probably use a guide to do it.

I absolutely loved it. Compared to Zero Escape there are fewer branches in the story but they're all unique. Some people complained about crashes, but I haven't experienced a single crash during the entirety of my playtime.

Again, I can't really go into specifics without spoiling the plot, but it was a satisfying run. Things start to naturally click as you progress through the story.

How would I compare it to the Zero Escape series? Hmm. Hard to say, honestly. In AI the roster of primary characters is smaller, so I'd say you get to know individuals a bit better. The puzzle segments (rather, Somnium sequences in AI) definitely aren't as engaging as the puzzle segments in ZE, though I feel that the character interactions generally feel a better written. The story also has a defined beginning and ending. No sequel bait here! It was gripping to the point where I spent around twelve hours playing it yesterday, then I flopped out of bed this morning, turned on my computer, and finished the rest of it in another five.

The graphics and animations are nothing to write home about, but that's fairly common in this genre. They generally compliment the story well, and aside from a few little things that push my buttons (like bad mipmapping on road surfaces) nothing was really too egregious.

As you can imagine, I highly recommend this if you're a fan of VNs.
"This is a machine for making cows."

vladgd

  • Hero Member
  • *****
  • Posts: 635
    • View Profile
Re: wut specturr'z playing
« Reply #28 on: March 03, 2020, 02:52:03 PM »
As a non coder, how intuitive is it to assess a problem, dig in there, and fix it? Looking from the outside in, looks like witchcraft to me.

Still, cool stuff. Been looking at getting a vita mostly for digital downloads of psp stuff, assuming that's available on there? Wouldn't mind sinking my teeth into the psp ports of persona 1 and 3. Looking at ebay, prices seem kinda high for what seems to be a low demand irrelevant system. If sony got their shit together and just let you use the psp/ps3/psvita/pstv part of the ps store on the ps4 I wouldn't have any issues, but they keep em separate for some reason.

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: wut specturr'z playing
« Reply #29 on: March 03, 2020, 05:55:38 PM »
A lot of that depends on your level of experience with the code in question, as well as the platform you're targeting. In the case of MegaZeux I have a reasonable understanding of the platform code due to refactoring (reorganizing, basically) and extending the clipboard handling code, so I had a pretty good idea of where to look when I started digging things apart.

As far as getting to that point, it's like taking something apart. Whenever you dive into someone else's code you're always going to be at a disadvantage. Like artists, every programmer has their own ideas on the best way to accomplish certain goals. One of the methods that I tend to use is to determine which section I want to change and search through the code for references to that particular thing. From there I have a few options—I can tweak certain values to see if I can change the result of something, place debug print statements throughout the code to see what happens in certain conditions, or run the thing through a debugger and have it stop at certain lines to observe the contents of variables. Unfortunately, the best way to do this depends on your knowledge of the code and the exact thing that you're trying to accomplish, so there's no real one size fits all solution.

To give you an idea of how I approached the Vita port, I first started off by installing the development tools and making sure that I could build and run Vita homebrew. You always want to use sample code with your tools, not run something that someone else built. You want to be able to generate the file on your PC, send it to the target, and run it from there. This allows you to make sure that your toolchain (the set of tools that convert readable source code to machine code) is sane (functional) and that the packaging tools (that is, the programs that take the toolchain's output and converts it into something you can install on the system) are functional.

After verifying that, I took a look at the capabilities of the system and the available libraries. MegaZeux's preferred graphics, audio, and input library is SDL 2.0, with SDL 1.3 being a good fallback. It has several options for playing back tracker music (libxmp, libmodplug, and mikmod), Vorbis files (libvorbis and tremor), and also supports RAD (Reality Adlib Tracker).

The Vita SDK supports SDL 2.0, which basically gave me audio, video, and input for free. The system is a reasonably powerful quad-core ARM processor. I know that the 3DS port of MegaZeux could handle RAD playback, and since the Vita is faster I was reasonably sure it could as well (and it does). The CPU supports floating point instructions, so I could use libvorbis instead of tremor. Additionally, it has plenty of memory (512MB) so it's nowhere near as limited as many of the other portables that it supports.

So, the next step is to just try building it. The original build I made was fairly minimal, as I wanted to be able to just run MegaZeux and have something display on the screen. I built it with no audio support, targeting SDL 2.0. That's when I ran into that little issue with the Vita's inability to traverse directories. The game won't even compile since those functions simply don't exist in the Vita's userspace APIs. I rewrote them, then used some C trickery to remap those functions to my custom ones, and was able to come up with a working build.

It worked. I was able to load a world. I didn't have audio, so I couldn't hear anything, and I didn't have working input so I couldn't actually play the game, but I could see the title sequence doing its thing. From there, it was just a matter of making an organized list and running through the required features point by point, and honestly it became a bit of a blur after a while. This is largely where the collaboration aspect came up, too. Lachesis is the lead developer of MegaZeux and knows the source like the back of her hand, so whenever I'd run into trouble she would advise me where to look and I'd generally work out a solution. Collaborating and working off of another dev's experience is pretty key with stuff like that.

A huge part of the "heavy development" phase is just staying organized. Figure out the problems, prioritize them, tackle them one by one, and test the shit out of everything. It's much easier to handle a large problem if you take care of it step by step.

Also, yeah, everything Vita-related went up in value ever since the systems were busted wide open. I was planning to get a PSTV to verify compatibility but it ended up being way too expensive for what it was, like rivaling the PS4 in price. :|
"This is a machine for making cows."