Advertisement
Ramaraunt1

Untitled

Feb 25th, 2017
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.09 KB | None | 0 0
  1. ///THIS IS NOT A SCRIPT!!! THIS IS DOCUMENTATION!!! DO NOT USE!!!
  2. /*
  3.  
  4. ____ ___ ____ ___ ___ ___ ___
  5. | \ / _] / || \ | | | / _]
  6. | D ) / [_ | o || \ | _ _ | / [_
  7. | / | _]| || D || \_/ || _]
  8. | \ | [_ | _ || || | || [_
  9. | . \| || | || || | || |
  10. |__|\_||_____||__|__||_____||___|___||_____|
  11.  
  12.  
  13.  
  14. This document is a guide on how to understand this program. This is not a script, and
  15. should not be used as such, as it will do absolutly nothing since it contains nothing but
  16. a giant comment. This is the Readme for Straticons, a game by Ramaraunt, Cheersey, and
  17. LeapBeforeYouLook. It contains documentation for the game Straticons, and explains how
  18. the different scripts and objects in this GameMaker 1.4 project interact with one another.
  19. If you are confused with how something works you can read about it here, and if you are
  20. adding something you should probably add it here so people can read about it if they get
  21. confused.
  22.  
  23. This project is a remake of a wonderful game from the Lego website, known as "Spybotics:
  24. The Nightfall Incident". Since this game is no longer on their website, and is now found
  25. only on buggy and ad-ridden websites, I decided it was fair game to make a clone of it
  26. for other people to enjoy as I once did during my childhood.
  27.  
  28. The concept of the game is rather simple: each unit on the board grows as you move, and
  29. when a unit takes damage it loses parts, until it dies when it has no parts left. Each
  30. level is comprised of up to 4 teams, duking it out against one another. At the time of
  31. writing this preface,there is no plotline, but eventually a campaign with a story and
  32. levels with increasing challanges will be made. For now, we need to focus on getting the
  33. basics done, using an older version of this project for reference. Together, we can get
  34. this game on the Steam Marketplace, and get our feet wet in the pool of the game
  35. development industry.
  36.  
  37. -- Ramaraunt
  38.  
  39. -----------------------------------------------------------------------------------------
  40. -------------------------------PART 1: Scripts-------------------------------------------
  41. -----------------------------------------------------------------------------------------
  42.  
  43. There are many scripts in this game, all organized into groups. At the top of each script,
  44. there is a small comment that explains what the script does, in the following fashion:
  45.  
  46. ///scr_script_name(arguments);
  47. /*
  48. A detailed explanation goes here.
  49. * /
  50.  
  51. The scripts are also explained, in detail, bellow.
  52.  
  53. --sounds/music
  54. - play_sound - This script is used to play a sound at the proper sound volume, stored
  55. in the variable global.sound_vol.
  56. - play_sont - This script is used to play a song at the proper music volume, stored in
  57. the variable global.music_vol.
  58. --utility
  59. - mouse_in_region - This script returns true if your mouse is within the rectangle of
  60. points given, or false if it is not. This is used for buttons, drop down menus, and
  61. sliders.
  62. - message_text - This script destroys all messages currently on the screen (to prevent
  63. pileup) and then draws a message on the given coordinates in lime green color. This
  64. message is drawn by an object, which gradually fades out and destroys itself after a
  65. few seconds.
  66.  
  67. -----------------------------------------------------------------------------------------
  68. -------------------------------PART 2: Particles-----------------------------------------
  69. -----------------------------------------------------------------------------------------
  70.  
  71. Particles are stored in objects, which are mostly stationary particle effects for the
  72. background of a room. However, these also include mouse particle effects, which change
  73. depending on what particle effect the user has selected in options. Each particle object
  74. has a small explanation bellow.
  75.  
  76. --particles
  77. - obj_part_vortex - This object creates a purple-black-hole like particle effect in the
  78. center of the screen. It is used in the introduction screen.
  79. - obj_part_multiFire - This object creates an explosion of color-changing fire
  80. particles in the center of the screen. This object is not used yet.
  81. - obj_part_fire - This object creates fire on the bottom of the screen. This object is
  82. not used yet.
  83. - obj_background_particle - This object creates a color-changing cloud effect in the
  84. center of the screen. This object is not used yet.
  85. - obj_random_particles - This object creates random colored particles from random
  86. points on the screen. This object is not used yet.
  87. --mouse
  88. - obj_click_particle - This object is persistent, and creates a spray of particles
  89. around the mouse when you click.
  90. - obj_mouse-particle - This object is persistent, and creates the particle effect
  91. for the mouse, which changes depending on what color or effect is selected in the
  92. options menu.
  93.  
  94. -----------------------------------------------------------------------------------------
  95. -------------------------------PART 3: Handlers------------------------------------------
  96. -----------------------------------------------------------------------------------------
  97.  
  98. Handlers are objects that do many things, and "handle" all the background scripts,
  99. calculations, and drawing.
  100.  
  101. --handlers
  102. - obj_next_room_forcer - This object causes the room to change after 5 frames. Only
  103. one of these is used, in the rm_init, to cause the game to move to rm_introduction.
  104. --menus
  105. - obj_intro_handler - This object manages the intro text in the introduction room,
  106. and it checks for keyboard input to move on, or moves on automatically after a
  107. certain amount of time.
  108. - obj_main_menu_handler - This object manages the main menu of the game, including
  109. sound effects, and the buttons.
  110. - obj_options_handler_main_menu - This object manages the options menu that goes
  111. off of the main menu.
  112. - obj_creation_menu_handler - This object handles the creation menu. Fullscreen
  113. must be turned off for the level loading functionality of the creation modes to
  114. work.
  115. --sounds
  116. - obj_music_bot - This little guy handles all music scores. It looks at the room
  117. the player is currently in, and changes the music dynamically.
  118. -----------------------------------------------------------------------------------------
  119. -------------------------------PART 4: Rooms---------------------------------------------
  120. -----------------------------------------------------------------------------------------
  121.  
  122. Rooms are simply GameMaker rooms. Straticons has many different rooms for different
  123. purposes.
  124.  
  125. - rm_ini_init - This room is where the ini is initialized, and where the game options are
  126. either read or written if the ini doesn't exist yet. The ini can be found in local appdata.
  127. - rm_introduction - This room is where the opening credits take place.
  128. - rm_title_menu - This room contains the main menu of the game.
  129. - rm_creation_menu - This room contains buttons to use the level creator modes.
  130. - rm_options - This room contains the options of the game, accessable from the main menu.
  131. - rm_ai - This room is where the player can load and play custom levels.
  132. - rm_creation_room - This room is where the player can create custom levels.
  133.  
  134. -----------------------------------------------------------------------------------------
  135. -------------------------------PART 5: Sprites-------------------------------------------
  136. -----------------------------------------------------------------------------------------
  137.  
  138. Sprites are image data, used by the game.
  139.  
  140. --dropdowns - These sprites have to do with dropdown menus.
  141. --backgrounds - These sprites are meant to cover the entire screen as a backdrop.
  142. --option buttons - These sprites are used for actions in the creation room.
  143. --glossy buttons - These are the buttons used in most menus.
  144. --color slider - This is the color slider used in the options menus
  145. --words - These are the word sprites used in the options menus. For each word, there is
  146. one sprite that is meant to be a white outline, while there is another that is meant to
  147. be a colorized fill.
  148. --tilers - This group contains all of the sprites used in actual gameplay, from tiles to
  149. unit icons.
  150. --particles - This group contains sprites that are made to be used with particle effects.
  151.  
  152. -----------------------------------------------------------------------------------------
  153. -------------------------------PART 6: Backgrounds---------------------------------------
  154. -----------------------------------------------------------------------------------------
  155.  
  156. These are backgrounds used by the game.
  157.  
  158. - bk_stars - This is a starfield background.
  159.  
  160. -----------------------------------------------------------------------------------------
  161. -------------------------------PART 7: Fonts---------------------------------------------
  162. -----------------------------------------------------------------------------------------
  163.  
  164. These are fonts used by the game to draw text on the screen.
  165.  
  166. - fnt_buttons - This is the font used for menu buttons
  167. - fnt_debug - This is a font used for debugging purposes, like a small fps counter in the
  168. corner.
  169. - fnt_dropdown - This is a font used for dropdown menus.
  170. - fnt_main_menu - This is the font used for menu titles.
  171. - fnt_popup - This is the font used for messages.
  172. - fnt_title - This is the font used for title credits.
  173.  
  174. -----------------------------------------------------------------------------------------
  175. -------------------------------PART 8: Shaders-------------------------------------------
  176. -----------------------------------------------------------------------------------------
  177.  
  178. Shaders are special commands that go directly to the graphics card. There are no custom
  179. shaders used yet!
  180.  
  181. -----------------------------------------------------------------------------------------
  182. -------------------------------PART 9: Globals-------------------------------------------
  183. -----------------------------------------------------------------------------------------
  184.  
  185. There will probably lots of global variables in the final game, which will be used to
  186. have a state-machine like system for the game and menus.
  187.  
  188. --options - These globals are used to store options information. These are stored on the
  189. ini files of the game.
  190. - global.sound_vol - This is where the sound volume is stored.
  191. - global.music_vol - This is where the music volume is stored.
  192. - global.mouse_particle - This is the id of the current mouse style chosen. The values
  193. are:
  194. 0: hard
  195. 1: sparkle
  196. 2: fluffy
  197. 3: paint
  198. 4: plasma
  199. 5: crossed
  200. 6: bubble
  201. 7: neutron
  202. - global.mouse_color - This is the color id of the current mouse cursor color.
  203.  
  204. *non global options*
  205. - fullscreen - This is whether the window is fullscreen or not.
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement