General Ramblings comments edit

Been playing Soul Calibur III for several weeks now trying to beat Chronicle 20 in the “Chronicles of the Sword” mode. The last guy is Strife, a level 50-something knight who kills you in about three hits.

I entered that stage as a level 45 character. By the time I beat Strife, I was a level 89. Stu and I had fought this guy so many times, we were calling 10 runs through the level “a unit,” and we had put in several “units.”

The ironic thing is that it wasn’t my level 89 character that beat Strife, but a level 40 character that I had just created. Here’s what you do:

Create either a Sword Master or a Sage character. Play enough battles to unlock the Soul Calibur weapon for the Chinese Blade discipline and equip your character with that. When you fight Strife, just mash on the A button (horizontal attack). Don’t hit anything else. If he gets a shot in, just stand up and keep mashing A. The trick is that the Chinese Blade Soul Calibur is fast enough to hit Strife and not let him get a strike in. Even if he blocks, eventually he’ll let down his guard and try to hit you, but you’ll be too busy smacking him with Soul Calibur.

It’s a sort of slow process since each strike only takes a little sliver of his health away, but that’s the way to go. (Interestingly enough, this strategy works against most of the AI characters. You can get a level 1 guy to beat a level 60 Astaroth just with this technique.)

vs comments edit

I’m working on some funky embedded resource stuff where I’m embedding all nature of files into an assembly so I can extract and use them on the fly later. In doing that, I’ve come across an interesting behavior in Visual Studio.

Say I embed two .resx files. One will be called “Strings.resx” and one will be called “Strings.en.resx” - the former is the default set of resources, the latter is the English-specific resources. I set the Build Action on these to “Embedded Resource” to tell Visual Studio to embed them. That looks like this:

Solution Explorer and Properties Window with an embedded resource in
Visual
Studio

I build my solution and behind the scenes Visual Studio realizes the .resx file is actually resources, does a little resgen action on it for me, and links the generated resources into my assembly. In the build output, I’ll see that I have my primary assembly and a subfolder called “en” that contains an assembly with the English-specific resources I embedded. This is all as expected.

Now rename those files because you don’t want the behind-the-scenes-resgen thing to happen. In fact, let’s call them .js files, just to change things up. Leave them embedded, though.

Solution Explorer and Properties Window with an embedded resource in
Visual
Studio

I expect that when I build my solution, my final assembly will have two files embedded - Strings.en.js and Strings.js. You know what happens?

You still get two assemblies. The primary assembly has Strings.js embedded in it, and the satellite assembly in the “en” subfolder of your build output has the Strings.en.js file embedded in it, renamed to Strings.js. Not at all what I was expecting.

I suppose you might have thought you could infer that, maybe, from the .NET Framework Developer’s Guide on Creating Satellite Assemblies, but they only talk about the creation of .resources files and how that all gets linked into satellites. No one mentioned anything about a pseudo intelligence splitting things up for me.

I’m not sure I like it. For the project I’m working on, it’s really throwing a wrench in the works, I’ll tell you that.