Thank you flat for your insights and observations regarding the current state of LT and Josh.
I really hope that the LuaJIT approach is strong enough to break the FPLT roadblock. I keep confident...
Post
Sat Jan 28, 2017 7:24 am
#122
Therefore in my opinion it won’t make sense to compare the LTP with any version of LT mainly used for low-level analysis and concept testing.
Re: Limit Theory @ PAX South!
I started the LTP again this morning. The last time I started the prototype was approx. 2.5 years ago. Just from the details of the last dev upd #21 this version feels antiquated.BFett wrote:Flat, I believe you were one of the backers who had access to the prototype. Can you tell us more about the demo that Josh had running and possibly how it would compare with the prototype from 2012?
Therefore in my opinion it won’t make sense to compare the LTP with any version of LT mainly used for low-level analysis and concept testing.
Post
Sat Jan 28, 2017 10:24 am
#123
But one question, did you have a phone on you to take screenies??
Re: Limit Theory @ PAX South!
Thank you Flat for taking the time out to visit PAX, meet Josh, and write a wonderful write-up of your experienceFlatfingers wrote: Some quick technical notes:
- I saw a snippet of the Lua code -- it's as clean as LTSL was. If LuaJIT winds up working, it will be a fine modding language.awesome
- Freakin' garbage collection, man.Is this a good thing or bad thing, I can't tell?
- Josh was not exaggerating when he said his system procgen had produced a beautiful system. Wow.Any screenies?
- The combination of contrasting nebula/star colors, and the lighting model for nebulae, will make your eyes very happy.I'm already happy, how much more happier can I be?
- Screenshots do not do these nebulae justice. Videos do not capture what they look like in person. Wait till you see this.No screenies?
- As Josh was showing me the star system, the exhibitor in the next booth over spoke up to praise it. Woulda loved to have seen Josh's face at that moment
But one question, did you have a phone on you to take screenies??
Post
Sat Jan 28, 2017 10:48 am
#124
Re: Limit Theory @ PAX South!
Flatfingers - wonderful post! Loved every bit! Thank you so much for taking some time out of your schedule to go visit.
FormalMoss: I hear Skyfligher has his camera with him and is going to get some pictures today - and quite possibly some video.
FormalMoss: I hear Skyfligher has his camera with him and is going to get some pictures today - and quite possibly some video.
Have a question? Send me a PM! || I have a Patreon page up for REKT now! || People talking in IRC over the past two hours:
Post
Sat Jan 28, 2017 1:24 pm
#125
Re: Limit Theory @ PAX South!
1. Josh had LT going in a couple of modes at PAX South. One (what I think of as the "demo reel") was a looping sequence of stills from earlier incarnations of the game, showing some of the features seen in the development videos -- LT as it will be. The other, which I think Josh showed me mostly for my benefit, was the very minimal "live" version of LT as it exists currently, which he's still working on.
The Limit Theory Prototype (LTP) was a reduced-feature-set implementation that showed off some very early ideas about star system graphics, asteroids, flight mechanics, combat, station docking, ship component trading, ship component configuration, and missions. That sounds like a lot -- and it was! -- but it didn't try to address any of the relatively much harder (from a performance perspective) questions of multiple wormhole-connected star systems, non-combatant AI, asteroid-based resources, research, object fabrication, procedural ship and station generation, project-creation by NPCs, factions, player conversations with NPCs, market-based economies, planetary colony management, planet-based landing sites for colony interactions, fleet management gameplay, and level-of-detail scaling across an entire procedurally-expanding universe of star systems.
It's an architecture that can support all those additional features (which reasonably could be considered necessary to deliver the gameplay experience that Josh described in his Kickstarter) that distinguishes what Josh is working on today from the LTP. The Prototype was very valuable as it showed off what a small part of the actual Limit Theory might look and feel like, as well as demonstrating to potential backers that Josh actually does know how to code. But it was far from being the Real Game, or a suitable platform on which the Real Game could be built.
In fact, let me stress that last point. While I don't know everything about LT, I think I'm not wrong in saying that it was never an option to try to extend the LTP into the full Limit Theory. The prototype was never designed to have all the "hooks" necessary to do all the other things; it was never going to be a platform capable of handling all the multi-system and simulation stuff. If Josh had wrongly tried to go that route, just hard-coding everything, the resulting product would have been a disaster to try to maintain or extend, if it even would have worked at all.
For the kind of dynamic, massively simulated and yet highly responsive world that Josh requires to make the game he wants, there was never any responsible option but to design and build it from scratch. It's just an unfortunate fact that this is Really Hard To Do. But I've never known anyone with Josh's level of programming capability. I think he can do it.
2. On pictures... it did occur to me. But once we got to talking, I just plain forgot to ask!
I'm more of a words guy, anyway.
The Limit Theory Prototype (LTP) was a reduced-feature-set implementation that showed off some very early ideas about star system graphics, asteroids, flight mechanics, combat, station docking, ship component trading, ship component configuration, and missions. That sounds like a lot -- and it was! -- but it didn't try to address any of the relatively much harder (from a performance perspective) questions of multiple wormhole-connected star systems, non-combatant AI, asteroid-based resources, research, object fabrication, procedural ship and station generation, project-creation by NPCs, factions, player conversations with NPCs, market-based economies, planetary colony management, planet-based landing sites for colony interactions, fleet management gameplay, and level-of-detail scaling across an entire procedurally-expanding universe of star systems.
It's an architecture that can support all those additional features (which reasonably could be considered necessary to deliver the gameplay experience that Josh described in his Kickstarter) that distinguishes what Josh is working on today from the LTP. The Prototype was very valuable as it showed off what a small part of the actual Limit Theory might look and feel like, as well as demonstrating to potential backers that Josh actually does know how to code. But it was far from being the Real Game, or a suitable platform on which the Real Game could be built.
In fact, let me stress that last point. While I don't know everything about LT, I think I'm not wrong in saying that it was never an option to try to extend the LTP into the full Limit Theory. The prototype was never designed to have all the "hooks" necessary to do all the other things; it was never going to be a platform capable of handling all the multi-system and simulation stuff. If Josh had wrongly tried to go that route, just hard-coding everything, the resulting product would have been a disaster to try to maintain or extend, if it even would have worked at all.
For the kind of dynamic, massively simulated and yet highly responsive world that Josh requires to make the game he wants, there was never any responsible option but to design and build it from scratch. It's just an unfortunate fact that this is Really Hard To Do. But I've never known anyone with Josh's level of programming capability. I think he can do it.
2. On pictures... it did occur to me. But once we got to talking, I just plain forgot to ask!
I'm more of a words guy, anyway.
Post
Sat Jan 28, 2017 1:53 pm
#126
Re: Limit Theory @ PAX South!
And boy do you write wonderful words, good sir.Flatfingers wrote: 2. On pictures... it did occur to me. But once we got to talking, I just plain forgot to ask!
I'm more of a words guy, anyway.
Post
Sat Jan 28, 2017 3:38 pm
#127
Great post, but I think this is what most people tend to either forget or never consider. What he is trying to do is extremely difficult, and if he manages to actually pull it off, which I think he will, this game is going to rock the space game world.
Re: Limit Theory @ PAX South!
Flatfingers wrote:
...snip
For the kind of dynamic, massively simulated and yet highly responsive world that Josh requires to make the game he wants, there was never any responsible option but to design and build it from scratch. It's just an unfortunate fact that this is Really Hard To Do. But I've never known anyone with Josh's level of programming capability. I think he can do it.
...snip
Great post, but I think this is what most people tend to either forget or never consider. What he is trying to do is extremely difficult, and if he manages to actually pull it off, which I think he will, this game is going to rock the space game world.
Ask, and it will be given to you; seek, and you will find; knock, and it will be opened to you.
Post
Sat Jan 28, 2017 4:47 pm
#128
Glad Josh has broken that streak recently though and is on the forums as well as getting out to conventions.
Early Spring - 1055: Well, I made it to Boatmurdered, and my initial impressions can be set forth in three words: What. The. F*ck.
Re: Limit Theory @ PAX South!
Oh people aren't forgetting to consider that. People know it's a very difficult task. What most people wanted was communication a little more frequently than once every 4-6 months.Poet1960 wrote:Flatfingers wrote:
...snip
For the kind of dynamic, massively simulated and yet highly responsive world that Josh requires to make the game he wants, there was never any responsible option but to design and build it from scratch. It's just an unfortunate fact that this is Really Hard To Do. But I've never known anyone with Josh's level of programming capability. I think he can do it.
...snip
Great post, but I think this is what most people tend to either forget or never consider. What he is trying to do is extremely difficult, and if he manages to actually pull it off, which I think he will, this game is going to rock the space game world.
Glad Josh has broken that streak recently though and is on the forums as well as getting out to conventions.
Early Spring - 1055: Well, I made it to Boatmurdered, and my initial impressions can be set forth in three words: What. The. F*ck.
Post
Sat Jan 28, 2017 5:02 pm
#129
Re: Limit Theory @ PAX South!
This, if Josh posted once a week, during that entire period, and told us what his issues were, then I doubt anyone would care all that much about the late delivery.DWMagus wrote:Oh people aren't forgetting to consider that. People know it's a very difficult task. What most people wanted was communication a little more frequently than once every 4-6 months.
Glad Josh has broken that streak recently though and is on the forums as well as getting out to conventions.
<Cuisinart8> apparently without the demon driving him around Silver has the intelligence of a botched lobotomy patient ~ Mar 04 2020
console.log(`What's all ${this} ${Date.now()}`);
console.log(`What's all ${this} ${Date.now()}`);
Post
Sat Jan 28, 2017 7:05 pm
#130
Re: Limit Theory @ PAX South!
Sooo.. You coming to PAX AUS this year too, Josh?
... Well, a man can dream, can't he.
Thanks Flat, for letting us know how things went.
... Well, a man can dream, can't he.
Thanks Flat, for letting us know how things went.
- The Snark Knight
"Look upward, and share the wonders I've seen."
"Look upward, and share the wonders I've seen."
Post
Sun Jan 29, 2017 12:15 am
#131
A good PRNG is likely to be extremely small and simple code-wise. An example is the PCG set of random number generators, whose core generator is summarized as
or something like xoroshiro128+, the website for which is sadly down for the moment. These need not be complex functions, and in fact they are likely to be better-off being simple. Of course, wrappers around CSPRNGs are equally suitable, and those are nowadays fast enough to be generally feasible, even if they are also overkill.
Note that this contains fairly simple constants like 18 and 27; their existence does not necessarily represent a flaw in the generation scheme.
A Mersenne Twister is a generally poor PRNG, being bloated, slow and not very random. It takes the "brute force" approach to randomness, rather than a structured attempt at producing good random values, and fails fairly badly given how much effort it puts in. For reference, see my question Why is the Mersenne Twister regarded as good? You are better off with even a 96-bit LCG.
Large seed states do not a good RNG make. They are generally indicators that the underlying generation scheme is poor, and that it had to be propped up with other models. The exception is of course a CSPRNG, though those actually pass through stringent review.
A good, accessible rundown of non-cryptographic random number generation is given in The PCG Paper, which I would recommend if not for your general lack of time for anything. Just to pique your interest, though, last time I recommended it the response was
Re: Limit Theory @ PAX South!
Though you're not entirely wrong here, you're saying a lot of Programmer Folklore that is basically unfounded. Can't really blame you, given it is "common knowledge", but it's still wrong, and that irks me. Hopefully this reply has left my rants hidden mostly behind links, so as not to result in a full-on essay. Note that if you want cryptography guarantees you should not follow the advice I give here.JoshParnell wrote:I certainly can't tell what the output will be, but for sure this would not pass the gauntlet of 'is it really random' tests...I can almost understand what it does and that's not a good sign Still no idea what floatFix is though. I see INT_MAX and a high power of seven in there though, which I'm not particularly fond of (why not primes?) But anyway. Probably better than rand()'s LCG.
FWIW Mersenne starts (typically) with ~624 loops of state 'twiddling' based on the seed immediately when it's constructed, so you get a good distribution right off the bat.
A good PRNG is likely to be extremely small and simple code-wise. An example is the PCG set of random number generators, whose core generator is summarized as
Code: Select all
// *Really* minimal PCG32 code / (c) 2014 M.E. O'Neill / pcg-random.org
// Licensed under Apache License 2.0 (NO WARRANTY, etc. see website)
typedef struct { uint64_t state; uint64_t inc; } pcg32_random_t;
uint32_t pcg32_random_r(pcg32_random_t* rng)
{
uint64_t oldstate = rng->state;
// Advance internal state
rng->state = oldstate * 6364136223846793005ULL + (rng->inc|1);
// Calculate output function (XSH RR), uses old state for max ILP
uint32_t xorshifted = ((oldstate >> 18u) ^ oldstate) >> 27u;
uint32_t rot = oldstate >> 59u;
return (xorshifted >> rot) | (xorshifted << ((-rot) & 31));
}
Note that this contains fairly simple constants like 18 and 27; their existence does not necessarily represent a flaw in the generation scheme.
A Mersenne Twister is a generally poor PRNG, being bloated, slow and not very random. It takes the "brute force" approach to randomness, rather than a structured attempt at producing good random values, and fails fairly badly given how much effort it puts in. For reference, see my question Why is the Mersenne Twister regarded as good? You are better off with even a 96-bit LCG.
Large seed states do not a good RNG make. They are generally indicators that the underlying generation scheme is poor, and that it had to be propped up with other models. The exception is of course a CSPRNG, though those actually pass through stringent review.
A good, accessible rundown of non-cryptographic random number generation is given in The PCG Paper, which I would recommend if not for your general lack of time for anything. Just to pique your interest, though, last time I recommended it the response was
Finally, using C's rand() is like relying on the devil. Don't do it if you want to keep your soul. srsly
Post
Sun Jan 29, 2017 9:34 am
#132
The fact that he was able to do the whole PAX thing does renew a bunch of confidence in his ability to bring Limit Theory is a successful release for myself.
Not to put a negative spin on this, but perhaps "new" Josh should show us his new ways by posting in the Kickstarter and doing something with the old dev logs. The last one from Jan-9th 2015 still refers to doing an update in "one more day".
Even better, get Tal to do it for him...
Re: Limit Theory @ PAX South!
I really hope Josh has learned his lesson on this. Even bad news is WAY better than no news.Silverware wrote:This, if Josh posted once a week, during that entire period, and told us what his issues were, then I doubt anyone would care all that much about the late delivery.DWMagus wrote:Oh people aren't forgetting to consider that. People know it's a very difficult task. What most people wanted was communication a little more frequently than once every 4-6 months.
Glad Josh has broken that streak recently though and is on the forums as well as getting out to conventions.
The fact that he was able to do the whole PAX thing does renew a bunch of confidence in his ability to bring Limit Theory is a successful release for myself.
Not to put a negative spin on this, but perhaps "new" Josh should show us his new ways by posting in the Kickstarter and doing something with the old dev logs. The last one from Jan-9th 2015 still refers to doing an update in "one more day".
Even better, get Tal to do it for him...
My Signature
Post
Sun Jan 29, 2017 10:54 am
#133
Re: Limit Theory @ PAX South!
Thanks for that link, it was a good readVeedrac wrote: rng paper
Post
Sun Jan 29, 2017 1:49 pm
#134
Re: Limit Theory @ PAX South!
So, am I'm correct in assuming Josh showed something similar to https://www.youtube.com/watch?v=0tPdbLe3zx0 ? And the videos on Youtube still reflect the game?
I really want to play with the metal shader! https://youtu.be/ADcfqusFfaM
I really want to play with the metal shader! https://youtu.be/ADcfqusFfaM
Post
Sun Jan 29, 2017 2:48 pm
#135
Re: Limit Theory @ PAX South!
Thanks for the report Flat. The most positive thing I've read on here in quite some time.