Tengo un sistema de juego en línea. Emití algunos tokens a través de ethereum. ¿Cómo puedo vincular el valor de los tokens emitidos en ethereum a mi sistema de juego, que está fuera del ecosistema de ethereum? (es decir) Los usuarios deben poder comprar elementos del juego como armas, potenciadores, etc. utilizando los tokens personalizados.
Lógicamente, supongo que funcionará de la siguiente manera: le pido al usuario la clave pública de su billetera ethereum. El usuario envía los tokens a mi billetera. Consultaré ethereum usando alguna API y me daré cuenta de que el usuario X ha depositado algunos tokens en mi billetera. Cuando se haya realizado la transacción, emitiré los elementos del juego.
Otra forma de ver la pregunta es, cuando vendo tokens a usuarios en una ICO, ¿cómo usará el usuario esos tokens para cambiarlos por algún valor en mi producto?
El código de ejemplo es muy apreciado.
Una vez que haya distribuido tokens a través de una ICO, escribirá un código en su aplicación que requiere dichos tokens. El valor por el que se intercambian los tokens depende totalmente de usted y depende de los parámetros de la aplicación que está creando.
El código de contrato para el token que cree incluirá una función sendCoin() de algún tipo que envía tokens entre direcciones de Ethereum. Entonces, en el código, especificaría una dirección para recolectar tokens en el juego y los usuarios luego enviarían tokens a esa dirección en una transacción en la cadena Ethereum. Enviar los tokens requerirá un nodo Ethereum actualizado (para acceder al código de contrato del token y enviar una transacción), por lo que los usuarios de su juego deberán tener un nodo local actualizado en su sistema, o tal vez solo podría tener un nodo remoto. en funcionamiento al que se conectan de forma centralizada (si no te importa tener descentralización en tu juego).
Aquí está probablemente el problema real de que no hay una solución fácil ya resuelta: hasta que se procese esa transacción, incluidos los tokens enviados, no hay forma de saber que le han enviado tokens (al menos escaneando la cadena de bloques). Cada nuevo bloque tarda unos 13 segundos en extraerse, por lo que ese es el tiempo mínimo que el usuario tendrá que esperar para recoger lo que esté comprando. Simplemente puede registrar sus compras y verificar sus saldos (sin tiempo de espera) y luego darles el artículo antes de que se extraiga la transacción. Hay muchas maneras de hacer esto, y no se pueden cubrir todas en una sola pregunta.
Por último, diré que asegúrese de que el juego que está creando esté descentralizado de alguna manera, de lo contrario, no tiene sentido usar tokens creados en Ethereum.
EDITAR: Olvidé mencionar que enviar tokens a otra dirección de Ethereum requerirá una cierta cantidad de éter en la cuenta de envío (sin importar el costo del gas de la función sendCoin()). Entonces, si están ejecutando un nodo Ethereum local, necesitarán algo de éter en su cuenta.
Puede usar eventos de transferencia ERC20 a la dirección del receptor designado
(O haga un contrato inteligente especial con una compra y un evento de compra)
Una vez que se haya enviado el evento, puedes otorgar el elemento del juego.
Realmente tan simple como eso. Si desea un precio dinámico, puede consultar la funcionalidad de actualización en este: https://github.com/hunterlong/fiatcontract/blob/master/contracts/FiatContract.sol
pulmónj
MD Luffy
pulmónj
pulmónj
pulmónj