• Welcome to Battlezone Universe.
 

News:

Welcome to the BZU Archive dated December 24, 2009. Topics and posts are in read-only mode. Those with accounts will be able to login and browse anything the account had access granted to at the time. No changes to permissions will be made to be given access to particular content. If you have any questions, please reach out to squirrelof09/Rapazzini.

Main Menu

LT's Recycler Variant

Started by Lordtac, June 30, 2009, 08:10:12 PM

Previous topic - Next topic

GSH

Quote
Constructors will NOT fire weapons. Their AI has no knowledge of them, and you will probably AV if you tried. Put simply there is NO WAY to have a capital ship that hovers 300 feet in the air that can move, fire multiple weapons from different turrets at the enemy AND build things. its simply NOT possible.

Suggested tip for new modders: (1) find something that works 99% of the way you want it to. (2) Change that last 1%. (3) find something that works 98% of the way you want it to. (5) Change that last 2%. (5..N) Repeat, with larger percentages.

BZ2 works in particular ways. If you go with those ways, you'll be able to create things. If you try and go against those ways, you're likely to be hammering your head on the wall for hours. That's why it's best to start small in your tweaks, rather than saying "I want to recreate Tetris (or any other game that is really rather not like stock BZ2 gameplay), why doesn't BZ2 make that easy?"

-- GSH

Lordtac

#106
alright alright. so

1.\ A constructor Can't and Won't fire guns
2.\ A constructor is ground based. period
3.\ There is no way to increase a constructors building distance.
4.\ Even if I did manage to bypass all that (which I won't) It would still get stuck going around things.
5.\ A Constructor cannot be edited to build from a hard-point (A.K.A. building on itself)

am I missing anything else on the "constructors can't do this" list?

btw I figure this is just way to much wall-head-banging, I can just as easily get away with making a star ship that doesn't build at all that has turrets, or has timed drones that attack targets. (Greenheart and commando did that with ivdrone_c after a while the unit dies but it is an individual unit)

oh and 2ndly the game can be made to slightly take height into consideration, ivdrone_c uses a "minimum" height in its coding, of course the AI doesn't completely agree with this, but it will cruise at this height (about 40 meters I think) till it finds something to attack, then it heads straight for the target.


EDIT: I'm not being ignorant of the game limits, I'm just trying to see what I can get away with. This is just as much a learning experience as it is fun.

EDIT2: btw thanks for the info so far
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

GSH

Quote
1.\ A constructor Can't and Won't fire guns
2.\ A constructor is ground based. period
3.\ There is no way to increase a constructors building distance.
4.\ Even if I did manage to bypass all that (which I won't) It would still get stuck going around things.
5.\ A Constructor cannot be edited to build from a hard-point (A.K.A. building on itself)

am I missing anything else on the "constructors can't do this" list?

You're going about it the wrong way, focusing on what they can't do. Why not play the game (and mods), and see what constructors do? Odds are, that's what they *can* do. Seek to change 1% of that behavior as your first step (see above). There's usually not a ton of options waiting to be used by you and only you -- when I make changes, they're noted in the changelog, so everyone has access to the same info as to what's now possible.

-- GSH

Lordtac

I was being a bit sarcastic and frustrated. I've noticed the last page was loaded with posts about what constructors can't do instead of potential alternatives.

except the building idea of course.

I'll take your advice though. thanks.
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

Lordtac

The newest ship finished thanks to rockets modeling.

Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

Red Devil

Looks good, but weapons should be in front to avoid clipping.

(Support, Role, Dual)
What box???

Lordtac

#111
I don't understand what you mean by weapon clipping. do you mean the ship "hitting itself" by accident?
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

TheJamsh

Yeh occasionally (depends on the ships shape really), weapons will hit the ship they are fired from. If im not mistaken they pass straight through, but it looks ugly as sin.

I think youll probably get away with that model fine. Rocket just needs to work on his UVMapping skills, but then who am i to talk when i cant do any modelling unless its CAD :P

Remember that there are easy ways to make a flying capital class ship. Okay heres a similar idea.

Allow the constructor (youre regular one) to build bio-metal pools on the ground. These pools would (ideally) need to be just as big as you're capital ship, so it would heavily restrict the areas where you can build it. What you do is MASK off the pool (thankyou GSH for this), and restrict is against stock scavengers or rescource scavengers of any kind.

Now, you make a hover scavenger, with BoxCollide = 1 (to save wierd things happening on the ground), that is the vehicle version of youre ship. Now remember that while in 'hover scavenger' state, its NOT possible to have the thing firing weapons. In this state however (and with PathingType = 4), you will be able to get the ship around the map, but it wont engage.

You can mask this 'scavenger' to deploy ONLY on the special pool you created for it, and when it does, it transforms into a factoryClass building. From this building (which enters the baseSLot's when built), you can build small fighters etc and even have as many tapped gun turrets as you like (FYI, i made a ship that had about 40 tapped turrets... OOOOOO the lag).

When you've annihalated the area you want to, just undeploy it by 'upgrading' it back into its scavenger form, which will promptly remove the turrets. The only issue is, any turrets that were lost or destroyed with be re-generated again regardless if you re-deploy it. You can however make it so that it replaces the scrap pool, and it never comes back.

*Wheeze. There :P, try that one on for size. I did something similar a while back, but never released said variant (aka starship variant), because i lost interest in it and started my mod. Oh that and it looked awful from the outside. You can see the screenshots of it here though:

http://www.bz2md.com/smf/index.php?topic=2207.0

ignore the fact its in serenesis board, and ignore the first pic entirely, none of this is in the mod.


BZII Expansion Pack Development Leader. Coming Soon.

Lordtac

#113
O.O That's a wonderful idea.

is it possible to deploy it "Without" a pool? that would be a much better alternative.

if its not possible I understand.


EDIT: I've been thinking of an alternative inspired by star trek concerning "dry-docks"

I'm aware its not possible or at least "very hard" to fool the constructor into thinking its a factory, But going off what was mentioned in the last page, I'm now aware that the constructor must be landed or "deployed" to build.

Taking this into consideration, it might be reasonable to instead have a factory that builds "construction drones" instead of vehicles.

Of course the drones would need to move quickly and hover rather high but fortunately would fulfill their roll as small factories.

Now my question isn't "is this possible" my question is "is this plausible". As useful as drones can be, sometimes their more of a hindrance then a help. so good idea or bad idea.

Sorry even I'm getting tired of asking questions at this point.
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

TheJamsh

The idea of deploying it without a pool would mean adding invisible treads to it, and making it a recyclervehicle class. There is at the moment no hovering recycler, so the collisions will be awful.

Youre best bet is to stick with the idea i mentioned above, its still hacky, but the ONLY way to get around it.

Remember however youre fake scrap pools dont even have to look like scrap pools, they just need to be 'rescource' class (i think thats the one, check a stock pool to quote me)

As for you're latest idea, it sounds like you have a high building/dry dock thing, and you build these construction drones, just fast hovering constructors, that build units & things? That just sounds silly :P


BZII Expansion Pack Development Leader. Coming Soon.

Lordtac

#115
actually the idea was to have the factory build lots of different construction vehicles like "base cons" "light cons" "medium cons" "heavy cons" "LAC" and "MAC" etc in that fashion.

also a  "AP" cons (constructor that builds like an armory) sounds reasonable but still kind of a pain because you can't tell a constructor to "cue" buildings OR to simply just build, it has to build it on the ground.

to combat this issue I was thinking to make drones "team transferable" so the commander can control who gets what because the constructors will "NEVER" build another constructor or factory (except Recy Cons) which you will only be allowed 1 at a time.
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

TheJamsh

Interesting but that idea will be painfully slow in MP games... and you'll rack the unit limit up quickly with drones flying every which way.


BZII Expansion Pack Development Leader. Coming Soon.

Lordtac

#117
perhaps I could make the system more streamline by getting rid of some of the cons and compiling there build lists.

light, medium, and heavy cons could just simply be (Ground Cons) and LAC, MAC, and HAC could just simply be (Air cons)


EDIT: I'd be posting more ships but rockets on vacation at the moment.
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

Lordtac

I decided to go with the scavenger pool idea as far as the starship goes, when I was reading it before I didn't see the part in which he stated (Allow the constructor to build the pool)

now instead of a pool I would rather the constructor just clear the ground and have that cleared ground be labeled a "pool"

but what do you mean by "masking"
Creator of LTRV
Overall: 34%
Break Down

ISDF:
Units: 15% \ Tech Tree: 100%
Buildings:30% \ Weapons: 15%
Experimental: 10%

FURY:
Units: 0% \ Tech Tree: 0%
Buildings: 0% \ Weapons: 0%
Experimental: 0%

TheJamsh

Masking basically lets you allow certain scavenger types to certain pool types only. Its a bit difficult to get youre head around and i havent 'quite' got it yet, but its basically possible to let your starship ONLY deploy on one pool, if the pool has a matching ODF entry.

I believe you can just use the following:

Pool ODF:
[GameObjectClass]
DepositClassMatch = 2

[ScavengerHClass]
ScavClassMatch = 2

DONT necessarily use those entries, i havent quite got my head around masks yet and the way they are done. However, just for the hell of it, ill post the entry GSH made in the 'changelog' that talks about it.


- Fix for mantis #1521 and #509. Added

[DepositClass]
DepositClassMask = 0
DepositClassMatch = 0
DepositClassProvides = 0

[ScrapClass]
ScrapClassMask = 0
ScrapClassMatch = 0
ScrapClassProvides = 0

[ScavengerHClass] or [ScavengerClass]
ScavClassMask = 0
ScavClassMatch = 0
ScavClassProvides = 0

   These are bitmasks. A pool (deposit) can be selected if, for a
given scav+deposit pair, (ScavClassProvides & [i.e. bitwise and]
DepositClassMask) == DepositClassMatch, and (DepositClassProvides &
ScavClassMask) == ScavClassMatch. Scrap is the same type of match. The
defaults are 0 for mask & match, making existing items all work. But,
if you start setting bits to 1, you can restrict what they match. As
scav masks are used for both deposits & scrap, then you may want to
use bits 0..15 (1..32768) for deposits, and 16..31 (65536 and up) for
scrap matches.

-- Extra expanation #1:

   For example, if a pool wants to restrict access, it could do something
like DepositClassMask = 1, DepositClassMatch = 1. That will remove
access from all scavs, by default, until the scav adds
ScavClassProvides = 1 (or any provides with bit 1 set).

   Alternatively, you could do the matching on the scav. You could do
ScavClassMask = 1, ScavClassMatch = 1. That'd restrict all pools until
the pool puts in DepositClassProvides = 1 (or any provides with bit 1
set).

   Basically, the (SourceProvides & DestMask) must == DestMatch. Note,
if both sides do matching, then it must work symmetrically.

-- Extra explanation #2

   Note: this has *nothing* to do with any race mask/typemasks used
elsewhere. This is a completely new system. If you're not familiar
with binary math, you should probably use Windows's calculator, and
put it into View -> Scientific mode to enable the option to show
binary mode, ANDing, etc. For example, if you have binary value 10110,
you should convert that to decimal mode and get 22, the value to enter
in the ODF. You can also test out ANDing by entering 10110, then press
the 'And' button, and and with 11111, and you'll end up with 10110.
(Anding simply means that for each bit, if both bits are 1 in the
inputs, it'll be 1 in the output. If either (or both) bits are 0 in
the inputs, the result is 0.

   If you're working on restricting access, then you should start off
with the Match param, and work backwards. The default match is 0, and
so you want a combination of Provides AND Mask that equal zero. Note
that the default mask is also 0, so by the rules of binary math,
anything in provides ANDed with Mask 0 equals 0. So, access is
granted.

   If, for example, you decided to set Match to 1, but left Mask at 0,
then it will *always fail*. Why? Because, as above, anything anded
with Mask 0 results in 0, but you're matching 0 against 1. Won't work.
Unless you're aiming for permanent "never match" state, then any bit
set in match must also be set in the mask.

   Bit #1 is decimal value 1. So, if you want to restrict pools, as
above, you could set DepositClassMask = 1, DepositClassMatch = 1. That
will remove access from all scavs, by default, until the scav adds
ScavClassProvides = 1. Or, ScavClassProvides = 3 (binary 11),
ScavClassProvides = 5 (binary 101).

   Another pool could set bit 2 (decimal value 2) DepositClassMask =
2, DepositClassMatch = 2.  That'd prevent default scavs
(ScavClassProvides = 0) from deploying. And, it'll prevent
ScavClassProvides = 1 from working. But, ScavClassProvides = 2 and = 3
will work, because both have bit 2 set.

   Another pool could set bit 3 (decimal value 4) DepositClassMask =
4, DepositClassMatch = 4.  That'd prevent default scavs
(ScavClassProvides = 0) from deploying. And, it'll prevent
ScavClassProvides = 1 from working. But, ScavClassProvides = 4 and = 5
will work, because both have bit 3 set.

   The three examples above restrict based on a single bit being set.
You could also combine bits the same way.


--

   Compiles, but only minimal testing done. [NM]


BZII Expansion Pack Development Leader. Coming Soon.