if a RealTime Clock triggers in a forest and nobody sees it, does it really happen?

RTCs don’t register on Alalytics Devices?
As mentioned above, I did that 10pm PST test, and waited a couple days (waited for the logs to update on Creator Portal) to see if my analytics devices fired , and it doesn’t seem as if any did. Going to run another test today, calling it noon (hopefully it doesn’t take four hours to clear the update). Added two additional analytics device to see if the VFX spawner activates, in case the binding on the clocks doesn’t work.
But it’s something else to check, ideally.

Edit: To be clear, as a developer, I don’t expect there to ANY events logged in analytics if there is NOBODY online when they “should have” triggered. I don’t expect to burn server time checking to see if something mattered or not, if there’s nobody there. But when someone IS or if they DO show up late, it should check the clocks and validate whether or not states are correct. For correct gameplay. Let me lay out a couple scenarios

  1. if no island loaded, no players, Do nothing. no clock updates. No analytics events submitted. totally understood.
  2. (current behavior) clocks register when there’s a valid island loaded, with valid players, and analytics fire when TimeReached and when DurationElapsed (not working?)
  3. I realize this is a lot to ask, but it’s how I’d expect the system to work…
    1. On GameStart (not round start or end, which also breaks clocks) check clocks for valid time/date
    2. Check clock durations, and do the math to see if, including duration, any should be activated, even if they fired in the past.
    3. TimeReached on all clocks that have relevant durations subtract “past” time from duration to get a proper new end time
    4. Submit events.
    5. update all clock timers to display the next activation countdown.

the Main Reason I even wrote the above is to clarify that I don’t expect analytics events to be constant or consistent. If they were, you’d see a very rhythmic pattern of events.
Every island that’s running would basically have 2 events fire every minute for 15 minutes every hour.

Every island that starts late, not on the hour, would have nothing logged, but then begin rhythmic event pulses as above when the next hour comes around.

Every island that starts IN THE WINDOW would have a burst of potentially 5 or 6 events fire initially (as it catches up with valid state), and then settle into the 2-event-per-minute for whatever remains of that 15-minute window.

^ generalizations re: 2 events, sometimes 1, sometimes 5, if it’s four minutes in, and we’re enabling/disabling additional vfx tests, etc. Avg analytics would be 2 per minute as we TimeReached on a new clock and DurationElapsed on a previous one.

Anyway… submitted, hopefully new version will be approved before noon so I can test analytics again as the clocks trigger for the first time with updated dates.

cool. rejected for gambling references?
never. Guess I’m appealing.

Will re-clock for 6pm or something and resubmit in the meantime. not waiting for sanction process on a federal holiday.

edit:
Lots of user frustration with situations like this, getting rejected with vague reasons, especially when there are no references, and nothing substantial has changed other than these realtime clocks.
Also, the Sanctions page is kind of buried and hard to remember how to get to. I check email on my phone and dev on my computer. because reasons.
There should be a valid reason and a link to appeals site from the creator portal publishing page.
Instead I have this.


Edit:
submitting appeal:

cool.

image

Edit edit:
it’s now signed me out of the appeals page and clicking the sign in button does nothing.
Checked and I can still be logged into publishing portal/forums/etc (obviously).

OMG now I’m getting a profanity notice?

At least I’m getting a file name this time. MasonConversation1 node 11. let’s go.
Is it this?

I’ll change “jerks” to “neer-do-wells” (edit: changed it to villains)?

I feel like I’m being targeted. this is nonsense.

also, I don’t even know if this is what it was talking about… the file referenced doesn’t even have an editable data? I can’t change “defaultMessage” that’s just a conversation node, right? It’s not even Speech.

image

it’s been unchanged since July.

editing instead of replying contextually:
fffrrrrriiiiicccttttiiiiiooooonnn.
Why is it testing verse and transactions when I have neither in my islands?


edit:
odds on it telling me again that I have my own indie IP drawings again next?
crossing fingers.

6 O’clock went as expected.
I stayed on for an hour to see it loop twice.
somewhat mid-stream VOD cue Twitch

What I should see (tomorrow or whenever it gets updated) from Analytics.

  • 2 activations each of 12, 3, 6, 9.
  • 2 duration ends each of 12, 3, 6, 9.
  • 2 activations of VFX emitter 3
  • 2 deactivations of VFX emitter 3.

What I expect to see

  • 2 activations of VFX emitter 3
  • 2 deactivations of VFX emitter 3.


it’s been over 24 hrs since I played and stuff was activated.
Maybe it’ll roll over at midnight? I’m not sure when creator portal analytics gets updated.

Wow what an eventful thread, Crazy that “Jerks’” was flagged as inappropriate considering light profanity (Gray area, and of course depends on words and context) is permitted. Perhaps “Jerks” is hateful and thus why you got a strike for it? See rule:

1.15.2 Language: Use of mild profanity and innuendo is permitted, but must not be frequent. Hateful or discriminatory language of any kind is not permitted. Sexual expletives of any kind are not permitted.

Now as far as the RTC, I hate to say it but until / if the device gets updated your best bet if you need it to show the next activation time for join-in-progress / post activation joining players, is to use dynamic text material and update that with verse / material parameters or billboard devices and set text on them from Verse. Use GetSecondsSinceEpoch()

Returns the number of seconds since January 1, 1970 UTC, ignoring leap seconds. I.e, this function implements Unix time. This function always returns the same value within the same transaction.

Use that to calculate the current date / time and the date time delta of the event you want to track. Use secondsInDay = t % 86400 to get the current time within the day.
Set your target time in seconds (for example target = 15*3600 + 30*60, which is 15:30 UTC / 3:30 PM UTC).
Store the previous tick’s value as lastSecondsInDay this will allow the event to trigger once.
Trigger the event only when the time crosses the target:

if secondsInDay >= target and lastSecondsInDay < target:
    trigger event

---- or ----

if target - secondsInDay <= 0 and LogicToFenceEvent = false:
    trigger event

In your loop that monitors (at min Sleep(1.0) haha in there btw) store the secondInDay → lastSecondsInDay

2 Likes

Appreciate the information!
I’m not using verse at all, currently. I can see how this would be a solid workaround, thanks.

in other news, analytics got updated.


date is attributed to the 17th, but I played on the 16th? however, if these are UMT times, perhaps 6pm PST - 7:30pm PST do actually constitute the 17th in GMT. Or is it just the case of “when the logs get published” vs “when the event happened”?
None of the clock-related logs are there, neither the VFX activating ones, nor the time/duration bound ones.
Is there any chance I have too many analytics devices? Would it not tell me that?
I’ll set up a test with a new one, new button, new fx activation switch and see if the switch and/or activation gets logged.

1 Like

In updating my clock array again, I mentioned the situation to Developer Assistant and it said that it’s a known limitation. Can we add this to the documentation?

It’s moderately frustrating that as I both had the Assistant walk me through my implementation before, and offer suggestions, previously, it never mentioned that it wouldn’t do what I wanted it to. It just agreed that it should work the way I expected it to.

Is it possible that the AI has been upgraded to know that this is a limitation? if so, that’s good.

It is gas lighting you, You told it “…settings are currently broken…” and it ran with it. If you had told it that you missed a check box (that doesn’t exist) it would probably say that was the reason all along :rofl:. That is the art of word predictions.

1 Like

that wouldn’t surprise me at all.
(edit: not a specific DA/epic comment, just general LLM anecdote)

Agreed not really on Epic, I noticed it because I’m believe the assistant is driven by OpenAI and I get the same results when I ask it non-UEFN questions over there haha. The Epic assistant is better at functional tasks vs tasks that require knowledge of the editor.