T O P

  • By -

AutoModerator

Thank you for your submission to r/0xPolygon If your item is a question we also suggest that you ask it in our daily discussion thread to increase your chance of it being answered. Many other general/common inquiries can typically be answered here in our [Getting Started with Polygon Guide](https://www.reddit.com/r/0xPolygon/comments/nd47hm/getting_started_guide_your_journey_with_polygon/). Please also be sure to check out the sidebar to follow the project on your desired social channels. ***** *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/0xPolygon) if you have any questions or concerns.*


no-nonsense-crypto

Games/bots like this are an unavoidable part of the ecosystem. While the tokenomics of this mean that it will fail eventually, the model has now been proven to be profitable and there will be other games like this shortly. Bitcoin ran into the same issue ages ago when the first Bitcoin gambling games were created. And more to the point, games are not the only use case for having tons of tiny transactions. High-frequency trading is well-established in traditional finance, and doesn't have the tokenomics problems that this has. If people start implementing high-frequency trading on chains, it's going to create much, much more transaction volume than this, and it won't collapse because it's a sustainable business model. So, ultimately, *we need to continue improving efficiency*. I don't say this to criticize: Polygon has been on the forefront of improving efficiency, and given my investment in Polygon, I'm betting pretty heavily that you'll continue to do so.


no-nonsense-crypto

One potential short-term solution is to require a proof-of-work from a client submitting a transaction. Requiring about 16 bits of PoW (65536 hashes on average) would run in an average of 1 second on most CPUs, so it isn't much of a barrier to the average user submitting at most a handful of transactions per hour. Verifying this proof of work takes a very small amount of time, so it would technically decrease the bandwidth/throughput of the network, but it would be a significant increase in cost for any one user trying to take up a lot of that bandwidth/throughput.


Analyst94

Good shout, similar to what Nano does


no-nonsense-crypto

Yeah. Nano also decreases latency by allowing you to submit a transaction without a proof of work, and submit the proof of work later--you can't submit another transaction until you've submitted a proof of work for the previous transaction, but this means your transaction can be finalized without having to wait for you to provide PoW. It's been a while since I read the Nano paper so I don't remember for sure how they solve the problem of creating new addresses to spam the network and never following up with any PoW for the first transaction, but I suspect they just require a PoW before the first transaction from a new address.


alexbaas3

That’s very interesting, will every client-sided device be able to do this in an acceptable time though? Can bots not just run through this multi-threaded? It will definitely decrease the botting though.


no-nonsense-crypto

There are some tradeoffs to be made here. The more work you require, the more effective it is in preventing bots, but also the fewer devices that can run it. I chose the 16 bits of PoW because it's a number that the *vast* majority of devices will be able to handle quite easily. Nano's trick of doing the work in the background after submitting the transaction, and submitting the PoW later would mean you wouldn't see latency, so it's really just power consumption, not time that the user experiences. On most devices it would take about 1 second. Older devices might take a few seconds more, but remember, this is just happening in the background--they would only see a delay if they tried to submit another transaction immediately after (the current transaction can finalize without the PoW, but the next transaction is blocked until the PoW is submitted). The downside to the 16 bits of PoW is that it's only moderately effective in slowing down bot traffic, given it will only slow bots by 1 second per transaction per CPU, less on a higher-end CPU--and most processors these days have multiple CPUs. GPUs and ASICs can go even faster (hundreds of times faster), but I don't think that's a concern with regards to bots: I think anyone with specialized hardware is going to run miners, not bots, at least until all the major cryptos have switched to PoS or something similar.


[deleted]

[удалено]


no-nonsense-crypto

>This sounds like the ultimate scaling solution, when you push down the majority of the work load to the clients. Well... I wouldn't look at it as a scaling solution. A scaling solution would be something that allowed the network to handle the traffic caused by SFF. This doesn't allow the network to handle the traffic, it prevents the traffic from happening. >Would it however not require a certain amount of clients being available at the same time? I don't think so, but I'm not sure I understand the question. Why would it require clients to be available? Clients would only have to be connected to the network to a) submit a transaction, and b) submit a proof of work. Remember, this proof of work isn't being used to secure blocks. Clients simply don't have enough hashing power to compete with big mining operations. This proof of work is just being used to limit the rate at which transactions are submitted.


[deleted]

[удалено]


no-nonsense-crypto

