|
Looking forward to this LP. OSS is a vastly underrated game and brings a lot of tiny, subtle tweaks that make the game just that bit better. Always a shame to see fans of the series recommend newcomers to skip BN1, because it's one of the most streamlined BN games IMO, and one of my favorite to play through. By the way, Haruka's--and a number of other people's--mugshots did get adjusted in OSS; they changed the colors a bit to make them less dull, which helps them fit in better with the new mugshots. I ended up contributing a little bit to this translation with some final testing and editing. It also uses the tooling that I originally developed for EXE4.5 to handle the text in the game. giver336 posted:Mornin' and Morning? Prof 9, since you whine about these in Chrono X, I'm gonna whine about these to you, too.
|
# ¿ Jun 20, 2018 15:30 |
|
|
# ¿ Apr 26, 2024 00:35 |
|
Hobgoblin2099 posted:Also, I didn't realize that Match wasn't just setting the ovens on fire but burning people to death in their homes.
|
# ¿ Jun 28, 2018 10:50 |
|
giver336 posted:For those of you in the audience that know sorts and searches, this is basically just the binary search. There's a reason it's one of the most efficient sorts. If you halve the number of options available each time, you only need 7 chances to guarantee success.
|
# ¿ Jul 1, 2018 17:14 |
|
So to briefly explain this RNG glitch that Giver touched on... It's kinda something you really have to 'get', it's hard to explain why this happens, but I'll try my best to make it as accessible as possible. This got kinda long whoops You will need to be a little familiar with the mathematical concepts of the modulo operation (basically just getting the remainder of a division) and bitwise operations in order to fully understand this post (but don't worry, it's pretty easy, and you'll hopefully be able to get the point even if you don't fully understand it). First, a brief introduction into RNGs if you're not familiar with the concept. As you probably know, RNG stands for Random Number Generator and it's a mathematical function that spits out random numbers in case the game wants to for something. More specifically, an RNG is pseudo-random, which basically means that it produces a fixed sequence of numbers based on the current "seed" value. Usually this "seed" is the previous RNG result. The key principle is that since the player cannot know the current "seed" value, they therefore cannot predict the sequence of numbers that the RNG will output next. Note that the RNG result is not equal to the result you actually see reflected in the game; if you roll a die in a game, and it shows a number between 1 and 6, the actual RNG result will be a number between 0 and 2 billion (in the case of MMBN1), from which the die roll result is calculated (usually via a modulo operation). If you're familiar with RNG manipulation from, say, Pokémon, or speedrunning, you might know that this key principle can be broken if you're persistent enough, and if the game's developers didn't do a good job of protecting against RNG manipulation. If you know the formula the game uses for its RNG, then you can figure out, in advance, the full sequence of numbers that the RNG will generate, and the corresponding die roll results shown in-game. You could then repeatedly roll dice and note down the results, and then cross check with your sequence of numbers to deduce the current RNG seed. For example, in MMBN1 speedruns, the RNG always starts from a known initial state when you hit Continue on the title screen, and so if you hold down a direction on the D-pad you'll always run into the same fight with the same chip draw. With the introduction out of the way... All the Capcom-developed MMBN games on GBA/DS use the following function to generate a new RNG result:
As far as I know this doesn't correspond with any other RNG algorithm out there. If you Google the parameter 0x873CA9E5 (or its decimal notation, 2268899813), all you'll find are results referring to MMBN. I guess they just rolled their own algorithm and figured it was good enough without properly testing for randomness or something. In Battle Network 1, when you inspect a random Mystery Data (I'll call them Green Mystery Datas or GMDs for simplicity's sake), it will determine the item you get as soon as you press A/B to advance the text "MegaMan accessed the mystery data...". This is done via two consecutive RNG calls, where the first determines whether you get Zennys or a BattleChip, and the second one determines how many Zennys or what BattleChip you get.
It might not be immediately obvious, but this last part actually violates the RNG principle that I outlined above, namely that you cannot predict the next RNG result if you don't know the current seed. It turns out that if you know part of the RNG result, then you also know part of the current seed, and you can actually make predictions about the next possible RNG seed + result. I think the easiest way to demonstrate this is by an example, so it's time to do some math. Let's step into the shoes of the game for a bit. Suppose that the player is in Undernet 11, and has just accessed a GMD, so we need to figure out what item to give them. Let's assume that we will be giving them a CannBall A chip. Okay, let's take a look at the BattleChip drop table for Undernet 11 GMDs: 0: Ratton2 J 1: Ratton2 J 2: Ratton2 J 3: Ratton2 J 4: Ratton2 J 5: CannBall A 6: Recov120 F 7: Recov120 F 8: Recov120 F 9: Recov120 F 10: Recov120 F 11: Recov150 L 12: Recov150 L 13: Recov150 L 14: Recov150 L 15: Recov150 L As you can see the other 3 chips each have a total of 5 entries, so they are more likely to be chosen than CannBall A. That's how the game's developers control the rarity of these chips. Anyway, we want to hand out a CannBall A, so we need to hit index 5 for the second RNG call. We'll call the result of the first RNG call 'A' and the result of the second RNG call 'B' Let's assume that we got result 5 for the second RNG call. That means we got the RNG result, 'B', and did a modulo 16 operation on that, which equaled to 5: B mod 16 = 5 Because 16 is a power of 2, this simplifies to a bitwise AND operation on the lower 4 bits: B and 15 = 5 If we represent B as a binary number (so only using 0s and 1s), that means B must follow the following pattern. The lowest 4 bits of B are 0101 in binary, which is 5 in decimal. For any bits we don't know the value of, I've put an 'x'. B = xxxxxxxxxxxxxxxxxxxxxxxxxxxx0101 Well, let's go back to the RNG formula that the MMBN games use.
First, undo the right-shift by 1 bit: B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx0101x Then, undo the exclusive OR (XOR) with 0x873CA9E5. Luckily, this is the same as just doing a XOR with the same number again. If we represent 0x873CA9E5 as a binary number we get: 10000111001111001010100111100101 So let's do another XOR on B' with that number, and we get: B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx0111x Now we need to undo the "add 1". This is a bit tricky as we don't know the lowest bit of B'. We know it's either a 0 or 1, though. Let's just account for both cases: B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx01110 or B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx01111 Okay, so now let's subtract 1 from that number. B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx01101 or B' = xxxxxxxxxxxxxxxxxxxxxxxxxxx01110 Finally, we need to undo the bitwise rotation. This is simple enough: B' = 1xxxxxxxxxxxxxxxxxxxxxxxxxxx0110 or B' = 0xxxxxxxxxxxxxxxxxxxxxxxxxxx0111 So what now? We applied the RNG formula that the game uses, but in reverse. In order to obtain the final result of 5, we now know that the input seed value that was used follows the pattern 1xxxxxxxxxxxxxxxxxxxxxxxxxxx0110 or 0xxxxxxxxxxxxxxxxxxxxxxxxxxx0111. Alright. Now let's look at the first RNG call of a GMD again. If the result is 0, then you get a BattleChip; if it's 1, you get Zennys. Well, we supposed that the player would be getting the CannBall A drop. That means the result of that RNG call was 0. Let's look at the RNG formula again.
Alright. So for RNG call 1, the "new seed" is 1xxxxxxxxxxxxxxxxxxxxxxxxxxx0110 or 0xxxxxxxxxxxxxxxxxxxxxxxxxxx0111... So let's do the final step of the RNG formula and get the result for RNG call 1. Right-shift the new seed by 1 bit and return it as the result. A = 01xxxxxxxxxxxxxxxxxxxxxxxxxxx011 or A = 00xxxxxxxxxxxxxxxxxxxxxxxxxxx011 Alright, so the RNG result for RNG call 1, A, was one of the above patterns. Now we need to convert this to the range [0, 1]. Well, this was done via a modulo operation by 2, which is equivalent to bitwise AND by 1. Let's do that now: Result = A and 1 = 1 Wait a sec. Result = 1? But that means we should be getting Zennys! Huh? What's going on here? We went from the assumption that the player gets a CannBall A drop, but then concluded that they get Zennys. Clearly, this is a contradiction--which means our original assumption does not hold. Yes, that means that it is impossible to get a CannBall A drop from an Undernet 11 GMD! For the same reason, it's also impossible to get the 5,000 Zennys drop in Undernet 10 in OSS. This is because this drop, originally 10,000 Zennys in BN1, occupied two slots in the Zennys drop pool, one of which can never be chosen due to this RNG quirk. When the This is the MMBN RNG quirk in a nutshell. By doing two RNG calls right after one another, where both results use a modulo operation with a power of 2, the second RNG result ends up being biased or skewed depending on the result of the first RNG result. And because of this, certain combinations of results are impossible to get. I use the name "RNG carryover glitch" for this, since the result of some RNG call ends up carrying over into the next one. You might be thinking, well, if the RNG quirk does that to GMDs, then I bet there are other things that it might affect. And actually, the answer is yes! There are a number of other, completely unrelated things in different MMBN games that are affected by this glitch. It is somewhat rare due to the specific requirements needed to get this glitch, but one good example is battle selection in Undernet 2 in MMBN4. That area has 4 battles with Wood viruses, but if you have Jungle equipped, you will find that you almost always only get 2 of those 4 battles, because RNG carryover glitch occurs if you get a random encounter in that exact situation, unless your step counter is very high (e.g. after an expired SneakRun). It just so happens that one of those 2 battles has a Battle GMD in it which can drop 3 BugFrags, so this actually makes it the most efficient strategy for farming BugFrags in MMBN4. Another example is that some GMDs in Battle Network 4 and 5 will only give specific drops based on the location in the map where they spawned, so if you only check one GMD spawn point in a map, it's possible you won't see all the chips it drops. It's interesting to note that Capcom did eventually figure out that this quirk occurs, because in Battle Network 6, whenever the game needs to roll the dice, they actually do a number of bogus RNG calls and discard those results, just to advance the seed value and eliminate the effects of the carryover, before getting the final RNG result. By the way, Greiga Master is pushing out an update to the translation patch soon which will also fix the RNG quirk for GMDs, so you'll be able to get CannBall A as God intended. Hooray! Prof. 9 fucked around with this message at 02:20 on Jul 15, 2018 |
# ¿ Jul 15, 2018 01:18 |
|
giver336 posted:OK, now for a change. In the original Battle Network 1 script, MegaMan says "...But remember you have weekend class this week?". So this is clearly a change. It was likely due to a change in how holidays work in Perhaps any savvy goons in the comments can elaborate. Now it just looks like Lan doesn't know what day it is, rather than what week he has weekend class. MegaMan: Lan, wake up and get to school. Lan: It's Saturday, so there's no school. MegaMan: But it's the third Saturday of the month, so you do have school. That doesn't really make much sense in English, so BN1 just opted to change it to "weekend class". But in 2002, Japanese school weeks were changed to a 5 day week (Monday to Friday) instead, so this conversation couldn't be carried over to OSS, as it no longer made sense. So instead we got the new line which has MegaMan realizing it's actually Friday. The OSS translation editors chose to carry over this change to the English script as well. giver336 posted:You guys didn't change this to "jack out". 0/10 localization.
|
# ¿ Jul 29, 2018 01:38 |
|
giver336 posted:About time! Is Mayl literally the only person on that bus? Yes, that's a thing. Kai's, who only appears in the spin-off Mega Man Battle Chip Challenge, backstory is that he was on the bus that was about to explode, and seeing Lan's heroic actions inspired him to get his poo poo together and start taking NetBattling serious. Incidentally, BCC also adds that Ms. Madd/ColorMan had locked the doors and turned the heating on full blast, causing everyone to get dizzy and/or pass out.
|
# ¿ Aug 20, 2018 02:17 |
|
Rigged Death Trap posted:Skullman is D probably because Skull in japanese is Dokuro.
|
# ¿ Sep 3, 2018 02:36 |
|
Power Plant Comp: the dungeon that was so universally hated that its designer Masakazu Eguchi publicly apologized for it in an interview. Not me, though. If you can look past the trial-and-error nature of the puzzle there's a lot to like here. Probably one of my favorite chapters in the series. Also one of the hardest, I could never get past this point as a kid.
|
# ¿ Sep 9, 2018 02:02 |
|
Actually, there is a refight version of Mega Man SF: https://www.youtube.com/watch?v=59XtN4ZGVe0 He's got 1500 HP and all of his moves hit harder and come out faster. Sadly, you were only able to fight him at an event in Japan. From what we can tell Capcom used a special ROM just for this event, as there's no combat data for this version of Mega Man SF in the retail game.
|
# ¿ Sep 16, 2018 18:33 |
|
ClockMan's original name (from his fan submitted design) was Clock Genius. I like to believe that's why he has the geeeeenius shtick.
|
# ¿ Sep 22, 2018 22:52 |
|
Mega Man SF's lock-on ability is pretty neat, but there aren't that many chips that really need it. His shield can be useful, but has a long cooldown time (and it eats your Buster charge), plus it really does leave you wide open after it wears off. Though I could see it being useful on Bass. On the other hand, MegaMan.EXE gets the far stronger Buster, which deals 80 damage per charge shot when maxed out (96 against the LifeVirus!), compared to SF's paltry 30 damage. Single player-wise, it's especially useful for taking out MagicMan's and the LifeVirus's virus summons. Prof. 9 fucked around with this message at 03:10 on Sep 29, 2018 |
# ¿ Sep 28, 2018 23:21 |
|
rannum posted:indebted to Duo & all his plans because he revived her. rannum posted:They also made Wily her foster father! Hobgoblin2099 posted:He becomes less... something by the time 3 comes around.
|
# ¿ Oct 29, 2018 01:14 |
|
Blaze Dragon posted:Also I don't think he's ever called MegaMan Star Force, whenever he's referred to as Shooting Star Rockman in SF3 (every time he transforms) it's just replaced with "MegaMan" in the English version. His status screen also reads MEGA MAN SF. There's another WAZA Wizard who spells out his full codename EM Wave Change ID "003" Mega Man Star Force, but I don't have a screenshot of that as I believe it's only a temporary NPC. On the other hand, we also have the Super Smash Bros. trophy which was named Star Force Mega Man. But since the official game used Mega Man Star Force (and never Star Force Mega Man), we decided to go with that in the OSS translation. Incidentally, SF3 is also where they started calling him Mega Man (with space) rather than MegaMan (no space), but that would've looked really inconsistent in OSS alongside MegaMan.EXE, so we ended up dropping the space again. Prof. 9 fucked around with this message at 05:14 on Nov 1, 2018 |
# ¿ Nov 1, 2018 05:09 |
|
BlazeEmblem posted:Alternately, they weren't done programming the fight by the time of the first demo. That makes a bit more sense.
|
# ¿ Nov 4, 2018 22:44 |
|
I'm probably biased but I'd say this is my favorite Humor in the series. There's just a lot more potential for jokes when you bring these characters together as opposed to just having the standard set of Lan/Geo's friends to work with.
|
# ¿ Jan 17, 2019 04:00 |
|
Dr. Fetus posted:Was that reference in the Japanese version, or was that something the translators added in?
|
# ¿ Jan 17, 2019 14:26 |
|
"Scroll" means background graphics, e.g. maps. Whereas "Object" is foreground graphics, i.e. sprites.
|
# ¿ Jan 26, 2019 23:50 |
|
I hope everyone enjoyed the LifeVirus SP fight! This is something I had been wanting to make for a while and Giver's LP was as good an opportunity as any. The possibilities were somewhat more limited here since all the changes needed to fit into an Action Replay DS code, so something like adding new sprites was out of the question. (Though I did end up having to add in a small '2' graphic for the LifeVirus's 200 HP aura). Despite that, I'm quite happy with how it turned out.TuKeZu posted:Maybe the real superboss is I've created a shorter version of the cheat and split it up into two parts that are both less than 107 lines; could you try that and see if it works? It's been added to the Pastebin.
|
# ¿ Apr 24, 2019 22:54 |
|
|
# ¿ Apr 26, 2024 00:35 |
|
TuKeZu posted:It worked! ...kinda, it seems like even the slimmer code is still a bit too much for the DS/AR to handle.
|
# ¿ Apr 25, 2019 16:20 |