Gamestudio Links
Zorro Links
Newest Posts
folder management functions
by 7th_zorro. 04/16/24 13:19
lookback setting performance issue
by 7th_zorro. 04/16/24 03:08
zorro 64bit command line support
by 7th_zorro. 04/15/24 09:36
Zorro FIX plugin - Experimental
by flink. 04/14/24 07:48
Zorro FIX plugin - Experimental
by flink. 04/14/24 07:46
LPDIRECT3DCUBETEXTUR
E9

by Ayumi. 04/12/24 11:00
Sam Foster Sound | Experienced Game Composer for Hire
by titanicpiano14. 04/11/24 14:56
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
3 registered members (rki, Ayumi, Quad), 490 guests, and 0 spiders.
Key: Admin, Global Mod, Mod
Newest Members
11honza11, ccorrea, sakolin, rajesh7827, juergen_wue
19045 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 2 1 2
punch hole in terrain #472070
04/04/18 10:01
04/04/18 10:01
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
Hi Folks
I need to punch a hole in the middle of a terrain (in Med) so that the player can drop through. - 'delete' will not work - any ideas please?
David.

Re: punch hole in terrain [Re: DAVIDMORETON] #472072
04/04/18 16:18
04/04/18 16:18
Joined: Aug 2003
Posts: 118
Deutschland
E
Ezzett Offline
Member
Ezzett  Offline
Member
E

Joined: Aug 2003
Posts: 118
Deutschland
Terrains are grid based and you can't "destroy" this grid. I think it should work if you save/convert your terrain as/to a mdl-file. In this case you will lose the polygonal collision detection of the terrain, but you can reactivate exact collision detection for mdl-files via code. But exact collision detection needs more time to compute than terrain based collision detection.

Re: punch hole in terrain [Re: Ezzett] #472076
04/05/18 08:48
04/05/18 08:48
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
Thanks Ezzett - worth giving it a try.
Had another idea - The player travels over the terrain and enters a small tower - when the correct 'oode' is activated, the terrain is made 'passable' - the lift should then drop down through the 'terrain' (and tower floor) with the player - I hope ! will try it and re-post in case anyone else has same problem.
David

Re: punch hole in terrain [Re: DAVIDMORETON] #472077
04/05/18 11:13
04/05/18 11:13
Joined: Oct 2007
Posts: 5,210
İstanbul, Turkey
Quad Online
Senior Expert
Quad  Online
Senior Expert

Joined: Oct 2007
Posts: 5,210
İstanbul, Turkey
if it's only a couple of holes, you could split the terrain,or create a transparent parts in the skin and make it passable as you already do.


3333333333
Re: punch hole in terrain [Re: Quad] #472086
04/05/18 16:56
04/05/18 16:56
Joined: May 2005
Posts: 868
Chicago, IL
Dooley Offline
User
Dooley  Offline
User

Joined: May 2005
Posts: 868
Chicago, IL
I use mdl files for all my terrain, which is generated dynamically with tiles. It seems to run okay in-game. But they are small tiles. I don't know how it would work with a very large terrain tile.

Re: punch hole in terrain [Re: DAVIDMORETON] #472149
04/12/18 10:47
04/12/18 10:47
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
I have a scene with a terrain, player, and a sphere. The sphere drops to a certain point when the terrain should become passable - BUT IT DOSE NOT!

#include <acknex.h>
#include <default.c>
#include "t_player.h"
//////////////////////////////

ENTITY* player="t_player";

ENTITY* terrain = "tester.hmp";

ENTITY* sphere = "ball.mdl";





function main()
{
level_load("xc1.WMB");

}


action down() //sphere drops to z-16
{

while(sphere.z>-16)
{
sphere=me;
sphere.z -= 3*time_step;
wait(1);
}} //this works fine


{
if(sphere.z<10) //this should be the trigger point //for the 'terrain' to go passable
{
terrain=me;
set(my,PASSABLE);
wait(1);
}} //But it does not work

CAN anyone help please? I need to make the terrain 'passable' or disappear from the scene altogether .
David



Last edited by DAVIDMORETON; 04/12/18 11:47.
Re: punch hole in terrain [Re: DAVIDMORETON] #472151
04/12/18 13:22
04/12/18 13:22
Joined: Jul 2001
Posts: 4,801
netherlands
Realspawn Offline

Expert
Realspawn  Offline

Expert

Joined: Jul 2001
Posts: 4,801
netherlands
Why not make the sphere passable at that moment laugh

Try changing : set(my,PASSABLE);

into set(terrain,PASSABLE);


Find all my tutorials & Workshops at : www.rp-interactive.nl

Creativity starts in the brain
Re: punch hole in terrain [Re: Realspawn] #472162
04/12/18 16:29
04/12/18 16:29
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
Thanks for your reply Realspawn - the sphere movement is there only as a trigger point for the terrain 'passable' action - no point in making it passable.
I have tried your suggestion of:-
set(terrain, PASSABLE); ,but the terrain is as solid as ever !!
There must be a way of doing this, but I can't find it.
I have put 'beep' at the end of the action, so I know the engine is working - it's just not recognizing something in the first part of the(terrain part) of the action. Someone must know how to do this ? !!
Hopefully, David

