Comments (4)
IMO this is not a good idea, since it would limit a lot the people who can be shot.
Plus, some people are always in "invisible mode", and that would mean they'll never get shot.
And being shot has no impact whatsoever on the victim, it's only a addition which adds some diversity/randomness.
The bot already makes sure that the victim has played DuckHunt at least a bit (issue #17), and I think that's enough.
I'm not closing the issue though, I'll wait for @paris-ci's (and maybe other people?) opinion.
(sidenote : as always, please excuse my approximative english)
from dhv3.
- inactive player: Player that has not [sent a message in [guild/channel?] / played DuckHunt] in [x] time.
What I gather from this issue are the following points:
- Shooting a player that is inactive is fairly pointless.
- The issue proposes not to shoot inactive players, however:
- It might be technically difficult to determine whether or not a player really is inactive [1]
- For life insurance to stay useful, the number of active players has to be large enough to prevent abuse of the item and players shouldn't be marked inactive if their life insurance is still valid.
Therefore, I propose the following changes:
- A clear definition of an inactive player should be made and enforced.
- A player can only be marked inactive if there are at least [x] active players. [x] can be a dynamic value, possibly something like: (5 + [server_member_count / 3]). This kind of formula would solve the life insurance problem, since it would force a server to have at least 5 players / active players, while the number climbs rapidly for larger servers.
[1]: The bot should store message timestamps in the database, but only periodically for each single player or on bot shutdown. Each time a player sends a message, the bot checks the players persisted last message timestamp against the timestamp it just got. If the offset is [x] time, it should persist the new timestamp.
If the accuracy of this is too low (perhaps because the offset is too large), you could additionally store the last message timestamp in memory, and persist it on bot shutdown. This would mean a higher accuracy should the bot have to shut down for maintenance, although the gain is only very small.
from dhv3.
I agree with @Diagamma, for 1 more reason, the life insurence shop item needs a fair distribution of the players that get killed.
from dhv3.
I'll reopen this, the changes suggested can be implmented with the giveback
var. However, I'll still have to check if the check is not too heavy CPU-wise.
from dhv3.
Related Issues (20)
- Buying individual bullets vs magazines is a trivial decision HOT 2
- All ducks should consider fleeing when a shot is fired HOT 3
- Repair trash found in bushes HOT 2
- Detect typos in issued commands HOT 3
- Aiming system HOT 3
- Duckstats addition
- New shop items HOT 2
- Sabatoge idea HOT 1
- !top doesn't work if bot doesn't have manage messages. HOT 6
- Update INSTALL.md HOT 4
- "Global Ducks" Suggestion HOT 7
- Nonsensical message when out of bullets HOT 2
- Note when other hunters shot the duck first HOT 1
- Have the opportunity to choose in which channel to show the duck
- Different message when you kill someone with explosive ammo
- Customize amount of exp from hugging a baby
- Auto-assign roles when reaching an amout of exp
- Keep the condoms to nsfw channels HOT 1
- Duckstats count impossible situation HOT 1
- Stats page still mentions chargers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dhv3.