Pages:
Author

Topic: [TUTORIAL] Membuat Koin Micin (Token) Sendiri (Read 274 times)

full member
Activity: 588
Merit: 100
Pantas banyak koin-koin micin yang terus bermunculan. Baik yang digunakan untuk menipu berkedok airdrop atau yang memang benar-benar niat membuat proyek koin micin. Toh ternyata caranya mudah di pelajari. Saya pikir sebelum membaca tutorial anda. Membuat koin micin itu cukup rumit. Namun ternyata tidak serumit yang di bayangkan.

Ijin mencoba gan.

Maka dari itu sekarang sangat banyak di jumpai koin seperti itu bahkan saya dapat dari aidrop sampai jutaan koin tapi tidak ada harganya sangat di sayangkan sekali sebenarnya
hero member
Activity: 784
Merit: 732
Pantas banyak koin-koin micin yang terus bermunculan. Baik yang digunakan untuk menipu berkedok airdrop atau yang memang benar-benar niat membuat proyek koin micin. Toh ternyata caranya mudah di pelajari. Saya pikir sebelum membaca tutorial anda. Membuat koin micin itu cukup rumit. Namun ternyata tidak serumit yang di bayangkan.

Ijin mencoba gan.
member
Activity: 252
Merit: 64
Never Mind
~snip~
kalau sudah selesai bounty dan disrtibusi ane leave semua group dari telegram. soalnya jadi tdk focus kalau mau ikut yang baru-baru sehingga kekurangannya yaitu, miss informasi kalau dev ganti contract address seperti di atas.
~snip~
Saya juga seperti itu, om.

~snip~
Jadi kesimpulan ane ketika membaca point2 di atas, begitu mudahnya mereka bikin coin dan token micin yang ane anggap orang-orang biasa pun bisa sehingga sekarang ini tidak aneh kalau tiap hari akan ditemui proyek serupa dan dipasarkan oleh orang biasa, artis, penyanyi, politisi dsb.
Betul, om. Mudah dan murah, makanya juga ketika akan launch suatu token, di grup TG kerap bermunculan smart contract palsu untuk menjebak calon investor.
legendary
Activity: 1428
Merit: 1022
#SWGT CERTIK Audited
~snip~
Oya, mantengin grup TG dari token-token yang kita miliki, itu memang sudah kewajiban kita Om.  Cheesy
~snip~
Saya sendiri karena gabung dengan banyak grup TG jadi sering ada grup terlewat untuk dicek, karena list grup di TG kan sering berubah-ubah urutan posisinya  Grin
kalau sudah selesai bounty dan disrtibusi ane leave semua group dari telegram. soalnya jadi tdk focus kalau mau ikut yang baru-baru sehingga kekurangannya yaitu, miss informasi kalau dev ganti contract address seperti di atas.

Jadi kesimpulan ane ketika membaca point2 di atas, begitu mudahnya mereka bikin coin dan token micin yang ane anggap orang-orang biasa pun bisa sehingga sekarang ini tidak aneh kalau tiap hari akan ditemui proyek serupa dan dipasarkan oleh orang biasa, artis, penyanyi, politisi dsb.
member
Activity: 252
Merit: 64
Never Mind
~snip~
Oya, mantengin grup TG dari token-token yang kita miliki, itu memang sudah kewajiban kita Om.  Cheesy
~snip~
Saya sendiri karena gabung dengan banyak grup TG jadi sering ada grup terlewat untuk dicek, karena list grup di TG kan sering berubah-ubah urutan posisinya  Grin

Contoh kasus token Soku, kasusnya bukan smart contract yang berubah kali ini, tapi upgrade versi program staking dari versi 1 ke versi 2. Developer menghapus halaman yang versi 1, sehingga kita tidak bisa meng-unstake dan menghapus token LP karena proses unstake dan hapus LP harus dari halaman versi 1. Nah, di sini perlunya kita mempelajari smart contract.

