Jump to content

[Game Update] - 180814


Recommended Posts

  • Codex Umbra no longer decays when left on the ground.

  • Books can now be used as fuel for Fire.

These changes seems like a bad one to me.

Before the update all that the player need to do is to keep the codex umbra in a chest to prevent it from decays.

I don't think giving everyone the choice to burn Maxwell's book is a good idea.

  • Like 1
Link to comment
Share on other sites

6 minutes ago, Mday said:
  • Codex Umbra no longer decays when left on the ground.

  • Books can now be used as fuel for Fire.

These changes seems like a bad one to me.

Before the update all that the player need to do is to keep the codex umbra in a chest to prevent it from decays.

I don't think giving everyone the choice to burn Maxwell's book is a good idea.

The Codex acts like a crafting station so I suppose it makes sense to let it stay on the ground like any other crafting station.

  • Like 1
Link to comment
Share on other sites

5 minutes ago, oCrapaCreeper said:

The Codex acts like a crafting station so I suppose it makes sense to let it stay on the ground like any other crafting station.

It however does not have a charred state like most other crafting stations, therefore it is a half crafting station. ;-;

It'll never be a true crafting station.

Edited by GiddyGuy
Link to comment
Share on other sites

Hmm...I am really, REALLY new to this, so dumb question:

What _are_ those awesome pictures, in terms of game context?  Are they winnable somehow?  I just BARELY got onto Steam at all a few weeks ago, and I have no idea how Steam trading cards or badges work, or anything...

I know this question is incredibly newbish, but, well, I AM incredibly newbish.  :/

(And by all rights, burning the Codex Umbra should release some REALLY PISSED OFF shadow creatures...) 

...Notorious

  • Like 2
Link to comment
Share on other sites

3 minutes ago, CaptainChaotica said:

Hmm...I am really, REALLY new to this, so dumb question:

What _are_ those awesome pictures, in terms of game context?  Are they winnable somehow?  I just BARELY got onto Steam at all a few weeks ago, and I have no idea how Steam trading cards or badges work, or anything...

I know this question is incredibly newbish, but, well, I AM incredibly newbish.  :/

(And by all rights, burning the Codex Umbra should release some REALLY PISSED OFF shadow creatures...) 

...Notorious

with trading cards you call sell them, or complete the full set and make one bagde

with that badge you earn 100 xp to your steam profile, and one background and one emotic of the game

Link to comment
Share on other sites

@Ipsquiggle, @V2C,

