~~NOTOC~~ ===== Role Block ===== ---- {{infobox> name = Role Block image1 = roleblock.png Development lifespan = 2016 Initial release = 2016 Game Engine = Gamemaker 8.1 Developer = Mooshimity Ltd. }} **This is an article of one [[:brickhill|Brick Hill]] Development era. If you want to take a look on other development era, please refer to [[:developmenteras|Development Eras]] article.** **Role Block** is the earliest prototype of sandbox game [[:brickhill|Brick Hill]], originally released in Late 2016 by brick-luke on Mooshimity forums. Role Block had two releases. ==== Release features ==== * No multiplayer * 2D release can be started via ''game_test'' only, because it's the only folder in game's release, though incompatible 3D release games can be played fine with this client. * 3D release can be started via ''game_luke'' only, because other games don't have the ''draw.txt'' file to be executed by the game's code. ==== Controls ==== * W,A,S,D - Up, down, left, right. * Shfit - Crawl (3D Release exclusive). * Space - Exit the car. ==== Game folders ==== ==== "game_test" ==== {{developmenteras:roleblock2dgp.png?250}} ''game_test'' is likely a technological demo for the engine, written by brick-luke. ==== "game_race" ==== {{developmenteras:game_race.png?250}} Ditto, except it was probably meant to be for car object testing. ==== "game_run" ==== {{developmenteras:game_run.png?250}} ''game_run'' is about running from zombies while you have 5 lives. ==== "game_classic" ==== {{developmenteras:game_classic.png?250}} ''game_classic'' is likely a technological demo, too. ==== "game_luke" (3D release exclusive) ==== {{developmenteras:roleblock3dgp.png?250}} ''game_luke'', also known as Luke's Game is about running over random people with your car. ==== Example Game Structure ==== - game folder (eg: game_nut): -- system_map (3d exclusive directory) --- draw.txt - -- system_player --- function.txt (can be empty) --- player.png - - background_nut.png (defined in settings.txt file) - gamemode.txt (creation event?) - gui.txt (what to draw) - settings.txt (game settings) Script examples: ''gamemode.txt'': while vehicle != 1 { instance_create(room_get_width/2,room_get_height/2,system_vehicle) vehicle += 1 } ''gui.txt'': if (global.player_lives > 0) { draw_text(2,2,global.player_lives) } ''settings.txt'': //Control Game Settings Here global.player_walkspeed = 4 global.player_spawnpoint_x = room_width/2+random_range(-100,100) global.player_spawnpoint_y = room_height/2+random_range(-100,100) global.player_lives = 5 global.background = "background_race.png" global.ai = "" global.vehicle = "racecar" ==== 3D Release oddities ==== It seems like that the codebase of 3D Role Block release was the main codebase until the first full rewrite by brick-luke in 2017, because of how differently 3D initialization works. In Early 2017 Brick Hill workshop, the game's code creates ''obj_environment'' for environment initialization while also initializing GMNewton for physics capabilites. While the 3D Release of Role Block does it via system_player object. Though the 3D Release requires the ''draw.txt'' file to create a ''system_brick'' object, it may be misinterpreted as a floor drawing procedure. ---- Links: * [[https://archive.org/download/role-block-brick-hill/Role%20Block.zip|Role Block 2D Release, thanks to MemoryArchive for this release.]] * [[https://archive.org/download/role-block-3-d/Role%20Block%203D.zip|Role Block 3D Release, grabbed from blocky's Brick Hill client archive.]]