Author Topic: [GPP] The Defense Computer  (Read 25549 times)

SirDude

  • Posts: 182
  • Turrets: +3/-33
Re: [GPP] The Defense Computer
« Reply #30 on: March 14, 2011, 11:03:36 am »
Simplicity can be the best way to accomplish things in most instances.
Fix*

if that was true, then why can't we solve this issue in simple ways?
having a better warning system won't help much in normal games (around US1 size), in smaller ones it may but its not really that much helpful, just like team overlay.

jm82792

  • Posts: 630
  • Turrets: +9/-34
Re: [GPP] The Defense Computer
« Reply #31 on: March 18, 2011, 12:23:19 am »
Simplicity is relative.
I had an acquaintance who is an electronics engineer that attempted to give me a grasp of how logic gates work.
Simple to him, brain freeze for me.
Perhaps we could have small icons that change color depending on their HP?
You would be able to select the ones you want to see and how they are displayed.


OhaiReapd

  • Guest
Re: [GPP] The Defense Computer
« Reply #32 on: March 18, 2011, 02:56:07 am »
Simplicity is relative.
I had an acquaintance who is an electronics engineer that attempted to give me a grasp of how logic gates work.
Simple to him, brain freeze for me.
Perhaps we could have small icons that change color depending on their HP?
You would be able to select the ones you want to see and how they are displayed.



+1 for good idea.

Nux

  • Posts: 1778
  • Turrets: +258/-69
Re: [GPP] The Defense Computer
« Reply #33 on: March 18, 2011, 05:59:35 am »
*base health = total building health % / # of buildings*

[long explanation of what amounts to: healing_rate = undefined_constant*(100-average_percentage_damage)]

I should point out to you that this is a very naive concept because it ignores the fact that this system has feedback. Put simply, if the system were perfectly smooth (continuous damage/healing application) you'd still have to add a constant term just to allow it to heal to max in a finite time and would have to reduce the effect enough to allow buildings to ever be destroyed.

But the system is not perfectly smooth so you have a host of new problems such as when my attack takes the health to zero in one case and it dies in one go but in another case it takes it to 1 hp and in the time between hits it gains a large chunk of hp from the extreme heal rate it gained (from getting so low in health) and so takes much longer to kill. See the problem?

What was the point in having it work like this anyway? If you want the base to support itself part of the way but still require repairs for max hp then why not explicitly implement that?

if (current_hp < 0.5*full_hp) then apply_heal

SirDude

  • Posts: 182
  • Turrets: +3/-33
Re: [GPP] The Defense Computer
« Reply #34 on: March 18, 2011, 09:05:49 am »
Quote
I should point out to you that this is a very naive concept because it ignores the fact that this system has feedback. Put simply, if the system were perfectly smooth (continuous damage/healing application) you'd still have to add a constant term just to allow it to heal to max in a finite time and would have to reduce the effect enough to allow buildings to ever be destroyed.

But the system is not perfectly smooth so you have a host of new problems such as when my attack takes the health to zero in one case and it dies in one go but in another case it takes it to 1 hp and in the time between hits it gains a large chunk of hp from the extreme heal rate it gained (from getting so low in health) and so takes much longer to kill. See the problem?

there would be a warm up time on how long it takes to start healing after it was attacked but i assumed you would also assume this, and if you looked at the "default" base stats you would see that the minimum heal rate is always 1 even at 100% (DOESN'T OVERHEAL).
Also, i believe you missed the line where i said heal rate equals how much Hp is repaired in one heal and that i never defined how much time there is between heals.

Do note that i never included the DC itself in the base health charts as i believe the DC should not heal its self based off of the Base health, it COULD heal itself at a slow fixed rate but i don't really know if this would have a huge impact.

Quote
What was the point in having it work like this anyway? If you want the base to support itself part of the way but still require repairs for max hp then why not explicitly implement that?

this means humans could loose their offensive capability without completely loosing their defensive capability, but to do that they must defend a weak, expensive structure with their weak weapons (assuming that they lost arm, and even then it is still a easy kill).
thus meaning aliens have to use a bit more tactics, instead of just overwhelming the base and/or wearing it down.

Do i pick the base apart 1 by 1, or do i just go for DC, or go for Arm then DC, medi, spawns?
adds more depth to base defense and attacking.

IMO> the DC doesn't need all these "extra features" or buffs, but a outright revamp.


Perhaps we could have small icons that change color depending on their HP?
You would be able to select the ones you want to see and how they are displayed.
good idea but IMO it doesn't actually "help" defend the base.

Nux

  • Posts: 1778
  • Turrets: +258/-69
Re: [GPP] The Defense Computer
« Reply #35 on: March 18, 2011, 02:13:18 pm »
I will admit I failed to notice that at 100% it stayed at a healing rate of 1 but I hope you understand that this tells me nothing about how it heals when it's under 100%. Also, I see why you called it "heal rate" but a better name for it would be "step difference" as it is to be added, not multiplied by. So please help me understand how this works. Am I right in saying your system is as follows:

hp_gain = round( (1 - (current_total_hp/max_total_hp))*100 )

if (apply_heal = TRUE) then (current_hp = current_hp + hp_gain)


Which, when healing a single 100hp building, gives the difference equation:

hp(n+1) = hp(n) + (100 - hp(n)) = 100 (max)

Meaning that it heals it instantly no matter what the damage (barring destruction) such that any attack that doesn't do 100 damage between heal pulses will never destroy it.


When healing a 200hp building:

hp(n+1) = hp(n) + (100 - round( hp(n)/2 )) = round( hp(n)/2 ) + 100

So if hp0 = 2 then hp1 = 101, hp2 = 151, hp3 = 176, hp4 = 188, hp5 = 194, hp6 = 197, hp7 = 199, hp8 = 200(max)

Refer to the following plot to see what this kind of progression looks like (the length of the graph is 22 steps and shows 200hp, 300hp, 400hp and 500hp buildings). The damage decreases with an exponential decay as you'd expect.



BUT if the 200hp building is being healed and damaged then the equation becomes:

hp(n+1) = round( hp(n)/2 ) + 100 - DAMAGE

which is at equilibrium when:

DAMAGE = 100 - round( hp(n)/2 )

Meaning that DAMAGE would have to be greater than 99 just to destroy a 2hp building (brought down from 200hp).

So yes, if this is going to work you'll probably need a delay of some sort.

Also I guess this will make people not repairing less of a problem, whether that's a good thing has yet to be seen.
« Last Edit: March 18, 2011, 02:33:00 pm by Nux »

Menace13

  • Posts: 516
  • Turrets: +12/-41
    • hhhhhh
Re: [GPP] The Defense Computer
« Reply #36 on: March 18, 2011, 04:50:31 pm »
tl;dr, but i noticed your image failed :(

but a small twisty barrel will have small pew pew's, and small pew pew's can hurt mr.tyrant.

SirDude

  • Posts: 182
  • Turrets: +3/-33
Re: [GPP] The Defense Computer
« Reply #37 on: March 19, 2011, 12:51:44 am »
Yes and no.

HP_gain is found in a far more simple way.

100 - Total_Base_health = HP_Gain.

IE
building A: 75% (262)hp
building B: 100% (350)hp
building C: 100% (650)hp
building D: 100% (800)hp
Base Health: 93%
(Base HP = the average of all buildings HP based on %)
100 - 93 = 7
HP_Gain=7

Thing is, You can never have only 1 building that makes up the entire base without meaning you have lost the game.

And you would need a heal delay, but only for REALLY small bases.
IMO this is a fool proof idea.

F50

  • Posts: 740
  • Turrets: +16/-26
Re: [GPP] The Defense Computer
« Reply #38 on: March 19, 2011, 12:59:21 am »
I may as well post here that the effectiveness of +2 to healing rate can be tested for the next while on the Brindus Mod Rotation.
« Last Edit: March 19, 2011, 01:03:46 am by F50 »
"Any sufficiently advanced stupidity is indistinguishable from malice." -- Grey's Law


Nux

  • Posts: 1778
  • Turrets: +258/-69
Re: [GPP] The Defense Computer
« Reply #39 on: March 19, 2011, 10:50:55 am »
Yes and no.

HP_gain is found in a far more simple way.

100 - Total_Base_health = HP_Gain.

You've written the same thing without the part that converts the base hp into a integer percentage. You've just assumed a percentage would be readily available, which it wouldn't.

Thing is, You can never have only 1 building that makes up the entire base without meaning you have lost the game.

The point of highlighting the 1 building case was to show the point at which your system is MOST effective. As you can see in the single 100hp building case, with no scaling factor the building heals to max on every single heal. The more buildings you have, the less each will affect the healing rate when damaged and the easier it will be for the aliens to overcome each in an attack. But you clearly understand how important the small base case is as you yourself pointed out, every base comes to it when it's going down.

Does the dc include it's own hp and the reactors hp in the total base hp and thus can you can even have a single building case? If so similar things can be said for small bases but the effect will be diminished.


And you would need a heal delay, but only for REALLY small bases.

Why make a special case for small bases? That just overcomplicates it. Delays already occur with alien healing and it's intuitive that the DC would have to assess damage and wait for it to stop before it can set about repairs.


Quote
What was the point in having it work like this anyway? If you want the base to support itself part of the way but still require repairs for max hp then why not explicitly implement that?

this means humans could loose their offensive capability without completely loosing their defensive capability, but to do that they must defend a weak, expensive structure with their weak weapons (assuming that they lost arm, and even then it is still a easy kill).
thus meaning aliens have to use a bit more tactics, instead of just overwhelming the base and/or wearing it down.

I don't feel like you've answered my question. Why does it need to behave in this very specific way? If you want it to be stronger when it's smaller then you can just calculate healing directly from base size. Why do you need to include information about damage?

I can see how having a healing structure at all can enrich tactical gameplay, but I don't think this particular system does anything to make the game interesting, just more arbitrarily complicated.

EDIT: Here. I've created a nice little excel simulation of the system which allows you to act on a single building, damaging or healing it from whatever hp you like to whatever extent you like and see what happens. Only change the values in the coloured boxes, unless you know what you're doing.

You'll notice that in some cases, changing the time of attack slightly can severely change the time of destruction (as shown in the following image).



RE-EDIT: Updated simulation adding rounding to the HP. Try changing the 3 under "Time of First Hit" to a 4. It goes from taking 192 ticks to 130 ticks with only a tick difference between the start of attack.
« Last Edit: March 19, 2011, 03:45:10 pm by Nux »

OhaiReapd

  • Guest
Re: [GPP] The Defense Computer
« Reply #40 on: March 19, 2011, 10:33:35 pm »
*base health = total building health % / # of buildings*

[long explanation of what amounts to: healing_rate = undefined_constant*(100-average_percentage_damage)]

I should point out to you that this is a very naive concept because it ignores the fact that this system has feedback. Put simply, if the system were perfectly smooth (continuous damage/healing application) you'd still have to add a constant term just to allow it to heal to max in a finite time and would have to reduce the effect enough to allow buildings to ever be destroyed.

But the system is not perfectly smooth so you have a host of new problems such as when my attack takes the health to zero in one case and it dies in one go but in another case it takes it to 1 hp and in the time between hits it gains a large chunk of hp from the extreme heal rate it gained (from getting so low in health) and so takes much longer to kill. See the problem?

What was the point in having it work like this anyway? If you want the base to support itself part of the way but still require repairs for max hp then why not explicitly implement that?

if (current_hp < 0.5*full_hp) then apply_heal

Nux, just ignore him. Don't bother answering him because he just wants to seem like he's smart.

jm82792

  • Posts: 630
  • Turrets: +9/-34
Re: [GPP] The Defense Computer
« Reply #41 on: March 20, 2011, 12:22:47 am »
/\It's really simple math, and I'm the chicken who cowers in the corner regarding higher math.

SirDude

  • Posts: 182
  • Turrets: +3/-33
Re: [GPP] The Defense Computer
« Reply #42 on: March 20, 2011, 04:08:44 am »
Quote
You've written the same thing without the part that converts the base hp into a integer percentage. You've just assumed a percentage would be readily available, which it wouldn't.
AH, now i get at what you are saying...

Quote
Does the dc include it's own hp and the reactors hp in the total base hp and thus can you can even have a single building case? If so similar things can be said for small bases but the effect will be diminished.
If you did (reread) my post (#34) I said I didn't include the DC itself in the Base_health as i felt it could become overpowered or make it a weak point.


Quote
Why make a special case for small bases? That just overcomplicates it. Delays already occur with alien healing and it's intuitive that the DC would have to assess damage and wait for it to stop before it can set about repairs.
I was saying that a heal delay wouldn't really be necessary and only servers with low BP would (May) need it.

Quote
I don't feel like you've answered my question. Why does it need to behave in this very specific way? If you want it to be stronger when it's smaller then you can just calculate healing directly from base size. Why do you need to include information about damage?
Now I see.
Based off of the number of buildings means all buildings are worth the same amount no matter how important it that building actually is (:armoury: Vs :turret:).

doing it based off of total damage adds more depth and means some buildings are worth destroying first and others are not worth damaging till the end.

Quote
I can see how having a healing structure at all can enrich tactical gameplay, but I don't think this particular system does anything to make the game interesting, just more arbitrarily complicated.
in what way is it complicated?
complicated to defeat or to program, or both?
for a new playing i don't think it would be very hard to learn how to defeat as all it would be is, this building 1st, this 2nd, this 3rd, and just ignore these when you can.

you have to remember this, Tremulous is a niche game, the people who play it will only be people who understand/willing/wanting to understand its mechanics and love it.

That's why BattleZone, a older FPS/RTS from 1998, got a great score but sold terrible and why BattleZone II got a bad score for being water-downed version for the masses and despised by many BZ1 players.

Nux

  • Posts: 1778
  • Turrets: +258/-69
Re: [GPP] The Defense Computer
« Reply #43 on: March 20, 2011, 10:38:58 am »
Nux, just ignore him. Don't bother answering him because he just wants to seem like he's smart.

It's best not to insult his intelligence if I expect a reasoned reply.

Yes, I read post #34 but "DC itself in the base health charts as i believe the DC should not heal its self based off of the Base health" doesn't tell me whether other buildings are healed using information on the DC's health. So from this I take it it's completely outside the equation? So what about the reactor and repeaters?

A heal delay IS necessary if you don't want the largely unpredictable behaviour exhibited in the excel simulation I made. It's either that or make sure that all the attack rates of all the aliens are specially tailored to minimise the problem.

I didn't say what "base size" meant, it could easily be weighted for building size by using the maximum HP value for the base (without the current hp value).

Optimal destruction order is already a problem, in a very intuitive way. You can either attack defensive structures to allow for an easy second attack, or go straight for the more costly damage (arm/nodes/reac). If you want the DC to be a bigger target this will be true as soon as it does a good job of healing the base regardless of how it does it (with some non-intuitive curve).

Just to be clear, when I say "complicated" I don't mean "lolz I don't get it" because this stuff is actually very simple for a maths graduate. It's complicated with regards to an intuitive game, which you seem to understand when you replied about tremulous being a niche game (best to be sure). I don't think tremulous being a niche game is a good reason for making the game less intuitive. I think most people would agree with me that the tremulous community growing can only mean good things and anything that hinders that better add enough to the game to be worth it. I don't feel this does. What it's most likely to add is more trouble when tweaking other values in the game due to the sensitive dependency it has shown.
« Last Edit: March 20, 2011, 10:40:50 am by Nux »

RAKninja-Decepticon

  • Posts: 843
  • Turrets: +14/-679
    • Stupid Videos
Re: [GPP] The Defense Computer
« Reply #44 on: March 20, 2011, 12:22:14 pm »
how about letting the DC cut down turret "target acquisition" time, and tesla refire rate?  by like something of a third of current values.  that's the kind of thing i'd expect a defense computer do.  currently, it's more of a "maintenance hub" than a defense computer.

an example of what i mean would be this - using completely made up numbers as i havent looked into what the real values are

if turret "acquire target" time is 1 second, having a DC in range reduces it to .6 second

if tesla refire time is .5 of a second, having a DC in range would reduce it to .34 a second


how odd, my first post and i'm suggesting buffs for humans.

i really hate selfquoting, but why bother with healing formulas?  it's a defense computer, not a maintenance hub.  why not have the defense computer actually help with defending, rather than dealing with the consequences of attack?  self-healing buildings should be the province of the aliens, exclusively. already humans build bases almost as fast as aliens, and are quite nearly as mobile.  the racial descriptions are now quite misleading, as is the DC's name.

i'm certain that DCs would become indispensable, but not overpowered, if they sped up turret target acquisition and tesla refire rate.
Note 4: The best, although not always easiest, way to deal with trolls is thus: do not respond at ALL in the thread.
Main Rules
4.) No spamming or advertising (includes useless multi-posts and bumps.)
6b.) Do NOT harass other members.
  6c.) Do NOT troll!

Nux

  • Posts: 1778
  • Turrets: +258/-69
Re: [GPP] The Defense Computer
« Reply #45 on: March 20, 2011, 12:52:09 pm »
Yes. Choose simple rules that have varied and masterable effects.

Also if you want to make the DC have an area of effect or some sort of distributing scheme, make it clear to the player or don't do it at all.

ULTRA Random ViruS

  • Posts: 924
  • Turrets: +4/-101
    • ZdrytchX's reference website
Re: [GPP] The Defense Computer
« Reply #46 on: March 24, 2011, 12:41:08 pm »
+1 at original idea; wishing there's a like button e.g. facebook

Menace13

  • Posts: 516
  • Turrets: +12/-41
    • hhhhhh
Re: [GPP] The Defense Computer
« Reply #47 on: March 24, 2011, 07:12:12 pm »
+1 at original idea; wishing there's a like button e.g. facebook
<.< It's called the [build] button.

but a small twisty barrel will have small pew pew's, and small pew pew's can hurt mr.tyrant.

GeneralScott

  • Posts: 291
  • Turrets: +3/-8
Re: [GPP] The Defense Computer
« Reply #48 on: March 29, 2011, 02:44:07 pm »
If anything, the only issue the DC has is that it's a virtual alien magnet. Big, bulky, enough to completely conceal a mara, asking for trouble.

se7ensnakes

  • Posts: 37
  • Turrets: +3/-6
Re: [GPP] The Defense Computer
« Reply #49 on: April 08, 2011, 06:36:48 pm »
the defense computer is great for blocking tyrants.  You make a neat little trap for them using the defense computer.

jm82792

  • Posts: 630
  • Turrets: +9/-34
Re: [GPP] The Defense Computer
« Reply #50 on: April 10, 2011, 08:19:06 pm »
Maybe the defense computer should have a slight zap to it for defense?
Not enough to spam it but to make it more useful.

ULTRA Random ViruS

  • Posts: 924
  • Turrets: +4/-101
    • ZdrytchX's reference website
Re: [GPP] The Defense Computer
« Reply #51 on: April 20, 2011, 03:26:55 pm »
Maybe the defense computer should have a ???slight zap??? to it for defense?
Not enough to spam it but to make it more useful.
______________________

What about aliens? Give back hovel, but cost 6 bp, and instead of making a useless shell/baricade, why not make it increase alien buildable healing speed? I mean, the only server by which grangers can actually manually heal buildings is on KoRx, and it isn't very effective at all.
The only problem is that the model needs to be redone, so it doesn't look rediculous.