If equipslotutil.lua is required too soon (i.e. some mod causes it to load in its modmain), it reads GLOBAL.EQUIPSLOTS only once. That is, it ignores further changes to it (from lower priority mods' modmains), causing a crash -

Spoiler

[00:01:32]: [string "scripts/components/equippable_replica.lua"]:10: calling 'set' on bad self (number expected, got nil)
LUA ERROR stack traceback:
=[C]:-1 in (method) set (C) <-1--1>
scripts/components/equippable_replica.lua:10 in (method) SetEquipSlot (Lua) <9-11>
   self =
      inst = 107999 -  (valid:true)
      _equipslot = net_tinybyte (54D60A00)
   eslot = quiver
scripts/components/equippable.lua:2 in (field) ? (Lua) <1-3>
   self =
      equippedmoisture = 0
      equipstack = false
      isequipped = false
      insulated = false
      inst = 107999 -  (valid:true)
      maxequippedmoisture = 0
      _ = table: 3173DF80; { walkspeedmult=table: 3173DDC8, _=table: 3173E0C0, equipslot=table: 3173DD00 }
      dapperness = 0
   equipslot = quiver
scripts/class.lua:30 in () ? (Lua) <23-32>
   t = table: 3173D878; { equippedmoisture=0, equipstack=false, isequipped=false, insulated=false, inst=107999 - , maxequipp [**truncated**]
   k = equipslot
   v = quiver
   p = table: 3173DD00; { 1=quiver, 2=function: 5173A800 }
   old = hands
../mods/workshop-488009136/scripts/prefabs/z_quiver.lua:255 in (field) fn (Lua) <221-272>
   inst = 107999 -  (valid:true)
   trans = Transform (21898E60)
   anim = AnimState (21898EC0)
   netw = nil
scripts/mainfunctions.lua:146 in () ? (Lua) <135-177>
   name = quiver
   prefab = Prefab quiver - ; { assets=table: 331B2A58, name=quiver, deps=table: 331B3048, fn=function: 16D06400, force_path_searc [**truncated**]
=[C]:-1 in (method) SpawnPrefab (C) <-1--1>
scripts/mainfunctions.lua:191 in (global) SpawnPrefab (Lua) <188-193>
   name = quiver
   skin = nil
   skin_id = nil
   creator = KU_OsU40zIF
scripts/components/builder.lua:364 in () ? (Lua) <344-439>
   self =
      exclude_tags = table: 1783A228; { 1=INLIMBO, 2=fire, 3=shadowmagic }
      buffered_builds = table: 1783A1B0; {  }
      recipes = table: 17839EB8; { 1=saltlick }
      bonus_tech_level = 0
      accessible_tech_trees = table: 1783A0E8; { MAGIC=0, ANCIENT=0, SCIENCE=1, SHADOW=0 }
      onBuild = function - ../mods/workshop-404161345/modmain.lua:29
      _ = table: 17839C10; { ingredientmod=table: 17839C88, magic_bonus=table: 17839EE0, ancient_bonus=table: 1783A020, shadow_ [**truncated**]
      inst = 106115 - wickerbottom (valid:true)
   recname = quiver
   pt = (-135.41, 0.00, -158.69); { y=0, x=-135.40512084961, z=-158.69111633301 }
   rotation = nil
   skin = nil
   recipe = table: 0FEAA1B8; { tab=table: 1741A6A8, atlas=../mods/workshop-488009136/images/inventoryimages/quiver.xml, rpc_id=37 [**truncated**]
   wetlevel = 0
=(tail call):-1 in ()  (tail) <-1--1>
scripts/bufferedaction.lua:24 in (method) Do (Lua) <20-34>
   self (valid:true) =
      action = table: 15916AF8; { str=Build, ghost_valid=false, id=BUILD, instant=false, ghost_exclusive=false, code=80, priority=0, [**truncated**]
      doer = 106115 - wickerbottom (valid:true)
      onfail = table: 30C89720; {  }
      doerownsobject = false
      recipe = quiver
      onsuccess = table: 30C89630; {  }
      distance = 1
      options = table: 30C89748; {  }
      pos = (-135.41, 0.00, -158.69); { y=0, x=-135.40512084961, z=-158.69111633301 }
scripts/entityscript.lua:1239 in (method) PerformBufferedAction (Lua) <1231-1249>
   self (valid:true) =
      DynamicShadow = DynamicShadow (391A7760)
      inlimbo = false
      GetMoistureRateScale = function - scripts/prefabs/player_common.lua:132
      SetCameraDistance = function - scripts/prefabs/player_common.lua:1261
      ScreenFlash = function - scripts/prefabs/player_common.lua:1323
      player_classified = 106116 - player_classified (valid:true)
      playercolour = table: 27D89B48; { 1=0.80392156862745, 2=0.30980392156863, 3=0.22352941176471, 4=1 }
      ShowWardrobePopUp = function - scripts/prefabs/player_common.lua:1249
      Light = Light (391A77E0)
      _OnDespawn = function - ../mods/workshop-667466089/modmain.lua:951
      _isrezattuned = false
      OnRemoveEntity = function - scripts/prefabs/player_common.lua:615
      pendingtasks = table: 17164D58; { PERIODIC 106115: 10.000000=true, PERIODIC 10611
[00:01:32]: [string "scripts/components/equippable_replica.lua"]:10: calling 'set' on bad self (number expected, got nil)
LUA ERROR stack traceback:
    =[C]:-1 in (method) set (C) <-1--1>
    scripts/components/equippable_replica.lua:10 in (method) SetEquipSlot (Lua) <9-11>
    scripts/components/equippable.lua:2 in (field) ? (Lua) <1-3>
    scripts/class.lua:30 in () ? (Lua) <23-32>
    ../mods/workshop-488009136/scripts/prefabs/z_quiver.lua:255 in (field) fn (Lua) <221-272>
    scripts/mainfunctions.lua:146 in () ? (Lua) <135-177>
    =[C]:-1 in (method) SpawnPrefab (C) <-1--1>
    scripts/mainfunctions.lua:191 in (global) SpawnPrefab (Lua) <188-193>
    scripts/components/builder.lua:364 in () ? (Lua) <344-439>
    =(tail call):-1 in ()  (tail) <-1--1>
    scripts/bufferedaction.lua:24 in (method) Do (Lua) <20-34>
    scripts/entityscript.lua:1239 in (method) PerformBufferedAction (Lua) <1231-1249>
    scripts/stategraphs/SGwilson.lua:2837 in (field) ontimeout (Lua) <2834-2838>
    scripts/stategraph.lua:550 in (method) UpdateState (Lua) <536-580>
    scripts/stategraph.lua:607 in (method) Update (Lua) <599-627>
    scripts/stategraph.lua:125 in (method) Update (Lua) <109-148>
    scripts/update.lua:209 in () ? (Lua) <150-223>

 

 

  • Like 1
Link to comment
Share on other sites

3 minutes ago, oCrapaCreeper said:

The Codex acts like a crafting station so I suppose it makes sense to let it stay on the ground like any other crafting station.

I am not sure if your argument stands since the decays can be prevented. I can also say that it is a book so it make sense to store it in chest or else it can be damaged over time laying on the ground in the wilderness of DST.

Link to comment
Share on other sites

4 minutes ago, CaptainChaotica said:

Huh.  Yeah, I've also been wondering about "levels" on your Steam profile.  How do you get the trading cards?  Normal playing and luck?  Buying?  I am SO in the dark about all this, Charlie (or her new minion) is probably about to eat me.

...Notorious

Get cards from playing the game at random intervals, Steam'll only give 1/2 cards needed to "craft" a profile badge for profile levels.

Steam tries telling you to trade with friends to complete a badge or buy the missing cards from the market.

You get discounts/coupons for other games when crafting badges, and sometimes emoticons and other Steam-related doodads.

Usually the games discounted aren't really anything exciting.

Edited by CarlZalph
Link to comment
Share on other sites

Can we talk about why Vote Kick is still a bad system for a moment?

*3 man grief gang joins a server.*

*2 of the 3 buddies back up whoever is trying to be kicked. (If 2 people say no, the vote fails no matter the odds).*

Vote Kicking can also instill fear in normal players. Ever say a comment that the rest of the group doesn't like, ever make a mistake that the group doesn't like, or even a bad joke? Odds are, that we've all been that guy or gal. Now if someone tries to kick you, and no one is there to back you up: You're outta there.

The system also encourages/supports people to cheat with the Vote Rollback mechanic. Granted admins already did this kind of thing, but now this kind of power and abuse is in the hands of the common folk. "Oh no! I died to hounds without a weapon... Can we rollback?" *Vote rollback* "Oh no! Deerclops and Bearger smashed the base!" *Vote rollback.* What used to be hidden behind console commands, loading save backups, and admin only features; is now available to the common folk, making it much more accessible, and thus more "acceptable" in the eyes of the people. 

While I agree that there is no true, or good way to prevent griefing: I do not see this as a step in the right direction. Instead I see this as a tool to help griefers.

  • Like 14
Link to comment
Share on other sites

6 minutes ago, KCDA said:

Vote Kicking can also instill fear in normal players. Ever say a comment that the rest of the group doesn't like, ever make a mistake that the group doesn't like, or even a bad joke? Odds are, that we've all been that guy or gal. Now if someone tries to kick you, and no one is there to back you up: You're outta there.

Exactly how I felt playing earlier. It fills me with more anxiety playing with strangers than normal and makes me feel pressure to be always perfect. Fear of making wet goop multiplied by 10. ;-;

  • Like 1
Link to comment
Share on other sites

3 minutes ago, KCDA said:

Can we talk about why Vote Kick is still a bad system for a moment?

*3 man grief gang joins a server.*

*2 of the 3 buddies back up whoever is trying to be kicked. (If 2 people say no, the vote fails no matter the odds).*

Vote Kicking can also instill fear in normal players. Ever say a comment that the rest of the group doesn't like, ever make a mistake that the group doesn't like, or even a bad joke? Odds are, that we've all been that guy or gal. Now if someone tries to kick you, and no one is there to back you up: You're outta there.

The system also encourages/supports people to cheat with the Vote Rollback mechanic. Granted admins already did this kind of thing, but now this kind of power and abuse is in the hands of the common folk. "Oh no! I died to hounds without a weapon... Can we rollback?" *Vote rollback* "Oh no! Deerclops and Bearger smashed the base!" *Vote rollback.* What used to be hidden behind console commands, loading save backups, and admin only features; is now available to the common folk, making it much more accessible, and thus more "acceptable" in the eyes of the people. 

While I agree that there is no true, or good way to prevent griefing: I do not see this as a step in the right direction. Instead I see this as a tool to help griefers.

Vote kick:

1) Many FPS game have vote kick. The "grief gang issue" doesn't happens a lot as far as I know.

2) Let the server host to decide whether to enable this vote kick or not.

Vote Rollback:

1) Again, let the server host to decide.

2) If you have 50~100% players agree on a rollback and if it complies with server rule, I think a rollback is acceptable. Let the server host to decide in what situation a rollback is permitted.

  • Like 3
Link to comment
Share on other sites

@V2C,

Regarding the comment in input.lua, maybe something like this could be used:

Spoiler

--- strict.lua
+++ strict.deprecated.lua
@@ -6,6 +6,7 @@
 
 __STRICT = true
 mt.__declared = {}
+mt.__deprecated = {}
 
 mt.__newindex = function (t, n, v)
   if __STRICT and not mt.__declared[n] then
@@ -19,7 +20,13 @@
 end
   
 mt.__index = function (t, n)
-  if not mt.__declared[n] and debug.getinfo(2, "S").what ~= "C" then
+  if mt.__deprecated[n] ~= nil then
+    print(string.format("Global variable %s is deprecated.", n))
+    if rawget(_G, "debugstack") ~= nil then
+      print(debugstack(2))
+    end
+    return mt.__deprecated[n]
+  elseif not mt.__declared[n] and debug.getinfo(2, "S").what ~= "C" then
     error("variable '"..n.."' is not declared", 2)
   end
   return rawget(t, n)
@@ -27,4 +34,10 @@
 
 function global(...)
    for _, v in ipairs{...} do mt.__declared[v] = true end
-end
\ No newline at end of file
+end
+
+function deprecateglobal(name, value)
+    assert(type(name) == "string")
+    assert(value ~= nil)
+    mt.__deprecated[name] = value
+end

and in input.lua:


local Input = ...
deprecateglobal("Input", Input)

 

 

If debugprint's PRINT_SOURCE=true, a print from customcommands.lua causes to print the whole file into the log, because the source of the function is not the name of the file like require sets it, but the contents of the file for some reason.

 

  • Like 2
Link to comment
Share on other sites

7 hours ago, GiddyGuy said:

...Dear god...It's Alexandria all over again! :wilson_horror:

A part of me wants the books to have some final spell when they're burnt. So Codex Umbra unleashes shadow creatures, End is Nigh has 1 final usage aimed at the person burning the book, Applied Horticulture to instead wither everything around it, etc.

 

7 hours ago, Monkeygh10 said:
  • You know those sticks that start on the ground when your world has Twiggy trees? Now we know where they come from

So do we know where they come from? is this a lore thing? am I just being stupid?

^^^Where are they coming from?

Personally I think it might be the twiggy trees.

5 hours ago, rezecib said:

I love the new twiggy tree look, although I think there's a small problem with the largest one's swaying animation-- it seems like the base of the tree is twitching.

Also, had a blast reading the new strings, @KrisRF! The WX salt lick one was especially good, although wouldn't "HAIRY MEATSACKS" be even better? :D


SALTLICK = "FLESHLINGS RUB THEIR FILTHY TONGUE-STUMPS ON IT",

 

Maybe Willson and co. have some more...unique interests? Why do you assume he's talking about a Beefalo?

5 hours ago, oCrapaCreeper said:

Maxwell's shadow puppets chop trees slower now :(

How much slower?

2 hours ago, GiddyGuy said:

It however does not have a charred state like most other crafting stations, therefore it is a half crafting station. ;-;

It'll never be a true crafting station.

Stop with the Codex Racism.

#CodexUmbraLivesMatter

  • Like 2
Link to comment
Share on other sites

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
 Share

×
  • Create New...