Gamestudio Links
Zorro Links
Newest Posts
Newbie Questions
by fairtrader. 12/05/23 14:22
Zorro Trader GPT
by TipmyPip. 12/04/23 11:34
Square root rule
by Smallz. 12/02/23 09:15
RTest not found error
by TipmyPip. 12/01/23 21:43
neural function for Python to [Train]
by TipmyPip. 12/01/23 14:47
Xor Memory Problem.
by TipmyPip. 11/28/23 14:23
Training with command line parameters
by TipmyPip. 11/26/23 08:42
Combine USD & BTC Pairs In Asset Loop
by TipmyPip. 11/26/23 08:30
AUM Magazine
Latest Screens
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Tactics of World War I
Who's Online Now
4 registered members (AndrewAMD, Quad, soulman3, Ayumi), 675 guests, and 2 spiders.
Key: Admin, Global Mod, Mod
Newest Members
fairtrader, hus, Vurtis, Harry5, KelvinC
19019 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 4 1 2 3 4
Problem mit Gamestudio #344789
10/20/10 17:38
10/20/10 17:38
Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
P
Patrick92 Offline OP
Member
Patrick92  Offline OP
Member
P

Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
Hoi

Mir ist vor kurzen der Computer Kaputt gegangen.
Als ich denn Computer Wider Repariert Habe, funktionieren plötlich meine Projekte nicht mehr wegen diesen Fehler:

Compiling MAIN.c - [ESC] to abort......
Error in "player.c" line 35:
"trace" undeclared identifier
< my.jumper = trace(my.x, temp);
>
..0.087 sec

Die Scripte sind von mir selbst Geschrieben und haben bis jetzt immer Funktioniert.
Kann das am Programm Liegen?

Danke für eure Hilfe

Patrick

Re: Problem mit Gamestudio [Re: Patrick92] #344795
10/20/10 17:52
10/20/10 17:52
Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
MasterQ32 Offline
Expert
MasterQ32  Offline
Expert

Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
welche version benutzt du?


Visit my site: www.masterq32.de
Re: Problem mit Gamestudio [Re: MasterQ32] #344814
10/20/10 18:51
10/20/10 18:51
Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
P
Patrick92 Offline OP
Member
Patrick92  Offline OP
Member
P

Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
A7 commercial
und hab das Update gemacht: 7.86

Re: Problem mit Gamestudio [Re: Patrick92] #344817
10/20/10 19:30
10/20/10 19:30
Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
MasterQ32 Offline
Expert
MasterQ32  Offline
Expert

Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
schon mal mit c_trace probiert?
"trace" is vermutlich einfach nicht mehr unterstützt


Visit my site: www.masterq32.de
Re: Problem mit Gamestudio [Re: MasterQ32] #344895
10/21/10 16:39
10/21/10 16:39
Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
P
Patrick92 Offline OP
Member
Patrick92  Offline OP
Member
P

Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
Dieser Fehler Kommt auch wenn ich die zeile änder oder Remarke.
ich hab auch Geschaut ob das zweimal im projekt ordner Ist.

Re: Problem mit Gamestudio [Re: Patrick92] #344896
10/21/10 17:04
10/21/10 17:04
Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
MasterQ32 Offline
Expert
MasterQ32  Offline
Expert

Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
welche programmiersprache benutzt du?
Lite-C oder WDL?


Visit my site: www.masterq32.de
Re: Problem mit Gamestudio [Re: MasterQ32] #344901
10/21/10 18:09
10/21/10 18:09
Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
P
Patrick92 Offline OP
Member
Patrick92  Offline OP
Member
P

Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
Lite-c

Re: Problem mit Gamestudio [Re: Patrick92] #344908
10/21/10 19:02
10/21/10 19:02
Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
MasterQ32 Offline
Expert
MasterQ32  Offline
Expert

Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
kannst mal den COde hochladen oder Posten?
ich würd gern mal nen Blick drauf werfen


Visit my site: www.masterq32.de
Re: Problem mit Gamestudio [Re: MasterQ32] #344965
10/22/10 10:47
10/22/10 10:47
Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
P
Patrick92 Offline OP
Member
Patrick92  Offline OP
Member
P

Joined: May 2008
Posts: 113
Italien, Südtirol, Naturns
Das ist alles von mir selbst geschrieben.
Sorry das ich keine Beschreibungen mache.

Könnte das auch an diesen hier liegen:

include <acknex.h> // include for Pure Mode
#include <default.c> // default key functions


Dass main.c:
Click to reveal..
#include <acknex.h> // include for Pure Mode
#include <default.c> // default key functions
#include <Ragdoll.c> // Iclude Ragdoll
#include <player.c> // Iclude player

#define PRAGMA_PATH "./levels";
#define PRAGMA_PATH "./models";
#define PRAGMA_PATH "./SOUNDs";


function main()
{
level_load("level1.wmb");
wait(5);

ph_setgravity(vector(0, 0, -400)); // set gravity
ph_iterations = 40; // set itterating physics to smooth out.
ph_setcorrections(9000, 0); // set physics corrections
ph_setcollisions(1000, 20);

use_decal_gun();
}

action play_er()
{
move_player();
}



Dass Player.c:
Click to reveal..
#include <acknex.h> // include for Pure Mode
#include <default.c> // default key functions
#include <Ragdoll.c> // Iclude Ragdoll

#define PRAGMA_PATH "./levels";
#define PRAGMA_PATH "./models";
#define PRAGMA_PATH "./SOUNDs";


#define Life skill1




#define player_dist0 skill30
#define player_dist1 skill31
#define player_dist2 skill32

#define jumper skill51
#define mensch skill52 // Ob das ojekt blooded oder nicht

BMAP* bmMark = "images.tga";
BMAP* bmblood = "blood.bmp";


function schwerkraft()
{
var temp[3];

vec_set (temp, my.x);
temp[2] -= 1000;


trace_mode = IGNORE_ME + IGNORE_PASSABLE + USE_BOX;
my.jumper = trace(my.x, temp);


if (my.jumper > 2)
{
my.player_dist2 -= 2 * time_step;
}
else
{
my.player_dist2 = 0;
}
if (my.jumper < 0)
{
my.player_dist2 += 2 * time_step;
}
}


function shoot_event()
{
if (event_type == EVENT_SHOOT)
{
my.Life -= 1;
}


}

function use_decal_gun()
{
var vec_ang[3];
while (1)
{
// calculate the target vector
VECTOR trace_target;
vec_set(trace_target,vector(5000,0,0)); // the weapon has a firing range of 5000 quants

vec_ang[0] = camera.pan+random(1)-0.5;
vec_ang[1] = camera.pan+random(1)-0.5;
vec_ang[2] = camera.pan;

vec_rotate(trace_target, vector(camera.pan+random(5)-2.5,camera.tilt+random(5)-2.5,camera.roll+random(5)-2.5));
vec_add(trace_target, camera.x);

// display a red spot at the target position

// draw_point3d(hit.x,vector(50,50,255),100,3);

// fire and then place a decal at the hit position
if (mouse_left) // fire
{
if (c_trace(camera.x,trace_target, IGNORE_ME | USE_POLYGON | SCAN_TEXTURE | ACTIVATE_SHOOT) > 0) // hit something?
if (HIT_TARGET) // target hit?
{

if(you != NULL)
{
if(your.mensch == 1)
{
PARTICLE* p = ent_decal(you,bmblood,7+random(3),random(360)); // place a random sized decal at the hit entity
p.lifespan = 1600; // remove decal after 100 seconds
// p.material = mat_model; // assign a dedal material
set(p,PASSABLE);
set(p,OVERLAY);
set(p,TRANSLUCENT);
set(p,BEAM);
set(p,STREAK);
}

}
else
{
PARTICLE* p = ent_decal(you,bmMark,7+random(3),random(360)); // place a random sized decal at the hit entity
p.lifespan = 1600; // remove decal after 100 seconds
p.material = mat_model; // assign a dedal material
set(p,PASSABLE);
}



}
// snd_play (sndShot,100,0); // play the shot sound at a volume of 100
wait(-0.1); // reload
}
wait(1);
}
}


function move_player()
{
STRING* bone_name = "";
my.Life = 2;
my.mensch = 1;


//my.ENABLE_SHOOT = ON;
my.emask |= ENABLE_SHOOT;
my.event = shoot_event;

var stand_speed;
var ragdoll_tog = 0;


while(1)
{
if(my.Life > 0)
{
move_mode = IGNORE_PASSABLE+GLIDE;
ent_move(vector(my.player_dist0,my.player_dist1,my.player_dist2), nullvector);
schwerkraft();
ent_animate(my, "stand", stand_speed, ANM_CYCLE);
stand_speed += 5*time_step;
}
if(my.Life <= 0)
{

if(ragdoll_tog == 0)
{
ent_bonename(my, bone_name,hit);
Ph_ragdoll_init(my, bone_name);
ragdoll_tog = 1;
}

}




wait(1);
}

}


Dass Ragdoll.c:

Click to reveal..
#include <acknex.h> // include for Pure Mode
#include <default.c> // default key functions

#define PRAGMA_PATH "./models";
#define PRAGMA_PATH "./SOUNDs";

VECTOR Hinge1, Hinge2;

SOUND* sPong = "jump.wav";
SOUND* sPong2 = "lp_flap.wav";

function shoot_event_ph()
{
if (event_type == EVENT_SHOOT)
{
phent_addvelglobal(my, vector(50,0,50), nullvector);
}


}

function Plop()
{
ent_playsound(my,sPong,400);
}
function Plop2()
{
ent_playsound(my,sPong2,400);

}

var GroupID = 2;

function updateBoneHinge(ENTITY* hingeEnt, STRING* bodyPart, ENTITY* actor)
{
VECTOR temp_pos, temp_ang, temp_mov, temp_ang_1;

ENTITY* hingePointer = hingeEnt;
ENTITY* actorPointer = actor;
STRING* updatePart = bodyPart;

while(hingePointer != NULL) {
// reset bone position
ent_bonereset(actorPointer, updatePart);

vec_for_bone(temp_pos, actorPointer, updatePart);
ang_for_bone(temp_ang, actorPointer, updatePart);

vec_set(temp_mov, hingePointer.x);
vec_sub(temp_mov, temp_pos);

temp_mov.x /= actorPointer.scale_x; temp_mov.y /= actorPointer.scale_y; temp_mov.z /= actorPointer.scale_z;
vec_rotateback (temp_mov, temp_ang);///change this please
temp_ang.x = 360-temp_ang.x; temp_ang.y = 360-temp_ang.y; temp_ang.z = 360-temp_ang.z;

vec_set(temp_ang_1, nullvector);
ang_add(temp_ang_1, vector(temp_ang.x,0,0));
ang_add(temp_ang_1, vector(0,temp_ang.y,0));
ang_add(temp_ang_1, vector(0,0,temp_ang.z));

ang_rotate(temp_ang_1, hingePointer.pan);
ent_bonerotate(you, updatePart, temp_ang_1);
ent_bonemove(you, updatePart, temp_mov);



wait(1);
}
}

function update_actor(ENTITY* hingeEnt, ENTITY* actor)
{
while(actor != NULL)
{
vec_set(actor.x, hingeEnt.x);
vec_set(actor.pan, hingeEnt.pan);

wait(1);
}
}


function ph_body_init(var mass,ENTITY* entityMe)
{
set(entityMe, INVISIBLE);
set(entityMe, PASSABLE);

phent_settype(entityMe, PH_RIGID, PH_BOX);
phent_setmass(entityMe, mass, PH_BOX);

// phent_setgroup(entityMe, GroupID);
phent_setfriction(entityMe, 15);
phent_setdamping(entityMe, 35, 35);
phent_setelasticity(entityMe, 35, 30); // bounciness

reset(entityMe, PASSABLE);
entityMe.skill1 = integer(random(2));

entityMe.event = Plop;
entityMe.event = shoot_event_ph;

entityMe.emask |= ENABLE_FRICTION;
entityMe.emask |= ENABLE_SHOOT;
}


function Ragdoll_pos(ENTITY* entityMe, STRING* bodyPart, ENTITY* hingeEnt)
{
var temp[3];

vec_for_bone(temp,entityMe,bodyPart);
vec_set(hingeEnt.x,temp);
}

function setLimit(VECTOR* vec1, VECTOR* vec2)
{
vec_set(Hinge1, vec1);
vec_set(Hinge2, vec2);
}

function setHinge(ENTITY* constr_1, ENTITY* constr_2)
{
var tempHinge;

// make constraint
tempHinge = phcon_add(PH_HINGE, constr_1, constr_2); // attach to bodypart
phcon_setparams1(tempHinge, constr_1.x, Hinge1, nullvector); // set hinge limits
phcon_setparams2(tempHinge, Hinge2, nullvector, nullvector); // same
}


function RD_blendPose(ENTITY* limb, ENTITY* actor, STRING* boneBlend)
{
phent_enable(limb, 0);
vec_for_bone(limb.x, actor, boneBlend); // place at right position
ang_for_bone(limb.pan, actor, boneBlend); // rotate by right angle
phent_enable(limb, 1);
}


function PH_treffer(ENTITY* me_ent)
{
phent_addvelglobal(me_ent, vector(50,0,50), nullvector);
}



function Ph_ragdoll_init(ENTITY* entityMe, STRING* bone_name_hit)//,STRING* Ragdoll_name
{
// ;
// set(my, TRANSLUCENT);
GroupID += 1;
you = entityMe;
set(you, PASSABLE);
reset(you, INVISIBLE);

ENTITY* Ent_1;
ENTITY* Ent_2;
ENTITY* Ent_3;
ENTITY* Pelvis;





Ent_1 = ent_create("torso.mdl", you.x, NULL);
Ragdoll_pos(my, "stomach", Ent_1);
ph_body_init(30,Ent_1);
RD_blendPose(Ent_1, you, "stomach");
updateBoneHinge(Ent_1, "stomach", you);
PH_treffer(Ent_1);

Pelvis = ent_create("head.mdl", you.x, NULL);
ph_body_init(1,Pelvis);
set(Pelvis, PASSABLE);
update_actor(Pelvis, you);
setHinge(Pelvis, Ent_1);

Ent_2 = ent_create("LEG2.mdl", you.x, NULL);
Ragdoll_pos(you, "right_up_leg", Ent_2);
ph_body_init(10,Ent_2);
setLimit(vector(1,0,1), vector(-40,40,0)); // set rotational boundaries
RD_blendPose(Ent_2, you, "right_up_leg");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_2, "right_up_leg", you);


Ent_3 = ent_create("LEG.mdl", you.x, NULL);
Ragdoll_pos(you, "right_low_leg", Ent_3);
ph_body_init(10,Ent_3);
setLimit(vector(0,1,0), vector(0,120,0));
RD_blendPose(Ent_3, you, "right_low_leg");
setHinge(Ent_3, Ent_2);
updateBoneHinge(Ent_3, "right_low_leg", you);


Ent_2 = ent_create("LEG2.mdl", you.x, NULL);
Ragdoll_pos(you, "left_up_leg", Ent_2);
ph_body_init(10,Ent_2);
setLimit(vector(1,0,1), vector(-40,40,0)); // set rotational boundaries
RD_blendPose(Ent_2, you, "left_up_leg");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_2, "left_up_leg", you);


Ent_3 = ent_create("LEG.mdl", you.x, NULL);
Ragdoll_pos(you, "left_low_leg", Ent_3);
ph_body_init(10,Ent_3);
setLimit(vector(0,1,0), vector(0,120,0));
RD_blendPose(Ent_3, you, "left_low_leg");
setHinge(Ent_3, Ent_2);
updateBoneHinge(Ent_3, "left_low_leg", you);






Ent_2 = Ent_1;

Ent_1 = ent_create("torso.mdl", you.x, NULL);
Ragdoll_pos(you, "pelvis", Ent_1);
ph_body_init(20,Ent_1);
set(Ent_1, PASSABLE);
setLimit(vector(0,0,0), vector(-15,15,0));
RD_blendPose(Ent_1, you, "pelvis");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_1, "pelvis", you);



Ent_2 = Ent_1;

Ent_1 = ent_create("Chest.mdl", you.x, NULL);
Ragdoll_pos(you, "Chest", Ent_1);
ph_body_init(20,Ent_1);
setLimit(vector(1,1,0), vector(-20,20,0));
RD_blendPose(Ent_1, you, "Chest");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_1, "Chest", you);


Ent_2 = ent_create("arm_down_right.mdl", you.x, NULL);
Ragdoll_pos(you, "right_up_arm", Ent_2);
ph_body_init(10,Ent_2);
setLimit(vector(1,0,1), vector(-70, 116,20));
RD_blendPose(Ent_2, you, "right_up_arm");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_2, "right_up_arm", you);


Ent_3 = ent_create("arm_down_right.mdl", you.x, NULL);
Ragdoll_pos(you, "right_low_arm", Ent_3);
ph_body_init(10,Ent_3);
setLimit(vector(1,1,0), vector(270,0,0));
RD_blendPose(Ent_3, you, "right_low_arm");
setHinge(Ent_3, Ent_2);
updateBoneHinge(Ent_3, "right_low_arm", you);


Ent_2 = ent_create("arm_down_left.mdl", you.x, NULL);
Ragdoll_pos(you, "left_up_arm", Ent_2);
ph_body_init(5,Ent_2);
setLimit(vector(1,0,1), vector(-70, 116,20));
RD_blendPose(Ent_2, you, "left_up_arm");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_2, "left_up_arm", you);

// PH_treffer(Ent_2);

Ent_3 = ent_create("arm_down_left.mdl", you.x, NULL);
Ragdoll_pos(you, "left_low_arm", Ent_3);
ph_body_init(5,Ent_3);
setLimit(vector(1,1,0), vector(270,0,0));
RD_blendPose(Ent_3, you, "left_low_arm");
setHinge(Ent_3, Ent_2);
updateBoneHinge(Ent_3, "left_low_arm", you);


Ent_2 = ent_create("head.mdl", you.x, NULL);
Ragdoll_pos(you, "head", Ent_2);
ph_body_init(10,Ent_2);
setLimit(vector(1,1,0), vector(-45,45,0));
RD_blendPose(Ent_2, you, "head");
setHinge(Ent_2, Ent_1);
updateBoneHinge(Ent_2, "head", you);



while(you)
{

if(key_space) {
phent_addvelglobal(Ent_1, vector(0,0,50), nullvector); // THIS ADDS A FORCE TO THE RAGDOLL
}

wait(1);
}

}



Last edited by Patrick92; 10/22/10 10:51.
Re: Problem mit Gamestudio [Re: Patrick92] #344970
10/22/10 11:26
10/22/10 11:26
Joined: Nov 2008
Posts: 216
J
jane Offline
Member
jane  Offline
Member
J

Joined: Nov 2008
Posts: 216
Die Fehler die ich auf die Schnelle gefunden habe

in player.c :

trace_mode = IGNORE_ME + IGNORE_PASSABLE + USE_BOX;
my.jumper = trace(my.x, temp);

ersetzen durch:

my.jumper = c_trace(my.x, temp,IGNORE_ME | IGNORE_PASSABLE | USE_BOX);

und:

if(your.mensch == 1)

ersetzen durch:

if(you.mensch == 1)

und:

move_mode = IGNORE_PASSABLE+GLIDE;
ent_move(vector(my.player_dist0,my.player_dist1,my.player_dist2), nullvector);

ersetzen durch:

c_move(vector(my.player_dist0,my.player_dist1,my.player_dist2), nullvector,IGNORE_PASSABLE|GLIDE);

Habe noch was gefunden:

var temp[3];

vec_set (temp, my.x);
temp[2] -= 1000;

temp sollte hier als vector deffiniert werden, also ersetzen durch:

VECTOR temp[3];

temp.x = my.x;
temp.y = my.y;
temp.z = -1000;

Last edited by jane; 10/22/10 12:21.
Page 1 of 4 1 2 3 4

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

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