Jump to content
  • Advertisement
Sign in to follow this  
Ludus

Easter Eggs

This topic is 2023 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Imagine that you're hiding an Easter egg in your game. Perhaps it's some text or an image that pops up after doing some obscure set of tasks. Whatever the case, you want this Easter egg to remain hidden for a long time. Now, you're worried that someone will discover it by going through the game's resources or even by using tools to search through and modify the game's values in the memory (or by going through the compiled program file). What kind of countermeasures would you employ in your code to ensure (as much as possible) your Easter egg would not be found by illegitimate means?

 

Share this post


Link to post
Share on other sites
Advertisement

Make the easter egg data be assembled from pieces of real data legitimately used elsewhere in the game.

 

And here I was thinking you were talking about actual easter eggs, since Easter was yesterday. happy.png

Share this post


Link to post
Share on other sites

Perform some sort of super simple encryption on just that asset (if it's done on all assets, the file crackers will quickly realize), like XORing all it's bytes with some magic number.

Store it in a non-obvious location, like within a string table instead of a file archive.

Share this post


Link to post
Share on other sites

None. Easter eggs just aren't important enough in the development process for me to spend extra time and effort trying to hide them.

 

Well, this is only a semi-serious question meant to be purely theoretical without taking practicalities into account. I'm just interested in hearing what schemes people can think up to hide an Easter Egg in the code. happy.png

Share this post


Link to post
Share on other sites
Well, it takes time to analyze resources unless you stored them in plain readable formats (i.e. mesh formas that there are already known viewers, png files, you get the idea).

So if someone finds your easter egg through hacking, it would've took him some time by then. If he's the first one, everyone's going to be "holy cow, I did not notice it!?!?" reinstall the game, and go see to confirm it. The easter egg still did it's job.

Share this post


Link to post
Share on other sites
One easter egg can be hidden and non_crackable until somone finds it as long as you don't use ovbious things like calling the function by name and calling it "onfindeasteregg" or something else ovbious. It is insanely hard to find something if you don't know where to look for it. They could find them all though if they knew where one easter egg was and you implimented all your easter eggs in the same way. The only way I can see them being uncrackable is if your used a one way encryption on the data. Such as if you had to be at a certain XYZ for an egg to active, you could md5 the xyz and then check to see if they are at the right spot every move. But that also produces a lot of worthless overhead.

Share this post


Link to post
Share on other sites

1. Implement them on the server side

 

or

 

2. Add them in an update, and expect people to find it before anyone has time to crack it (or before anyone even realizes that there even exists something crackable in the update)

Share this post


Link to post
Share on other sites

Hide it through obscurity.  First off, people won't even know to be looking fro an Easter egg unless you tell them.  And second, there is typically over a gig of data in a large game so your Easter egg takes up only a small portion of that.  Just leave as few clues as possible that there is an Easter egg in there.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!