|
View Poll Results: Translocator ideas | |||
I support the idea of a zone wide shout indicating spawn of the translocator | 27 | 13.99% | |
I'm opposed to an NPC shout, not classic, don't do it! | 10 | 5.18% | |
Keep the translocators up full time, this is lame | 107 | 55.44% | |
Have them up all the time but only port every 10-15 minutes. | 19 | 9.84% | |
I like it the way it is, don't change. | 25 | 12.95% | |
I have another idea! Post below. | 5 | 2.59% | |
Voters: 193. You may not vote on this poll |
|
Thread Tools | Display Modes |
#12
|
|||
|
I voted for I have another idea! Post below..
Ridable boats are actually something that are workable*, by perl code and db work. We got a chance to delve into these for a bit, and modified the current boat code (written by Angelox) to suite our needs in a couple of locations (thx aeolwind). Due to lots of private messages regarding how coders can help, this seems like an appropriate situation! The following information is dedicated to purely technical details. If you are interested in how boats can* work, continue reading. I am not suggesting you make any modifications to what you currently have. The old model boats (race 72 [You must be logged in to view images. Log in or Register.] )are hollow on the client, which I believe is an issue relating to Directx. This is also why the Translocators initially appeared on live eq. In response to this, you can force another model into a zone that isn't hollow. This one works well. (Yes, its a downgrade from a ship, lol :T ) [You must be logged in to view images. Log in or Register.] This model can be force loaded into zones by modifying globalload.txt and adding a line to the top. Here's what mine looks like. (Under no circumstances am I suggesting you change your globalload.txt file for this. I am merely explaining the difficulties in boat making. You will not receive a res if you try and ride these and go missing in the ocean.) Code:
1,0,TFFF,erudnext_chr,Loading Characters 1,1,TFFF,GlobalFroglok_chr,Loading Froglok Here's some of the perl code from freporte. Code:
## BOAT WATCHER!! ## SirensBane travels from oot to oot to freporte and back ## Angelox ## Qadar sub EVENT_SPAWN { ## Starts in Oot # --- START CODE FOR BOAT MOVER --- # if($debugpl) {quest::shout("I currently see Stormbreaker's position set at $sirens");} if($forceboats){ if($freportelastseen==$sirens){ #boat hasnt changed waypoints yet $butcherstart = 0; # what $sirens is set at to start the boat in Butcher $oot1start = 14; # what $sirens is set at to start the boat in OOT to Freeport $fpstart = 39; # what $sirens is set at to start the boat in Freeport $oot2start= 60; # what $sirens is set at to start the boat in OOT heading to Butcher $oot1wait = 40; # number of spawns before it assumes boat in OOT to FP is stuck $fpwait = 40; # number of spawns before it assumes boat in FP is stuck $oot2wait = 40; # number of spawns before it assumes boat in OOT to Butcher is stuck $butcherwait = 40; # number of spawns before it assumes boat in Butcher is stuck if(($sirens>=$oot1start) && ($sirens < $fpstart) && ($freportetimer >= $oot1wait)){ #if waypoint hasnt changed in x spawns, and boat in oot on its way to fp if($debugpl){quest::shout("Stormbreaker is in OOT heading to Freeport, hasn't moved, giving up and moving it to Freeport");} quest::delglobal("sirens"); #boat obviously isnt moving... move it to fp quest::setglobal("sirens",$fpstart,7,"F");} elsif(($sirens>=$fpstart) && ($sirens < $oot2start) && ($freportetimer >= $fpwait)){ #if waypoint hasnt changed in x spawns, and boat in freeport if($debugpl){quest::shout("Stormbreaker is in Freeport, hasnt moved, giving up and moving it to OOT");} quest::delglobal("sirens"); #boat obviously isnt moving... move it to oot quest::setglobal("sirens",$oot2start,7,"F");} elsif(($sirens>=$oot2start) && ($freportetimer >= $oot2wait)){ #if waypoint hasnt changed in x spawns, and boat in oot on its way to bb if($debugpl){quest::shout("Stormbreaker is in OOT heading to Butcher... hasnt moved, giving up and moving it to butcher");} quest::delglobal("sirens"); #boat obviously isnt moving... move it to butcher quest::setglobal("sirens",$butcherstart,7,"F");} elsif(($sirens>=$butcherstart) && ($sirens < $oot1start) && ($freportetimer >= $butcherwait)){ #if waypoint hasnt changed in 15 spawns, and boat in butcher on its way to freeport if($debugpl){quest::shout("Stormbreaker is in Butcher heading to OOT... hasnt moved, giving up and moving it to OOT");} quest::delglobal("sirens"); #boat obviously isnt moving... move it to OOT quest::setglobal("sirens",$oot1start,7,"F");} else{ #increase the timer $tempvar = $freportetimer+1; if($debugpl){quest::shout("Stormbreaker hasn't moved, increasing timer to $tempvar");} quest::delglobal("freportetimer"); quest::setglobal("freportetimer",$tempvar,3,"F");} }else{ #boat has changed waypoints, tell freportelastseen its new waypoint, reset timer to 0 if($debugpl){quest::shout("Stormbreaker seems to be moving ok");} quest::delglobal("freportelastseen"); quest::setglobal("freportelastseen",$sirens,3,F); $freportelastseen = undef; quest::delglobal("freportetimer"); quest::setglobal("freportetimer",0,3,7); $freportetimer = undef;}} # --- END : CODE FOR BOAT MOVER --- # if (($sirens ==39) &&($sirens >=39) && ($sirens <=59)){ ##Oot quest::spawn_condition(freporte,2,0); #BoatThere quest::spawn_condition(freporte,1,1); # quest::shout ("Boat there"); quest::depop();} else{ quest::spawn_condition(freporte,2,1); #BoatGone quest::spawn_condition(freporte,1,0); # quest::shout ("Not there"); quest::depop();}} Code:
# Zone to Oot SirensBane event # Zone: FreportE # AngeloX # Qadar sub EVENT_SPAWN{ $x = $npc->GetX(); $y = $npc->GetY(); quest::set_proximity($x - 100, $x + 100, $y - 100, $y + 100);} sub EVENT_ENTER{ if (($sirens >=53) && ($sirens <=60.5)){ if($sirens != 60.5){ quest::delglobal("sirens"); quest::setglobal("sirens",60,7,"F");} if($debugpl){ quest::shout("Zoning PC's to Oot Setting to 60!!!");} quest::movepc(69,-10583.5,-3169.7,19.0);}} Code:
## SirensBane travels from oot to oot to freporte and back ## Angelox ## Qadar sub EVENT_DEATH { if(($sirens < 60) && ($sirens > 0)){ if($debugpl){quest::shout("Zoning out!");} quest::delglobal("sirens"); quest::setglobal("sirens",60,7,"F"); $sirens=undef;} } sub EVENT_WAYPOINT { ## In freporte > Butcher ####################### In freporte >Oot ################# if ($sirens ==40){ if($debugpl){quest::shout("telling 10183 to depop");} quest::signal(10183); if($debugpl){quest::shout ("ZONEING in From oot setting 41");} quest::delglobal("sirens"); quest::setglobal("sirens",41,7,"F"); $sirens=undef;} elsif($sirens==41){ quest::delglobal("sirens"); quest::setglobal("sirens",42,7,"F"); $sirens=undef;} elsif($sirens==42){ if($debugpl){quest::shout ("Setting 43");} quest::delglobal("sirens"); quest::setglobal("sirens",43,7,"F"); $sirens=undef;} elsif($sirens==43){ quest::delglobal("sirens"); quest::setglobal("sirens",44,7,"F"); $sirens=undef;} elsif($sirens==44){ quest::delglobal("sirens"); quest::setglobal("sirens",45,7,"F"); $sirens=undef;} elsif($sirens==45){ quest::delglobal("sirens"); quest::setglobal("sirens",46,7,"F"); $sirens=undef;} elsif($sirens==46){ quest::delglobal("sirens"); quest::setglobal("sirens",47,7,"F"); $sirens=undef;} elsif($sirens==47){ quest::delglobal("sirens"); quest::setglobal("sirens",48,7,"F"); $sirens=undef;} elsif ($sirens==48){ quest::delglobal("sirens"); quest::setglobal("sirens",49,7,"F"); $sirens=undef;} elsif ($sirens==49){ quest::delglobal("sirens"); quest::setglobal("sirens",50,7,"F"); $sirens=undef;} elsif($sirens==50){ quest::delglobal("sirens"); if($debugpl){quest::shout ("SET 50)");} quest::setglobal("sirens",51,7,"F"); $sirens=undef;} elsif($sirens==51){ quest::delglobal("sirens"); quest::setglobal("sirens",52,7,"F"); $sirens=undef;} elsif($sirens==52){ if($debugpl){quest::shout ("Setting 53");} quest::delglobal("sirens"); quest::setglobal("sirens",53,7,"F"); $sirens=undef;} elsif($sirens==53){ quest::delglobal("sirens"); quest::setglobal("sirens",54,7,"F"); $sirens=undef;} elsif ($sirens==54){ quest::delglobal("sirens"); quest::setglobal("sirens",55,7,"F"); $sirens=undef;} elsif ($sirens==55){ ##### TIMER ### if($debugpl){quest::shout ("Near ZoneLine Set 56!)");} quest::delglobal("sirens"); quest::setglobal("sirens",56,7,"F"); $sirens=undef;} elsif($sirens==56){ quest::delglobal("sirens"); quest::setglobal("sirens",57,7,"F"); $sirens=undef;} elsif($sirens==57){ quest::delglobal("sirens"); quest::setglobal("sirens",58,7,"F"); $sirens=undef;} } | ||
Last edited by nilbog; 11-23-2009 at 03:59 PM..
|
|
#13
|
|||
|
The boats were always a huge time sink like so many other things in EQ. In some ways it added to the "realism" in the sense that travel to other continents took time. I get it, it made sense. Huge time sinks are not what made EQ an epic game. I hope we can agree on that.
It also added to the whole need to organize and socialize when planning out the evening's activities, be it quests, grouping, whatever. In my opinion porting is still useful, (particularly when looking at the size of the main continent alone) but this added even more value to porting. All that being said, the current population is so small that expecting to be able to buy a ride when you need one is not always going to happen, it just isn't. If I was playing a druid wizard with 2 hours a day to play and trying to reach 50 before Kunark is released I'm not leaving my group to port a stranger. I'm a nice guy and all but sorry, the fake money isn't worth my time. There are indeed quests that were created with the idea that having to use boats will make it take longer (Stein of Mogguk among others), thereby increasing the value of the reward. To that I say this, so be it. Let the value drop on the Stein. I'm saying this as an enchanter by the way. The same thing happened on live albeit much later. Many of the other quests are for class specific items that aren't usually sold anyway. I would much prefer the translocators be there all the time but in the interest of keeping the classic feel I voted for the zonewide shout instead. In all honesty nobody should be made to do nothing in a game for 20 minutes when most of us barely have the time to log in an hour or two a night. At least with the shout you don't have to be sitting on the dock (no I am not interested in fishing). Also back in the day people did indeed /shout when the boat was coming as a courtesy, at least on my server they did. In short, please use the zone wide shout idea if the current setup is here to stay. At least give us that. It doesn't make the wait any less, it merely simulates a larger server population. | ||
|
#14
|
|||
|
^^^ I approve of this message.
In all honesty I think the perma-transports should be kept for now pending both a higher server population and good reliable boat code. If there is a small amount of quests you can mitigate potential issues in any number of ways to keep them from being exploited while keeping them in the game namely by changing rewards to no-drop, reducing exp, making non repeatable, and devaluing the item to vendors. Or just move the quest NPC's a bit deeper inland on their respective continents. For example a Kaladim to Freeport quest you could change to Kelethin to Oasis or something like that. | ||
|
#15
|
||||
|
Quote:
| |||
|
#16
|
|||
|
It's an unnecessary time sink.
If you would get the boats working, cool. I'd be for it. With the population, it's fairly hard to find someone to port on a moment's whim. Ever been in Oasis and looking to join a group in Mistmoore as an evil race? It sucks, especially with the placement of the translocators in some instances. I've had to run to the translocator on Sister Isle once in a mad dash, due to gaining aggro. | ||
|
#17
|
|||
|
get boats working
It is not vital that we be able to move around Norrath on a whim. Travel doesn't have to be easy, in order for the game to be good. It also doesn't have to be quick, in order for the game to be good.
I agree with Aeolwind that our goal here is to recreate classic EQ as best we can. We should try to get the boats working, and if we can't get that, then let's simulate the travel time that was needed back in 1999 as best we can. This is why I like Aeolwind's present solution; at least it's sort of like having to wait for a boat. A better solution, though, would be to pursue Nilbog's ideas for a perl script for boats. Not all wizards and druids are rushing to get to 50 for Kunark, or for other reasons. If boats or travel time were a real part of our server, you would see many more teleporters around earning money like they did back in classic, particularly lower level druids who might want more cash. Right now, travel is too easy, and these classes feel it is not worth their while to offer ports for extensive periods. | ||
|
#18
|
||||
|
Quote:
But in any case, that's why I voted to keep the TL's on a timer (thus recreating the time sink)but add the zonewide shout (simulating a larger server population) in an attempt to keep things feeling classic (till boats work anyway). I know I added to much rant and not enough point... I do that alot. =/ But honestly, that's how I voted. | |||
|
#19
|
||||
|
Quote:
| |||
|
#20
|
||||
|
Quote:
Later that day... "The death toll is currently at 278 and rising. We'll have more coverage on this day of infamy as the carnage continues. Back to you, Jim." | |||
|
|
|