======================================================================================================================== OBJECT VALUES ======================================================================================================================== This is an alphabetical list of all the labels NESmaker uses to store, read and modify object data. [RAM] indicates variable object data, like current speed and position on screen. These can change during gameplay. [ROM] indicates static object data, like width and height. These are fixed and can't be changed during gameplay. ======================================================================================================================== [RAM] Object_direction Both the moving and facing direction of an object are stored here. % mmmm afff |||| |+++- Facing direction |||| | %000: down %100: up |||| | %001: down+right %101: up+left |||| | %010: right %110: left |||| | %011: up+right %111: down+left |||| | |||| +---- Use normal (0) or aimed (1) physics |||| ++++------ Moving direction %0010: up %1011: down+left %0011: down %1100: right %1000: left %1110: up+right %1010: up+left %1111: down+right This could also be defined as follows: % HhVv afff |||| |+++- Facing direction (%000 is down, then moves counterclockwise to %111, which is down-left) |||| +---- Use normal (0) or aimed (1) physics |||+------ If object moves vertically, it moves up (0) or down (1) ||+------- Object moves vertically (1) or not (0) |+-------- If object moves horizontally, it moves left (0) or right (1) +--------- Object moves horizontally (1) or not (0) ======================================================================================================================== [RAM] Object_frame Holds information about the object's animation and action % .. sss fff || ||| +++- current animation frame || +++----- current action step ++--------- (unused) ======================================================================================================================== [RAM] Object_health Number of health points an object has left. % pppp pppp ++++-++++- Number of object's current health points (0-255) ======================================================================================================================== [RAM] Object_h_speed_hi The signed high byte of the object's horizontal speed. % D HHHHHHH | +++++++- The object's horizontal speed (in pixels) +--------- The object moves left (1) or right (0) ======================================================================================================================== [RAM] Object_h_speed_lo The low byte of the object's horizontal speed. % hhhh hhhh ++++-++++- The object's horizontal speed (in 1/256 pixels) ======================================================================================================================== [RAM] Object_id The object ID when put on a screen. Used to bind NPC text to objects. % ...... ii |||||| ++- The object number on screen in the NESmaker UI |||||| %00-11 = monster 1-4 ++++++---- (unused) ======================================================================================================================== [RAM] Object_screen The screen that the current object is on. % yyyy xxxx |||| ++++- Screen's x-position on the over/underworld editor ($00-0F) ++++------ Screen's y-position on the over/underworld editor ($00-0F) You can also retrieve which nametable (left/right) the object is on: % ....... n +- Nametable the object is on (0:left, 1:right) ======================================================================================================================== [RAM] Object_status Holds object activity and how it interacts with its environment % aqip togd |||| |||+- Object is queued for deactivation |||| ||+-- Object should be drawn on screen |||| |+--- Object observes other objects (collision) |||| +---- Object observes tiles (collision) |||+------ Object observes physics ||+------- Object observes inputs |+-------- Object is queued for activation +--------- Object is active ======================================================================================================================== [RAM] Object_type The game object or monster type. % tttt tttt ++++-++++- Object index # in the NESmaker UI - $00-0F are game objects - $10-2F are monster objects ======================================================================================================================== [RAM] Object_v_speed_hi The signed high byte of the object's vertical speed. % D VVVVVVV | +++++++- The object's vertical speed in pixels +--------- Set whether the object moves up (1) or down (0) ======================================================================================================================== [RAM] Object_v_speed_lo The low byte of the object's vertical speed. % vvvv vvvv ++++-++++- The object's vertical speed (in 1/256th pixels) ======================================================================================================================== [RAM] Object_vulnerability The object's current action step flags. Their functionality type can be set through the NESmaker UI, by default their functionality is as follows: % 7654 3210 |||| |||+- Ignore gravity |||| ||+-- Do proximity check (brawler module only) ++++-++--- (unused) ======================================================================================================================== [RAM] Object_x_hi,x The high byte of the object's horizontal position. % XXXX XXXX ++++-++++- The object's horiziontal position (in pixels) ======================================================================================================================== [RAM] Object_x_lo,x The low byte of the object's horizontal position. % xxxx xxxx ++++-++++- The object's horiziontal position (in 1/256th pixels) ======================================================================================================================== [RAM] Object_y_hi,x The high byte of the object's vertical position. % YYYY YYYY ++++-++++- The object's vertical position in pixels ======================================================================================================================== [RAM] Object_y_lo,x The low byte of the object's vertical position. % vvvv vvvv ++++-++++- The object's vertical position in 1/256 pixels ======================================================================================================================== [ROM] ObjectAccAmount The accelleration of the object, or how many subpixels an object increases its speed per frame. % aaaa aaaa ++++-++++- The number of 1/256th pixels an object accellerates per frame ======================================================================================================================== [ROM] ObjectBboxLeft The Object bounding boxes left border value. For more info, see Border box values. % llll llll ++++=++++- The object's left border value (in pixels) ======================================================================================================================== [ROM] ObjectBBoxTop The Object bounding boxes top border value. % tttt tttt ++++-++++---------- The object's top border value (in pixels) ======================================================================================================================== [ROM] ObjectFlags The object's bit flags. These are customizable in the NESmaker UI. The default definitions are: % 7.54 3210 |||| |||+- Object is persistent |||| ||+-- Object is a player |||| |+--- Object is a player weapon |||| +---- Object is a monster |||+------ Object is a monster weapon ||+------- Object is a pickup / powerup item |+-------- "Target type" (unused) +--------- Object is an NPC ======================================================================================================================== [ROM] ObjcetHealth The number of the object's initial health points. % pppp pppp ++++-++++- Number of object's initial health points (0-255) ======================================================================================================================== [ROM] ObjectHeight The Object bounding boxes height. % hhhh hhhh ++++-++++- The object's border box height (in pixels) ======================================================================================================================== [ROM] ObjectJumpSpeedHi The high byte of the object's jump speed. % JJJJ JJJJ ++++-++++- Object's initial jump speed (in negative pixels) ======================================================================================================================== [ROM] ObjectJumpSpeedLo Low byte of the object's jump speed % jjjj jjjj ++++-++++- Object's initial jump speed (in negative 1/256th pixels) ======================================================================================================================== [ROM] ObjectMaxSpeed The object's maximum allowed speed. This value is stored as a 4.4 floating point value. % SSSS ssss |||| ++++- Object's maximum speed (1/16th pixels per frame) ++++------ Object's maximum speed (pixels per frame) ======================================================================================================================== [ROM] ObjectSize The size of the object, in tiles % .. www hhh || ||| +++- object height in tiles (%001-111, so never zero) || +++----- object width in tiles (%001-111, so never zero) ++--------- (unused) ======================================================================================================================== [RAM] ObjectUpdateByte A set of variable object flags, used to determine how an object should interact with its environment. .... ...s |||| |||+- If 1, the object is colliding with a solid tile ++++-+++-- (unused) ======================================================================================================================== [ROM] ObjectWidth The Object bounding boxes height. For more info, see Border box values. % wwww wwww ++++-++++- The object's border box width (in pixels) ========================================================================================================================