Advertisement
Guest User

kyren

a guest
Aug 19th, 2012
1,462
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.81 KB | None | 0 0
  1. [1:01pm] Ordona: Must be heard to type like that
  2. [1:01pm] TOAST7312: Actively.
  3. [1:01pm] Ghostar: Kyren did you do the code work for the terrain generation?
  4. [1:01pm] demanrisu: Y'know, it's funny, overuse of the word "alas" doesn't make people think you're smarter
  5. [1:01pm] demanrisu: >_>
  6. [1:01pm] Ordona: If you check what threads the devs are looking at, a lot of the time it will be suggestions TOAST7312.
  7. [1:02pm] kyren: yes I do
  8. [1:02pm] Ghostar: Then I have to ask...
  9. [1:02pm] Ghostar: WTF
  10. [1:02pm] demanrisu: Wednesday, Thursday, Friday?
  11. [1:02pm] Ghostar: I have been trying to replicate some of the terrain
  12. [1:02pm] kyren: yeah, we do read the suggestion forums, I'm sorry if I don't read it very often though, I'm.. busy
  13. [1:02pm] kyren: a lot
  14. [1:02pm] Ghostar: and I cannot see how some of it is tiled
  15. [1:02pm] Ordona: I see George browsing suggestions often
  16. [1:02pm] demanrisu: I'd assume they do blending, Ghostar
  17. [1:02pm] kyren: haha, it's complicated
  18. [1:02pm] FrozenDeath550: but no really demanrisu what are some fun cool whatever downloadable games. I wish I had Wanderlust Rebirth. I hear its fun.
  19. [1:02pm] MysteryMan: what are you talking about Ghostar?
  20. [1:02pm] Ghostar: It is indeed!
  21. [1:02pm] FrozenDeath550: -wink wink
  22. [1:02pm] Ghostar: Well think about it.
  23. [1:02pm] demanrisu: FrozenDeath550: do you have a Steam account?
  24. [1:02pm] TOAST7312: You don't need to apologize, kyren.. <_<
  25. [1:03pm] FrozenDeath550: yes
  26. [1:03pm] Ghostar: Any game thats 2D is generally tiled
  27. [1:03pm] TOAST7312: You're kind of developing a game.
  28. [1:03pm] Ghostar: but I cannot find out how exactly Starbound is tiled
  29. [1:03pm] TOAST7312: Which is kind of a big deal in case you didn't know.
  30. [1:03pm] kyren: it's tiled with variants
  31. [1:03pm] Ghostar: Kyren: is the game actually tiled?
  32. [1:03pm] kyren: yes
  33. [1:03pm] Ghostar: With variants?
  34. [1:03pm] kyren: there are variants of each material image
  35. [1:03pm] kyren: yes
  36. [1:03pm] kyren: and it's a static 2d field of integers
  37. [1:03pm] kyren: that pick which variant for each spot
  38. [1:03pm] TOAST7312: o_O
  39. [1:03pm] kyren: so that it doesn't look repeated and boring
  40. [1:03pm] kyren: based on planet seed, in fact
  41. [1:04pm] Ghostar: I see, thats something I was unable to replicate.
  42. [1:04pm] MysteryMan: how many are there?
  43. [1:04pm] kyren: depends on the material
  44. [1:04pm] kyren: 3-5
  45. [1:04pm] kyren: sometimes just 1
  46. [1:04pm] Ghostar: I attempted to do that with my Darkbound suggestion, like Make a planet.
  47. [1:04pm] huhlig-home: one question kyren. Tiy has said worlds are endless, so is the galaxy. is it actually endless or just to the size of a 64 bit int?
  48. [1:04pm] Ghostar: But it ended up looking like it was completley tiled
  49. [1:04pm] kyren: uh, worlds aren't endless but they're very big, we *can* have endless worlds but we don't atm
  50. [1:04pm] kyren: they actually wrap around
  51. [1:04pm] kyren: like a tube
  52. [1:05pm] TOAST7312: Endless worlds sound like ridiculous.
  53. [1:05pm] kyren: yeah ghostar, you have to use multiple variants
  54. [1:05pm] Ghostar: a tube of You?
  55. [1:05pm] huhlig-home: kyren, how do you handle coordinates for even players at the ends
  56. [1:05pm] TOAST7312: They also sound like they would make your computer explode.
  57. [1:05pm] Ghostar: Then curses!
  58. [1:05pm] kyren: well, even then it would be the size of a 64 bit int
  59. [1:05pm] Ghostar: It makes it very difficult to replicate it for suggestions!
  60. [1:05pm] kyren: and would be "endless"
  61. [1:05pm] kyren: unless you used an arbitrary precision number system
  62. [1:05pm] huhlig-home: kyren, ahh ok... thats what I thought
  63. [1:05pm] kyren: but.. that would be silly
  64. [1:05pm] kyren: and unnecessary
  65. [1:05pm] huhlig-home: I was trying to parse endless in my head and failing misrably
  66. [1:06pm] kyren: "endless"
  67. [1:06pm] FlutterAi is now known as Nimrod.
  68. [1:06pm] kyren: even arbitrary precision numbers aren't "endless"
  69. [1:06pm] huhlig-home: so the larges world size is 32 bits in eigther direction from start
  70. [1:06pm] kyren: because of limitations of memory
  71. [1:06pm] Nimrod is now known as FlutterAi.
  72. [1:06pm] kyren: I mean..
  73. [1:06pm] Ghostar: Kyren: might I make a suggestion on something the forum might like? Show an image of one biome with all the variants or at least a few.
  74. [1:06pm] kyren: busy beaver of 100
  75. [1:06pm] kyren: there, you can't have a world that big
  76. [1:06pm] kyren: no matter what
  77. [1:06pm] Ghostar: I know I would be very interested to see how they interact with eachother.
  78. [1:07pm] kyren: you have seen them
  79. [1:07pm] kyren: you've seen all the variants of dirt
  80. [1:07pm] kyren: tiles are 8px x 8px
  81. [1:07pm] kyren: with a border
  82. [1:07pm] Ghostar: wait, they are?
  83. [1:07pm] kyren: that's auto-tiled with a custom auto-tiling system
  84. [1:07pm] kyren: yes
  85. [1:07pm] Ghostar: my estimate was way off...
  86. [1:07pm] kyren: there are only 4 or 5 variants of dirt, iirc
  87. [1:08pm] RealEyes: i went to J-crew today
  88. [1:08pm] TOAST7312: These are the times when I wish I knew how to program. Although this still does make some sense.
  89. [1:08pm] kyren: huhlig-home: yeah, but right now they're not that big because they wrap and have upper and lower bounds
  90. [1:08pm] Ghostar: Hm I see. I need to go over the current images again.
  91. [1:08pm] FrozenDeath550: Thank you demanrisu you are so awsome. you are cooler than my cat. His name is Riley.
  92. [1:08pm] kyren: I think one of the largest planets we have right now is like 16k around
  93. [1:08pm] demanrisu: #swag
  94. [1:08pm] FrozenDeath550 left the chat room. (Quit: Page closed)
  95. [1:08pm] kyren: and how do we handle wrapping coordinates? *carefully*
  96. [1:08pm] Ordona: I read that as "frozen cat" O_o
  97. [1:08pm] kyren: non-euclidean coordinate systems are, to put it mildly
  98. [1:09pm] kyren: *a frigging pain*
  99. [1:09pm] huhlig-home: kyren, ok that makes sense. I assume you dont try to hold the entire world in memory at once
  100. [1:09pm] demanrisu: sigh
  101. [1:09pm] kyren: no ofc not
  102. [1:09pm] demanrisu: that guy did NOT thank me as much as I should have :u
  103. [1:09pm] demanrisu: *he should have
  104. [1:09pm] Ghostar: "Shes got the whole world, in her hand."
  105. [1:09pm] demanrisu: >:u
  106. [1:09pm] Cyan6: she's got the wold word, in her memory
  107. [1:09pm] MysteryMan: lol
  108. [1:09pm] FrozenDeath550 joined the chat room.
  109. [1:09pm] kyren: they're loaded / genned sector by sector
  110. [1:09pm] MysteryMan: That's funny XD
  111. [1:09pm] FrozenDeath550: Sorry demanrisu i accidently closed the page
  112. [1:09pm] Solatrus left the chat room.
  113. [1:09pm] demanrisu: lawl
  114. [1:09pm] Cyan6: how large are sectors? in blocks?
  115. [1:10pm] demanrisu: just keep on heapin' the praise on~
  116. [1:10pm] Ordona: MysteryMan: I can't do name changes from this computer; its too slow for the forums
  117. [1:10pm] TOAST7312: Suggestion; non-euclidean liquids.
  118. [1:10pm] kyren: 32 x 32, but we might change it.. it's not really hard to change it's only specified in one place
  119. [1:10pm] Ghostar: Reminds me of "Chunks" from minecraft.
  120. [1:10pm] kyren: yeah, that's it basically
  121. [1:10pm] demanrisu: I think that's the point, Ghostar
  122. [1:10pm] kyren: they're chunks
  123. [1:10pm] Cyan6: same concept. only 2d.
  124. [1:10pm] MysteryMan: Ordona: You are doing this on purpose.
  125. [1:10pm] MysteryMan: xD
  126. [1:10pm] Ghostar: Then I have a question
  127. [1:10pm] kyren: it influences the maximum size of some objects in some ways
  128. [1:10pm] kyren: but that's about it
  129. [1:10pm] demanrisu: kyren: how big is each chunk?
  130. [1:11pm] demanrisu: in b/kb
  131. [1:11pm] Ghostar: How will monster spawning work? Will it be offscreen?
  132. [1:11pm] kyren: oh oh
  133. [1:11pm] Ordona: MysteryMan: Nah, could show you a screenshot, but it basically says 'The server did not respond in time. Please try again.'
  134. [1:11pm] kyren: uh.. compressed, like.. tiny
  135. [1:11pm] kyren: lemme see!
  136. [1:11pm] kyren: I think the last time I checked like.. far less than 512
  137. [1:11pm] demanrisu: so you can load worlds really quickly?
  138. [1:11pm] MysteryMan: It does that to me all the time too
  139. [1:11pm] kyren: like 200 bytes
  140. [1:11pm] kyren: or less
  141. [1:11pm] demanrisu: also: do you store them as 2D arrays or something else?
  142. [1:11pm] Cyan6: 512 kb? or 512b?
  143. [1:11pm] kyren: yeah, loading is always fast
  144. [1:11pm] kyren: 512b
  145. [1:11pm] Cyan6: o-o
  146. [1:11pm] Cyan6: /mindblown
  147. [1:12pm] kyren: less than that
  148. [1:12pm] kyren: well, that's just the block dat
  149. [1:12pm] kyren: *data
  150. [1:12pm] kyren: there's also entity data
  151. [1:12pm] Cyan6: still.
  152. [1:12pm] kyren: which, good question lemme print it out
  153. [1:12pm] Cyan6: and entity data isn't really part of the sector....
  154. [1:12pm] • demanrisu = best questioner
  155. [1:12pm] Cyan6: unless... are entities static?
  156. [1:12pm] demanrisu: Cyan6: you'd hope not!
  157. [1:13pm] Cyan6: i'm saying entities like creatures....
  158. [1:13pm] demanrisu: again: you'd hope not!
  159. [1:13pm] Cyan6: why not?
  160. [1:13pm] huhlig-home: Cyan6, creatures, furniture, torches
  161. [1:13pm] demanrisu: because creatures should be dynamic, not statuc
  162. [1:13pm] demanrisu: *static
  163. [1:13pm] kyren: no, they're not static
  164. [1:13pm] kyren: but they're serialized that way if they're "asleep"
  165. [1:13pm] kyren: by sector
  166. [1:14pm] MysteryMan: my internet SUCKS
  167. [1:14pm] kyren: and they can overlap and stuff, so there's always a bit of a border around things
  168. [1:14pm] kyren: and they end up in "a sector"
  169. [1:14pm] kyren: but not necessarily the only sector they're in
  170. [1:14pm] kyren: it works
  171. [1:14pm] huhlig-home: kyren, curious. is play calculated out of sight
  172. [1:14pm] Cyan6: i mean if you were to quit starbound and start it back up, would they stil be where they were when you left?
  173. [1:14pm] kyren: depends
  174. [1:14pm] huhlig-home: I.e. water flowing down if its offscreen. Or circuitry work offworld?
  175. [1:14pm] kyren: it depends on what it is
  176. [1:14pm] kyren: water flowing yes, circuitry yes if it's in the same world
  177. [1:15pm] kyren: we haven't decided about worlds in which *nobody* is on
  178. [1:15pm] huhlig-home: fair enough
  179. [1:15pm] MysteryMan left the chat room. (Remote host closed the connection)
  180. [1:15pm] Sean__ joined the chat room.
  181. [1:15pm] huhlig-home: It was always annoying in terraria when water would just stop flowing if you were too far down
  182. [1:15pm] kyren: we can do basically whatever we like, it's just a matter of balancing performance / making it make sense
  183. [1:15pm] huhlig-home: yeah
  184. [1:15pm] Cyan6: is starbound multithreaded?
  185. [1:15pm] AmazingPerson: Add in ALL the things!
  186. [1:15pm] huhlig-home: makes sense
  187. [1:16pm] kyren: yes oh god yes
  188. [1:16pm] Sean__ left the chat room. (Client Quit)
  189. [1:16pm] huhlig-home: Cyan6, I would hope so
  190. [1:16pm] kyren: so many threads
  191. [1:16pm] kyren: too many
  192. [1:16pm] demanrisu: kyren, Tiy mentioned in his AMA that the game runs perfectly on a min-spec Macbook Air - have you guys tested it on any other, less powerful PCs?
  193. [1:16pm] kyren: we need to add thread pooling honestly to some things
  194. [1:16pm] huhlig-home: kyren, are you using threadqueues?
  195. [1:16pm] Cyan6: you can never have too many threads.
  196. [1:16pm] Cyan6: nevar.
  197. [1:16pm] huhlig-home: Cyan6, uhhh
  198. [1:16pm] huhlig-home: yeah you can
  199. [1:16pm] Cyan6: if it causes excess overhead, yeah....
  200. [1:16pm] kyren: we have
  201. [1:16pm] huhlig-home: you really should be using more threads then you have cpus
  202. [1:16pm] huhlig-home: err shouldnt
  203. [1:16pm] kyren: and the main performance issue right now is windows / opengl something
  204. [1:16pm] kyren: some kind of
  205. [1:16pm] kyren: something
  206. [1:17pm] huhlig-home: otherwise cache coherancy goes out the window
  207. [1:17pm] kyren: nah, most of the threads spend their time sleeping huhlig-home
  208. [1:17pm] kyren: like.. threads for network etc
  209. [1:17pm] huhlig-home: ahh
  210. [1:17pm] huhlig-home: why not use task queues
  211. [1:17pm] huhlig-home: I would think the thread overhead would kill you
  212. [1:18pm] Cyan6: because, starbound is like a finely woven blanket. it needs a lot of threads.
  213. [1:18pm] Guest76964: how soon till beta release?
  214. [1:18pm] Cyan6: there probably won't be one <_>
  215. [1:18pm] kyren: I would love to use thread pooling
  216. [1:18pm] kyren: we just have to get there
  217. [1:18pm] huhlig-home: Guest76964, december
  218. [1:19pm] huhlig-home: kyren, using boost?
  219. [1:19pm] Cyan6: huhlig-home: he asked about beta
  220. [1:19pm] kyren: no, c++11
  221. [1:19pm] huhlig-home: how are native threads in C++ 11?
  222. [1:19pm] demanrisu: Cyan6: for all intents and purposes, we can refer to release as beta - they're essentially the same things unless the devs decide to do an open beta
  223. [1:19pm] Ordona left the chat room. (Ping timeout: 245 seconds)
  224. [1:19pm] kyren: c++11 threads were, up until recently, something to stay away frmo
  225. [1:19pm] kyren: I think they're fine now?
  226. [1:19pm] kyren: we're still using a home grown thin thread wrapper
  227. [1:20pm] huhlig-home: ahh
  228. [1:20pm] kyren: thread + mutex + condition variable
  229. [1:20pm] kyren: but.. thread pooling isn't hard or anything
  230. [1:20pm] huhlig-home: Ive used pthread in the past
  231. [1:20pm] kyren: the implementation isn't hard
  232. [1:20pm] kyren: it's making it so that everything ties together
  233. [1:20pm] kyren: we'll get there
  234. [1:20pm] Frozendeath550 left the chat room. (Ping timeout: 245 seconds)
  235. [1:20pm] demanrisu: kyren: any estimate on how many lines of code Starbound has right now?
  236. [1:20pm] demanrisu: not that it means anything, I'm just curious
  237. [1:21pm] tramsan: kyren always spills the best beans
  238. [1:21pm] tramsan: mm beans
  239. [1:21pm] demanrisu: she does, haha
  240. [1:21pm] kyren: a lot of it in the core/ folder is non-starbound related, tbh
  241. [1:21pm] kyren: because I started the codebase
  242. [1:21pm] huhlig-home: kyren, before tiy?
  243. [1:21pm] kyren: and I dragged a lot of stuff from another codebase with it
  244. [1:21pm] huhlig-home: ahh
  245. [1:21pm] MysteryMan joined the chat room.
  246. [1:21pm] kyren: tiy's not really a programmer haha
  247. [1:22pm] huhlig-home: so are you guys actually planning on FOSSing starbound later
  248. [1:22pm] MysteryMan: He's an artist
  249. [1:22pm] kyren: but I did have some of the code that existed before meeting tiy
  250. [1:22pm] Rayzond left the chat room.
  251. [1:22pm] Gabranth123: Don't diss my boy Tiy, yo
  252. [1:22pm] kyren: I would like to personally but I have zero say in it
  253. [1:22pm] huhlig-home: ahh
  254. [1:22pm] huhlig-home: I would love to see how you did the generation
  255. [1:22pm] MysteryMan: An amazing, inspiring, awesome, beau...good artist.
  256. [1:22pm] kyren: > 59449 lines total
  257. [1:22pm] demanrisu: huhlig-home: that's why we use decompilers
  258. [1:23pm] huhlig-home: demanrisu, decompilers suck for C++
  259. [1:23pm] kyren: oh god no
  260. [1:23pm] demanrisu: hee hee
  261. [1:23pm] kyren: please
  262. [1:23pm] demanrisu: I never said decompilers were /good/
  263. [1:23pm] kyren: it's so bad
  264. [1:23pm] Cyan6: what are you using as an IDE kyren?
  265. [1:23pm] kyren: don't do that, I'd feel awful making people use decompilers to do what they want
  266. [1:23pm] kyren: does vim count?
  267. [1:23pm] Cyan6: /personal qustion
  268. [1:23pm] Cyan6: ha
  269. [1:23pm] Cyan6: sorta
  270. [1:23pm] kyren: I wish I used an ide
  271. [1:23pm] kyren: there's stuff I want from ides
  272. [1:24pm] kyren: none of them let me use vim keys / macros / nonsense which has infected my brain
  273. [1:24pm] Cyan6: what os are you running kyren?
  274. [1:24pm] huhlig-home: kyren, actually there is a vimkeys mod for several
  275. [1:24pm] huhlig-home: what OS?
  276. [1:24pm] kyren: okay, here we go
  277. [1:24pm] kyren: tile sector compressedSize 226
  278. [1:24pm] kyren: entity sector compressedSize 58
  279. [1:24pm] kyren: tile sector compressedSize 309
  280. [1:24pm] kyren: tile sector compressedSize 142
  281. [1:24pm] kyren: entity sector compressedSize 10
  282. [1:24pm] kyren: tile sector compressedSize 96
  283. [1:24pm] kyren: entity sector compressedSize 41
  284. [1:24pm] kyren: tile sector compressedSize 197
  285. [1:24pm] kyren: there's your answer
  286. [1:24pm] demanrisu: oooh neato, thanks <3
  287. [1:24pm] kyren: os x
  288. [1:24pm] MysteryMan: this nerd talk is hurting my brain
  289. [1:24pm] demanrisu: BEST O
  290. [1:25pm] demanrisu: *best os
  291. [1:25pm] huhlig-home: linux?
  292. [1:25pm] kyren: os x right now
  293. [1:25pm] kyren: I've used them all
  294. [1:25pm] huhlig-home: ahh
  295. [1:25pm] kyren: a lot
  296. [1:25pm] Cyan6: sublime text has a (disabled by default) package with pretty decent vim command support..
  297. [1:25pm] tramsan: This nerd talk is better than butter.
  298. [1:25pm] Cyan6: at least in the dev version.
  299. [1:25pm] Cyan6: s
  300. [1:25pm] kyren: yeah, but.. ide right?
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement