Jump to content

Nairol

Members
  • Content Count

    4
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Nairol

  • Rank
    Newbie
  1. 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
  2. +1 I would suggest adjusting the command as: .phase password set PASSWORD So that we can get a command, in case one forgets password as owner: .phase password list Not 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
  3. 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
  4. With 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. 4) Re-visit .ph set command list, allow phases to tag these timezones.
×