Author Topic: Player account and implications  (Read 855 times)

Mithril Man

  • Hero Member
  • *****
  • Posts: 589
    • View Profile
    • Mithril Man Web!
Player account and implications
« on: March 23, 2016, 01:13:51 AM »
for clarity sake and to not lose what i've wrote, i took the posts I did on BCT and put them here in a big one post
I fixed some typos too and rewrote something in a cleaner way, so please re-read in case you already did before

@Mirthilman

that's a good idea for accounts - some incentive to having an account.

we can add accounts in the original way the game was designed (multiple hunters under one name), of course disadvantage of that method is you cannot move other hunters when 1 is pending.


I think that, as you pointed out, the old way has a bad drawback that prevent you from coordinating your hunters in the proper way, and this even helps bots because it's less error prone than having to consider in few seconds which hunter to move or not, etc..., so account implementation shouldn't be done that way but should be thought in a new way.
And I think that the new way could be pretty easy: reserving a special name (AccountID) linking it to an address, and adding to it some attributes.

Let me introduce this concepts (Address bound Account):

An account can be created using a special transaction (e.g. game_createAccount) that create a special name into the game, that is saved in gamestate or better in a new .dat like accounts.dat that will contains the full list of active accounts
example:
game_createaccount { address: 'HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE', name: 'My Account Rulez', badge: 'myIcon', note:'Hey Ya, I Rul3!' }

this method will return an AccountID that can never change and that rapresents the real account ID, even if player then change its name or transfer to another address (so this would be the real registered name if you consider this as in namecoin and this must be unique, while the account name could have duplicates maybe, not that important)

- address is the address bound to the account. This is where you have to send the money that will be spent to play. Every move/destruct/chatmessage/whatever game action that requires a fee, will take money from this address.

- name is the Account Name, that identify in a friendly way a player (the real ID is the returned AccountID as i said) and that could be used to show the account ladder positions, on game clients, realtime chat, etc... and that will let players to brag while climbing the ladder position!

- badge, note: an example of account extensibility, showing that we can add some fancy stuff linked to accounts, like an icon, a note, maybe a hunter skin, etc...


Should be possible to transfer an account to another address, so if a player wants to be safe can change periodically his base account address and we can even create an account market where people could build up a strong one and then sold it (@snail this should sounds familiar to you that have a MMORPG experience).
example:
game_transferaccount { accountID: 'myUniqueAccountId', newaddress: 'HMAAABBB5wo9FiniVU4pXWGUu8E8PSmoHE' }


Should be possible to update account information, to allow a name change, icon change, etc...
game_updateaccount { accountID: 'myUniqueAccountId', name: 'My New Account Name', badge:'myNewIcon' }


With such Account, we can then just add a mandatory field when you create a hunter, so that you must specify which account the new hunter belong to (and underneath this would just cause the hunter creation cost being taken from the address account)

the hunter transfer should be changed in order to use account instead of address



Just with those small changes/addition, we have a full fledged account system that we can use then to do whatever we want with

And consider even other PROs like the fact that this way a centralized system would just require to handle a single address per player, so creating a kind of centralized server would be easier!




i don't know how to do it without punishing those without much coin to create multiple hunters... e.g. i thought that maybe the more hunters you have in account the less tax you get, but then someone who only wants to play 1 character (poor person) is getting stung, and it helps those who create many.

i proposed the opposite (rise the cost of every new created hunter while you have others already active/created) because this sounds to me the best way to prevent people from acting like now, covering the map with 30+ hunters on a single client

and if we take my example as real, so starting from 25 huc then doubling its cost every new hunter, or having a fixed part plus a variable part, comparing to current cost this would mean something like this summary

costs for creating hunters:
A - current active cost: 200 huc every hunter
B - proposed alternative of cost starting from 25 huc for the first, then doubling the cost for every new hunter
C - proposed second alternative of cost starting from a fix cost of 50 per hunter, plus 15 huc for the first, then doubling the variable part for every new hunter

Example of costs with different approach

Hunters created1234567
A200400600800100012001400
B257517537577515753150
C6514525542571512452255

of course values can be tweakered but this is pretty clear we can do whatever we want, even changing costs based as, i said in another post, on current population (so if map is empty, cost could be higher to prevent the feastest after a disaster to fill the map with his hunters)




I think just need to know how players will have more power by creating more character [snip]

Why should they be more powerful with more hunters?
I didn't focused on the "powerful" aspect when i explained my ideas, but I was just considering two contradictory aspects:
- having just one or very few hunters is annoying because the game is slow and you could be far from action
- having too much hunters helps too much who can control a lot because of time and who runs bots

Considering those 2 aspect, I think that we should find a compromise and this is why i displayed an example of hunter costs, just to explain that with a well thought dynamic formula we can be near an optimal solution:
1) incentivating players to have more than a single hunter without investing too much, helping this way the newcomers and poor players, that may start trying to run a single or two hunters with lower risk, but even lower gain

2) "punishing" who runs too much hunters, by incrementing exponentially the cost of hunters in a way that running too much hunters will cause you to risk too much respect the possible gain, so lowering the ROI and thus limiting the "one player that rule the world" problem

(see below for a full explaination of the idea)

[..snip] and how that will outweigh just creating more "accounts"

ok now your question is about how to achieve what i want, here it is:

In order to prevent people from using multiple accounts to create, and so control, lot of hunters on the map, we need a way to reward more, in term of potential gain, the "high level" player than the "low level" one.
This is why i talked about Bounty Points (BP), that are points that you gain whenever you kill an enemy and you lose whenever someone kill one of your hunters.

The way you gain or lose BP, depends on your level and the level of the player who lost the fight, something similar to common PVP MMORPG that have a rank system.
If some low level player kill/hit you, you lose "a lot" in term of BP, while you gain a little if you kill/hit them, but you gain a lot if you kill/hit someone with an higher level than you, or similar, etc...
But why should one care about BP? Well, because there will be a permanent contest that daily/weekly/monthly etc... pay out a prize based on the ranking and that will be paid out from game funds coin pool (and that pool will have new ways to be refilled as you'll see).
We could even use the rank to give more powers (abilities) to hunters in future, but for the moment i'll keep it out to not put too many irons in the fire.

Another thing that could be useful to encourage the single account play style, is putting caps (limits) to the amount a hunter that belongs to a low level player could obtain from killing an enemy (and here i'm not talking about BT but about HUCs) and taxes in general (the lower you are, the more fees you pay when you cash out, more below)
This requires of course a rework about how pvp works, but this was already planned, and this is the core idea (and i link this even to the dynamic hunter cost but the rationale could apply even without that change):

Scenario:
The cost method is B (25 per huc, doubled for every new hunter you create)

Player A is an high level hunter and create 5 hunters to move them at the same time on the map.
1st hunter costs 25 (named A1)
2nd hunter costs 50 (named A2)
3nd hunter costs 100 (named A3)
4th hunter costs 200 (named A4)
5th hunter costs 400 (named A5)


Player B is a low level hunter and create 2 hunters to move them at the same time on the map.
1st hunter costs 25 (named B1)
2nd hunter costs 50 (named B2)


B2 reach out A3 and managed to hit him, what happens?
In terms of BP, Player B (note, not hunter B2 but Player B, so the Account) gain lot of BP because he managed to hit an high level player, while at the same time Player A lose the same amount.

What about Hunter value, so HUCs?
One of my ideas is considering the hunter value (so his initial value or the collected value if the hunter is a veteran) as Carry Capacity
Whenever a hunter kill another, the winner get, from the enemy, the amount he had during the attack, so in my example, since B2 is a 25HUC hunter, he would get 25 from A3

so fight result would be
- B2 became a 50HUC hunter
- A3 became a ... well here there are at least 2 options, A3 could become a 75HUC hunter (100-25) or just die and send the exceeded amount (75 huc) to gamefunds
this depend about how we manage to change the PVP, if we implement the armor/ammo system, then when someone is without armor and get hit, then he die and we can use hunter starting cost, to apply bonuses on equip (a 25HUC hunter has 1 armor, a 50HUC 2 armor, etc...)

Two things more to note:
- 1 - when Player B decide to bank the sum won by B", destructing him on a bank spot, giving the fact that he's low level, he won't get the full 50HUC gained but 50 - a fee that goes to game funds, as a "malus" for being low level. This is a nice way to encourage the single player account too.
- 2 -after player B killed his B2, if he create another hunter this will be again considered the 2nd (because there is still B1 on the map) and so it would cost again 50HUC

If you think deeply about the impact those changes have on gameplay, you should see (if i didn't missed something) that it's quite balanced.
- Account boost is discouraged because of Taxes impact on banked amount and BP penalities (and powers linked to the player level if we implement that in future)
- If someone wants to maximize BP gain and want to have a big army, he would risk losing a lot both in terms of BP (difficult to follow too much hunters) and HUC (the more you have, the more they cost and you risk that someone kill your 6400HUC hunter, maybe with a low level 25 hunter that would make him gain just 25 and gamefunds the remains)

Anyway i don't want to write a full game play now (even if i get close lol), but I think that there is already lot of stuff to think about and that can really give a huge boost to gameplay and fun!
Since i spent so much writing this posts, i think I'll implement those stuffs anyway in my client somehow in a standalone fork lol
Alternative GUI client for Huntercoin http://www.mithrilman.com
HUC donation: HMSCYGYJ5wo9FiniVU4pXWGUu8E8PSmoHE
BTC donation: 1DKLf1QKAZ5njucq37pZhMRG67qXDP3vPC

sirwagginston

  • Newbie
  • *
  • Posts: 48
    • View Profile
Re: Player account and implications
« Reply #1 on: March 28, 2016, 04:03:02 AM »
The idea of making hunters more expensive the more of them you have is really good. The only reason we made it as expensive as 200 HUC was to prevent dominators, but the price deters noobs. With this, we could have the best of both worlds.