Items

Items are objects scattered around the rooms of ObsCure, that can be picked up to add them to our inventories. Some are unique objects that are usually used for specific puzzles, like wheels or keys, while others are resources that help us survive during the whole adventure, like medkits or ammo. Let's explain how items work in each game.

ObsCure

All items have a type and a UID, the type of an item answers the question "What is it?". Is it a medkit? Is it a key? Is it a map? Is it a disc? The type will determine what we can do with the item, like healing a character, opening a door, picking a lock, etc. The UID answers the question "Which one is it?". It is a unique number that identifies a specific object among all items that can be picked up in the game.

Let's take two different medkits as an example. On the one hand, the UID of the medkit in the room of the first queen is 0x063282, and its type is 0x025F, which corresponds to the medkit type. On the other hand, the UID of the one that can be found in the bathroom of the ground floor of the classrooms building is 0x030181, and its type is also 0x025F. As you can see, both medkits have the same type, but different unique identifiers.

For an item to appear in a room, we need to define it in two different spots: the allitems.it file, and the .tm file of the room. Some data like the item type or its UID appear in both files, so the information given in said files must be coherent.

allitems.it

This file contains information on every single item in the game. For each one of them, it gives its type, its UID, some additional information that is only used for specific item types, a multiplier that is only truly used for ammunition, and the difficulties or modes in which the item can be found. Check this link to learn about the format used in this file.

It doesn't specify, for example, the room in which the item can be found, as this is just a kind of catalog of items.

.tm files

Each room has at least one .tm file, which gives information such as the camera angles, the NPCs, and the items that can be picked up inside. Check this link to learn about this file format.

Hidden items

Hidden items are handled as an event, in the .hoe files, which store (among other things) scripts/bytecode. Some functions are called in order to hide the items, and they are given some ITEM_TYPE_SHORT and some Item UIDs as arguments so that they know which specific items are being hidden and what their types are.

ObsCure II

WIP