Page 5 of 16 FirstFirst ... 3456715 ... LastLast
Results 41 to 50 of 159

Thread: The Probe

  1. #41
    Quote Originally Posted by WILL View Post
    I'm a little late, but nice job!
    LOL Thanks Jason

    Quote Originally Posted by WILL View Post
    So this game is going to be put on the GP2X system huh? Have you been able to test it out on the actual console yet?
    I haven't even tried to make a GP2X version to be honest, but with the way I am making the new 'boulder dash' engine, it is completely separate from how I actually render the output of the game, do audio, and how I get input too, which is uber-awesome

    This means that theoretically I should be able to port the game onto pretty much any platform I choose in the future.. I just have to decide how I do the graphics/input/sound on that system.

    For example I SHOULD be able to make a cross-platform SDL/OpenGL version, or just use SDL (graphics/sound/input) on the GP2X (not sure how fast it would run though... ).

    Quote Originally Posted by WILL View Post
    Continue posting videos as you progress please.
    I certainly will keep doing updates here in PGD land, don't you worry about that laddie!

    cheers,
    Paul

  2. #42
    Hey all,
    I'm quite pleased with myself, I've managed to get a bunch more done with my 'boulder dash' engine for The Probe

    The Probe avatar can:
    • Collect crystals, tunnel through dirt, push rocks and radioactive elements (using move, or move + fire).
    • Push TLS deflectors using move.
    • Smoothly rotate TLS deflectors (using move + fire).


    Current enemies:
    • Cruiser - explodes into spaces when adjacent to the Probe, or hit by falling rocks/crystals.
    • Drone - explodes into crystals when adjacent to the Probe, or hit by falling rocks/crystals.

    Cruisers and Drones now rotate smoothly when turning corners which is very nice

    Environmental Hazzards:
    • Acid - dissolves rocks/crystals/radioactive elements.


    TODO List:
    • Switches.
    • Teleporters.
    • Warps.
    • TLS Emitter.
    • TLS Receiver


    cheers,
    Paul

  3. #43
    It sounds like you're going to have plenty of different gameplay mechanics. Are you already testing with levels?

  4. #44
    Hi Traveler

    Yeah, I am testing mechanics with a bunch of quickly whipped up levels using ascii characters...it is great for testing stuff, though I will fix my level editor so it works with the new code later on.

    Code:
    procedure TTheProbe.LoadLevel;
    var
      w,h,x,y: Integer;
      c: Char;
      sl: TStringList;
    begin
      sl := TStringList.Create;
      try
    {
        sl.Add('TTTTTTTTTTTTTTTTTTT');
        sl.Add('T.................T');
        sl.Add('T...O  ...........T');
        sl.Add('T...OP...C..2C..C.T');
        sl.Add('TTTTO  TT ..W ....T');
        sl.Add('T1OTTT.T. ... ....T');
        sl.Add('TT...T.TW ... ..D T');
        sl.Add('TT.TTT... ... ..  T');
        sl.Add('TW.W..............T');
        sl.Add('TT.CT......  O..  T');
        sl.Add('T...T........O.. DT');
        sl.Add('T..........  O....T');
        sl.Add('TTTTTTTTTTTTTTTTTTT');}
    
    
    
    {    sl.Add('TTTTTTTTTTTTTTTTTTTTTTT');
        sl.Add('TO333OO11        O    T');
        sl.Add('TO111OW12   d    O1   T');
        sl.Add('TO222OW13        311  T');
        sl.Add('TWOOOW11W        TWWWWT');
        sl.Add('TWWPWW  W        WRWWWT');
        sl.Add('T                WRW  T');
        sl.Add('TOOOOOT          WRW  T');
        sl.Add('TOOOOOT          WRW  T');
        sl.Add('TOOOOOT          WRW DT');
        sl.Add('TAAAAAT RRRRRRRRRRR  CT');
        sl.Add('TTTTTTTTTTTTTTTTTTTTTTT');}
    
    
        sl.Add('TTTTTTTTTTTTTTTTTTTTTTTT');
        sl.Add('T                      T');
        sl.Add('T TTTTTTTTTTTTTTTTTTTT T');
        sl.Add('T TOOOOOOOOOOOOOOOOOOT T');
        sl.Add('T TDDDDDDDDDDDDDDDDDDT T');
        sl.Add('T TCCCCCCCCCCCCCCCCCCT T');
        sl.Add('T TDDDDDDDDDDDDDDDDDDT T');
        sl.Add('T TCCCCCCCCCCCCCCCCCCT T');
        sl.Add('T TCCCCCCCCCCCCCCCCCCT T');
        sl.Add('T T444444444444444444T T');
        sl.Add('T T411122233322211114T T');
        sl.Add('T T444444444444444444.PT');
        sl.Add('T TTTTTTTTTTTTTTTTTTTT T');
        sl.Add('T                      T');
        sl.Add('TTTTTTTTTTTTTTTTTTTTTTTT');
    
    {
        sl.Add('TTTTTTTTTTTTTTTTTTT');
        sl.Add('TOOOOOOOOOOOOOOOOOT');
        sl.Add('TOOOOOOOOOOOOOOOOOT');
        sl.Add('TDDDDDDDDDDDDDDDDDT');
        sl.Add('TDDDDDDDDDDDDDDDDDT');
        sl.Add('TDDDDDDDDDDDDDDDDDT');
        sl.Add('TDDDDDDDDDDDDDDDDDT');
        sl.Add('TDDDDDDDDDDDDDDDDDT');
        sl.Add('T22222222222222222T');
        sl.Add('T22222222222222222T');
        sl.Add('TP1111111111111111T');
        sl.Add('TTTTTTTTTTTTTTTTTTT');
    }
    
        w := Length(sl.Strings[0]);
        h := sl.Count;
    
        FBDCEngine.SetBounds(3,w,h);
    
        for y := 0 to h - 1 do
          for x := 0 to w - 1 do
          begin
            c := sl.Strings[y][x + 1];
    
            case c of
              '.' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjDirt);
              'W' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjBrickWall);
              'O' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjRockStationary);
              '1' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCrystal1Stationary);
              '2' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCrystal2Stationary);
              '3' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCrystal3Stationary);
              '4' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCrystal4Stationary);
              '5' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCrystal5Stationary);
              'T' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjTitaniumWall);
              'A' : FBDCEngine.SetObjectAt(cMaxLayer,Position(x,y),cObjAcidFull);
              'd' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjTLSDeflector_u);
              'P' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjProbe);
              'R' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjRadioactiveStationary);
              'V' : FBDCEngine.SetObjectAt(cLowestLayer,Position(x,y),cObjVortex);
              'C' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjCruiser_d);
              'D' : FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjDrone_u);
            else
              FBDCEngine.SetObjectAt(cMainLayer,Position(x,y),cObjSpace);
            end;
          end;
    
      finally
        sl.Free;
      end;
    end;
    I will post some more example screenshots later today of some test levels

    cheers,
    Paul

  5. #45
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    ooof... hard coded maps - that is super harsh there. Personally, I have never used them except for a 2x2 grid I once used to proof my map drawing before proceeding with the editor... heavy stuff. Lots of features though so looking forward to this one.
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  6. #46
    Quote Originally Posted by code_glitch View Post
    ooof... hard coded maps - that is super harsh there. Personally, I have never used them except for a 2x2 grid I once used to proof my map drawing before proceeding with the editor... heavy stuff. Lots of features though so looking forward to this one.
    LOL! I guess it IS harsh

    It IS a very easy/quick way of testing/prototyping my different elements in the game though

    As I said, I will upgrade my level editor that I already made for The Probe to work with the updated code base so I don't have to do ASCII hard coded maps any more

    cheers,
    Paul

  7. #47
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,107
    Blog Entries
    25
    Well hard coded might not be the best way for a regular computer game, but for a console based one it might be a good idea.

    It's funny, but your level maps look a lot like mine I use for Subject 33. I figure it's gotta be the best way to make it easy to switch something in a map by making the data all ASCII. As long as the maps can be interpreted that way.
    Jason McMillen
    Pascal Game Development
    Co-Founder





  8. #48
    The screenshots look much better than the ascii-levels IMHO

  9. #49
    Thanks Jonax

    cheers,
    Paul

  10. #50
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    I must say I do do one thing very differently in terms of maps. I have a tendency to go towards developing a layered format which stores data in 2d csv array between meta style tags. Each array corresponds to each layer. Then there is a LOT of tags that define 'objects' so whereas floor, terrain, rocks, caves, walls and etc are defined as tiles in the 2d arrays, an object might be a person, chair, TV and others you can interact with. Also, each object has a script file so it can edit X,Y positions, the shown image and etc. The map itself also has a script file in case you want it to change dynamically. Quite a bit more complicated which I guess is why I have a right job in making editors to work with it all. Especially the 20th odd revision of this format. This map editor is indeed proving exceptionally tricky.

    I like the touch where you store data as T, 0,1,W and etc... I might start doing that to replace my Integer tile codes once I get the latest revision optimised. It only does 35 odd fps when drawing a total 7,000 elements at 800x600 32bpp whereas earlier formats reached 175fps in equal element counts. Darn. Opengl Should give that a right change I hope.
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

Page 5 of 16 FirstFirst ... 3456715 ... LastLast

Bookmarks

Posting Permissions

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