Oddbean new post about | logout
 it's not just the in-game currency. In an MMO a lot of the abuse comes from duping resources or items. If the in-game economy is secured by it's own ledger then duping resources to dump the market all of a sudden doesn't work cause the internal blockchain would reject any injected resources as they haven't been created in a mining process. 

1 sat is just 1 sat so the currency is solid by design. It's everything else that gets exploited in game engines eventually resulting in a crashing eco-system. To go back to CSC MMO, the game had it's own scarcity engine which would ensure that ore, ships, module etc etc were actually created or mined in-game before ever making it to the market. 
 Maybe ecash would be great for this 🤔 
 Why not just sats? Bitcoin works fine with LN and removes a native shit token from the start. I think the challenge is really creating a tamperproof system to prevent the duping and other abuse that affects the economy of an MMO. The currency is just that, currency. If every unit of ore and every module created for a ship has to be verified by an internal ledger then you've already fixed one of the biggest economic issues in MMO's 
 Depends on what you’re trying to achieve. Making everything sats would make the game pay-to-win, which puts off 98% of gamers. 
 Isn't it only pay-to-win if people can purchase things from the game's store which they cannot acquire through grinding in-game? if the developer was to only "seed" the game initially with mods and ships but then turn over the economy to the players through an uncapped tier based crafting system then everything in the game has to be created by the players. As in MK1, MK2, MK3 shields for your ship (for example).

Perhaps dig into CSC. The concept of that MMO was great but unfortunately the company decided to let the game go.  
 making it sats implies there’s ways to get them in and out or transfer them between players. Once it’s on bitcoin then you can bring money from the real world to buy more resources in game. 
 I understand what you're saying. But those resources were mined by someone (not duped) and by buying them you'll have to pay them for their labour. If the economy is balanced well then resources would be scarce enough to have value on the market and if you want to "pay-to-win" me $1,000 for some ores so that you can fast track to a plasma shield MK3, your call 😉  
 New shitcoins appear all the time, Liquid....

For me ecash is 3 layer of bitcoin.

With eCash you can transfer satoshi without internet.
Its open source protocol
Many wallets
100% privacy.
The trust is decentralized, you can transfer your satoshi between mints. (You can chose who hold your satoshi).

The minus is that its fully custodial (mints). 
 You can test this:

cashuAeyJ0b2tlbiI6W3sibWludCI6Imh0dHBzOi8vbGVnZW5kLmxuYml0cy5jb20vY2FzaHUvYXBpL3YxL0FwdEROQUJOQlh2OGdwdXl3aHg2TlYiLCJwcm9vZnMiOlt7ImlkIjoiT3k3RnVGRGFzaHpvIiwiYW1vdW50IjoxLCJzZWNyZXQiOiJ6d0ZlaG1heUtKUkR3OTh6eTBOa05QelFCN0sraGpSbmk0aUV0bXA1RVRrPSIsIkMiOiIwMzBhYmY5ZWI4OTlhOWU3NGEyNDE2NzFmYmE4Y2E5MGMwYzBlYTk5ZjdjOTliMDJhMjdkNmRhODRiMDc0ZjdjNzAifSx7ImlkIjoiT3k3RnVGRGFzaHpvIiwiYW1vdW50Ijo0LCJzZWNyZXQiOiJGeVpkYzZDZ2J3QTdkczFncXhLMnZ5MmphMjhZT2pOblRoRUQ5NFpLOWJzPSIsIkMiOiIwM2E3YzY1MzdmMDZiZjJkOWRiMzllYTE0OGNlZWIxYzMyYzAzODVmYWZhMWM2YjdmOTcxODdhMDAyMGZlZWQ2NzMifSx7ImlkIjoiT3k3RnVGRGFzaHpvIiwiYW1vdW50IjoxNiwic2VjcmV0IjoiZGJsOW9RelNDeGNDM040UFQySjUwS2ErRGdOZFNsZENIV01sekZZd2VjYz0iLCJDIjoiMDI0NTY1MzM5YzI3ZjVkOWY5YWE1ZmEzZDI3MTA1ZTk3YjRmMWQwNzVjMWU4ZGIzNjI0MjA0YWFjNzZkMjU4YTE1In1dfV0sIm1lbW8iOiJHcmVnQXNrcyJ9 
 Also, consider that things can be energy-backed without being bitcoin.

nostr:nevent1qqsg2xrggnayk8xya7t4wmraqpvkptr0cw8g3nn038a7v8z8yu0kw0spramhxue69uhky6t5vdhkjmndv9uxjmtpd35hxarn9ehkumrfdejsyg8ga5me33hla0l6ppgp4su7yutx9073vrmg372vghtf9krk0hf5tgpsgqqqqqqs205rhz 
 Specifically, I mean that game items could be attained through POW. An example would be crafting. Other items could be committed to this crafting operation as ingredients (referenced as preimage tags). The POW (NIP-13) yields a new item that required other items and energy to produce.

Since its a game, you can require events to be published to the game's dedicated relay. This allows the game clients to check for double spends on ingredients.

I'm working on a game that uses a system like this. The event ID of the item must contain leading zeroes, and the digits after the zeroes must match a certain bit suffix to yield a particular item.

The game functions as an interpretation mechanism for POW.

Game items could also be purchased for sats.

Crafting and buying are different things. 
 you'll need a difficulty adjustment mechanism... it needs to gather a sequence of events with PoW on them (relevant ones i suppose) and estimate a relation between supply and demand for the worked events, and then adjust it on some kind of interval, and my personal recommendation is to go with a dynamic adjustment with long windows and it would probably entail some kind of higher level proof for the adjustment events so that they are infrequent and define the target for the system

well, hah... it's one of my specializations, PoW... 

you will also want to use a Proportional/Integral/Derivative adjustment algorithm and since learning how to work with those I know now that you need to filter the output of the derivative to eliminate spikes to stop it noising up the estimate

i don't personally hold a lot of stock in the idea of it being a successful way to regulate token emission outside of the bitcoin chain though, my opinion is that you would be better off with a pBFT style consensus with a semi-static high trust multi-party consensus for this kind of purpose, and yes, it amounts to a shitcoin, and it will inevitably become exchanged outside of its environment for other things

a long winded way of saying: my opinion the better solution is that the game must have sats to assign to spawned items in game and the game should have a subscription model so money goes in and this goes towards creating assets in the game and then you eliminate your problems altogether and don't need this silly PoW at all

personally, i see all problems that are currently being solved by many using pBFT consensus and tokens to be better solved with LN and sats, like RGB, probably RGB would be the best platform to build it on if you are a serious bitcoiner 
 I don't see a need for difficulty adjustments 
 the purpose of having proof of work is to act as a rate limiter so there has to be a difficulty adjustment, and the reason why you might think it won't be necessary is because you aren't thinking about malicious users or erroneous software 
 Mmm I am thinking about those things. What does a difficulty adjustment accomplish specifically?  
 it's for maintaining a given rate of solution (hash with enough zeroes) discovery within a specified time period

btw, "zeroes" is not really the best way to implement targets, better is to use a large integer library and compare the values as scalars

bitcoin has 32 bit precision for compact representation in blocks, you can have full 256 bit targets in a nostr based system since it's not an immutable long living chain... the difficulty adjustment formula will produce a proportion, a fraction ie 0.8... or 1.1... and you just multiply the previous target by this value to get the new target

i'm not really sure that proof of work is fit to the task though

i think that lightning and marketplaces to discover prices and enable users to trade artifacts and adjust prices according to demand so you don't screw up supply of artifacts

in my opinion, proof of work belongs in only one place in the whole world: bitcoin chain