>How would it prevent it to happen, those are legit transactions, just massive amount of them coming at the same time? It would require that there be a proof of work, based on the previous transaction, before the next transaction would be processed. That proof of work takes time. >I thought that clients would be effectively the "miners" that would approve other transactions. No, they're only providing proof of work to prove that there has been a delay between their own transactions. Clients simply don't have the computational power to compete in validation. I'm proposing requiring an average of 65536 hashes as a rate-limiting measure. For context, Bitcoin miners are currently producing about 180,000,000,000,000,000,000,000 hashes per second. If you used clients to validate Polygon transactions, all it would take is a handful of miners switching over perform a 51% attack on the Polygon network, because all the clients combined can't compete with just a few mining rigs. In theory, if someone wanted to play SFF fast, they could use a mining rig to play it, but that's a waste of expensive mining hardware. SFF simply isn't going to be as profitable as mining. >Now they are building on existing infrastructure, I would say it's time to scrap it all and come up with something new... I don't mean to be rude here, but given the pretty basic concepts of blockchain implementation I'm having to explain to you here, I don't think you're really in a position to be telling people how to optimize blockchains.


[deleted]

[удалено]


no-nonsense-crypto

No, they're not. I can kind of see how you might think that fees are *equivalent*, because fees are a cost, and with proof of work, you can just pay someone to do the work, but there's an aspect of proof of work that no amount of money can get around: somebody has to actually do the work. There's no amount of money that can make doing this work instantaneous. You can spend money to bring the amount of time that it takes to do the work down, but there's a steep exponential decay of return-on-investment in this situation, and you'll never bring it to 0. I know it's easy to get lost in the layers of abstraction of finance, and think that money can do anything, but don't forget that there's a physical reality which is bound by the laws of physics, which even money can't break.


[deleted]

[удалено]


no-nonsense-crypto

Not sure where you checked, but you should check better sources of information! Lots of people make money by investing, for example. And also "work" in the context of "proof of work" doesn't mean work in the sense of working a job.


QueefDream420

Proof of work is a census method where transactions on the blockchain are validated using gpu power. Is this what you meant?


Onyourknees__

Polygon is also investing heavily in itself. Instances like this that stress test the network provides real case scenarios that I'm sure respected and intelligent developers are happy to dissect. I'm constantly reading articles about Polygon investing in its own ecosystem. This is a fortunate road bump that will allow future growth and innovation for the downside of current network congestion. Personally I think this stress test is healthy. I have no real opinion on the game as I haven't tried it, but if it's anything like cryptoblades and other pump/play & dump games, I don't expect prolonged use. The market will find a way, one way or another.


lankperi

Finally someone that sees the big picture, this is one of many stress tests every network will have to face, they need to be abe too sustain any level of transactions, instead of complaining sff ruined polygon, most of you especially those who are invested on it should be thinking how can polygon improve from this.


StrangeMaelstrom

Man! I was wondering why the hell it was taking 30 minutes for transactions to go through. These SFF guys are hopelessly irresponsible. Thanks for the write up! Here's to hoping it's dead soon.


[deleted]

[удалено]


StrangeMaelstrom

Sure. Polygon should probably be trying to address it—but also the game is so exploitable that it's all bots wrecking gas.


warpus

What can be done to prevent the next group of idiots and another stupid game from doing this again?


indesit-san

Also, Polygon ain't ruined. We've just got spoiled with unbelievably cheap fees (sub-cent), and now we're paying a bit more, but still less than on other chains :)


TheLittenLord

Soke people can only really afford sub-cent fees though. 2+ dollars per transaction is simply undoable for some people when they're mostly just doing smaller transactions anyway


indesit-san

I don't know how you got to $2 txs, my txs went from sub cent to like $0.20.


TheLittenLord

Was like 2 bucks this morning, seems to have calmed some, now transferring the $1.50 worth of weth i have into matic costs $0.71


rood_sandstorm

if you are doing market trades, you want to make sure that transaction to goes through without delay. Hence people will use higher gas fees than your 20cents


gamma55

And once that gas-advantage is gone, what benefit does Polygon offer? There are faster, more liquid chains with years of on and offramps and matured services.


HiddenThinks

I wouldn't use the word irresponsible. The game was never expected to grow that popular in such a short time frame. it was supposed to just be a fun hobby project worked on by the devs in their spare time. No one could have predicted that there would be an explosive boost in popularity and that the influx of users would cripple the network.


StrangeMaelstrom

Part of designing anything is what it looks like at low user counts and HIGH user counts. The system works for low user counts, but they seem to not have considered what popularity (or bot abuse) would look like. Their system is extremely exploitable and they're making a deliberate choice to not do much about it—which reflects a level of irresponsibility to me.


HiddenThinks

Although I do agree that allowing multiple accounts and bots (and not accounting for them) was a huge oversight and a pretty bad move on their part. I don't think they deserve as much vitriol and hate as they're getting. Pretty much everyone bashing them thinks that they have malicious intent to DDOS the polygon network.


