As far as the spawns go, if you're not willing to install something like the Legacy system that adjusts XP distribution with more elegance, the above suggestion of destroying the spawns is probably the most effiicient way to do it.
As to the items, there are a couple of ways to do this. I asked Wyldhunt about this, and he said the following:
You can use the module OnActivate script to check for whatever you want and control the outcome of the used item in most cases... A couple are hardcoded, but not many. Also, OnAcquire can be used to control or change what they get when they pick it up or take it. You can check the gp value of a potion, and if the value is too high, just replace it with something cheaper. Or, check for specific vars and do whatever you want based on the vars. Both OnActivated and OnAqcuire are hooked.
The gold value is used so that you don't have to write a script that automatically assigns a variable to every item that spawns in game. You can only manually put variables on items in the toolset that are custom, and I'm assuming you don't want to have to redo your whole world so that default palette items never drop under any circumstances. Assigning a required level variable to the item makes the math simpler (you just have to do a difference check between the number of the variable and the character's level), but you still have to be able to create that variable dynamically from some value for default palette items, and the easiest way to do that is to check gold piece value. From that point you'd have to decide what minimum gp value is associated with the usability for each level (100gp = level 1, 1000gp = level 2, etc.), have the script do the calculation, then execute according to whatever level it determined the item was appropriate for.
You can then have the script measure the ratio of difference between the item's level and the character's level, and cause everything from forcing the player to drop the item on the ground, to having unintended consequences, to having it work slightly less well than it would for someone who is level appropriate, all depending upon what the item is and how much of a bastard you want to be in a given circumstance. Having the player drop the item is the simplest way to do it, but it's not the only thing you can do. The PRC uses something like this when it checks your skill to see if you can craft a poison successfully, or if you screw up and accidentally poison yourself. This is a skill check, but it's perfectly possible to do a level check, or a value-to-level check, too. That way, there is an in-character response to their metagaming, which I prefer to simply destroying items or something like that. But, you could do that, too.
Let me know if you're interested in something like this and I'll see if I can get Wyld to post the script for it somewhere.
EDIT: Here's a link to the script Wyld wrote for this fix:
https://docs.google....HZgL_Pq4LvZIls4
- S.
Modifié par DMSelena, 28 novembre 2011 - 08:37 .