User Tag List

Results 1 to 8 of 8

Thread: Tunnel Runner Redux (a remake)

  1. #1
    Clicker Multimedia Fusion 2Android Export Module
    elPatrixF's Avatar
    Join Date
    Jan 2013
    Location
    El Perdido, Buenos Aires, Argentina
    Posts
    15
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Tunnel Runner Redux (a remake)

    This is basically a remake of an old Atari 2600 game called Tunnel Runner (Video), a first-person labyrinth game (on the atari 2600!) where you are stuck in a labyrinth and must find a key and the exit, all while avoiding the monsters of the maze, the zots.



    This game was an attempt to do a "fast" raycaster engine running on vanilla CF25 actives that was fast enough to run on the android exporter at a decent speed. I get around 24fps on my phone, the target FPS is 30; of course the resolution on my phone is quite smaller than the one shown in the video, the demonstration video was captured on PC. Apologies for that ^^;
    For clarity, this is what the game looks on android by default Screenshot_1.jpg
    Quality can be adjusted on the options menu.

    gameplay remains faithful to the original thing (Get the key, get to the exit, avoid the zots), plus free strafing, HD* graphics, and soft rotations and all that stuff. Also a remixed title song.

    Mazes are procedurally generated based on a random seed. Game 1 features always the same mazes, while Game 2 features random mazes every time you play. Game 3 is a custom game where you can set the size of the maze, the amount of doors, the length of the hallways, etc; like a sandbox mode of sorts.

    Google play link: https://play.google.com/store/apps/d...f.tunnelrunnel



    *compared to the original thing I suppose

  2. #2
    Clickteam Clickteam
    Jeff's Avatar
    Join Date
    Jun 2006
    Location
    Battle Ground Washington
    Posts
    11,822
    Mentioned
    7 Post(s)
    Tagged
    2 Thread(s)
    Wow really cool -- I am putting this up on the Clickteam Facebook!

  3. #3
    Clicker Multimedia Fusion 2Android Export Module
    elPatrixF's Avatar
    Join Date
    Jan 2013
    Location
    El Perdido, Buenos Aires, Argentina
    Posts
    15
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thank you!

  4. #4
    Clicker Fusion 2.5 (Steam)Android Export Module (Steam)
    Gingerbeard's Avatar
    Join Date
    Dec 2015
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This looks amazing!

  5. #5
    Clickteam Clickteam
    Kisguri's Avatar
    Join Date
    Jun 2006
    Location
    Bakersfield, CA
    Posts
    3,054
    Mentioned
    32 Post(s)
    Tagged
    3 Thread(s)
    You could make a decent amount of sales if you put the engine up for sale in some capacity on Clickstore.


    Clickteam on Twitter - Clickteam on Facebook

  6. #6
    Clicker Multimedia Fusion 2Android Export Module
    elPatrixF's Avatar
    Join Date
    Jan 2013
    Location
    El Perdido, Buenos Aires, Argentina
    Posts
    15
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    thanks y'all ^^

    Quote Originally Posted by Kisguri View Post
    You could make a decent amount of sales if you put the engine up for sale in some capacity on Clickstore.
    Yeah; someone suggested me that- the thing is the code is kind of messy, and commentated part of it in english, part of it in spanish, in a very not-too-serious way

    I released an earlier version (way earlier) of the source here for free; along with a lengthy explanation of how the engine sort-of works, if anyone is interested
    http://notreblogs.tumblr.com/post/15...oooooooooooooo
    Download link is at the bottom of that post ↑↑
    It's waaaaay early, but it's part of the core and it's already out there heh.



    It's basically a raycaster-hybrid thing; not a full raycaster engine because instead of "casting a ray for each column of pixels" (for each "column" object, because basically every column of the screen is an active object whose animation is every 1px-wide vertical strip of the wall texture) what it does is "always draws 6 walls", at fixed coordinates, then punches "holes" on the walls, according to map information stored in an array. It fully takes advantage of the "not-a-number = zero" exception to further compress the functions (Like how a division by zero equals zero by MMF2/CF25 logic, please never change that haha).
    It has it's limitations but it does the job well. It's pretty much hard coded specifically for this game in a lot of aspects. For instance, doors, which are basically alternate textures, can only be seen when standing right in front of them, sorta just like in the original game; and only one wall texture can be used.

    I tried doing a raycaster engine some years before but... yeah, since it used loops extensively, it ran at a VERY low framerate (3-4 fps, at a similar quality) ^^;

    The reason why this engine is fast is because it uses very few loops, and pretty much everything related to the raycaster is cramped on a single "on loop" event, using short-named global variables to make it fit somehow.
    Should pretty much be as fast in all exporters, including the UWP export module.

    Anyway, this is the single "for each column" loop event: runs once for each column active:
    Screenshot_2.jpg (link)
    take a look at them Y scales ^^;;
    Screenshot_1.jpg (link)




    Here's an video of an earlier point in development. No doors, no objects, but the core of the map rendering is done. Uses an array to store all the map information, and a secondary smaller array to store the "current hallway information".


    Notice at 2:06 the debug information. The cyan lines are the 6 walls i was referring to earlier. When the player walks outside the green/red area (or when the player turns to looks down a different hallway), the position is adjusted and the "local "map information is updated to reflect the changed orientation/position, giving the illusion of a smooth labyrinth. The arrow indicates the relative angle of the camera, in relation to the visible hallway.
    At 2:50 the camera is "detached" from the game logic to show the walls without updating the render and relocating the player.

    Of course the major flaw of this trick is that you cannot "peek" at a side of a hallway because, until you step on the intersection (green area) all you'll see is a solid infinite wall. This effect is demonstrated at 4:01.

    Here's another dev test video of it, showing doors, key, and other stuff, if you're curious.

    The "objects" in the maze (Zots and key) are single active objects being scaled and positioned individually using simple trigonometry. Then I use the layer object to sort all objects according to a variable, which corresponds to the actual scale of the object. And the doors, oof, that's a whole nother story ^^;

    Sorry for the long post; I have written about 25 notebook pages to get this thing working haha
    Might release the source code of the game at some point in the future but it have to go through it all and add comments and definitely delete some of them haha.

  7. #7
    Clickteam Clickteam
    Kisguri's Avatar
    Join Date
    Jun 2006
    Location
    Bakersfield, CA
    Posts
    3,054
    Mentioned
    32 Post(s)
    Tagged
    3 Thread(s)
    Cool post. And yeah if you commented it, I think you can make some people really happy on Clickstore, The Raycaster object only is windows compatible and we no longer have the source code to improve it. So there is a need for it.


    Clickteam on Twitter - Clickteam on Facebook

  8. #8
    Clicker Fusion 2.5 DeveloperAndroid Export ModuleSWF Export Module
    Fusion 2.5 (Steam)HTML5 Export Module (Steam)
    Xhadoe's Avatar
    Join Date
    Sep 2007
    Location
    Earth, Milky Way
    Posts
    315
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Amazing work and frame rate! 8)

Similar Threads

  1. trying to remake an example
    By mickarrow in forum Fusion 2.5
    Replies: 6
    Last Post: 24th July 2014, 03:38 PM
  2. How To Shoot Down A Tunnel
    By drnebula in forum Multimedia Fusion 2 - Technical Support
    Replies: 5
    Last Post: 20th February 2012, 10:34 PM
  3. DLL Runner
    By workshop2 in forum Extension Development
    Replies: 0
    Last Post: 28th August 2006, 07:42 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •