3 Technikfragen (KI, Soundprogramm, externe Dateien)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • 3 Technikfragen (KI, Soundprogramm, externe Dateien)

    Hallo Leuz!
    Habe die SuFu schon benutzt und habe auch ein paar Dinge gefunden, die mir aber nicht ganz weiterhelfen. In der Hilfe wird halt vieles nur ganz Kurz beschrieben und da hab ich so meine Probleme. :no:

    Also ich fange nun an:

    1. Gibt's ne Software, mit deren Hilfe ich Sounds erstellen kann, die es noch nie zuvor gegeben hat? Z.B. verwenden Top kommerzielle Spiele auch nicht ausgelutschte Sounds von anderen Games oder sowas in der Art. Besteht so ein Sound zuerst aus einem Grundton, den man dann so verändern kann, bis der gewünschte Effekt da ist (z.B. eine Sirene)? Denn wenn man's downloaden kann, besteht die Wahrscheinlichkeit, dass jemand anders genau diesen Sound auch benutzt. Oder wenn's nen Sound noch gar nicht gibt (z.B. das Netzgeräusch bei Spiderman^^), müsste man den ja auch irgendwie erstellen können.

    2. Ich suche eine Tic Tac Toe KI. Bis jetzt fand ich nur eine für Version 4 des Game Makers, welches auch dann irgendwie nicht richtig funzen will. Mit der SuFu habe ich zwar etwas über Bots ect. gefunden, doch über Intelligenz nur sehr unpraktische Hilfen. Naja... bei TicTacToe kann man das ja nicht KI nennen. ;) Ich schätze mal, das funktioniert irgendwie mit Variablen. DOCH WIE??? Ich raff das überhaupt nicht! Kann jemand ein Beispiel Online stellen? Thx.

    3. Wie um alles in der Welt kann ich externe Dateien laden? Ich möchte z.B. nen Hintergrund ins Spiel laden, welcher aber nicht als "Background" im GM definiert ist, sondern erst geladen wird, wenn er benötigt wird, um Speicher zu sparen (z.B. ...\Hintergründe\Hintergrund1.bmp). Kann mir da jemand weiterhelfen???

    Ich danke jetzt schon allen, die mir helfen können!!! :)

    EDIT
    *****

    Ich brauche das TicTacToe-Ki Beispiel nicht für ein TicTacToe Spiel, sondern um zu schauen, wie man sowas überhaupt zu Stande bringt. Dann habe ich nämlich die Grundlage für "Wegklickspiele" und andere Strategiespiele, die mir schon vor Augen schweben, die's noch nicht gibt! :D
    Ich danke euch für jedes Beispiel, dass ihr mir gebt!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Michaelp800 ()

  • Leider kann ich dir nur zu 3. antworten ^^
    Hast du denn schon mal in der Hilfe nachgeschlagen? ... Sicher?!?
    Dann schau mal hier: gm-d.de/help/
    Da gibbet solche Funktionen hier:

    GML-Quellcode

    1. sprite_add(fname,imgnumb,precise,transparent,smooth,preload,xorig,yorig) Fügt ein Bild aus einer Datei den Sprite-Ressourcen hinzu. Nur bmp, jpg und gif Bilder können geladen werden. Wenn das Bild bmp oder jpg ist kann es als Animationsstreifen mit verschiedenen Subimages nebeneinander geladen werden. imgnumb gibt deren Zahl an (1 für ein einzelnes Bild). Für (animierte) gifs wird dieses Argument ignoriert; die Zahl der Bilder in der gif Datei wird genutzt. precise gibt an, ob präzise Kollisionsüberprüfung genutzt werden soll. transparent gibt an, ob das Bild teiltransparent sein soll. smooth gibt an, ob die Ecken geglättet werden sollen. preload gibt an, ob die Textur in der Speicher vorgeladen werden soll. xorig und yorig geben die Position des Bezugspunktes an. Die Funktion gibt den Index des neuen Sprites zurück um es zu zeichnen oder es über die Variable sprite_index einer Instanz zuzuweusen. Falls ein Fehler auftritt wird -1 zurückgegeben.

    Bzw. "sprite_replace()"
    Die Funktion gibt die ID des Sprites wieder, den solltest du in eine globale Variable oder in ein persistentes Objekt packen, damit du es später verwenden kannst.

    EDIT: Ja, mal wieder zu spät...
    Achso, die Funktionen gibts natürlich auch für Sounds und Backgrounds.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von copyboy ()

  • Zu Frage 1:
    Probiers mal mit Audacity. Da kannst du einen Ton einfügen, der klingt zuerst nur nach einem durchgehenden piepen("Sirene"). Den kannst du dann mit massenhaften Effekten und anderen Einstellungen umändern. Mit Magix Musik Maker geht das genauso, nur das Programm ist Shareware, und kostet rund 50-80 Euro.

    Auf Frage 2 und 3 kann ich dir leider nicht antworten.

    mfg Timma
  • Original von Timma
    Zu Frage 1:
    Probiers mal mit Audacity. Da kannst du einen Ton einfügen, der klingt zuerst nur nach einem durchgehenden piepen("Sirene"). Den kannst du dann mit massenhaften Effekten und anderen Einstellungen umändern. Mit Magix Musik Maker geht das genauso, nur das Programm ist Shareware, und kostet rund 50-80 Euro.

    Auf Frage 2 und 3 kann ich dir leider nicht antworten.

    mfg Timma


    Kommerzielle Topspiele nehmen meistens die Sounds direkt in ihren Firmen oder im umliegenden Gelände auf. Tony Hawks Skater zB: Dort haben die Entwickler die Sounds direkt mit einem Diktiergerätähnlichem Dings aufgenommen. Ist auch bei vielen Shootern so. Audacity kenn ich nicht. Aber Magix kann ich dir nicht empfehlen. Der kann keine gescheiten Sachen erzeugen
    Retroware.de - Webdesign, Print und Apps aus Regensburg.
  • Danke für die Antworten!

    Zu den Sounds noch etwas. Es gibt aber Sounds (nicht musik), die man nicht aufnehmen kann, da sie nicht existieren. Und deshalb brauche ich so ein Programm, dass aus einem Grundton alles Mögliche erzeugen kann. Und wie mach ich ne TicTacToe KI oder von einem Wegklickspiel??? Thx.

    EDIT
    *****

    Ich möchte für den Anfang doch lieber ein Wgklick-Spiel machen, damit ich wenigstens die Grundlage der Grundlagen kenne. :D Kann mir jemand verraten, wie das geht?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Michaelp800 ()

  • "die man nicht aufnehmen kann"

    mit den audacity Grundton alles zu machen ist ziemlich schwer

    aber einen Grundton der dem gewünschten ähnelt kann man eigentlich immer aufnehmen
    und wenn man nur schnippt und dann nen Schuss draus macht...

    also ähnlichen ton aufnehmen
    und mit z.b. audacity (sind ja plötzlich alle ganz scharf auf mein lieblingsaufnahmeprogramm)
    verzerren bis das gewünschte rauskommt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von iTeM ()

  • Zur KI:
    Eine einfache Möglichkeit währe es einen "Random" Befehl zu verwenden.

    Quellcode

    1. cpu = floor(random(2)+1)
    2. switch (cpu)
    3. {
    4. case 1:
    5. //cpu nimt Stein
    6. break;
    7. case 2:
    8. //cpu nimt Schere
    9. break;
    10. //cpu nimt Papier
    11. case 3:
    12. }
    Alles anzeigen


    Zur Erklärung: Random(x) gibt einen zufälligen Wert zwischen 0 und x aus, dieser muss noch gerundet werden. Das macht das floor, mehr dazu im Link:

    Das große Random() Missverständnis

    Der "switch-case" Befehl wählt dann das jeweilige Symbol aus, stattdesen kanste auch if und else nehmen, nur wenn du mehr Auswahl hast und keine Ungleich Zeichen (</>) drin empfihlt sich der Case.

    Die KI solte eigentlich ausreichen, wenn du aber denoch eine kompliziertere willst kann ich dir nicht helfen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hirschländer ()

  • @Hirschländer
    Lol. Ehrlich gesagt bringt mich das kein bisschen weiter. Das mit dem Random ect. kann ich gut gebrauchen, um Objekte runterfallen zu lassen. Doch wie sage ich dem GM, wo die Steine runterkommen, und wie erkennt wird, ob da jetzt Objekte z.B. der gleichen Farbe nebeneinander sind, wo man mit der Maus draufgeklickt hat???
  • Im Grunde suchst du nach einem Hard-/Software-Synthesizer zur Klangmodulation. REASON 3 bietet dir als Grundausstattung den SubTractor und den Malstrom. Das sind zwei enorm umfangreiche Software-Synthies. FruityLoops bietet sicher auch einige, da kann ich dir aber aus klangtechnischen Gründen nur abraten.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Original von Michaelp800
    @Hirschländer
    Lol. Ehrlich gesagt bringt mich das kein bisschen weiter. Das mit dem Random ect. kann ich gut gebrauchen, um Objekte runterfallen zu lassen. Doch wie sage ich dem GM, wo die Steine runterkommen, und wie erkennt wird, ob da jetzt Objekte z.B. der gleichen Farbe nebeneinander sind, wo man mit der Maus draufgeklickt hat???

    Naja, eine KI (= Künstliche Intilligenz) ist wirklich schwer zu Programmieren, aber ich denke du meinst was anderes. Zu der Frage:

    GML-Quellcode

    1. instance_position(x,y,obj);
    2. /* Aus der Hilfe:
    3. "Gibt die ID der Instanz des Objektes obj an Position (x,y) an. Falls mehrere Instanzen an dieser Stelle sind, wird nur die erste gemeldet. obj kann ein Objekt oder das Schlüsselwort "all" sein. Wenn es nicht existiert, wird das spezielle Objekt "noone" zurückgegeben." */
    4. // Also würde ich es mal so probieren:
    5. var obj;
    6. obj = instance_position(x+32,y,object); // Rechts
    7. if (obj != -1){
    8. if (obj.farbe = farbe •oder• 'gelb'){ // Möglichkeit 1
    9. if (obj.sprite_index = sprite_index •oder• spr_gelb){ // Möglichkeit 2
    10. // Das prüft, ob die Farbe stimmt.
    11. with (obj){ /* mach was mit dem anderen Objekt */ }
    12. /* Mach was mit dem eigenen Objekt */
    13. }
    14. }
    Alles anzeigen
  • Hm, ich dachte eigentlich das TicTacToe, das mit den Stein, Schere und Papier ist. Deswegen der Hinweis im Code.

    Aber den Random befehl wirst du wohl brauchen, es ist dann bloss ein wennig komplizierter. Sonst werden wohl immer die gleichen Steine an der gleichen Stelle runterkommen.

    Oder bin ich wieder im falschen Spiel? Ich stelle mir dein Game grade als "Dr. Mario" (fals das jemand kennt) Klon vor.
  • Nochmal zu den Sounds: Ich hab mal was zum Katapultsound aus Age Of Empires gelesen. Den kannste ja eigentlich auch nur machen, wenn du ein Katapult nachbaust^^ Aber die Entwickler haben dann ein Lineal an einer Tischkante schnalzen lassen (gib ja so einen ähnlichen Sound) dann eben etwas verzerrt, tiefer gemacht, und dann passt das. Wenn du sagst, welchen Sound du genau brauchst, könnte man da vielleicht eher helfen.
    “Computers are good at following instructions, but not at reading your mind.” (Donald Knuth)

    Ich schreibe mit Neo.
  • Hallo. Ist nun doch schon etwas länger her, dass ich hier was reingeschrieben habe. Aber anstatt ein neues Thema zu eröffnen, mache ich gleich hier weiter. Es geht um die externen Dateien. Ich habe jetzt alles begriffen. Doch was ich noch wissen muss: Wie sage ich dem GameMaker, dass die Datei in einem Unterordner ist? Also z.B. "/Game Data/Musik/example.mp3". Das kriegt der irgendwie nicht hin. Kommt immer ne Meldung, wo steht, dass die Datei nicht existiert. Habe ich falsche Zeichen für die Pfadangabe benutzt? Bis jetzt schaffe ich es nur, dass er Dateien lädt, die sich im selben Ordner wie die EXE befinden. Aber ich möchte auf Unterordner zugreifen. Help?
    Thx. :)
  • @mauge wieso "aus soundteschnischen gründen abraten?" in fruity lässt sich so ziemlich jede art von musikrichtung erstellen die es zur zeit gibt (bei 'naturgebundenen klängen' natürlich 'nur' mit tricksen). so an sich lässt sich jedes vst und (fast) jedes vsti sowie directx plugins verwenden, und der eigenklang ist eigentlich auch recht gering. ich weiss wovon ich spreche, da ich schon mehrere platten mit tracks die mit diesem programm erstellt worden sind, released habe. Es kommt aber im endeffekt natürlich immer dadrauf an, wie der track gemastert ist.

    und natürlich koennte, wenn man wollte, obwohl fruity eigentlich 'nur' ein stepsequenzer ist, ihn auch zur klangerstellung benutzen, als basis für vsti's, oder zur samplemodulation.

    um einen ton zu 'erstellen' bräuchstes du einen synthesizer, den kannst du dir als standalone besorgen, oder als vsti um diesen dann in cubase/fruity/reason/wavelab etc zu 'verwenden'.

    wie zb


    vsynth, reaktor ähnlicher modularer softsynth, wäre mir persönlich allerdings schon zu kompliziert...

    shareware.de/software/download/Download_3711.html


    zur 'natürlichen' klang erstellung, würde ich mit nem dat oder diktiergerät auf die strasse gehen, und die sounds zuhause nachbearbeiten.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Raeumler ()

  • Original von Michaelp800
    Hallo. Ist nun doch schon etwas länger her, dass ich hier was reingeschrieben habe. Aber anstatt ein neues Thema zu eröffnen, mache ich gleich hier weiter. Es geht um die externen Dateien. Ich habe jetzt alles begriffen. Doch was ich noch wissen muss: Wie sage ich dem GameMaker, dass die Datei in einem Unterordner ist? Also z.B. "/Game Data/Musik/example.mp3". Das kriegt der irgendwie nicht hin. Kommt immer ne Meldung, wo steht, dass die Datei nicht existiert. Habe ich falsche Zeichen für die Pfadangabe benutzt? Bis jetzt schaffe ich es nur, dass er Dateien lädt, die sich im selben Ordner wie die EXE befinden. Aber ich möchte auf Unterordner zugreifen. Help?
    Thx. :)


    In Windows wird der Backslash \, nicht der Slash / zur Ordnertrennung verwendet. Das sähe also korrekt in etwa so aus: "Game Data\Musik\example.mp3"
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • Jo danke! Funktioniert! Anfangs benutzte ich auch "\", doch es funktionierte nicht. Der Fehler war, dass ich so ein Teil ganz am Anfang gesetzt habe. Also "\Game Data\..." anstatt "Game Data\...". DANKE!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Michaelp800 ()