Re: punch hole in terrain [Re: DAVIDMORETON] #472171
04/14/18 06:24
04/14/18 06:24
Joined: May 2005
Posts: 868
Chicago, IL
Dooley Offline
User
Dooley  Offline
User

Joined: May 2005
Posts: 868
Chicago, IL
Terrains have certain limitations that models (mdl files) do not. Did you consider making your terrain from an mdl file?

Re: punch hole in terrain [Re: Dooley] #472172
04/14/18 08:33
04/14/18 08:33
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
Thanks Dooley - have tried that, but it increases the load time somewhat. It's also a mystery (to me) why it won't work.
All I need is for someone to point out where I have gone wrong with my code so that I can learn from it - hopefully .!!
David

Re: punch hole in terrain [Re: DAVIDMORETON] #472173
04/14/18 09:17
04/14/18 09:17
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
take a look at your "{" "}"
Edit: nevermind, didn't see that your wrote two different versions of your while loop (I assumed you used the exact code you posted)

Last edited by Kartoffel; 04/14/18 09:20.

POTATO-MAN saves the day! - Random
Re: punch hole in terrain [Re: DAVIDMORETON] #472175
04/14/18 17:02
04/14/18 17:02
Joined: May 2005
Posts: 868
Chicago, IL
Dooley Offline
User
Dooley  Offline
User

Joined: May 2005
Posts: 868
Chicago, IL
I don't think it's your code, I think it might be something inherent to terrains. For instance, according to the manual "Terrain can't be animated, rotated, moved, or scaled." I am thinking that making it passable or not might fall into one of these categories.

Have you tried making a level with just a terrain set to passable, just to see whether the engine can actually handle this?

Re: punch hole in terrain [Re: Dooley] #472176
04/14/18 17:04
04/14/18 17:04
Joined: May 2005
Posts: 868
Chicago, IL
Dooley Offline
User
Dooley  Offline
User

Joined: May 2005
Posts: 868
Chicago, IL
Another option would be to move your entity directly, like this:

Quote:

var going_down = 0;

While(ent.z > -100)
{
going_down = 1;
ent.z -= 5*time_step;
wait(1);
}

going_down = 0;


This would cause the entity to move down without checking any collision.

If your player entity has a c_move function, it will be checking collision. You could effectively turn this off while it is going down through the terrain by surrounding your c_move with an "if" statement...

Quote:
if(going_down == 0)
{
c_move(ent,move_vec,abs_vec,GLIDE|ETC...) ;
}


Last edited by Dooley; 04/14/18 17:11.
Re: punch hole in terrain [Re: Dooley] #472188
04/15/18 09:38
04/15/18 09:38
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
Hi Dooley,
Thanks for reply.
Terrain will accept 'passable'. If the 'trigger' line
{if(sphere<-10);... is replaced by 'wait-5' - the terrain goes passable and the player drops through.
There must be something wrong or missing in the 'trigger' line
if(sphere etc. That is what I don't understand - logically it should work !!
More Terrains will be used in this game, so I must solve this problem.
Perhaps someone would like to make up a scene (as in my code above) and see if they can make it work? !!
Still hopeful of fixing this !!
David.

Re: punch hole in terrain [Re: DAVIDMORETON] #472230
04/17/18 13:56
04/17/18 13:56
Joined: Jan 2005
Posts: 282
devon UK
D
DAVIDMORETON Offline OP
Member
DAVIDMORETON  Offline OP
Member
D

Joined: Jan 2005
Posts: 282
devon UK
PROBLEM SOLVED !!
Terrain can be made PASSABLE - also INVISIBLE.
The falling sphere is used just for 'something' to change and trigger the terrain action.
This is the new code - it may help someone (I hope!);-

#include <acknex.h>
#include <default.c>
#include "t_player.h"
//////////////////////////////

ENTITY* player="t_player";

ENTITY* terrain = "tester.hmp";

ENTITY* sphere = "ball.mdl";

function main()
{
level_load("xc1.WMB");

}


action down() //attached to sphere (drops to z-16 to make terrain passable and invisible)
{

while(sphere.z>-16)
{
sphere=me;
sphere.z -= 3*time_step;
wait(1);
}
{
wait(-2); //needed to stop 'judder'
terrain=me;
set(my,INVISIBLE); //needed to stop flash of light as //player drops through terrain
set(terrain,PASSABLE);
}}

Probably not very elegant, but it works. Got it by 'fiddling about' a lot - I felt it should work somehow.
David

NEW - FOUND A BETTER WAY!

remove:-

wait(-2); and set(my,INVISIBLE); and set(terrain,PASSABLE);

then replace with:-

ptr_remove(me);

Much cleaner and it works - hope it helps
David

PS. This is used for player who crosses terrain to tower in middle - enters tower - sets code and drops through to cave system below.



Last edited by DAVIDMORETON; 04/20/18 10:15.
Page 1 of 2 1 2

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