I am currently working on a procedurally generated game, and vaguely remember having read a book/paper/article in which it was said that there exists a published algorithm which can generate high quality game board games with a random set of rules, which are as good as human designed game board games. The algorithm was NOT limited to a single game such as Sudoku or Crossword puzzles, it rather would generate a set of rules for the players to play by, so it could potentially generate tic tac toe, checkers or 4 in-a-row wins and variations of all 3 games. I think the article was published between 1980's and 2006ish and that it was published in a journal. Sadly I cannot remember where I read the article, only that it must've been in the last 8 months. If you know about this algorithm or something similar to it, please post. Thanks a bundle, Mark io
Mark io
Posts
-
In Search for a Published Board Game Generating Algorithm -
which mathematical subjects I need to know for learning algorithmsThe guy behind C++ wrote two books, The C++ Programming Language is something I believe any serious C++ connoisseur should have chewed on for longer periods of time. Algorithms in a Nutshell by George T. Heineman, and others is something I just started to read, and so far its good.
-
Dealing with arbitrarily large power of 10 numbersIt may be a good idea to create a struct or class I'll call it
LN
which has a private vector with intergersVEC
in the range of 0 to 9. The class has functions for Algebraic operations (+,-,*,/) to add twoLN
together. These functions must: - determine the sizes of bothVEC
and resize accordingly. - iterate though bothVEC
and execute the operation digit by digit. Since vectors are dynamically allocated, you have virtually no cap on how many digits the number has (accept for RAM). You'll have to replace all score related constant values in your code withLN
's I'm not sure how your game mechanics are designed, but if you have many hundreds of entities which add some constant value per second, it might be a good idea to have a single variableX
which is added to the game scoreS
every second, instead of iterating through all entities and adding the constant value toS
. That is, when an entity is created, it adds it value per second constantE
toX
and when the entity is destroyed it subtractsE
fromX
. In every game step you then addX
toS
. This therefore only requires a single addition operation per game step and of course an addition operation when creating or destroying an entity.