ICONbet DAOlottery — Ano ang DAO at kung paano ito gumagana

ICONbet Community P-Rep
10 min readJun 15, 2020

--

DAOlottery para sa ICONbet ay live na ngayon at ito ay totoong DAO at fully transparent at ito ang kalahatan ng mga kailangan nyong malaman tungkol dito.

Anu ang Pagkakaiba ng Raffle at ng Lottery?

Ang pangunahing pagkakaiba ng raffle at ng lottery ay ang raffle ay laging may isang panalo (i.e lahat ng purchased tickets ay pinapasok sa isang raffle draw) habang ang lottery naman ay maaring magresulta ng walang panalo (i.e ay combinasyon ng mga numero na hindi pinili ng sinuman para sa kanilang entry). Habang ang raffle ay isang anyo ng lottery, kapag may laging panalo ito ay talagang masasabing isang raffle at hindi isang lottery. May konti lamang pagkakaiba, pero ngayong alam nyo na ang tamang terminolohiya.

Anu ang DAOlottery?

DAOlottery ay isang lottery ay isang sugal(gambling) sa ICONbet platform. Ang lottery ay isang anyo ng pagsusugal na may kasamang pagbunot(draw)ng random na numero para sa premyo. Sa DAOlottery pipili ka ng tatlong di magkakaparehong numero sa pagitan ng 1 at 30, at isang bonus na numero na maaring pareho sa tatlong unang nabanggit sa pagitan ng 1–25. Ang mga manlalaro ay gagamit ng ICX para bumli ng tickets.

Halimbawa ng Magandang Tikets:

3 , 14 , 30, 12

15, 2 , 24 , 24 Ang bonus na numero ay maaring pareho sa unang tatlong unique na numero na nauna

Tickets na Di tinatanggap :

5, 18, 5, 13

May dalawang 5 sa una aa tatlongunique na numero.

Pagiwan ng walang numero

Alinmang ticket na hindi sumunod sa nasabing parameters ay ttanggalin bago ito maisubmit (Di ka magbbayad sa invalid na ticket)

Anu ang Payouts?

Ang Payouts % ay madadagdag sa 80% san mapupunta ang iba?

70% mapupunta sa jackpot winner (kapag walamg nananalo sasama sa next day pot)15

15% ay mapupunta sa bangka(house)

80% sa TAP holders

15% sa DAOlottery Game Developers

5% sa Platform fee

10% ay mapupunta sa daily winners (kung walang nanalo sa group (3, 2+B, 2, 1+B, B), group%

ay mananatili sa pot)

5% ay mapupunta sa seed par sa next pot (Kapag walang jackpot winner ,iroll sa parehong pot)

Anu mangyayari sa may mga Parehong mga tickets na may same matching numbers?

Ang payout ay hahatiin pantaypantay sa mga pareparehong matching numbers sa bawat category.

Halimbawa:

2 tickets ay mayroong Jackpot (3+ Bonus) matching numbers. Ang Jackpot ay 100,000 na may payout na 70,000ICX / 2 matching tickets = 35000 bawat matching tickets.

Naganap na ang drawing ,pero di ko natanggap ang aking payout?

Dahil ang lottery ito ay DAO kailangan mong hintayin ang ibang players para bumili ng tickets para sa next jackpot para mareceive mo ang iyong payout .Ginagamit namin ang mga purchase transactions para maipadala mga payouts. Di namin kinukuha ang alinmang pera na nasabpot para sa payout.

Next Drawing In : XX:XX:XX

Kapag ang timer ay 00:00:00 ang next ticket ay madadraw at maisasama sa drawing(pagbola).

Paano ako Bibili ng Ticket?

Note: Bawat isang ticket ay nagkakahalaga ng 5icx

Step1:

Magsign-in sa ICONBET sa taas ng Log-in button

Step2:

Ienter ang numero ng ticket na gusto mong bilhin (ang maximum na ticket ay 1000 kada transaction)

Step 3:

Piliin nag type ng ticket na iyong gusto;

Random Ticket(s)

Or

Blank Ticket(s)

Step 4:

Ienter or imodify and iyong ticket base sa mga sumusunod na rules:

  • Ang unang tatlong numero ay sa pagitan ng 1 at 30, pero di maari ang parehong numero.
  • Ang huling bonus na numero ay maaring sa pagitan ng 1 at 25. Maaring pareho gaya ng numero alinman sa unang tatlong numero.
  • !!!ANG MGA TICKET NA DI SUMUNOD SA FORMAT NA NASA ITAAS AY DI MAISUSUBMIT!!!

Final step:

Kailangan mong pindutin ang Purchase Tickets button at hintayin ang transaction hash na lumalabas. Ito ay iyong magiging resibo sa iyong binili at paano matrack ang transaction ito.

