2.X.X - GeheimagentNr1/LastPlayedLogger GitHub Wiki

This mod logs the last date a player was online/logged in into a Google spreadsheet.
It's a utility mod to help you moderate your whitelist.
It only works on the server side and won't work on the client side.

Support

Support Supported Minecraft Versions
New Development and Fixes 1.20.4
Bug Fixes 1.19.4
Critical Bug Fixes 1.18.2, 1.20-1.20.2
End of Support up to 1.18.1, 1.19-1.19.3

Server Config

The config file can be found in the "serverconfig" folder in the "world" folder and is named "last_played_logger-server.toml". The name of the world folder is set for servers in the "server.properties" file.

  • active
    Shall the mod be active or not?
  • spreadsheetID
    ID of the Spreadsheet.
  • tab_name
    Name of the spreadsheet tab.

Wonder how do you get these data? Read the "How to configure the mod".
 

How to configure the mod

Enable the Google Sheets API

First, you have to enable the "Google Sheets API" on https://developers.google.com/sheets/api/quickstart/java#enable_the_api and click onto the "Enable the API" button.

Create a folder named "last_played_logger" next to the "config" folder.
Next you have to go to https://developers.google.com/sheets/api/quickstart/java#authorize_credentials_for_a_desktop_application and follow the steps to create credentials, that the "Last Played Logger" uses to change the Google Spreadsheet.
Save the credentials.json in the "last_played_logger" folder.

How to set up the spreadsheet

You can copy this Example Spreadsheet to use it with the "Last Played Logger".
For that you have to click "File" > "Make a copy".
Example Spreadsheet: Make a copy

In the copy window you give it a name and click "OK".
Example Spreadsheet: Copy document

This "Example Spreadsheet" has two tabs.
In the "Online Log" tab the "Last Played Logger" adds lines for every player joining the server. For players already joint the server only the date will be updated.
Online Log tab

In the "Statistics" tab you have two lists. The left list shows all players sorted by name and the right list shows all players sorted by the date. The player last online is the first player in this list.
Statistics tab

For the mod it's needed, that the spreadsheet is shared. For that you have to click onto the "Share" button.
In the Share window you have to select "Get Link" and on the right side of "Anyone with the link" you have to select "Editor".
Share spreadsheet

In the config you now have to set "active" to "true" and set the "tab_name". In this example the "tab_name" has to be "Online Log".
From the URL you have to extract the spreadsheet ID. In this example the spreadsheet ID is "1dcoWy1ZOCEzf9wSqpsd731MKr8rBsazUVuUYafF4nzA".
Example URL

What is to do on the first launch

When you have finished the config and done all previous steps, it gets to the first launch and the authentication of the server/mod. Important: The first launch of the server has to be on your local desktop pc. During the following steps don't stop the server. After you launched the server and a player joined, you find in the log a link with the following lines:

Please open the following address in your browser:  
https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=419570840170-ajsv0mce1gpvb2affbgn9avf85ualmkq.apps.googleusercontent.com&redirect_uri=http://localhost:62199/Callback&response_type=code&scope=https://www.googleapis.com/auth/spreadsheets  
Attempting to open that address in the default browser now...

Maybe the link is opened by your default browser automatically. If not copy the link to your browser and open it.
It opens a website where you have to choose the Google account, from the owner of the spreadsheet.
Choose Google account

Next there opens a warning because your project on which the application is running is not verified. You can ignore the warning and click "Advanced".
Not verified warning

Next you click on "Go to Quickstart"
Go to Quickstart

After that a permission request is showing up, that wants to access your spreadsheets. "Allow" clicking will grant this permission. Grant Quickstart permission

This permission request has to be confirmed.
Confirm permission for Quickstart

If you grant the permission and confirmed it, the "Last Played Logger" will work and add players to your spreadsheet.
If you want to enlarge the formatted area, here is a tutorial: https://spreadsheetpoint.com/color-alternate-rows-google-sheets/

Thanks for the logo to Muse31.
You can use this mod in non-commercial modpacks without asking.
You can find more mods from me here.