Howdy, Stranger!

We are about to switch to a new forum software. Until then we have removed the registration on this forum.

  • Scrabble-like game

    @Chrisir===

    exactly, scrabble (as for me!) is only a way....And, in some sense "coding" also (though it could be a job!) -

  • Scrabble-like game

    i fully agree

    also:

    as for "meanings" ("for words existing...") .....

    you don't think it's necessary for scrabble and you are right.

    scrabble would just be a way to motivate people to work on a dictionary (with meanings). A dictionary would be a cool goal beyond scrabble.

  • Scrabble-like game

    @Chrisir===

    THANKS A LOT!!! - i am happy to see that somebody understands what i am trying to do for a lot of languages: not edifying some kind of abstract (Academy) dictionnary but a real (&& in progress!) one, from the users; as for the "jury" it will be made by people issued from the (main) "dialects": they have not to propose but validate or invalidate what the user (explaining why, explaining in which part of the country he/she is born...) ; as for "meanings" ("for words existing...") i dont think that it is useful for Scrabble! : the question is only: is this word an existing word (in some place, in some dialect) -And be sure that for some examples there are 20 words or "forms" which can be validated. Let us say in a more general way: instead of thinking the lack of an official dictionnary as negative think that like a chance against uniformity...

  • Scrabble-like game

    if you let the jury not only approve a word but enter one or two meanings (either in corsican or in French) you could use scrabble to let people build a real dictionary and publish it online or as a book even

    in a new mode you could let them enter meanings for words that already exist in your dictionary

  • How would I make four boxes that are selected in row change into another colour?

    This reminds me a bit of Scrabble since we lay pieces on a grid that must be connected as a row.

    And we can lay unto an existing "opened" / clicked cell a new row

    You need to monitor all clicked cells obviously

    As with Scrabble (see Wikipedia) there are situations where you can click on a new cell that is between two cells that are already clicked or even in a corner between two already clicked cells.

    So when a new cell is clicked and counterEntireGame >= 4 you need to analyse if/on which side a clicked cell exists already.

  • Scrabble-like game

    @Lord_of_the_Galaxy===

    my (french) vrsion for scrabble is on line && can be downloaded (windows, osX,linux) on my site, here:: akenaton-docks.fr/AKENATON_f/scrabble.html

    In this version (which seems to run without bugs...) there are a lot of things useless for now (as FTP), or things which can be judged useless ("propose some word ") and are useless as for the french version: but my real aim is to write a Scrabble for languages which have not "dictionnary" in the standard way (no academy...) and so i have imagined some kind of "jury" on line and a forum in order to create the reference dictionnary with and by the users of the game.

    As i have explained in my previous post i am sure that the code can be much more better, and i ll change that in the android version i am now coding for.

  • Scrabble-like game

    @Lord_of_the_Galaxy===

    excuse me for my silence but i was travelling (and working!!!) for 1month...As for my "scrabble" code it seems to run fine, even in complex situations; i have only to "clean" it and i ll' put it on line. I have not at all the same way to solve the problems, that is funny... I see also that i have methods for exchanging letters that i cannot find in yours, and method for saving a game at each moment and begin again at the the saved point. On the contrary i see that you can choose the number of players and (thinking that in real game it s only 1 or 2) i have not coded for that. As i have now to put the whole stuff in android mode i ll try to add that....And some other things (protest from 1 player, game-story...)

    As for the "Godmode", i downloaded it but am unable to use it because it fires an error at the very beginning:

    File selectedFile = fileChooser.showOpenDialog(null);

    err= No library found for javafx.stage.FileChooser No library found for javafx.stage...

    Probably that i have not understood how to use it!

  • Scrabble-like game

    @Chrisir try reading the comments in the Scrabble Godmode "SampleAIPlayer" tab, and also in the tutorial.sbs file.

  • What are some simple, cool, and fun games that a beginner at processing can make?

    Pong

    make a pong game using class Paddle and using class Ball; make it for two players (left and right paddle).

    Make it with a menu to decide whether two players play or one player against an AI / the computer.

    Arkanoid

    Also you could make Arkanoid (similar to Pong but with a grid of bricks you destroy; with different levels or even in 3D):

    https://en.wikipedia.org/wiki/Arkanoid

    General

    I suggest before you decide, you make a note on each game what steps you need to program to make it work, to estimate whether you have the time to do it or not.

    For each game you have to decide whether you just have a game of one/two players or also be able to play an AI. and 2D or 3D

    or Tetris (also 2D or 3D) or Snake. There are board games

    https://en.m.wikipedia.org/wiki/Board_games

    and Arcade game like Arkanoid or others - see

    https://en.wikipedia.org/wiki/Arcade_game

    Tic tac toe

    You can do tic tac toe for two human players or be able to play against an AI. Or even two players against each other. or make the game four in a row.

    There also is score four, a kind of 3D tic tac toe:

    https://en.wikipedia.org/wiki/Score_Four

    Others

    for these see

    https://en.m.wikipedia.org/wiki/Board_games

    I also worked on scrabble and checkers. Never finished it, in fact we are working on Scrabble, see other thread by Lord_of_the_Galaxy.

    I worked chess and Settlers of Catan, but never finished them. They would be to hard for you even to develop the figures and board.

    I also did Peg Solitaire, which is a single player game. So you can make a one player game. I made an AI that can solve it.

  • Scrabble-like game

    @Chrisir OK, I'll do that. Since you're busy for about a week, I have enough time to get it done (hopefully). I must admit though, that I'm a bit intimidated by the idea of starting writing an AI for Scrabble all on my own, and that's why I hadn't yet done anything besides asking others how the Godmode is :-SS

  • Scrabble-like game

    @Lord_of_the_Galaxy -

    I see. When thinking about how easy it is to find next moves and score them I t looks like I really underestimated how much simulation and endgame optimization is necessary to beat top players!

    https://en.m.wikipedia.org/wiki/Maven_(Scrabble)#Algorithms

    To start, however, I would guess that very simple AIs like "next random word" (stupid), "next longest word", and "next highest scoring word" (ok) would do well for keeping beginners and casual players entertained, and that some might actually be too hard for intro to Scrabble.

  • Scrabble-like game

    @jeremydouglass That shouldn't affect me, as my laptop couldn't possibly handle anything much - if the AI is too complex it would take atleast 20 seconds for it, but I want an AI that responds within 10 seconds time. So it would have to rely more on heuristics and not on brute force - something humans are inherently good at. So, yes, any AI I build will give the player a fair chance.

    Say, does anyone here play Scrabble regularly enough to beat a medium complexity AI? I'm afraid I cannot play Scrabble well enough.

    @cameyo Thanks!

  • Scrabble-like game

    Very impressive. I checked out the project and looked at both branches. This isn't anything that I will be able to participate in anytime soon due to many other commitments, but it is very interesting, and I'm happy to give feedback and glad to keep an eye on the progress.

    On the topic -- one thought I have is that it is easy to make AIs in games like Scrabble too cruel. An optimal winning algorithm is fairly easy, but no fun for human players to play against. A maximum scoring next word algorithm is fairly easy, but an AI who always plays their next available maximum scoring word is no fun for beginners to play against (even though such an AI also might not be competitive against top players without using simulation).

  • Scrabble-like game

    UPDATE: After a long time, the Godmode is finally complete - https://github.com/Lord-of-the-Galaxy/Scrabble/tree/ai_framework/ScrabbleGodmode.
    Anyone interested can immediately start work on an AI.
    Please test and comment.
    Thanks!

  • Scrabble-like game

    @kfrajer Even if you know how to share JSON packages across different users on the internet, how will we detect when another player is also playing Scrabble. We would always need a server.

    In any case, do you know how to send JSON packages from one internet user to another? We might be able to figure out some solution.

  • Scrabble-like game

    @cameyo I think translating to another language will be easy enough. All you need to do is replace the dictionary, and in the "defineThings" tab, change the letters their numbers and their scores.
    Assuming, of course, that the language supports the normal Scrabble.

  • Scrabble-like game

    @kfrajer -- I think @colouredmirrorball meant

    1. In scrabble, tile racks are secret, like hands of cards in most card games
    2. If you display all the scrabble tile racks for all players on one screen, they aren't secret, so everyone seeing all the tile racks is cheating
    3. so, make it a network game -- now different players have different screens, so they only see their own tile rack, so no cheating.
  • Scrabble-like game

    @colouredmirrorball My dear friend, actually implementing a "Challenge" system is fairly tough, and will take an hour or two easily.
    As to the menu, @Chrisir can do that, but what if we need to be able to load settings? And add more settings? There's a lot of new features that can be added, but aren't entirely necessary. But the player can always modify the source code ;) All those "nice but not necessary" features can be implemented later.

    Another major problem is that we'd need some sort of judge for that, right? But the word list we currently have is rather incomplete when it comes to certain rarely used words. We would need a complete, official word list for it to work.
    But that brings another problem - what if the player is from some other place, where some different words exist? That's another thing that can be dealt with with some "nice" features, but is just too difficult to be dealt with by one person in any sensible amount of time.

    And that's why I wanted collaborators - if people like you help us add new features, Scrabble can be so much better. So, are you interested?

  • How to replace only one word when the assigned key is pressed?

    @Pebpeb -- re:

    everytime you touch a letter, it will randomly display a word at the place where the first letter is placed vertically

    I want to make sure that I understand.

    1. are the letters being placed on a grid, like Scrabble or like a crossword puzzle? OR
    2. is each new word placed on the next line of a poem?

    This sketch always displays the same string, but pressing buttons adds new words (with line breaks) to the string each time:

    String [] words ={"alligator", "attaque", "array", "avion", "amour", "tyran", "talmudique", "thalasso", "tantrique", "tyrannique", "tu", "labile", "label", "arraisonnement", "condition", "voix", "charisme", "cannibale", "sciemment", "collusion", "calice", "calvitie", "fin"};
    String textDisplay = "";
    int TEXTSIZE = 30;
    void setup () {
      size (600, 400);
      background (0);
      textSize (TEXTSIZE);
      textAlign(LEFT);
      fill (255);
    }
    void draw () {
      background (0);
      translate(TEXTSIZE, TEXTSIZE);
      text(textDisplay, 0, 0);
    }
    void keyPressed() {
      if (key == 'z' || key == 'Z') {
        textDisplay = textDisplay + words[int(random(5))]+ '\n';
      }
      if (key == 'm' || key == 'M') {
        textDisplay = textDisplay + words[int(random(6, words.length))] + '\n';
      }
    }