Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///THIS IS NOT A SCRIPT!!! THIS IS DOCUMENTATION!!! DO NOT USE!!!
- /*
- ____ ___ ____ ___ ___ ___ ___
- | \ / _] / || \ | | | / _]
- | D ) / [_ | o || \ | _ _ | / [_
- | / | _]| || D || \_/ || _]
- | \ | [_ | _ || || | || [_
- | . \| || | || || | || |
- |__|\_||_____||__|__||_____||___|___||_____|
- This document is a guide on how to understand this program. This is not a script, and
- should not be used as such, as it will do absolutly nothing since it contains nothing but
- a giant comment. This is the Readme for Straticons, a game by Ramaraunt, Cheersey, and
- LeapBeforeYouLook. It contains documentation for the game Straticons, and explains how
- the different scripts and objects in this GameMaker 1.4 project interact with one another.
- If you are confused with how something works you can read about it here, and if you are
- adding something you should probably add it here so people can read about it if they get
- confused.
- This project is a remake of a wonderful game from the Lego website, known as "Spybotics:
- The Nightfall Incident". Since this game is no longer on their website, and is now found
- only on buggy and ad-ridden websites, I decided it was fair game to make a clone of it
- for other people to enjoy as I once did during my childhood.
- The concept of the game is rather simple: each unit on the board grows as you move, and
- when a unit takes damage it loses parts, until it dies when it has no parts left. Each
- level is comprised of up to 4 teams, duking it out against one another. At the time of
- writing this preface,there is no plotline, but eventually a campaign with a story and
- levels with increasing challanges will be made. For now, we need to focus on getting the
- basics done, using an older version of this project for reference. Together, we can get
- this game on the Steam Marketplace, and get our feet wet in the pool of the game
- development industry.
- -- Ramaraunt
- -----------------------------------------------------------------------------------------
- -------------------------------PART 1: Scripts-------------------------------------------
- -----------------------------------------------------------------------------------------
- There are many scripts in this game, all organized into groups. At the top of each script,
- there is a small comment that explains what the script does, in the following fashion:
- ///scr_script_name(arguments);
- /*
- A detailed explanation goes here.
- * /
- The scripts are also explained, in detail, bellow.
- --sounds/music
- - play_sound - This script is used to play a sound at the proper sound volume, stored
- in the variable global.sound_vol.
- - play_sont - This script is used to play a song at the proper music volume, stored in
- the variable global.music_vol.
- --utility
- - mouse_in_region - This script returns true if your mouse is within the rectangle of
- points given, or false if it is not. This is used for buttons, drop down menus, and
- sliders.
- - message_text - This script destroys all messages currently on the screen (to prevent
- pileup) and then draws a message on the given coordinates in lime green color. This
- message is drawn by an object, which gradually fades out and destroys itself after a
- few seconds.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 2: Particles-----------------------------------------
- -----------------------------------------------------------------------------------------
- Particles are stored in objects, which are mostly stationary particle effects for the
- background of a room. However, these also include mouse particle effects, which change
- depending on what particle effect the user has selected in options. Each particle object
- has a small explanation bellow.
- --particles
- - obj_part_vortex - This object creates a purple-black-hole like particle effect in the
- center of the screen. It is used in the introduction screen.
- - obj_part_multiFire - This object creates an explosion of color-changing fire
- particles in the center of the screen. This object is not used yet.
- - obj_part_fire - This object creates fire on the bottom of the screen. This object is
- not used yet.
- - obj_background_particle - This object creates a color-changing cloud effect in the
- center of the screen. This object is not used yet.
- - obj_random_particles - This object creates random colored particles from random
- points on the screen. This object is not used yet.
- --mouse
- - obj_click_particle - This object is persistent, and creates a spray of particles
- around the mouse when you click.
- - obj_mouse-particle - This object is persistent, and creates the particle effect
- for the mouse, which changes depending on what color or effect is selected in the
- options menu.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 3: Handlers------------------------------------------
- -----------------------------------------------------------------------------------------
- Handlers are objects that do many things, and "handle" all the background scripts,
- calculations, and drawing.
- --handlers
- - obj_next_room_forcer - This object causes the room to change after 5 frames. Only
- one of these is used, in the rm_init, to cause the game to move to rm_introduction.
- --menus
- - obj_intro_handler - This object manages the intro text in the introduction room,
- and it checks for keyboard input to move on, or moves on automatically after a
- certain amount of time.
- - obj_main_menu_handler - This object manages the main menu of the game, including
- sound effects, and the buttons.
- - obj_options_handler_main_menu - This object manages the options menu that goes
- off of the main menu.
- - obj_creation_menu_handler - This object handles the creation menu. Fullscreen
- must be turned off for the level loading functionality of the creation modes to
- work.
- --sounds
- - obj_music_bot - This little guy handles all music scores. It looks at the room
- the player is currently in, and changes the music dynamically.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 4: Rooms---------------------------------------------
- -----------------------------------------------------------------------------------------
- Rooms are simply GameMaker rooms. Straticons has many different rooms for different
- purposes.
- - rm_ini_init - This room is where the ini is initialized, and where the game options are
- either read or written if the ini doesn't exist yet. The ini can be found in local appdata.
- - rm_introduction - This room is where the opening credits take place.
- - rm_title_menu - This room contains the main menu of the game.
- - rm_creation_menu - This room contains buttons to use the level creator modes.
- - rm_options - This room contains the options of the game, accessable from the main menu.
- - rm_ai - This room is where the player can load and play custom levels.
- - rm_creation_room - This room is where the player can create custom levels.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 5: Sprites-------------------------------------------
- -----------------------------------------------------------------------------------------
- Sprites are image data, used by the game.
- --dropdowns - These sprites have to do with dropdown menus.
- --backgrounds - These sprites are meant to cover the entire screen as a backdrop.
- --option buttons - These sprites are used for actions in the creation room.
- --glossy buttons - These are the buttons used in most menus.
- --color slider - This is the color slider used in the options menus
- --words - These are the word sprites used in the options menus. For each word, there is
- one sprite that is meant to be a white outline, while there is another that is meant to
- be a colorized fill.
- --tilers - This group contains all of the sprites used in actual gameplay, from tiles to
- unit icons.
- --particles - This group contains sprites that are made to be used with particle effects.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 6: Backgrounds---------------------------------------
- -----------------------------------------------------------------------------------------
- These are backgrounds used by the game.
- - bk_stars - This is a starfield background.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 7: Fonts---------------------------------------------
- -----------------------------------------------------------------------------------------
- These are fonts used by the game to draw text on the screen.
- - fnt_buttons - This is the font used for menu buttons
- - fnt_debug - This is a font used for debugging purposes, like a small fps counter in the
- corner.
- - fnt_dropdown - This is a font used for dropdown menus.
- - fnt_main_menu - This is the font used for menu titles.
- - fnt_popup - This is the font used for messages.
- - fnt_title - This is the font used for title credits.
- -----------------------------------------------------------------------------------------
- -------------------------------PART 8: Shaders-------------------------------------------
- -----------------------------------------------------------------------------------------
- Shaders are special commands that go directly to the graphics card. There are no custom
- shaders used yet!
- -----------------------------------------------------------------------------------------
- -------------------------------PART 9: Globals-------------------------------------------
- -----------------------------------------------------------------------------------------
- There will probably lots of global variables in the final game, which will be used to
- have a state-machine like system for the game and menus.
- --options - These globals are used to store options information. These are stored on the
- ini files of the game.
- - global.sound_vol - This is where the sound volume is stored.
- - global.music_vol - This is where the music volume is stored.
- - global.mouse_particle - This is the id of the current mouse style chosen. The values
- are:
- 0: hard
- 1: sparkle
- 2: fluffy
- 3: paint
- 4: plasma
- 5: crossed
- 6: bubble
- 7: neutron
- - global.mouse_color - This is the color id of the current mouse cursor color.
- *non global options*
- - fullscreen - This is whether the window is fullscreen or not.
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement