Gamestudio Links
Zorro Links
Newest Posts
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (M_D), 1,430 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Newest Members
firatv, wandaluciaia, Mega_Rod, EternallyCurious, howardR
19050 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 2 1 2
geradeaus ins verderben #362659
03/08/11 23:11
03/08/11 23:11
Joined: Feb 2010
Posts: 482
in deinem Kopf
Otter Offline OP
Senior Member
Otter  Offline OP
Senior Member

Joined: Feb 2010
Posts: 482
in deinem Kopf
Hallo Freunde!

Ich weis, das thema KI hatten wir gerade erst, aber
ich brauch dringend eine idee, damit mein Koopa nicht in sein verderben stürtzt. eek


Es gibt da so eine function die ein unsichbares "ding" erstellt, welches permanent rechnet ob es in einem block steckt oder nicht.
Ich hab völlig vergessen wie diese zeile heißt... tired
ich hoffe ihr wisst welche "function" ich meine.

Links und rechts unter den Füßen des kleinen kerls könnte ich dann bestimmen wann's schluss ist mit Vorwärts geradeaus.



Allerdings -und das ist der eigentliche grund dieses Threads- frage ich mich ob es nicht auch anders geht.
Wenn ich mich recht erinnere wurde diese "function" als langsam beschrieben.
Und das kann ich mir bei 20 Gegnern gleichzeitig nicht erlauben.


Rettet den Koopa!
OTTER



Be my UBB-Buddy, without any reason!
Re: geradeaus ins verderben [Re: Otter] #362662
03/08/11 23:19
03/08/11 23:19
Joined: Sep 2003
Posts: 5,900
Bielefeld, Germany
Pappenheimer Offline
Senior Expert
Pappenheimer  Offline
Senior Expert

Joined: Sep 2003
Posts: 5,900
Bielefeld, Germany
Wenn die Gegner nur immer den gleichen Weg hinundhergehen, bräuchtest nur einmal die Endpunkte feststellen, und speicherst sie dann in einem ihrer Skills.
Du könntest sie aber auch einfach generell einen c_trace vor sich herunterschicken lassen, wenn der nur kurz ist, z.B. ein-zwei Blocks lang, dürfte er auch nicht zu langsam sein.
Gegner, die weit außerhalb des Views sind, könnten auch "abgeschaltet" werden.

Re: geradeaus ins verderben [Re: Pappenheimer] #362669
03/09/11 00:28
03/09/11 00:28
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Also wenn Du die Standardbeleuchtung von GS benutzt würde ich Dir empfehlen einfach entity->floor_dist auszuwerten. Die wird ohnehin berechnet und dann kannst Du Sie einfach auslesen. Wenn Sie viel größer als der Betrag von entity->min_z ist, dann ist der Koopa am Abgrund und sollte umdrehen. Die Funktion die Du meinst ist wahrscheinlich c_trace oder c_content.

Wenn das ganze nicht allzu dynamisch sein soll und sich der Koopa nur in einer Dimension bewegt, dann kannst Du auch einfach beim Laden des Levels ein paar Testtraces machen und dann speichern wo die Begrenzungen für ihn sind. Das hätte den Vorteil, dass es nicht so aussieht als ob er schon hal runterfallen würde, wenn er umdreht.


Always learn from history, to be sure you make the same mistakes again...
Re: geradeaus ins verderben [Re: Uhrwerk] #362675
03/09/11 01:45
03/09/11 01:45
Joined: Feb 2009
Posts: 2,154
Damocles_ Offline
Expert
Damocles_  Offline
Expert

Joined: Feb 2009
Posts: 2,154
wenn Deine Gegner immer nur auf einer Platform links/recht patroillieren,
und du nicht viel Programmieren willst,
würd ich wie Pappenheimer vorgeschlagen hat einfach
2 Skills in WED für jede Einheit editieren, die für die maximale links und rechts Bewegung stehen.

Dann dreht die Einheit um, wenn sie an diesen Rand-wert gelangt ist. (if(my.x> my.skill5) -> umdrehen oder so)

So brauchst Du nicht den Untergrund zu überprüfen.
(ist halt nur dann mehr manuelle Arbeit die Werte einzutragen)

----

