login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Idee achter Blackjack nodig

Offline Babak - 05/11/2012 19:49
Avatar van BabakMySQL interesse Beste mensen,

Ik sta op het punt om een Blackjack in PHP te schrijven. Nu is mijn vraag, wat is precies het idee erachter?

Ik moet sowieso met sessies werken, maar wat zet ik in de sessie?
Ik moet kaarten delen, maar hoe deel ik die, hoe voorkom ik 2 of meer dezelfde kaarten?
etc.

Kan iemand me hierbij helpen? BVD

15 antwoorden

Gesponsorde links
Offline marten - 05/11/2012 21:40
Avatar van marten Beheerder Bekijk eens andere blackjack scripts. Hoe zitten deze in elkaar? Bekijk vooral de scripts welke gebruik maken van OOP. Deze zijn vaak doordacht en makkelijk in te passen.
Offline Babak - 05/11/2012 21:57
Avatar van Babak MySQL interesse Hmm, dat is het juist, kan geen goede fatsoenlijke Blackjack script (met uitleg) vinden

Offline Gerard - 05/11/2012 23:25
Avatar van Gerard Ouwe rakker Kwestie van gewoon eens proberen. Hier heb je 10 minuten van mijn tijd in een stukje code:

http://plaatscode.be/141988/

Bouw er gewoon eens op verder, of kijk hoe ver dat je komt. Je hoeft niet gelijk alle regels te implementeren. Ga gewoon eerst eens proberen hoe je met kaarten uit komt.
Offline Babak - 06/11/2012 00:02
Avatar van Babak MySQL interesse Hmm dankje Gerard, dat is een zet in de goede richting.

Ben gewoon eens gaan uitwerken met een "normaal spel".. bank en speler krijgen random nummers en kijken wie gewoon wint en wie niet.

http://plaatscode.be/141989/

Kan iemand er misschien naar kijken? En mij vertellen of ik op de goede weg ben?

P.S: kaarten verdwijnen gelijk als speler bust of wint of als dealer wint. Ik wil wel dat die nummers blijven..
Offline riagabel2 - 06/11/2012 13:14
Avatar van riagabel2 Lid plaats voor het begin van al je code



Hij geeft namelijk problemen met je sessions
Dan geeft hij alleen niet de getallen weer. Verder als je kiest voor stand dan krijg je enige errors terug. Verder de functie zelf begint er op te lijken
Offline Babak - 06/11/2012 13:21 (laatste wijziging 06/11/2012 13:30)
Avatar van Babak MySQL interesse Boven de tekst heb ik namelijk nog een include('playerstats.php'); waarin al sessies worden gestart, vandaar ;).


Nu is het zo dat als ik "bust" de getallen uit beeld verwijderd worden, hoe kan ik nou doen dat als je "bust" "gelijkspeelt" of "wint", de getallen/kaarten in beeld blijven?
Offline Martijn - 06/11/2012 21:38
Avatar van Martijn Crew PHP Negeer KEIHARD, zo niet harder wat riagabel2 zojuist zei! En een verzoek aan Gerard voor uitleg waarom hij dat gebruikt 

Output buffer is niet nodig in dit soort situaties, en zeker bij een beginnend programmeur kan het de indruk wekken dat dit de oplossing is, welke het dus niet is. Dit kun je hier zien als een pleister op een wond. Het werkt, maar is niet weg.

Problemen los je, die verberg je niet ;)
Offline Babak - 06/11/2012 21:40
Avatar van Babak MySQL interesse Hmm, alright... Maar Martijn, enig opzetje voor mij of uitleg hoe ik het het beste kan aanpakken? Ben al de hele dag aan het experimenteren, maar kom geen stap verder... dit is by far een van de moeilijkste scripts die je kan schrijven volgens mij.
Offline Gerard - 06/11/2012 21:59
Avatar van Gerard Ouwe rakker
Martijn schreef:
Negeer KEIHARD, zo niet harder wat riagabel2 zojuist zei! En een verzoek aan Gerard voor uitleg waarom hij dat gebruikt 