Maaf ya om-om semua, bukan bermaksud menggurui, hanya berbagi pengalaman  Grin

Jika mengalami insiden seperti ini, kita masih bisa unstake dan remove LP secara darurat melalui smart contract token tersebut pada blockchain explorer. Proses ini disebut emergency withdraw.
legendary
Activity: 2198
Merit: 1086
Free Bitcoins Every Hour!
Ada yang tanggung jawab, ada yang nggak om. Kalau yang tanggung jawab biasanya dikirim langsung (airdrop) token barunya. Kalau yang nggak tanggung jawab biasanya sih mereka bikin announce di grup TG (padahal kan kita nggak selalu mantengin TG kan ya? Cheesy ) biasanya mereka minta kirim token lama kita ke alamat wallet tertentu, kemudian mereka akan mengirim token baru sesuai nilai token lama tersebut.
Kalau berdasarkan yang pernah saya alamai, developernya akan memberikan pengumuman di site dan sosial media yang mereka punya, termasuk grup telegram. Mereka akan meminta para holder tokennya untuk mengisi semacam form untuk mengumpulkan data terkait jumlah token dan address wallet untuk mengirim token dengan smartcontact barunya. Hal ini memang penting untuk proses validasi. Oya, mantengin grup TG dari token-token yang kita miliki, itu memang sudah kewajiban kita Om.  Cheesy

legendary
Activity: 2198
Merit: 1592
hmph..
Ada yang tanggung jawab, ada yang nggak om. Kalau yang tanggung jawab biasanya dikirim langsung (airdrop) token barunya. Kalau yang nggak tanggung jawab biasanya sih mereka bikin announce di grup TG (padahal kan kita nggak selalu mantengin TG kan ya? Cheesy ) biasanya mereka minta kirim token lama kita ke alamat wallet tertentu, kemudian mereka akan mengirim token baru sesuai nilai token lama tersebut.
Umumnya sih sekarang ngirim token ke dev jika terjadi pergantian kontrak. Kalau yang airdrop langsung dari sekian banyak token micin yang saya punya, hanya cate coin yang langsung mengirimkan ke wallet. Pengiriman ke wallet dev/smart contract sebernanya rada ngeri-ngeri sedap sih, dikhawatirkan bukan token yang didapat, eh ternyata kita kena 2x scam  udah smart contract ganti, kita diminta kirim buat pengganti, malah dibawa kabur semuanya Tongue
member
Activity: 252
Merit: 64
Never Mind
~snip~
ya ane pernah ngalamin si developer ngerubah smart contract, sehingga token ane dulu gak bisa dikirim. terus kalau sudah begitu apa mereka bertanggung jawab ya?. soalnya ane dulu tanpa ada pemberitahuan apa-apa tau-tau aja diganti.
~snip~
Ada yang tanggung jawab, ada yang nggak om. Kalau yang tanggung jawab biasanya dikirim langsung (airdrop) token barunya. Kalau yang nggak tanggung jawab biasanya sih mereka bikin announce di grup TG (padahal kan kita nggak selalu mantengin TG kan ya? Cheesy ) biasanya mereka minta kirim token lama kita ke alamat wallet tertentu, kemudian mereka akan mengirim token baru sesuai nilai token lama tersebut.
legendary
Activity: 1428
Merit: 1022
#SWGT CERTIK Audited
~snip~
Satu pertanyaan lagi mas, ketika token sudah di deploy, apakah kode pada kontrak sudah tidak bisa diubah lagi? Misal, kita membuat kesalahan token yang kita buat, tidak dapat dijual setelah dibeli. kontrak ini sudah valid seperti ini, jika dev ingin mengubahnya harus membuat ulang atau masih bisa mengubah fungsi?
~snip~
Sudah tidak bisa om, jika kita deploy kembali akan menciptakan smart contract dan address yang baru. Makanya, jika om pernah ikutan (invest) koin micin mungkin pernah mengalami di mana developer mengubah alamat smart contract-nya, contoh proyek FoxGirl yang sampai 3x mengganti alamat smart contract-nya  Grin.
ya ane pernah ngalamin si developer ngerubah smart contract, sehingga token ane dulu gak bisa dikirim. terus kalau sudah begitu apa mereka bertanggung jawab ya?. soalnya ane dulu tanpa ada pemberitahuan apa-apa tau-tau aja diganti.

