Forgot password?
login to RetroAchievements:

Can't create a cheevo that kills an enemy and gets its object in Spanky's Quest


Posted: 24 Sep, 2019 16:08

I'm working on this set and I'm nearly done, but I'm having trouble with an achievement that I thought it was interesting.

In the game, there are objects like keys, extra life, hats and bonus coins that the enemies can pick up and carry with themselves. Once you have defeated them, you can take the object for you.

I've managed to do an achievement for each one of the objects except the Bonus Coins. I'm going to expose how the game works.

There is a maximum of 7 objects and enemies in the game simultaneously. So, there are 7 addresses for each one. Seven for enemies, seven por objects and seven for objects being carried for enemies.

So, I have this seven addresses for the objects being carried:


So, ANY of this positions could have the value (0x32) for a Bonus Coin. When the address value changes from 0x32 to 0x00 means you defeated the enemy. Aftwerwars, the object is "free" so the following addresses


will get the value 0x32 'randomly'. What I mean is that the original address that contained the object possessed by the enemy was 0x001031 it doesn't necesarily means that when the object is free it will be inserted in address 0x001061. It can be inserten in any of the seven addresses.

And also, when you pick up the object, the address changes to 0x4x before changing back to 0x00.

That's a problem. I tried with diferent groups to do this, but there are two diferent variables, not just one. So, I made seven groups to control each "object carried by enemy" address, but then... How can I detect in which "free object" address the object has been assigned to watch them? I would need subgroups, or and "Or Next" sentence that doesn't exist xD

Anyone faced something like this? Any ideas? I tried with Add Hits but it doesn't work. My idea was to put a 0 initially to the hit count but that doesn't work (as the documentation confirms).

If I don't find a solution, I'll leave this achievement out of the set, It's not like it's imprescindible.

Thank you in advance :D


login to RetroAchievements:
or create a new account