Author Topic: Recap about latest discussions  (Read 2778 times)

Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Recap about latest discussions
« on: August 04, 2015, 12:22:41 PM »
ok, snailbrain asked to post here last idea posted on bitcointalk and here it is a detailed draft of the whole gamplay, including something unchanged respect current running version:

This "poem" could be scay to read, but actually it's just a list of features and some numbers, but it's needed to understand the implication.
But I think that the most important thing is to agree about the features to add, because numbers should be chosen after the changes are implemented and so tweaked on the field (testnet) before applying fork

I'm pretty sure those changes, that except (maybe) traps doesn't require big changes, could be implemented in few time and so we can use that forked version of the daemon to test things on testnet ourself and with players who want to help, anyway here the details!! (please say what you think about the idea, details can change, i'm more interested in the core idea)

[UNCHANGED THINGS]

- when a player spawn, he spawn randomly like now
- banks spawn randomly, maybe with a finished alghoritm to prevent having banks too close (don't spawn a bank closer to a 10x10 cell respect another maybe?)


[CHANGED THINGS]
- there are no more colors, or anyway colors are just cosmetic, everyone can hit everyone else (we could use color to bind them to build templates but we would be limited by 4 templates then, so i think would be better to just consider color as cosmetic, or add as more new "colors" (better talk about sprites) as the available templates

- when a player create a hunter, he can chose his starting equip/skills [*1 for details about templates and skills]

- decrease the hunter cost to 50 + 5.
People argue about the general cost of the game so it should be taken into consideration and 50 sounds fair to me, even because without the attack fee, a fight winner will still earn more than what he earn with current fork (in an even match of course).
Cost was set so high even to limit population i know, but since population has sunk to 0 I think we should learn that high cost is self-defeating, moreover with the added complexity, controlling many hunters would be proibitive and ineffective, even because of FFA.
If in the next fork we create zones for pvp and zones for collectors, the collectours would cost e.g. 1500 just to lock coins, like someone suggested on bitcointalkforum (those coins are always refunded, is just a way to limit player creation without affecting the final player balance).

- Locking coins (but refund them on death) could even be a way to prevent too much players on the map, so we could even say that a hunter costs you 50 (your actual life, like current 200) + 5 (creation fee, lost) + 1000 (locked coins, refunded upon player dead).
Of course someone with a big wallet could still create 50 hunters, but he have to invest 1055 for each hunter and anyway not easy to command that amount of hunter and not effective as stated above


- implementing the ammo/armor concept, during player creation, the build a player chose impact on the available stats of the hunter and the starting equip [*1 again to read about details]
- ammo and armor regenerate over time, depending on the point spents on their respective skills [*1]
- remove lifesteal concept
- when a player has no armor and get hit, he lose everything he have (if he won 4 fights and have 200 on him, if he die he doesn't lose just 50 per hit but whole 200)

- add different kind of attacks, that have different cooldown and require different amount of ammo per attack [*2]

- add a generic attack cooldown, so everytime you attack (any kind of attack), you have to wait a specific number of block before being able to attack again.
This prevent spamming destruct, mitigate good connection vs poor connection problems and add the needed complexity, along with armor/ammo, to plan well your actions

- every attack type has another exclusive cooldown, that's exclusive to the type of attack. Consider each attack as an ability, like in normal RPG/Action game, you can't repeat the same action without waiting its cooldown to end. This way we can add even powerful attacks that have a bigger cooldown respect other attacks [*2]

- i suggested an ability called "evade" that act as Neo in matrix, for X blocks (5?) after activation you dodge every attack, but this have a very big cooldown, like 120 (1 hour) or more and during evade you can't attack (it could be useful to just escape all attacks if you are on a bank and wait destruct, or if you want to go through lot of enemies)
It could work well with the snailbrain idea of traps, see below, so you can evade and bring players on a trap (does trap have a radius?) because even if an evading player can't attack, he could activate other abilities and "trigger trap" could be an ability available.

- add what snailbrain suggested, traps. this need maybe more thinking and would require more development effort that other proposal, but the idea is that a player can use a hunter to deploy a trap on its current cell, in a encrypted transaction (but it shouldn't impact game interface, it should be automatically handled) and this way you have a new object, called "Trap", that's listed in your GUI (i'd say it shouldn't be bounded to a specific hunter rather than being available at a Wallet level, so you can trigger it whenever you want and even if the hunter you used to deploy it died)
Traps last for a fixed amount of blocks (let say 60, 30 minutes approx) and then they are removed from the map. To trigger an explosion then, a player has to activate it using a special transaction that shows it to all and prove you had placed the trap there, at this point whoever is in a range of 2x2 (?) take lot of damage (we need to test and see, i'd say to start from 5, so a hunter with less than 5 armor die and money are sent to the address of the hunter who deployed the trap).
- Traps can be deployed only if, when you create a hunter, you spend build points on the trap skill (and i'd say that a trap is so powerfull that such hunter shouldn't have armor/ammo or just 1/1)
- a hunter can carry max 1 trap and it have no cooldown but it's unique, this way we prevent the map being filled by traps, that would break the gameplay at all


- we process move before than destruct, it would allow to close the gap and attack at the same time, now it's not possible and if you want to attack someone that's 2 blocks from you, you can't just close the gap, then wait, then attack because he would attack you before, looking at pending tx (now you'd have to take a larger route and attack later). even with the inverted pending the enemy could of course try to evade, but with increased range of new kind of attacks, it would still be possible to hit him. (btw this point is the less important maybe, but worth trying, it costs nothing to invert the computation and see how game behave, we could even change it again before the fork if we notice some problem during testing on testnet)




I tried to detail a lot, now let me clarify some aspects

[*1]
when you create your hunter, you can chose how to equip him and which abilities he have
the important work would be to balance the cost of each skill so that you can't create a god hunter.

An example of a build system could be this:

you have 20 points to spend, and you can chose between:

- defense skill
1 armor costs 1
2 armor costs 3 (1 + 2)
3 armor costs 6 (1 + 2 + 3)
4 armor costs 10 (1 + 2 + 3 + 4)

same for attack but every attack level means 3 available ammo
- attack skill
1 attack costs 1 and give you 3 ammo
2 attack costs 3 and give you 6 ammo
3 attack costs 6 and give you 9 ammo
4 attack costs 10 and give you 12 ammo

you can pick your regeneration rate, spending point on them too

- armor regen (how fast your armor regenerate over time)
armor regeneration lvl 1 costs 1 and regenerate an armor every 30 blocks
armor regeneration lvl 2 costs 3 and regenerate an armor every 20 blocks
armor regeneration lvl 3 costs 6 and regenerate an armor every 15 blocks
armor regeneration lvl 4 costs 10 and regenerate an armor every 12 blocks

- ammo regen (how fast your ammo regenerate over time)
ammo regeneration lvl 1 costs 1 and regenerate an attack every 20 blocks
ammo regeneration lvl 2 costs 3 and regenerate an attack every 15 blocks
ammo regeneration lvl 3 costs 6 and regenerate an attack every 10 blocks
ammo regeneration lvl 4 costs 10 and regenerate an attack every 5 blocks

you can chose the trap skill
- trap skill (allow you to deploy 1 trap on the map)
trap lvl 1 costs 16

having a trap still allow you to set 1 point on other skills, so that you can have 1 attack/defense and 1 regeneration on both or you could be more defensive and buy 2 armor and 1 armor regen, etc...
it's up to you, you could use a hunter with trap to taunt others and bring them over the trap zone, etc... could be funny

Note: to keep this simple for players, the GUI should allow the selection of a preconfigured template that already assigned this levels, so a player can just pickup a builtin template (maybe bound to a specific color/sprite) or create his own and save for later reuse, anyway this is a GUI problem, not a daemon problem, at daemon side it has just to validate that the total cost of skills is <= 20 (or anyway the maximum spendible points)



[*2]
now about the different kind of attacks, this is how the proposed system works:
every hunter can chose between different kind of attacks, that costs different amount of ammo and have different specific cooldowns, here some examples:


X X X
X O X
X X X

name: normal attack
cost: 1 ammo
cooldown: 3 blocks



    X
    X
X X O X X
    X
    X

name: plus attack
cost: 2 ammo
cooldown: 5 blocks


X       X
  X  X
    O
  X  X
X       X

name: cross attack
cost: 2 ammo
cooldown: 5 blocks



    X
  X X
O X X
  X X
    X

name: right cone attack (and left/top/bottom variant)
cost: 3 ammo
cooldown: 7 blocks


you can't use the same attack if its cooldown aren't over, but you can use another attack as soon as the "generic attack cooldown" of 2 blocks has passed
to use attacks of course you must have the needed ammo (so if you have just 2 ammo left, you can't use the "cone attack"

of course cost/cooldown numbers are example and need to be tested on testnet to chose balanced values

when you are facing an enemy, things get then complicated because everyone can chose its own strategy to attack.
Watching enemy equip, you should know that he can either use 2 of the 3 different attacks, because he doesn't have ammo for the cone attack, but you can't be sure about which attack he would use and then you have even to take into consideration his armor/ammo regeneration... this could be interesting and not so easy to fights again, so not so predictable...

example of what happen after an attack:
case 1: you attack with a normal attack:
   - it costs you 1 ammo
   - you must wait at least 2 block before being able to use any attack other attack except the normal attack
   - you must wait at least 3 blocks before being able to use normal attack again

case 2: you attack with a X attack:
   - it costs you 2 ammo
   - you must wait at least 2 block before being able to use any attack other attack except the X attack
   - you must wait at least 5 blocks before being able to use X attack again

case 3: you attack with a Cone attack:
   - it costs you 3 ammo
   - you must wait at least 2 block before being able to use any attack other attack except the Cone attack
   - you must wait at least 7 blocks before being able to use X attack again

fight case:
you attack with a Cone attack
   - it costs you 3 ammo
   - after you wait 2 blocks, you then use normal attack (cone attack is still in cooldown for 5 blocks (7-2 passed block)
   - it costs you 1 ammo
   - after you wait 2 blocks, you then use + attack (cone attack is still in cooldown for 3 blocks (7-4 passed block)
   - it costs you 2 ammo
   etc...

as you can see, fight are more challenging and i haven't put into the examples the regen rate and maximum available ammo!


this way a fight would be interesting and not so easily predictable, but we have to balance attack powers with cooldowns, etc...

anyway i again say in bold: focus first on players having fun than on bot problem, bot could be considered at the end like a good player, with those variables ins't easy to code a god bot and anyway with ammo/armor hunters aren't equal powered at a specific block, so even a bot can lose


repetita iuvant:
I'm pretty sure those changes, that except (maybe) traps doesn't require big changes, could be implemented in few time and so we can use that forked version of the daemon to test things on testnet ourself and with players who want to help
« Last Edit: August 04, 2015, 12:29:57 PM by Mithril Man »
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC

wiggi

  • Global Moderator
  • Full Member
  • *****
  • Posts: 150
    • View Profile
Re: Recap about latest discussions
« Reply #1 on: August 04, 2015, 05:53:38 PM »
Is there a specific gameplay reason to abandon colors/teams and go FFA? Implementation wise, color just asks to store the actual team color + up to 63 "templates".

I think the game supports individual amounts of locked coins for each general (Is this true, without restrictions?) Then some templates could be more expensive/more powerful than others, and give more loot if killed.


Edit: Because balancing is probably impossible to get right with the first attempt, fees for different templates should vary, based on current (hunter spawn block) census on the map and payed later on bank despawn/refund. This is easiest and can't be gamed (if many of the same typ spawn at once).

« Last Edit: August 04, 2015, 08:55:34 PM by wiggi »

Snailbrain

  • Developer
  • Hero Member
  • *****
  • Posts: 1002
    • View Profile
Re: Recap about latest discussions
« Reply #2 on: August 04, 2015, 06:51:43 PM »
I'm wondering if we should implement BGBs idea?

Inside Areas = High Risk High Reward
Outside = Low Risk Low Reward

Colours could be used for this maybe?

wiggi

  • Global Moderator
  • Full Member
  • *****
  • Posts: 150
    • View Profile
Re: Recap about latest discussions
« Reply #3 on: August 04, 2015, 08:54:16 PM »
I'm wondering if we should implement BGBs idea?

Inside Areas = High Risk High Reward
Outside = Low Risk Low Reward


Hasn't this been done, implicitly, as the map feels "smaller" now and you are free to recycle hunters until all are near center...


Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Re: Recap about latest discussions
« Reply #4 on: August 04, 2015, 09:44:55 PM »
Is there a specific gameplay reason to abandon colors/teams and go FFA? Implementation wise, color just asks to store the actual team color + up to 63 "templates".

I think the game supports individual amounts of locked coins for each general (Is this true, without restrictions?) Then some templates could be more expensive/more powerful than others, and give more loot if killed.


Edit: Because balancing is probably impossible to get right with the first attempt, fees for different templates should vary, based on current (hunter spawn block) census on the map and payed later on bank despawn/refund. This is easiest and can't be gamed (if many of the same typ spawn at once).

having FFA prevent somewhat blockades and packed group of hunter because they risk (even more with X + and Cone attacks) to hit themself
Color had a meaning before random spawn, where the spawn location was at the same location per color, to prevent total carnage in that situation

About balancing, what i proposed was to setup a testnet environment and so adjusting values/skills/costs there (maybe having a custom daemon that could load parameters from a file, so it would be very easy to test it out and adjust, and then release the fork once we have a fair balanced game

About the problem of picking up the same template, my proposal didn't involve really a fixed list of templates because the build is "free", and every build has his pros and cons, the problem is just to find a nice balance between skill cost and combination, to prevent the creation of "demigod hunters"

We just need to implement the ammo/armor/attacks system into the daemon and let me tweak my client to display informations, etc... so that we can test it out visually and simulate various situations.

When we are satisfied about the game balance and features, then just implement the visual changes to QT/Unity and release the fork with the chosen values burned into the daemon

P.S.
I was hoping to start working on it soon but we lost time and I'll have holiday from 12th to the end of the month
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC

Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Re: Recap about latest discussions
« Reply #5 on: August 04, 2015, 09:52:18 PM »
I'm wondering if we should implement BGBs idea?

Inside Areas = High Risk High Reward
Outside = Low Risk Low Reward


Hasn't this been done, implicitly, as the map feels "smaller" now and you are free to recycle hunters until all are near center...

no, BGB idea was to create areas where pvp was impossible and was favourite the gathering aspect of the game, while in the middle plain pvp and high risky rewards

those area should be closed to prevent people to escape with big loots from pvp area and go to safe area imho, so we'd need to change the map fencing the two areasor we have to make dropping looted pvp coins if someone pass the boundaries (would be easier because doesn't require modifying the map but maybe would be too awkward for players?)

anyway having gathering and pvp area could be useful, but i'm not sure if this would actually help with proposed changes, because if someone want to be a collector, he could just create a "tank" (so high armor and high armor regen" and would be hard to be killed, and would resist some attack giving time to the player to defend himself even if he doesn't have a good reaction at watching the game

a pure tank is very suitable as collector because he has no attack power but high defensive power, couldn't this be enough?
collectors could even defend a coin are placing traps around them (and i think this scenario is plausible, if we see trap is too powerful, just cap its damage or make it more costly)

what do you think?


---
about colors, can't we use it to link every color to a different sprite giving more cosmetic chances to players? players love to chose their skin, (in future we could even add in blockchain, at an high cost, custom sprites that people could link to their hunter) even if i could already do this in my client, but of course if we don't share the same thing on unity only my client would visualize that

I think we'd need to write down some standardized common layer to enanche the game visually (making use of the RETURN_OP string we could use that as a reference to custom skins taken from a common server, etc...)
« Last Edit: August 04, 2015, 09:55:43 PM by Mithril Man »
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC

Snailbrain

  • Developer
  • Hero Member
  • *****
  • Posts: 1002
    • View Profile
Re: Recap about latest discussions
« Reply #6 on: August 06, 2015, 04:16:56 PM »
going back to armour and ammo:

if 2 people destruct together, it uses an ammo and an armour from both?

what happens when one person runs out of armour but continues to destruct at the same time?
Does the one with no armour die?

Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Re: Recap about latest discussions
« Reply #7 on: August 06, 2015, 04:28:10 PM »
going back to armour and ammo:

if 2 people destruct together, it uses an ammo and an armour from both?

what happens when one person runs out of armour but continues to destruct at the same time?
Does the one with no armour die?

I'm sure i wrote it but probably not here, anyway i said:

- both should suffer from losing armor/ammo (how many ammo depend on the attack type of course)
- if both die, i proposed coins to be dropped on the ground and coins be considered as looted coin, so many hunter will be attracted by that and fight to take their slice, and because of carry capacity limit, there isn't a risk that one takes all (except crown holder of course), i think that could be funny, even if i think that cases where both would die at the same time would be rare. If this i s too complicate, coins can go to gamefund, but i'd prefer them being dropped on the ground, maybe randomly splitted in a radius, like if it was a big explosion

Quote
what happens when one person runs out of armour but continues to destruct at the same time?
since every attack you lose armor if you get hit, even if you hit your enemy, this isn't a special case, so the hunter with no armor die and the survivor take its pvp coins
« Last Edit: August 06, 2015, 04:36:03 PM by Mithril Man »
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC

Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Re: Recap about latest discussions
« Reply #8 on: August 06, 2015, 04:33:48 PM »
and a note about gamestate computation order:

 - compute recycle rule
 - compute armor/ammo regen
 - apply skills (if any, like evasion). I put this before move, because if we add in future something like "boost" ability that let you sprint at double speed, it should be applied before moving
 - compute moves
 - compute loot transfer (after moving, if you are on a bank your collected coins are safe)
 - compute destruct
 - compute spawn (after destruct, so one can't be hit just because he was born at the wrong place at the wrong moment)
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC