Welcome, Guest. Please login or register.
Did you miss your activation email?
November 25, 2024, 05:48:07 pm *

Login with username, password and session length
Pages: 1 2 3 4 [5] 6 7 8 9
Print
Author Topic: Waypoints (Merged)  (Read 54663 times)
Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #60 on: March 08, 2013, 05:56:39 am »

This would work quite well.

Since the Guild Leader is sending the invite AND assigning the friend to the guild instance id, only the invited/assigned players could type in the guild id number to join. Players not invited (assigned) yet wouldn't be able to zone to that instance.

I think this would completely remove the need for qglobals to be used in a special guild invite.

Would there be a remove option? And the player gets the popup window with ok button that say "Guild X has removed you from the instance in $zonesn" ?

Any way to get some type of array of players that have been invited or clicked yes on popup window?

Some good ideas of players working together.

The way pop up windows works is this, found on changelog.txt

==11/27/2012==
https://raw.github.com/EQEmu/Server/master/changelog.txt

Code:
Akkadius: Added $client->SignalClient($data), it uses the client as the initiator and the client that gets sent the data, good for entity_list iterations through client
Akkadius: Added cross zone client signalling capability by character ID: quest::crosszonesignalclientbycharid(char_id, data);
Akkadius: Added cross zone client signalling capability by character Name: quest::crosszonesignalclientbyname(Name, data);
Akkadius: Added cross zone client messaging capability by character Name: quest::crosszonemessageplayerbyname(Type, Name, Message);

And now that I'm looking at that, seems this might be useful, haven't tried yet, but I can think of a million possiblities:

Code:
Exported $client->AddAlternateCurrencyValue(currency_id, amount); originally created by KLS

Might be able to use that instead of qglobals for instance prices. Need to find other commands for it, like Get->

Seems we might have a new instance code for EZ Server soon.
Logged

Hunter - EZ Server GM
Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #61 on: March 08, 2013, 06:05:36 am »

Was thinking about making a 30 minute cool down timer for players creating ANOTHER instance of the same zone, to prevent the people trying to exploit getting a rare spawn to appear from a spawngroup. Joining instances would be no timers, just creating it and for same zone. I'm sure there could be compromise too, such as reduced instance price, etc.

For players that like to clear the whole zone and then make a new instance, I'm sure this 30 minute timer wouldn't affect them much if at all. Although I'm sure there is bound to be someone butthurt about it.

From experimenting with instances, seems to be 1 out of 10 instances doesn't see any qglobals, such as if you already have instance, or have a balance on waypoint, etc, which would give the appearance of your Waypoint balance disappearing, at which point if you add more money, it overwrites your real balance that you would have seen if going back to public zone or different zone. If it shows 0, then you really have 0 balance, but if the 0 doesn't even show up, then it means its not seeing the qglobal, which I don't think is npc issue, its a zone issue/bug since same problem with player.pl as the waypoint.pl

Would love players to start posting the Waypoint code they wrote up, or stole to modify, so we can all discuss and improve it. Heck, after we prefect it, even post it on eqemu forums for other servers to take advantage of. Of course give Akkadius credit for being the first to write up the code, and using his code to build on.

My final preference would be to not use plugins if can help it, just make sub fuctions at bottom of the script (you can copy them from the plugin file, and paste at the bottom of the waypoint script, then instead of using plugin::name(); would just be name(); this way just 1 file for the whole waypoint system and not have to worry about having the plugin or if the plugin is up to date. I know some devs might get mad, they love plugins Smiley
Logged

Hunter - EZ Server GM
Rageful
Full Member
***
Posts: 164


View Profile
« Reply #62 on: March 08, 2013, 06:43:46 am »

That 30 min idea could not be applied to Abyss. When you are at 97/100 boss's and you only need to kill warboars or whatever. It takes all but a couple minutes to be disappointed then you try again. I remember clearing warboars over 70 times b4 I got Widow Maker to spawn.

Think about it please  Tongue
Logged
Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #63 on: March 08, 2013, 06:47:13 am »

I could make it differnt time per zone, and Abyss doesn't need a time.
Logged

Hunter - EZ Server GM
Brokyn
Sr. Member
****
Posts: 405

Artificial intelligence beats real stupidity


View Profile
« Reply #64 on: March 08, 2013, 06:51:06 am »

Really, most of the custom zones have no place holders for mobs (tofs being an exception) so there is no real benefit to restricting instance creation.  Nobody is spamming the instance to get a named to spawn.  They are re-creating when they are done with the content they are after.
Logged

We have enough youth, how about a fountain of smart?
Natedog
Master
******
Posts: 830


View Profile
« Reply #65 on: March 08, 2013, 06:51:58 am »




Instead of a "Popup" -- I now use that neato little client message from another client!
Logged

Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #66 on: March 08, 2013, 07:13:08 am »

To be clear, the 71/72 numbers is the instance id? And the 2 is the guild id?
Logged

Hunter - EZ Server GM
Natedog
Master
******
Posts: 830


View Profile
« Reply #67 on: March 08, 2013, 07:16:13 am »

Aye 71 / 72 is the instance ID


2 is the guild ID for Natedog the player that invited .... Paldailtwo



So #raidzone Natedog -- will take that toon to instance (71)


#guildzone 2  -- will take that toon to instance (72)
Logged

Natedog
Master
******
Posts: 830


View Profile
« Reply #68 on: March 08, 2013, 07:23:23 am »

I am really really tired!


I have my code finished for now... at least what I can think of currently.. my brain kinda hurts.

If anyone wants to test this crap... you can log into my test server  (Natedog Playhouse HoT-Rof)


Commands .....

#testme   == Max level and 1000 plat

#helpcustom  == Instance Help

instance == instance text


Hand some money to the "Temporal Rift" --- for Credits --- or buy the   "Summon:Rift" from the Noobie vendor ... which is  "Free Instances"


If you have time to waste.. and can log in more than 1 toon you can try the custom invite commands too once you have an instance of that zone...

#raidi Playername

#guildi Playername


.. time for sleep now  Grin Grin

Logged

Mattnaik
Full Member
***
Posts: 202



View Profile
« Reply #69 on: March 08, 2013, 07:24:43 am »

I'm curious on why we are concerned about instance spam. Is it the creation of an instance that causes the extensive resource use? You can only ever have one instance per guild existing so it's not like there are a bunch of orphaned unused instances out there.
Logged

Hulkmad
Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #70 on: March 08, 2013, 08:51:31 am »

Instance spam has a few issues.

1) We have limited number of dynamic zones preloaded in RAM which is required for each instance. Re-creating instances does not affect this, as one dynamic zone.exe will become empty, and the next available one will become used. Imagine if every player online sat in their own private instance, we'd run out of available dynamic zones to use. Using one instance for several players such as group/guild instance helps to reduce the dynamics zones used vs online population ratio.

2) Players spamming new instances every few minutes in attempting to get a rare spawn to appear instead of the place holder. This is sort of exploiting and not intended for game play. Prices hopefully help to discourage this tactic.

3) Due to limited dynamics / instances its possible for the same ID to get created/used by 2 different guilds, resulting with players ending up in each others instances, in which case you'd have to exit/delete then recreate. Hopefully this problem is rare.

Logged

Hunter - EZ Server GM
Hunter
EZ Server GM
Legend
*******
Posts: 8100


EZ Server GM


View Profile
« Reply #71 on: March 08, 2013, 09:05:40 am »

Seems that quest::AssignToInstance($InstanceID); needs to be run by the person joining, not the leader doing the invite.

Best way obviously is through client signal event.

If we universally start using $InstanceID = $signal then how can we filter which signals are instance invites, and which are not in the future for other custom stuff we make?

Qglobals could bridge that gap I'm guessing. Ok, starting to get complicated here...

Maybe the Guild Leader can make a qglobal type 7 for all players/npc/zone.

The qglobal `name` field could be Leader $name concat with some word like "_InstLeader". i.e. $qglobalname = $name . "_InstLeader";

Then the `value` of the qglobal could be the instance ID concat with zone name $zonesn. i.e. $value = $InstanceID . $zonesn;

Then would need to parse the numbers from the letters, aka the zone id from the zone short name. If the player is currently in the same zone as the instance was intended, then assign instance id to player for that zone.

I think it would be cleaner and easier for a yes/no pop up window to be where the new member accepts to get assigned/ported all-in-one. If they leave the zone, then only way back in is another #invite or to get rez'd back in, of which either I think is easy and shouldn't have to complain about. This way players can't try to exploit #join instance commands or need qglobals. Popup allows completely avoiding qglobals, and just assign/move commands.

Been up all day, hopefully this makes sense. Not even going to try and write/test this yet until tomorrow so then I'll have the time and concentration to understand/finish the code.

Thanks everyone for help as always!
« Last Edit: March 08, 2013, 09:08:10 am by Hunter » Logged

Hunter - EZ Server GM
Rageful
Full Member
***
Posts: 164


View Profile
« Reply #72 on: March 08, 2013, 03:09:27 pm »

Myself and a couple others went to Nate's server yesterday and his code seems to work quite well. With his system of accepting through command allows players to /bca accept the invitation all at once. With the popup idea we will have to click yes on every toon. I encourage you to go on Nate's server for yourself Hunter and let him show you what he did.
Logged
GebbonEQ
Newbie
*
Posts: 37


View Profile
« Reply #73 on: March 08, 2013, 04:47:23 pm »

No to the Yes/No popups.  Will suck for 18+ characters.  Respawning zones has been a staple for far too long, changing that now would result in alot of upset players that purchased the FWP for those reasons.  Is there a way to make the instances "kill itself" after being unused for a certain amount of time?
Logged
Natedog
Master
******
Posts: 830


View Profile
« Reply #74 on: March 08, 2013, 05:07:26 pm »

I actually removed the popup idea because it lead to  "intercepting" raid and guild instance IDs.


Now the player is sent JUST the signal ....that signal gives them the invite to the instance... and it gives them a text prompt that they have been invited to "Soandso's" instance.


This is only for Raid instances  // Special Out of Guild Invites to Guild instances


If you are in the Guild and you want to go to your own guild instance .. its just the same as on EZ ... /say Enter Guild ...

Logged

Pages: 1 2 3 4 [5] 6 7 8 9
Print
Jump to:  

Recent

Stats

Members
  • Total Members: 6156
  • Latest: Rin1
Stats
  • Total Posts: 65127
  • Total Topics: 5066
  • Online Today: 407
  • Online Ever: 8678
  • (December 19, 2022, 02:32:09 pm)
Users Online
Users: 3
Guests: 348
Total: 351
TinyPortal v1.0 beta 4 © Bloc