• 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!

New Build

Grey Roger

Sea Dog
Staff member
Administrator
Storm Modder
Not Build 14 vs. Build 15, but the Building kit. :D

Dialog file "Enc_Officer_dialog.c" tries to use bricks, inconsistently, and in particular it wants to use attribute "building.bricks". The problem is that functions 'InitBLDexterior' and 'InitBLDinterior' don't set that attribute, nor do the building item definitions have any value for bricks. So buildings which ought to require a lot of stone - or bricks - don't. The so-called "stone faced bastion" is built entirely from planks. More importantly, when you build something, "error.log" shows messages about that missing attribute. And for some reason, when you do build something, dialog case "erect" deducts one fewer plank than it should from your hold:
Code:
RemoveCharacterGoods(pchar, GOOD_PLANKS, planks-1 );

The attached zip changes 'InitBLDexterior' to take "bricks" as an argument, and changes the required materials for most exterior items to include some bricks. (Or, in the case of the keep, a lot of bricks!) 'InitBLDinterior' does not take "bricks" as an argument but sets attribute "building.bricks" to 0 so that "Enc_Officer_dialog.c" can check it. "Enc_Officer_dialog.h" is updated to show the new material requirements, and case "erect" no longer lets you keep one unit of planks or bricks.
 

Attachments

  • Building.zip
    73.1 KB · Views: 67
Not Build 14 vs. Build 15, but the Building kit. :D

Dialog file "Enc_Officer_dialog.c" tries to use bricks, inconsistently, and in particular it wants to use attribute "building.bricks". The problem is that functions 'InitBLDexterior' and 'InitBLDinterior' don't set that attribute, nor do the building item definitions have any value for bricks. So buildings which ought to require a lot of stone - or bricks - don't. The so-called "stone faced bastion" is built entirely from planks. More importantly, when you build something, "error.log" shows messages about that missing attribute. And for some reason, when you do build something, dialog case "erect" deducts one fewer plank than it should from your hold:
Code:
RemoveCharacterGoods(pchar, GOOD_PLANKS, planks-1 );

The attached zip changes 'InitBLDexterior' to take "bricks" as an argument, and changes the required materials for most exterior items to include some bricks. (Or, in the case of the keep, a lot of bricks!) 'InitBLDinterior' does not take "bricks" as an argument but sets attribute "building.bricks" to 0 so that "Enc_Officer_dialog.c" can check it. "Enc_Officer_dialog.h" is updated to show the new material requirements, and case "erect" no longer lets you keep one unit of planks or bricks.
Good job! I wanted to ask in line 129 of Enc_Officer_dialog there is “plank units”, what makes it different from everyone else. These are the same boards or a new type of wood.
You can also add bricks to the brothel and office - these are lines 150 and 151
 
Thanks for pointing out the last remaining "plank units". :onya I don't know why I missed that one; there were previously more of them, which I replaced. That one is now corrected.

The brothel and office are interior additions to the mansion, which is why they don't need bricks. Exteriors may need bricks, interiors do not. So you need bricks to build the mansion; then you can choose whether to fit it as a brothel or office, costing extra planks for wall panelling and furniture.
 
Back
Top