Menu

Tree [r14] /
 History

HTTPS access


File Date Author Commit
 README 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic1.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic2.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic3.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic4.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic5.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pic6.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 base_pics.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 bricks.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 coll_test.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 collision.lua 2011-03-17 kyzentun [r14] Turned off profiling in AI code.
 commodities.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 common.lua 2011-03-10 kyzentun [r13] Added attempt at memory profiler. Thwarted by ...
 console_tint.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 death_screen.lua 2011-03-10 kyzentun [r12] Added death screen.
 fold_map.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 game_over_messages 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 gen_map.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 gpl.txt 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 gui_planet.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 gui_tint.lua 2011-03-10 kyzentun [r12] Added death screen.
 gui_travel.lua 2011-03-17 kyzentun [r14] Turned off profiling in AI code.
 image_manager.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 load_save.lua 2011-03-10 kyzentun [r12] Added death screen.
 map.lua 2011-03-10 kyzentun [r13] Added attempt at memory profiler. Thwarted by ...
 map_screen.lua 2011-03-09 kyzentun [r7] Added help info to travel screen.
 new_tank.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 old_bricks.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 planets.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 player.lua 2011-03-17 kyzentun [r14] Turned off profiling in AI code.
 quientish.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 route.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 shot.lua 2011-03-17 kyzentun [r14] Turned off profiling in AI code.
 start_screen.lua 2011-03-10 kyzentun [r12] Added death screen.
 tank1_main_body_sprites.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 tank_aim_sprites.png 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 tile.lua 2011-03-07 kyzentun [r1] Initial commit of notomorrow.
 tint.scg 2011-03-10 kyzentun [r13] Added attempt at memory profiler. Thwarted by ...

Read Me

Quickstart:
1.  Ensure that you have SubCritical
  See the SubCritical project page.  http://sourceforge.net/projects/subcritical/files/
  You will need to get the CVS version.

2.  Generate a world.
  mkdir rooms
  lua gen_map.lua

3.  Run.
  lua tint.scg


Contact info:
kyzentun@gmail.com

Important world generating note:
  Always remove the old world before generating a new one.  You might get
  strange behavior otherwise.


Troubleshooting:
Generating a world failed to open a file to save a room:
  You probably didn't create the rooms directory.  TINT comes without a world
  because I don't want to commit frequently regenerated files to svn.  The
  rooms dir is not committed because I don't want to commit an empty dir.
I don't know how to do anything:
  Read the "How to play" section below.
I don't understand what's going on on the map screen:
  To my knowledge, nobody besides me understands what's going on.  If you've
  read the map screen section under "How to play", and still don't
  understand, read the "Long map explanation" section.
How do I control the number of ai players?:
  Look in player.lua for the function "create_basic_ais".  Adjust the for
  loop to create the number you want.


How to play:
  On the market screen:
    Up/Down to select a line.
    Left to sell a commodity in units of 10.
    Right to buy in units of 10.
    Space when Refuel is selected to buy fuel in units of 10. (pointless until fuel is actually consumed)
    Space when Leave is selected to leave.
    Escape at any time to leave.
    1 to multiply buying/selling units by 10.
    2 to multiply by 100 (1 + 2 multiplies by 1000)
    3 to buy as much as you have space/credits for or sell all that you have
    4 to divide buying/selling units by 10.

  On the traveling screen:
    You control the gray tank in the center of the screen.  There is a
      minimap of the room you are in in the upper right.
    Controls will be reworked to feel more responsive after the map screen
      is finished.
    There are a number of ai players dithering around.  Their ai doesn't
      handle actual traveling right now, they're there to test ai players
      conducting trade with bases (which works just fine on maps they can
      negotiate).  You can shoot at them, and they will try to shoot at
      whoever hit them with a bullet most recently.
    Left/right to move left/right.
    z to jump.
    shift to fire.
    Space to visit a place for trading.
    m to go to map screen
    Escape to quit game.
    Other undocumented debug keys for other things.

  On the map screen:
    Red lines are discontinuities between rooms.  A discontinuity means those two rooms are not connected along that edge.
    The room outlined in purple is the room you are in.
    The room outlined in orange is the room the map is centered on.
    Routing always starts at the room the player is in.
    Controls:
      Arrow keys:  Scroll map around.
      wsad, left click:  Extend route in direction
      x, right click:  Remove last route node.
      c:  Clear route.
      -:  Zoom out.
      =:  Zoom in.
      escape:  Return to traveling.

    Debug controls:
      1:  Toggle showing duplicate rooms.
      2:  Toggle showing rotated rooms.
      3:  Toggle alpha when scrolling map.
      4:  Toggle scrolling map when extending route.


Map generation control details: (soon to be obsolete)
  The rooms are actually laid out similarly to a skewed rectangle with odd edge effects.
World size control:
row_size controls the length of each row.
num_rows controls the number of rows.
subroom_open_chance controls the chance that a subroom is open on a side.



Long map explanation:
Each square area on the screen is a room.  Each room is connected to 4 others
  at its edges.  Think of the rooms as the square faces of a hyper-polyhedron
  and the map is an attempt to display them on a flat surface, similar to how
  a cube can be displayed on a flat surface by unfolding it.
When you go from one room to the next, what appears to be "down" to you stays
  the same, but this may be different from what the room considers to be
  "down".  You won't fall, but you may notice that the room looks rotated to
  the left or right.  You might also notice the AI players falling up or
  sideways, because they arrived in the room along a different path, and thus
  have a different notion of "down".  The graphic for the walls is designed
  to give an indication of how a room is rotated.
The map attempts to display this in a useful way by starting at the room you
  are in (at the center), and working outwards, showing the rooms connected
  to the already shown ones.  It will draw a room in multiple places if it
  reaches it through multiple paths.  Usually, it will appear with different
  rotations when this happens.  Often, the map will be forced to show two
  rooms next to each other when they are not actually connected along that
  edge.  When this happens, it draws a red line between them, to mark the
  discontinuity.
Here is a 9 room example.  gen_map.lua currently generates a 25 room map, but
  it has the same general layout as this example.

  \ | | |
   -0-1-2\
    \ | | |
     -3-4-5\
      \ | | |
       -6-7-8\
        \ | | |
         -0-1-2\

You start in room 1.  If you go down, you'll enter room 3 along its top edge.
  If you instead go right into room 0, then down, you'll enter room 3 along
  its left edge, but that will appear to be the top to you.  The minimap and
  the map screen will also show this apparent rotation.


If you understand the map screen and think you have a better explanation, send it to me.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.