[FUN] Games v0.1.1 - Game of Life, Tetris and more (soon) - video-tutorial![953]

Discussion in 'Inactive/Unsupported Plugins' started by TZer0, Jul 5, 2011.

  1. Offline

    TZer0

    Support for this plugin has been discontinued. If you wish to take over, please contact me.

    Games - Game of Life and more

    Version: 0.1.1

    [torch]Description and features
    Video:

    This is my biggest plugin to now. It is generally aimed at creative-servers and limited worlds (where average users can't place/remove blocks) for survival. Currently, this plugin features two games, however as of now: only one will be documented in this thread as the other one needs a bit more polish (once I polish it a bit - add some more features, you'll get proper instructions for that one as well). I'll probably make a video showing how to do things.

    Now, onto actual features: the first feature of this plugin is game of life+. Basically, it is Conway's Game of Life with many additional features. In no particular order:
    • Modifiable cell-types (you can set thresholds).
    • Possibility of having different cell-types on the same board (with weakness-relations between these).
    • A simple instruction set for making tests (I wanted server-admins to kind of feel like GLaDOS from Portal while constructing tests for users :) ) Currently available instructions are: count, check connection, iterate, win, clear and execute target relative sign. More about this in Game of Life.
    • Can be used aesthetically as well.
    Features for tetris (not yet documented here):
    • The implementation itself is a generic 3D-tetris. Meaning the following: 2D and even 1D-tetris can be played as these are just special cases of a 3D-tetris board where one or more of the dimensions are 0.
    • Blocks can fall any direction (set by admin).
    • There's a simple scoring-system
    [cake]Downloads
    Jar (Github)
    Jar (Dropbox) wget-friendly!
    Source (Github)

    Supported (but not required) plugins:

    [stick]Nodes
    Code:
    -games.admin
    [tnt]Commands

    Global commands are used to make, delete and select boards as well as show info about them. A reference is available ingame by running the command: /g or /games
    Note: [] denotes arguments, {} means optional, () are aliases
    Global commands (open)

    (n)ode {[1/2]} - shows or sets nodes (used when using addboard)
    (a)dd(b)oard [gol/tetris] [name] - adds a new board
    (d)elete(b)oard [name] - deletes a board
    (s)elect(b)oard [name] - selects a board
    (l)ist(b)oard [page] - lists boards
    (b)oard(i)nfo - shows info about the current board (requires a selected board)
    (r)eload - reloads settings


    Game of Life+-specific commands (select a board using "/g sb name" and then proceed with these commands) Can be seen ingame using "/g gol".
    Game of Life+ commands (open)

    (i)terate(b)oard {[steps]} - iterate steps times.
    (a)dd(t)ype [id] - adds a type
    (d)elete(t)ype [id] - removes a type
    (s)elect(t)ype [id] - selects a type
    (m)od(t)ype [cmin/cmax/smin/smax/(a)dd(w)eakness/(d)elete(w)eakness] [v] - mods a type
    (w)in(p)os {(s)et} - shows/sets redstone-torch placement after win.
    (d)efault [materialID] - sets the default cell-type


    cmin = lower threshold for a cell coming to life, cmax = upper threshold for a cell coming to life,
    smin = lower threshold for a cell surviving to the next iteration, smax = upper threshold for a cell surviving to the next iteration.


    Tetris-specific commands
    Coming soon.

    [bookshelf]Game of Life+, the instruction set (gol42? :D you know.. since it is an instruction set) and weaknesses
    Instruction set and sign-reference
    Reference (open)

    Signs
    Available sign-types: [gol], [exp], [conn]
    First line: [gol]
    • Second line is board-name
    • Third and fourth lines are commands with parameters separated by colons (":") and commands separated by commas.
    First line: [exp]
    • Expansion-sign, can be referenced by gol-signs or other [exp]-signs using e or exec.
    • Second to fourth line are commands
    First line: [conn]
    • Connector, used with the cn-instruction
    • Second line: board-name
    • Third line: connector-ID
    Commands that can be used by [exp] and [gol]
    i - Make one gol-iteration
    i:number - make number gol-iterations.
    c:itemID:amount - count the number of itemID, if exactly equal to amount: continue, if not: terminate execution of sign.
    cn:itemID:connectorID - check if two connectors ([conn]) with ID connectorID are connected using itemID, if not: terminate execution of sign
    (w)in - give the player executing the sign the message that he has won and place a redstone-torch where winpos is pointing if set.
    (r)eset - reset the board and remove the redstone-torch
    exec:x:y:z - execute target expansion-sign at relative position (x,y,z). That is, if your sign is a (-500,65,-30) and you want to execute a sign at (-501,65,-30), the command would be e:-1:0:0.


    First of all, you want to set up a board. You do this by selecting two nodes using the following commands "/g n 1" and "/g n 2" and then running the following command "/g addboard gol myboardname". This will create a feature-less glass-board with no cell-types included. You'll notice that you got a message that your board has been created a selected.

    If you disconnect or reload the server after this point, run this command when logging in/after the reload: "/g sb myboardname".

    You can now start adding types for your board. Run the command "/g at 89" and you now have added a new cell-type (glowstone) with the default game of life-settings. You may now right-click on the board to turn a dead cell into a glowstone-cell. Moving on: you now want to add a sign which says on the first line: "[gol]", second line: "myboardname", thirdline: "i".

    If you've done it right, the [gol] will be turned green. First line declares sign-type, second line declares target, third and fourth line are commands (i meaning that you want to make one iteration forward). Only admins are able to make signs with [gol] on top of them.

    Once this sign is placed, try right-clicking on it while having different shapes on the board!

    Congratulations, you have now your first functional Game of Life+-board!

    If you have at any point to now reconnected: run these commands: "/g sb myboardname", "/g st 89"

    So what can be done from here?

    First of all, you can start messing around with other instructions and commands.

    Commands to try:
    • If you want to change your default cell-type: run "/g d materialID", for instance "/g d 2" to change the default cell-type to grass.
    • Try modifying a type! Run "/g mt cmin 1" and then right-click on the first sign you made. To revert, run "/g mt cmin 3".
    • Add another type! Run "/g at 91" - this will add pumpkins to your board (right-click twice to access them)!
    Instructions to try:
    • Make a sign like the one before, but change the third line saying "i" to "c:89:5" and then right-click on it! If your board contains exactly 5 glowstone you will get a message about passing a test, if not: you will get a message about failing a test
    • Now make a sign like the one over, but instead, write "c:89:5,i". If you have 5 cells on the board, an iteration will be executed, if not: nothing will happen.
    • Place two signs on the board with the same text: first line: "[conn]", second line: "myboardname", third line: "1". Place these with one hole in between them (not diagonally). Place cells between and under the signs (just right-click on them) and then and then place the following sign somewhere: first line: "[gol]", second line: "myboardname", third line: "cn:89:1". This will give you a message about passing atest if the signs are connected. If you instead do "cn:89:1,i" on the last sign, the simulation will be run one step forward if the points are connected, if not: not.
    More coming soon!


    Planned features
    • Game of Life+ improvements
      • For, while and if-instructions.
      • Make another video showing how weaknesses work as well as for, while and if once those are done.
      • Save state and load state
    • Tetris
      • Make it easier to set up signs.
      • Make a video tutorial
    • Feel free to suggest improvements/features
    Version history
    • v0.1.1
      • Added Permissions
    • v0.1
      • Initial release
     
  2. Offline

    jonassm

  3. Offline

    TZer0

  4. Offline

    jonassm

  5. Offline

    MonsieurApple

    Start of thread needs title of plugin
     
  6. Offline

    TZer0

    Video-tutorial added.
     
  7. Offline

    Exiee

    Wow, pretty.. unique. I like it. I can set evil challenges for my players :) ill try it out on my server now.
     
  8. Offline

    TZer0

    And it is about to get a whole new dimension of advanced. 0.2 will add simple Tetris (that is: Tetris which is easy to set up!) and Game of Life will be upgraded with flow-control (if, else, while and end) and variables! Also, your old programs will work as before! :D
     
  9. Offline

    elijaheac

    What are the permission nodes?
     
  10. Offline

    TZer0

    There's one: games.admin, added to post.

    Sorry about that ;)
     

Share This Page