everywhere else there is all kinds of game theory problems with maintaining security 
 Your insight is valuable and I appreciate it. I think the limits of proof-of-work have not been discovered, much less tested, and I am interested in testing it myself. 
 i acquired it partly while working on a bitcoin fork that was started in late 2014 called parallelcoin... it had a hard limiter percentage on the difficulty adjustment and this caused it to become time-dilated from a 5 minute target to 12.5 minutes circa 2020

i made an elaborate, multi-schedule multi-block type difficulty adjustment that had about 50% variance in my tests, ie, it usually got 2.5-10 minutes per block

since that time i learned more and PID controllers are very relevant, as are restricting allowable timestamps and making the time divergence quite tight, like no more than half of the target interval

PID controllers note that you need to devise a low pass filter that ignores the upper half of the frequency of the derivative factor or you end up disrupting its accuracy 
 Impressive! 

Have you considered that the gaming context is quite different from the blockchain context and therefore POW may not need to function in the same way? 
 i have considered it and my opinion is that if the game artifacts are worth money the money chasers will buy beg and steal hashpower to outcompete the players

it has no place in either nostr or a game system, because it has historically, after some 25 years, proven to only be secure in the bitcoin use case and everywhere else it's a mess 
 The difficulty adjustment in bitcoin is to regulate the time between blocks. AFAIK it isn't relevant in a game context? 
 it is relevant to the economy of in game artifacts

but i think Lightning could do a much better job by making it concrete value and following the same kind of probabalistic pattern used by gambling computer games (pokies)

if you are talking about highly time constrained, limited participant, competitive use cases for proof of work then you will see that the most determined players will equip themselves with higher powered hashing devices and dominate games by this, it will lose the chance aspect and that's gonna ruin RPGs at least

none of that will take long to manifest, so again

there is no use for proof of work outside of the bitcoin consensus

every other possible use case that might consider it is better served by simpler probabilistic distribution algorithms, and weightings based on gamer's financial inputs

in the end that's always going to be how it plays out so you need to consider that it doesn't level the playing field like you wish it would 
 I'm just not convinced that we know with certainty that POW has no other uses. What if bitcoin is simply the first — not the first AND last?

ancient Chinese alchemists: there is no use for gunpowder outside medicine 
 I think it’s a fun idea to use it as a roll system. Imagine for the game to accept the item the nonce tag has to be less than a certain value. Then you would be guaranteed that a high pow roll was really lucky. 
 this is pretty interesting actually 🤔  PoW as a mechanism for adding a cost to production. you could see how much cumulative work went into a final item from the transitive input graph. 
 My concern would be out-of-game grinding. You have any way to deal with that? 
 You mean just running POW outside the game to get items? This is solved by requiring crafting ingredients. The crafting ingredients are only dropped by DVMs if you meet the right conditions. 
 Bro, every time you open your mouth, and I mean this in the best way:
https://i.imgflip.com/1itoun.jpg?a473899 
 Is pow difficultly used to determine quality or rarity? I was imagining gpus grinding away to get higher quality drops. Maybe you don’t use pow for this for this reason. 
 The POW can be interpreted many different ways; rarity is possible. If someone has the prerequisite items and wants to direct a GPU farm at mining a great item, I'd say let them. But other mechanics are possible.

Example: You craft ammo. You combine 2 items and then apply POW. The amount of ammo you get is equal to the POW (leading zeroes). This is asymmetrically beneficial, because each additional unit of ammo costs DOUBLE the previous unit, so it is better to find the most efficient sweet spot to maximize the resources you are sacrificing to create the ammo. (Each additional leading zero costs double the previous in POW terms). So you don't actually want the highest POW possible. 
 
 Damn this is really good. I want to try this. 
 Another idea that I had was to have the server give out a gametick bearer token, that is needed as an input when crafting items. The token is only valid up until a certain time, so you can only grind for so long. 
 A crafting window of sorts. 🤔
Could you randomize the window somehow in an equitible fashion or would a static value suffice? 
 👀