Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: PHP-korttipeli

Sivun loppuun

kasetti [13.05.2005 10:09:59]

#

Pitäisi arpoa korttipakan kortteja ja tarkista ettei tule samaa korttia uudestaan. srandilla olen yrittänyt pyritellä . Onko joku tehnyt korttipelejä? miten kortit kannattaa nimetä? numeroina 1-54 vai jotenkin kirjaimilla esim. 11a (hertta jätkä).

nuo arvottujen korttien arvot menee ilmeisesti arrayhin josta ne sitten tarkistetaan ja arvotaan uusi kortti?

Vinkkiä kehiin. Ja kyseessähän oli siis PHP-sivu (ehkä mysli keräämään pottia)

leftover [13.05.2005 10:33:38]

#

Itse lähtisin ratkomaan pulmaa arrayn avulla, eli täysi korttipakka sisältäisi alkiot 0-53 arvoltaan false. Tästä arvottaisiin aina yksi alkioista ja merkattaisiin alkio trueksi. Taas arvottaisiin kortti ja jos alkion arvo olisi true, arvottaisiin uusi kortti.

En tarkemmin miettinyt, tämä saattaisi olla yksi mahdollinen lähestymismalli. Idean 11a heittäisin suosiolla romukoppaan, ohjelmien on helpompi ymmärtää numeroita.

Muok: Tämä tapa toimii siis kun vain osa korteista arvotaan, jos tarkoituksena on jakaa koko pakka tai yli puolet pakasta, alkaa arpomistoiminto menemään loppua kohden raskaaksi kun useampi kuin joka toinen arvottu luku on jo kertaalleen arvottu.

Olga [13.05.2005 10:39:31]

#

Ja meillä päin korttipakoista löytyy ainoastaan 52 korttia, jos jokereita ei killata (ja tietenkään jokereita ei killata, kärpät kun on pop :)).

Lebe80 [13.05.2005 12:17:35]

#

Olgan kommentti oli taas todella rakentava... :|

Eli array-muuttujaan tarvittava määrä numeroita (0-51), jossa 0-3 on Erimaiden ässät.
4-7 kakkoset (4 = hertta, 5=ruutu, 6=risti ja 7=pata ).
Nelosella jaettaessa saadaan siis aina kortin numero (x+1) ja jakojäännöksestä maa.

Sitten vaan php:n omalla shuffle-funktiolla sekoitetaan korttipakka ja "nostetaan" aina pakan päällimmäinen kortti.

Antti Laaksonen [13.05.2005 18:31:39]

#

Lebe80:n ehdotus on hyvä sekä sekoituksen että korttien esittämistavan suhteen. Tällainen sekoitus vastaa myös todellista tilannetta, jossa pakan korttien järjestys pysyy muuttumattomana pelin ajan.

kasetti [14.05.2005 10:32:02]

#

Tuota leben tekniikkaa hieman testailin ja se osoittautui erittäin hyväksi. Sain jopa tehtyä pieniluontoisen pokeripelin:

http://kasetti.propelli.cop.fi/fi/code/pokeri.php

leftover [14.05.2005 12:40:06]

#

Hyvä peli, ainoa vaan että suoralla saa 4 kolikon sijasta 84 kolikkoa :D

Hagrid [14.05.2005 13:03:17]

#

Enpä aatellu ku käväsin pelailemassa... Ihmettelinkin miks ihmeessä potti kasvo äkkiä noin suureks :D no hyvä peli kuitenki... Muuten voisit laittaa ässän kanss 14 niinku oikeessaki pokerissa! Ainakaan äsken ei hyväksyny 10-14 suoraa...

kasetti [14.05.2005 13:09:17]

#

aika nopeasti tuli räääpästyä tuo pokeri, joten pientä korjattavaa löytyy...

Mazuli [14.05.2005 16:32:38]

#

oikein kaunis ja toimiva pikkupeli harmi vaan etten voittanut oikein mitään :)

renni [14.05.2005 21:55:09]

#

Vähän buginen (esim pelin loppuminen) ja käyttöliittymä liian hidas.

Suominen90 [14.05.2005 21:59:45]

#

Hyvin toimi mulla. Voisitko antaa lähdekoodin?

kasetti [15.05.2005 12:38:30]

#

Xuvo kirjoitti:

Hyvin toimi mulla. Voisitko antaa lähdekoodin?

tuolta löytyy http://kasetti.propelli.cop.fi/fi/koodivinkit.php?koodi=12

Painotan vieläkin sitä että tuo on nopeasti koodattu peli, joten virheitä löytyy ja koodi on hieman kökköä....

onneksi täältä tulee kommentteja niin voi sitä myöten sitten korjata ja samalla oppii.

Suominen90 [15.05.2005 13:13:37]

#

Saisko noita kortteja zippinä kun tuo kopioiminen on aika hidasta.
Mulla valittaa Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in /home/suominen90/public_html/pokeri.php on line 445

kasetti [15.05.2005 13:54:18]

#

Xuvo kirjoitti:

Saisko noita kortteja zippinä kun tuo kopioiminen on aika hidasta.
Mulla valittaa Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in /home/suominen90/public_html/pokeri.php on line 445

eli sillä rivillä on linkit mysql tietokantaan jossa on taulu pokeri (id int(11) auto_increment, kuka varchar(100), tulos int(11)); vaihda salasanat osoittamaan omaan tietokantaasi tai ota koko tietokantakoodi pois.

kortit löytyy zippinä täältä:

http://kasetti.propelli.cop.fi/fi/code/kortit.zip

Suominen90 [15.05.2005 14:07:24]

#

No mulla on ne salasanat ja muut ihan kunnossa. Millanen mysql taulu pitäis tehä että toimis?

