Gamestudio Links
Zorro Links
Newest Posts
Zorro 2.70
by jcl. 09/29/25 09:24
optimize global parameters SOLVED
by dBc. 09/27/25 17:07
ZorroGPT
by TipmyPip. 09/27/25 10:05
assetHistory one candle shift
by jcl. 09/21/25 11:36
Plugins update
by Grant. 09/17/25 16:28
AUM Magazine
Latest Screens
Rocker`s Revenge
Stug 3 Stormartillery
Iljuschin 2
Galactic Strike X
Who's Online Now
3 registered members (NewbieZorro, TipmyPip, 1 invisible), 19,045 guests, and 8 spiders.
Key: Admin, Global Mod, Mod
Newest Members
krishna, DrissB, James168, Ed_Love, xtns
19168 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
c_trace ground Problem #106777
01/13/07 20:32
01/13/07 20:32
Joined: Aug 2005
Posts: 512
Bayern
Schmerzmittel Offline OP
User
Schmerzmittel  Offline OP
User

Joined: Aug 2005
Posts: 512
Bayern
Tagchen...

ich schon wieder

Ich habe diesmal folgendes Problem. Ich habe mal mein Trace gegen c_trace ausgetauscht.

Aber egal was ich mache. Jedes mal, wenn ich einen kleinen Berg hinaufgehe, werde ich extrem langsam und der Boden schiebt mich quasie. Wenn ich stehen bleibe, dann rutsche ich den Berg runter, bis er auf einem ganz graden Boden steht. Ist echt merkwürdig.

Hier mal der Code... Wäre nett wenn mir jemand helfen könnte.

vec_set (temp, my.x);
temp.z -= 10000;
//trace_mode = ignore_me + ignore_passable + use_box;
//Spieler_geschwindigkeit.z = -trace(my.x, temp);
Spieler_geschwindigkeit.z = -c_trace(my.x, temp, ignore_passable + ignore_sprites);

my.pan -= 5 * mouse_force.x; // Benutze die Maus zum schauen
camera.tilt -= 5 * mouse_force.y;

move_mode = ignore_passable + ignore_passents + ignore_sprites + glide;
ent_move(Spieler_geschwindigkeit, nullvector);


Edit:

Ich habe mal Use_box mit dazu gesetzt. Dann läuft alles in richtiger Geschwindigkeit, aber er fällt nicht mehr runter. Also wenn er mal steigt, dann bleibt er auf der gestiegenen höhe und schwebt in der Luft.

P.S. my.polygon ist auch auf on.

Danke schon mal im Vorraus

Last edited by Schmerzmittel; 01/13/07 20:36.

A7 Com V7.80
Re: c_trace ground Problem [Re: Schmerzmittel] #106778
01/13/07 21:38
01/13/07 21:38
Joined: Jan 2007
Posts: 1,619
Germany
Scorpion Offline
Serious User
Happy Birthday Scorpion  Offline
Serious User

Joined: Jan 2007
Posts: 1,619
Germany
gaaanz klar du hast use box vergessen

edit: oh sorry hab deinen edit erst nechem posten gesehn

Last edited by Scorpion; 01/13/07 21:39.
Re: c_trace ground Problem [Re: Scorpion] #106779
01/13/07 22:39
01/13/07 22:39
Joined: Aug 2005
Posts: 512
Bayern
Schmerzmittel Offline OP
User
Schmerzmittel  Offline OP
User

Joined: Aug 2005
Posts: 512
Bayern
Ich habe etwas rumprobiert.

Dies hier ist das neue Script, aber dann ist es wie vorher. Er rutscht dann wieder auf den Boden runter. Aber er soll ja am Hang stehen bleiben. BITTE HELFT mir!!! Ich bin am verzweifeln.


Hier mal der Code:

c_move(player_1st,nullvector, vector(0, 0, -12 * time),
ignore_passable + ignore_passents + ignore_sprites + glide + use_box);

Sobald ich aber das -12 * time rausnehmen, dann nimmt er die höhe des Terrains an und bleibt da hängen. Schwebt umher und nimmst sich frei.

Danke schon mal.


A7 Com V7.80
Re: c_trace ground Problem [Re: Schmerzmittel] #106780
01/13/07 23:11
01/13/07 23:11
Joined: Jan 2007
Posts: 1,619
Germany
Scorpion Offline
Serious User
Happy Birthday Scorpion  Offline
Serious User

Joined: Jan 2007
Posts: 1,619
Germany
-12 sagt ja auch das er jeden frame -12 runtergehen soll, du musst tracen, um zu sehen ob unter ihm was ist, wenn nicht lässt du ihn fallen (z wert kleiner als 0)

Re: c_trace ground Problem [Re: Scorpion] #106781
01/13/07 23:15
01/13/07 23:15
Joined: Aug 2005
Posts: 512
Bayern
Schmerzmittel Offline OP
User
Schmerzmittel  Offline OP
User

Joined: Aug 2005
Posts: 512
Bayern
Das ist ja das Problem. Ich Trace ja. Habe als erstes mit dem normalen Ent_move usw. gearbeitet. Aber das gefiel mir nicht. C_move ist schöner, ABER entweder rutscht er runter, oder bleibt ind er Luft hängen.

Hier mal nochmal das ganze Script. Vielleicht findest du ja den Fehler.


action bewege_spieler
{
var Spieler_geschwindigkeit;
player_1st = my;
Gesundheit = 100;
//camera.genius = my;
my.invisible = on;


while (gesundheit > 0)
{
camera.x = my.x;
camera.y = my.y;
camera.z = my.z + 20;
camera.pan = my.pan;


Spieler_geschwindigkeit.x = 10 * (key_w - key_s) * time; //Vorwärts
Spieler_geschwindigkeit.y = 6 * (key_q - key_e) * time; //Seitwärts

vec_set (temp, my);
temp.z -= 10000;

c_trace(my.x, temp , ignore_passable + ignore_sprites + use_box);



c_move(player_1st,spieler_geschwindigkeit, vector(0,0,-12 * time),
ignore_passable + ignore_passents + ignore_sprites + glide + use_box);

my.pan -= 5 * mouse_force.x; // Benutze die Maus zum schauen
camera.tilt -= 5 * mouse_force.y;

wait(1);

}

}


Edit:
Ich weiß nicht, kommt bei c_trace in der Klammer hinter Temp das .z hin? Weil wenn ja, dann ist das scheisse, weil da die Framerate um mehr 70 FPS runtersaust. Habs getestet.



EDIT2:

Mir ist was komisches aufgefallne. Wenn ich c_trace rauskommentiere und einfach C_move ohne Trace verwende, ist es das selbe. Er steigt hinauf, und bleibt auf der höhe dann stehen. ALSO wird c_trace ja gar nicht beachtet. Wie geht denn das? Muss man bei c_trace noch voher was anderes definieren?

Last edited by Schmerzmittel; 01/14/07 01:14.

A7 Com V7.80
Re: c_trace ground Problem [Re: Schmerzmittel] #106782
09/21/07 22:28
09/21/07 22:28
Joined: Jan 2007
Posts: 24
A
ack Offline
Newbie
ack  Offline
Newbie
A

Joined: Jan 2007
Posts: 24
Ich habe deinen Code ausprobiert, weil ich ein Problem habe eine Figur eine Stiege hinaufgehen zu lassen. Leider schafft dein Code das auch nicht.

Liebe Grüße

Gerhard

Re: c_trace ground Problem [Re: ack] #106783
09/21/07 23:05
09/21/07 23:05
Joined: May 2005
Posts: 2,713
Lübeck
Slin Offline
Expert
Slin  Offline
Expert

Joined: May 2005
Posts: 2,713
Lübeck
Code:

c_trace(my.x, temp , ignore_passable + ignore_sprites + use_box);

c_move(player_1st,spieler_geschwindigkeit, vector(0,0,-12 * time),
ignore_passable + ignore_passents + ignore_sprites + glide + use_box);



Da gibt es keinen Zusammenhang bei dir. In deinem ersten Post ist dieser noch gegeben...


Code:

vec_set (temp, my);


Das ist auch falsch! (und oben erst richtig)

Ersetze
Code:

vector(0,0,-12 * time)


im c_move wieder mit nullvector.

das c_trace sollte als mode auch noch ignore_me gesetzt bekommen.

und time wurde inzwischen mit time_step ersetzt...

Re: c_trace ground Problem [Re: Slin] #106784
10/01/07 15:42
10/01/07 15:42
Joined: Oct 2007
Posts: 40
Switzerland
N
Nikozu86 Offline
Newbie
Nikozu86  Offline
Newbie
N

Joined: Oct 2007
Posts: 40
Switzerland
Hallo
ich habe den Thread kurz überflogen.

die C_MOVE-Anweisung ist komplett falsch aufgebaut.

c_move(my,VectorX(vorwärts),VectorY(seitliche),VectorZ(vertikale), IgnoreMODES)

In deinem Fall sagst du der Engine;
c_move(player_1st,spieler_geschwindigkeit, vector(0,0,-12 * time),

BEWEGE(MICH , x=spieler_geschw , y=vector(0,0,-12), und in Z steht nichts mehr)
// also warum muss sich den Spieler nach unten bewegen?

ich würde folgendes versuchen:

c_move(player_1st,spieler_geschwindigkeit,nullvector,Spieler_geschwindigkeit.z, DEINE IGNOREMODES);
-------------------
Wenn`s nicht funktioniert, sollten wir was komplett Anderes versuchen.

Gruss,
Nikozu86


Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | 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