GithubHelp home page GithubHelp logo

Cheat guard not working about moodle-block_xp HOT 6 CLOSED

fmcorz avatar fmcorz commented on August 22, 2024
Cheat guard not working

from moodle-block_xp.

Comments (6)

FMCorz avatar FMCorz commented on August 22, 2024

Hi,

The cheat guard is not looking at the rules, but at the events. It only prevents similar events to be repeated, it will not discard events based on the rule they match. Though maybe we could improve this in the future.

from moodle-block_xp.

eozz avatar eozz commented on August 22, 2024

Ok, but then for each \core\event\course_viewed event the plugin should not assign experience points, based on timeframe or time required settings, however it does.
So this results in XP gaining by just refreshing the course page multiple times per minute.

from moodle-block_xp.

FMCorz avatar FMCorz commented on August 22, 2024

Hi,

I have to admit that the logs do not contain enough information for users to understand how the cheat guard works. It is not only based on the name of an event, but also where the event happened. If your students have access to 10 different courses, they can visit each and get XP for each course in the timeframe specified.

Let me explain why. Take as an example a list of resources, say 10 pages. Most likely you want to prevent your students from refreshing the page over and over again, however they should still be given XP for each different resource that they accessed, they may just be fast readers.

Hence, the cheat guard only loosely checks if the event was already captured within its own context. Unfortunately the logs do not indicate all the parameters taken in account.

Now, your students might just be smarter than the system. The one way to cheat it is by logging out and back in. The cheat guard was not meant to be super smart, it was made to prevent easy cheating such as refreshing a page over and over. I could definitely improve it but for performance reasons it was better to keep it simple.

Would you mind checking if your students are logging in/out?

Cheers,
Fred

from moodle-block_xp.

eozz avatar eozz commented on August 22, 2024

Hi,
so far it seems that users gain points without logging out, below is a short log from Level up point gain and a txt file with users activity. System log shows no logout/in during the point aquiring.

Also there are only few courses, so the points are gained by refreshing the same courses over and over again, although the cheat guard time has been set to high values.

Saturday, 21 May 2016, 9:22 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:22 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:21 AM Kalvis Ruckis 1 \mod_resource\event\course_module_viewed
Saturday, 21 May 2016, 9:21 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:21 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:21 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:21 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:20 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:20 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:19 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:19 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:19 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:19 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:19 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:17 AM Kalvis Ruckis 1 \mod_resource\event\course_module_viewed
Saturday, 21 May 2016, 9:17 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:17 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 9:02 AM Kalvis Ruckis 1 \mod_quiz\event\course_module_viewed
Saturday, 21 May 2016, 8:59 AM Kalvis Ruckis 1 \core\event\course_viewed
Saturday, 21 May 2016, 8:59 AM Kalvis Ruckis 1 \core\event\course_viewed

log.txt

from moodle-block_xp.

FMCorz avatar FMCorz commented on August 22, 2024

Thanks.

Looking at the log file, it is pretty clear that this user is having fun logging in and out a lot. They have found a workaround to counter the cheat guard and are abusing the system. I'm afraid that at this point I do not have a solution, though you can selectively ban this user from earning XP by giving them a role that prohibits xp:earn.

21 May, 09:21   User    User has logged in  The user with id '64' has logged in.
21 May, 09:21   User    User logged out The user with id '64' has logged out.
21 May, 09:21   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:21   User    User has logged in  The user with id '64' has logged in.
21 May, 09:21   User    User logged out The user with id '64' has logged out.
21 May, 09:21   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:21   User    User has logged in  The user with id '64' has logged in.
21 May, 09:20   User    User logged out The user with id '64' has logged out.
21 May, 09:20   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:20   User    Course: Zello izmantoðana  System  Course viewed   The user with id '64' viewed the course with id '17'
21 May, 09:20   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:20   User    User has logged in  The user with id '64' has logged in.
21 May, 09:20   User    User logged out The user with id '64' has logged out.
21 May, 09:19   User    Course: Zello izmantoðana  System  Course viewed   The user with id '64' viewed the course with id '17'
21 May, 09:19   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:19   User    User has logged in  The user with id '64' has logged in.
21 May, 09:19   User    User logged out The user with id '64' has logged out.
21 May, 09:19   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:19   User    User has logged in  The user with id '64' has logged in.
21 May, 09:19   User    User logged out The user with id '64' has logged out.
21 May, 09:19   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:19   User    User has logged in  The user with id '64' has logged in.
21 May, 09:19   User    User logged out The user with id '64' has logged out.
21 May, 09:19   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:19   User    User has logged in  The user with id '64' has logged in.
21 May, 09:18   User    User logged out The user with id '64' has logged out.
...
21 May, 09:17   User    Course viewed   The user with id '64' viewed the course with id '1'
21 May, 09:17   User    User has logged in  The user with id '64' has logged in.
21 May, 09:17   User    User logged out The user with id '64' has logged out.
21 May, 09:17   User    Course viewed   The user with id '64' viewed the course with id '1'

Cheers,
Fred

PS: Maybe you should edit your comment to remove the name of that person, otherwise it'll come in Google results.

from moodle-block_xp.

eozz avatar eozz commented on August 22, 2024

Ok, thanks for info!

from moodle-block_xp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.