All Activity

This stream auto-updates     

  1. Past hour
  2. I'm throwing in the towel on this one, but I'm sure it's something minor that I'm managing to overlook somehow... I've created a fueled machine which is supposed to accept a custom fuel type. Currently, this can be either a new custom item which provides a large amount of fuel, or plain Honey, which adds a small amount but is more readily accessible. The custom fuel is working perfectly as intended. However, the machine simply will not accept Honey as fuel, despite me adding the fueled component to Honey via AddPrefabPostInit and setting the fuel type accordingly. I've pulled out some of the relevant code snippets below: Fueled machine main prefab function local function fn(Sim) local inst = CreateEntity() local modnameFancy = "Pandora" local modnameActual = KnownModIndex:GetModActualName(modnameFancy) local craftrate if modnameActual == nil then print(string.format("Mod '%s' not found", modnameFancy)) craftrate = GUMMIMAKER_MAKE_RATE else craftrate = GetModConfigData("gummirate", modnameActual) end inst.entity:AddNetwork() inst.entity:AddTransform() inst.entity:AddAnimState() inst.entity:AddSoundEmitter() inst.AnimState:SetBank("gummimaker") inst.AnimState:SetBuild("gummimaker") MakeObstaclePhysics(inst, .4) inst:AddTag("structure") inst:AddTag("fridge") inst.entity:SetPristine() if not TheWorld.ismastersim then inst:DoTaskInTime(0.1, function(inst) inst.replica.container:WidgetSetup("treasurechest") end) return inst end inst:AddComponent("lootdropper") inst:AddComponent("machine") inst.components.machine.turnonfn = TurnOn inst.components.machine.turnofffn = TurnOff inst.components.machine.caninteractfn = CanInteract inst.components.machine.cooldowntime = 0.5 inst:AddComponent("container") inst.components.container:WidgetSetup("treasurechest") inst.components.container.onopenfn = onopen inst.components.container.onclosefn = onclose inst:AddComponent("fueled") inst.components.fueled.fueltype = FUELTYPE.SWEETDREAM inst.components.fueled.maxfuel = GUMMIMAKER_FUEL_MAX inst.components.fueled.accepting = true inst.components.fueled:SetSections(4) inst.components.fueled:SetDepletedFn(OnFuelEmpty) inst.components.fueled:SetTakeFuelFn(ontakefuelfn) inst.components.fueled:InitializeFuelLevel(GUMMIMAKER_FUEL_MAX/2) inst.components.fueled:StartConsuming() inst:AddComponent("inspectable") inst.components.inspectable.getstatus = getstatus inst:AddComponent("workable") inst.components.workable:SetWorkAction(ACTIONS.HAMMER) inst.components.workable:SetWorkLeft(4) inst.components.workable:SetOnFinishCallback(onhammered) inst.components.workable:SetOnWorkCallback(onhit) -- Set the amount of time it takes to create a gummi inst.craftrate = TUNING.TOTAL_DAY_TIME / craftrate inst:ListenForEvent("onbuilt", onbuilt) return inst end Working Custom Fuel local assets = { Asset("ANIM", "anim/dreamfuel.zip"), Asset("ATLAS", "images/inventoryimages/dreamfuel.xml"), Asset("IMAGE", "images/inventoryimages/dreamfuel.tex"), } local prefabs = {} local function takenap(inst, time) if inst:HasTag("player") then inst:PushEvent("yawn", { grogginess = 4, knockoutduration = time + math.random() }) elseif inst.components.sleeper ~= nil then inst.components.sleeper:AddSleepiness(7, time + math.random()) elseif inst.components.grogginess ~= nil then inst.components.grogginess:AddGrogginess(4, time + math.random()) else ins:PushEvent("knockedout") end end local function oneat(inst, eater) eater:DoTaskInTime(0.5, function() takenap(eater, TUNING.MANDRAKE_SLEEP_TIME*2) end) end local function fn() local inst = CreateEntity() inst.entity:AddTransform() inst.entity:AddAnimState() inst.entity:AddNetwork() MakeInventoryPhysics(inst) inst.AnimState:SetBank("dreamfuel") inst.AnimState:SetBuild("dreamfuel") inst.AnimState:PlayAnimation("idle", true) inst.entity:SetPristine() if not TheWorld.ismastersim then return inst end inst:AddComponent("edible") inst.components.edible.healthvalue = 0 inst.components.edible.hungervalue = 0 inst.components.edible.sanityvalue = TUNING.SANITY_SMALL inst.components.edible.foodtype = FOODTYPE.GENERIC inst.components.edible:SetOnEatenFn(oneat) inst:AddComponent("stackable") inst.components.stackable.maxsize = TUNING.STACK_SIZE_SMALLITEM inst:AddComponent("inspectable") inst:AddComponent("fuel") inst.components.fuel.fueltype = FUELTYPE.SWEETDREAM inst.components.fuel.fuelvalue = TUNING.LARGE_FUEL * 2 print("Whipped Dream fuel type: "..FUELTYPE.SWEETDREAM) MakeHauntableLaunch(inst) inst:AddComponent("inventoryitem") inst.components.inventoryitem.atlasname = "images/inventoryimages/dreamfuel.xml" return inst end return Prefab("dreamfuel", fn, assets) AddPrefabPostInit in modmain.lua -- Allow honey to be used as fuel for the Confectionary Station -- Also define new fuel here GLOBAL.FUELTYPE.SWEETDREAM = "SWEETDREAM" AddPrefabPostInit("honey", function(inst) --inst:AddTag(GLOBAL.FUELTYPE.SWEETDREAM.."_fuel") if not GLOBAL.TheWorld.ismastersim then return end --print("Attempting to add fuel component to honey") inst:AddComponent("fuel") inst.components.fuel.fueltype = GLOBAL.FUELTYPE.SWEETDREAM inst.components.fuel.fuelvalue = GLOBAL.TUNING.MED_FUEL --print("Fuel type added: "..inst.components.fuel.fueltype) end) It seems like the component is being added to Honey and the right fuel type is being verified with that last print statement, but it's still not being accepted as valid fuel for the machine. I don't think I'm doing anything differently here from the custom fuel item, so I have no idea where the hangup is! My only other guess was that adding fuel isn't registering as a valid action in componentactions.lua, which seems to check for a matching tag, but adding that in manually didn't work out either. From componentactions.lua for k, v in pairs(FUELTYPE) do if inst:HasTag(v.."_fuel") then if target:HasTag(v.."_fueled") then table.insert(actions, inst:GetIsWet() and ACTIONS.ADDWETFUEL or ACTIONS.ADDFUEL) end return end end So... I'm stumped. Anyone have any insight? I've attached my modmain.lua and relevant prefab files if you need to see the big picture. modmain.lua dreamfuel.lua gummimaker.lua
  3. Maxwell Memes: The Sequel

    He smell leik fish.
  4. Okay, I'm for sure this will be the eyebrella skin. I want it to be official by the devs...
  5. SHe is fat and cant do it in 33 seconds, make her run on a treadmill for acouple days to lighten her up and then get her speed up to the challenge please
  6. Pretty sure you can summon Abigail by killing things from inventory. So carrying rabbits and birds around works. Need to feed them though.
  7. The swamp

    they are in caves too, and those wont burn. i go to the swamp often its not my fault it generated between my base and the pig king
  8. The swamp

    Does anyone know if reeds are affected by world regrowth mechanic? Like if all the reeds were burned during summer, would they eventually spawn in new locations? I can see it being a problem to base in the swamp if the reeds are just going to burn in summer and if they aren't renewable.
  9. Count to 200 without interruption

    128
  10. First thing Abyssal makes me think of is Hutch and Depths Worms. I wonder if it'll be a Halloween skin.
  11. Maxwell Memes: The Sequel

    I'm greatly disturbed by this image, how dare you post something so controversial? I mean...
  12. A new character, Wurt. Now that sounds like a weird name-
  13. Today
  14. Ao iniciar uma partida via "tentar novamente", o personagem congela e não sai do lugar. Ocorre tambem durante o respawn, mas com menor frequencia.
  15. Ye when I started I thought that too. Took me three games after I unlocked them to give them a shot, and I found out how stupid strong they actually are. On a side note, you dont need to upgrade every single erupt to Pale. Every evoked erupt procs off each other, so you only really need one and the rest be boosted for even more stupid good damage.
  16. I severely dislike the implications of this.
  17. Wurt's potential Halloween costume: Catcoon fish. Furry costume: Puggilisk.
  18. I’m hoping it looks similar to the deep ones, despite merms already looking very similar to them. Or the “whiskers” on the side of her head look more like tendrils, similar to Cthulhu.
  19. Console players do not have access to mods, and the easiest way to solve this is to give Console gamers the same kind of freedom over customizing their world as the Mobile versions of DS and DS Shipwrecked have. on the mobile version when starting a world you have the option to select how much are how little of most objects in the game will spawn. from None at all, a lot less, Less, Default, More, and A lot More. this allowed you to for example choose to spawn A lot more Spiders, and A lot Less Iron Ore Rocks. while it will NEVER be like these crazy mods, it is SOMETHING. And I really wish the console versions of DS/ DST had it.
  20. https://steamcommunity.com/sharedfiles/filedetails/?id=1837883076&searchtext=dirt
  21. The general idea is to increase the risk/reward of the game while making it still "feel" vanilla. For example, the new Acid Rain event thats being implemented is tied to toadstool, and either forces the player to stop what they're doing and avoid the problem (like Antlion) or go directly to the source and kill Toadstool, who now finally has a purpose other than a pointless raid boss. It's of course not meant for everyone, as it's naturally geared towards veterans and elitists who find DST easy. But we have a good amount of ideas on the backburner already.
  22. Not for a day, but this should get you there.
  1. Load more activity