How To Use Smarter EP Check

Other modders are welcome, heck encouraged, to use Smarter EP Check in their own mods. I recommend reading Getting SimPE To Recognize Smarter EP Check first.

Smarter EP Check is a new global BHAV with opcode x808. This is double x404 (the lousy built-in EP check) to make it easy to remember. If you follow the SimPE instructions referenced above, Smarter EP Check will appear on the list of global BHAVs. The command takes two parameters.

The first parameter is the EP code. This is the same set of codes used by x404, which is "EP flag - 1". You can use literals or BCON x10B.

The second parameter is the type of check. If it is a 1, this will be "EP or later" check. So if you check for, say, Nightlife it will return true if the user has any EP Nightlife or later. If the second parameter is 0 (or any value which is not 1), it will be an exact check and return true only if that particular EP, or a Stuff Pack with the same code base, is installed.

The second parameter works the opposite of how Pescado does it in his EP check. This may be confusing to people used to Pescado's routine, but this was a necessary change when I was trying to incorporate these changes to x404 instead of creating a brand new BHAV.

Why didn't you change x404? That was my plan but I discovered that modifying x404 is a neighborhood-reset action, and that is a bad thing. So I created a new BHAV instead.

Hey! BCON x10B isn't EP codes! True. I wanted to add a new BCON, but all the slots have been used already. BCON x10B is "Language Codes" and I have no idea what it is used for, but it has the structure I wanted (0=0, 1=1, 2=2, and so on). I haven't changed the BCON itself at all. All I did was add a set of labels. It seems unlikely any mod would ever change that BCON so it's probably safe to piggyback on it.