Pagpinili mo ang Random Ticket(s) at di mo nagustuhan ang mga numero maari mo itong palitan manually.

Kapag di mo gusto ang isang specific ticket maari mong iclick ang X na nasa baba ng “Remove” column para idelete ang isang specific na ticket.

Kapag di mo gusto lahat ng ticket or gusto mo magsimula ulit maari mong ipress ang “Delete All Tickets” button at aalisin nito lahat ng iyong ticket at umpisahan muli ang pagbili.

* Tickets/numero ay valid lang sa araw na binili ang mga ito.Bawat araw ay may bagong panimula ng maiipong jackpot

My Live Tickets

Ito ay pahina/page kung saan mo makikita ang mga tickets na binili mo sa aktivong araw na un (Ang drawing/pagbola ay di pa naganap)

My Ticket History

Ito ay page kung saan mo makikita ang huling limang araw na Winning history mo sa DAO lottery. Hindi mo makikita dito ang kabuuan ng lahat ng tickets na nabili mo sa specific n araw.

Winning tickets lang ang pinapakita dito at kung magkano pinanalunan mo. Maaari mong palitan ang araw gamit ang “Day Showing:”drop-down.

Previous Drawings

Ito ay ang page kung saan maaring makita ang detalye ng huling limang DAOlottery drawings. Makikita mo rin dito ang Jackpot ng araw na to ,ang total payouts at gaano karaming total ticket ang nabili sa raw na iyon. Maari mong palitan ang araw gamit ang “Day Showing:” drop-down.

Anu ang DAO?

DAO ay nangangahulugan na Decentralized Autonomous Organization. Isa itong groupo or body na kinabibilangan ng tao, smart contracts at mga sangay sa pagitan nila. Ang pakahulugan nito para sa DAOlottery ay lahat ng DAOlottery operations ay pinapagana ng transction ng mga player.Ang mga players ay nagcocontrol kapag nangyari ang drawing pgkatapos ng bagong araw. Ang unang player na bumili ng ticket sa panibagong araw ay nagkakadahilan na mangyari ang drawing(pagbola) at ang payout para magsimula. Ang ticket ng player na iyon ay kasama sa drawing results sa araw na iyon. Walang 3rd party na nagcocontrol or nagmamanipulate ng anumang action na nangyayari sa blockchain or anumang nakatago sa service code.Ang calculations ng mga ticket sa araw na iyon at ang pamimigay sa winners ay DAO din gaya ng nabanggit at ang bawat transaction process at may backed up sA DAOlottery Smart Contract hangang makumpleto ang distribution. Uulitim namin walang isang grupo or tao or kumpanya na maaring mgkontrol sa winning ticket, calculation or kahit ang pgdistribute ng pondo. Kaya kami natagalan ilabas ang DAOlottery sa kadahilanang kailangan namin siguraduhing (foolproof)di kami nagloloko or di kmi manloloko at 100 percent ang validation ay gumagana. Base sa expected namin ang DAOlottery jackpot ay aabot hangang 62,000 times ng presyo ng isang ticket sa time ng payout, kaya ayaw naming magkaissues sa mga ICX ng mga player.

Paano mapapatunayan na ang DAOlottery ay 100% transparent?

Lahat ay nakastore sa blockchain kasama pati narin lahat ng tickets purchased,lahat ng winnning tickets, at ang code kung paano ito gumagana sa Smart Contract. kahit sinong interesadong individual ay welcome na iview at iverify lahat ng transactions, calculations, at pay-out gamit ang link sa Smart Contract na nasa ilalim. Ipapaliwanag ko bawat pamamaraan sa Read Contract tab para maintindihan nyo paano ung mga nakikita nyo ay naiistore/nasasave at kung ano nangyayari sa blockchain.

https://tracker.icon.foundation/contract/cx1c06cf597921e343dfca2883f699265fbec4d578#readcontract

get_active_days -

Ang method na itoay kumukuha ng page number at apge length (hangang 500 resulta per page) at binabalik ang active day values sa kanilang unix timestamp. Ito ang gagamitin mo para makuha ang data kada araw na nagsesearch.

get_batch_size -

Ang method na ito ay ibinabalik ang kasalukuyang batch size para sa distribution ng pay-out

get_calc_done -

Pinapakita dito kung ang previous days calculations para s amga winners ay nakumpleto.

get_dist_complete -

Pinapakita dito kung anu ang previous days winning pay-out distribution ay nakumpleto

get_draw_time -

Ang method na ito ay ibinabalik ang unix time sa segundo kung kelan at ang previous draw naganap.

get_game_on -

Ang method na ito ay nagpapaki kung ang game ay active or hindi.

get_history -

Ang method na ito ay kumukuha ng page number at page lenght (hangang 500 na resulta per page) at ibinabalik ang dictionary ng day ID at ang numero ng tickets purchased ng araw na un.

