Sockets on units

Sockets on units

Requests for features in the spring code.

Moderator: Moderators

User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Sockets on units

Post by KDR_11k »

This could be a bit more complicated.

What I'm proposing is allowing units to have build spots on themselves. Certain attachments could be built on those. When constructing something that needs a socket all available sockets are highlighted and when you mouse near one the nearest is highlighted and shows a preview of the attachment. Attachments would also be able to have sockets so you could essentially have a tree structure.

Each attachment would have a tag telling it whether it should act independently (i.e. be selectable and receive orders) or inherit the orders from its parent so you can do both "integral" parts of the unit and separate parts.

An attachment would be able to have any role a building can currently have, especially including factories.

Obviously not all attachments fit on all sockets.

This would be useful for e.g. flying bases like spaceships or stations (or the fortresses in Stratosphere) that could be expanded with stuff or buildings that get expanded like the LC's in Earth 2160 or upgrades in Command and Conquer 2 and 3. Perhaps even modular units like those found in Colony Wars, Earth 2150/60, Warzone 2100, etc but that would require some kind of automation.
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Post by smoth »

Can I give a +overninethousand?
Warlord Zsinj
Imperial Winter Developer
Posts: 3742
Joined: 24 Aug 2004, 08:59

Post by Warlord Zsinj »

I am also interested in looking into this.

I'm interested in commander uprades; this would be one way to do it, though I'd be happy with a hacky (though functional) lua work around.

Possible to simply delete the original unit, then replace it with the "modified" (new) unit?

Say, I have my commander, I click the "shield upgrade" button. It waits until the shield upgrade has been built (not sure how you'd detect this), then you have a smoke and mirrors explosion, and the old, shieldless unit is deleted, and the new shielded unit is created.

Perhaps the player has an option of a shield or a new weapon, but cannot have both; the old unit may have two build pics that he can click, but the new replaced unit with the shield simply doesn't have that in it's build list.

However, I could foresee issues occuring if it was a Comm:ennds game, and the upgraded unit was a commander unit and you removed it, wherein Spring assumes the commander has been destroyed and the game is over...
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

Shields can be enabled through the script so you'd just tell the com to enable its shield. Sockets would be more for e.g. base building when the whole base is held by a spaceship or something.
Warlord Zsinj
Imperial Winter Developer
Posts: 3742
Joined: 24 Aug 2004, 08:59

Post by Warlord Zsinj »

Ok, so a shield was a bad example. You get the point though :P
User avatar
MadRat
Posts: 532
Joined: 24 Oct 2006, 13:45

Post by MadRat »

Not to sound too off-topic, but the MTR on upgrades has been repeatedly hashed out to a series of non-agreements and zero people willing to code it. (If only the code was so simple to plug in.) With a socket this might just be the springboard so to speak.

If one could use a place marker unit that only had the socket for the unit spawn - the marker counts as the actual unit - then no "switch" would have to take place. The marker could be a temporary-psuedo representation of whatever unit one wanted it to be, but then when the "socket" upgraded the stats would swap to a new temporary-psuedo representation. Destroying the socket would not destroy the unit, but it could be a marker is only worth 1 hit point type of situation and its cob self-d's whenever no socket is detected.
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

What? Markers? Pseudorepresentations? Do you even think about what you're suggesting before you post it? Just mark some pieces as sockets of a given type, other units as socketed to a certain type, click on the latter and all possible sockets get highlighted, click one and the construction starts.
User avatar
Fanger
Expand & Exterminate Developer
Posts: 1509
Joined: 22 Nov 2005, 22:58

Post by Fanger »

you mean configurable units...


damn that would be like the ulitmate EE gift patch addon...
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

Not just that, stackable buildings like in 2160, too.
bwansy
Posts: 385
Joined: 02 May 2006, 05:21

Post by bwansy »

+1
When I started playing OTA, I didn't know what the carrier was (it doesn't resemble real life aircraft carriers at all), and I thought the two platforms were for building turrets on. :lol:
User avatar
rattle
Damned Developer
Posts: 8278
Joined: 01 Jun 2006, 13:15

Post by rattle »

Hmm interesting...
User avatar
Pxtl
Posts: 6112
Joined: 23 Oct 2004, 01:43

Post by Pxtl »

Well... I think the best approach is a to implement these three seperate ideas:

1) Upgradeable units.
2) Child-attached units.
3) Death-transformation.

1) Upgradeable units. The old mutalisk trick. In that concept, the socket is just an immobile unit that can be upgraded into other immobile units. Upgrades should be able to have negative cost, so you can have downgrade-paths to return a unit back into it's original form.

2) The "child attached unit" is a typical solution to the "mobile factory" issue - you have a normal, mobile unit, but one of it's pieces is actually a fully independant unit. The independant child is an immobile unit or building, like a factory or something. It can be selected and given orders seperately. The child-attached-unit only means that the unit is physically grafted to another - there are three sub-issues for child attached units that will vary depending on needs. The child is killed instantly when the parent dies.

a) independant health-bar - good for "socketed units" but bad for mobile-factories.
b) independant orders - an extra gun doesn't need to be independantly selectable, it can just receive copies of the orders from the parent. A factory is a different story.

3) Obviously, if a part of a larger unit is blown off, you want to be able to rebuild it, so having units that turn back into sockets is necessary. Death-spawning is obviously needed for other tricks too. Of course, you'd have to be careful to make sure that the death-transformation plays nice with the child-object system.

Thus, the socket is an invincible (zero-diameter hitsphere, untargetable and infinite health) child-unit grafted onto the parent unit. Building onto the socket is an upgrade into something more corporeal. When it gets blown off, it turns back into a socket. The invincibility isn't a probelm since the socket dies when the parent unit (commander/starship/whatever) dies.

My point is that all together, these features make the socket possible, but individually these features are also very useful.
User avatar
Felix the Cat
Posts: 2383
Joined: 15 Jun 2005, 17:30

Post by Felix the Cat »

If you make the footprint of the unit dynamically expandable with addition of socketed additions and make allowances for deaths of each socketed addition etc., this could be used as a way of creating squads. That would be awesome.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

Or just implement it as KDR suggested?
User avatar
MadRat
Posts: 532
Joined: 24 Oct 2006, 13:45

Post by MadRat »

I like Pxtl's suggestion. It's more precise and is a win-win situation even for non-socket users.
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

But he's still talking about unused sockets being some kind of unit. That makes no sense!
User avatar
Felix the Cat
Posts: 2383
Joined: 15 Jun 2005, 17:30

Post by Felix the Cat »

Guessmyname wrote:Or just implement it as KDR suggested?
Without control over (at least) death animations for each socket-unit, squad units as he suggested wouldn't be much better than squad units right now.
User avatar
rattle
Damned Developer
Posts: 8278
Joined: 01 Jun 2006, 13:15

Post by rattle »

Squads? Upgrades... KDR's one is simpler. Finish one then move on to the next better thing.
User avatar
Fanger
Expand & Exterminate Developer
Posts: 1509
Joined: 22 Nov 2005, 22:58

Post by Fanger »

sockets would still allow configurable units...

assuming I think you mean what you mean..

Id love a modular turret setup..
User avatar
rattle
Damned Developer
Posts: 8278
Joined: 01 Jun 2006, 13:15

Post by rattle »

Hmm just noticed this would turn your mod into earth 2150 and reduce the overall huge unit count (after some heavy grunt work).
Post Reply

Return to “Feature Requests”