News:

Come Chat with us live! Learn how HERE!

Main Menu

Building

Started by rotacak, September 06, 2007, 06:16:31 PM

rotacak

Hi,
I want try enable build like in screenshot below. It's easy/hard/impossible?
What I must change in source? Can someone help?

I know, this is bug in Uncreation, but I want try it in all maps (with jetpacks etc).



Another thing is enable build eggs on walls, OM on walls and ceilings etc.

Thanx for reply.

your face

whaaaa???  how did u do that?  thats awesome!!!!  can u do it w/out mods or anything?   :O
Quote from: dolby on February 19, 2003, 06:44:44 PM
spam spam spam, waste waste waste!

rotacak

Without mod. Take jetpack, fly upthere and build. If you found right place, buildings fall down. It's fun.

your face

ooo, kewl, ive gotta try that...
Quote from: dolby on February 19, 2003, 06:44:44 PM
spam spam spam, waste waste waste!

Overdose

Doesn't benmachine's mod allow you to build things on walls/ceilings?
Chocolate Milk.

rotacak

Yes, but that is very big and complicated patch with many changes.

I can build egg on wall, but egg falls down :-( Can't found what I must change for function like acid/hive.

n00b pl0x

being able to build eggs on walls would probably make the process of spawning from eggs even more buggy.
will sort out my sig, or I will get banned.

HOW DO I SORTED SIG?

rotacak

Quote from: n00b pl0xbeing able to build eggs on walls would probably make the process of spawning from eggs even more buggy.

Why? Eggs have square dimensions, so it's should be ok. If not then I just remove that. And "even more buggy"? Now it's buggy?

BTW, I found where to change it. It's in bg_misc.c file.

I still need help with first question.

==Troy==

It is possible to build those on pretty much every map. You just need to be VERY accurate  with placement (decimal point of an angle if not less) and have 2 buildable surfaces in the proximity. for most maps it is not true, but for example on arachnid you can build so that the turrets fall down the vent above alien base. I cant do it with ping, but managed to get it working once on a local ;)

Oh and with the eggs, you are being spawned above the egg, not in the hitbox of it.

benmachine

The towering bug is, I think a consequence of this one:
http://bugzilla.icculus.org/show_bug.cgi?id=3305
Basically, under some rare circumstances, the place where the buildable tests are carried out is not the place where the buildable is... placed. And buildables placed in mid-air try to clamp to a surface by accelerating towards their base - in most cases, downwards. They come to rest against the floor below, or anything else below - you could probably get one to land on your head. Anyway, in summary this bug is probably still in SVN, not even the precise cause is known let alone the fix, but it can only occur in rare circumstances. Anecdotally, I've heard diagonal boundary lines help.

edit: what you'd have to do to allow this in normal play I'm not sure. Probably it'd involve changing tracemasks or the r.contents of some buildables so they appeared to the server similar to the structural brushes of the map.
benmachine

rdizzle

you can do this on many angled surfaces.  e.g. the cannons in pushcannon.

of course, nobuild tends to solve the problem :P

yetshi

so far ive been able to do that on every single map with the exception of atcs.

call it totempoling.

rotacak

Quote from: benmachineBasically, under some rare circumstances, the place where the buildable tests are carried out is not the place where the buildable is... placed.

Yes, but this is not that case. All turrets are exactly there where they are :-)

Quote from: benmachine
edit: what you'd have to do to allow this in normal play I'm not sure. Probably it'd involve changing tracemasks or the r.contents of some buildables so they appeared to the server similar to the structural brushes of the map.

I think that is easy. But I am not C coder, so it's hard for me. Must be changed only one thing - allow build turret into air.

Now is detected place for buildable on map, if it's free place (square place with buildable dimensions), you can build.

If is other buildable on that place, you can't build.

But, it should be changed to: If is other buildable on that place, get what buildable it is, get their height and check free place on map floor coordinates + height blocking buildable (above that building). If it's free place, you can build there (practicaly in air).

That's all. But I don't know where and how add height number to checking place for buildable :-(

Sorry for my bad english.

techhead

On a tangent, someone should make a patch so that building models will not pass through map surfaces. Similar to building on a ledge so it looks like it falls down, its really annoying when the model sticks out of the map. Although this was designed so that buildings on angles floors and such will lie flat, this ideally wouldn't interfere with that function. If you want to see an example of this, build a turret on almost any railing. See Karith, Transit, Nexus 6, UTCS, SectorB17, or Meep if you can't find a railing.
I'm playing Tremulous on a Mac!
MGDev fan-club member
Techhead||TH
/"/""\"\
\"\""/"/
\\:.V.://
Copy and paste Granger into your signature!

kevlarman

Quote from: techheadOn a tangent, someone should make a patch so that building models will not pass through map surfaces. Similar to building on a ledge so it looks like it falls down, its really annoying when the model sticks out of the map. Although this was designed so that buildings on angles floors and such will lie flat, this ideally wouldn't interfere with that function. If you want to see an example of this, build a turret on almost any railing. See Karith, Transit, Nexus 6, UTCS, SectorB17, or Meep if you can't find a railing.
uh this has been fixed for ages.
Quote from: Asvarox link=topic=8622.msg169333#msg169333Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----

techhead

Really?
Thats nice to know.
One last question: Is the fix client-side or server-side?
I'm playing Tremulous on a Mac!
MGDev fan-club member
Techhead||TH
/"/""\"\
\"\""/"/
\\:.V.://
Copy and paste Granger into your signature!

jal


n00b pl0x

Quote from: rotacakAnd "even more buggy"? Now it's buggy?

where have you been

you can get outside of like 3 maps with eggs
will sort out my sig, or I will get banned.

HOW DO I SORTED SIG?

benmachine

Quote from: n00b pl0x
Quote from: rotacakAnd "even more buggy"? Now it's buggy?

where have you been

you can get outside of like 3 maps with eggs

That's a map bug, not an egg bug.
benmachine

kevlarman

Quote from: techheadReally?
Thats nice to know.
One last question: Is the fix client-side or server-side?
it's a cgame fix, so it's impossible to fix on pure 1.1 servers (the vast majority of servers), you will notice that you can't reproduce the bug on servers like trem.tjw.org that force you to download an updated cgame.
Quote from: Asvarox link=topic=8622.msg169333#msg169333Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----

Undeference

Quote from: rotacakHi,
I want try enable build like in screenshot below. It's easy/hard/impossible?
What I must change in source? Can someone help?

I know, this is bug in Uncreation, but I want try it in all maps (with jetpacks etc).
You would basically remove a few lines from G_CanBuild() and change a line or two in BG_PositionBuildableRelativeToPlayer() too.

But why? Please tell me you intend to use this on server with massive build point and player counts...
Need help? Ask intelligently. Please share solutions you find.

Quote from: tuple on February 15, 2008, 11:54:10 PMThats what we need, helpful players, not more powerful admins.

Plague Bringer

Quote from: Undeference
Quote from: rotacakHi,
I want try enable build like in screenshot below. It's easy/hard/impossible?
What I must change in source? Can someone help?

I know, this is bug in Uncreation, but I want try it in all maps (with jetpacks etc).
You would basically remove a few lines from G_CanBuild() and change a line or two in BG_PositionBuildableRelativeToPlayer() too.

But why? Please tell me you intend to use this on server with massive build point and player counts...
It's obviously a measure against the flying alien.
U R A Q T

rotacak

Quote from: Undeference
Quote from: rotacakHi,
I want try enable build like in screenshot below. It's easy/hard/impossible?
What I must change in source? Can someone help?

I know, this is bug in Uncreation, but I want try it in all maps (with jetpacks etc).
You would basically remove a few lines from G_CanBuild() and change a line or two in BG_PositionBuildableRelativeToPlayer() too.
Can you help me with that lines? I found that functions before, but I don't know how to change them.

Quote from: UndeferenceBut why? Please tell me you intend to use this on server with massive build point and player counts...
For fun. Builders can build more interesing creations and aliens can destroyed that easilly (chainreactions). It's something new in still same game. And if this will be unplayable, then is allways possible to remove it. Or make special vote for this.

Undeference

Quote from: UndeferencePlease tell me you intend to use this on server with massive build point and player counts...
that was sarcasm, btw. but apparently a 999 or so bp server allows building at weird angles (too bad they didn't let you stack stuff)

something like this:
Index: bg_misc.c
===================================================================
--- bg_misc.c   (revision 983)
+++ bg_misc.c   (working copy)
@@ -5216,7 +5216,7 @@
  //so buildings drop to floor
  VectorMA( targetOrigin, -128, playerNormal, targetOrigin );

-  (*trace)( tr, entityOrigin, mins, maxs, targetOrigin, ps->clientNum, MASK_DEADSOLID );
+  (*trace)( tr, entityOrigin, mins, maxs, targetOrigin, ps->clientNum, MASK_PLAYERSOLID );
  VectorCopy( tr->endpos, entityOrigin );
  VectorMA( entityOrigin, 0.1f, playerNormal, outOrigin );
  vectoangles( forward, outAngles );
Index: g_buildable.c
===================================================================
--- g_buildable.c       (revision 983)
+++ g_buildable.c       (working copy)
@@ -2781,13 +2781,6 @@
  minNormal = BG_FindMinNormalForBuildable( buildable );
  invert = BG_FindInvertNormalForBuildable( buildable );

-  //can we build at this angle?
-  if( !( normal[ 2 ] >= minNormal || ( invert && normal[ 2 ] <= -minNormal ) ) )
-    reason = IBE_NORMAL;
-
-  if( tr1.entityNum != ENTITYNUM_WORLD )
-    reason = IBE_NORMAL;
-
  //check there is enough room to spawn from (presuming this is a spawn)
  if( G_CheckSpawnPoint( -1, origin, normal, buildable, NULL ) != NULL )
    reason = IBE_NORMAL;
if you remove the "//check there is enough room" part, you might end up with people spawning inside walls and stuff which can be annoying
Need help? Ask intelligently. Please share solutions you find.

Quote from: tuple on February 15, 2008, 11:54:10 PMThats what we need, helpful players, not more powerful admins.

techhead

Once I hopped into devmap and dropped as many medistations as I could stack down the side of volcano, had some chain-reaction fun fun afterwards. Came out to around 1700, but lost the screenshot.
I'm playing Tremulous on a Mac!
MGDev fan-club member
Techhead||TH
/"/""\"\
\"\""/"/
\\:.V.://
Copy and paste Granger into your signature!

soultcer

#25
--

rotacak

Quote from: Undeference
something like this:
Thank you very much. This is exactly what I need.

But there is one bug:


Hitboxes are on right place, but second armoury model (or any second model) is always inside first armoury model :-( Do you know why?

BTW, is possible transport variable from g_main.c to bg_misc.c? "extern  vmCvar_t  variable;" don't work.

Shadowgandor

this might be a noobish comment but couldn't you already build eggs on walls and ceilings???

CreatureofHell

Eggs, acid tubes, trappers and hives yes. Others: No.
{NoS}StalKer
Quote<Timbo> posting on the trem forums rarely results in anything good

benmachine

Eggs can only be built on ceilings.
benmachine