kasetti [15.05.2005 14:09:04]

#

id int(11) auto_increment, kuka varchar(100), tulos int(11)

Olga [16.05.2005 00:34:40]

#

Lebe80 kirjoitti:

Olgan kommentti oli taas todella rakentava... :|

Korttipakassa tosiaan on vain 52 korttia, jos ei jokereita oteta huomioon. Ajattelin vain ilmoittaa ettei projekti mene sen takia reisille.

kasetti [08.06.2005 21:20:52]

#

Käykääpä pommittamassa tuotakin
http://kasetti.propelli.cop.fi/fi/code/ventti.php

aloitin neljältä ja nyt sain tommosen pelin aikaiseksi. Bugit ja parannusehdotukset otetaan vastaan.

Olga [08.06.2005 23:26:09]

#

Tosi addiktiivinen toi ventti :) Pari bugia tuli vastaan. Ensimmäisellä kierroksella voitin 2 kolikkoa, mutta kolikoita oli sen jälkeen jostain syystä 11, vaikka niitä olisi pitänyt olla ehkä 5... ja tämä tapahtui ehkä kolme kertaa. Ja yhdessä pelissä pystyin pelaamaan 1 kolikon panoksella vaikka kuinka kauan vaikka kolikot olivat loppuneet jo ajat sitten. Mutta joo, loistopeli :) Ulkoasun säätö, bugien liiskaus ja ehkä monipuolisempi statistiikka pelatuista peleistä (top-listat jne), niin avot!

ajv [08.06.2005 23:58:10]

#

Tuohon jää koukkuun :)

Olga [09.06.2005 01:18:28]

#

Äh, sen verran vielä tuohon edelliseen viestiin... eli alussahan on tietysti 10 kolikkoa eikä 5, kuten virheellisesti oletin. Joten höpöjä puhuin tuosta ensimmäisestä bugista :)

tsuriga [09.06.2005 02:25:21]

#

Eikö kuvakorteista pitäisi tulla pisteitä 11-13? Näin sivuhuomiona: todennäköisempää on (ainakin itsellä kun laskimeen ohjelmoin ja pelasin 1111 kertaa, voitot oli noin 40% minä vs 60% laskin), että tietokone voittaa (riippuen tietysti siitä, kuinka tuo on ohjelmoitu). Ai niin ja tuo voisi tallentaa automaagisesti parhaat tulokset ylös.
EDIT: Jee 1@50pts :)

ajv [09.06.2005 07:28:54]

#

Ventissä kuvakorteista saa kyllä aina 10 pistettä, mutta ässästä pitäisi minun käsittääkseni tulla 1/11 pistettä. Siis kuva + ässä = ventti, kuva + kuva + ässä = ventti.

kasetti [09.06.2005 08:43:44]

#

ajv kirjoitti:

Ventissä kuvakorteista saa kyllä aina 10 pistettä, mutta ässästä pitäisi minun käsittääkseni tulla 1/11 pistettä. Siis kuva + ässä = ventti, kuva + kuva + ässä = ventti.

tuo pitää paikkansa. Ässä voi tosiaan ainakin blackjackissä olla yksi tai yksitoista. Tuon muutoksen voisi kyllä peliin tehdä.

Minusta top listalle pääsy olisi liian helppoa jos se tapahtuisi automaattisesti. Ehkä tämä johtunee siitä että itse pelaan joskus hedelmäpeliä ja olen voitolla esim. 10 Euroa. Kuitenkin jatkan pelaamista ja häviän kaikki...

ajv [09.06.2005 08:44:00]

#

Onkohan sitä tullut notkuttua liikaa baarien Black Jackin-pöytien ääressä :) Tavallisen ventin säännöt taitavat olla siis kuten tsuriga sanoi.

kasetti [09.06.2005 09:02:19]

#

ajv kirjoitti:

Onkohan sitä tullut notkuttua liikaa baarien Black Jackin-pöytien ääressä :)

valitettavan usein.

kayttaja-2791 [09.06.2005 15:59:10]

#

Pientä viilausta ulkoisiin asioihin:
-Kortit PNG muotoon, JPG on suttuinen ja vie moninkerroin enemmän tilaa
-Korteille (ja muillekin kuville) ainakin korkeusmääreet niin hitaan yhteyden takanakin sivut eivät hyppele kuvien latauksessa

Nämä nyt ihan ekana tuli mieleen kun venttiä kokeilin. Ja kyllä, olen hitailla yhteyksillä nyt liikkeellä (ISDN)...

Edit:
Ja vielä sellainen epäloogisuus löytyi, että jakaja pelaa pidempään kun on tarvis. Jos jään vaikka 3:sella ja jakaja saa vaikka kunkun niin se pelaa silti vielä lisää.

kasetti [09.06.2005 17:23:41]

#

JTS kirjoitti:

Pientä viilausta ulkoisiin asioihin:
-Kortit PNG muotoon, JPG on suttuinen ja vie moninkerroin

Ja vielä sellainen epäloogisuus löytyi, että jakaja pelaa pidempään kun on tarvis. Jos jään vaikka 3:sella ja jakaja saa vaikka kunkun niin se pelaa silti vielä lisää.

korttien koko pieneni mukavasti kun tallensin png-muotoon.

Ja edelleen --> muutin peliä niin että vähintää kaksi korttia pitää ottaa jotta voi jäädä tulokseen ja katsoa jakajan kortit.

Hyviä huomioita.

chiqu [09.06.2005 18:57:54]

#

Jakaja harvemmin tyytyy tappioon oikeasti, koska sillä häviääkö niin että menee yli vs 19 tai niin etttä on 18 vs 19.

Ainakin kerran nuin taisi käydä.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta