Nairol
-
Content Count
4 -
Joined
-
Last visited
Posts posted by Nairol
-
-
+1
I would suggest adjusting the command as:
.phase password set PASSWORDSo that we can get a command, in case one forgets password as owner:
.phase password listNot to mention, it makes it easier to add future sub-commands to the Password list. A crude example:
.phase password setwhitelist PASSWORD
If player X, wants to enter a phase that they aren't whitelisted to. They essentially send a Request to all officers/Owner online at that moment for said phase. Working in similar fashion to when people want to .appear or .summon a player. Basically, it means you have 'two passwords' per phase. One that is specific to a whitelisted phase, and one that is default, Blacklist phase.
Text that can appear to officers/owners:
[PLAYER] could not appear to phase [Builder's Haven - 26000] because they aren't whitelisted. To add [PLAYER] to whitelist, write .phase whitelist add PLAYER or [COPY COMMAND].Not to mention:
.phase password remove PASSWORD -
Hi.
With the inclusion of the addon, Arcanum, in the official Epsilon package. We can suddenly automate a series of command in a simple manner. Which is GREAT!
But... I stumbled upon an issue that I feel could be fixed/become a feature. An ability to copy the npc ID and keep it cross phase.
For example... How I want it to work;
1) Select NPC, or command that selects the nearest NPC, .npc sel near
2) Click Arcanum Cast
A> .npc go
B> .npc copy setvariable Z
C> .ph e X
D> .npc spawn variable Z
E> .ph e Y
3) Repeat
Today, step 2B and step 2D doesn't work. You have to manually input or click to accomplish this.
Basically, the command allow the player to set a variable to save a given NPC SpawnID into. Then the player can extract that onto a NPC spawn command. A bit like a lot of manual calculators store calculations into 'ans'.
But it is up to you, if you want the player to be able to store multiple different Variables under different types of Variable definitions, or if a singular variable enough. I feel a singular variable string is enough.
Basically,
A new subcommand for .npc copy and .npc spawn.
.npc copy setvariable -> Creates a <NPC SpawnID> as a variable on the local/server side.
.npc spawn variable -> Pulls <NPC SpawnID> data from set variable, from local/server side.
Variable Should clear to 0 (or placeholder ID), whenever the player logs off.
In a way, this type of command allows a manual process of copying NPCs from starter phase onto a chosen phase. For example, wildlife npc's. And if you can then add more commands into the string, like setting a random movement pattern? We suddenly accelerate that process for players.
If one were to choose to allow a player to store multiple different Variables under different types of Variable definitions, I strongly suggest these are Pre-made/Set. For example, A0 to A9 allows 10 stored NPC ID. It prevents a player to be able to store a customized string that is 250 characters long.
Basic Calculator reference below...
https://media.discordapp.net/attachments/1135949613271089233/1135949627988922368/bild.png -
SpoilerWith that out of the way...
• Type of Bug:
Clock, Timezones, Syncing
• Description:
Server restarts/crashes causes .ph set time to fall out of sync.• Evidence (Chat message/Screenshot):
{ GameTime = time(nullptr); GameMSTime = getMSTime(); GameTimeSystemPoint = std::chrono::system_clock::now(); GameTimeSteadyPoint = std::chrono::steady_clock::now(); localtime_r(&GameTime, &DateTime); }
time_t gt = GameTime::GetGameTime(); const unsigned int time = (gt - (gt % 86400)) + (offset * 60); WorldPackets::Misc::LoginSetTimeSpeed loginSetTimeSpeed; loginSetTimeSpeed.NewSpeed = 0.01666667f; loginSetTimeSpeed.GameTime = time; loginSetTimeSpeed.ServerTime = time; loginSetTimeSpeed.GameTimeHolidayOffset = 0; loginSetTimeSpeed.ServerTimeHolidayOffset = 0; SendDirectMessage(loginSetTimeSpeed.Write()); if (permanent) m_timePermanent = offset; else m_timePermanent = -1;
• Steps to reproduce:
Can't. Based on Razmataz experience.• Expected result:
If I set a time, for example... .ph set (MyTime)
After a restart that lasts for 1 minute, and I re-join the phase. Clock should be (MyTime).
• Observed result:
Observed result tend to be (MyTime)-(Crashtime)• Reproduction rate:
100% in current state.• Additional information:
The discussion came up in tandem with me asking Razmataz how difficult it is to add time-zone tags to .ph set.
For example, setting my phase's time to follow GMT+/-0 through
• .ph set time GMT+0
• .ph set time GMT-0
In tandem with this, Razmataz had an outburst 'Scream'.
My suggestion was:
1) Polling script, that pulls time data from an external resource, for example... the Server Computer.
2) Assuming the polled data is a Constant, verify its set Timezone and calculate the rest timezones with addition(+) and substraction(-).
3) Create a tag-list with every timezone, UTC or GMT with the calculations. For example,
Timezone.Server = ServerTZ
Time.Server = ServerTClock
IF 12+(GMT-12) = ServerTZ THEN
GMT+1 = ServerTClock
ELSE
GMT+1 = ServerTZ+1
ServerTClock+(GMT+1)
END
Horrible attempt at Logic coding but, something like that. At least, it seemed to work in Excel. See below.Spoiler4) Re-visit .ph set command list, allow phases to tag these timezones.
.ph info to display phase description.
in The Suggestions Box
Posted
It doesn't display description today.
You have to enter the addon to easily see, what the current phase description is. Which is kinda bonkers.
It displays,
Massage of the day
phase name and number
owner
Members
in phase
object count
npc count
list type
starting location