{"id":30459550,"url":"https://github.com/youneedwork/luckystar-contract-move","last_synced_at":"2026-02-11T02:08:24.322Z","repository":{"id":261912642,"uuid":"868672228","full_name":"YouNeedWork/LuckyStar-Contract-Move","owner":"YouNeedWork","description":null,"archived":false,"fork":false,"pushed_at":"2024-10-07T00:57:22.000Z","size":88,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-09T18:41:00.070Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Boogie","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YouNeedWork.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-07T00:56:30.000Z","updated_at":"2024-10-07T00:57:26.000Z","dependencies_parsed_at":"2024-11-09T08:17:29.882Z","dependency_job_id":"5ab458b2-9761-4082-ae36-edf25a5f5ee2","html_url":"https://github.com/YouNeedWork/LuckyStar-Contract-Move","commit_stats":null,"previous_names":["youneedwork/luckystar-contract-move"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/YouNeedWork/LuckyStar-Contract-Move","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YouNeedWork%2FLuckyStar-Contract-Move","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YouNeedWork%2FLuckyStar-Contract-Move/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YouNeedWork%2FLuckyStar-Contract-Move/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YouNeedWork%2FLuckyStar-Contract-Move/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YouNeedWork","download_url":"https://codeload.github.com/YouNeedWork/LuckyStar-Contract-Move/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YouNeedWork%2FLuckyStar-Contract-Move/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29325504,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T00:34:26.354Z","status":"online","status_checked_at":"2026-02-11T02:00:08.436Z","response_time":97,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-23T18:30:37.554Z","updated_at":"2026-02-11T02:08:24.304Z","avatar_url":"https://github.com/YouNeedWork.png","language":"Boogie","funding_links":[],"categories":[],"sub_categories":[],"readme":"# readme\n\n## todo\n- [X] add test for staking\n- [X] split all the diffent pool into different module\n- [X] add test for vesting\n- [X] when user play game for reward(XLUCK)\n- [X] add test for games\n- [X] change u64 to u256 for all store\n- [X] Change vec type to dyn type \n- [X] Add error code for all modules\n- [X] fix all tests\n- [ ] Add event to all struct change function\n- [X] add nft level up function,change reward function to reward XLUCK when user have nft\n\n\n\n分割COIN 只有标准coin可以使用\n```bash\nsui client split-coin --count 5 --coin-id 0x4e14d8f9eb362655bb07661fd168ad429b74dfefdaf6e6c37f0fdf220a773eb5 --gas-budget 10000000\n```\n\nmint coin 只有标准coin可以使用\n```bash\n\n```\n\n\n## setup\ninit airdrop for LUCK\n```bash\nsui client call --package $PKG --module airdrop --function create --type-args $PKG::luck::LUCK --args [0x7a5a0c202a1cf2e9200ca97efde\ne7291b8f00e2db2a42121bf6a04b830908b1e] 120000000000000000 --gas-budget 1000000000\n```\n\nget airdrop\n```bash\nsui client call --package $PKG --module airdrop --function get_dorp --type-args $PKG::luck::LUCK --args 0x7b7601f380fd4e4c1b4473bc21\nad0c388a2c619198e832ab27dcbed7a5aca4c8 --gas-budget 1000000000\n```\n\n\nmint esLuck\n```bash\nsui client call --package $PKG --module esLuck --function mint --type-args $PKG::esLuck::ESLUCK --args $MINTESLUCK 10000000000000 --gas-budget 10000000\n```\n\ninit airdrop for ESLUCK\n```bash\nsui client call --package $PKG --module airdrop --function create_non_transfer_coin --type-args $PKG::esLuck::ESLUCK --args 0x0a9992e5d5aa01f7826e043158faa79fe055f822b0781e1a2713d3962ef36e7f --gas-budget 1000000000\n```\n\nget airdrop for ESLUCK\n```bash\nsui client call --package $PKG --module airdrop --function get_non_trasfer_coin_dorp --type-args $PKG::esLuck::ESLUCK --args 0xfc558\n95c1ff26d88b985f0465bfa514f087c5cd559ad4bd08a75124e4c9b91fa  --gas-budget 1000000000\n```\n\nmint xLuck\n```bash\nsui client call --package $PKG --module xLuck --function mint --type-args $PKG::xLuck::XLUCK --args $MINTXLUCK 10000000000000 --gas-budget 10000000\n```\n\ninit airdrop for XLUCK\n```bash\nsui client call --package $PKG --module airdrop --function create_non_transfer_coin --type-args $PKG::xLuck::XLUCK --args 0x0a9992e5d5aa01f7826e043158faa79fe055f822b0781e1a2713d3962ef36e7f --gas-budget 1000000000\n```\n\nget airdrop for XLUCK\n```bash\nsui client call --package $PKG --module airdrop --function get_non_trasfer_coin_dorp --type-args $PKG::xLuck::XLUCK --args 0xbe656fd53e10b5552d20d8939b959b8781732405dd78cc2987258433818868a2 \n--gas-budget 1000000000\n```\n\n\n\ncreate_pool_and_reward_esLuck\n```bash\nsui client call --package $PKG --module staking --function create_stake_pool --gas-budget 100000000 --type-args $PKG::esLuck::ESLUCK $PKG::sui::SUI $PKG::Luck::LUCK $PKG::xLuck::XLUCK $PKG::esLuck::ESLUCK --args $MANAGE 0x4b9bd42194bac44d9d29eb33748b02f781024e84865016a720afeea82d7b9af4 0x435071e70431492bbb8c736ccd861fb1ef08dd736867390dcb31275e6c390c20 0 0 1 168797121200 0x6\n```\n\n\ncreate_llp_pool\n```bash\nsui client call --package $PKG --module stake_lp --function create_stake_pool  --gas-budget 100000000 --type-args $PKG::esLuck::ESLUCK $PKG::sui::SUI $PKG::llp::LLP --args $MANAGE 0x5510a6a6d44634135a34ec8d106aa7b35d6cfc50e5f75e28277d0bead68e5eee 0x4960216c51dea999401ec3634f58ee87ebec03a5edb534d87ab3a7e3f89d4696 0 0 1 1714392749000 0x6\n```\n\n\nstake_luck_and_reward_esluck\n```bash\nsui client call --package $PKG --module staking --function stake --gas-budget 10000000 --type-args $PKG::luck::LUCK $PKG::esLuck::ES\nLUCK --args $POOL [0x8f003df52f6747c231b87d966174d4e89daac7adc0a3db72202844e3c75bb814] 100000000000 0x6\n```\n\n\ncreate_vesting_pool\n```bash\nsui client call --package $PKG --module vesting --function create_pool --gas-budget 100000000 --type-args $PKG::esLuck::ESLUCK --args $MANAGE 86400000\n```\n\n\nstake for vesting\n```bash\nsui client call --package $PKG --module vestingNonTrasferCoin --function stake --gas-budget 100000000 --type-args $PKG::esLuck::ESLU\nCK $PKG::luck::LUCK --args 0x8c3e4c3c6a8e2154c97a078adeb592fb6685a4cb42bb9c61957d3655b08d0eb7 0x317e5891f7a4879b7f924cf66f76593a4507b6\nad7f164e8ab14c1bd0de4414ab 15000000000000000 0x6\n```\n\n\ninit vault\n```bash\nsui client call --package $PKG --module vault  --function create_vault --gas-budget 100000000  --type-args 0x2::sui::SUI $PKG::llp::LLP --args 0xf3012a39dca5d0f945ef2f84dfdcd14e48cf3c8d40c94dd376c31b74bf6a91e2\n```\n\ninit reward xluck\n```bash\nsui client call --package $PKG --module xluck_reward  --function create_reward --gas-budget 100000000  --type-args $PKG::xLuck::XLUCK --args 0x1c6d9ece7878df97ccc0d6533feb38a101944385153282888ec22f19b8a0345b 100000000 1000000000\n```\n\n\nadd liquidity\n```bash\nsui client call --package $PKG --module vault  --function add_liquidity  --gas-budget 100000000  --type-args 0x2::sui::SUI $PKG::llp\n::LLP --args 0xda8d97f3d6644c037eb987f33257fdf00451c90d3ff6838f99639b00af16ae37 0xc25a90507180923c4290cf59ef5ac89e2e6805011ad26e323825\n0930a985a591\n```\n\n\nplay CoinFilp\n```bash\nsui client call --package $PKG --module coinFilp --function play --gas-budget 100000000 --type-args 0x2::sui::SUI $PKG::llp::LLP --a\nrgs 0x4e3bb61e3fa89dd6b5d5eda6c4f61447300cdcb05986c21e3244f6532b8f844a [0x2c3792551e61b471bacfca22f04efec8790c916c0b7dde309a8e0ee7c5cf\n41f5] 100000000 1\n```\n\n\nsui client call --package $PKG --module luck_vault --function deposit_luck --gas-budget 100000000 --args 0x2693d996e72841b69db80f7e637d4d320ec25fa47048157b221b3e9cbec439e0 0x59d62d661fd752a8e34e49b3a0d27c0446340d3df337c862398b84a7e438cc08\n\nsui client call --package $PKG --module staking --function change_reward_per_sec --gas-budget 100000000 --type-args $PKG::esLuck::ESLUCK $PKG::sui::SUI $PKG::luck::LUCK $PKG::xLuck::XLUCK $PKG::esLuck::ESLUCK --args $MANAGE 0xa3fc1507401a5e435a1db5bf963a6897d6475747ad34885d23c03c4f84966c40 120000 100\n\n## args 2023-05-1-18-00-00\n### airdrop\nPKG  = 0xfbfd8fc70823250ac1c6740c8e9f4442b2d66dd37828d8604a0fd7a9fb8e787b\nMODULE = airdrop\n\n\n#### SUI\nFUNCTION = get_drop\nTYPE_ARG_0 = ${PKG}::sui::SUI\nARG_0 = 0xaa6ae20a32fb813e661200ee42da3c30a50560d9f834a3c10aa75511bf429352\n\n#### LUCK\nFUNCTION = get_drop\nTYPE_ARG_0 = ${PKG}::luck::LUCK\nARG_0 = 0x4de79513db23c9f8e6e900b0bb94d16379d2367d310c60fd55aec043e8b859b6\n\n\n#### ESLUCK\nFUNCTION = get_non_trasfer_coin_drop\nTYPE_ARG_0 = ${PKG}::esLuck::ESLUCK\nARG_0 = 0x9281b570b4a8639aec89b9fc5620907e4f93ba8ded38347b0bdee0265c5b961d\n\n\n#### XLUCK\nFUNCTION = get_non_trasfer_coin_drop\nTYPE_ARG_0 =  ${PKG}::xLuck::XLUCK\nARG_0 = 0x76bf14d8c93f8f0e1492d0eeeb35c099662ef17c3ab770387c0ef755bfc03716\n\n\n\n### staking\nPKG = 同上\nMODULE = staking\nARG_0 = 0x2bd89821bfd9dce2c48c1928c715df2bb0e0545cc4d3d680283c95dccab2d8dd\nVALUT = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\n\n#### LUCK\nFUNCTION = stake_luck/stake_xluck/stake_esluck\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\n\nARG_0 = \nARG_1 = [COIN_OBJECT]  // type=${PKG}::luck::LUCK / ${PKG}::xLuck::XLUCK / ${PKG}::esLuck::ESLUCK\nARG_2 = COIN amount\nARG_3 = 0x6\n\n\n#### unstake\nFUNCTION = unstake_esluck/unstake_luck/unstake_xluck\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\nARG_0 = \nARG_1 = amount\nARG_2 = 0x6\n\n\n##### CALIM\nFUNCTION = claim\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\nARG_0 =\nARG_1 = 0x6\n\n### vesting ESLUCK for recrd LUCK\nFUNCTION = deposit\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\nARG_0 =\nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = [COIN_OBJECT]  // type=${PKG}::esLuck:ESLUCK\nARG_3 = COIN amount\nARG_4 = 0x6\n\nCALIM\nFUNCTION = claim_vest\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\nARG_0 = \nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = 0x6\n\nFUNCTION = withdraw\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::luck::LUCK`,\nTYPE_ARG_3 = `${pkg}::xLuck::XLUCK`,\nTYPE_ARG_4 = `${pkg}::esLuck::ESLUCK`,\nARG_0 = \nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = 0x6\n\n\n#### STAKING_LP\nMODULE = stake_lp\nARG_0 = 0x1d206c321475d8bd238f4bb1b75366d0a5c4dcaf14d3b50d7b2ca5169c44f266\n\n#### stake\nFUNCTION = stake\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::llp::LLP`,\nARG_0 = \nARG_1 = [COIN_OBJECT]  // ${pkg}::llp::LLP\nARG_2 = COIN amount\nARG_3 = 0x6\n\n#### unstake\nFUNCTION = unstake\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::llp::LLP`,\nARG_0 =\nARG_1 = amount\nARG_2 = 0x6\n\n##### CALIM\nFUNCTION = claim\nTYPE_ARG_0 = `${pkg}::esLuck::ESLUCK`,\nTYPE_ARG_1 = `${pkg}::sui::SUI`,\nTYPE_ARG_2 = `${pkg}::llp::LLP`,\nARG_0 =\nARG_1 = 0x6\n\n\n\n### vesting XLUCK for recrd LUCK\nMODULE = vesting\nFUNCTION = deposit\nTYPE_ARG_0 = `${PKG}::xLuck::XLUCK`\nARG_0 = 0xb14d2df00a7f18953b5e242624231734c80004c203e7ec2e660de603ebadac8d\nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = [COIN_OBJECT]  // type=${PKG}::xLuck::XLUCK\nARG_3 = COIN amount\nARG_4 = 0x6\n\nCALIM\nFUNCTION = claim\nTYPE_ARG_0 = `${PKG}::xLuck::XLUCK`,\nARG_0 = 0xb14d2df00a7f18953b5e242624231734c80004c203e7ec2e660de603ebadac8d\nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = 0x6\n\nFUNCTION = withdraw\nTYPE_ARG_0 = `${PKG}::xLuck::XLUCK`,\nARG_0 = 0xb14d2df00a7f18953b5e242624231734c80004c203e7ec2e660de603ebadac8d\nARG_1 = 0x5d6cb47014fedb0878500060a42cfdbb5756a0b6a07ce972164ae006cc19ba86\nARG_2 = 0x6\n\n\n### Games\n#### Valut\nVALUT_POOL: 0xe25c5b80af83bc9ca9796eef2c391101e3b5e939bf951ed72b9baaaf16a0dd0d\nXLUCK_REWARD: 0x2e7768cc255feb8702235d242cde532949b8d60268e0865e60aa30ce20a11798\nGAME_CONTROLLER: 0xef393d82b38ccc0ee3a3b8279eeed5a7bb63a6d7504fe97226b6d938c158953c\n\n#### add_liquidity\nMODULE = vault\nFUNCTION = add_liquidity\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = \nARG_1 = COIN_OBJECT_ID  // type=${PKG}::sui::SUI\n\n#### remove_liquidity\nMODULE = vault\nFUNCTION = remove_liquidity\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = \nARG_1 = COIN_OBJECT_ID  // type=${PKG}::llp::LLP\n\n\n#### coinFilp\nMODULE = coinFlip\nFUNCTION = play\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = ${VALUT_POOL}\nARG_1 = ${GAME_CONTROLLER}\nARG_2 = [COIN_OBJECT]  // type=0x2::sui::SUI\nARG_3 = COIN amount\nARG_4 = 0 or 1  // bet on head or tail\nARG_5 = 0x6\n\n#### range\nMODULE = range\nFUNCTION = play\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = ${VALUT_POOL}\nARG_1 = ${GAME_CONTROLLER}\nARG_2 = [COIN_OBJECT]  // type=0x2::sui::SUI\nARG_3 = COIN amount\nARG_4 = 5-95\nARG_5 = 0x6\n\n#### raffle\nMODULE = raffle\nFUNCTION = play\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = ${VALUT_POOL}\nARG_1 = ${GAME_CONTROLLER}\nARG_2 = [COIN_OBJECT]  // type=0x2::sui::SUI\nARG_3 = COIN amount\nARG_4 = 0 or 1  // bet on head or tail\nARG_5 = 0x6\n\n#### wheel\nMODULE = wheel\nFUNCTION = play\nTYPE_ARG_0 = ${PKG}::sui::SUI\nTYPE_ARG_1 = ${PKG}::llp::LLP\nARG_0 = ${VALUT_POOL}\nARG_1 = ${GAME_CONTROLLER}\nARG_2 = [COIN_OBJECT]  // type=0x2::sui::SUI\nARG_3 = COIN amount\nARG_4 = 2 or 3 or 6 or 48\nARG_5 = 0x6\n\n\n## Stake_NFT\nMODULE = xluck_reward\nFUNCTION = stake_nft\nTYPE_ARG_0 = `${PKG}::xLuck::XLUCK`,\nARG_0 = 0x2e7768cc255feb8702235d242cde532949b8d60268e0865e60aa30ce20a11798\nARG_1 = NFT-OBJECTID\n\n## Stake_NFT\nMODULE = xluck_reward\nFUNCTION = unstake_nft\nTYPE_ARG_0 = `${PKG}::xLuck::XLUCK`,\nARG_0 = 0x2e7768cc255feb8702235d242cde532949b8d60268e0865e60aa30ce20a11798\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyouneedwork%2Fluckystar-contract-move","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyouneedwork%2Fluckystar-contract-move","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyouneedwork%2Fluckystar-contract-move/lists"}