Soduko![]()
Hallo Ihr lieben!
Mir ist gerade etwas langweilig und da dachte ich wie wäre es mit nem Kleinen Onlinegame das unendlichviele Levels hat was aber in Richtung Rätsel-Game geht!
Da kam mir in den gedanken ein Spiel das ich mal zufällig im Netz gespielt habe (jedoch kenne ich die Adresse nicht mehr)
Das ging so:
In folgenem Feld müßen Zahlen von 1-9 eingetragen werden!
Aber so das jedes Neuner-Feld zusammen 45 ergibt sowie die Waagerechte Spalte und auch die Senkrechte Spalte muß 45 ergeben!
KEINE Zahl darf doppelt sein!
Ich möchte nun nicht von euch nun das Spiel gebaut bekommen sondern ich brauche denkanstöße mit welchen Befehlen lässt sich so ein Game in PHP verwirklichen?
Hat da jemand eine Idee?
Eintragen der Zahlen per Formular dachte ich und einige Zahlen müßen automatisch schon drin stehen da habe ich an den Zufallsgenerator gedacht, jedoch dürfen auch die breits Vorgegebenen Zahlen nicht Doppelt sein!
Nun noch einige Worte zum Anhang:
So würde das Feld aussehen die Zahlen die Bereits eingetragen wurden wären in diesem Beispiel Zahlen die das Programm automatisch einträgt!
Nun ist es Wichtig das im Weißen Feld alle Neun Zahlen von 1-9 einmal vorkommen! Das gilt auch für die Andersfarbigen Felder!
Somit würde dann Pro Farbiges 9er-Feld die Quersummer 45 rauskommen!
Nun ist es dann noch wichtig das Waagrecht und Senkrecht auch pro Reihe die Zahlen 1-9 nur einmal vorkommen dürfen auch hier würde dann die Quersumme 45 ergeben! Alle Zahlen im Gesammt feld würden somit exakt 405 ergeben Diese Zahl ist wichtig damit das Programm sagt "Level Completed" Und dann ein neues Feld aufbauen würde!
Dann im nächsten Level sollen auch wieder Zahlen vom Programm vorgegeben werden jedoch sollten es nicht die Selben sein und es sollten diesmal andere Felder sein in dem eine Vorgegebene Zahl steht!
Wäre echt supi wenn hierzu jemand ein paar pfiffige Ideen hat Mit welchen Befehlen sich dies bewerkstelligen würde!
Aber bitte nur sagen welche Befehle am besten wären und nicht irgendwelche Codeschnipsel schreiben dies tüfftel ich dann selber aus!
Soduko![]()
Always Look On The Bright Side Of Life...
Was ist Soduko?
Kann ich in meinen PHP-Büchern nicht finden!
Achja und die nächste und eigendlichst wichtigste Frage habe ich noch:
Ist das überhaupt in PHP zu realisieren?
Ups ach so nennt sich dieses Rätsel!![]()
Peinlich ich dachte es sei ein PHP Befehl! LOL
soduko heist das spiel was du meinst
Nun da ich jetzt gerade bei Google gesehen habe das es das Game schon zich mal gibt ist die Nächste frage : Darf ich selber überhaupt eins kreieren und auf einer meiner Seiten zum kostenlosen Onlinespielen anbieten?
Sicher darfst du das, so lange das Spiel nicht urheberrechtlich geschützt ist, wovon ich jetzt einfach mal nicht ausgehe...
GCM d- s: a-- C++$ UL P L+ E--- W++ N o? K- w+ !O !M !V PS+ PE Y PGP- t+ 5? X R- tv- b- DI- !D G e h! r++ z?
Also habe mal nach Urheberrechten gegoogelt! Es ist zwar das Copyright einer Firma aber wenn man eigene Levels macht ist es erlaubt! Man darf nur nicht 1:1 ein Level kopieren, es sein eigen nennen und dann auch noch Geld damit verdienen (hab ich eh nicht vor da es nur ein Zeitvertreib werden soll)!
Und die Frage ob es in PHP machbar ist hab ich durchs googeln auch gleich beantwortet: ES GEHT!
Denn es gibt schon einige rein auf PHP!
Nun ist nur noch die Frage wie fange ich an und welche Art von Befehlen werde ich benötigen usw.
Ich werde nun erstmal das Spielfeld machen und mal sehen welche einfälle mir dann kommen wie ich weiter vorgehen muß!
Also,
wir haben ein ähnliches Game im Studium in Java umgesetzt, und ich würde sagen das sich das Spielfeld z.B. gut durch mehrdimensionale Arrays repräsentieren lässt.
Ansonsten ist das ganze eigentlich recht einfach, da eigentlich keine super komplizierten Techniken benötigt werden.
Allerdings musst du eben die Regeln gut implementieren, was etwas umfangreicher sein dürfte.
"Dieses Business ist binär. Du bist eine Eins oder eine Null, lebendig oder tot. Es gibt keinen zweiten Sieger." - Gary Winston (StartUp)
Mach's lieber mit JavaScript.
Hmm... genau da haperts bei mir ich steck in Sachen JavaScript noch voll in den Babyschuhen!
Ich weiß schon wie man JavaScript schreibt aber nicht wie man es coden kann!
Aber der Tip mit den mehrdimonsionalen Arrays ist gut!
Was würdet ihr sagen ?
Wäre es besser Levels vorzugeben oder soll ich es so machen das es nur ein Level gibt und bei jedem Start des Games sieht das Feld dann anders aus?
Vorteil bei vorgegebenen Levels :
Zahlen brauchen nicht per Zufallsgenerator ermittelt werden und die vorgegebenen Zahlen die sofort sichtbar sein sollen können besser bestimmt werden!
Nachteil bei vorgegebenen Levels :
Jedes level muß gecodet werden das kann ein ellenlanges Script werden bei 50 Levels!
Vorteil bei nur einem Level :
Kurzes script
Nachteil bei nur einem Level :
81 Zahlen müßen per Zufallsgenerator ermittelt werden und dann muß geprüft werden das keine Zahl in einer Waagerechten Doppelt erscheint, Keine Zahl in einer Senkrechten doppelt erscheint und keine Zahl in einem 3x3 Feld doppelt erscheint!
Auf Grund der Prüfung doppelter zahlen und erneutes generieren des Levels solange eine Zahl doppelt ist wird eine lange ladezeit in anspruch nehmen!
Ich denke mal bei so vielen Nachteilen bei nur einem Level werde ich mehrere Level vorgeben!
Oder was meint ihr?
Jemand ne idee wie man bei nur einem Level weniger Nachteile hat?
Wie gesagt bitte in PHP-Tips abgeben denn von JavaScript habe ich null ahnung!
Geändert von Sven_F (19.12.2005 um 08:24 Uhr)
ich habs ma mitm kumpel in delphi gebastelt - jedoch so das du aufn knopf drückst und der dir die lösung errechnet![]()
...und wie unterscheidet Ihr zwischen "einfachen" und "schwerem" Rätsel? Hab' mir nämlich auch schon einmal überlegt, einen Rätselgenerator zu bauen.
Also bei mir ist der Schwirigkeitsgrat in Level eingeteilt!
Jedes Level hat in meinem Fall 10 Stufen somit wären es 100 Rätsel aufgeteil in 10 Levels (Schwirigkeitsstufen) wobei dann jedes Level 10 gleichschwere Rätsel hat!
Mein Problem ist es nur noch eine geniale lösung mit hilfe einer Schleife zu finden!
Tabelle mit Schleife erstellen ist ja eigendlich recht einfach jedoch ist bei mir nun die Schwierigkeit das ich nach 3 Felder ein leeres Feld mit niedrigeren Maßen habe und das gleiche dann nochmal nach 3 weiteren und das ganze einmal Waagerecht und einmal Senkrecht!
Hat da jemand ne idee wie man dies in einer Schleife verwirklichen könnte?
Wenn nicht werde ich das Spielfeld etwas erneuern müßen und immer Gleichen Abstand nehmen!
Nach langer Hin & Her überlegung bin ich zum entschluß gekommen die Abstände alle gleich zu machen und nun habe ich auch eine Gute schleife erstellen können!
So sieht es soweit aus!
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)