To me it looks like solving the issues is complicated,
THIS. Although it was reasonably self evident as to what needed to be done to secure against DeepCrypto's original version of the attack, the secondary vector that Will has pointed out is significantly less straightforward.
I have been implementing a large simulation to approximate an appropriate work curve. Although I initially thought this would be an "easy" task, it seems that the work curve is highly sensitive to the specifics of the approach taken by miners to finding solutions. As such, it is not enough to just run minim1ner's bot and measure the work requirements as originally planned - the slightest change in the search parameters to the bot results in a different work curve. I'm now simulating an approximated combination of different types/parameters of bots, as well as taking measurements of the work curve under both human mined play, and "cyborg mining" play, in order to best fit an average curve.
Further complicating (and slowing) the matter is the fact that at low difficulty runs, the curve is basically indiscernible. This means that the simulations to measure work must not only include a composite of different approaches to mining, but must be run against higher difficulty challenges, which means that finding solutions takes longer. Since many solutions must be found for each of many different TTs along the curve, this becomes very time consuming. Runing each "sweep" from 60 seconds down to 10 seconds on TT takes about 6+ hours (and this is with pretty much all of my mining resources thrown behind the simulation) and we will need quite a few of each sweep for a reliable average. Just the "run time" on approximating the curve will be several more days, actually making the code changes will be a few more days, and planning/deploying the necessary fork will be a few more days beyond that. In general, these sorts of developments can't happen overnight. In this specific case, it can't even happen over a weekend, or likely over a week or two. The number crunching requirement in this case is just downright
big. (If anyone out there would like to contribute a few hundred CPUs to speed this work measurement process up, please contact me!)
I will likely post my first "rough" analysis of the data so far in the next day or two, along with a first stab at a polynomial to fit the curve, but we will need several more days of simulation running time before we can have any real confidence in the approximation.
there is no precedent for this in crypto world, Motocoin is the first to attempt pure proof-of-play implementation.
Yes, specifically we are the first chain to synchronize three clocks, and this is kind of a big deal. I've come to term this a "second order block-chain" and although it is very cool that it is even possible, it puts some unique constraints on the mining process. Perhaps things would have gone more smoothly if the proof-of-play challenge had been done in a way that only required a "first order" chain (I suspect so!) but this probably would have made for a very different game, and it is "too late now" anyway.
(EDIT: I feel that the importance of this 3-way time-stamping synchronization mechanism can't be overstated. If we can successfully have a second-order chain we can inductively assume any order of chain. If we can synchronize 3 "inter-related logs" than we could synchronize tens, or hundreds, or hundreds of thousands. This mechanism might allow for things like a generic meta-chain structured to include a synchronization against any arbitrary chain for which it had a definition of the work curve characteristic. We can go way beyond just "wall clock time" "main chain time" "in game time." The possibilities around such structures quickly even become a little mind boggling. The practical applications directly to MOTO are awesome, like the possibility for tournaments that not only escrow MOTO and/or BTC for entry, but could offer claim of a future BTC network coin-base as prize. It would take a lot of work to get there, and some improvements to related "p2pool like" technology, but such things become possible.
The fact that MOTO is the first mover in both the proof-of-play and "second-order chain" attempts is a big part of why I've jumped into the project in the first place, and why I'm still personally buy-and-hold on every coin I can get. (EDIT2: Despite the particular and peculiar growing pains that the first attempted combination of the two resulted in!) When people wake up to what MOTO itself will be able to do with this novel sort of chain, and what other "conscious" networks will be able to draw on from the work that MOTO is
already pioneering.......)
HunterMinerCrafter has been more transparent about his motives than 99% of the developers I've seen around.
I'm trying my hardest. Will has also been quite a bit more "above board" than most devs I've observed as well, even despite some of the early drama. If nothing else, at least we not only don't make vague and bogus claims, but actually go out of our way to do the opposite and offer sound reasoning and justification behind our opinions and corresponding decisions. We've also been active in reaching out to other coin communities to try to point out others' vauge, bogus, unreasonable or unjustified claims when those claims overlap with the goals of MOTO.
Also, I think that just the fact that we have two independent devs, who are even "at odds" with one another and have entirely different backgrounds, perspectives, and motivations (and that we're seeking more involvement!) should be a clear sign that this is not your average alt. I'm quite sure that any of these now-thousands of scam coins would not ever have taken the step that Will did in bringing an independent developer into the project. (I suspect most would not even entertain the notion if proposed to them, and many would even go so far as to moderate the suggestion out of existence to keep the idea out of the heads of others.)
This coin is far from over. Yes, it will probably always be a bot-coding competition.
I think any "human mined" coin both always inevitably will be and always
should be a bot-coding competition. While this might evoke a negative knee-jerk reaction by many, it rationally shouldn't. This is no different from the fact that bitcoin has always been and will always be a "more efficient SHA coding competition" and this is a good thing for bitcoin, not a deficiency. The only real unique aspect here is that it could never be feasible for SHA to be done by hand, let alone made enjoyable to do so. With MOTO human mining can (and will) be made enjoyable. (Again.) It is important to keep separated these two distinct concerns, and many on both sides of the debate seem all too eager to blur the lines.
In the long run, I see "cyborg mining" as likely being the eventual outcome. Just "running the bot" will under-perform relative to human-guided bots, at least for a very long while. Since bot guidance is itself a sort of game (this has become particularly clear to me since I've starting toying with Foldit after my conversations in the other thread with Gatra about proof-of-play for scientific games) it may very well be that nobody even has interest in "pure" human mining in the end, anyway. It will likely be that MOTO, HUC, and any other "human mined" coin in the future, will always be destined to operate much like Foldit, where success depends on a healthy balance of AI and human intuition working together on a single challenge. HUC has already been like this since about 2 weeks after launch.
Anyone who thinks computers are ever gonna be long-term inferior to humans in solving of any deterministic problems is, well, delusional.
It is increasingly surprising how many people share this delusion. These days it is becoming quite apparent how people are not aware of what is happening with contemporary AI research. The world is on the fast track to sentient agents, and it is looking like people outside of the industry are going to get blind-sided, specifically because they are stuck in this particular and peculiar delusional state.
There is no permanent solution, so you gotta take Moto for what it is - and improve its current premise to attract more talented AI engineers...
I mostly agree, and it already seems to be doing just this.
Where I disagree a little is in that we don't entirely have to take MOTO for just what it is,
as it is. I think more important (at this juncture) than attracting devs to the mining side is the goal of attracting devs to the dev side! There is a lot that we can do in terms of making the coin more interesting and enjoyable, but as we've concluded earlier in the thread this is a task that is bigger than the combined efforts of only one official dev (Will) and one community volunteer dev (myself) can handle. Between everyone in the community we have a nice laundry list of ideas that are good and could be implemented (and an even longer list of other ideas, heh) but we're already "under staffed" just on addressing the low level infrastructural work to be done! We need more volunteer contribution of developer time here than on the mining side, for the moment. The mining side is largely "taking care of itself" naturally through competition. (We already have a tx processing network that is
quite a bit faster than most, without (so far) any sacrifice in security. This is a hugely understated accomplishment!)
Instead of crying over what it cannot realistically ever be.
Unfortunately, there will always be those who desire the network to function differently than how it does. This seems to be universal among crypto offerings, as well, and not particular to MOTO.
What I find most surprising is the common combination of a desire for a network to behave differently and the lack of any initiative or effort to make it do so. If you really believe that a specific network should behave differently then put your money (in the form of energy) where your mouth is and hash on a new fork. A block chain is a weighted range-voting process, so if you want to see some change all you need do is propose and champion the change, and then go "get out the vote!" If your change is good and the other participants agree that it is good, your change will be enacted. If your change is no good you'll be hashing alone and unable to interact with the network.
It seems many people don't understand this most fundamental aspect of these currency networks, and it saddens me. Much progress that should have been made by now in the crypto space has likely been delayed simply by many refusals to actually champion their cause and cast their votes.
If you aren't happy with some PoW coin's miners' claim to subsidy then your only sensible and useful recourse is to bring up more hashing power and reduce their subsidy claim!
If you aren't happy with the MOTO bots' operators' claim to subsidy then your only sensible and useful recourse is to operate a bot and reduce their subsidy claim!
Complaining about bot operators without also running your own bot is a bit of "pissing into the wind." Either turn around, or stop screaming into that wind about your pants being wet. No other course of action accomplishes anything.
But you seem to have zero understanding about how cryptocurrencies and blockchains work, so it's probably futile to try and explain the rationale.
Again, I personally always try to defer to education before exclusion. I find it best to briefly try to get across to people where their rationale has gone astray and/or what they are "missing" about the peer consensus process, as I find that in most cases people do quickly get to the "A HA moments." If they don't, they'll usually just eventually opt to exclude themselves on their own, so explicitly excluding from the start usually accomplishes nothing that wouldn't happen naturally anyway!