Hilfe KI
Übersicht

![]() |
Broken ArrowBetreff: Hilfe KI |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weiß nicht ganz wie fuer mein neues Spiel Ki machen Soll.
Ich mache gerade ein Pong ähnliches Spiel, nur das dabei mehr Bälle vorkommen , dann muss die KI Aus einem Winkel, der derzeitigen Position , und der Geschwindigkeit die Position festellen können wo der Ball Aufkommt und da hin fahren wo sie die meisten Bälle erwischen kann. PS Wie benutzt man den IMG befehl Beim Nachrichten schreiben Hat jemand ne Idee ? |
||
- Zuletzt bearbeitet von Broken Arrow am Di, Mai 20, 2008 22:39, insgesamt einmal bearbeitet
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Indem du die KI genau das machen lässt was du tun würdest und das auf basis der "Daten" die dich dazu bewegen würden es zu tun.
KI ist kein Anfängerthema, sprich wenn du in Blitz noch nicht sattelfest bist, verzichte noch drauf und lern erst blitz. Und unterlass das kindische gesmiley oder ich trash das Ding |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Prometx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
als eine ki sollte eben immer den ball verfolgen,musst halt irgendwie die coordinaten des balles raus bekommen,eventuell EntityX , EntityY , EntityZ ,sollte glaube ich gehen(bin auch noch kein profi in blitz3d^)
natürlich wäre die ki dadurch unbesiegbar-->musst sie noch durch den maximalen speed einschrenken. mfg Prometx |
||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] If ball_y>spieler2_y then spieler2_y=spieler2_y+1 If ball_y<spieler2_y then spieler2_y=spieler2_y-1 Könnte man auch selbst draufkommen. |
||
![]() |
Broken Arrow |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du verstehst das Falsch
Ich wollte nämlich mit mehreren Bällen arbeiten wenn ich es so mache wie du meinst, würde der Schläger zittern Da ich mehrere Bälle habe |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nochmal: überleg dir wie du es machen würdest und versuch das umzusetzen.
Sprich präsentier uns deinen Ansatz mit code. Wir helfen dir bei code problemen aber wir sind nicht deine mami, die dir deine kartoffeln vorstampft fürs essen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
ProfJakeehemals "DTC" / "Fabian Niemann" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jetzt sei doch mal ein bisschen zahmer Dreamora ![]() Also Broken Arrow, du musst dir überlegen nach welchem Ball sich der gegnerische Schläger richten soll. Das währe der nächste, oder? Nicht ganz, du solltest auch die Geschwindigkeit nicht unbeachtet lassen, falls es da Unterschiede gibt. Allgemein gehalten musst du also den Ball ermitteln, der als nächster auf den Schläger trifft. Wenn du es mit Types machst, dann durchläufst du einfach alle und suchst dir den passenden raus. Und zu dem bewegst du den Schläger dann. Das könnte in etwa so aussehen: Code: [AUSKLAPPEN] Function getCurrentBall() currentBall.TBall = new TBall currentBall\x = 0 For b.TBall = EachIn TBall If gegner\x - currentBall\x > gegner\x - b\x Then currentBall = b Next Return currentBall End Function Ich weiß nicht, ob das so funktioniert, da ich kein Blitz3D habe, aber ich hoffe es kann dir einen groben Überblick verschaffen. |
||
- Zuletzt bearbeitet von ProfJake am Di, Mai 20, 2008 22:45, insgesamt 2-mal bearbeitet
![]() |
Broken Arrow |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich werde es so für den Anfang machen, Ich werde die Y nähe des balles rausfinden und danach sortieren
und der Schläger soll dann zu dem Ball fahren der im am nächsten ist ( nur für den Anfang) Kann des funktionieren Ich habe auch nur 2D und mach das Spiel auch in 2D Kapier ich net ![]() Ich kenn den Befehl Eachin ned |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dann würd ich empfehlen, die Hilfe zu konsultieren und ihn zu lernen ![]() Types allgemein wären sinnvoll verstanden zu sein. (Each ist ein Type Befehl) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
- Zuletzt bearbeitet von Dreamora am Mi, Mai 21, 2008 9:14, insgesamt einmal bearbeitet
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
EachIn ist ein BMax Befehl, in B3D/2D musst du Each nehemen.
Ich Schreib das Besispiel in B3D um, aber c&p nutzt trotzdem nichts... Code: [AUSKLAPPEN] Function getCurrentBall()
currentBall.Ball = new Ball currentBall\x = 0 For b.Ball = Each Ball If gegner\x - currentBall\x > gegner\x - b\x Then currentBall = b Next Return currentBall End Function |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group