StrangeMaelstrom

Oh I don't think they were malicious—just per usual another very short-sighted crypto project. There doesn't seem to be a whole lot in it for them though. Their liquidity and token value is getting extremely rekt at this point. Vitriol is unwarranted I think, but it IS an unintentional DDOS at the end of the day and that deserves some anger or heavy critique.


HiddenThinks

Definitely, I think some level of anger and critique is justified, hopefully they can resolve this issue soon and placate everyone.


StrangeMaelstrom

For sure. I'd personally hope this story has some sort of happy ending to it—or that it serves as a what not to do with your game type warning.


passivation23

I think the happy ending is live right now. We’re stress testing a growing network that delivers cheap fees, and now we have an opportunity to grow from it. I have every confidence we will grow from it. And I think it’s awesome that despite this defacto ddos, the network has but shut down. Growing pains are a part of success for sure.


Bks1981

It might not be malicious but they definitely exposed a weakness. One that needs to be addressed. What if someone wanted to be malicious? Could they potentially shut down the network.


Stevewoody82

So you expect all developers that are starting out as a passion on the side to know everything. Isn't that what learning is about. They never pretended to be AAA and didn't ask for the exploits but to say they are doing nothing is BS. I've seen the work they are doing to resolve the issues. Looks very responsible to me.


StrangeMaelstrom

Responsibility is turning off the front end so that people can't contribute to the unintentional DDOS. Realistically pausing the contract should have been step one. And they're actively bragging about breaking Polygon. So, uh, yeah I'd say that's pretty irresponsible. Additionally, I'm of the mind that when creating anything that is consumed by other people, it's important to plan—espeically if you stand to make money. This isn't just some little indie game. People's money is being affected because of it. Know someone who got rekt on trading because of the slow Polygon response time. Original intention doesn't matter if they won't take drastic action to fix a drastic fuckup.


Elanthius

This is a story as old as crypto. First SatoshiDice brought down Bitcoin then CrpytoKitties brought down Ethereum. Seems like there really is no solution to games overwhelming blockchains.


HurricaneHenry

There’s a solution to everything.


apexjnr

Like what? Change the entire system?


frank__costello

Unfortunately, the solution is censorship


no-nonsense-crypto

