Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Game Maker Domäne. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

1

Mittwoch, 29. Dezember 2010, 22:11

Brauche hilfe beim Zufallssystem und ähnlichem..

hallo... folgendes Problem:
Ich möchte für meinen kleinem Bruder ein Lernspiel machen.

Bei dem Spiel geht es ums Rechnen...

Wenn er nun auf eine Übung klickt, beispielsweiße jetzt die 7er Reihen...

Wenn er es nun anklickt sollen übungen aufscheinen. Wenn er nun die richtige Antwort anklickt, soll eine neue Rechnung kommen. jedoch sollte dies immer unterschiedlich sein. (Wenn er alle Rechnungen richtig hat kommt eine Animation wo eine Rakete startet^^)

Also wie löse ich nun folgende Probleme?:
- Fragen und Antworten erscheinen erst, wenn die Frage zuvor gelöst wurde.
- Fragen und Antworten sollen unterschiedlich erscheinen also wenn er den Raum neu startet dann kommt eine andere Reihenfolge damit er es nicht auswendig lernen kann

wäre ECHT DANKBAR für die lösung!! :)
mfg

Ps: hab 8 Gm lite version...
mfg Salmi

georg01

Kleiner Cäsar

Beiträge: 72

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

  • YoYo Games Profil
  • Private Nachricht senden

2

Mittwoch, 29. Dezember 2010, 23:16

Hallo,
damals habe ich so Ähnliches (Mathe Lernspiel) gebastelt.
Es ist relativ primitiv – jedoch wenn du dich durch die Texte … Beschreibung „durchkämpfst“ und den Skeleton zeitgemäß einpassen würdest, hast du schon was fertiges parat – leider in Java. (braucht JVM am Rechner)
Link
Gruß
Georg

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

3

Mittwoch, 29. Dezember 2010, 23:34

sorry, ich kenn mich noch nicht wirklich aus beim programmieren und so^^... aber was ich meine ist, das man fast nur rechnungen lösen muss... aber trozdem danke :)

aja so nebenbei... wie machst du den ton? Selber sprechen oder wie?^^
mfg Salmi

georg01

Kleiner Cäsar

Beiträge: 72

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

  • YoYo Games Profil
  • Private Nachricht senden

4

Mittwoch, 29. Dezember 2010, 23:58

Möchte hoffen, das ich hier keine Ärger bekomme. ?(

In dem Spiel, habe ich mit Absicht „alles Mögliches offen“ gelassen.
(Damit es Personalisiert werden kann.) – an sich anpassen.
Auch Ton ist Editierbar! … Ja selber sprechen -> aufnehmen und als … speichern.
Dann erscheint auch deine (Aufnahme) Stime / Textaussage) im Spiel.

xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

5

Donnerstag, 30. Dezember 2010, 11:59

Was du brauchst sind Arrays .
Lies dir am besten das ganze Kapitel in der Hilfe durch ;)
Danach versuchs mal selber zu lösen..
Noch ein kleiner Denkanstoß....
global.geloest[x] = true/false // Speicher ab ob Frage x gelöst wurde
global.frage[x] = "7 mal 2" // Speichert alle Fragen ab (in diesem Fall Frage x
global.loesung[x] = 14 // Speichert die Lösung der Frage x ab (zum Überprüfen)

Mit Zufall ( random(); )suchst du dir nun eine Frage aus, überprüfst ob sie schon gelöst wurde und wenn nicht vergleichst du noch die Lösung.

MfG xxskxx

Nachtrag: Wenn du wirklich zufällige Rechnungen haben willst lässt du sie dir bei Room-Start einfach mit eine for - Schleife generieren.
-

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

6

Donnerstag, 30. Dezember 2010, 12:25

hm.. danke erstmal^^...

aber ich finde keine hilfe die auf deutsch ist und auch ausführlich :S

und mit dem beim Room Start ne for - SChleife generieren kann ich mal garnix anfangen xD

bin allgemein n anfänger wenns ums programmieren geht^^..
skripten kann ich auch fast gar nich :s
mfg Salmi

Lucke

***Gold***

Beiträge: 1 064

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 7

  • Private Nachricht senden

7

Donnerstag, 30. Dezember 2010, 15:41

Www.gm-d.de/help


Schau mal im Tutorial-Archiv mal nach einfachen Tutorial....Drag&Drag Einstiger (ect.) , fang mit was
Einfachem an !!!
@7rust-dev

Beiträge: 840

Game Maker Version: 7 Pro

  • Private Nachricht senden

8

Donnerstag, 30. Dezember 2010, 15:58

Oder hier: klick

Lucke

***Gold***

Beiträge: 1 064

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 7

  • Private Nachricht senden

9

Donnerstag, 30. Dezember 2010, 18:32

@ Danke Maxda, das meinte ich(glaub ich) ;) war am iPod online.


Wie gesagt....das sollte dir helfen (für den Anfang) ansonsten gm-d.de/help
@7rust-dev

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

10

Samstag, 1. Januar 2011, 16:14

Okey danke... Habs mir jetzt 3 mal aufmerksam durchgelesen, weiß nun aber trozdem nicht wo ich mit arrays anfangen soll, und und und... Kann ich das wirklich nicht anders ins spiel einbauen? :S

Kann mir jemand ein Beispiel zeigen? Wo mind. 2 Arrays eingebaut sind? :S
Wenn ich Beispiele sehe versteh ichs viel schneller^^...

Wäre euch sehr dankbar :)
mfg Salmi

xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

11

Samstag, 1. Januar 2011, 16:25

Du kennst bereit Variablen:
variable1 = 30;
Das setzt den Wert der Variablen "variable1" auf 30.

Was du brauchst sind 1-Dimensionale Arrays:

Man kann nun auch mehrere Werte in 1 Variable Speichern:
variabele1[0] = 20;
variabele1[1] = 200;
variabele1[2] = 2000;

Wie du siehst wird einfach an den Variablen Namen 2 Eckige Klammern angefügt mit einer Zahl dazwischen.
Du kannst den Wert ganze einfach auslesen in dem du die Variable einfach mit Eckige Klammer in die jeweilige Funktion schreibst:
show_message(string(variable1[1])); // Es wird 200 ausgegeben.

Dies lässt sich vorallem gut in for-Schleifen nutzen:

GML

1
2
3
for(i=0;i<=2;i+=1) {
     variable[i] = i*3  // Die For-Schleife zählt nun von 0 - 2 und setzt die Variable auf i*3
}


Wenn du dir nun den Wert von variable[1] ansiehst wird er 3 sein
-

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

12

Samstag, 1. Januar 2011, 16:32

ah okey, schon langsam wirds verständlicher^^...

und soll ich hierfür ein skript schreiben?
Und wo soll ich das Skript einfügen?
mfg Salmi

xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

13

Samstag, 1. Januar 2011, 17:30

Ich hab es dir hier mal vorgemacht. Was mir dabei sehr wichtig ist, dass du verstehst, was die jeweiligen Zeilen bewirken. Wenn du etwas nicht verstehen solltest frag mich bitte! Kopier nicht einfach alles 1:1 .
Ich hab extra mal die for-Schleife weggelassen damit es noch verständlicher wird und du nicht mit zu viel neuem konfrontiert wirst.



Am Anfang des Spiels:

GML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
anzahlDerFragen = 5;

// Zuerst speichern wir alle Fragen in ein Array
frage[0] = "7 mal 2";
frage[1] = "7 mal 5";
frage[2] = "7 mal 8";
frage[3] = "7 mal 11";
frage[4] = "7 mal 14";

// Danach speichern wir die Lösung der Fragen auch in ein Array.
// Wichtig ist, dass das Array die gleiche Zahl sein muss wie in der Variable "frage"
loesung[0] = 14;
loesung[1] = 35;
loesung[2] = 56;
loesung[3] = 77;
loesung[4] = 98;


// Dann setzten wir noch alle Fragen auf ungelöst.
geloest[0] = false;
geloest[1] = false;
geloest[2] = false;
geloest[3] = false;
geloest[4] = false;


Danach fragen wir mal die Übungen ab:

GML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
uebung = round(random(4)); // Wir erzeugen eine zufällige Zahl von 0-4. Round rundet die Zahl, da random eine Kommazahl ausgibt.

while (!geloest[uebung]) {   // Solange die zufällig gewählte Übung schon gelöst ist ...
    uebung = round(random(4));  // wird wieder per Zufall eine andere Übung ausgewählt
}
antwort = get_integer(frage[uebung],"");  // Hier kommt der interessante Teil von arrays. Wir setzen die Zufallszahl als array ein.
if (antwort == loesung[uebung]) { // Nun überprüfen wir die Antwort des Spielers mit dem Array in der Variablen "Lösung"
     geloest[uebung] = true;  // Nun setzen wir,dass die Übung "uebung" gelöst wurde
     // Nächste Übung anzeigen
}
else {
    // Die Übung war falsch... 
    // Was soll dann passieren?
}



