Jump to content

Discuss adding options for world grids


madmax

Recommended Posts

Source: https://github.com/mangoszero/server/issues/101

Currently the mangos core uses grids to detect where players are in the world and then spawn creatures/NPCs on the active grids.

Desired Outcome

All grids within a city remain active state if one player is at any location within the city. If no players are in a city then all the city grids move to idle state.

A player questing in elwynn forest will have the grid active they are on + one grid active around each side of that active grid at all times.

Options for the range of grids activated should be added to the mangosd.conf and options for keeping city wide area's active with/without players.

The definition of city I am using is pretty wide I also include in this definition Faction cities and sanctuary's. I have included some locations below up to Wrath [Mangos Two].

[Capital Cities]

This list would include:

Darnassus

Ironforge

Orgrimmar

Silvermoon City

Thunder Bluff

Undercity

Exodar

[sanctuaries] - Just a few for example

The Stair of Destiny

Shattrath City

Dalaran

Examples

A player is in Stormwind city trade district and all NPCs for Stormwind are spawned.

The player heads for the Stormwind gates to go to Elwynn forest, before he travels through the gates the server has already worked out he might be heading there and activated the Elwynn forest grid right outside the gate.

Link to comment
Share on other sites

  • 6 months later...

Can you explain the benefits of changing the system? I don't understand how it helps to keep grids active which aren't in use.

I've encountered times where going onto an inactive grid and NPCs taking a moment to spawn or being on a grid and seeing empty space on the grid beside you.

Link to comment
Share on other sites

The benefits are quite obvious. It would result in a much more lively and smoother word, especially for NPC patrols and events with a large scale which aren't active even though the player is in an adjacent grid.

This system might resolve some issues in the current system.

For example in the quest "Hints of a New Plague?" (some of you might still remember that quest) you've to find a courier, who patrols between the farm in the east of Arathi Highlands and Tarrens Mill in Hillsbrad Foothills. Now, in the current system, if you have the glorious idea to wait at the farm until the courier arrives by herself then you wait in certain circumstances an eternity, because she will never arrive, since she is in a inactive grid and won't move until someone enters the grid to activate it.

Another example would be the Deeprun Tram between Stormwind and Ironforge. If you enter the station at one entrance you'll activate the tram at your side, but the other will never move, unless you ride with your tram the whole way to the other entrance. At this point both trams will move until the grid unloads.

And the last example would be the Fel Reaver on the Hellfire Peninsula. He likes to smash careless questers from behind. But right now you may never run into him, because he might be in a grid, which is not visited often by a player and he might actually never walk across the entire zone, because he's frozen in an unloaded grid.

Link to comment
Share on other sites

The Deeprun tram is a very special case.

Personally I feel the Deeprun tram should be one of the few zones that never unload - once the server is running the tram cars start from either end going back and forth without the need for a player to start them. Very often on official servers I have entered the tram and neither car be at the platform because it is travelling between the two stations.

I always felt that certain NPCs should be able to be given a special flag that causes THEM to activate the grid. The Fel Reaver mentioned above would be a great example.

This would allow such NPCs to activate grids like players and travel between them.

I like this idea better then others suggested because it seems to me much more likely to be what Blizzard would of done on the official servers. I know TheLuda's idea was to have NPCs state saved so when you enter a zone the server calculates where they were and has them continue from that point but to me that does not feel bliz-like.

I think we are all in agreement we want to make the system feel as blizzard-like as possible?

Link to comment
Share on other sites

  • 2 months later...
The Deeprun tram is a very special case.

Personally I feel the Deeprun tram should be one of the few zones that never unload - once the server is running the tram cars start from either end going back and forth without the need for a player to start them. Very often on official servers I have entered the tram and neither car be at the platform because it is travelling between the two stations.

I always felt that certain NPCs should be able to be given a special flag that causes THEM to activate the grid. The Fel Reaver mentioned above would be a great example.

This would allow such NPCs to activate grids like players and travel between them.

I like this idea better then others suggested because it seems to me much more likely to be what Blizzard would of done on the official servers. I know TheLuda's idea was to have NPCs state saved so when you enter a zone the server calculates where they were and has them continue from that point but to me that does not feel bliz-like.

I think we are all in agreement we want to make the system feel as blizzard-like as possible?

I agree, I believe a flag system would be a more realistic way to handle this. Granted, I currently have no idea how to go about this atm but I'm hoping to be up to speed soon. ;)

Link to comment
Share on other sites

faramir's work on the map system should have addressed this years ago. I would approach with caution altering the work done on grids.

That said, adding a special flag to an NPC to keep a grid active is a hack and should not be used, not matter if it does achieve what is percieved to be "retail-like" behavior. At best, any such code should be commented as a workaround until a more proper implementation is developed. If I'm wrong, then show me the parsed data that supports your idea.

It should also be an optional setting in mangosd.conf as this would place a greater load on servers some admins would prefer not to have. Most MaNGOS servers are run on spare systems that are at least a few years out of date, so always assume "low-spec" when implementing features.

MaNGOS has standards we must keep because it is one of the things that has always set us apart from the "other guys".

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use