Output buffer is niet nodig in dit soort situaties, en zeker bij een beginnend programmeur kan het de indruk wekken dat dit de oplossing is, welke het dus niet is. Dit kun je hier zien als een pleister op een wond. Het werkt, maar is niet weg.

Problemen los je, die verberg je niet ;)


In dit stuk code was het niet noodzakelijk om deze constructie te gebruiken. Anders gebruik ik hem ook alleen bij prototyping/poc/examples zoals die ik nu liet zien. Ik werk normaliter alleen met template parsers, waarmee je dit issue nooit echt hebt (je output nu eenmaal maar 1 keer aan het einde), maar wilde het in deze even voorkomen.

maar dus NOOIT zo aanleren. 
Offline Babak - 07/11/2012 21:47 (laatste wijziging 08/11/2012 19:34)
Avatar van Babak MySQL interesse Kan iemand me hier aub mee helpen??

Pff komop mensen, iemand moet me toch wel uitleg kunnen geven aan hoe het moet.. aan een script heb ik niks, want dan weet ik alsnog niet welke functie voor wat is en wat wat is... aub iemand?
Offline marten - 08/11/2012 20:42
Avatar van marten Beheerder Vraag je de volgende stappen af:

1. Ken je zelf de spelregels?
2. Welke gegevens moeten op een korte termijn beschikbaar zijn? (variabelen)
3. Welke gegevens moeten op lange termijn beschikbaar zijn? (sessies bv)
4. Welke interacties zijn er? (dealen, kaart geven totdat je 'dood' bent of zegt stop)
5. Welke acties worden er gedaan? (dealen, callen etc)
6. Schrijf een blauwdruk voor een class.
7. Vul de class verder in.
Offline Babak - 08/11/2012 20:50
Avatar van Babak MySQL interesse 1. ja
2. denk dat het spel gestart is, spelers kaarten, delers kaarten
3. ?
4. Als er op 'deel' word gedrukt, krijgt speler 2 kaarten open, en de deler 1. Daarna heb je een 'hit' of 'stand' knop.
5. Deal -> hit or stand
6?
7?

Het gaat dus niet om de theorie, maar welke functies en code ik verbind met de theorie.. ik snap niet waar ik moet beginnen met de blauwdruk

(sorry, ben niet echt een logische denker)
Offline Gerard - 09/11/2012 16:17
Avatar van Gerard Ouwe rakker Zonder dat logisch denken, een hoop puzzelen en proberen, wordt het niet echt veel. De code die ik heb gegeven is een goede start. De rest zal echt van het logisch redeneren moeten komen, anders blijven we zaken voorkauwen. Daar ga je ook weinig van leren.
Offline Babak - 09/11/2012 16:33
Avatar van Babak MySQL interesse Ok een vraagje dan.

Stel je hebt 2 arrays. Spelerkaarten en delerkaarten.

vul je dan beide arrays gelijk met het hele spel kaarten? of wacht je tot een speler een kaart 'trekt' en array_push je de volgende kaart in de spelers/delerkaarten arrays?
Offline Gerard - 11/11/2012 00:46
Avatar van Gerard Ouwe rakker Als je kijkt naar mijn script dan zal je zien dat ik initieel een volledig deck aan kaarten opbouw en die in 1 sessie array stop. Daarna geef ik de speler en de dealer allebei 1 kaart vanuit dit deck. Met de functie die ik gebruik worden deze kaarten ook verwijderd uit het algemene deck, waarmee we dus het aantal beschikbare kaarten om uit te delen terugbrengen.

De volgorde waarin je dit doet is eigenlijk de volgorde waarop het spel ook gespeeld moet worden. Je zal alleen logica moeten inbouwen bij de dealer wanneer deze een nieuwe kaart trekt, en wanneer juist niet.
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.349s