MfG xxskxx
-

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »xxskxx« (1. Januar 2011, 18:03)


Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

14

Samstag, 1. Januar 2011, 17:44

wow, danke :))

aber kann es sein das da ein Befehl fehlt?

GML

1
2
3
if (antwort == loesung[uebung]) { // Nun überprüfen wir die Antwort des Spielers mit dem Array in der Variablen "Lösung"
     geloest[uebung] = true;  // Nun setzen wir,dass die Übung "uebung" gelöst wurde
     // Nächste Übung anzeigen


Da steht nichts abgesehen von der grünen Schrift (ich weiß was die grüne Schrift bedeutet, nur weiß ich nicht wie ich die nennen soll^^) das eine neue Übung angezeigt wird... Oder irr ich mich da (wieder mal^^)?
mfg Salmi

xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

15

Samstag, 1. Januar 2011, 17:57

In GML und vielen anderen Programmiersprachen
kann man Kommentare in den Code schreiben, indem man // vor den Kommentar schreibt oder einfach den Kommentar zwischen /* und */ schreibt.
Beispiel:

GML

1
2
3
4
// Kommentar
/* Kommentar
Kommentar
Kommentar */


Kommentare ("die grüne Schrift") wird vom Game Maker einfach ignoriert
=> Da mein Code ja nicht ohne Verständnis übernommen werden sollte hab ich nicht alles vorgemacht.
Den Rest solltest du dann selbst schaffen ;)
Wenn sonst alles klar ist :)
-

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

16

Samstag, 1. Januar 2011, 18:01

das meinte ich doch mit dem^^... ich weiß was die grüne Schrift für eine Bedeutung hat, also das diese als Kommentar bereit steht, nur wusste ich nicht wie man diese nennt... worauf ich eigentlich hinaus wollte ist, das nach dem

GML

1
 geloest[uebung] = true;


Befehl kein weiterer folgt. Also Wenn die Lösung true ist, dann zur nächsten Frage gehen. Das fehlt hier (nach meiner Meinung..) Oder wo steht es? :P
WÜrd mich intressieren :)
mfg Salmi

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

17

Samstag, 1. Januar 2011, 18:02

achso hab edit erst jetzt gelesen...^^

Ja schaffe ich schon, nur dachte ich das du es hier vergessen hast^^...

aber danke! :)
mfg Salmi

xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

18

Samstag, 1. Januar 2011, 18:02

Also Wenn die Lösung true ist, dann zur nächsten Frage gehen. Das fehlt hier (nach meiner Meinung..) Oder wo steht es? :P
WÜrd mich intressieren :)


Naja ich würde sagen ich hab dir doch gezeigt wie man eine Übung anzeigt. Das musst du nur wiederholen
=> Du sollst es selbst machen :D
-

Salmi

>>Präsident<<

  • »Salmi« ist der Autor dieses Themas

Beiträge: 237

Game Maker Version: 8 Pro

Selbsteinschätzung: GML Anfänger

Aktuelles Projekt: online multiplayer game

  • Private Nachricht senden

19

Samstag, 1. Januar 2011, 18:15

und wieder eine Frage :S

GML

1
while (!geloest[uebung]) {   // Solange die zufällig gewählte Übung schon gelöst ist ...


Da zeigt der bei mir Syntax error... Und hier weiß ich leider überhaupt nich was ich da einsetzten sollte :S
mfg Salmi

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Salmi« (1. Januar 2011, 18:25)


xxskxx

elitärer Nörgler

Beiträge: 895

Game Maker Version: Studio

Selbsteinschätzung: GML Fortgeschrittener

Danksagungen: 3

  • Private Nachricht senden

20

Samstag, 1. Januar 2011, 18:39

Ähm also die Stelle ist richtig.
Der Fehler muss woanders liegen.
Vlt. ein paar Zeilen darüber oder dadrunter.

Die Angabe stimmt manchmal nicht wenn man nicht nach jeder Zeile ein ";" Semikolon setzt (if-Abfragen, while usw sind Ausnahmen [da muss kein ";" hin])
-

Ähnliche Themen

Verwendete Tags

Zufall