Jump to content


Photo

Is Megaman Password Generator possible?


  • Please log in to reply
20 replies to this topic

#1 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 10 May 2012 - 02:15 PM

Hi!

I am designing my own Megaman Password just like old Nes 1-6 and not Wii version because I want it to be more tradition. Is it possible to use Megaman Password for Game Maker ? I know about Save and load but I am not sure about this one.. I wonder how to use it for game maker. Help ? Thanks.
  • 0

#2 Yal

Yal

    Gun Princess

  • Global Moderators
  • 5813 posts
  • Version:GM8.1

Posted 10 May 2012 - 02:25 PM

Yep.

Read my post about the matter: http://gmc.yoyogames...dpost&p=3907535
  • 0

#3 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 10 May 2012 - 02:34 PM

Wow.. this sound like a little bit complication, isn't it ? Maybe a save and load is much easily because you might lose the passsword and you are toast for good! Unless you want to correct me that password generatior for game maker is very easy. To me, I am not sure how to make it work for Megaman.
  • 0

#4 Yal

Yal

    Gun Princess

  • Global Moderators
  • 5813 posts
  • Version:GM8.1

Posted 10 May 2012 - 03:05 PM

Password generation [beyond hardcoded level] is tough stuff, so if you don't know what you're doing, then don't. You're right about savefiles being better when it comes to easiness to implement.
  • 0

#5 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 10 May 2012 - 03:13 PM

Alright, thanks. I will ask around at first to see if it is easier and if I still cannot get my answer then I will use the save files instead. Thanks again. :)
  • 0

#6 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 12 May 2012 - 05:35 PM

I reread it and I am not sure if it is what I am looking for.. Look at it :

Posted Image

Now, I just finish design my cool and brand new password generator that took me few days through Paint.net with pixelart but much better than above, of course. Anyway, this is an example that I want to add to the game maker. How ? Thanks.

Edited by bearmon2010, 12 May 2012 - 09:14 PM.

  • 0

#7 dannyjenn

dannyjenn

    GMC Member

  • GMC Member
  • 2041 posts
  • Version:Mac

Posted 12 May 2012 - 06:22 PM

If you just want to imitate the feel of entering passwords but you don't care how it's done... basically if you don't actually want to bother with password generation or any of the technical stuff, a simple solution could involve using save files which can only be loaded by entering a password.
You would write a script to randomly choose 9 letters (A,B,C,D,E, or F) and 9 numbers (1,2,3,4,5, or 6) and then combine then to get your password (for example, A1C3B1F3E2D6F4C5A5) and just use a save function that you've written (or even GM's built-in save feature) to name the file that. Then basically have it so that the player enters the password, generating the exact same string and loading the filename corresponding to that string.
What you'll need to watch out for would be to make sure that 2 or more of the same letter / number combinations never appear in the string (since using that input menu would have it be impossible to input 2 C5s, for example). Also you'll need to watch out for the order (for example, if your password was generated as B3A1... and the function to turn the player's input into a password turns it into A1B3... it won't work. So I'd say you could write another function to change the order of each combination in the string... basically make sure that all As come first, and out of all As make sure that the 1s come before the 2s, etc. So basically, if the string was generated as A1C3B1F3E2D6F4C5A5 then it would be changed to A1A5B1C3C5D6E2F3F4 and the same with the player's input.
Then the final touch to make it look better would be to write a function that turns that 18 character string to a much shorter string.. that way you won't end up with save files named A1A5B1C3C5D6E2F3F4.sav and such.

Only problem is that since this does use save files... you won't be able to have it give you a password and then you just tell someone "Hey, the password is ___" and allow him to enter it and play the same game. Also passwords would become invalid if the save file is ever deleted...

Edited by dannyjenn, 12 May 2012 - 06:24 PM.

  • 0

#8 Yal

Yal

    Gun Princess

  • Global Moderators
  • 5813 posts
  • Version:GM8.1

Posted 14 May 2012 - 08:40 AM

The main thing to keep in mind would be that a Mega Man password has a set number of red and blue dots... but if you ignore that, and maybe add in green dots too, you'll have exactly the Castlevania password system I outlined in that topic. Basically:

- Store level data in variables so that each data cell has a value between zero and three
- Somehow generate an order seed
- Randomly put in all cells into the password grid using that seed
- Represent 0 with EMPTY, 1 with RED DOT, 2 with BLUE DOT and 3 with GREEN DOT

Since your game doesn't use names it's a bit hard to pass on the order seed. You could perhaps dedicate a few set cells in the grid to store the order seed?
  • 0

#9 TheouAegis

TheouAegis

    GMC Member

  • GMC Member
  • 4681 posts
  • Version:GM8

Posted 15 May 2012 - 03:35 AM

Visit RomHacking.net (I think that's the one, there are a couple similar sites out there that I get mixed up) and look for the Mega Man Password documentations. Sometimes you'll have to download a password generator and in the zip file containing the generator will often be documentation on the generation.

From what I've seen, Mega Man's (in all its iterations) password generator is pretty simplistic, relatively speaking. It's still no easy feat. And if Capcom was anything like Konami, they added in a negligible element of randomization just to piss all over your efforts. But as Yal said, generating passwords is far from simple. It is an art form. Literally. It's an under-appreciated art form, but it is still an art form. I added my findings about the Castlevania 3 password to that post Yal linked you to. You can take a look at my last post in that thread to get an idea of what kind of programming we're actually talking about here.

If you really want to make a password algorithm for yourself, I recommend doing the following:

1) Read that last post I made in the thread Yal linked you to, find the link to my GMK file and download it, then look through the coding. It's far from clean, but that's Castlevania 3's password generation script very roughly translated into GML.

2) Download this text file and study it. It refers to Mega Man 2's password system.

3) Download this text file and study it. It refers to Mega Man 4's password system.

4) Read through every article on this page and try to learn a thing or two about other artists' password algorithms. Of them, I highly recommend this one on River City Ransom's password algorithm. It's not what you actually want, but there's a little section in it that is VERY USEFUL for generating passwords that are difficult to crack. For a lesson on how NOT to script a password algorithm (but still a good source for inspiration), read this file on the Metroid password.


In any event, learn to make your own and not just use any of the password systems you find in those links. There's no point using passwords from another game, It would suck if people just had to enter JUSTIN BAILEY to unlock a bunch of stuff.

Edited by TheouAegis, 15 May 2012 - 03:36 AM.

  • 0

#10 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 22 May 2012 - 02:44 PM

Umm... I am not sure if you understand me.. I design my own password just like above and I am done. Now, I need game maker to tell me how to make this password work just like NES 2-6. Thats what I mean. Thanks.
  • 0

#11 TheouAegis

TheouAegis

    GMC Member

  • GMC Member
  • 4681 posts
  • Version:GM8

Posted 22 May 2012 - 04:27 PM

Game Maker won't tell you anything. YOU have to tell Game Maker what to do. As I said in my thread about the CV3 password, making passwords is the easy part. Decrypting them is the fun part.

No one can tell you how to decrypt the password without you telling them how you encrypted it in the first place. Of course, you shouldn't be telling people how your passwords are generated, so therein lies a problem for you.

The general rule of thumb is work backwards from the generator. This is easier said than done, most of the time. The more complex your generation script, the more complex the decryptor. If you're using a simple hash to generate the password, you can use a simple hash to verify the player's password. I would guess you're probably using a simple hash, so I hope you wrote down the rules of your generation script. It would suck if you forgot what your script was supposed to do and how it did it. :tongue:
  • 0

#12 Yal

Yal

    Gun Princess

  • Global Moderators
  • 5813 posts
  • Version:GM8.1

Posted 23 May 2012 - 07:30 AM

I'm pretty sure the OP doesn't even know what hashing is...


Also, I've even told him what to do like twice now.
  • 0

#13 wakeskater_X

wakeskater_X

    GMC Member

  • GMC Member
  • 448 posts

Posted 23 May 2012 - 02:43 PM

Please tell me how to converse with the almighty game maker to get him to do this for me.

I mean, it's called game maker. Why do I have to do any work. I should just yell at my screen and it should make the code for me.
  • 0

#14 Zoltan Kriven

Zoltan Kriven

    GMC Member

  • GMC Member
  • 340 posts
  • Version:GM8.1

Posted 23 May 2012 - 03:05 PM

Please tell me how to converse with the almighty game maker to get him to do this for me.

I mean, it's called game maker. Why do I have to do any work. I should just yell at my screen and it should make the code for me.


This is Game Maker, did you summon me? No not really I can't back that one up.
  • 0

#15 TheouAegis

TheouAegis

    GMC Member

  • GMC Member
  • 4681 posts
  • Version:GM8

Posted 24 May 2012 - 12:33 AM

Well he could google "hash" and after weeding out (hehe!) the marijuana references, he should be able to figure it out.

Hashing is, at the most basic level, assigning one value to another. Like, "John"=1, "Jane"=2, "Doe"=3; 13="John Doe" or 23="Jane Doe" or 12="John Jane".

A simple password hash would be something like,

//In HeatMan's Destroy event:
global.heatman=1

//In the password generator
password+=global.heatman*E3<<16

Then to hash that back to find out if HeatMan was defeated,

global.heatman=password&$FF0000>>16
  • 0

#16 bearmon2010

bearmon2010

    GMC Member

  • GMC Member
  • 29 posts
  • Version:GM8

Posted 29 May 2012 - 02:16 PM

@Yal,

I know how to make png in drawing for password in sprites, sound, background, and objects, of course. Which I have already done. All I need to know is how to make password script or something that will work after defeats 8 bosses and the final: A infamous Dr. Wily. :)

I am sorry but you did tell me that however I just wish that someone can teach me how or someone who is willing to make one. Of course, the credit will be given. By the way, someone did made one ? Yes, matter of fact, someone did. I found one like this one: Megaman X Password generator from other site for yoyogames. He was very kind enough to created it into .gmk so I hope that any of you can be kind enough to make one in .gmk as well. Please?

Edited by bearmon2010, 29 May 2012 - 10:51 PM.

  • 0

#17 TheouAegis

TheouAegis

    GMC Member

  • GMC Member
  • 4681 posts
  • Version:GM8

Posted 30 May 2012 - 12:06 AM

We told you how to make the script. When I say "make the rules for the password, figure out how it will work", I don't mean make a bunch of pictures. I mean actually figure out how it's going to work. That's what all my links were for and all of Yal's references. And Mega Man's is a simple (compared to other passwords) hash.

If you want the easy way out, figure out how to change the numbers appropriately in the MMX password you got.
  • 0

#18 Yal

Yal

    Gun Princess

  • Global Moderators
  • 5813 posts
  • Version:GM8.1

Posted 31 May 2012 - 10:49 AM

We're not here for making a game for you; if you don't find us telling you how you're gonna do is nice enough, you have no business here. :angry:

You'll never learn something unless you do it yourself (especially with cut-n-paste code) so we'd only harm you if we made a GMK for you.
  • 0

#19 dannyjenn

dannyjenn

    GMC Member

  • GMC Member
  • 2041 posts
  • Version:Mac

Posted 31 May 2012 - 02:47 PM

We're not here for making a game for you; if you don't find us telling you how you're gonna do is nice enough, you have no business here. :angry:

You'll never learn something unless you do it yourself (especially with cut-n-paste code) so we'd only harm you if we made a GMK for you.

But making an example for him to learn from, or an engine for him to build upon, won't hurt...
However, if he needs a gmk and has no idea how to even get started (after having a similar gmk to look at) then chances are it's far too advanced for him to begin with.
  • 0

#20 TheouAegis

TheouAegis

    GMC Member

  • GMC Member
  • 4681 posts
  • Version:GM8

Posted 31 May 2012 - 04:37 PM

It is far too davanced for him. Period.

Why were save files made? Not because the hardware could handle it (which did of course make them possible), but because generating password algorithms is a royal pain in the ass. Like I said, Mega Man's passwords are VERY simplistic. And the fact he's using MMXn's password as reference when asking for a MMn password shows he doesn't know what he's actually up against. I gave him a list of guides/tutorials on generating passwords, two or three of which were for MMn games and not MMXn. MMXn's password is closer to Castlevania 3's password than MMn's (I'm guessing).

The difference between the two is, I'll reiterate, as follows:

MMn uses a series of hashes setting different certain variables based on certain shared characteristics. For example, if HeatMan and FlashMan are both alive, a dot is placed in the A2 grid, otherwise a dot is placed in E4 for HeatMan or E5 for FlashMan, unless you also found the energy tank in HeatMan's stage, which would then set a dot in B1 rather than E4. Not sure if they used a hard hash (referencing addresses) or soft hash (arithmetic setting of hash values).

MMXn appears to use a soft hash with each grid holding a certain value and the password generated being an actual password. I'm not sure how they pulled it off without cracking the ASM or looking at that guy's GMK (assuming he actually cracked it, but I'm not going to create an account on the ZFG forums just to download it), but it would appear rather than assigning a value of 4n to each cell they just assign a value of 8n to each cell. Based on that and the fact the games were made by Capcom, I'd take a gander that the algorithms were much simpler than CV3's although still quite complex.
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users