HM-CODE / Haunted-Memories

A repository for Haunted Memories code.
http://www.haunted-memories.net/
BSD 3-Clause "New" or "Revised" License
4 stars 5 forks source link

+bonds/log misrecording times and rolls #81

Closed Bradamante closed 13 years ago

Bradamante commented 13 years ago

+bonds/log is misrecording times as 0s elapsed, preventing subsequent rolls from occurring. Additionally, +bonds/log does not always record roll results properly.

From Eckhart's log:

Apr 28 00:26 0s -2 Knave set the addiction rating to -2. Apr 22 19:04 0s -3 Knave set the addiction rating to -3.
Apr 22 16:44 0s 1299096018
Mar 2 13:00 0s 0 You drank vitae from Rebekka
Dec 31 17:00 222d -2 0:You drank vitae from Jazz

From Etain's log:

Mar 12 20:54 0s None 7:Briar and Tyrone are shoving blood at each other while Mimi plays private audience to
their antics. Maybe she might be able to
leap on one of them while they're
distracted. On second thought, suicide is
winter is so cliche. (Willpower used.)
Dec 31 17:00 222d

hmmorpheus commented 13 years ago

Without digging at the code right this second I believe this is stemming from the conversion between real time and IC time with regards to the seconds elapsed problem. With regards to "not recording results properly" do we have any examples of this somewhere or particular players I should talk to about it to help pin what's happening down?

Bradamante commented 13 years ago

Pointed Morpheus at +bonds/log Etain, since it wasn't clear in the initial bit that that was the glitch instead of just a cutoff.

Bradamante commented 13 years ago

Additional player example is Rutger:

=======< Haunted Memories -- Rutger's Vitae Addiction Resistance Log >======== Date - Time Elapsed Addiction Comments Jul 27 04:49 0s 1311767001
Jul 27 04:43 0s 0 You drank vitae from Selma

Jul 27 04:43 0s -4 \Don't even know I'm an addict. Raw Dice: 6 Rerolls: Successes: 0

hmmorpheus commented 13 years ago

I know what the problem is with the 'time elapsed' thing. When I wrote the code for some reason I had it record the times in secs() rather than vsecs(). The code really doesn't need to know nor should particularly care what the OOC time is/was, it should all be IC. So I'm going to have to go through and switch it out and tidy it up so that it remembers time in IC only.

hmmorpheus commented 13 years ago

The blank line in Etain's log is due to an errant | on the end of single entry present. As | separates the list this makes the code think there's 2 entries when there's not. The fix for her is simply removing the errant |. I'll squint at the code to see how it got there in the first place.

hmmorpheus commented 13 years ago

Problems presently fixed:

hmmorpheus commented 13 years ago

As per bboard 2 I've fixed these issues and even went through all the bonds vouchers and current entries I could find and fixed those manually too. Still need to know how you guys want me to use this in order to close this out 'officially'.

hmmorpheus commented 13 years ago

Altered the following items:

3250/c.vitae.transfer

21384/c.bonds

21384/c.bonds.adjust

21384/c.addiction.adjust

21378/c.bonds

21378/c.bonds.log

21378/c.addiction.adjust

For the main part the alteration was switching secs() to vsecs() to eliminate the elapsed time problem, coupled with switching from singletime() to first(exptime()) to get around singletime() not acknowledging years.

The player side +bonds and +bonds/log information has been altered so that it does not display the 'elapsed time' on their end. This is in response to a player pointing out that it was unfair that the thrall players should codely know when they were last fed when the regnants do not. Live side testing shows that the code is operating as intended at this time.