New BoatDepot Help

Discussions about the technical aspects of graphics development, including NewGRF tools and utilities.

Moderator: Graphics Moderators

Post Reply
User avatar
bazil14
Engineer
Engineer
Posts: 44
Joined: 22 Sep 2007 12:45

New BoatDepot Help

Post by bazil14 »

Hello,

i am helping out the 32bbp movement and me and an artist were working out how to fix a graphical problem that would appear with the boat depot,we worked out the easiest way would be to have a newgrf that changes the standard one to a custom one that uses different graphics depending on what its built on (canal/sea) so it would have two versions, one for the canal and one for the sea, but only one button to build it. so the game decides what it should use. also is it possible to change the order of sprites via a newgrf. i was trying to find the boat depot using the Grf Maker and i cant find for the life of me where it is.

so if anyone could tell me what i would need to do to make that possible or even where the depot's values are in the grf maker would be very appreicated.


Thank you

Bazil
frosch
OpenTTD Developer
OpenTTD Developer
Posts: 991
Joined: 20 Dec 2006 13:31
Location: Aschaffenburg

Re: New BoatDepot Help

Post by frosch »

Shipdepots are drawn like this:
First a watertile is drawn. This may depend on sea/river/canal, however the drawing of the watertile is only controlled by the river/canal-providing grf. The watertile may also include canal/river borders.
On top of this groundsprite the depot is drawn. The depot uses the same sprites for every watertype, thus the depot shall not include any water itself, except maybe some single pixels. Neither the depot can check for the watertype, nor the water can check for a depot.

There are 6 depotsprites 4070-4075 (see http://dev.openttdcoop.org/projects/ope ... water.pnfo).
You can see the order of the 6 sprites in http://dev.openttdcoop.org/projects/ope ... nfra08.pcx .

Alternatively you can use the spritealigner (http://wiki.openttd.org/NewGRF_Debugging) from OpenTTD nightlies to find the spritenumbers of sprites by clicking on them. However, be careful with that method. Only the sprites with numbers < 4896 have fixed spritenumbers.
Sprites above that number are from the "extra" NewGrf of the baseset, or even from other NewGrfs. These spritenumbers are not fixed.

About GrfMaker I have no idea. Sprites in the range 0 - 4895 are replaced using Action A, maybe you find something which sounds like that.
⢇⡸⢸⠢⡇⡇⢎⡁⢎⡱⢸⡱⢸⣭⠀⢸⢜⢸⢸⣀⢸⣀⢸⣭⢸⡱⠀⢰⠭⡆⣫⠰⣉⢸⢸⠀⢰⠭⡆⡯⡆⢹⠁⠀⢐⠰⡁
User avatar
planetmaker
OpenTTD Developer
OpenTTD Developer
Posts: 9432
Joined: 07 Nov 2007 22:44
Location: Sol d

Re: New BoatDepot Help

Post by planetmaker »

The depot sprites are #4070-4075 in the base grf (ogfx1_base.grf, trg1r.grf). A sprite browser for base sprites is found at the project page of OpenGFX http://mz.openttdcoop.org/opengfx/autho ... itesbyfile

The sprite alignment tool found in recent nightlies is also helpful http://wiki.openttd.org/NewGRF_Debugging

EDIT: frosch was faster :-)

Cheers,
pm
User avatar
bazil14
Engineer
Engineer
Posts: 44
Joined: 22 Sep 2007 12:45

Re: New BoatDepot Help

Post by bazil14 »

Thank you both very much for your help, that kinda sucks that the depot cannot be aware of what its built on, but thank you anyway :)]


Bazil
User avatar
Ben_Robbins_
Tycoon
Tycoon
Posts: 1234
Joined: 20 Nov 2005 01:56
Location: Abu Dhabi, UAE

Re: New BoatDepot Help

Post by Ben_Robbins_ »

Without meaning to question the answers, I'd just like a bit of further elaboration.

When placing a depot, what is being checked? i.e. If you try to place it on land, it won't allow that, so something has been noticed. Are both water/canals considered the same thing by the 'checking method' which checks that water is actually there at all?

I've also just been encountering a few issues which the multiple usage of the same sprites makes. (considering canals/sea different).
Ben
User avatar
planetmaker
OpenTTD Developer
OpenTTD Developer
Posts: 9432
Joined: 07 Nov 2007 22:44
Location: Sol d

Re: New BoatDepot Help

Post by planetmaker »

There are three different water tiles: WATER_CLASS_SEA, WATER_CLASS_CANAL and WATER_CLASS_RIVER. When building a ship depot only for the presence of a water class tile is checked for both tiles the ship depot will reside on. The tile must also be a clear water tile, as such no slope or no coast.

The "problem" with building different depots on different water tiles is that there is no newgrf ship depots or stations (=docks) available which would make it possible to grant the newgrfs access to these variables quite easily.
Post Reply

Return to “NewGRF Technical Discussions”

Who is online

Users browsing this forum: No registered users and 20 guests