Jump to content

Recommended Posts

I'm quite new to the modding stuff so I decided to ask for some help from you guys. I'm making a custom character, it's practically done but right at the very end I've encountered a problem I'm not capable of dealing with. It sounds really simple - two assets I gave to the item are crashing "main" version of the game. DLC is working just fine, but when I try to load the session with "Reign of Giants" disabled the game simply shuts down. I know that deleting assets works, but is it any way to tell the game to "ignore" them while playing vanilla version of DS? I want the character to be enjoyable in both DLC and Vanilla DS, so I really hope for your help! 

 

Here's the code fragment (I bolded the assets crashing vanilla):

local function fn(Sim)
local inst = CreateEntity()
local trans = inst.entity:AddTransform()
local anim = inst.entity:AddAnimState()
    
local minimap = inst.entity:AddMiniMapEntity()
    minimap:SetIcon( "farmerhat.tex" )
 
MakeInventoryPhysics(inst)
    
inst:AddTag("farmerhat")
 
anim:SetBank("strawhat")
    anim:SetBuild("farmerhat")
    anim:PlayAnimation("anim")
 
inst:AddComponent("inspectable")
   
    inst:AddComponent("inventoryitem")
inst.components.inventoryitem.atlasname = "images/inventoryimages/farmerhat.xml"
 
    inst:AddComponent("tradable")
 
    inst:AddComponent("equippable")
    inst.components.equippable.equipslot = EQUIPSLOTS.HEAD
inst.components.equippable.dapperness = TUNING.DAPPERNESS_MED
   
    inst:AddComponent("waterproofer")
    inst.components.waterproofer:SetEffectiveness(TUNING.WATERPROOFNESS_MED)
 
    inst:AddComponent("insulator")
    inst.components.insulator:SetSummer()
    inst.components.insulator:SetInsulation(TUNING.INSULATION_MED)
 
inst:AddComponent("dapperness")
    inst.components.dapperness.dapperness = (TUNING.DAPPERNESS_TINY)
 
    inst.components.equippable:SetOnEquip( onequip )
 
    inst.components.equippable:SetOnUnequip( onunequip )
  
    return inst
end

I think you can just do an "if x then y end" with x being the dlcenabled variable function "IsDLCEnabled(REIGN_OF_GIANTS)" and y the bold bits. Since I don't have the dlc, I don't use such things a lot. I don't know if it will work, but it is in the game code.

Edited by Mobbstar

I think you can just do an "if x then y end" with x being the dlcenabled variable function "IsDLCEnabled(REIGN_OF_GIANTS)" and y the bold bits. Since I don't have the dlc, I don't use such things a lot. I don't know if it will work, but it is in the game code.

 

Holy cow it worked. I actualy tried it before but it just crashed the whole game, so I must have messed something up. Thanks for the really quick answer and have a nice day, sir!

 

Um, also should I close the topic and if so - how do I do that? :D

Holy cow it worked. I actualy tried it before but it just crashed the whole game, so I must have messed something up. Thanks for the really quick answer and have a nice day, sir!

 

Um, also should I close the topic and if so - how do I do that? :grin:

 

Glad I could help! :) Just leave the topic as it is, and don't forget to publish your mod when it's done (asuming it doesn't have strong language, copyright issues or such of course)

Glad I could help! :-) Just leave the topic as it is, and don't forget to publish your mod when it's done (asuming it doesn't have strong language, copyright issues or such of course)

 

Sure, and don't worry about copyrights, swears or... other stuff. I've been around long enough to know what's what. Once again thanks for helping me!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...