kl itu ana udah paham bang, cuma ditiap jaringan kan barangkali ada perbedaan kode walaupun sama2 ERC20

nah syukur2 sih yg dibahas jangan cuma ERC20 aja, tapi ERC721, ERC1155, BEP721, BEP1155

Biar kita bareng2 belajar gitu   Smiley
Afaik, kalau seperti erc721 dimana dinamakan NFT kayaknya beda perlakuan deh coba ente cek dimari: https://ethereum.org/en/developers/docs/standards/tokens/erc-721/

~snip~
kl itu ana udah paham bang, cuma ditiap jaringan kan barangkali ada perbedaan kode walaupun sama2 ERC20
~snip~
Sejauh ini yang saya lihat dan setelah saya bandingkan sih tidak ada bedanya om, antara ERC20, BEP20, HRC20, ERC20 (Polygon)

~snip~
nah syukur2 sih yg dibahas jangan cuma ERC20 aja, tapi ERC721, ERC1155, BEP721, BEP1155
Mungkin nanti di thread lain ya om  Grin
Kl menurut ane sih fokus utk pembuatannya dulu bang
Soal DEX sebaiknya di thread lain saja
Karena dari jenis token itu sendiri kan beda2 fungsinya (ownable, mintable, burnable, dll)
apa hubungannya sama dex?.

Nah pembahasan seperti ini yg ana demen, paling ndak kan udah dapat gambaran or sedikit tahu meski tdk praktek langsung
hehehe kalau ngotot di code fitur btt juga ada kok om

Code:
code

- burnable
Burnable hanya menambahkan fungsi untuk burning token, fungsi transfer biasa sih, transfer ke null/zero address atau dead address. Tinggal nanti kita menentukan kapan proses burn nya terjadi, apakah saat terjadi transaksi atau secara manual.
Ini kalau di bitcoin kayaknya sama dengan Op return, misal mengirim coin atau token ke alamat invalid sehingga pemilik tidak dapat lagi mengakses begitu juga penerima karena tiada key-nya
member
Activity: 252
Merit: 64
Never Mind

Nah pembahasan seperti ini yg ana demen, paling ndak kan udah dapat gambaran or sedikit tahu meski tdk praktek langsung
Siap om, bareng-bareng belajar  Grin
full member
Activity: 137
Merit: 100
Iya paham bang, bukan pengkodean yg ana maksud, tp kl ada contoh kan paling tidak bisa memberi sedikit gambaran
OK om, saya jelaskan secara simplenya saja ya, sesuai yang om tanyakan di atas (ownable, mintable, burnable):
- ownable
Umumnya tiap token terdapat fungsi ownable, biasannya digunakan untuk me-renounce si pemilik token. Renounce = mengubah alamat pemilik ke null atau zero address, dengan maksud supanya token tersebut tidak dapat diubah nilai dari variabel yang terdapat di dalamnya, misalnya variabel fee (marketing fee, team fee, charity fee, dan sebagainya).
Kode fungsi ownable:
Code:

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

- mintable
Token jenis mintable biasanya tidak berdiri sendiri, maksudnya proyek token mintable mempunyai tambahan smart contract lain, seperti smart contract MasterChef, TimeLock, atau bahkan sampai bikin Router sendiri.

- burnable
Burnable hanya menambahkan fungsi untuk burning token, fungsi transfer biasa sih, transfer ke null/zero address atau dead address. Tinggal nanti kita menentukan kapan proses burn nya terjadi, apakah saat terjadi transaksi atau secara manual.
contoh kode fungsi burn
Code:
    function buyBackAndBurn(uint256 amount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);

        uint256 initialBalance = balanceOf(marketingWallet);

        // make the swap
        uniswapV2Router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0, // accept any amount of Tokens
            path,
            marketingWallet, // Burn address
            block.timestamp.add(300)
        );

        uint256 swappedBalance = balanceOf(marketingWallet).sub(initialBalance);

        _burn(marketingWallet, swappedBalance);

        emit SwapBNBForTokens(amount, path);
    }
Nah pembahasan seperti ini yg ana demen, paling ndak kan udah dapat gambaran or sedikit tahu meski tdk praktek langsung
member
Activity: 252
Merit: 64
Never Mind
Iya paham bang, bukan pengkodean yg ana maksud, tp kl ada contoh kan paling tidak bisa memberi sedikit gambaran
OK om, saya jelaskan secara simplenya saja ya, sesuai yang om tanyakan di atas (ownable, mintable, burnable):
- ownable
Umumnya tiap token terdapat fungsi ownable, biasannya digunakan untuk me-renounce si pemilik token. Renounce = mengubah alamat pemilik ke null atau zero address, dengan maksud supanya token tersebut tidak dapat diubah nilai dari variabel yang terdapat di dalamnya, misalnya variabel fee (marketing fee, team fee, charity fee, dan sebagainya).
Kode fungsi ownable:
Code:

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

- mintable
Token jenis mintable biasanya tidak berdiri sendiri, maksudnya proyek token mintable mempunyai tambahan smart contract lain, seperti smart contract MasterChef, TimeLock, atau bahkan sampai bikin Router sendiri.

- burnable
Burnable hanya menambahkan fungsi untuk burning token, fungsi transfer biasa sih, transfer ke null/zero address atau dead address. Tinggal nanti kita menentukan kapan proses burn nya terjadi, apakah saat terjadi transaksi atau secara manual.
contoh kode fungsi burn
Code:
    function buyBackAndBurn(uint256 amount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);

        uint256 initialBalance = balanceOf(marketingWallet);

        // make the swap
        uniswapV2Router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0, // accept any amount of Tokens
            path,
            marketingWallet, // Burn address
            block.timestamp.add(300)
        );

        uint256 swappedBalance = balanceOf(marketingWallet).sub(initialBalance);

        _burn(marketingWallet, swappedBalance);

        emit SwapBNBForTokens(amount, path);
    }
full member
Activity: 137
Merit: 100
Kl menurut ane sih fokus utk pembuatannya dulu bang
Soal DEX sebaiknya di thread lain saja
Karena dari jenis token itu sendiri kan beda2 fungsinya (ownable, mintable, burnable, dll)
Rencananya di thread ini tidak akan membahas teknis pengkodean, om. Untuk token dengan fungsi lain-lain tersebut, seperti disampaikan pada awal thread, kita tinggal nyomot kode sumber dari smart contract (token) yang sudah exist.
Iya paham bang, bukan pengkodean yg ana maksud, tp kl ada contoh kan paling tidak bisa memberi sedikit gambaran
member
Activity: 252
Merit: 64
Never Mind
Kl menurut ane sih fokus utk pembuatannya dulu bang
Soal DEX sebaiknya di thread lain saja
Karena dari jenis token itu sendiri kan beda2 fungsinya (ownable, mintable, burnable, dll)
Rencananya di thread ini tidak akan membahas teknis pengkodean, om. Untuk token dengan fungsi lain-lain tersebut, seperti disampaikan pada awal thread, kita tinggal nyomot kode sumber dari smart contract (token) yang sudah exist.
full member
Activity: 137
Merit: 100
~snip~
kl itu ana udah paham bang, cuma ditiap jaringan kan barangkali ada perbedaan kode walaupun sama2 ERC20
~snip~
Sejauh ini yang saya lihat dan setelah saya bandingkan sih tidak ada bedanya om, antara ERC20, BEP20, HRC20, ERC20 (Polygon)

