Hangman 2 Player Game - User Cannot Guess More Than 6 Times
May 27, 2014
I am creating a hangman code. So the game i am creating is 2 player, first player enters the word and second player guesses. i made the code but i don't know how to restrict the first player from adding random characters into the secret word because for my project the word can only contain letters. so i need making the code so the player 1 can only enter letters.
My code is below:
/**
* Auto Generated Java Class.
*/
import java.util.Scanner;
public class Hangman {
public static void main(String[] args) {
Scanner input= new Scanner(System.in);
String player1,player2;
int wrongguessamount = 0; //keeps the count of the amount of wrong guesses
int correctguessamount = 0; //keeps count of the amount of correct guesses
int maxincorrect=6;//makes sure the user cant guess more than 6 times
I'm having some problems with the graphics of my hangman game. The graphic that's supposed to show up on the first guess (the hangman pole) doesn't show up until guess number 2. And on the eighth guess, no graphics show up (I just get a blank frame).
import java.awt.*; import javax.swing.*; public class HangmanFigure extends JPanel { private int guesses; private Image background; public HangmanFigure() { super();
Its a basic program that is played by 2 people. Player one is suppose to type a number and the second player is suppose to guess the number. However after I test it out, and if I guess too low or too high I get stuck in "Your guess is too low, try again." infinite loop, what is wrong.
import java.io.*; class GuessingGame { public static void main (String[] args) throws IOException { BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in)); String firstPlayer, secondPlayer; int firstInput, secondInput; int guessCount = 0;
The game runs fine, however I have to include how many times each letter that is guessed occurs within the word. For example, if the guess is e, the program should print out: The character e occurs in 3 positions. How would I go about doing this??
/* * A program that plays simple word guessing game. In this game the user provides a list of words to the program. * The program randomly selects one of the words to be guessed from this list. * The player then guesses letters in an attempt to figure out what the hidden word might be. * The number of guesses that the user takes are tracked and reported at the end of the game. */
The problem occurs after the user inputs the guess.... it either runs the for loop if guess = numtoguess and reveals the answer even if the user input is wrong.... or it always runs the first if statement in the while loop if guess!= to numtoguess... heres the code
public static void main(String[] args) { String[] Answers = {"yes", "Yes", "No", "no"}; String Name = JOptionPane.showInputDialog(null, "Hello, What is your name?","Random Game", JOptionPane.QUESTION_MESSAGE); String UI = JOptionPane.showInputDialog(null, Name + " do you want to play a game", "Random Game", JOptionPane.QUESTION_MESSAGE);
My assignment is to create a hangman game. One of my first difficulties with it is how to scan the string for an input supplied by the user.
Here is my method:
//Guesses that character c is in the secret word. //Updates all instance variables accordingly, //and returns true if c is present in the secret word. public boolean guessCharacter(char c){ }
I'm writing an ESP game code for class. The problem is i cant get it to cycle through the colors after each guess is entered. It stays fixed on the original random number generated.
import java.util.Random; import java.util.Scanner; public class Final1 { String colorInput, computerColor; int computerNum, right, wrong;
[Code] ....
This repeats 10x but the color never changes from the initial random chosen.
I am trying to create a Hangman game with a gui. i already have buttons for the letters, each with its own action listener. I'm having difficulties creating the gallows and man.
I have a class called guiTest, which contains all of the letters. This is essentially what i have. Can I add the image to this class, or do I need to create a new class that extends JFrame?
I am getting a strange error and it almost seems like its not comparing it to the random generated number just the guess that i entered before. Here are my error messages.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at guess.the.numbers.GuessTheNumbers$ButtonHandler.actionPerformed(GuessTheNumbers.java:119) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
You have to create a very basic hangman type of game. Open Notepad and create a list of at least ten words in a text file. Save the file as a .txt file and use it to read words for the game. In this game you do not have to show pictures but you do need to keep track of the amount of times that the user has guessed wrong. When the game starts, show the amount of characters in the word represented as dashes and ask the user to type in a letter. if the user guesses correctly show the word again with the correct letter filled in the correct positions(s) and if the user correctly guessed the word, show a message. If the user guesses wrong, keep track of the body parts that needs to be reduced with every wrong guess and inform the user as well, also show a message.
I'm struggling with reading the file, showing the amount of parts left and asking the user to play again. Here is the code:
package hangman;
/** * * @author */ import java.nio.*; import java.io.*; import java.util.*; public class HangMan {
For an array implementation of a Hangman game I have created an array to hold the game board progress. It is initialized as "_ _ _ " where the underscores represent the number of letter in the word to be guessed. I have written the following method to replace underscores with a correct guess. It is functioning correctly in that it is replacing the underscore with a correct character guess, but it is only replacing the first time this letter appears in the word. I.e. for "greed" guessing "e" would only replace the first e: _ _ e _ _how I may be able to fix this issue.
// Updates gameboard from "_" to current guess if guess is correct if (isCorrectGuess(move)==true){ if(inWinningState()==false){ guessProgress[charLocation] = guess;} return true;}
I wrote a program that would play a game of Hangman. It plays the game but it keeps on bringing up a exception error. This is my class code
import java.util.ArrayList; class Assignment2Q4 { private final ArrayList<Character> guessList = new ArrayList<>(); private final char[] charArray; private final String secretWord; private int guesses;
[Code] ....
This is the output that is given:
Enter the secret word: pizza Guess a letter: d ????? Guess a letter:
[Code] .....
Also when I guess the first letter of the word correctly it stops the program without going further on with the guessing.
I created a simple Hangman game. It functions correctly, the only issue is when the file contains a phrase (2 or more words), spaces are not displayed when the program is run. For example, if the phrase was Java Programming Forums.
It would appear as _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _.
I want there to be spaces in between the words. How could I fix this? What would I need to add to my code?
import java.util.Scanner; import java.io.*; public class hangman{ public static void main (String[] args) throws FileNotFoundException{ Scanner kb = new Scanner(System.in); String guess; String guesses = ""; int wrongGuess = 8;
I wrote a single player blackjack code and i want to play this game with multiplayers, which steps should i take to do this
package blackjack; import java.util.Random; import java.util.Scanner; public class Blackjack { public static void main(String[] args) { Random kagit=new Random ();
So I am trying to create a Multi-Player game in java, and I have a Game server and a Client. They normally connect with either but I would like to add a login server so that there can be an option to go to a different world then just the main one. It will have the same map and data but will be separate from the Players that are on world one per say. Now if you are on world two I would like it to have the option for you to be able to Private message players that are on World one. That is where the login server comes in to play.
I am still new at Java and would like to be able to understand Packets and how to handle them more clearly. So far I have gotten the basis of the login server connected to the server and the client connects to the server via the login server. But I am getting a bunch of "unhandled packets" and I would like to know how to handle them. Here are some bits of the code.
I am trying to design a monopoly board game with a class and a main program. I can not make the method to keep track of the player's position after every roll. After every roll it prints "Previous position: 0".The player should also not go over 14th spot because the board is just 15 including 0. That is what I have (just the particular method and the part from the main program which call it).
public int getpospl1() { System.out.println( getplayer1name() + " Rolls " + "Dice 1: " + getrolld1() + "" + "Dice 2: " + getrolld2() + "" ); int spot1 = 14; //The end spot int start = 0; int previousPosition = start;
I have the following program. In a nutshell, I creates an array of 3 consecutive ints and the user has to guess what those numbers are, knowing that they are between 0 and 7, this is from Head First Java. In the book, the code has a bug that is made on purpose and they challenge you to fix it. As you can see bellow, every time a user's guess matches a int in the array, the NumOfHits is increased by one. When the NumOfHits is 3 (the length of the array) the game finishes.
The bug is that if you guess 1 and 1 is in the array, if you type in 1, 3 times, I will increase the NumOfHits 3 times and end the game as if you had won. To solve the bug, you need to find a way to tell the program that if the user already guessed that number, it should no longer be taken into account and we shouldn't increase the NumOfHits if the same number is provided.
I "fixed" this by searching for the index of the number that matches an int of the array, and changing that index's value to 100, since the user knows that the numbers are between 0 and 7, they will not submit 100.
The result? If the user submits 2 and 2 is in the array, the value of its indexed is replaced by 100, so that if the user submits 2 again it doesn't count as a match.
Please see the comments in the code
import java.io.*; import java.util.Arrays;
class DotCom{ int NumOfHits = 0; int[] LocationCells; public void setLocationCells(int[] locs){ LocationCells = locs;
[Code] .....
The code works, but for some reason, some times I get a ArrayIndexOutOfBoundsException run time error and it appears to be somehow random. This is what I saw on the command line earlier
C:Userspablo.alvarez>java launchDotCom
Enter a number: 3 missed Enter a number: 4 hit Enter a number: 5 hit Enter a number: 7 missed Enter a number: 5 missed Enter a number: 4 missed Enter a number: 3 missed Enter a number: 4 missed Enter a number: 5 missed Enter a number: 6
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1 at DotCom.checkYourSelf(launchDotCom.java:16) at DotComGame.startGame(launchDotCom.java:59) at launchDotCom.main(launchDotCom.java:72)
As you can see here, 3 returned 'missed' but 4 and 5 returned hit. Since the numbers are in sequence and are only 3, it makes sense that the last number is 6 (4,5,6). You will then notice that when I submitted 3 and 4 again it returned 'missed' as expected, because the numbers were already matched earlier, but then when I submitted 6, it returned the error seen above.
Sometimes this doesn't happen at all, sometimes it happens at the 2nd guess or third, it appears to be somehow random. I'm familiar with the error message, but I don't see where I'm using an index that doesn't exist in the array. The only time I'm referencing an array index is on
LocationCells[index] = 100;
but the index variable will only hold a value if the int submitted by the user matches on of the values in one of the indexes, so how is it that I'm going over the number of available indexes?
I have been working on this function and i can't get it to work. It's a little bit complicated so let me first explain what this is about:
1. As a little exam in my studies i have to program a halma console game with KI an stuff.
2. Everything is finished and works except for the Move-Calculation.
3. A Move is a Move from Field a to Field b which a player can perform in one round based on the game rules (Careful: We are not using the standard halma rules, we use different ones).
4. Class Move consists of the Starting Cell where the Figure before the Move stands and a target Cell where the figure will stay on at the Move end. It may include an Array of serveral Cells, the stop cells which the figure passes from start -> target since several jumps can be performed in one Move.
Valid Examples for Moves:
a -> b (From Field a to Field b) d -> f through g,h,i (From Field d to Field f through the Field g,h,i
My Move Calculation where all possible Moves are calculated for a given figure consists of 2 parts. An expand() function which will generate all possible moves (works perfectly) and a jumpFix() function which isn't working properly.
Example:
After expand() I'm getting something like that:
a -> b b -> c c -> d s -> t
This is however not finished, because the first 3 Moves are actually 1 Move. Because the player can Move from a -> d in one turn because those 3 are consecutive Move. The fixed Move would look like that:
a -> d through b,c
jumpFix() is also perfectly working for that situation, however there is one specific situation when it doesn't work. Let's say we have this situation.
a -> b b -> c c -> d b -> e e -> f f -> g s -> t
Then the only valid jumpFix() output would be:
a -> d through b,c a -> g through b,e,f s -> t
However i can not get it to work yet. Note: It definitely needs to be iterative, not rekursive else i would get an StackoverflowError.
This is my current Code of jumpFix():
Java Code:
/** * Takes a look into all calculated moves and finds those which should be seen as one move, but are still considered to be more than one move (several jumps in one move) */
public static List<Move> jumpFix(List<Move> moves) { Set<Move> result = new HashSet<Move>(); Set<Move> remove = new HashSet<Move>(); int lastSize = -1; // repeat action until no moves could be merged while (lastSize != remove.size()) {
[Code] ....
How to implement the special case where a Move splits into 2 or more branches and jumpFix() able to handle this case.
I'm new to Java. I have a problem with this code, wherein you have to count how many times you borrow in order to do subtraction.
For example: x = 312; y = 34;
The output should be: 2 because you have borrowed 2 times in subtraction.
My problem is like this, whenever I input x=12, y=2, the output is 1, also, when x = 12, y = 1. It should be 0.
Here's my code:
import java.util.Scanner; public class BorrowOut{ public static void main (String [] args){ Scanner in = new Scanner (System.in); int x; int y; int i = 0; int j = 0;
I tried this program, its guessing game. Where program decide 1 number and user will guess number. I am getting 1 problem. When user want to play game again.the random number remain same. So where i can put reset random in code..? And 1 more question if I want to write driver code for this. What should i transfer to driver code.
import java.util.Random; import java.util.Scanner; public class GuessGame { public static void main(String args[]) { String choice="y";
class blackjack { public static void main ( String[] args ) { Random r = new Random(); Scanner keyboard = new Scanner(System.in); String money; String name;
[Code]...
I know people will want me to tidy it up, or do it "their" way, but honestly I just need method of getting the user to press h or s and have the program continue under it's own steam.
I am making a very simple 2D array game where the player is asked what size they would like the game board to be. After entering, it displays the board and the player 'P' starts at index [0][0]. After that, they are asked for an action, which can be "up", "down", "left", "right", or "exit". I will be including some extra later (like a treasure at the end, or random obstacles), but for now this is what the game consists of.
I was instructed to "do nothing" when/if the player attempts to go out of bounds. I am trying to simply print an error, such as "Out of bounds! Try again.", then prompt the player again for an action. I even tried to make a boolean method to catch it, but to no avail.
I don't want the exception to occur at all. I just simply want the error message to print to the player and ask for another action. I would prefer not to use try/catch, or try/catch/finally since I already tried that and it still gave the exception error.This program consists of two classes. I will show the class containing the main first, then the client-server type class second.
import java.util.Scanner; public class Driver { public static void main(String[] args) { World world = new World(); boolean keepPlaying; keepPlaying = true; boolean isOutOfBounds; isOutOfBounds = false; int height = 0; int width = 0; int x = 0; int y = 0;