• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Proposed changes to ship goods transfer time

LarryHookins

Buccaneer
Staff member
Storm Modder
While working on other problems in store.c I found an additional bug in the time-to-transfer-goods calculations.

Currently, the time it takes to load or unload a companion ship is based on the number of crew on that ship alone and the leadership skill of that companion.

I propose to use the entire crew from all your ships to calculate transfer time, and use the player character leadership modifier. We could possibly limit the number of crew available for loading goods to the max crew of the ship being loaded if people prefer that.

Since all ships will be loaded or unloaded in sequence, one at a time, it makes sense to put the entire squadron crew on the job. In reality there would probably be more than one ship loading at the same time, especially given that cranes were jury-rigged from the ship's spars so they didn't need additional equipment on the dock.

Here's an example of how much difference it can make. I have a companion ship that I've captured, running at about half crew. The captain of that ship has a leadership of 2. To completely empty that ship takes 23 hours. If it were at full crew, it would take 11 hours. Using all crew available (which was still lower than the max crew of that ship) and my player character's leadership of 10, it takes 3 hours.

If no one has any objections I'd like to submit this to Pieter for inclusion in the build. If anyone has any suggestions or comments, now is the time to make them.

Hook
 
Sounds good to me. While you're at it, could you also make it so the player isn't FORCED to wait that time, but can do other things during loading/unloading?
 
That's probably beyond my skills as a programmer. <img src="style_emoticons/<#EMO_DIR#>/smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" />

Since your own ship might be involved in a loading/unloading, you'd be stuck without your ship for however long it took. And it can take up to a maximum of 7 days.

It might be just as easy to disable the loading/unloading time by setting TIME_MOVEGOOD in InternalSettings.h to zero.

Hook
 
I was starting to have a muck around with this, but my knoledge of locators and area reload code is too limited.

Can anyone tell me how I'd identify the local ship boarding locator/reload point? And how you lock those reload points?

Thanks,
Jon A.
 
Ummm... JA, what they are discussing here has nothing to do with locators, but is regarding pure math functions that make the passage of time during loading and unloading of cargo occur.

Just so you understand.

Cap'n Drow
 
<!--quoteo(post=173455:date=Nov 26 2006, 03:18 PM:name=Pieter Boelen)--><div class='quotetop'>QUOTE(Pieter Boelen @ Nov 26 2006, 03:18 PM) [snapback]173455[/snapback]</div><div class='quotemain'><!--quotec-->
Sounds good to me. While you're at it, could you also make it so the player isn't FORCED to wait that time, but can do other things during loading/unloading?
<!--QuoteEnd--></div><!--QuoteEEnd-->

<!--quoteo(post=173455:date=Nov 26 2006, 03:18 PM:name=Hook)--><div class='quotetop'>QUOTE(Hook @ Nov 26 2006, 03:18 PM) [snapback]173455[/snapback]</div><div class='quotemain'><!--quotec-->
......
Since your own ship might be involved in a loading/unloading, you'd be stuck without your ship for however long it took. And it can take up to a maximum of 7 days.
<!--QuoteEnd--></div><!--QuoteEEnd-->

This would be a great feature when/if we had lots of stuff on land for the player to do in the meantime, send some of the crew on shore leave etc, gamble away the days with Maximus' new mod, visit the players farm/plantation, also wait for the blacksmith to finish fixing that barrel of weapons etc.

At the moment i'd imagine spending 7days stuck in one town would get a little frustrating! <img src="style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />

Programming wise what would you think it would involve? I was kinda just imagining a simple text dialogue "ok well its going to take {X} amount of days, come back on the {give date/time} and i should be finished"

All you need do then is have the port remain 'locked' untill that date? Heh heh - it sounds sooo easy when its written like that, but the reality code wise cant be that simple......can it?

Ref your 'fixing' Hook - sounds good to me also. This only effects ships you personaly own right? i'm thinking about quest companion ships and how(if) it effects those also.....although i think you cant do any cargo transfers with these ships?
 
I definately vote for adding Hooks cargo loading mod in the next build. It looks a much more reasonable way of calculating loading times.

@Cap'n Drow

My idea was that if the cargo had another 12 hours to load (or equally, you're ship had another 3 days to get repaired) the location where you board your ship would be locked, and maybe a message appear saying x hours(days) left loading cargo (repairing ship). That's why I need to know about location/locators and how to lock em. <img src="style_emoticons/<#EMO_DIR#>/icon_wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="icon_wink.gif" />

Basically what BlackBart said...

To stop this being too annoying, I'd add a dialog option to the tavern keeper to "Stay untill ship is loaded/repaired". So you could start repairing your ship, go do some stuff, then come back and "sleep" away the remaining time.

Obviously this could be turned off in buildsettings.h.

I won't be geting to this for a while though, so if someone else who knows how to lock locators want's to have a play with it, all the better.
 
I dunno, compared to this, being able to leave a blade at a blacksmith and go off and do other things while he's fixing it is trivial!

What happens if your ships are locked in transfer and you die? Or you do something that continues a quest where you need your ship. Or you have a ship repaired at the shipyard, which also takes time. Or you sell a ship that's locked in transfer. I can't even imagine all the things this might affect. That's a lot of complicated code for something that a lot of people would find annoying.

Quest companion ships would already be affected by the cargo transfer time. This will just use different numbers.

There is probably a bug in the cargo quest code for Sell All and Auto Trade if you have more than one ship. The current code will be checking for the quest attribute on each companion character, not your player character, if you have more than one ship involved. Maybe Hat can look at that when he gets back, as he's the one who wrote the fix for that.

I should probably ask how people feel about excluding cargo from the sell price hit you take when you sell a captured or pirated ship at the shipyard. Hat changed it so the cargo sale price took the same hit. I've changed it back so you get full price for cargo always. You can do any number of exploits to get full price for cargo even if cargo did take the hit on sales price, but it's a major pain. And currently if you sell your captured cargo at the store, the price doesn't take the same hit, which seems reasonable. For me, it's just an annoyance to have to visit the store to sell cargo before you visit the shipyard to sell a captured ship.

Hook
 
<!--quoteo(post=173506:date=Nov 26 2006, 10:35 PM:name=Hook)--><div class='quotetop'>QUOTE(Hook @ Nov 26 2006, 10:35 PM) [snapback]173506[/snapback]</div><div class='quotemain'><!--quotec-->
.....................

I should probably ask how people feel about excluding cargo from the sell price hit you take when you sell a captured or pirated ship at the shipyard.........

Hook
<!--QuoteEnd--></div><!--QuoteEEnd-->

I dont have a problem with it, if its all based on what you would be getting if you sold it personaly. Might be nice to give the shipyard a few coins for their part though? [log update(top left screen): 100 gold given to {name}] <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />

but then i like to be polite and give people their due - this might not be a very pirate like trait <img src="style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" /> I'm easy with it basicaly. I dont mind the loss now - or if it didnt happen, gold is not a worry in the game most of the time.


Ref the concerns on 'locking' the port for a time period. So are there any quest that are time sensitive? I know you have some that say they are. For example the dropping of of the english soldiers(escourt the Albion) at grey rock beach. It says to only do it at night etc - but i've slept in the tavern before and completed it the following day(in daylight). So what quests really do get broken by time? This is probably the biggest worry. If you die you die.....or maybe not if your on setting 1 for CCC survival mod.....hmm ok well wont the ship just be there when you next visit that shipyard? I would imagine you pay up front for the work - so that should avoid any not being able to pay worries....i guess like locking the port(for the ship concerned) you would need to lock certain functions of the shipyard also while a particular ship was getting repaired.

So yeah its starting to look like more work than a simple dialogue+port locator lock <img src="style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />
 
<!--quoteo(post=173510:date=Nov 26 2006, 05:29 PM:name=Black Bart)--><div class='quotetop'>QUOTE(Black Bart @ Nov 26 2006, 05:29 PM) [snapback]173510[/snapback]</div><div class='quotemain'><!--quotec-->I dont have a problem with it, if its all based on what you would be getting if you sold it personaly. Might be nice to give the shipyard a few coins for their part though?<!--QuoteEnd--></div><!--QuoteEEnd-->
That's basically what the game does now. It was Petros' complaints about not getting full price for the cargo that got me looking at the code.

We could give the shipwright a cut of the cargo sales price for the convenience of being able to sell the cargo with the ship, but does anyone want the hassle of having to go to the store first to get full price? I've done it so often that I'm getting a little tired of it.

Hook
 
JA: Okay, now I better understand why you were asking about the locators, etc. Thanks for clearing that up.

Hook: I generally go to the store and sell off all my cargo manually anyhow. I think it would be nice to get paid for your cargo if you sell the ship while its still on board, but I would also understand that the buyer of that ship would be getting a cut of my profits from the cargo, to act as the go-between for the merchants and me.

And just so I understand exactly what we are discussing, what code are we looking at in what files?

Thanks!

Cap'n Drow
 
<!--quoteo(post=173530:date=Nov 27 2006, 12:34 AM:name=Cap'n_Drow)--><div class='quotetop'>QUOTE(Cap'n_Drow @ Nov 27 2006, 12:34 AM) [snapback]173530[/snapback]</div><div class='quotemain'><!--quotec-->
... I generally go to the store and sell off all my cargo manually anyhow. <!--QuoteEnd--></div><!--QuoteEEnd-->
We all have, and all did, long ago.
<!--quoteo--><div class='quotetop'>QUOTE</div><div class='quotemain'><!--quotec-->
I think it would be nice to get paid for your cargo if you sell the ship while its still on board, <!--QuoteEnd--></div><!--QuoteEEnd-->

And that is why it was modded that way long ago, in Build 10 actually!
<!--quoteo--><div class='quotetop'>QUOTE</div><div class='quotemain'><!--quotec-->
but I would also understand that the buyer of that ship would be getting a cut of my profits from the cargo, to act as the go-between for the merchants and me. <!--QuoteEnd--></div><!--QuoteEEnd-->

But this would just be rationalizing why the mod doesn't and shouldn't work right anymore.
 
<!--quoteo(post=173530:date=Nov 26 2006, 11:34 PM:name=Cap'n_Drow)--><div class='quotetop'>QUOTE(Cap'n_Drow @ Nov 26 2006, 11:34 PM) [snapback]173530[/snapback]</div><div class='quotemain'><!--quotec-->And just so I understand exactly what we are discussing, what code are we looking at in what files?<!--QuoteEnd--></div><!--QuoteEEnd-->
This post:

<a href="http://www.piratesahoy.com/forum/index.php?showtopic=9022&st=60&p=173418&#entry173418" target="_blank">http://www.piratesahoy.com/forum/index.php...mp;#entry173418</a>

Hook
 
Hook: Sounds good.

What people should be made aware of though, before I adjusted that code to what it is now, the time to take for loading goods had the potential to take a YEAR for a massive ship with half crew and loading up enough gunpowder to handle the ammo you purchased too. I am not kidding on that, a YEAR.

I only fixed that runaway timewaster. I didn't go further to think maybe 'the fleet' crew could all work on it too, so that is a good idea, and a good fix to make.

In regards to locking your ship so you can go do other things? wtf for? My take on the 'times' spent repairing, transfering goods, or hiring crew, is extra stupidity added into the game by people who don't have a clear grasp of gameplay. What is the point of it? Nothing, it simply adjusts the clock. Big woop. But pondering adding a lock so you can't use your ship during these periods? Good grief.


<i>(I am still on vacation, just popping online to see whats going on)</i>
 
<!--quoteo(post=173576:date=Nov 27 2006, 09:18 AM:name=IncredibleHat)--><div class='quotetop'>QUOTE(IncredibleHat @ Nov 27 2006, 09:18 AM) [snapback]173576[/snapback]</div><div class='quotemain'><!--quotec-->I didn't go further to think maybe 'the fleet' crew could all work on it too, so that is a good idea, and a good fix to make.<!--QuoteEnd--></div><!--QuoteEEnd-->
The thing that made the biggest difference was using the leadership skill of the player character rather than the leadership skill of the companion who was captain of the ship begin unloaded. Leadership 2 took 11 hours with a full crew. Leadership 10 took 3 hours with slightly less crew available.

I don't much like the idea of locking the ship while the cargo is being processed and letting the player do other things. There's *way* too much potential for breakage of the game. Plus you'd be back to having to use the leadership skill of the companion character, or whoever was left on board if you had only one ship, or leadership skill zero if no officers were around. Ug.

Hook
 
All this is very interesting, but what I'm not quite getting is why the loading time depends on your crew. Can't you hire some dockers to load your ship ?... What I would like is while the dockers spend time loading your cargo, you go to the tavern to have a good time with your crew ! You play dice game, you drink, you have fun! The potential of the tavern is not fully exploited, the dice games are way to simple, the tavernbrawl tiresome. For now, if you want to hear some rumors, you stop somebody in the street ; it would be more logical to ask a men that's siting & drinking in the tavern, wouldn't it be?

The time for loading your ship should depend on the quantity of unemployed docker in this port, the unfrastructure of the port (quay, etc...), and the time period - you wouldn't ask the dockers to work by night!
(and of course on the amont of merchandise to load)



Talking of tavern, I don't think a dialog option 'I want to stay until all my cargo will be loaded' or 'until my ship will be repaired' would be good. Sleeping in the tavern isn't well-done anyway. After you talked to the taverner, you should automaticly follow the taverngirl that would lead you to your room, then you would appear in this room in the bed, sleeping (animation like when a dead corpse lie on the floor). A kind of interface would appear, asking you how much time you want to stay in the city. If you ask for severals days, you would reappear outside the tavern, on morning, with a little log saying 'Oxbay, 27 November of 1678' or whatever on top of the screen and others on the side like 'your blade was repaired! You can now have it back from the Blacksmith' or 'All your cargo was loaded, you can now get away from that island'. And if you're just staying for one night, you could have randoms events - thiefs that would try to rob you, for exemple - After the night, you would hear a cokadudle-doo sounds and you character would re-appear next the bed, automaticly walking to the chest to take back his items (and eventualy discover some are missing if the thiefs didn't accidentaly wake you up by the night). I always thought it was rather unlogicall that the tavernkeeper put some of his own items in this room.