~snip~
nah syukur2 sih yg dibahas jangan cuma ERC20 aja, tapi ERC721, ERC1155, BEP721, BEP1155
Mungkin nanti di thread lain ya om  Grin
Kl menurut ane sih fokus utk pembuatannya dulu bang
Soal DEX sebaiknya di thread lain saja
Karena dari jenis token itu sendiri kan beda2 fungsinya (ownable, mintable, burnable, dll)
member
Activity: 252
Merit: 64
Never Mind
~snip~
kl itu ana udah paham bang, cuma ditiap jaringan kan barangkali ada perbedaan kode walaupun sama2 ERC20
~snip~
Sejauh ini yang saya lihat dan setelah saya bandingkan sih tidak ada bedanya om, antara ERC20, BEP20, HRC20, ERC20 (Polygon)

~snip~
nah syukur2 sih yg dibahas jangan cuma ERC20 aja, tapi ERC721, ERC1155, BEP721, BEP1155
Mungkin nanti di thread lain ya om  Grin
full member
Activity: 137
Merit: 100
Itu token ERC20 jaringan ETH ya bang, waduh kl bikin token beneran pasti biayanya mahal

kl boleh request sih cara bikin token di jaringan lain juga bang, seperti BSC, Solana, AVAX, Polkadot, Polygon dll

Kalau untuk BSC, Polygon, Heco, Fantom, Halo, (apalagi ya?)  Grin sama saja om, karena mereka adaptasi teknis ERC-20 nya ETH. Tinggal mengubah koneksi jaringannya ke jaringan mainet mereka (saat akan deploy), dan jika terdapat fungsi untuk exchange DEX pada kode sumber, pastikan mengubah alamat router dari exchange yang melayanai jaringan tersebut.
kl itu ana udah paham bang, cuma ditiap jaringan kan barangkali ada perbedaan kode walaupun sama2 ERC20

nah syukur2 sih yg dibahas jangan cuma ERC20 aja, tapi ERC721, ERC1155, BEP721, BEP1155

Biar kita bareng2 belajar gitu   Smiley
member
Activity: 252
Merit: 64
Never Mind
Itu token ERC20 jaringan ETH ya bang, waduh kl bikin token beneran pasti biayanya mahal

kl boleh request sih cara bikin token di jaringan lain juga bang, seperti BSC, Solana, AVAX, Polkadot, Polygon dll

Kalau untuk BSC, Polygon, Heco, Fantom, Halo, (apalagi ya?)  Grin sama saja om, karena mereka adaptasi teknis ERC-20 nya ETH. Tinggal mengubah koneksi jaringannya ke jaringan mainet mereka (saat akan deploy), dan jika terdapat fungsi untuk exchange DEX pada kode sumber, pastikan mengubah alamat router dari exchange yang melayanai jaringan tersebut.
full member
Activity: 137
Merit: 100
Itu token ERC20 jaringan ETH ya bang, waduh kl bikin token beneran pasti biayanya mahal

kl boleh request sih cara bikin token di jaringan lain juga bang, seperti BSC, Solana, AVAX, Polkadot, Polygon dll
member
Activity: 252
Merit: 64
Never Mind
~snip~
Satu pertanyaan lagi mas, ketika token sudah di deploy, apakah kode pada kontrak sudah tidak bisa diubah lagi? Misal, kita membuat kesalahan token yang kita buat, tidak dapat dijual setelah dibeli. kontrak ini sudah valid seperti ini, jika dev ingin mengubahnya harus membuat ulang atau masih bisa mengubah fungsi?
~snip~
Sudah tidak bisa om, jika kita deploy kembali akan menciptakan smart contract dan address yang baru. Makanya, jika om pernah ikutan (invest) koin micin mungkin pernah mengalami di mana developer mengubah alamat smart contract-nya, contoh proyek FoxGirl yang sampai 3x mengganti alamat smart contract-nya  Grin.
Pages:
Jump to: