На счёт предметов схема похожая на то что описано в мануале.
Гипотетически - Берёшь какой-нибудь предмет, дампишь память через Start Search for a diffrence. Далее в игру, выкидываешь предмет из инвентаря, далее Continue search for a diffrence->different than before
Снова в игру, снова пихаешь предмет в инвентарь снова Continue search for a diffrence->different than before
И так до тех пор пока не отсеешь себе те стойкие значения(значение) которые отвечают за наличие конкретного предмета в конкретном слоте инвентаря. Далее подбором, изменяя значение, получаешь в данном слоте уже не тот предмет который ты выкидывал/поднимал, а нужный тебе.
На самом деле есть ряд приёмов, которые значительно облегчают поиск неизвестных значений. Возможно, я напишу об этом в мануале.
Теоретически, с помощью CWCheats можно замодить игру до неузнаваемости

Т.е. сделать с игрой всё что угодно.
Опять таки обращаю внимание, что всё упирается в упорство и смекалку.