get _max_iter -

Ang method na ito ay nagpapakita kung ilang calculations nagagawa ang smart contract per transaction habangbnagcacalculate ng winning tickets. Nililimitahan namin ito para mapanatiling mabilis at responsive sa oras ng calculation.

get_number_purchased -

Ang method nabito ay kumukuha ng wallet address at day ID at ibinabalik ang numero ng tickets purchased sa wallet sa araw na iyon.

get_payouts -

Ang method na ito ay kumukuha ng day ID, page number, at page length (hangang 500 per page) at nagbabalik ng dictionary kasama ang wallet address at total payout sa loop value (1 ICX=118 loop). Halimbawa:

_day = XXXXXX, _page=0, _page_length =100

>>dict: {“hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA”:”173986736257310025848374",”hxBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB”:”174179977793642929997069",”hxCCCCCCCCCCCCCCCCCCCCCCC”:”174049314476762880611491"}

so hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA won 173986736257310025848374 which is 173986736257310025848374 / 1000000000000000000 = 173,986.73… ICX

get_player_index -

Ang method na ito ay ibinabalikang value ng isang internal variable gamit para itrack ang players addresses.

get_player_wins -

Ang method na itoay kumukuha ng wallet addresses, day ID, ng page length (hangang 500 per page) at ibinabalik ang dictionary na naglalaman ng Win Type (3b = Jackpot, 3n = 3 Matching Numbers Only, 2b = 2 Matching Numbers and Bonus Match, 2n = 2 Matching numbers Only, 1b = 1Matching Numbers ang Bonus Match, b = Bonus Match Only), ticket #, at ang ticket numbers sa ticket format XXYYZZBB where XX ay ang first number, YY ang second number, ZZ ay ang third number, BB ay ang Bonus number. Halimbawa:

From hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA above. _address = hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA, _day = XXXXXX, _page = 0, _page_length = 500:

>>dict: {“3b”:”219111,13161114",”3n”:””,”2b”:””,”2n”:”218559,07131624;218342,13021624;218841,30161323;18441,13163022;18485,13201620;219138,07161319;218968,13171618;18833,14131617;18734,13161816;218238,20161310…..}

So ang player na nakakuha ng 3b(Jackpot) ticket , ticket # 219111 at ang ticket number ay 13 , 16 , 11 at ang bonus number na 14.

get_players -

Ang method na ito ay kumukuha ng day ID, page number at page length (hangang 500 resulta per page) at nagbabalik ng listahan ng wallet addresses ng lahat ng players sa isang specific day ID.

get_pot -

Ang method n aito ay kumukuha ng day ID at nagbabalik ng total pot ng araw na iyon sa loop value (1ICX = 118 loop). Ito ay hindi ang Jackpot amount , ito ay ang total pot ng araw kaya Jackpot + the smaller wins + seed para sa next day. Halimbawa:

_day = XXXXXX

>>int: 992751289548650730338206

so 992751289548650730338206 / 1000000000000000000 = 992,751.2895… ICX

get_purchased -

Ang method na ito ay kumukuha ngvwallet address, ng day ID, ng page number, at ng page length (na hangang 500 resulta per page) at nagbabalik ng listahan ng tickets purchased kasama ang ticket numbers. Halimbawa:

From hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA above. _address = hxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA, _day = XXXXXX, _page = 0, _page_length = 500:

>>list: [“18,08,19,21;06,08,18,25;26,24,14,02;25,22,13,17;28,21,01,22;08,19,12,17;08,28,29,02;14,30,11,25;07,13,08,06;11,02,13,21;07,14,22,12;20,10,13,24….}

Bawat ticket purchased ay nakasulat sa format XX, YY, ZZ, BB, na ang XX, YY, ZZ ay ang tatlong numbers at ang BB ay ang bonus number at bawat ticket ay pinaghihiwalay ng semi colon( ; ).

get_record_done -

Ang method na ito ay ibinabalik ang value ng isang variable na isineset kapag lahat ng winning tickets ay calculated.

get_score_owner -

Itong variable na ito ay address ng may-ari ng score. Ito ay ginagamit bilang isnag parte ng registration process para sa ICONbet platform.

get_ticket_numbers -

Ang method na ito ay kinukuha ang ticket # (mula sa itaas) at ang day ID at ibinabalik ang ticket numbers format XXYYZZBB na ang XX ay ang unang numero, YY ang pangalawang numero, ZZ ang pangatlong numero at ang BB ang bonus na numero.

get_ticket_price -

Ang method nato ay kumukuha ng day ID at ibinabalik ang ticket price sa loop (1ICX = 118 loop). Halimbawa:

_day = XXXXXX

>>int: 5000000000000000000

So 5000000000000000000 / 1000000000000000000 = 5 ICX per ticket

get_ticket_type_counts -

Ang method na to ay kumukuha ng day ID at nagbabalik ng dictionary kasama ang ticket type (3b, 3n, 2b, 2n, 1b, b) at ang number ng tickets na nanalo sa bawat category. Halimbawa:

_day = XXXXXX

>>dict: {“3b”:”5",”3n”:”53",”2b”:”174",”2n”:”4266",”1b”:”2491",”b”:”25425"}

get_ticket_values -

Ang method nato ay kumukuha ng day ID at nagbabalik ng dictionary kasama ang ticket type (3b, 3n, 2b, 2n,1b, b) at ang total amount ngnanalo sa category sa loop (1 ICX = 118 loop). Halimbawa:

_day = XXXXXX

>>dict: {“3b”:”173731475671013877809186",”3n”:”1170697275411144729172",”2b”:”156684231305026946076",”2n”:”2044605303057689059",”1b”:”6488005116429836595",”b”:”122690333775193131"}

get_tickets -

Ang method na ito ay kumukuha ng day ID ,page number, at page length (hangang 500 resulta per page) at ibinabalik ang dictionary na naglalaman ng ticket number at number ng ticket na nasa format XXYYZZBB at ang wallet address ng player na bumili ng ticket. Halimbawa:

_day = XXXXXX

>>dict: {“0”:{“numbers”:”19120708",”player”:”hx852b1a043306aec288112c5d7898989e0bb283be”},”1":{“numbers”:”12273003",”player”:”hx852b1a043306aec288112c5d7898989e0bb283be”},”2":{“numbers”:”11152302",”player”:”hx852b1a043306aec288112c5d7898989e0bb283be”},…

get_treasury_score -

Ang method na to ay nagbabalik ng contract address ng ICONbet treasury. Ito ay isineset kapag nagconfigure ng contract pagkatapos ng deployment.

get_type_wins -

Ang method na ito ay kumukuha ng ticket type (3b, 3n, 2b, 2n, 1b, b) ng day ID, ng page number, ng page length (hangang 500 resulta perpage) at pagbabalik ng ticket # na nanalo sa specified ticket type category. Halimbawa:

_type = 3b, _day = XXXXXX, _page = 0, _page_length = 500

>>str: 219111;113462;112921;23697;10690

get_winning_ticket -

Ang method na ito ay kumukuha ng day ID at ibinabalik ang winning ticket numbers sa format na XXYYZZBB na ang XX ay ang unang number, YY ay ang pangalawang number, ZZ ang pangatlong number at ang BB bonus number. Halimbawa:

_day = XXXXXX

>>str: 11131614

XX = 11, YY = 13, ZZ = 16, BB = 14

name -

Ang method na ito ay nagbabalik ng pangalan ng contract na pinapayagan maging mas madali maidentify sa tracker.

Alinman sa mga method na nasa itaas na kumukuha ng day variable bilang parameter(sukatan) ay tatanggap din ng negative integer sa reference pabalik mula sa huling day array na ang -1 ay nangangahulugang the current day at -2 ay nangangahulugang the previous day.

Ito ay napakalaki at complex na Smart Contract na masasabi naming proud kami dahil lahat ay nagawa at na proseso sa mismong blockchain at hindi sa sarili naming servers. Ito ang nagpapatunay na ang DAOlottery ay 100% transparent at masasabing patas.

Closing Remarks

May karapatan kayong questionin ang sinumang game/developer ukol s akanilang sinasabi at sinuman na walang maipakitang source code (na nagproproseso ng game) available sa smart contract dahil walang anuman totoong paraan para mapatunayang ang game ay patas. Kahit na nagpakita na ng source code ang mga developer hindi ibig sabihin un na ang talagang source code na gumagana sa kanilang servers. Ang isang developer ay kayang magsend sayo ng source codeat maari nyang baguhin ayon sa gusto nila bago ipadala sa kanilang servers. Kaya ang pagawa ng game sa ICON blockchain kasama ang mga code at pagproseso sa Smart Contract ay ang tanging paraan para mapatunayang transparent talaga ang game. Ang code ng smart contract na gumagana ay available kahit kanino man para iverify s mismong contract. Walang anumang paraan na ang isang developer na maaaring iadjust ang smart contract code bago ipasa sa live dahil ang code na pinadala sa smart contract ay ang code na available para idownload. Napakaganda ng ginawa ng ICON, ginawa nyang ang developer ay maaring patunayan ang knailang “on chain dapps” na patas at gumawa ng maayos gaya ng inaadvertise.

--

--

ICONbet Community P-Rep
ICONbet Community P-Rep

Written by ICONbet Community P-Rep

This is the Medium account for the ICONbet Community P-Rep node for the ICON network. We will be posting articles and monthly financial reports here.

No responses yet