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 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 Downloads Jar (Github) Jar (Dropbox) wget-friendly! Source (Github) Supported (but not required) plugins: Permissions 3.0+ - permission-node: games.admin Nodes Code: -games.admin 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 (Move your mouse to reveal the content) Global commands (open) Global commands (close) (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 (Move your mouse to reveal the content) Game of Life+ commands (open) Game of Life+ commands (close) (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. Game of Life+, the instruction set (gol42? you know.. since it is an instruction set) and weaknesses Instruction set and sign-reference Reference (Move your mouse to reveal the content) Reference (open) Reference (close) 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
There's already a Tetris plugin existing. Just saying http://forums.bukkit.org/threads/fun-tetris-v0-4-perfect-game-when-bored-860-935.18357/
Wow, pretty.. unique. I like it. I can set evil challenges for my players ill try it out on my server now.
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!