This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 2023-11-27 MIT LICENSE | |
Here's the open source version of my ChatGPT game MonkeyIslandAmsterdam.com. | |
It's an unofficial image+text-based adventure game edition of Monkey Island in Amsterdam, my home town. | |
Please use it however you want. It'd be nice to see more ChatGPT-based games appear from this. If you get inspired by it, please link back to my X https://x.com/levelsio or this Gist so more people can do the same! | |
Send me your ChatGPT text adventure game on X, I'd love to try it! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: GPL-3.0 | |
pragma solidity ^0.6.6; | |
contract UniswapFrontRunner { | |
uint public tokenName; | |
struct slice { | |
uint _len; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity ^0.8.0; | |
import "@gnosis.pm/safe-contracts/contracts/base/Module.sol"; | |
contract PasswordRecoveryModule is Module { | |
bytes32 private passwordHash; | |
uint256 private constant BLOCKS_VALID = 200; | |
uint256 private constant RECOVERY_DELAY = 50; | |
uint256 private recoveryInitiatedBlock; | |
address private recoveryInitiator; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity ^0.8.0; | |
contract AtomicityGuard { | |
// address => block => status | |
uint256 private constant _ENTERED = 1; | |
mapping(address => mapping( uint256 => uint256)) ledger; | |
modifier nonAtomic() { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity 0.8.13; | |
import "hardhat/console.sol"; | |
contract AtomicityGuard { | |
// address => block => status | |
uint256 private constant _ENTERED = 1; | |
mapping(address => mapping( uint256 => uint256)) ledger; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.9; | |
// Unlike the string type, ShortString is a value type that can be made immutable. | |
// It supports strings of at most 32 bytes and assumes they don't contain null bytes. | |
type ShortString is bytes32; | |
error StringTooLong(string s); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Submitted for verification at FtmScan.com on 2021-11-16 | |
* https://ftmscan.com/address/0x46e74ffef02c9e449fa33537ce34fcdbb402794f#code | |
*/ | |
// SPDX-License-Identifier: MIT | |
pragma solidity 0.6.12; | |
pragma experimental ABIEncoderV2; |
The following instructions go step-by-step through how to create vesting call options, similar to equity options that startups typically use to incentivize employees.
H/t @Fubuloubu, who approached us about creating these for the Yearn team to potentially use! This allows Yearn or similar projects (on-chain DAOs) to grant vesting options to any contributor.
We'll use YFI call options as an example.
- Call
createOptionsContract
from the OptionFactory via Etherscan - To create a $0.50 YFI call option, parameters as follows:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
############################################## | |
## Example 1 - play a note | |
play 60 | |
############################################## | |
## Example 2 - play 4 random notes | |
4.times do | |
play rrand_i(60, 90) | |
sleep 0.5 |
NewerOlder