Jump to content
catty-cb

Creating Mods in Banished

38 posts in this topic Last Reply

Highlighted Posts

Posted:
Last Online:  
 

That's so funny!! *:D

I have this little tutorial bookmarked that might help...?

 

  • Thanks 1

Share this post


Link to post
Share on other sites
Posted:
Last Online:  
 

That's the way of it! I have two little designs going but it's going to have to be a hard pause since I picked up a couple of contracts that I expect to kick off soon. Hopefully I won't have to relearn too much when I get back to it!

  • Yes 1

Share this post


Link to post
Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     

    So a bit of recap as to where we had got to in our attempts at adding a turbosquid model into banished, so taking a look at the apiary model available in the modkit using blender, in game the apiary is built in a series of stages all of which is included in the FBX model

    build01

    build01.png

    build02

    build02.png

    and finally the mesh or in-game model

    mesh.png

    You can also see the FBX model has a number of points which tell the game where bannies are to stand when they are building it, placing materials or are assigned to work there, there is also a smoke point to tell the game where to generate the chimney smoke

    You also have to include this information in the code

    Screenshot from 2024-01-19 23-11-44.png

    and there are a number of small pointer programs that link the FBX model to the code and also tell it which graphics file to use

    Screenshot from 2024-01-19 23-10-46.png

    Screenshot from 2024-01-19 23-10-57.png

    Get any of this wrong and your program won't compile.

    So to build a blacksmith which is what I was attempting to do, you first need a toolmaker template file which you will find under Resource in the modkit

    As I was using a turbosquid model I didn't have to worry about build(s) in the FBX model and having to reference that information thru out the program, I also currently don't have any footprint graphics/programs so when it snows, it snows inside the building, which is something I will have to sort out at a later date

    Screenshot from 2024-01-19 21-53-28.png

    Also haven't got the chimney smoke in the right location as its coming thru the roof and am still not quite sure about the size, but it works in-game and makes tools

    Screenshot from 2024-01-19 21-55-26.png

    I also got sidetracked at one point by creating my own banished toolbar, to do this you need to download some program code from the WoB site, which is attached to a forum post in this topic

    https://worldofbanished.com/index.php?topic=1467.0

    you then need to set up how you want your toolbar to look and how many menus you want it to have

    Screenshot from 2024-01-19 23-46-22.png

    Lastly I wouldn't have got to where I am if @kid1293 hadn't uploaded some of his source code files into the club

    https://community.simtropolis.com/files/category/158-modding-files/

    as its helped enormously while working out various parts of the programing code. :read:

    A final note we still have a steam gift card for banished, so if anyone wants to give banished modding a go, then let me know and I'll PM you the gift card

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     

    I finally settled on model size and ran a compile

    Spoiler

    Compiling 'Template\RawMaterialTool.rsc:work'
      --> Compiled WorkDescription 'Template\RawMaterialTool.rsc:work'
    Compiling 'Template\RawMaterialTool.rsc:rawmaterial'
      --> Compiled RawMaterialDescription 'Template\RawMaterialTool.rsc:rawmaterial'

      --> Compiled ComponentDescription 'Template\RawMaterialTool.rsc:resource'
    Compiling 'Template\RawMaterialCoal.rsc:resource'
    Compiling 'Template\RawMaterialCoal.rsc:value'
      --> Compiled ValueDescription 'Template\RawMaterialCoal.rsc:value'
    Compiling 'Template\RawMaterialCoal.rsc:map'
      --> Compiled MapDescription 'Template\RawMaterialCoal.rsc:map'
    Compiling 'Template\RawMaterialCoal.rsc:model'
      --> Compiled ModelDescription 'Template\RawMaterialCoal.rsc:model'
    Compiling 'Template\RawMaterialCoal.rsc:work'
      --> Compiled WorkDescription 'Template\RawMaterialCoal.rsc:work'
    Compiling 'Template\RawMaterialCoal.rsc:rawmaterial'
      --> Compiled RawMaterialDescription 'Template\RawMaterialCoal.rsc:rawmaterial'

      --> Compiled ComponentDescription 'Template\RawMaterialCoal.rsc:resource'
    Compiling 'Template\RawMaterialSteelTool.rsc:resource'
    Compiling 'Template\RawMaterialSteelTool.rsc:value'
      --> Compiled ValueDescription 'Template\RawMaterialSteelTool.rsc:value'
    Compiling 'Template\RawMaterialSteelTool.rsc:map'
      --> Compiled MapDescription 'Template\RawMaterialSteelTool.rsc:map'
    Compiling 'Template\RawMaterialSteelTool.rsc:model'
      --> Compiled ModelDescription 'Template\RawMaterialSteelTool.rsc:model'
    Compiling 'Template\RawMaterialSteelTool.rsc:work'
      --> Compiled WorkDescription 'Template\RawMaterialSteelTool.rsc:work'
    Compiling 'Template\RawMaterialSteelTool.rsc:rawmaterial'
      --> Compiled RawMaterialDescription 'Template\RawMaterialSteelTool.rsc:rawmate
    rial'
      --> Compiled ComponentDescription 'Template\RawMaterialSteelTool.rsc:resource'

    Compiling 'Dialog\ConsumeProduce.rsc:progressRemaining'
    Compiling 'Dialog\ConsumeProduce.rsc:textProgress'
      --> Compiled TextDescription 'Dialog\ConsumeProduce.rsc:textProgress'
      --> Compiled ProgressDescription 'Dialog\ConsumeProduce.rsc:progressRemaining'

      --> Compiled Toolbar 'Game\CommonToolbar.rsc:CommonToolbar'
      --> Compiled Toolbar 'Game\CATToolbar.rsc:CATToolbar'
      --> Compiled Toolbar 'Game\CATToolbar.rsc:CATResource'
    Compiling 'Template\wheelwright.rsc:resource'
    Compiling 'Template\wheelwright.rsc:ui'
    Compiling 'Template\wheelwright.rsc:enableToolMakerWorkButton'
    Compiling 'Template\wheelwright.rsc:labelToolMakerWorkUncheck'
      --> Compiled LabelDescription 'Template\wheelwright.rsc:labelToolMakerWorkUnch
    eck'
    Compiling 'Template\wheelwright.rsc:labelToolMakerWorkCheck'
      --> Compiled LabelDescription 'Template\wheelwright.rsc:labelToolMakerWorkChec
    k'
      --> Compiled CheckDescription 'Template\wheelwright.rsc:enableToolMakerWorkBut
    ton'
    Compiling 'Template\wheelwright.rsc:workButtonConfig'
      --> Compiled ControlUIConfig 'Template\wheelwright.rsc:workButtonConfig'
    Compiling 'Template\wheelwright.rsc:inventoryTab2'
      --> Compiled TabDescription 'Template\wheelwright.rsc:inventoryTab2'
    Compiling 'Template\wheelwright.rsc:resourceLimit'
    Compiling 'Template\wheelwright.rsc:labelLimit'
      --> Compiled LabelDescription 'Template\wheelwright.rsc:labelLimit'
    Compiling 'Template\wheelwright.rsc:editLimit'
      --> Compiled SpinnerDescription 'Template\wheelwright.rsc:editLimit'
      --> Compiled RibbonDescription 'Template\wheelwright.rsc:resourceLimit'
    Compiling 'Template\wheelwright.rsc:resourceLimitConfig'
      --> Compiled ResourceLimitUIConfig 'Template\wheelwright.rsc:resourceLimitConf
    ig'
      --> Compiled UIDescription 'Template\wheelwright.rsc:ui'
    Compiling 'Template\wheelwright.rsc:map'
      --> Compiled MapDescription 'Template\wheelwright.rsc:map'
    Compiling 'Template\wheelwright.rsc:zone'
      --> Compiled ZoneDescription 'Template\wheelwright.rsc:zone'
    Compiling 'Template\wheelwright.rsc:toolbar'
    Compiling 'UI\wheelwrightSpriteSheet.rsc:resource'
    Compiling 'UI\wheelwrightSpriteSheetMaterial.rsc:resource'
    Compiling 'UI\wheelwrightSpriteSheetTexture.rsc:resource'
      --> Compiled ImageBuffer 'UI\wheelwrightSpriteSheetTexture.rsc:resource'
      --> Compiled MaterialInstance 'UI\wheelwrightSpriteSheetMaterial.rsc:resource'

      --> Compiled SpriteSheet 'UI\wheelwrightSpriteSheet.rsc:resource'
    Compiling 'UI\wheelwrightStringTable.rsc:resource'
      --> Compiled StringTable 'UI\wheelwrightStringTable.rsc:resource'
      --> Compiled ToolbarDescription 'Template\wheelwright.rsc:toolbar'
    Compiling 'Template\wheelwright.rsc:createplaced'
      --> Compiled CreatePlacedDescription 'Template\wheelwright.rsc:createplaced'
    Compiling 'Template\wheelwright.rsc:decal'
    Compiling 'Models\MaterialInstance\DummyFootprintMaterial.rsc:resource'
    Compiling 'Models\MaterialInstance\DummyFootprintTexture.rsc:resource'
      --> Compiled ImageBuffer 'Models\MaterialInstance\DummyFootprintTexture.rsc:re
    source'
      --> Compiled MaterialInstance 'Models\MaterialInstance\DummyFootprintMaterial.
    rsc:resource'
    Compiling 'Models\MaterialInstance\DummyFootprintDamageMaterial.rsc:resource'
      --> Compiled MaterialInstance 'Models\MaterialInstance\DummyFootprintDamageMat
    erial.rsc:resource'
      --> Compiled DecalDescription 'Template\wheelwright.rsc:decal'
    Compiling 'Template\wheelwright.rsc:model'
    Compiling 'Models\ShroomMesh.rsc:resource'
    Compiling 'Models\MaterialInstance\ShroomAO.rsc:resource'
      --> Compiled ImageBuffer 'Models\MaterialInstance\ShroomAO.rsc:resource'
    Compiling 'Models\MaterialInstance\Shroom.rsc:damage'
    Compiling 'Models\MaterialInstance\ShroomTexture.rsc:resource'
      --> Compiled ImageBuffer 'Models\MaterialInstance\ShroomTexture.rsc:resource'
      --> Compiled MaterialInstance 'Models\MaterialInstance\Shroom.rsc:damage'
    Compiling 'Models\MaterialInstance\Shroom.rsc:resource'
      --> Compiled MaterialInstance 'Models\MaterialInstance\Shroom.rsc:resource'
      --> Compiled GraphicsMesh 'Models\ShroomMesh.rsc:resource'
      --> Compiled ModelDescription 'Template\wheelwright.rsc:model'
    Compiling 'Template\wheelwright.rsc:picking'
    Compiling 'Models\ShroomPicking.rsc:resource'
      --> Compiled PickingMesh 'Models\ShroomPicking.rsc:resource'
      --> Compiled PickingDescription 'Template\wheelwright.rsc:picking'
    Compiling 'Template\wheelwright.rsc:highlight'
    Compiling '\Models\ShroomMesh.rsc:edge'
      --> Compiled EdgeMesh '\Models\ShroomMesh.rsc:edge'
      --> Compiled HighlightDescription 'Template\wheelwright.rsc:highlight'
    Compiling 'Template\wheelwright.rsc:interact'
    Compiling '\Models\ShroomPoints.rsc:resource'
      --> Compiled PointList '\Models\ShroomPoints.rsc:resource'
      --> Compiled InteractDescription 'Template\wheelwright.rsc:interact'
    Compiling 'Template\wheelwright.rsc:particle'
      --> Compiled ParticleDescription 'Template\wheelwright.rsc:particle'
    Compiling 'Template\wheelwright.rsc:storage'
      --> Compiled StorageDescription 'Template\wheelwright.rsc:storage'
    Compiling 'Template\wheelwright.rsc:work'
      --> Compiled WorkDescription 'Template\wheelwright.rsc:work'
    Compiling 'Template\wheelwright.rsc:statusicon'
      --> Compiled StatusIconDescription 'Template\wheelwright.rsc:statusicon'
    Compiling 'Template\wheelwright.rsc:tracker'
      --> Compiled TrackerDescription 'Template\wheelwright.rsc:tracker'
    Compiling 'Template\wheelwright.rsc:ambientemitter'
      --> Compiled AmbientEmitterDescription 'Template\wheelwright.rsc:ambientemitte
    r'
    Compiling 'Template\wheelwright.rsc:statemachine'
      --> Compiled StateMachineDescription 'Template\wheelwright.rsc:statemachine'
    Compiling 'Template\wheelwright.rsc:cleararea'
      --> Compiled ClearAreaDescription 'Template\wheelwright.rsc:cleararea'
    Compiling 'Template\wheelwright.rsc:workplace'
      --> Compiled WorkPlaceDescription 'Template\wheelwright.rsc:workplace'
    Compiling 'Template\wheelwright.rsc:build'
      --> Compiled BuildDescription 'Template\wheelwright.rsc:build'
    Compiling 'Template\wheelwright.rsc:destroy'
      --> Compiled DestroyDescription 'Template\wheelwright.rsc:destroy'
    Compiling 'Template\wheelwright.rsc:consumeproduce'
      --> Compiled ConsumeProduceDescription 'Template\wheelwright.rsc:consumeproduc
    e'
      --> Compiled ComponentDescription 'Template\wheelwright.rsc:resource'
      --> Compiled Toolbar 'wheelwright.rsc:wheelwright'
      --> Compiled ExternalList 'wheelwrightResources.rsc:resource'

    C:\BanishedKit\MyMods\CATWheel>pause
    Press any key to continue...

    Always a great sense of relief when that actually works .... note as some of this was using one of kid's models for a while some of the code is referring to Shroom which is a mushroom instead of the wheelwright (blacksmith)

    Screenshot from 2024-01-20 09-44-02.png

    Share this post


    Link to post
    Share on other sites
  • Original Poster
  • Posted:
    Last Online:  
     

    so my blacksmith mod was doing some weird things so I booked it into @kid1293 garage to get it looked at

    Screenshot from 2024-01-23 22-38-06.png

    Not quite at the ready to release to banished players as it seems there are a few things left to be done on it, but thanks to kid its a lot closer to a release date  :thumb:

    Wheelwright.jpg

    • Like 2

    Share this post


    Link to post
    Share on other sites

    ×

    Thank You for the Continued Support!

    Simtropolis depends on donations to fund site maintenance costs.
    Without your support, we just would not be in our 24th year online!  You really help make this a great community. *:thumb:

    But we still need your support to stay online. If you're able to, please consider a donation to help us stay up and running. This helps sustain a platform where we can share our community creations for years to come.

    Make a Donation, Get a Gift!

    Expand your city with the best from the Simtropolis Exchange.
    Make a Donation and get one or all three discs today!

    STEX Collections

    By way of a "Thank You" gift, we'd like to send you our STEX Collector's DVD. It's some of the best buildings, lots, maps and mods collected for you over the years. Check out the STEX Collections for more info.

    Each donation helps keep Simtropolis online, open and free!

    Thank you for reading and enjoy the site!

    More About STEX Collections