For shure, I'm aware all this wouldn't be easy at all to write down...
 
yes, what's the use of having a drink with someone anyway? and i mean that in a usefull for the game sense! except getting yourself drunk and spending money that is.
 
I'm not trying to beat a dead horse, but does leadership still influence cargo transfer times?
I'm starting a new game, Build 13, and if I dismiss Malcom Hatcher and sell the cargo myself it takes 6 days.
Looking at the formula in IS.h:

#define TIME_MOVEGOOD 30 // INT - time in minutes for 1 crewman to move 1 unit of a good. Also, no matter the crew, this * goods qty /10 is added in minutes.

According to the comment, my crew of 45 men on my Bermuda Sloop with Towngirl avatar moving 164 cargo units should take:
(164 / 45 * 30) + ((30 * 164)/ 10) minutes
109.3 + 492 minutes
601 minutes

I've since started a new game with Nathan Hawk on a Brig to confirm: it takes a long time to move cargo - days, in fact. But there are 1440 minutes in a day (in RL), so this comment cannot be correct.

Can someone confirm this long cargo transfer time by starting a new char, dismissing Malcom, and selling goods?
I thought also it could just be the pre-Oxbay scenario, but I went to another island and sold some goods and it took a long time too.
I don't remember noticing this long transfer time in the past though. I'm wondering if some other random modifier I've changed in BS.h or IS.h is causing this?
It's as if I'm transferring cargo with one crew unit (5412 minutes).

Henry Avery
 
I am not at all sure about all this. You'd need to check the goods transfer code. <img src="style_emoticons/<#EMO_DIR#>/unsure.gif" style="vertical-align:middle" emoid=":?" border="0" alt="unsure.gif" />
One thing I do know is that during the tutorial, good transfers and ship repairs are instantaneous. This to prevent the shipyard from being closed by the time you're done at the store.
 
can't confirm that bug. <img src="style_emoticons/<#EMO_DIR#>/unsure.gif" style="vertical-align:middle" emoid=":?" border="0" alt="unsure.gif" /> sounds like another installment fluke to me.
 
Back
Top