Brauche dringend Hilfe bei KI!

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

ChrisAttack

Betreff: Brauche dringend Hilfe bei KI!

BeitragMi, März 10, 2004 18:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich kriege einfach keine vernünftige KI hin! Evil or Very Mad
Könnt ihr mir vielleicht eine schreiben? Es soll nichts besonderes sein...

1. gegner soll mit pointentity auf mesh zeigen
2. gegner z=z+1
3. wenn gegner zu nah an mesh, dann abdrehen, bis EntityDistance#
(mesh,gegner) >= 150, dann wieder zurück zu 1.

Bei mir krieg ich irgendwie kein ordentliches ergebnis zu stande. Bitte, bitte helft mir!!! Sad
B3D
MSVC++
DX9SDK

DC

Sieger des B2D Retro Wettbewerb / Aug 04

BeitragMi, März 10, 2004 18:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Huah.. du hast doch schon genau geschrieben was passieren soll, sogar mit den Befehlen. Also DAS umzusetzen dürfte doch wirklich kein Problem sein.

Sag lieber woran es bei dir scheitert und versuche das Problem zu beseitigen oder wenn das nicht geht es zu umgehen.

Wenn es jemand anderes macht lernst du nichts dazu. Und wenn du es gar nicht machen willst, solltest du lieber zu einem Game Maker greifen.
Core i5 4670K | 4 x 3,40 GHZ | 16 GB Ram | GeForce GTX 960 | HTC Vive | Win 10 Pro
www.UnrealSoftware.de | www.StrandedOnline.de | www.CS2D.com |
www.CarnageContest.com | www.Stranded3.com

ChrisAttack

BeitragMi, März 10, 2004 18:28
Antworten mit Zitat
Benutzer-Profile anzeigen
hier ein Teil meiner variante. Gegner verhalten sich komisch. Ich weiß nur nicht warum...

Code: [AUSKLAPPEN]


...

;##################### -=[ F KI ]=- ################
;
;Gegner Felder
Dim gegner(4,4)
;
Global radius#=.1
Global flucht#=150
;Startdaten
For I=0 To 4
   gegner(I,0)=1;noch da?
   gegner(I,1)=LoadMesh("Meshs/gegner.3ds");Mesh
   ;
   PositionMesh gegner(I,1),Rnd(200),Rnd(100),Rnd(200)
   ;
   RotateMesh gegner(I,1),-90,-90,90
Next
;
;
;####################################################


Repeat

;LASER
meshx=EntityX(mesh)
meshy=EntityY(mesh)
meshz=EntityZ(mesh)
;
If KeyHit(57) Then
schuss=schuss+1
If schuss = 100 Then schuss=1
laser(schuss,0)=LoadMesh("Meshs/laser.3ds")
RotateMesh laser(schuss,0),90,0,0
ScaleMesh laser(schuss,0),.5,.5,.5
laser(schuss,1)=1
laser(schuss,2)=meshz
laser(schuss,3)=EntityYaw#(mesh)
PositionEntity laser(schuss,0),meshx,meshy,meshz
TurnEntity laser(schuss,0),0,laser(schuss,3),0
EndIf
;
For I=0 To 100
If laser(I,1)=1 Then
MoveEntity laser(I,0),0,0,3
EndIf
Next
;
 


;Steuerung
If KeyDown(17)
   speed#=speed#+.1
ElseIf KeyDown(31)
   speed#=speed#-.1
EndIf
;
If KeyDown(30) And KeyDown(17) Or KeyDown(31)
   TurnEntity mesh,0,1,0
EndIf
;
If KeyDown(32) And KeyDown(17) Or KeyDown(31)
   TurnEntity mesh,0,-1,0
EndIf
;
If KeyDown(30)
   TurnEntity mesh,0,.5,0
ElseIf KeyDown(32)
   TurnEntity mesh,0,-.5,0
EndIf
;
if keydown(200) then moveentity mesh,0,1,0
if keydown(208) then moveentity mesh,0,-1,0
;

;Move Mesh
If speed#>=1.5 Then speed#=1.5
If speed#<=-.5 Then speed#=-.5
If speed#=0 Then speed#=.4
MoveEntity mesh,0,0,speed#
;

;Schiff kann nicht in Wasser
Collisions 1,2,2,2

;Gegner KI############# -=[ F KI ]=- ################################

;Bewegungen
For I=0 To 4
   If EntityDistance#(mesh,gegner(I,1)) <= radius# Then
      gegner(I,0)=0
   EndIf
   ;
   If gegner(I,0)=1 Then
      PointEntity(gegner(I,1),mesh)
   EndIf
   ;
   If gegner(I,0)=1 Then
      MoveEntity gegner(I,1),0,0,2
   EndIf
   ;
   If gegner(I,0)=0 Then
      MoveEntity gegner(I,1),0,Rnd(-1,1),0
   EndIf
   ;
   If EntityDistance#(gegner(I,1),mesh) >= flucht# Then
      gegner(I,0)=1
   EndIf
   ;
Next
;


;#####################################################################

;Screeenshot
if keydown(59) then savebuffer(Frontbuffer()),"Pictures/shot.bmp"
;

UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
B3D
MSVC++
DX9SDK
 

INpac

BeitragMi, März 10, 2004 19:15
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habs dir doch sogar schon als pn sehr gründlich erklärt.
Nimm auf jeden Fall mal Types, um das flexibel zu halten Exclamation

ChrisAttack

BeitragMi, März 10, 2004 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
OK, ich versuchs... Confused
B3D
MSVC++
DX9SDK

ChrisAttack

BeitragSa, März 13, 2004 12:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich krieg das einfach nicht hin verdammt! Evil or Very Mad
Bitte helft mir!
B3D
MSVC++
DX9SDK

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group