Duke4.net Forums: EDuke32 2.0 and Polymer! - Duke4.net Forums

Jump to content

  • 213 Pages +
  • « First
  • 116
  • 117
  • 118
  • 119
  • 120
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

EDuke32 2.0 and Polymer!  "talk about the wonders of EDuke32 and the new renderer"

User is offline   Jblade 

#3511

Heh, just wondering....what exactly is this 'lunatic' thing I see all the time in the changelog? I've seen it time and time again and always wondered.
2

User is offline   Gambini 

#3512

oh lol The other day i was going to ask the same thing.

Lunatic this Lunatic that... Lunatic Lunatic Lunatic Luntaic

It must be something related to the 2nd episode. :angry:

BTW I have a project coming next to the corner and some stuff that has been reported over the time hasnt ever got a fix. What happened with the flip offset bug in opengl? best example: see the turrets. And have anybody found anything related to the discrepancy of TROR Polymost between different computers?
1

User is offline   TerminX 

  • el fundador

  #3513

Lunatic is the work in progress addition that allows mods to be written in lua instead of CON.
1

User is offline   Kyanos 

#3514

Aha. I was curious too. The lunatic translator. It all makes sense now. Except why?
0

User is offline   Daedolon 

  • Ancient Blood God

#3515

View PostTerminX, on 15 March 2013 - 03:46 PM, said:

Lunatic is the work in progress addition that allows mods to be written in lua instead of CON.


How low-level will it be, just a translator to CON or something more spectacular?
0

User is offline   TerminX 

  • el fundador

  #3516

Something more spectacular. It actually ditches the existing implementation of CON entirely, but contains a compatibility layer to translate existing CON code to the new system (so it will still have access to new implementations of all the existing CON commands).
1

User is offline   Mark 

#3517

Will the con translation layer affect performance speed ?

This post has been edited by Mark.: 16 March 2013 - 11:35 AM

0

User is offline   TerminX 

  • el fundador

  #3518

Only in the sense that it will be faster than the existing implementation. Lunatic uses LuaJIT, a just-in-time compiler for Lua. What this means is that the compiled code is still stored in memory as bytecode (which is what the existing CON implementation is), but it is translated into native machine code (like the rest of EDuke32, or any other program written in C, etc) before execution. So, the performance impact of a purely bytecode based system like CON is mitigated. I'm not really sure what the real world performance difference is since Helix isn't done creating Lunatic, but I highly doubt it will be slower than the existing CON system in any way.
1

User is offline   Kyanos 

#3519

View PostTerminX, on 16 March 2013 - 10:50 AM, said:

Something more spectacular. It actually ditches the existing implementation of CON entirely, but contains a compatibility layer to translate existing CON code to the new system (so it will still have access to new implementations of all the existing CON commands).

For those of us working with Eduke, should we take at look at learning Lua ourselves? Is there any benefit now or in the future that we may want to know about? It sounds here like it will be a better scripting language for mods.
0

User is offline   TerminX 

  • el fundador

  #3520

Yeah, that might be a good idea when things are closer to completion. You'll still be able to use CON, but you'll be able to do a lot more with the Lua system (while still having access to the CON commands you're already familiar with).

My personal view of the transition equates it to when Microsoft deprecated Visual Basic in favor of C#. You can still write code in the old language, but it just gets translated to the newer, more powerful language internally so you might as well learn it. Additionally, a 1:1 translation of CON to the new Lua system will likely yield resulting code that is slower than it would have been if it was just written in Lua to begin with.

Since the translator isn't going to be able to make logical decisions based on what the code actually does, it isn't going to be able to recognize that something that may have required a block of 20 lines in CON can be achieved in just a couple in Lua, whereas someone doing it by hand probably would. There is, however, a way to dump the automatically generated Lua made from the translated CONs to files on disk which can then be used as the base for a Lua version of a mod previously written in CON.

Hope that clears things up! I'm surprised there hasn't been more discussion of Lunatic here given how many Lunatic-related changes are committed to SVN.

Oh, one more thing: if anyone wants to play with the work-in-progress version of Lunatic now, you need to compile your own builds. EDuke32 cannot be compiled with both our existing CON system and Lunatic enabled; it's one or the other (and Lunatic and its CON implementation are definitely incomplete).
1

User is offline   Kyanos 

#3521

I would like to test with Lua, I'd love to read some CON translated like you just mentioned. I just read up on Lua a lot more. Possibilities are endless, no? Could I write a .xml writer/paser in game?? Replacing CON with a kinda Object Oriented language like (my first language) python, sounds amazing. Props to all of you.

This post has been edited by Drek: 16 March 2013 - 12:46 PM

0

User is offline   TerminX 

  • el fundador

  #3522

Give props to Helix... he's the driving force behind pretty much all development these days.
0

User is offline   Helixhorned 

  • EDuke32 Developer

#3523

View PostJames, on 15 March 2013 - 09:50 AM, said:

Heh, just wondering....what exactly is this 'lunatic' thing I see all the time in the changelog? I've seen it time and time again and always wondered.

Congrats for being the first to ask about Lunatic after 1.5 years of development :angry:. Bonus points will be awarded for finding the first post containing an allusion to it. Don't search for too long!

TerminX has given a good basic overview of Lunatic, and I intend to formally introduce it when the time is ripe. Right now, just a couple of clarifications.

View PostTerminX, on 16 March 2013 - 12:36 PM, said:

There is, however, a way to dump the automatically generated Lua made from the translated CONs to files on disk which can then be used as the base for a Lua version of a mod previously written in CON.

This should only be used for educational purposes. As TX mentioned, Lua code usually is much more terse that the corresponding CON code, but another reason is that the generated Lua code makes use of internal Lunatic interfaces which are off-limits to users. (The corresponding identifiers all start with an underscore.)

Quote

Oh, one more thing: if anyone wants to play with the work-in-progress version of Lunatic now, you need to compile your own builds. EDuke32 cannot be compiled with both our existing CON system and Lunatic enabled; it's one or the other (and Lunatic and its CON implementation are definitely incomplete).

Also, for translating large CON mods like AMC TC, LuaJIT needs to be compiled with an increased C stack size, and LPeg needs to have one change done to prevent overflowing a 16-bit integer. Not that they would work as expected at this point, though.
6

User is offline   Mark 

#3524

On the occasion that I do actually read the changelog text, because of how little I understand any of it, I assumed Lunatic was the nickname of the guy coding the changes. :angry:

The reason I asked about any performance hit is because the Darkus flashlight mod I'm using in my Graveyard mod already slows down FPS drastically. I don't think the map could afford another hit.
0

User is offline   Kyanos 

#3525

View PostTerminX, on 16 March 2013 - 12:36 PM, said:

Oh, one more thing: if anyone wants to play with the work-in-progress version of Lunatic now, you need to compile your own builds. EDuke32 cannot be compiled with both our existing CON system and Lunatic enabled; it's one or the other (and Lunatic and its CON implementation are definitely incomplete).


I've been trying to do this for an hour now. It's quite the puzzle :angry: any hints?

so far I've got luajit, I run make LUNATIC=1, where to put luajit so it's recognized for make: luajit: that gives me command not found. I've tried to put it in a few folders. Somewhere mentioned mod/lua-2.0/src, so I tried a few different directories with luajit in a mod subfolder. I'm stumped for now.
0

User is offline   Fox 

  • Fraka kaka kaka kaka-kow!

#3526

So eventually I will need to learn that new language? :angry:
0

User is offline   Jblade 

#3527

View PostFox, on 16 March 2013 - 02:09 PM, said:

So eventually I will need to learn that new language? :angry:

No, they're saying that when it's done CON files will still be usable (there's no way they'd remove CON and make 99% of all past mods unusable) but they'll be translated to LUA on runtime. You'd still be able to code in CON, but for best performance and more control it would be best to use LUA.

It sounds pretty cool, although to be honest I don't really have the time to learn a new language (or rewrite the AMC con files to match it) but if I do ever try and learn it, having a platform I'm 100% comfortable with is a fantastic way to start :D
0

User is offline   Danukem 

  • Duke Plus Developer

#3528

I have only one question about this for now. Will it be possible to make projects that use both CON and lua? For example, suppose I have some CON files that are too much trouble to rewrite, and I want to include some CON files in the project and some LUN files.
1

User is offline   Micky C 

  • Honored Donor

#3529

If someone wanted to learn scripting for eduke32, would it be best to wait for the lua implementation and learn lua directly instead of con? There's certainly a lot of lua documentation and guides out there.

This post has been edited by Trooper Mick: 16 March 2013 - 04:48 PM

0

User is offline   Mblackwell 

  • Evil Overlord

#3530

View PostTrooper Mick, on 16 March 2013 - 04:46 PM, said:

If someone wanted to learn scripting for eduke32, would it be best to wait for the lua implementation and learn lua directly instead of con? There's certainly a lot of lua documentation and guides out there.


You'll still need to know what the different structs do and how they interact/relate with each other. It will just be easier to manipulate and should be more flexible.
0

User is offline   Micky C 

  • Honored Donor

#3531

I don't even know what structs are, that can't be a good sign. But either way it seems easier to learn the syntax of 1 language than 2.
0

User is offline   Mateos 

#3532

Structs perhaps means structures, so more or less the syntax?
0

User is offline   Mblackwell 

  • Evil Overlord

#3533

No, it means this:

http://wiki.eduke32....ember_functions

The specific ways of accessing them might change, but you'll have to know what things are still. All of the things you do in CON for the most part have analogues in the actual game code/engine, there's just some really terrible and somewhat ASM type ways of manipulating them. A trig function which should be one line takes 10 in CON (for example).
0

User is offline   Helixhorned 

  • EDuke32 Developer

#3534

View PostTrooper Dan, on 16 March 2013 - 02:24 PM, said:

I have only one question about this for now. Will it be possible to make projects that use both CON and lua? For example, suppose I have some CON files that are too much trouble to rewrite, and I want to include some CON files in the project and some LUN files.

Yes, transition to Lua will proceed gradually. You'll be able to load one root CON + modules like now, but in addition to this, multiple root Lua files which in turn may "require" other Lua modules. CON will probably never be removed completely because of stuff like defining game resources or gamestartup, for which there would be no point in duplicating on the Lua side.
1

User is offline   Kyanos 

#3535

View PostTrooper Mick, on 17 March 2013 - 12:39 AM, said:

I don't even know what structs are, that can't be a good sign. But either way it seems easier to learn the syntax of 1 language than 2.

Nah, it's easier to the second languange, then the next is even easier... Start with one but be flexible, Lua is as good any, CON if your strictly planning on only ever using Eduke. C or C++ some say but really it's all the same principals. Learn the principals, syntax is not the end of the world. Just start and learn some basics. I'd tell you to write hello world problems in ten different languages before you pick one.
0

User is offline   Hendricks266 

  • Weaponized Autism

  #3536

Anybody interested in learning programming, look here: http://forums.duke4....ramming-thread/
1

User is offline   Jimmy 

  • Let's go Brandon!

#3537

This is really cool, but I totally know I'm too stupid to learn Lua.
0

User is offline   supergoofy 

#3538

Wolfenstein 3-D Redux
http://wolf3dredux.sourceforge.net/

The Wolfenstein 3-D Redux can up-scale the data from Wolfenstein 3-D and thus it greatly improves the visual outcome. Can this be implemented in EDuke32 ?
0

User is offline   Hendricks266 

  • Weaponized Autism

  #3539

Upscaling algorithms tend to be sensitive to the type of pixel art to which you are applying them. For example, I read an academic paper where a group implemented a nice algorithm tested on Super Mario World but when they tested it on the Doomguy's HUD face it looked like shit. I think Duke 3D's style is a bit more detailed than Wolf's. If there were some way to preview Duke's art through Wolfenstein 3-D Redux, that would be helpful.
1

User is offline   Skulldog 

#3540

Adding the gog and steam paths should be removed and just copy the grp files over to eduke32 directory.
-1

Share this topic:


  • 213 Pages +
  • « First
  • 116
  • 117
  • 118
  • 119
  • 120
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options