Sponsored Content
Full Discussion: Snake and ladder game
Top Forums Shell Programming and Scripting Snake and ladder game Post 302837165 by rbatte1 on Thursday 25th of July 2013 09:24:41 AM
Old 07-25-2013
I sort of managed this arrangement ages ago to give some privileges to our 24hr operators to stop & start a service that was always being awkward and was a pain to do. I wrote a script and had it started in a loop at boot time. It would watch a file and respond to messages written there. The Ops then had a scripts of their own to write a message to the file and wait for a return.

All a bit clunky, but it worked.

Perhaps some logic like:-
  1. User1 starts the game, setting up the named pipe / temporary file and tails the file watching for messages from User2
  2. User2 joins the game and writes a confirmation to the temporary file and waits for messages from User1.
  3. User1 uses the value $RANDOM to determine odd or even and therefore who starts.
  4. User1 writes the message to the file and whomever is next to play is prompted, whilst the other waits.
  5. and the looping continues until there is a winner.

How are you planing to roll the dice? Might I suggest something like:-
Code:
rndm_num=$RANDOM                     # Only refer to this once.
((test_val=$rndm_num/6))             # Will truncate to integer
((test_val=$test_val*6))             # Will give nearest lower multiple of 6
((dice_val=$rndm_num-$test_val+1))   # Will give score between 1 & 6

Or, you could just start the game up and User1 could send the message "I won." and the games ends. It seems just as useful a way to pass the time as playing a game really. Mind you, the intellectual challenge is good practice. I wrote a soduko solver in ksh which was fun.




Robin
 

4 More Discussions You Might Find Interesting

1. What is on Your Mind?

Game: Name this person

Simple rules... 1. Guess who it is, the first person to get it posts the next picture, post your guess as a reply to this thread. 2. Wait for the person who posted the picture to confirm that you are correct before posting a new picture. 3. If the person who posted the picture does not answer... (268 Replies)
Discussion started by: reborg
268 Replies

2. Programming

Tetris Game in C++

Open Source Project: https://github.com/yongye/cpp Ported from the shell: Shell (0 Replies)
Discussion started by: complex.invoke
0 Replies

3. What is on Your Mind?

Snake game challenge in UNIX

Hey Guys, I have made this basic snake game but it a little bit different from conventional snake game. Learned some basics of Unix. Hope you enjoy playing it. Please download and run on your machine and suggest any changes i can make. and let me know if someone could score 1000 points ;) ... (2 Replies)
Discussion started by: amit14august
2 Replies

4. UNIX for Beginners Questions & Answers

Word ladder Problem

Perl - Script Rules In a Word Ladder: Players get a starting word and an ending word Starting and ending words must be the same length (PIG and HOG, or CAT and DOG) Players change one letter at a time, attempting to move from the starting word to the ending word Each intermediate step... (1 Reply)
Discussion started by: asak
1 Replies
SNAKE(6)							   Games Manual 							  SNAKE(6)

NAME
snake, snscore - display chase game SYNOPSIS
/usr/games/snake [ -wn ] [ -ln ] /usr/games/snscore DESCRIPTION
Snake is a display-based game which must be played on a CRT terminal from among those supported by vi(1). The object of the game is to make as much money as possible without getting eaten by the snake. The -l and -w options allow you to specify the length and width of the field. By default the entire screen (except for the last column) is used. You are represented on the screen by an I. The snake is 6 squares long and is represented by S's. The money is $, and an exit is #. Your score is posted in the upper left hand corner. You can move around using the same conventions as vi(1), the h, j, k, and l keys work, as do the arrow keys. Other possibilities include: sefc These keys are like hjkl but form a directed pad around the d key. HJKL These keys move you all the way in the indicated direction to the same row or column as the money. This does not let you jump away from the snake, but rather saves you from having to type a key repeatedly. The snake still gets all his turns. SEFC Likewise for the upper case versions on the left. ATPB These keys move you to the four edges of the screen. Their position on the keyboard is the mnemonic, e.g. P is at the far right of the keyboard. x This lets you quit the game at any time. p Points in a direction you might want to go. w Space warp to get out of tight squeezes, at a price. ! Shell escape ^Z Suspend the snake game, on systems which support it. Otherwise an interactive shell is started up. To earn money, move to the same square the money is on. A new $ will appear when you earn the current one. As you get richer, the snake gets hungrier. To leave the game, move to the exit (#). A record is kept of the personal best score of each player. Scores are only counted if you leave at the exit, getting eaten by the snake is worth nothing. As in pinball, matching the last digit of your score to the number which appears after the game is worth a bonus. To see who wastes time playing snake, run /usr/games/snscore . FILES
/usr/games/lib/snakerawscores database of personal bests /usr/games/lib/snake.log log of games played /usr/games/busy program to determine if system too busy BUGS
When playing on a small screen, it's hard to tell when you hit the edge of the screen. The scoring function takes into account the size of the screen. A perfect function to do this equitably has not been devised. 4th Berkeley Distribution May 20, 1985 SNAKE(6)
All times are GMT -4. The time now is 03:52 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy