Tuesday, February 1, 2011

Fuck SFTM

Sooooooooooo.... Ehem... It looks like the LuaJIT interpreter I have included in SFTM was infected. If you look at the comments on the initial post about SFTM, an anonymous user had warned me about a virus in the interpreter. Back then, only the heuristics of Avira was detecting that virus but even that user said that after an update Avira stopped detecting it. Other AV programs weren't detecting anything. Now Avira detects it again as TR/PSW.Nilage.hij. It looks like it's a hijacker stealing Lineage passwords (who plays Lineage on the official servers anyway?). I sent the file to VirusTotal and 18 AV programs are detecting it as a virus so it's official... FFS I've spread this file over many of my projects but thankfully all of them are private ones (except for SFTM obviously).

If you downloaded SFTM then scan your computer although it doesn't look like a spreading virus. I'm sorry for causing any trouble. I uploaded a new clean zipfile so you may download that one if you want. It will probably be faster too since I will inlclude a newer version of LuaJIT.

I still cannot remember if the included version is one that I've found on the web or if I had compiled it myself. I can't believe that I was running a virus since 2008-2009 since I had scanned my flash drive hundreds of times... I guess they just started detecting this variant of the virus (other variants existed long ago).

I've also made, and still not published, UFTM (Ultra Fuck This Mind). An optimized, and upgraded version of SFTM. The main change is that SFTM now will not try combinations completely randomly, instead it will actually think which combination is the best to play, based on the average information it expects to gain by playing that combination. The main disadvantage is that it's Ultra slow. I may upload it soon though.


Edit from 2021: Apparently this might have been yet another false positive but DYOR: https://www.solarstrike.net/phpBB3/viewtopic.php?t=1393

7 comments:

  1. Hello, when I put 9 colors and 9 places. It blocks on "Deciding." and there is that error message "luajit.exe: not enough memory".
    What is the solution to increase memory ? or How to desactivate success probabiliy calcul ?
    Thanks in advance

    ReplyDelete
  2. Hello, when I put 9 colors and 9 places. It blocks on "Deciding." and there is that error message "luajit.exe: not enough memory".
    What is the solution to increase memory ? or How to desactivate success probabiliy calcul ?
    Thanks in advance

    ReplyDelete
  3. You can't put that many colors. 9 colors in 9 places form 387420489 combinations. Even if we needed one byte for each, you would need abou 369MB to store them in RAM. In reality though, Lua uses more bytes for each one. Additionally I don't even want to think how long it would take for the program to make a move. But what is the point of such a game? It's too complex for most, if not all humans. :-| Also SFTM is not that well optimized. Also disabling the calculation of success probability wouldn't help at all.

    ReplyDelete
  4. Thank you for the answer, I'm not english (I'm french) but I think I understood the main of your explanation.
    Yes I really NEED 9 & 9, AND EVEN MORE! , in order to a serious software that I use.
    BEFORE I used this great solver : http://www.dcode.fr/solveur-mastermind
    which is much better than SFTM, but NOW it's limited at 6 places and 8 colors.
    Thanks in advance to keep me informed if an update of SFTM or UFTM is planned.
    OR if you know how to do to save and adjust the javascript code from dcode.fr

    ReplyDelete
  5. The mastermind solver you pointed me at is not written in Javascript, it's in PHP and therefore runs on the server and not in the browser. That also means that you cannot get the code unless the author wants to share it.

    But I consider this a challenge so I will make a Mastermind solver that consumes a constant amount of memory, instead heavily relying on the CPU. This of course will make it extremely slow in the final moves. I will email you when I have something ready. I might start working on it today too. But adding to it the capability of making some clever decisions like UFTM does is almost impossible (because of the already huge CPU load). But it will probably be able to find combinations of big size.

    ReplyDelete
  6. Thanks !

    "it will probably be able to find combinations of big size. "
    --> Yes it is the most important !
    (Currently I'm needing 11 places & 9 colors, repeat = yes unlimited, = 31 billion of combinations)

    "the capability of making some clever decisions"
    --> I confess you that I don't really understand this concept, or utility, excepted win a little bit percentage of probability, too slow for real benefit.

    "This of course will make it extremely slow in the final moves."
    --> in the final moves ... Is this not the contrary ?? each indication decreases possibilities, which overwrites the previous table/matrix, and becomes smaller, ... if your algorithm is sequential

    Have a nice work !

    ReplyDelete
  7. UFTM is not just selecting a random combination. It evaluates all possible combinations to find the one that even if it is wrong, will reduce the total combinations the most. But yes, it is very slow.

    As for the slow speed during the final moves, no it's not strange. As I said the new algorithm will consume the same memory whether you play with 4 colors in 4 places, or 10 colors in 10 places. There will be NO matrix at all... I'll write more about it when it's done. :-) The hard part will be to make it fast enough.

    ReplyDelete

Popular Posts