As there was some time left while sitting in the train I created a simple Mastermind game.

It works in Java UI and in ECC/AWI with AE11.2 and AE12

Just run SCRI.MASTERMIND

Have Fun!

It works in Java UI and in ECC/AWI with AE11.2 and AE12

Just run SCRI.MASTERMIND

Have Fun!

>:)

If there are enough votes I could create the easy cheesy mastermind version with only 1 digit and 3 possibilities....

:p

[edit] thx for the vote!

Do you remember Microsoft and Internet Explorer...?

So I will sell Mastermind for Automation Engine(TM) seperate for Just 9,99.

.... BitCoins.....

And because its an Automation Software I could easily implement a spam mail engine saying:

"Get Mastermind for Automic for free" - and afterwards send an invoice of 19.99

...still Bitcoins.....

...still Bitcoins.....

I'm getting used to it :)

We should work as partners!

we use the script functions get_login, delete_object and create_object for our password encryption tool

wanna_encrypt_and_cry4automic

and of course 100

...still Bitcoins...

per password.....

>:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:) >:)

Thanks for the like by the way ...

Which AE Version are you using?

## Attachments

I'm running in a V12.0.2. Did a quick test of the code generator, too. See my results beneath. The random function seems to work fine. Sorry, today I'm a little buisy. Will investigate that on monday:

2017-08-18 09:42:57 - U00020408 CODE: 3 7 5 4

2017-08-18 09:42:57 - U00020408 CODE: 6 3 5 8

2017-08-18 09:42:57 - U00020408 CODE: 8 6 2 5

2017-08-18 09:42:57 - U00020408 CODE: 1 2 7 4

2017-08-18 09:42:57 - U00020408 CODE: 2 1 8 5

2017-08-18 09:42:57 - U00020408 CODE: 7 5 3 6

2017-08-18 09:42:57 - U00020408 CODE: 5 4 8 3

2017-08-18 09:42:57 - U00020408 CODE: 7 5 4 8

2017-08-18 09:42:57 - U00020408 CODE: 3 7 8 1

2017-08-18 09:42:57 - U00020408 CODE: 8 5 1 2

2017-08-18 09:42:57 - U00020408 CODE: 6 8 3 1

2017-08-18 09:42:57 - U00020408 CODE: 1 4 2 8

2017-08-18 09:42:57 - U00020408 CODE: 8 7 3 5

2017-08-18 09:42:57 - U00020408 CODE: 4 7 5 6

CODE: 1 6 4 3

CODE: 7 1 4 6

CODE: 8 6 7 5

CODE: 1 8 3 5

CODE: 5 6 4 1

CODE: 8 2 7 5

CODE: 8 6 4 2

CODE: 5 2 8 4

CODE: 4 7 3 2

CODE: 1 5 6 4

CODE: 7 1 6 3

CODE: 6 7 2 4

CODE: 4 2 5 1

CODE: 7 8 5 1

CODE: 3 6 1 2

CODE: 1 8 3 6

CODE: 6 4 3 7

CODE: 4 1 2 7

CODE: 4 6 8 7

CODE: 4 6 2 3

CODE: 1 7 5 2

CODE: 5 1 4 7

CODE: 4 8 7 1

CODE: 3 8 7 1

CODE: 8 1 6 3

CODE: 4 8 7 6

CODE: 1 3 4 5

CODE: 4 5 3 2

CODE: 8 3 7 1

CODE: 6 3 1 8

CODE: 8 5 4 2

CODE: 1 2 6 5

CODE: 3 5 4 7

CODE: 2 7 8 3

CODE: 6 8 7 5

CODE: 1 7 4 6

CODE: 8 2 6 1

CODE: 5 7 8 6

CODE: 3 8 2 4

CODE: 8 3 5 7

CODE: 3 6 8 5

CODE: 4 6 2 3

CODE: 4 1 6 7

CODE: 8 5 3 7

CODE: 3 8 5 1

CODE: 5 1 3 7

CODE: 4 8 3 1

CODE: 6 8 1 7

CODE: 8 3 2 7

CODE: 7 5 1 4

CODE: 4 7 5 6

CODE: 5 1 8 6

CODE: 5 8 7 4

CODE: 6 1 8 2

CODE: 7 5 8 6

CODE: 1 7 3 8

CODE: 7 8 3 5

CODE: 6 7 1 4

CODE: 5 7 8 3

CODE: 2 6 4 8

CODE: 6 3 1 2

CODE: 2 4 1 7

CODE: 7 6 2 8

CODE: 3 7 8 2

CODE: 7 8 6 4

CODE: 3 6 1 4

CODE: 4 3 5 7

CODE: 6 7 8 2

CODE: 2 4 5 1

CODE: 4 1 5 8

CODE: 4 8 7 6

CODE: 2 5 7 3

CODE: 3 6 1 5

CODE: 2 6 7 1

CODE: 3 4 5 8

CODE: 6 5 8 4

CODE: 6 4 2 8

CODE: 4 2 7 8

CODE: 4 1 6 2

CODE: 8 2 4 1

CODE: 6 8 4 3

CODE: 4 2 1 8

CODE: 4 3 1 5

CODE: 8 3 5 4

CODE: 7 8 3 4

CODE: 8 6 7 4

CODE: 8 6 1 4

CODE: 3 8 2 7

CODE: 8 6 3 4

CODE: 6 1 8 4

CODE: 7 6 4 8

CODE: 6 5 4 8

CODE: 2 8 7 6

CODE: 5 6 3 8

CODE: 1 4 2 6

CODE: 2 1 6 5

CODE: 2 5 8 6

CODE: 5 6 8 1

CODE: 1 8 5 7

CODE: 6 4 7 2

CODE: 3 1 5 6

BTW: You should set your priorities correctly.......

Whats more important as Mastermind for AE ?

Hmmm a glass of Cuba Libre without coke......

have a great weekend!

1. Brilliant!

2. The graphics are so life-like, much better than GTA V. You are using Shader Model 2.1 from DirectX 11, right? The framerate is also impressive, it runs fluidly at 120hz on my gaming rig.

3. Will it be on Steam?

4. Will there be a CA/Automic Publisher Weekend on Steam?

5. don't EVER give Schelp any tequila! Just don't.

6. When my non-mastermind-stateful self stupidly brute forced it in about 15 tries (yeah, I suck ...), it said I used only three attempts. There's either a small bug with the games counter, or it's simply a very polite game much more considerate of the player's fragile feelings than, say, Dark Souls II. I opened a ticket with Automic support and they said as long as it doesn't crash, I need to uninstall my Sophos and try upgrading to Mastermind-on-Premise first (the last part, about the Automic ticket, may or may not be true).

7. What's your next project? With UC4 sadly lacking any form of scripted drawing capability, and no programmatic form manipulation, I still see great potential for Automic Entertainment Studios in the area of Roguelikes, and any sort of similar ASCII games.

It should, in theory, be possible to fully port Dwarf Fortress (https://en.wikipedia.org/wiki/Dwarf_Fortress) to UC4. Just sayin ...

:D

=> THX :)

2. The graphics are so life-like...

=> You should really reduce your exspectations by far, why do you want graphics for choosing 4 Numbers? :p

Just remeber what a wise man did (not) say some (holy **** its more than 25) years ago:

...640 K ought to be enough for anybody...

3. Will it be on Steam?

=> Hmmm if the Steam guys pay license fees to myself and Automic, why not...

4. Will there be a CA/Automic Publisher Weekend on Steam?

=> You shouldn't spend that much time playing games.... :p

5. don't EVER give Schelp any tequila! Just don't.

=> Are you envious?

6. When my non-mastermind-stateful self stupidly brute forced it in about 15 tries (yeah, I suck ...), it said I used only three attempts. There's either a small bug with the games counter, or it's simply a very polite game much more considerate of the player's fragile feelings than, say, Dark Souls II. I opened a ticket with Automic support and they said as long as it doesn't crash, I need to uninstall my Sophos and try upgrading to Mastermind-on-Premise first (the last part, about the Automic ticket, may or may not be true).

=> where was the wroong count displayed?

7. What's your next project? With UC4 sadly lacking any form of scripted drawing capability, and no programmatic form manipulation, I still see great potential for Automic Entertainment Studios in the area of Roguelikes, and any sort of similar ASCII games.

=> still working on AGE (AWI Graphics Engine)

It should, in theory, be possible to fully port Dwarf Fortress (https://en.wikipedia.org/wiki/Dwarf_Fortress) to UC4. Just sayin ...

=> still evaluating the possibility...

cheers, Wolfgang

Number of attempts to guess, in the final tally.

But no worries, we probably found the reason: Mr. Schelp (who may or may not have been given some Tequila at that time) started the game himself while I was playing it, thus probably resetting the counter. So it's probably not a bug, it's just not an MMONGG (massively multi-player online number guessing game).

Best,

Carsten

I definitely set the max parallel = 1 condition to avoid this.

No more Tequila for both of you !

But anyway thx for this input, I will implement a sabotage safe multiplayer VARA Engine.

:p

Potato, patato.

;)

MatthiasSchelp

As a Special gift here is a MasterMindSpecialFeatureVersion - MultiPlayer Mastermind.

Means more Players can play Single a game :-)

Please adjust your permission system as well - every user just gets X Permission on SCRI.MASTERMIND only.

## Attachments

I was thinking about generating a large number of random numbers on my test server and plotting them to see if the RNG has any discernible patterns, but I'd have to write them into a report and that would become huge and that was a pain. So I made the "light version" of such a test:

:SET &CNT# = 0

:SET &RND# = 0

:SET &SUM# = 0

:SET &AVG# = 0

:WHILE &CNT# < 25000

: SET &RND# = RANDOM(1, 100)

: SET &SUM# = &SUM# + &RND#

: SET &CNT# = &CNT# + 1

:ENDWHILE

:PRINT &SUM#

:SET &AVG# = &SUM# / 25000

:PRINT &AVG#

This generates 25.000 *) random numbers between 1 and 100 and adds them, then divides the result by 25.000. In a reasonable RNG, I'd expect the results to mostly fall somewhere on the side of 50, with some proper variation up and down.

*) I'd do more, but then I run into the loop detection code, and I was too lazy to go into Client 0 and change that treshold.

If I do this test with 100 numbers (and divide my sum by 100, naturally), the results are as expected:

45, 53, 48, 51, 54, 48

If I do it with the full 25.000 iterations though, the result is ALWAYS 50 or 51 !

I find this interresting, and now I really wonder what the seed for the RANDOM() function is. I should probably not generate RSA keys with this RNG or something :)

(edit: probably has to do with the way you can specify a seed for one call of RANDOM(), and subsequent calls of RANDOM will apparently return numbers from a pool based on that previous seed. Euphemistically called the "Basis": https://docs.automic.com/documentation/webhelp/german/ALL/components/AE/9/All%20Guides/Content/ucaapt.htm

So one RANDOM() call is probably deterministic based on a previous one. Since that pool derived from the seed must eventually run out, it will probably choose a new seed every few operations if none is given, thus the uniformity over long runs. Dear Santa: I'd LOVE to see the code behind this :) )

Suddenly I got curious too - but slightly different - how often a number would be "chosen" lets say from 1 to 100

in an amount of 10.000 iterations..

so I started my script 10.000 times and added the outcome in an excel sheet with an addition macro, this is the outcome (possibly I did some further Automic scripting.....):

2017-08-21 19:37:03 - U00020408 Number Range the RANDOM Numbers are taken from: 1 - 100

2017-08-21 19:37:03 - U00020408 Amount of RANDOM iterations: 10000

2017-08-21 19:37:03 - U00020408 ====================================================================

2017-08-21 19:37:09 - U00020408 Number 1 occurs 0000000000000110 times

2017-08-21 19:37:09 - U00020408 Number 2 occurs 0000000000000108 times

2017-08-21 19:37:09 - U00020408 Number 3 occurs 0000000000000083 times

2017-08-21 19:37:09 - U00020408 Number 4 occurs 0000000000000101 times

2017-08-21 19:37:09 - U00020408 Number 5 occurs 0000000000000117 times

2017-08-21 19:37:09 - U00020408 Number 6 occurs 0000000000000100 times

2017-08-21 19:37:09 - U00020408 Number 7 occurs 0000000000000103 times

2017-08-21 19:37:09 - U00020408 Number 8 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 9 occurs 0000000000000105 times

2017-08-21 19:37:09 - U00020408 Number 10 occurs 0000000000000088 times

2017-08-21 19:37:09 - U00020408 Number 11 occurs 0000000000000111 times

2017-08-21 19:37:09 - U00020408 Number 12 occurs 0000000000000121 times

2017-08-21 19:37:09 - U00020408 Number 13 occurs 0000000000000098 times

2017-08-21 19:37:09 - U00020408 Number 14 occurs 0000000000000098 times

2017-08-21 19:37:09 - U00020408 Number 15 occurs 0000000000000099 times

2017-08-21 19:37:09 - U00020408 Number 16 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 17 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 18 occurs 0000000000000100 times

2017-08-21 19:37:09 - U00020408 Number 19 occurs 0000000000000090 times

2017-08-21 19:37:09 - U00020408 Number 20 occurs 0000000000000091 times

2017-08-21 19:37:09 - U00020408 Number 21 occurs 0000000000000112 times

2017-08-21 19:37:09 - U00020408 Number 22 occurs 0000000000000107 times

2017-08-21 19:37:09 - U00020408 Number 23 occurs 0000000000000108 times

2017-08-21 19:37:09 - U00020408 Number 24 occurs 0000000000000090 times

2017-08-21 19:37:09 - U00020408 Number 25 occurs 0000000000000095 times

2017-08-21 19:37:09 - U00020408 Number 26 occurs 0000000000000109 times

2017-08-21 19:37:09 - U00020408 Number 27 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 28 occurs 0000000000000115 times

2017-08-21 19:37:09 - U00020408 Number 29 occurs 0000000000000105 times

2017-08-21 19:37:09 - U00020408 Number 30 occurs 0000000000000081 times

2017-08-21 19:37:09 - U00020408 Number 31 occurs 0000000000000095 times

2017-08-21 19:37:09 - U00020408 Number 32 occurs 0000000000000080 times

2017-08-21 19:37:09 - U00020408 Number 33 occurs 0000000000000091 times

2017-08-21 19:37:09 - U00020408 Number 34 occurs 0000000000000091 times

2017-08-21 19:37:09 - U00020408 Number 35 occurs 0000000000000084 times

2017-08-21 19:37:09 - U00020408 Number 36 occurs 0000000000000092 times

2017-08-21 19:37:09 - U00020408 Number 37 occurs 0000000000000083 times

2017-08-21 19:37:09 - U00020408 Number 38 occurs 0000000000000092 times

2017-08-21 19:37:09 - U00020408 Number 39 occurs 0000000000000093 times

2017-08-21 19:37:09 - U00020408 Number 40 occurs 0000000000000102 times

2017-08-21 19:37:09 - U00020408 Number 41 occurs 0000000000000071 times

2017-08-21 19:37:09 - U00020408 Number 42 occurs 0000000000000107 times

2017-08-21 19:37:09 - U00020408 Number 43 occurs 0000000000000087 times

2017-08-21 19:37:09 - U00020408 Number 44 occurs 0000000000000092 times

2017-08-21 19:37:09 - U00020408 Number 45 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 46 occurs 0000000000000105 times

2017-08-21 19:37:09 - U00020408 Number 47 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 48 occurs 0000000000000103 times

2017-08-21 19:37:09 - U00020408 Number 49 occurs 0000000000000107 times

2017-08-21 19:37:09 - U00020408 Number 50 occurs 0000000000000115 times

2017-08-21 19:37:09 - U00020408 Number 51 occurs 0000000000000100 times

2017-08-21 19:37:09 - U00020408 Number 52 occurs 0000000000000097 times

2017-08-21 19:37:09 - U00020408 Number 53 occurs 0000000000000100 times

2017-08-21 19:37:09 - U00020408 Number 54 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 55 occurs 0000000000000113 times

2017-08-21 19:37:09 - U00020408 Number 56 occurs 0000000000000102 times

2017-08-21 19:37:09 - U00020408 Number 57 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 58 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 59 occurs 0000000000000135 times

2017-08-21 19:37:09 - U00020408 Number 60 occurs 0000000000000103 times

2017-08-21 19:37:09 - U00020408 Number 61 occurs 0000000000000102 times

2017-08-21 19:37:09 - U00020408 Number 62 occurs 0000000000000107 times

2017-08-21 19:37:09 - U00020408 Number 63 occurs 0000000000000092 times

2017-08-21 19:37:09 - U00020408 Number 64 occurs 0000000000000083 times

2017-08-21 19:37:09 - U00020408 Number 65 occurs 0000000000000115 times

2017-08-21 19:37:09 - U00020408 Number 66 occurs 0000000000000086 times

2017-08-21 19:37:09 - U00020408 Number 67 occurs 0000000000000093 times

2017-08-21 19:37:09 - U00020408 Number 68 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 69 occurs 0000000000000107 times

2017-08-21 19:37:09 - U00020408 Number 70 occurs 0000000000000087 times

2017-08-21 19:37:09 - U00020408 Number 71 occurs 0000000000000116 times

2017-08-21 19:37:09 - U00020408 Number 72 occurs 0000000000000119 times

2017-08-21 19:37:09 - U00020408 Number 73 occurs 0000000000000099 times

2017-08-21 19:37:09 - U00020408 Number 74 occurs 0000000000000108 times

2017-08-21 19:37:09 - U00020408 Number 75 occurs 0000000000000099 times

2017-08-21 19:37:09 - U00020408 Number 76 occurs 0000000000000097 times

2017-08-21 19:37:09 - U00020408 Number 77 occurs 0000000000000103 times

2017-08-21 19:37:09 - U00020408 Number 78 occurs 0000000000000102 times

2017-08-21 19:37:09 - U00020408 Number 79 occurs 0000000000000134 times

2017-08-21 19:37:09 - U00020408 Number 80 occurs 0000000000000105 times

2017-08-21 19:37:09 - U00020408 Number 81 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 82 occurs 0000000000000084 times

2017-08-21 19:37:09 - U00020408 Number 83 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 84 occurs 0000000000000088 times

2017-08-21 19:37:09 - U00020408 Number 85 occurs 0000000000000084 times

2017-08-21 19:37:09 - U00020408 Number 86 occurs 0000000000000095 times

2017-08-21 19:37:09 - U00020408 Number 87 occurs 0000000000000095 times

2017-08-21 19:37:09 - U00020408 Number 88 occurs 0000000000000113 times

2017-08-21 19:37:09 - U00020408 Number 89 occurs 0000000000000093 times

2017-08-21 19:37:09 - U00020408 Number 90 occurs 0000000000000106 times

2017-08-21 19:37:09 - U00020408 Number 91 occurs 0000000000000108 times

2017-08-21 19:37:09 - U00020408 Number 92 occurs 0000000000000113 times

2017-08-21 19:37:09 - U00020408 Number 93 occurs 0000000000000104 times

2017-08-21 19:37:09 - U00020408 Number 94 occurs 0000000000000094 times

2017-08-21 19:37:09 - U00020408 Number 95 occurs 0000000000000096 times

2017-08-21 19:37:09 - U00020408 Number 96 occurs 0000000000000108 times

2017-08-21 19:37:09 - U00020408 Number 97 occurs 0000000000000123 times

2017-08-21 19:37:09 - U00020408 Number 98 occurs 0000000000000092 times

2017-08-21 19:37:09 - U00020408 Number 99 occurs 0000000000000114 times

2017-08-21 19:37:09 - U00020408 Number 100 occurs 0000000000000111 times

seems quite ok for me.

Not to me it doesn't :)

My hunch still is that it's much too equally spread, I still think it's the result of reusing the seed. The paper and the book on testing RNGs I looked at, written by much more clever people than this humble Automic admin, seemed to agree :)

The total maximum (135) is about 50% of the total minimum (71). While randomness is funny business for small samples (e.g. you can't prove that a sequence of a million ones isn't random), over 10.000 runs there still should be much more deviation.

We can do the same thing using, say, random() in bash (not a great RNG, certainly not usable for crypto, but nevertheless something for a quick comparision):

for i in $(seq 1 10000) ; do echo $RANDOM | tail -c 3 ; done | sort | uniq -c | sort -n > /tmp/delme \

&& head -n1 /tmp/delme && tail -n1 /tmp/delme

bash random() generates numbers between 1 and 32767, by getting the last two chracters (two digits and the line break), we get a reasonable approximation to your test, we get numbers from 00 to 99. Some sample results over 10.000 iterations each. Here's some results, which are much more the deviation I'd expect from a somewhat proper RNG (first is the amount of occurences, second is the actual number):

1 3

128 88

1 1

122 71

1 1

123 99

1 9

125 50

1 2

130 66

(oh my, why did I have to do this? Unless my test is flawed (which it probably is ;) ) it seems the bash RNG also has discernible patterns, but at least it shows much more standard deviation from UC4, which to me makes it at least more random :) )

Until I want to create a crypt tool using Automic script :-)

But but ... that's exactly what's needed to automate the generation of object names that should not be found with the quick search :D

(The circle is now complete. I rest my case ;) )

or the brute_force method search for *

?