Apropos: wenn man mit traces den Weg überprüft, wäre es
toll eine AABB - Axis Aligned Bounding Box zu haben.
Das hier ist ein gutes Beispiel ist, wo elipsoide Boundigboxes
die schlechtere Wahl sind.

Re: geradeaus ins verderben [Re: Damocles_] #362683
03/09/11 08:59
03/09/11 08:59
Joined: Feb 2010
Posts: 482
in deinem Kopf
Otter Offline OP
Senior Member
Otter  Offline OP
Senior Member

Joined: Feb 2010
Posts: 482
in deinem Kopf
c_content war was ich gesucht hab. ^^

Gute Ideen, aber was haltet ihr von einer kombination:
Am beginn des levels läst jeder koopa einen "test-trace" von seiner position nach links und rechts prüfen wie weit der abstand zum abgrund ist.
Das wird dann in skills gespeichert und er muss nicht ständigen neu geprüft werden.
Sobald ein block in seiner nähe zerstört wird, startet er wieder seine "test-strahlen" um den neuen weg zu berechnen.

Ich glaube das sollte funktionieren
OTTER


Be my UBB-Buddy, without any reason!
Re: geradeaus ins verderben [Re: Otter] #362689
03/09/11 11:05
03/09/11 11:05
Joined: Feb 2009
Posts: 2,154
Damocles_ Offline
Expert
Damocles_  Offline
Expert

Joined: Feb 2009
Posts: 2,154
Hört sich gut an.
Nur mußt DU das Ereignis "Block zerstört" dann korrekt behandeln.

Wenn das geht, sollte das System gut funktionieren.

Re: geradeaus ins verderben [Re: Damocles_] #362751
03/09/11 15:21
03/09/11 15:21
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Ja, das ist eine prima Lösung. Du musst dann nur eine Liste von allen Koopas führen, und jeden Koopa über die Zerstörung eines Blocks benachrichtigen.

BTW.: Epic Artwork. Ich liebe den Gesichtsausdruck der Koopas. :-)


Always learn from history, to be sure you make the same mistakes again...
Re: geradeaus ins verderben [Re: Uhrwerk] #362887
03/09/11 21:50
03/09/11 21:50
Joined: Feb 2010
Posts: 482
in deinem Kopf
Otter Offline OP
Senior Member
Otter  Offline OP
Senior Member

Joined: Feb 2010
Posts: 482
in deinem Kopf
YUHU ERFOLGSERLEBNIS!^^
Alles funktioniert im moment wie es soll!
Zumindest bis ich einen block zerstöre und ihm damit für kurze zeit den pointer "deadly_box" übergebe. (damit gegner in der nähe der box geschädigt werden)

Also wenn "deadly_box" != NULL ist, wird dieser test-trace wieder aktiviert.
Unglöcklichweise werd ich den blöden pointer nach dem zerstören des ersten blocks nicht mehr los und er ist die ganze zeit != NULL.
Auch wenn der ursprüngliche block schon längst entfernt wurde.
Damit komme ich zur simplen frage:
wie entferne ich einen pointer?

@Uhrwerk: das sind meine ersten gehversuche mit einem zeichenpad.^^
Ich glaube aber das ich langsam besser werde.


Be my UBB-Buddy, without any reason!
Re: geradeaus ins verderben [Re: Otter] #362890
03/09/11 21:55
03/09/11 21:55
Joined: Aug 2007
Posts: 1,922
Schweiz
Widi Offline
Serious User
Widi  Offline
Serious User

Joined: Aug 2007
Posts: 1,922
Schweiz
deadly_box = NULL; ??
Wenn du den Pointer wie oben manuell auf NULL setzt?

Re: geradeaus ins verderben [Re: Widi] #362893
03/09/11 22:09
03/09/11 22:09
Joined: Feb 2010
Posts: 482
in deinem Kopf
Otter Offline OP
Senior Member
Otter  Offline OP
Senior Member

Joined: Feb 2010
Posts: 482
in deinem Kopf
o___O'

Okay....

von ein dutzent varianten ist mir das nicht eingefallen...
peinlich blush
danke widi!

Das wars dann wohl wieder fürs erste.
Danke für eure hilfe, alles funktioniert prima!
Der Koopa darf leben .................... für den moment
mfg
OTTER


Be my UBB-Buddy, without any reason!
Page 1 of 2 1 2

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1