Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [1:01pm] Ordona: Must be heard to type like that
- [1:01pm] TOAST7312: Actively.
- [1:01pm] Ghostar: Kyren did you do the code work for the terrain generation?
- [1:01pm] demanrisu: Y'know, it's funny, overuse of the word "alas" doesn't make people think you're smarter
- [1:01pm] demanrisu: >_>
- [1:01pm] Ordona: If you check what threads the devs are looking at, a lot of the time it will be suggestions TOAST7312.
- [1:02pm] kyren: yes I do
- [1:02pm] Ghostar: Then I have to ask...
- [1:02pm] Ghostar: WTF
- [1:02pm] demanrisu: Wednesday, Thursday, Friday?
- [1:02pm] Ghostar: I have been trying to replicate some of the terrain
- [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
- [1:02pm] kyren: a lot
- [1:02pm] Ghostar: and I cannot see how some of it is tiled
- [1:02pm] Ordona: I see George browsing suggestions often
- [1:02pm] demanrisu: I'd assume they do blending, Ghostar
- [1:02pm] kyren: haha, it's complicated
- [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.
- [1:02pm] MysteryMan: what are you talking about Ghostar?
- [1:02pm] Ghostar: It is indeed!
- [1:02pm] FrozenDeath550: -wink wink
- [1:02pm] Ghostar: Well think about it.
- [1:02pm] demanrisu: FrozenDeath550: do you have a Steam account?
- [1:02pm] TOAST7312: You don't need to apologize, kyren.. <_<
- [1:03pm] FrozenDeath550: yes
- [1:03pm] Ghostar: Any game thats 2D is generally tiled
- [1:03pm] TOAST7312: You're kind of developing a game.
- [1:03pm] Ghostar: but I cannot find out how exactly Starbound is tiled
- [1:03pm] TOAST7312: Which is kind of a big deal in case you didn't know.
- [1:03pm] kyren: it's tiled with variants
- [1:03pm] Ghostar: Kyren: is the game actually tiled?
- [1:03pm] kyren: yes
- [1:03pm] Ghostar: With variants?
- [1:03pm] kyren: there are variants of each material image
- [1:03pm] kyren: yes
- [1:03pm] kyren: and it's a static 2d field of integers
- [1:03pm] kyren: that pick which variant for each spot
- [1:03pm] TOAST7312: o_O
- [1:03pm] kyren: so that it doesn't look repeated and boring
- [1:03pm] kyren: based on planet seed, in fact
- [1:04pm] Ghostar: I see, thats something I was unable to replicate.
- [1:04pm] MysteryMan: how many are there?
- [1:04pm] kyren: depends on the material
- [1:04pm] kyren: 3-5
- [1:04pm] kyren: sometimes just 1
- [1:04pm] Ghostar: I attempted to do that with my Darkbound suggestion, like Make a planet.
- [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?
- [1:04pm] Ghostar: But it ended up looking like it was completley tiled
- [1:04pm] kyren: uh, worlds aren't endless but they're very big, we *can* have endless worlds but we don't atm
- [1:04pm] kyren: they actually wrap around
- [1:04pm] kyren: like a tube
- [1:05pm] TOAST7312: Endless worlds sound like ridiculous.
- [1:05pm] kyren: yeah ghostar, you have to use multiple variants
- [1:05pm] Ghostar: a tube of You?
- [1:05pm] huhlig-home: kyren, how do you handle coordinates for even players at the ends
- [1:05pm] TOAST7312: They also sound like they would make your computer explode.
- [1:05pm] Ghostar: Then curses!
- [1:05pm] kyren: well, even then it would be the size of a 64 bit int
- [1:05pm] Ghostar: It makes it very difficult to replicate it for suggestions!
- [1:05pm] kyren: and would be "endless"
- [1:05pm] kyren: unless you used an arbitrary precision number system
- [1:05pm] huhlig-home: kyren, ahh ok... thats what I thought
- [1:05pm] kyren: but.. that would be silly
- [1:05pm] kyren: and unnecessary
- [1:05pm] huhlig-home: I was trying to parse endless in my head and failing misrably
- [1:06pm] kyren: "endless"
- [1:06pm] FlutterAi is now known as Nimrod.
- [1:06pm] kyren: even arbitrary precision numbers aren't "endless"
- [1:06pm] huhlig-home: so the larges world size is 32 bits in eigther direction from start
- [1:06pm] kyren: because of limitations of memory
- [1:06pm] Nimrod is now known as FlutterAi.
- [1:06pm] kyren: I mean..
- [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.
- [1:06pm] kyren: busy beaver of 100
- [1:06pm] kyren: there, you can't have a world that big
- [1:06pm] kyren: no matter what
- [1:06pm] Ghostar: I know I would be very interested to see how they interact with eachother.
- [1:07pm] kyren: you have seen them
- [1:07pm] kyren: you've seen all the variants of dirt
- [1:07pm] kyren: tiles are 8px x 8px
- [1:07pm] kyren: with a border
- [1:07pm] Ghostar: wait, they are?
- [1:07pm] kyren: that's auto-tiled with a custom auto-tiling system
- [1:07pm] kyren: yes
- [1:07pm] Ghostar: my estimate was way off...
- [1:07pm] kyren: there are only 4 or 5 variants of dirt, iirc
- [1:08pm] RealEyes: i went to J-crew today
- [1:08pm] TOAST7312: These are the times when I wish I knew how to program. Although this still does make some sense.
- [1:08pm] kyren: huhlig-home: yeah, but right now they're not that big because they wrap and have upper and lower bounds
- [1:08pm] Ghostar: Hm I see. I need to go over the current images again.
- [1:08pm] FrozenDeath550: Thank you demanrisu you are so awsome. you are cooler than my cat. His name is Riley.
- [1:08pm] kyren: I think one of the largest planets we have right now is like 16k around
- [1:08pm] demanrisu: #swag
- [1:08pm] FrozenDeath550 left the chat room. (Quit: Page closed)
- [1:08pm] kyren: and how do we handle wrapping coordinates? *carefully*
- [1:08pm] Ordona: I read that as "frozen cat" O_o
- [1:08pm] kyren: non-euclidean coordinate systems are, to put it mildly
- [1:09pm] kyren: *a frigging pain*
- [1:09pm] huhlig-home: kyren, ok that makes sense. I assume you dont try to hold the entire world in memory at once
- [1:09pm] demanrisu: sigh
- [1:09pm] kyren: no ofc not
- [1:09pm] demanrisu: that guy did NOT thank me as much as I should have :u
- [1:09pm] demanrisu: *he should have
- [1:09pm] Ghostar: "Shes got the whole world, in her hand."
- [1:09pm] demanrisu: >:u
- [1:09pm] Cyan6: she's got the wold word, in her memory
- [1:09pm] MysteryMan: lol
- [1:09pm] FrozenDeath550 joined the chat room.
- [1:09pm] kyren: they're loaded / genned sector by sector
- [1:09pm] MysteryMan: That's funny XD
- [1:09pm] FrozenDeath550: Sorry demanrisu i accidently closed the page
- [1:09pm] Solatrus left the chat room.
- [1:09pm] demanrisu: lawl
- [1:09pm] Cyan6: how large are sectors? in blocks?
- [1:10pm] demanrisu: just keep on heapin' the praise on~
- [1:10pm] Ordona: MysteryMan: I can't do name changes from this computer; its too slow for the forums
- [1:10pm] TOAST7312: Suggestion; non-euclidean liquids.
- [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
- [1:10pm] Ghostar: Reminds me of "Chunks" from minecraft.
- [1:10pm] kyren: yeah, that's it basically
- [1:10pm] demanrisu: I think that's the point, Ghostar
- [1:10pm] kyren: they're chunks
- [1:10pm] Cyan6: same concept. only 2d.
- [1:10pm] MysteryMan: Ordona: You are doing this on purpose.
- [1:10pm] MysteryMan: xD
- [1:10pm] Ghostar: Then I have a question
- [1:10pm] kyren: it influences the maximum size of some objects in some ways
- [1:10pm] kyren: but that's about it
- [1:10pm] demanrisu: kyren: how big is each chunk?
- [1:11pm] demanrisu: in b/kb
- [1:11pm] Ghostar: How will monster spawning work? Will it be offscreen?
- [1:11pm] kyren: oh oh
- [1:11pm] Ordona: MysteryMan: Nah, could show you a screenshot, but it basically says 'The server did not respond in time. Please try again.'
- [1:11pm] kyren: uh.. compressed, like.. tiny
- [1:11pm] kyren: lemme see!
- [1:11pm] kyren: I think the last time I checked like.. far less than 512
- [1:11pm] demanrisu: so you can load worlds really quickly?
- [1:11pm] MysteryMan: It does that to me all the time too
- [1:11pm] kyren: like 200 bytes
- [1:11pm] kyren: or less
- [1:11pm] demanrisu: also: do you store them as 2D arrays or something else?
- [1:11pm] Cyan6: 512 kb? or 512b?
- [1:11pm] kyren: yeah, loading is always fast
- [1:11pm] kyren: 512b
- [1:11pm] Cyan6: o-o
- [1:11pm] Cyan6: /mindblown
- [1:12pm] kyren: less than that
- [1:12pm] kyren: well, that's just the block dat
- [1:12pm] kyren: *data
- [1:12pm] kyren: there's also entity data
- [1:12pm] Cyan6: still.
- [1:12pm] kyren: which, good question lemme print it out
- [1:12pm] Cyan6: and entity data isn't really part of the sector....
- [1:12pm] • demanrisu = best questioner
- [1:12pm] Cyan6: unless... are entities static?
- [1:12pm] demanrisu: Cyan6: you'd hope not!
- [1:13pm] Cyan6: i'm saying entities like creatures....
- [1:13pm] demanrisu: again: you'd hope not!
- [1:13pm] Cyan6: why not?
- [1:13pm] huhlig-home: Cyan6, creatures, furniture, torches
- [1:13pm] demanrisu: because creatures should be dynamic, not statuc
- [1:13pm] demanrisu: *static
- [1:13pm] kyren: no, they're not static
- [1:13pm] kyren: but they're serialized that way if they're "asleep"
- [1:13pm] kyren: by sector
- [1:14pm] MysteryMan: my internet SUCKS
- [1:14pm] kyren: and they can overlap and stuff, so there's always a bit of a border around things
- [1:14pm] kyren: and they end up in "a sector"
- [1:14pm] kyren: but not necessarily the only sector they're in
- [1:14pm] kyren: it works
- [1:14pm] huhlig-home: kyren, curious. is play calculated out of sight
- [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?
- [1:14pm] kyren: depends
- [1:14pm] huhlig-home: I.e. water flowing down if its offscreen. Or circuitry work offworld?
- [1:14pm] kyren: it depends on what it is
- [1:14pm] kyren: water flowing yes, circuitry yes if it's in the same world
- [1:15pm] kyren: we haven't decided about worlds in which *nobody* is on
- [1:15pm] huhlig-home: fair enough
- [1:15pm] MysteryMan left the chat room. (Remote host closed the connection)
- [1:15pm] Sean__ joined the chat room.
- [1:15pm] huhlig-home: It was always annoying in terraria when water would just stop flowing if you were too far down
- [1:15pm] kyren: we can do basically whatever we like, it's just a matter of balancing performance / making it make sense
- [1:15pm] huhlig-home: yeah
- [1:15pm] Cyan6: is starbound multithreaded?
- [1:15pm] AmazingPerson: Add in ALL the things!
- [1:15pm] huhlig-home: makes sense
- [1:16pm] kyren: yes oh god yes
- [1:16pm] Sean__ left the chat room. (Client Quit)
- [1:16pm] huhlig-home: Cyan6, I would hope so
- [1:16pm] kyren: so many threads
- [1:16pm] kyren: too many
- [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?
- [1:16pm] kyren: we need to add thread pooling honestly to some things
- [1:16pm] huhlig-home: kyren, are you using threadqueues?
- [1:16pm] Cyan6: you can never have too many threads.
- [1:16pm] Cyan6: nevar.
- [1:16pm] huhlig-home: Cyan6, uhhh
- [1:16pm] huhlig-home: yeah you can
- [1:16pm] Cyan6: if it causes excess overhead, yeah....
- [1:16pm] kyren: we have
- [1:16pm] huhlig-home: you really should be using more threads then you have cpus
- [1:16pm] huhlig-home: err shouldnt
- [1:16pm] kyren: and the main performance issue right now is windows / opengl something
- [1:16pm] kyren: some kind of
- [1:16pm] kyren: something
- [1:17pm] huhlig-home: otherwise cache coherancy goes out the window
- [1:17pm] kyren: nah, most of the threads spend their time sleeping huhlig-home
- [1:17pm] kyren: like.. threads for network etc
- [1:17pm] huhlig-home: ahh
- [1:17pm] huhlig-home: why not use task queues
- [1:17pm] huhlig-home: I would think the thread overhead would kill you
- [1:18pm] Cyan6: because, starbound is like a finely woven blanket. it needs a lot of threads.
- [1:18pm] Guest76964: how soon till beta release?
- [1:18pm] Cyan6: there probably won't be one <_>
- [1:18pm] kyren: I would love to use thread pooling
- [1:18pm] kyren: we just have to get there
- [1:18pm] huhlig-home: Guest76964, december
- [1:19pm] huhlig-home: kyren, using boost?
- [1:19pm] Cyan6: huhlig-home: he asked about beta
- [1:19pm] kyren: no, c++11
- [1:19pm] huhlig-home: how are native threads in C++ 11?
- [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
- [1:19pm] Ordona left the chat room. (Ping timeout: 245 seconds)
- [1:19pm] kyren: c++11 threads were, up until recently, something to stay away frmo
- [1:19pm] kyren: I think they're fine now?
- [1:19pm] kyren: we're still using a home grown thin thread wrapper
- [1:20pm] huhlig-home: ahh
- [1:20pm] kyren: thread + mutex + condition variable
- [1:20pm] kyren: but.. thread pooling isn't hard or anything
- [1:20pm] huhlig-home: Ive used pthread in the past
- [1:20pm] kyren: the implementation isn't hard
- [1:20pm] kyren: it's making it so that everything ties together
- [1:20pm] kyren: we'll get there
- [1:20pm] Frozendeath550 left the chat room. (Ping timeout: 245 seconds)
- [1:20pm] demanrisu: kyren: any estimate on how many lines of code Starbound has right now?
- [1:20pm] demanrisu: not that it means anything, I'm just curious
- [1:21pm] tramsan: kyren always spills the best beans
- [1:21pm] tramsan: mm beans
- [1:21pm] demanrisu: she does, haha
- [1:21pm] kyren: a lot of it in the core/ folder is non-starbound related, tbh
- [1:21pm] kyren: because I started the codebase
- [1:21pm] huhlig-home: kyren, before tiy?
- [1:21pm] kyren: and I dragged a lot of stuff from another codebase with it
- [1:21pm] huhlig-home: ahh
- [1:21pm] MysteryMan joined the chat room.
- [1:21pm] kyren: tiy's not really a programmer haha
- [1:22pm] huhlig-home: so are you guys actually planning on FOSSing starbound later
- [1:22pm] MysteryMan: He's an artist
- [1:22pm] kyren: but I did have some of the code that existed before meeting tiy
- [1:22pm] Rayzond left the chat room.
- [1:22pm] Gabranth123: Don't diss my boy Tiy, yo
- [1:22pm] kyren: I would like to personally but I have zero say in it
- [1:22pm] huhlig-home: ahh
- [1:22pm] huhlig-home: I would love to see how you did the generation
- [1:22pm] MysteryMan: An amazing, inspiring, awesome, beau...good artist.
- [1:22pm] kyren: > 59449 lines total
- [1:22pm] demanrisu: huhlig-home: that's why we use decompilers
- [1:23pm] huhlig-home: demanrisu, decompilers suck for C++
- [1:23pm] kyren: oh god no
- [1:23pm] demanrisu: hee hee
- [1:23pm] kyren: please
- [1:23pm] demanrisu: I never said decompilers were /good/
- [1:23pm] kyren: it's so bad
- [1:23pm] Cyan6: what are you using as an IDE kyren?
- [1:23pm] kyren: don't do that, I'd feel awful making people use decompilers to do what they want
- [1:23pm] kyren: does vim count?
- [1:23pm] Cyan6: /personal qustion
- [1:23pm] Cyan6: ha
- [1:23pm] Cyan6: sorta
- [1:23pm] kyren: I wish I used an ide
- [1:23pm] kyren: there's stuff I want from ides
- [1:24pm] kyren: none of them let me use vim keys / macros / nonsense which has infected my brain
- [1:24pm] Cyan6: what os are you running kyren?
- [1:24pm] huhlig-home: kyren, actually there is a vimkeys mod for several
- [1:24pm] huhlig-home: what OS?
- [1:24pm] kyren: okay, here we go
- [1:24pm] kyren: tile sector compressedSize 226
- [1:24pm] kyren: entity sector compressedSize 58
- [1:24pm] kyren: tile sector compressedSize 309
- [1:24pm] kyren: tile sector compressedSize 142
- [1:24pm] kyren: entity sector compressedSize 10
- [1:24pm] kyren: tile sector compressedSize 96
- [1:24pm] kyren: entity sector compressedSize 41
- [1:24pm] kyren: tile sector compressedSize 197
- [1:24pm] kyren: there's your answer
- [1:24pm] demanrisu: oooh neato, thanks <3
- [1:24pm] kyren: os x
- [1:24pm] MysteryMan: this nerd talk is hurting my brain
- [1:24pm] demanrisu: BEST O
- [1:25pm] demanrisu: *best os
- [1:25pm] huhlig-home: linux?
- [1:25pm] kyren: os x right now
- [1:25pm] kyren: I've used them all
- [1:25pm] huhlig-home: ahh
- [1:25pm] kyren: a lot
- [1:25pm] Cyan6: sublime text has a (disabled by default) package with pretty decent vim command support..
- [1:25pm] tramsan: This nerd talk is better than butter.
- [1:25pm] Cyan6: at least in the dev version.
- [1:25pm] Cyan6: s
- [1:25pm] kyren: yeah, but.. ide right?
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement