Advertisement
NovaYoshi

nes microgame stuff

Jan 19th, 2016
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.57 KB | None | 0 0
  1. 16 metatile types
  2. 8 sprite types
  3. 12 global variables
  4. 16x16 metatile map, no scrolling
  5. maybe like 12 objects at once?
  6.  
  7. metatile defintions have:
  8. graphic (stored per metatile)
  9.  
  10. attributes:
  11. palette used
  12. solid all flag
  13. solid on top flag
  14. user flag 1
  15. user flag 2
  16. user flag 3
  17. user flag 4
  18.  
  19. sprites definitions have:
  20. default art
  21. class (out of four)
  22.  
  23. attributes:
  24. palette used
  25. stopped by solids
  26. solid
  27.  
  28. sprite state bytes:
  29. position X low
  30. position X high
  31. position Y low
  32. position Y high
  33. speed X low
  34. speed X high
  35. speed Y low
  36. speed Y high
  37. variable A
  38. variable B
  39. variable C
  40. user flags (8)
  41. type
  42. additional flags: x flip, y flip, just created, invisible
  43. ...
  44. ...
  45.  
  46. NES RAM map:
  47. 00xx - Variables
  48. 01xx - Stack and sound engine state
  49. 02xx - OAM buffer
  50. 03xx - Metatile map
  51. 04xx - \ Game state or initial state
  52. 05xx - /
  53. 06xx - \ Game information
  54. 07xx - /
  55.  
  56. CHR RAM map:
  57. 00xx - Interface stuff
  58. 01xx - Interface stuff
  59. 02xx - Chicago font
  60. 03xx - Chicago font
  61. 04xx - Chicago font
  62. 05xx - Chicago font
  63. 06xx - Chicago font
  64. 07xx - Chicago font
  65. 08xx -
  66. 09xx -
  67. 0Axx -
  68. 0Bxx -
  69. 0Cxx - User metatile graphics (0-3)
  70. 0Dxx - User metatile graphics (4-7)
  71. 0Exx - User metatile graphics (8-11)
  72. 0Fxx - User metatile graphics (12-15)
  73. 10xx -
  74. 11xx -
  75. 12xx -
  76. 13xx -
  77. 14xx -
  78. 15xx -
  79. 16xx -
  80. 17xx -
  81. 18xx -
  82. 19xx -
  83. 1Axx -
  84. 1Bxx -
  85. 1Cxx - User sprite graphics
  86. 1Dxx - User sprite graphics
  87. 1Exx - User sprite graphics
  88. 1Fxx - User sprite graphics
  89.  
  90. Nametable RAM map:
  91. 24xx - backup of the metatile map, copied here during gameplay and restored after
  92. 25xx -
  93. 26xx -
  94. 27xx -
  95.  
  96. Movement styles:
  97. Player/Object 8 direction | directions allowed, walk speed, stopped by solids
  98. Player/Object platformer | walk speed, stopped by solids
  99. Ball | applies an X speed and Y speed each frame
  100.  
  101. Conditions:
  102. always
  103. never
  104. OR
  105. NOT
  106. every X frames
  107. when [button] is pressed
  108. when [button] is released
  109. while [button] is pressed
  110. when object was just created
  111. is this touching [other object] (sets the other object as the other target)
  112. is this touching [metatile type]
  113. is this touching [solid/user flag 1,2,3,4] metatiles
  114. compare object's variable to other variable
  115.  
  116.  
  117. Actions:
  118.  
  119. Variable identifier:
  120. NNNNnnnn
  121. ||||++++- source
  122. ++++----- destination
  123. 0: constant 8: G5
  124. 1: this A 9: G6
  125. 2: this B A: G7
  126. 3: this C B: G8
  127. 4: G1 C: G9
  128. 5: G2 D: G10
  129. 6: G3 E: G11
  130. 7: G4 F: G12
  131.  
  132. actions are performed on a "target"; the target defaults to the the object that's checking conditions
  133. but can be changed. there's also an "other" object
  134.  
  135. target this object
  136. target the other object
  137. target the first found object of a given type for this
  138. target the first found object of a given type for other
  139.  
  140. this object's variable = this object's variable
  141. this object's variable +-*/= this object's variable
  142. this object's variable = other object's variable
  143. this object's variable +-*/= other object's variable
  144. other object's variable = this object's variable
  145. other object's variable +-*/= this object's variable
  146.  
  147. stop
  148. bounce (in a random direction)
  149. bounce (180 degrees)
  150. destroy
  151. shoot object [type] [in a direction/any direction/towards other object]
  152. stop taking player input
  153. start taking player input
  154. play sound effect
  155. user flag [0-7] [on/off]
  156. horizontal flip [on/off]
  157. vertical flip [on/off]
  158. invisible on/off
  159. go straight [in a direction/any direction/towards other object/towards X/Y] at [speed]
  160. swap positions with other object
  161. jump to position of other object
  162. jump to X, Y
  163. win
  164. lose
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement