Loading...
  OR  Zero-K Name:    Password:   

Retrospective user block with drawn map comments

33 posts, 697 views
Post comment
Filter:    Player:  
Page of 2 (33 records)
sort
11 months ago
I notice if you block someone, what they wrote/drew on the map, is still there.

It only appears to block future comments/draws from them.

It would be handy if it removed previous comments/draws from folk on your block list.


Otherwise I think my best strategy for having an enjoyable game without insults is to block said person, then resign so I don't have to keep reading their insults when I'm playing.

Eventually I'll run out of insulting players to block..


Or maybe I should block everyone in advance. :-)
+0 / -1

11 months ago
Let me guess: you spammed storages and the team got mad?
+0 / -0
It cannot because that information is not stored in memory and storing it in memory could eventually consume a ton of memory. You'd have to store the coordinates of the ping and who wrote it. This means you'd have a table entry on every ping, which hashing tables is already pretty slow. You'd be looking at around 20-100kb or so of memory per label which adds up fast (consider all the no label pings people like to spam). Erasing labels would also mean knowing when a point is erased (which has no callin currently) and that would mean shifting the table, which would be rather slow for large table sizes. In addition, this would open up a new avenue of griefing games via deliberately spamming tons of labels over a long period of time.

TL;DR: the best we could do is just hit "Erase all labels" when doing /ignore.
+3 / -0
Shaman, what you're saying makes little sense?

And Eridug, just clear out the labels manually - or all labels + drawing, using the quick-erase-button. It is a bit curious you have this case so often you make a feature request for it.
+1 / -0
In order to use Spring.MarkerErasePosition, we need to know the position we are removing. This means you're going to have to store positions. You want to remove all the points in which someone has added, you're going to have to store who made a point where. There's a callin:

widget:MapDrawCmd(playerID, cmdType, px, py, pz, arg1, arg2, arg3, arg4)

NOTE: cmdType here can be erased which allows us to remove points from the table. See problems below.

You're going to be storing information from this callin in the form of a table. Essentially a structure like this:

{
[playerID] = {
[1] = {x, z},
[2] = {x, z}
etc}
}

or

{
[playerID] = {
[x value here] = {
[y value] = true
}
}
}

PROBLEM: other people can erase points that aren't there own!
PROBLEM: middle mouse pings are super easy to spam! This means we're facing potentially hundreds to thousands of points total. This is going to be a beefy table and we're limited by memory to 1,5gb between lua rules and lua ui.
PROBLEM: pairs is fairly slow compared to indexed tables (about 4x slower)
PROBLEM: if ignoring a user causes the game to lag while we process their pings, they're de-incentivized to use the feature and it might as well not exist.
PROBLEM: erasing a point erases all points within a radius.

TL;DR: I described the logistics and pitfalls of implementing this as "too big" for too little qol and said it would be easier to just call the "Erase all points" action when ignoring a player which achieves the same result.
+1 / -0
11 months ago
---
you spammed storages
---

Nope.

I rarely have much storage beyond one or two units.
+0 / -0
11 months ago
Shaman, what you're saying makes more sense.

I do think your sizing of memory and performance impact is way off. A table with simple coordinates is not that big. Spam should be filtered out regardless.

However, you rightly say that the erase-command isn't ideal, as that is a propagated command for a player. The elements should be removed via a purely local erase-command - removing it from the elements. In the engine the lines and points are stored per player, so the core code should include a new method (or add more noise to an existing method) to drop all lines and points of the ignored player.

Above all, it's an absolute non-feature. Just click the clean-screen Eridug. All the thingies are gone.
+1 / -0


11 months ago
May have confused kb with b, my bad. It's still not great. I just remember reading the memory cost of a table from world of warcraft ui development. You can't locally delete labels either btw.
+1 / -0
unknownrankShaman it's definitely byte. no way a table can eat 20kb with just a few elements. and the perf cost is miniscule compared to, say, an extra couple of units. no local delete is a pain tho.

GBrankEridug the acceptable number of storages is 1, and that's only if you lose your comm. zk has a streaming economy which means storages are useless noob traps
+0 / -0

11 months ago
quote:
no way a table can eat 20kb with just a few elements.


I guess I can ask some people to make code that inefficient. Never say never.

quote:
the acceptable number of storages is 1, and that's only if you lose your comm.


I fear it is a lot more complicated than this. There are some circumstances in which one or even more storages can be viable.
The main important things are these:
1. Metal should be on the field. You can store some to be able to rush defenses or caretakers at front. But in general it is not useful to hold back your ressources.
2. Storage sucks up energy. In the early game that means that you and your whole team miss out on overdrive, but as soon as your team has enough energy, aka singu or smthng., this should not pose any problem.

Just writing this because you will see me or other older players make storage from time to time. So obviously its not a total noobtrap, but to use it well and without downsides for your team, you need to have some understanding of what you are doing.
+1 / -0

11 months ago
Is there a little widget that tracks the metal/energy situation for the whole team ("ally team")?

Sometimes I have the opportunity to unleash 10-15 builders on a wreckage field, at those times I wonder if its being spent.
+1 / -0
11 months ago
NOrankskuggmodzer0 you can press tab(by default) to bring up the playerlist, where you can see amongst other things reasourcing for your team
+0 / -0

11 months ago
Thanks, I've apparently not examined that panel closely enough.
+0 / -0
11 months ago
---
Just click the clean-screen Eridug. All the thingies are gone.
---

I've been doing that, but I notice folk repeatedly continue to write stuff !

I also notice that the ignore command doesn't work in game, only after the game has finished the next time.

At least as far as text goes.
+0 / -0
11 months ago
When your local panel shows surplus metal being wasted, is it really being wasted ?

That's when storage, or building useful stuff ( Say, more electricity generation. ) to make use of it, would be handy, instead of it being wasted.
+0 / -0
Excess flows to teammates first. The team only excesses if everyone is excessing, and the more players there are the less likely that is. If there's 4+ players per team there's basically never any excess.
+1 / -0
You can activate "chili deluxe player list", this will show you the storage of all your teammates.

On a sidenote, why do you insist of playing team-games if you don`t want to interact with your team? This is nothing against you as a person, but there is a reason your win-statistic is at place 987 of 1000 players... Other people are looking for an enjoyable game too you know? And bluntly said the way you behave makes the game quite unenjoyable for almost all other players in your team.
+2 / -1
11 months ago
Prehaps the issue is that the economy menu shows metal excess when it's just being overflown to teammates?

in either case, storages are almost never useful, just avoid them ^w^
+0 / -0
11 months ago
---
why do you insist of playing team-games if you don`t want to interact with your team?
---

I'm quite happy, and able to interact with team mates who are pleasant, or have solutions I agree with.

Just because someone demands X, doesn't mean you give them X, if X is a bad idea !

What if 2 people ask for X, who gets it !

It isn't uncommon for me to play a game, where no one says anything to anyone, and we just know by watching each others actions, what is needed when/where and act accordingly.

Games can go swimmingly like that.

Other times, there are a few bossy and rude folk who swear at you, call you names, repeatedly write stuff over your base/etc so you can't see what you doing easily and act like spoilt kids that their orders must be right and obeyed at all costs.

I'm quite happy to follow orders, if I think either the person knows what they are doing, or might do. ( You find out after a while if someone you are following orders from is worth doing that for again ! )
+0 / -0
11 months ago
---
there is a reason your win-statistic is at place 987 of 1000 players...
---

That's probably because of my other team mates being such poor players !


I don't care about my stats, I'm here to enjoy myself, play with others, and help folk to win.

+0 / -0
Page of 2 (33 records)