Eon titbits

From KruelWiki

Jump to: navigation, search

cnagett

Contents

Movement of units

When we know our start and finish locations we can create an equation for our position that is parametric with regards to time.

If a unit has to 'avoid' other units, its simply a shortest path algorithm with multiple waypoints.

Path and waypoints should be recalculated every turn to account for the movement of other pieces which may block routes or reveal shorter routes.

Stat musings

XP, Experience points

Rewarded as a result of surviving battle and/or/not maybe a certain amount of time in the game. The amount of which would depend on how heavily the enemy unit was hit and how many enemy units are destroyed by your unit.

The effect of XP on the other stats will become a deciding factor in keeping units or making throw away units: XP could be used dynamically as modifications of all other stats and therefore a constant overall benefit, or, they could be used as points for upgrading the other stats. How much XP will affect the other stats, and what XP will be worth in relation to "buying" other stats is yet to be determined. In my opinion the latter will be simpler to implement, and reduce running cost on the server.

As a unit gets more XP it will generally also get more powerful and therefore get even more XP, but hopefully in a linear manner as to combat super units being developed too quickly. Perhaps the XP gain should be inverse linear so that power increase decelerates as a unit becomes more powerful.

HP, ATTACK, DEFENSE, All involved with dealing death

Hit points are affected when attacked. Units have an armour rating that is used in defense, and an attack rating that is used in attack. When a unit is hit their hp are reduced by an amount dependant on that units defense rating and the enemy units attack rating. eg: hp = hp - (attack/defense).

Attacking uses energy and will use a certain amount of energy depending on how high the value for ATTACK is.

Perhaps an attack should not cost an EU for each ATTACK rating, since that cost was paid at building. Instead perhaps a unit may fire at all enemy units within its range radius for 1 EU each. If damage should decrease near the edge of the range a semi-circular curve for the area is suggested such that full intensity is dealt near the center and sloping slowly down at first, but near the edge of the range drops down sharply to zero damage.

SPEED, unit speed

Unit speed is based on a units mass and its SPEED stat, If you buy a certain amount of speed points you can move at that speed per energy unit. So you dont use more EU's per speed point cause SPEED points have already been paid for when you built your unit.

Turns might also not be literal but a measure of another resource: Time. Any given action takes by default 1 turn, but units with high speed might finish that action in .8 turns, allowing them to take another 'turn' at a time of 0.8 before the other unit becomes active again at a time of 1.

RANGE, Unit range

The range a unit can attack other units at. We don't want units being able to attack the whole world, but there is a benefit in being able to create relatively cheap and powerful units that can bombard over long distances relying on other units for vision.

RANGE is also useful as the range at which building can be done, possibly tied in with vision, as you cannot work on what you cannot see. Though as you build something that would have its own vision range and as it is built the attributes would be slowly added increasing that vision range.

Range's cost should increase as a square of the radius if all units are ground-based, and as a cube of the radius if units can fly. This will also make building a unit that can attack the whole planet prohibitively expensive.

A unit with only range and attack could make a cheap drone gun.

VISION, Unit vision range

The distance a unit can see. Allows units to spot the enemy. Would have an exponential increase in cost. We dont want units to see the entire map. Perhaps an increased vision could be generated with the use of some energy.

Vision's cost should increase as a square of the radius if all units are ground-based, and as a cube of the radius if units can fly.

A unit with only vision could make a cheap and effective sensor tower.

ABSORB, Energy absorbtion

The rate at which units can absorb energy from their surroundings, in effect the power plant for the game. This energy can be transferred between units within range and is used to build/create, fire, move, and basically allows your units to DO things.

Possible use: X absorbtion allows X energy units to be absorbed per second.

CELLS, Energy storage

Goes hand in hand with ABSORB, due to the fact that you need somewhere to put all that energy you are collecting. Cells may store a certain amount of energy per cell, most likely 10 EU per cell.

Remember a unit loaded with heaps of energy will make a really big bang and potentially obliterate things within a certain range.

BUILD, Building

The building/creation of units. Perhaps the most complex part of the game. As everything needs to go into the cost of a unit and a certain amount of energy will be used to build that unit, based on its stats.

Maybe mass could be used as a way of calculating the cost of a unit, but that would mean that energy has to have a really high value. With storing energy in 100unit blocks and collecting a certain amount per second, this gives energy quite a low cost and when you attack you would want to use a certain amount of energy units per shot, rather than parts of energy units.

Perhaps the cost should be based off (1+Stat)*(1+Stat)*(1+Stat)... with a (1+Stat) for each stat units may possess. In this way units which have 0 speed of 0 defense do not incur that cost since it will only multiply by one, while a unit which can do everything is prohibitively expensive, promoting diversity and specialized design.

Perhaps more powerful or costly units should take longer to build. Perhaps the time it takes a unit to build something should be modified by the level of its BUILD stat.

A builder unit should be able to build anywhere within its Range. Two units should be able to merge together when within a builder-unit's Range, resulting in a single unit with the sum of their stats. In this way a builder unit can heal themselves or other units by constructing a unit with no stats and only the missing HP, and then merging them together. Merging units in this way should cost the difference between the new unit's build cost and the sum of the build costs of the two units to be merged.

This could also result in armored immobile builders serving as a 'base' around which units can gather to be healed.

If this is implemented, then there is no need for XP. When you kill an enemy unit, you could gain some of its cost in EU to use on building an upgrade to attach to another unit.

Costs

Energy (Energy Unit, EU) is the currancy of eon. You collect it from the environment, you use it to build, move and attack. At no place in the environment is energy collection stronger, so there is no need to have your base in one place and protect a particular resource. Maybe in future versions higher energy levels at certain points on the globe will be considered, but always will you be able to collect energy from anywhere.

The cost of various things in the game in terms of energy will have to be figured out.

  • Energy is used for building units, one EU per stat point is probably a good starting point.
  • Moving uses energy and might use one EU of energy per distance point. Distances should probably be worked out along with opengl's basic size units. And the base unit size is a sphere of radius 1.0f
  • Attacking uses energy possibly a certain amount based on the range. So the greater the range, the more energy needed to cover that range. But simpler would be the unit can attack full strength up to its range limit and no further. Attack would probably use one EU per attack point.
  • Upgrading might use energy along with XP, as you add a stat based on XP you also use one EU.

So far everything costs one EU and this is probably a good starting point. You collect an EU per each ABSORB point per second, you attack with one EU per ATTACK, you move with one EU per unit of distance, at whatever speed your unit can do. As the game is played we can modify these amounts and change what everything is worth to balance it. Maybe we wont need to?

It is probably best not to cost 1 EU per ATTACK rating when making an attack. The enemy does not pay 1EU per DEFENSE when defending, so this would provide large bonuses to the defender.

Notes/rambling

  • All players start the game with one unit, this unit can build and absorb energy.
    • Players may want to build something to absorb more energy as a starting point, as you need resources to build more.
    • As players forces increase in size, they will be able to build larger units quicker and there will be a point where managing their massive force becomes impossible.
    • Perhaps a total mass limit will help to stop oversized forces and make them more manageable.

I keep coming back to the fact that everybody will have the same formula applied to their units so there should be no real benefit of a player playing one way over another. But will this allow a large variance in the way people play and start the game. Would it be easier to start the game by building a unit that absorbs lots of energy or building a unit that can both build and absorb energy. Which would be the cheaper option and which would allow a quicker start to building yourself a massive army.

The cost of a unit in terms of energy should take in the values of all the attributes. I think the unit mass would not be a fair representation here as some attributes would need to have a greater cost to effect them. Especially as we get larger and larger units.

Also interesting would be to see the various ways of playing the game. I've thought of several;

  • Perhaps some players would create largely specialised units to keep them cheap. Such as energy storage units with zero movement and large armour, Huge energy absorbers to gather the resource quickly and large building units pumping out lots of little throw-away units.
  • Maybe someone will make their entire force movable with large units that can do almost everything such as building and absorbing energy, attack and defense.

Hidden units Notes

To stop people from using cheating clients, consider the following situation for player A & B (mutual enemies), on a 100x100 board. Initial locations for units are:

  • 1 - 10,10 (owned by A)
  • 2 - 90,90 (owned by B)
Player A > Move unit 1 to 10,70
Server (to A) > Unit 1 moving to 10,70 - will arrive in 6 seconds
Server (to B) > Unit 1 moving to 10,100 - will arrive in 9 seconds
..(after 6 seconds)...
Server (to A) > Unit 1 at 10,70
Server (to B) > Unit 1 at 10,70

Now the movement vector is the same, but player B doesn't know exactly where the unit will end up until it stops moving.

To visualise this, draw a square (playing field). draw two dots (current location and target location). Draw a line from the current location THROUGH the target to the end of the playfield. The unit is known to stop somewhere along this line, but only those that are supposed to know, will know where.

Personal tools