Auto-Cleanup for Clan Lists
First submitted in November 2020, this code automatically rank 0s players who haven't logged in for a set amount of time, thus removing from us a huge administrative burden and one, that if I'm honest, we typically do inconsistently. Due to a certain amount of mission creep, it also decouncils inactive people, and, with certain buffers, de-ranks people who aren't maintaining their quest points. No, I can't remember offhand what the buffer is.
Code: Select all
0, //0
0, // 1
2, // 2
2, // 3
5, // 4
10, // 5
15, // 6
30, // 7
30, // 8
30, // 9
0, // 10
This turned out to be a lie wrote:something more scaled up for Chosen clans
Anyway, this is very old at this point, even though it works: I suspect Flash is a little reluctant to implement something that might shag up the boot phase the first time it's run, which is fair enough. It works for me and Aureus, but we don't have one hundred and fifty thousand player files to iterate through.
There's nothing actually wrong with it per se, it's just way behind the master version of the game at this point so conflicts have crept in; the bast majority of the changes are in the clan file, and we tend to do a lot of work there. All I can really say about this job is, I resolve the conflicts. It's kind of a pain. And now I want to test it again to be sure I haven't broken anything vital - annoying in its own way since it involves manually creating notes folders and logging in to set ranks on inactive chars and then rebooting and ugh. But probably worthwhile.
So it's nice that it still doesn't die, but obviously that's without actually doing anything, so I log in quickly and do this:Encouraging wrote:Fri Aug 5 11:39:44 2022 :: Cleaning up clan lists.
Fri Aug 5 11:39:44 2022 :: Boot db -- DONE.
Crucially the point here is that he hasn't been on in forever. His rank should be adjusted to, er... four? His master flag and council flag should be removed, and his rank set to 0. And he should acquire some notes about that in his notes file, which after some jiggling I have finally managed to open a folder for in the right place. And so to reboot.* I105 HP:Healthy MV:Fresh > whois testfour
Testfour the Elder Wisdom is a level 30 Wisdom Master Dark Council trolloc hunter.
Last login from 127.0.0.1 (localhost.localdomain), on Thu Nov 7 20:18:53 2019
This took an irritating amount of time, but I'm glad it still works.Welp, Still Looks Fine to Me wrote:* I105 HP:Healthy MV:Fresh > whois testfour
Testfour the Beaked Trolloc is a level 30 Wisdom Master trolloc hunter.
Last login from 127.0.0.1 (localhost.localdomain), on Thu Nov 7 20:18:53 2019
Last attempt from 0.0.0.0 (not logged in yet since 4.2b), on Thu Jan 1 01:00:00 1970
Testfour has no unread mail.
* I105 HP:Healthy MV:Fresh > show me dem notes for testfour
1. Itesh (100) Fri Aug 05 2022
beep
2. the Guardian (100) Fri Aug 05 2022
INACTIVE: Rank 0, was 7
3. the Guardian (100) Fri Aug 05 2022
INACTIVE: COUNCIL OFF
Annoyingly, this doesn't test the qp thing, so I'm to clan myself real quick, fiddle with some ranks and reboot. This doesn't work. And I'm going to assume it's because I'm an Imm, because that's always a Thing, and try again with Testone real quick.
So we're done here, basically. Moving on!Inactive
Testfour (1)
Rank 1 Apprentice
Rank 2 Student
Rank 3 Herbalist
Rank 4 Healer
Testone (1)
Rank 5 Wisdom
Rank 6 Senior Wisdom
Itesh (1)
Rank 7 Elder Wisdom
Rank 8 High Wisdom
Rank 9 Grand Wisdom
3 total members.
Huh?? is the current Tradition of Home and Hearth.
* I105 HP:Healthy MV:Fresh > about those notes testone
1. the Guardian (100) Fri Aug 05 2022
AUTO DERANK: 7 -> 4
List out Armor Command for Imms
Basically a copy of the one that already exists for weapons. Flash wants a direct reference to a struct member replaced with a more consistent macro. Here's a shitty example:
Instead of:
the_world->europe->british_isles->great_britain_and_northern_ireland->england->the_goddamn_shire->people[ch]
This:
GET_LOCATION(ch)
...which is fair enough. I make the change on the test machine, it fails compilation, I take a random stab in the dark at resolving that, it compiles and spits out this, so, huzzah.
Taking a Moment to Review Aureus' Work* I105 HP:Healthy MV:Fresh > /show armor
0. a BAD THING that was a helm - TURN IT IN [ 1019] Cond: 0/0 DB: 0, PB: 0, Mvs: 0 Abs: 0.0, Wt:3.0 ARMOR TAKE HEAD
1. a rimmed pot-like crimson helmet [ 1021] Cond: 16000/16000 DB: -1, PB: -2, Mvs: 0 Abs: 35.0, Wt:7.0 ARMOR TAKE HEAD
2. a red-painted breastplate [ 1022] Cond: 23000/23000 DB: -1, PB: -15, Mvs: -10 Abs: 65.0, Wt:22.0 ARMOR TAKE BODY
It's all terrible, obviously, so I knock him down to 102 and revoke his access.
Object Stats on Examine
Aureus has suggested I write out the data instead of presenting it in the... way... I have done. Okay fine I can't remember how I did it, shut up.
But also, the Spawn awakes. So, bye!
Elapsed time: Maybe 1.5 hours.