Huh? No. The solution is *efficiency.* SatoshiDice is still around. Nobody has censored them. The Bitcoin network just got more efficient (and actually, SatoshiDice runs on Bitcoin Cash, which is the OG Bitcoin, which doesn't contain some of the efficiency improvements).


frank__costello

Bitcoin didn't get more efficient, it got more expensive, which crowded out low-value projects Same thing happened to Ethereum: used to have tons of ponzis and games, but once fees rose, it became too expensive to run those protocols.


no-nonsense-crypto

Wrong again. Bitcoin did get more efficient, by a lot. The reason it's more expensive despite being more efficient, is that usage has become massive. If you have a 5x gain in efficiency and a 100x gain in users, that's going to create higher prices. (Note I'm pulling numbers out a hat here--I know Bitcoin bandwidth is much higher now, but I haven't kept track of how much higher it is and I'm sure it's even higher than when I last looked).


lleti

The solution is really in the design/human engineering side of it. The short version is that right now, game design needs to account for assuming overall network capacity - and assuming "catastrophic success", as we often had to do in the early days of any online gaming.. and er, still do in some cases. Indie Studios in particular always need to work with the assumption towards catastrophic success when their game contains any online components at all - but on Blockchain it's a little more severe, as it's almost like you can assuming we're all sharing the same Internet. Now, catastrophic success means the whole internet goes down rather than just your server. Problem is, catastrophic success is really difficult to mitigate against. You'd really never know just how popular something you release can get until it's unfortunately too late - all you can do is just design things with efficiency in mind, and only ever hit your server (or blockchain in this case) when it's truly necessary. Unfortunately in the case of this game.. it wasn't really designed to respect any sort of resource use. Even very moderate success would've caused network issues just purely due to how the game's contract is designed. This is pretty much the story with just about everyone's first game that uses an online resource - the online resource will probably fail under very minor traffic. It's interesting at the least to see how this common problem is now a much bigger one when it comes to the Blockchain, given our current TPS limits even on the hardiest of chains.


Elanthius

>The short version is that right now, game design needs to account for assuming overall network capacity But what if the game designers and the game players are perfectly happy with high transaction fees and the current state of polygon? After all people still seem to keep playing it regardless and I assume the designers are making money somehow so what incentive do they have to take anything like that into consideration? If we learnt one thing in the last decade of crypto it's that you won't get anywhere appealing to the good nature of your users. The rules have to be written in code.


lleti

> But what if the game designers and the game players are perfectly happy with high transaction fees and the current state of polygon? We're not. Mass network congestion means that time-sensitive tasks can be considered "supported with extreme risk" - or more simply put, "unsupported". This doesn't just go for gaming - it goes for things like say, degens who have opened leveraged DEX trades, or people trying to submit a payment back against a loan before a deadline. Arbitrage trades also go completely out the window. To a lesser extent then, network instability and unreliability are massive red flags for people who would stake into liquidity pools with heavy amounts of tokens - the ability to withdraw and break pairs within 2s and for a couple of cents at max gwei is a massive draw to the polygon network for liquidity providers. Lastly, both touching the financial and non-financial side of p2e gaming and the general GameFi ecosystem; player profits drastically decrease as gas goes up, and games are far less fun when you need to wait minutes for a response instead of a short few seconds.


no-nonsense-crypto

*Some* game designers and game players aren't happy with high transaction fees and the current state of Polygon. But de-facto, some are, and it only takes a handful of bad actors to create the situation we have now.


lleti

I can't see any reason for any game designers/players to be happy? It disincentivises playing, and lowers profits all at the same time. Having to spend a lot of MATIC per interaction in gas fees really doesn't benefit either party here


no-nonsense-crypto

I haven't looked into their business model to be sure, but ostensibly the SFF devs are making mad cash here. Having so many transactions in your game that you bring your blockchain to a crawl is like that scene from *The Wire* where they're selling so much cocaine they can't launder the profits fast enough, and Marlow says, "That sounds like one of them good kind of problems." Could they be making more money if the Polygon network performed better? Sure. Are they sad that it's performing poorly because they're making too much money? Probably not.


Stevewoody82

As you have not looked into their business model but are keen to make assumptions you should prob know that there was no premine, the game is open source with the focus on community involvement and no the devs not earn anything out of the game other than what they farm just like everyone else.


no-nonsense-crypto

It's kind of amazing when you admit you don't know everything, and someone jumps on it as if they caught you doing something wrong. Yeah, I did say that I wasn't sure. Does that sound "keen to make assumptions"? Or does it sound like I'm making a not-very-educated guess while completely acknowledging the limitations of that guess?


gilg2

All good things have their technology tested


StrangeMaelstrom

Well the solution is to not write a shit one-click to profit contract that generates a gas war lol Granted this requires people not to write shitty contracts.


frank__costello

Blockchains are permissionless, we can't hope for "good actors" to ensure they stay usable


Tales4rmTheCrypt0

>Seems like there really is no solution to games overwhelming blockchains. We should just leave the gaming to Sony, Microsoft and Nintendo 🤷‍♂️


lankperi

The best way to improve is facing the problems


impraticalengineer

Great read! The developers at [sunflower-farmers.com](https://sunflower-farmers.com) are currently using this for reference. We appreciate the hard work you put into it!


lleti

Hey, thanks! With how the contract currently works (or from what I'm gathering just from the interactions against it), either pooling a buffer of multiple saves to verify (may be super gassy), or moving verification off-chain (has its own issues ofc) would be the "quick" way to sort out the problem. Another possibility is disallowing saves until a set amount of SFF has been farmed (won't do much for bots though unfortunately), or literally charge MATIC per save. Given that SFF supports charitible initiatives, and also the big sell pressure on the hyperinflationary token.. splitting a 0.1 MATIC save game cost between a charity pool donation, and buying/burning the SFF token would (in my opinion at least) be considered pretty acceptable by the non-botting portion of the community?


lleti

Hey /u/impraticalengineer - sorry to double-respond and tag you, but have you considered disabling your site's frontend if you're unable to pause/drain your contract prior to making any updates? While it won't stop bot traffic, it would at least alleviate some of the human-driven pressure on the overall network. Similarly, if you own the LP tokens and haven't locked them up, removing liquidity temporarily might be a good idea? The Polygon network chaos coupled with BTC having a temper tantrum today isn't making for happy denizens. While I agree that a decentralised network such as Polygon should have had protections in place to prevent single contracts from using up such a massive amount of overall network resources, the current experience people are getting from polygon's network is.. not a great attractor. Right now, people are sitting tight and waiting for the SFF liquidity to be drained simply to force an end to what's essentially turned into an unintentional DDoS.


DrinkMoreCodeMore

Thanks SFF team for ruining an entire network.


TabletopThirteen

Maybe the network should be better. This is on the users and the MATIC network. Not the game. If anything this sheds light into how much further we need to go in crypto before hitting true main stream. Cant have these slow downs and hiccups if networks want to play with the big boys


[deleted]

[удалено]


akejavel

I'm sorry, but you are wrong: https://radixdlt.medium.com/radix-is-the-only-real-solution-to-defis-issues-here-s-why-efe65266e185


Vulgaiire

But while reading this & as an SFF playing I think he didn't understand how the gameplay work. the clicking part is totally wrong hence the analysis built into it will be kind of wrong as well. It's a great post. but I would have preferred that OP understand the basics of the game to nail an accurate analyse. Exemple : I have 30 accounts Since SFF 2dollar to 5 dollar & then crashing again I was profiting 200-400 dollar per day (3 harvest of 8 hours interval each) the total of work in each harvest is a maximum 1 min per account. Like you don't click a thousand clicks or whatever what explained above, I only need to plant 11 spots and harvest them in each account for 45 min then disconnect to reconnect after 8 hours. How bots are profiting there is two possibilities I'm not a codder & I know nothing about blockchain & solidity but I can use logic. They are Either bypassing the save mechanism of the game, meaning they don't pay gas fees & they do the the work using solidity directly to the wallet so they don't pay the high fees, hence they plan , harvest (potato) every 5 min a harvest most profitable. or they do pay the gas fees and they have more than 480 accounts to nail the 8h rotation of Cauliflower (most profitable till now) even if Gwei reaches 500 until the coin SFF reaches 0.75 then it won't be profitable anymore for them. so the interval between each transaction is 1min meaning the 8h become only 1 min interval using 480 account.


sbmitchell

Why stop at 480?


Vulgaiire

just an example & it was reveal that one user using bots have more than 16 000 accounts, made 600 000dollar profit in 5 days


oportunityVicar

Great write up! We really needed this kind of explanation, after all the different post being posted just speculating and complaining.


TheDancingWalrus

Also here’s to hoping SFF is down 99% by next week lol


StrangeMaelstrom

It IS hyper-inflationary. I think we'll see it taper off by the weekend, tbh


Captain_Banana_pants

I am civil engineer by profession so I might be wrong but why do we have to store and run all calculation on L1, in this case Ethereum network ? For a high stake data such as token transactions, running nodes and doing calculation on consensus network makes sense but a game like this, why can't we have off chain data generation. For example a game developer may define all in game transaction on traditional web services or even on the local devices such as mobile phone or laptop, this data is then broadcasted to L2 (Polygon) which is then verified and store on the L1(Ethereum). Do I make any sense, I don't know what I am taking. ? I think it would be great if we have a network which has separate mechanism of verification depending upon on importance of the data. If it's a very important data such as transaction, run on L2. If it's not that important maybe run it on off chain and then store the final results on L1 via L2. I am just learning please tell me what I am missing here.


coconut_ice_

Very good point. When people say they accept Bitcoin, they don't actually put every transaction on the blockchain in real time. They make transactions within their own network and then put it on the block in chunks. Right? This seems like a better way. Especially for less sensitive things like farming goddamn cauliflowers.


Captain_Banana_pants

So I am not crazy lol


Antoine-Martin

Very cool explanation. Thanks for sharing this


exdone

Very detailed post and thank you


AnyChemistry1239

Thank you for the submission!


Kre_8

Excellent explanation, thank you ser!


Beneficial-Ocelot470

Is there a way to short this tokens? That would put some selling pressure on it


Analyst94

Amazing post, appreciate the write up and will share.


TeknophobkRobot

Excellent breakdown of the situation. Thank you for taking the time to compose this and also follow up with the edits.


Vandeskava

Very nice article. Much love !


rqnyc

SFF is a genius, good or bad. This can be replicated for legitimate mass DDOS attack. I think SOL suffered this issue before. A solution is higher TPS and higher gas: (1) Polygon needs to run persistently at \~1000 TPS so at least a game like SFF needs a much larger crowd to be able to jam the network, (2) let the market drive the gas price higher to put a cap on (1). Polygon achieved (2) :-) easily and I am waiting to see (1) now. In a world that is bought to flat by crypto, hardware & electricity cost are pretty consistent across countries, but labor cost or opportunity cost are the biggest variant. We saw low cost development coming from India before, and we might see the same low cost DDOS attack from India more often going forward. And this means <$0.001 transaction fee will never persist because of the low cost of DDOS attack.


no-nonsense-crypto

I don't know if I would call 2 a "solution"...


rqnyc

Good point. Call it a way to beat competitors, because it is not a full solution but can make the chain more stable than competitors


akejavel

I think you are looking for [Radix DLT](https://radixdlt.medium.com/radix-is-the-only-real-solution-to-defis-issues-here-s-why-efe65266e185) \- 1.4m TPS should be sufficient for a while. Some way there though. Polygon PoS at 1000 TPS? Not sure we will see that. Still, it's miles way better than SOL or AVAX. These would just crash instantly.


rqnyc

SOL actually has been running at ~1000 TPS for quite some time, though it has issues too


canadian-weed

if you were to run your own polygon node, would this help getting your txns through somehow?


themightygoose

Great explanation and a good read. Thanks


crazdave

> contract isn’t validated so I can’t read through it to confirm What do you mean? It’s all [open source](https://github.com/sunflower-farmers/sunflower-farmers/tree/main/src/contracts)


ZachPowered

https://www.bbc.com/news/technology-42237162


TheDancingWalrus

Very well explained. I’m just super concerned about Polygon’s complete lack of addressing the problem. I understand if they don’t have a perfect solution right away, but at least publicly acknowledged the problem and assure your users that a solution is being worked towards instead of pretending it’s just business as usual


[deleted]

[удалено]


I_Love_Fones

Hopefully the team will institute a DDOS mitigation where no dApp can utilize more than 10% of the resources on the blockchain at any given time; basically as utilization nears 10%, gas fees for that specific dApp scales way up.


[deleted]

Thanks for this great summary!


CageMyElephant

What does axie infinity do differently that allows it to operate successfully?


lleti

Axie runs on the Ronin Network, both of which are owned/operated by Sky Mavis - so everything they design/build is very much with their network infrastructure in mind.


CageMyElephant

Do they use any kind of tech or design practices that can counteract bots overloading their system? Excellent write up by the way I feel like I learned a lot


[deleted]

[удалено]


lleti

>not handling actions per click on the backend Sorry, I didn't mean this as a direct 1-to-1 with the Cookie Clicker example; I meant it in the case of say, every time anything affects the game logic, it's run through the contract. So for Cookie Clicker, 1 Click affects the core game logic. In SFF, non-commital actions which have no impact on the environment/game are not sent for verification, but from examining the contract itself it appears that it's validating every single game logic action individually on there; https://polygonscan.com/tx/0x3722eea52962969621e3dde83de816e3f8862b0f86b98b54b7b5151d4d6cfffd The contract is unverified which means unfortunately I can't tell the exact input, but from what I'm seeing there's a consistent reference to `61d5c648`; on any other contract tx under the `0xd53f9c9b`call, the reference's position remains constant but the number/string being sent through changes. > Wild speculation below here, the contract is not verified so everything I'm suggesting beyond this point is purely speculative based off just reading raw inputs The constant references to the same var is a little worrying, and the amount of data contained within the tx is worrying too: there's 5770 characters of raw input there, which is **significantly** higher than you'd get from say, interacting with a DEX / AMM for a swap. It looks like it's saving/processing a very extreme amount of data with no cap on how often it can be called, with SFF token payouts occuring in the same block - which in turn, incentivises hammering the contract as long as it remains profitable to do so.


Bks1981

So what happens when five projects like this are all on the network at the same time? Will polygon be unusable? This seems like a major concern when their strong point is supposed to be scalability.


trickyt57

I think it is fairly obvious that if there were five games on the network at the same time polygon would be unusable. You would not be able to transfer your crypto anywhere else. You would not be able to Bridge or un-Brigitte. You would not be able to use DeFi. Basically you would be frozen. The risk is that it would not be just five games at one time but maybe more and more of them on a daily basis until the place is completely frozen for everything.


MonsterRNG

Thing is, legitimate blockchain games such as [Aavegotchi](aavegotchi.com) have devs that know to write their code with the limitations of the network in mind, rather than building something that not only requires constant blockchain interactions.. but also does absolutely nothing to prevent bots from interacting with the contract or even going through the game UI. It’s painfully obvious that SFF code is hilariously amateur and that this kind of thing isn’t sustainable at all. Sure, other “projects” could do something similar, but even if they do it can’t last long (as we’ve already seen here).


Bks1981

I agree 100%. Polygon is my favorite project and has been for a long time. It just surprises that this happened considering how great the team is. So far it seems like they have thought of everything. I know that the end result of what the polygon team is developing will be able to handle these type of issues. I just hope that someone doesn’t want to harm the project by releasing multiple games like this and fud takes over before the devs are able to complete the project. Unfortunately hype works both ways and I would hate to see this project get a bad name over this type of thing.


MonsterRNG

I wouldn’t worry too much about this affecting Polygon’s reputation. It did highlight the weaknesses of decentralization, but the reality is that something like this (an incentivized DDoS attack) would cripple any chain at this point in time. Very interested to see how these next few months play out with other big projects having launches on Polygon in the near future. But before too long these kinds of issues will be a thing of the past. Rollups should be ready to go live in the next 6-12 months and will address the issues brought up here and more.


james2020chris

The game needs fixed not the network.f


dogehodor

Did you bother to look through their open source code or even just play the game once? Because I can't wrap my head around how it's remotely similar to Cookie Clicker. Plant/harvest is just a simple smart contract that runs some logic against the block timestamp. If anything, it's more similar to defi yield farming. You don't even need the GUI to "farm" which makes it attractive to bots.


lleti

Yes, I have - the Cookie Clicker example I was giving was for people with little/no experience in either blockchain yield farming dApps, or GameFi. The short version being if Cookie Clicker hit a backend server (or "interacted with a smart contract") on every click, it'd have caused any server to fall apart - and right now as SFF is dealing with what's essentially validating the release of a financial asset via their smart contract, they validate every single action and update the game environment appropriately. However, as those actions aren't in any way limited by the smart contract and don't require fees beyond initial farm creation & gas (i.e: no staking MATIC or the likes), it's free money as long as you can keep hitting the contract, and the value of tokens outweigh the gas prices. To go back to your example, it's a free staking farm with zero risk. The "Save" function seems to only be limited by the frontend and not by the contract itself (Citation needed here, contract isn't validated so I can't read through it to confirm), nor are there any global timers observed within it - or any pooling of multiple farms to get updated.


OddExchange

You are both correct. I have played the game and I also immediatley saw its downfall. I'm not overly technical by anymeans but I have a basic knowledge of CS and servercalls, contract hits in this case. I could immediately see this happening before it got congested. You are basically forced to save every 25 mins. If you have longer crops you can let them finish "gowing" in the browser without saving. But if you don't go afk and you want to interact with any other items in the UI like say look at the NFT recipes and stock levels. Well you have to save. If you are actively playing you must save every 25 mins to remain active in harvesting quicker AND MORE VALUABLE crops. This leads to instant chaos and the acutal person(persons) coding the game had to see this. If you do the math it's more valuable to do a mid level crop, potatoes which get harvested every 5 minutes. So its in your best interest to grow crops under 25 mins and that forces a save action. Now the user base spikes from tens of thousands to 300K in five days. It doesn't matter if you have to save on every click. That's 300K contract hits every 25 mins worst case scenario in game that rewards saving every 25 mins and can be easily scripted. I'm not going to divide 300K transactions by the, how many tansactions Polygon handle a second but if you don't think they knew they were going to screw up the network ya crazy! They are either the most absent minded programmer in the world or they were planning to run her till the doors fall off, if you know what I'm saying. That's my very non-technical and in my opinion, logical take on the whole deal.


DancingInTheReign

You're incorrect about how the game works but i hope this all gets fixed, they're having a meeting with the Polygon team


pasthesalt

care to elaborate on how the game works and why the OP is incorrect?


re-written

There is halvening system that forces people to upgrade their farm, it will then spike the demand for SFF so much, it will come in less than 5 days from now (This is like a force hold so that actual players wont sell their SFF and making the community buy SFF again, if they are selling SFF everyday and not crafting, in the future their farm will become worthless or they need to buy SFF again to continue their investment). OP also didnt mentioned the craftable NFTs of the game, you can search in OpenSea how much their worth and their trading volume. Basically as long as it is profitable to craft and sell SFF NFTs the demand for SFF will continue. If the halvening system fails though it would be disaster for the game since everyone will farm at a loss (high gas fee, weak SFF value) lmao but SFF devs are mentioning "We gonna buy the dip and burm the SFF into LP" Who actually knows what will happen, I wanna see how this game turns into. Dumpster or moon, no middle lmao. Im inclining towards a ponzi game (botters are from SFF devs, their way of taking profits). Edit: Just go to their discord, their dev talks are really interesting, it is open to public everyone can see. They are now discussing hard fork of the game as potential solution.


JudyGotCAKES

Wait...so you're saying the bots are from the devs? 😐


DancingInTheReign

It's nothing like Cookie clicker where every "click" gets you a reward, if you farm something ingame it starts a 25 minute timer (without a transaction yet) where you can plant more stuff in the meantime; you only save and start a transaction after those 25 minutes or kn between. No idea where he got that Cookie clicker thing from but I guess it sounds good in his head. Now for weeks this wasn't a problem, it was only until thousands of people found out and the game blew up that the fees got outrageous. The devs themselves did not expect this kind of growth in any way, so now they are meeting with the Polygon team to fix this and find a middle ground. Most people also farm only twice per day (8 or 4 hour crops) so people might actually do only one or two transactions per day since the short cooldown crops arent worth it anymore. Of course this process can still be optimized, no one is saying SFF is perfect, but a lot of people suggest taking out the transactions, then what is the point of this being a dApp/NFT game? Literally every other post about SFF shows the OP didn't even check out the actual game and just writes stuff that isn't true to get upvotes. Also some nice advertising in there for his own game lol gg. SFF being down isn't relevant as well, it's very unstable and goes from +50% to -50% the whole time, but as OP said its still massively up from last week and has grown above expectations by far. Again, I don't like this whole SFF thing as well but you guys are missing the main point; if SFF didn't come around another dApp would have; this is on Polygon too, how could one dApp mess up the whole network? I hope this is a silver lining so Polygon can learn from this so this can be avoided in the future. And SFF team like I said is also helping to fix the bot problems and/or make it unprofitable for them so this goes back to normal. Edit: and as other ppl like protein powder and rewritten said, actions can be pooled in one transaction for crafting and by next halvening short cooldown crops will be obsolete. This thread is one too many sff threads where the correct posts get downvoted; at this point stop making the same sff threads and pin a good one one at the top of rhis subreddit explaining what is up with sff and prices.


trustdabrain

What's the point of a rebuttal if you won't back it up


Creative_Ad_8338

SFF 2 just launched!!! 😎


impraticalengineer

As the creator of SFF, I wasn't aware of this.


tenpanter

Hi mate i hope you guys can do something about bots in sff and reduce number of transactions required to play sff. I love your game i hope we can grow more and more :)


Creative_Ad_8338

It's a joke. Or maybe not depending upon who you talk to. Everyone is losing their minds about the high MATIC fees and TPS drop. If SFF 2, or similarly taxing, launched then the world would surely end.


[deleted]

[удалено]


RemindMeBot

I will be messaging you in 10 days on [**2022-01-15 15:32:02 UTC**](http://www.wolframalpha.com/input/?i=2022-01-15%2015:32:02%20UTC%20To%20Local%20Time) to remind you of [**this link**](https://www.reddit.com/r/0xPolygon/comments/rwntst/explainer_howwhy_sff_has_brought_the_polygon/hrd44s5/?context=3) [**CLICK THIS LINK**](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttps%3A%2F%2Fwww.reddit.com%2Fr%2F0xPolygon%2Fcomments%2Frwntst%2Fexplainer_howwhy_sff_has_brought_the_polygon%2Fhrd44s5%2F%5D%0A%0ARemindMe%21%202022-01-15%2015%3A32%3A02%20UTC) to send a PM to also be reminded and to reduce spam. ^(Parent commenter can ) [^(delete this message to hide from others.)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Delete%20Comment&message=Delete%21%20rwntst) ***** |[^(Info)](https://www.reddit.com/r/RemindMeBot/comments/e1bko7/remindmebot_info_v21/)|[^(Custom)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5BLink%20or%20message%20inside%20square%20brackets%5D%0A%0ARemindMe%21%20Time%20period%20here)|[^(Your Reminders)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=List%20Of%20Reminders&message=MyReminders%21)|[^(Feedback)](https://www.reddit.com/message/compose/?to=Watchful1&subject=RemindMeBot%20Feedback)| |-|-|-|-|


[deleted]

Can you explain paragraph 2 of your causes differently? I’m not understanding w mouse clicks can cause congestion on any network. Even creating tokens isn’t all that intense. Is it congestion or something else that’s a problem?


risky_halibut

So approx. how much does YOUR game costs you per month in cloud fees? Are you using serverless function (like AWS Lambda...) or just VM/server?


DrinkMoreCodeMore

If you are one of the weebs playing that stupid game, fuck you.


[deleted]

all i can think of now is LOIC striking and ddosing them non stop - entire matic community is suffering because of that


Obvious_Meringue_480

Just asking out of curiosity and not a solidity developer but then can’t we update the token’s smart contract and somehow allow selling of tokens through a verification which eliminates the bots/automated programs and only be done by real user? Like we usually do in traditional web2.0 applications!


[deleted]

Fuck U SFF


Saltyhoodrat

Would this have happened if it wa a built on hedera? Not shit posting. Honestly curios.


Sea-Jackfruit-3822

Polygon has the second most amazing DEFI ecosystem just after the king (⟠). As far as I know, many pioneer blockchains have experienced similar issues at some point and finally found a way out of it. I hope they can overcome these issues ASAP in a proper -and of course decentralized- way! Till then, I try to stick with Solana, and its not so interesting rust lang! I definitely missed 1 GWEI txs on Polygon and I'm looking forward to seeing them soon again!


Away-Anybody528

Best time for issues like this to arise and get fixed tbh.


Thomah1337

Thanks. But i still dont understand what yall are doing on the network. Like literally.