Return to “Suggestions”

Post

Re: Moddable content/data as external dll

#16
Hyperion wrote:So um, Aquatheory and Aerotheory anyone? I can just imagine some modders giving us Jules Verne submarine, or HG Wells flying machine ship generation algorithms turning space into water or sky and letting us do battle among the clouds!
Foaming at the mouth indeed.
i'll be honest, that doesnt sound fun... i want a space sim!!! :D
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg."
- Bjarne Stroustrup

"A mathematician is a device for turning coffee into theorems."
- Paul Erdos (1913-1996)
Post

Re: Moddable content/data as external dll

#17
Jacobi1981 wrote:
Hyperion wrote:So um, Aquatheory and Aerotheory anyone? I can just imagine some modders giving us Jules Verne submarine, or HG Wells flying machine ship generation algorithms turning space into water or sky and letting us do battle among the clouds!
Foaming at the mouth indeed.

i'll be honest, that doesnt sound fun... i want a space sim!!! :D
And so you will get one! I am just imagining some possibilities, LT vanilla will be fantastic, but a massive modding community could make even better... Perhaps implementing many suggestions here that Josh simply doesn't have time for, like Thymine's hacking, or my Art, or Cornflakes' pipelines / Internet, etc. but certainly we have not come up with all the ideas, and getting new neurons on it, we may end up playing Dr Who :lol: , or have a running of the spacebulls in the Pamplona system...
A fantastic game with powerful mod tools makes for only a more fantastic game in time
Image
Challenging your assumptions is good for your health, good for your business, and good for your future. Stay skeptical but never undervalue the importance of a new and unfamiliar perspective.
Imagination Fertilizer
Beauty may not save the world, but it's the only thing that can
Post

Re: Moddable content/data as external dll

#19
Josh wrote:Hey Rex, thanks for your thoughts! I've considered external lib as an option (and was even testing it at one point), but I just hate the idea of having to ship header files + ask people to get a whole compilation pipeline set up just to tweak things. I think it's not accessible enough :(
Make that two pipelines, one for Windows and one for Linux.

If you want code and not just data (for the latter, use XML or whatever), that leaves an existing scripting language that is reasonably well supported on both platforms, with an interpreter that can (legally) be incorporated into the game executable.

Creating a totally new language would be a nice accomplishment but I wonder if it would be worth the effort. Unless you want something that cannot easily be done in the aforementioned existing language ;)
Post

Re: Moddable content/data as external dll

#20
Hyperion wrote:So um, Aquatheory and Aerotheory anyone? I can just imagine some modders giving us Jules Verne submarine, or HG Wells flying machine ship generation algorithms turning space into water or sky and letting us do battle among the clouds!
Foaming at the mouth indeed.
Aquatheory would nicely avoid the criticisms of unrealistic movement physics and ridiculously slow speeds ;)

Actually, X3-like speeds would definitely count as science fiction, as no real submarine is that fast.
Post

Re: Moddable content/data as external dll

#22
JoshParnell wrote:IT LIVES. :shock: :shock: :shock:

Yes folks, it lives. Today, for the first time, I have used UDF to write a functional structure, and successfully used the StringTree + function reflection pipeline to convert it to a callable expression, and successfully called that expression to obtain values. It's freaking exciting. Suddenly LT has scripting capabilities, but without the work of having built a scripting language. It's just data. But it's function. Bah...you know :crazy:

The great thing about this is that...it's all done generically, through the existing tech in the LT engine. That means that, in theory, it supports...everything. I should be able to manipulate objects, call any functions, and basically do anything that I choose. Awesome :cool:
Screenshots. Nao. =P
There is no "I" in Tea. That would be gross.
Post

Re: Moddable content/data as external dll

#23
Gazz wrote:
Rabiator wrote:Actually, X3-like speeds would definitely count as science fiction, as no real submarine is that fast.
Unless you build a supercavitating submarine which doesn't swim through the water but flies through the bubble of gas that it creates.
I think the power requirements would be prohibitive for now. There are a few supercavitating torpedoes (with relatively short range) but no full-size submarines yet. So let's call it near term science fiction ;)
Post

Re: Moddable content/data

#25
I just read the latest devlog posting. What Josh has done sounds fantastic!

However, there's a risk that, if the 'language' is Turing complete and gets access to the environment outside the game, then Limit Theory potentially becomes another vector for computer viruses. And if this happens, then LT might get flagged by some of the major anti-virus tools as malware...

It is not difficult to make a Turing complete language [1]. The upsides of Turing completeness are vast for modding the game. So I suggest/hope there's some thought put into the environmental side. This has 2 different parts: protecting the game and protecting the computer.

Protecting the computer might include: not allowing the script to access the internet; not allowing the program to read from any location except a specific script directory (beware of [symbolic] links); not letting the script write to any file.

Protecting Limit Theory might include: a time-limit on the running of the script during initial script loading and/or universe generation; a time-limit on the running of scripts during game-play. If these time-limits are breached, then cleanly stop the game with an easily accessible script stack trace so that borderline borderline weirdness is discouraged 'with extreme prejudice'. Perhaps give an option to restart the game with the script unloaded. With more complexity, maybe (i.e. perhaps in a version after v1.0), provide some name-spacing so that scripts from different sources could protect their internals from each other.

[1] just needs 2 functions e.g. LOOP(condition, action) and IF(condition, action [, false_action]), and requires some ability to maintain and vary state (i.e. variables or their functional equivalents). You could reduce it to just 1 function but that's just an exercise in excessive scripting pain...

Online Now

Users browsing this forum: No registered users and 15 guests

cron