Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

GLTron Levels

GLtron
2004-11-04
2012-09-15
1 2 > >> (Page 1 of 2)
  • The ability to create levels is nice, but it's rather difficult to do. Perhapes a level editor program like (god forbid I type it) Tony Hawk's Pro Skater's editor. Since the playing field is not in 3d yet it should be simple for a programmer to write. (I'm not a programmer otherwise I would do it myself.) If someone needs a piece unlike one that is preset - how about a piece editor to go along with it?

    Perhapes when levels can be in 3d a sphere level would be nice although really hard to write. What I mean is, could you perhapes (I know I like to say that a lot) make some "special levels" or a "create random level" feature?

    Also one last thing - how about a seperate place on your web site for level downloads?

    • Draken Stark
     
    • Andreas Umbach
      Andreas Umbach
      2004-11-04

      Contrary to popular belief, an editor is hard to write. I think the best bet for a level editor would probably be to load a .3ds (most 3d modellers can export to that) file, and then let the user select the 'ground' parts (a flat space where the cycles can drive around) and perhaps place the spawn points.

      As for a seperate place to download levels. Well, as soon as there are any levels to download, there will be one.

      • Andreas
       
    • The sphere level would be greate, but thnik imposible:/ I tryied to make some levels, but cause i couldn't find any manual it was rubish. I also tryied to put wals in the center of the ring but also it was too difficult. Sorry for my english it's so bad.

      Yarood

       
    • i am biggener programmer but i want to know what compiler did u use and what language did u write gltron in Andreas .I want to know this because i want to fool around in the game. thx

                             fireball
      
       
      • Andreas Umbach
        Andreas Umbach
        2004-11-05

        The (C/C++) source code, available for download at http://www.gltron.org/download.php contains projects/makefiles for autoconf, MSVC and ProjectBuilder.

        • Andreas
         
    • How hard exactly? Can't you just do a number converstion?
      Example:
      0 = plain piece (no walls)
      1 = Right Bottom corner
      2 = Left Bottom corner
      3 = Right Top corner
      4 = Left Top corner
      ect.

      Perhapes have commas seperate the nubmers, so you can have more than ten different tiles.

      The normal square level in text may look like this:

      4, 3,
      2, 1,

      Anyhow, in other words, pah-lease, make it easier to make levels. I love making levels, but it's really annoying to do it graph-like. (Of course when you have the time. I know I'm nagging, but I hate doing it, and it would make it so much easier. It would also make levels flourish rapidly, fulfilling the "site requierment".) (Once again sorry for nagging.)

      • Draken
       
      • Andreas Umbach
        Andreas Umbach
        2004-11-06

        GLtron's level format is polygon based, not tile-based. But yes, it's not that hard to convert a tile based representation to a polygon representation.

        However, your tile-description seems to be somewhat lacking. You need four more corner types to describe an
        arena that is not of rectangular shape. E.g. for an L-shaped arena you'd need:

        43
        00
        053
        102

        You'll need to tell the system, that tile 5 is also a bottom-left corner, but viewed from the outside. And I think it's still a little trickery involved to actually figure out from that representation that e.g. the 4-1 corners are connected by a wall.

        On the other hand, it's not that hard to actually make a new level using the existing format, I should probably just find some time to sit down and write a tutorial...

        • Andreas
         
    • i downloaded the sorce code but i don know what to open it with do i openn it with a compiler of win zip? and i was still wondering if it was for windows or mac or linux. and i last thing does a what was the name of the compiler u used Andreas.

      fireball

       
      • Andreas Umbach
        Andreas Umbach
        2004-11-06

        It sounds harsh, but let's be honest: If you can't figure this stuff out by your own (i.e. can't tell right away from looking at it), it's a waste of your and my time. Besides, it's all mentioned in my last post already.

        • Andreas
         
    • When you guys talk about "Levels" you really mean "Arenas" or an "Arena Editor" right? Iam a little slow in the head right now.

       
      • Yes. I think the words can be used interchangeably.

        • Andreas
         
    • Sorry I forgot that there was a Game Type menu option. In that case how about some more options?

      Three things I saw that should be changed when I last played: The first person view is off a bit on the z axis, when you hold both of the view bottons you should look behind your bike, the hud you created keeps dispearing so it's a little hard to consentrate on the mini map.

      Here's a level I made (I only know how to set the boundries so if someone would be so kind to post the rest up for everyone like this.) I call it

      Four Squares

      { { x = 0, y = 1 }, { x = 0.375, y = 1 } },
      { { x = 0, y = 1 }, { x = 0, y = 0.625 } },
      { { x = 0, y = 0 }, { x = 0, y = 0.375 } },
      { { x = 0, y = 0 }, { x = 0.375, y = 0 } },
      { { x = 0, y = 0.375 }, { x = 0.125, y = 0.375 } },
      { { x = 0.125, y = 0.375 }, { x = 0.125, y = 0.625 } },
      { { x = 0.125, y = 0.625 }, { x = 0, y = 0.625 } },
      { { x = 0.125, y = 0.375 }, { x = 0.125, y = 0.625 } },
      { { x = 0.125, y = 0.375 }, { x = 0.125, y = 0.625 } },
      { { x = 0, y = 0 }, { x = 0, y = 0.375 } },
      { { x = 0.375, y = 0 }, { x = 0.375, y = 0.125 } },
      { { x = 0.375, y = 0.125 }, { x = 0.625, y = 0.125 } },
      { { x = 0.625, y = 0.125 }, { x = 0.625, y = 0 } },
      { { x = 0.625, y = 0 }, { x = 1, y = 0 } },
      { { x = 1, y = 0 }, { x = 1, y = 0.375 } },
      { { x = 1, y = 0.375 }, { x = 0.875, y = 0.375 } },
      { { x = 0.875, y = 0.625 }, { x = 0.875, y = 0.375 } },
      { { x = 0.875, y = 0.625 }, { x = 1, y = 0.625 } },
      { { x = 1, y = 1 }, { x = 1, y = 0.625 } },
      { { x = 0.625, y = 1 }, { x = 1, y = 1 } },
      { { x = 0.625, y = 1 }, { x = 0.625, y = 0.875 } },
      { { x = 0.375, y = 0.875 }, { x = 0.625, y = 0.875 } },
      { { x = 0.375, y = 0.875 }, { x = 0.375, y = 1 } },
      { { x = 0.25, y = 0.375 }, { x = 0.375, y = 0.375 } },
      { { x = 0.375, y = 0.375 }, { x = 0.375, y = 0.25 } },
      { { x = 0.375, y = 0.25 }, { x = 0.625, y = 0.25 } },
      { { x = 0.625, y = 0.25 }, { x = 0.625, y = 0.375 } },
      { { x = 0.625, y = 0.375 }, { x = 0.75, y = 0.375 } },
      { { x = 0.75, y = 0.375 }, { x = 0.75, y = 0.625 } },
      { { x = 0.75, y = 0.625 }, { x = 0.625, y = 0.625 } },
      { { x = 0.625, y = 0.625 }, { x = 0.625, y = 0.75 } },
      { { x = 0.625, y = 0.75 }, { x = 0.375, y = 0.75 } },
      { { x = 0.375, y = 0.75 }, { x = 0.375, y = 0.625 } },
      { { x = 0.375, y = 0.625 }, { x = 0.25, y = 0.625 } },
      { { x = 0.25, y = 0.375 }, { x = 0.25, y = 0.625 } },
      },

       
      • Andreas Umbach
        Andreas Umbach
        2004-11-11

        I'll try to turn this into a 'full' arena/level over the weekend

        • Andreas
         
      • Andreas Umbach
        Andreas Umbach
        2004-11-13

        I moved the spawnpoints a little and added a floor...

        The new level is available here for download:

        http://www.gltron.org/stuff/4squares.lua

        • Andreas
         
    • I forgot to write my name

      • Draken
       
    • Thanks! :)
      Now to write a level for a city...

      • Draken
       
    • A hexagonal level. Would you mind making it to fully working level?

      sqrt3 = 1.73205
      boundary = {
      { { x = 0, y = .25 }, { x = sqrt3/4, y = 0 } },
      { { x = sqrt3/4, y = 0 }, { x = sqrt3/2, y = .25 } },
      { { x = sqrt3/2, y = .25 }, { x = sqrt3/2, y = .75 } },
      { { x = sqrt3/2, y = .75 }, { x = sqrt3/4, y = 1 } },
      { { x = sqrt3/4, y = 1 }, { x = 0, y = .75 } },
      { { x = 0, y = .75 }, { x = 0, y = .25 } },
      },

       
    • Dear Andreas,
      I used your tips.
      But I've gor the following problem: every time I try my level GLTron crashes.

      The level (actual version):

      directions = { random = -1, up = 2, down = 0, right = 1, left = 3 }
      sqrt3 = 1.73205

      level = {

      version = 71,

      -- the sizes in the level are all in the [0,1] range and can be
      -- scaled to the appropriate arena size

      scalable = 1,

      -- collision detection takes place against these lines
      boundary = {
      { { x = 0, y = .25 }, { x = sqrt3/4, y = 0 } },
      { { x = sqrt3/4, y = 0 }, { x = sqrt3/2, y = .25 } },
      { { x = sqrt3/2, y = .25 }, { x = sqrt3/2, y = .75 } },
      { { x = sqrt3/2, y = .75 }, { x = sqrt3/4, y = 1 } },
      { { x = sqrt3/4, y = 1 }, { x = 0, y = .75 } },
      { { x = 0, y = .75 }, { x = 0, y = .25 } },
      }

      }

      The file stderr.txt:
      failed to create dir . - feature not supported
      failed to create dir - feature not supported
      [status] loading artpack 'metalTron'
      [status] loading level 'tri.lua'
      [status] loading artpack 'metalTron'
      ignoring (0,0) initial window position - feature not implemented
      GL vendor: ATI Technologies Inc.
      GL renderer: RADEON 9600 TX x86/SSE2
      GL version: 1.5.4582 WinXP Release
      [status] done loading textures...
      [status] done loading fonts...
      [status] done loading level...
      can't set reshape function (00408180) - feature not supported
      [sound] loading song revenge_of_cats.it
      [status] loading level '4squares.lua'
      [status] done loading textures...
      [status] done loading fonts...
      [status] done loading level...
      [status] loading level 'hex.lua'
      [status] done loading textures...
      [status] done loading fonts...
      error: attempt to index a nil value
      stack traceback:
      1: function c_reloadLevel' [C] 2: methodright' at line 71 [file scripts\video.lua'] 3: methodRight' at line 519 [file scripts\menu.lua'] 4: main of string "Menu.Right()" at line 1 5: functionSystemMainLoop' [C]
      6: main of file `scripts\main.lua' at line 50
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!
      buffer underrun!

       
    • Andreas Umbach
      Andreas Umbach
      2004-11-06

      About a level editing tutorial: What if someone with a knack for technical writing contacts me directly (e-mail: marvin@dataway.ch), we schedule a meeting on IRC, and I explain the basics of level editing, and you then sit down and write the tutorial?

      • Andreas
       
    • GLtron advanced max the score

       
    • it may sond like that but i can't open it with anything i have tried everything.

       
      • Andreas Umbach
        Andreas Umbach
        2004-11-07

        It opens just fine in WinZip. Let's move this discussion off the forum though (use e-mail).

        • Andreas
         
    • A tutorial would be a great compromise, but would you consiter a "sphere" like level or a level that repeats itself endlessly (unless you keep going forward ;P). Perhaps some other unique levels. (later on, also, try implamenting a unlocking feature for unique levels or some cheat codes. Like unlimited boost.)
      Maybe a level where if boost is used you'll always speed up without slowing down, ever. (I know it's posible already but some preset modes would also be nice. Modes... why not make it a menu option?)

      • Draken
       
    • A beginning of a level created by me. Would you mind adding the rest of the necessary code, so that I can test it. I don't manage to do that.

      sqrt3=sqrt3 = 1.73205

      boundary = {
      { { x = 0, y = .25 }, { x = sqrt3/4, y = 0 } },
      { { x = sqrt3/4, y = 0 }, { x = sqrt3/2, y = .25 } },
      { { x = sqrt3/2, y = .25 }, { x = sqrt3/2, y = .75 } },
      { { x = sqrt3/2, y = .75 }, { x = sqrt3/4, y = 1 } },
      { { x = sqrt3/4, y = 1 }, { x = 0, y = .75 } },
      { { x = 0, y = .75 }, { x = 0, y = .25 } }
      },

       
      • Andreas Umbach
        Andreas Umbach
        2004-11-19

        The boundary section looks good, just the

        sqrt3=sqrt3 = 1.73205

        is not correct. Just write

        sqrt3 = 1.7205

        and put it at the top of the file (i.e. outside of the 'level = {' block). This should give you a playable level (at least in the 2d map).

        You might also need to adjust the 'spawn' section so people don't run into walls immediately.

        When that works, post an URL to the file here (so other people may try it), and then we can work on the floor graphics.

        Also, if it doesn't work, stderr.txt might contain a few hints about errors.

        • Andreas
         
1 2 > >> (Page 1 of 2)