Duke4.net Forums: Graf Zahl Razes EDuke32 game code from his fork - Duke4.net Forums

Jump to content

  • 16 Pages +
  • « First
  • 14
  • 15
  • 16
  • You cannot start a new topic
  • You cannot reply to this topic

Graf Zahl Razes EDuke32 game code from his fork

User is offline   ReaperAA 

#451

View PostReaper_Man, on 19 May 2023 - 05:19 AM, said:

Is CON really more complex or "confusing" than ZScript?

As someone who tried their hands on both CON and Decorate (ZScript is basically a superset of Decorate, with having more stuff) without any prior knowledge, I was able to get into Decorate much more easily. Now granted, I haven't done much beyond adding new monsters, or editing monsters with new attacks. But that's more than I did with CON.
0

User is offline   Phredreeke 

#452

In regard to complexity of Mapster32, there was talk about Raze supporting a subset of UDMF so people could map using existing Doom editors
0

#453

View Postmjr4077au, on 21 May 2023 - 12:48 AM, said:

I don't know how feasible this is to be honest. Not just from a lack of developers, but now that EDuke32 is commercially used I'm unsure anything so drastic that could interfere with IF would be accepted.

Since this initiative was also suggested by TerminX in the past, this is not an issue.

If Raze can have ZScript with 2 developers, eduke32 can have QuakeC with 2 developers :P

Quote

GZDoom does get a lot of "how do I" questions, the same as I see in the Duke4 Discord server, however I see more people achieve a result with GZDoom and stick around whereas those who ask CON questions tend to just disappear, never to be seen again.


I don't share this view honestly. Plenty of people who ask about stuff eventually release a project here.

View PostPhredreeke, on 23 May 2023 - 02:47 AM, said:

In regard to complexity of Mapster32, there was talk about Raze supporting a subset of UDMF so people could map using existing Doom editors

I'm not sure how this is even remotely supposed to work, but then again I have no idea how UDMF is structured, nor how Doombuilder works internally.

This post has been edited by Doom64hunter: 23 May 2023 - 04:45 AM

0

User is offline   mjr4077au 

#454

View PostDoom64hunter, on 23 May 2023 - 04:41 AM, said:

Since this initiative was also suggested by TerminX in the past, this is not an issue.

If Raze can have ZScript with 2 developers, eduke32 can have QuakeC with 2 developers :P

If that's indeed the case then that sounds great! I heard of some QuakeC talk in 2020 but not much more since so wasn't sure if it fell off the radar.

View PostDoom64hunter, on 23 May 2023 - 04:41 AM, said:

I don't share this view honestly. Plenty of people who ask about stuff eventually release a project here.

That's fair enough, I don't hang around the server constantly so its probably a generalisation, but I've seen it happen a few times. I'm sure it happens just as frequently in the GZDoom server as well.

View PostDoom64hunter, on 23 May 2023 - 04:41 AM, said:

I'm not sure how this is even remotely supposed to work, but then again I have no idea how UDMF is structured, nor how Doombuilder works internally.

It'd be a whole new map format, unrelated to Build as such. It'd rely on features such as named textures, etc, such as how Doom mapping is done (we're naming textures and are trying to move away from indices).
1

User is offline   Radar 

  • King of SOVL

#455

View PostDoom64hunter, on 19 May 2023 - 03:28 PM, said:

Off the top of my head:
  • No local variables (as Dan already mentioned). This is a huge problem for ensuring that variables are actually initialized properly when used. When you have global state, the value you get when reading the variable could come from literally anywhere if you're not careful.
  • No function calls with arguments or return values. States just don't cut it most of the time, and defining dedicated argument or return globals is a lot of overhead and again requires you to be very dilligent in making sure these are sanitized when used.
  • No proper arithmetic expressions. This is another big killer -- you can't have simple calculations inside an "if" conditional for example -- you have to write a sequence of tedious, assembly-like instructions to perform calculations that would normally be a one-liner in any other programming or scripting language.
  • Very limited conditional expressions. In any other language, conditionals can be combined with arithmetic and boolean expressions, but here, you have a ton of complexity to perform basic checks.

CON unites some of the worst aspects of Javascript and Assembly, combined with some really terrible Todd-isms i.e. intransparent interactions with hardcoded engine behaviors. Literally anything else would be easier to use -- ZScript, Lua, Angelscript, QuakeC, you name it.

In my opinion, a new scripting language should be a top priority topic for eduke32 as well. There used to be that Lua engine integration that HelixHorned started -- might be an idea to bring that back, or to integrate Angelscript or QuakeC with a new solution from scratch.


Wouldn't it be easier to implement those features into CON rather than starting from scratch with a new language?
0

#456

View PostRadar, on 03 June 2023 - 04:39 PM, said:

Wouldn't it be easier to implement those features into CON rather than starting from scratch with a new language?

Local variables exists in Mapster32 to some capacity, so that would be possible.

Function calls with arguments, probably doable but would require having a local variable concept as precondition.

Arithmetic expressions and conditional statements, here's where you basically replace the entire language, since the assembly style statements permeate the whole language.
3

User is offline   NY00123 

#457

What's added for Raze also aims to cover games not directly derived from Duke3D's codebase. Modding for distinct games will still not feel 100% the same, but the plan is to also cover games which didn't use CON.

I do recall the idea of using CON for Shadow Warrior being brought up in the past. I might misremember, but I think that I saw a hint of early limited-scope experimentation being done in the past; Unsure if before the 1997 releases or not.
1

User is offline   Phredreeke 

#458

Moving to ZScript also brings the advantage of having a JIT compiler (at least for 64-bit x86, I don't think there's an ARM one yet) as opposed to a pure interpreter for CON.
1

User is online   Danukem 

  • Duke Plus Developer

#459

View PostDoom64hunter, on 04 June 2023 - 06:45 AM, said:

Arithmetic expressions and conditional statements, here's where you basically replace the entire language, since the assembly style statements permeate the whole language.


Damn that sucks.
0

#460

As someone who delved into both ZScript and CON, with no programming knowledge/acumen/talent whatsoever, I learned much more complex operations in ZScript through simple trial and error. In Cosmetic Duke most of the more complex code is just copy pasted from other mods, and then modified. In Cosmetic Doom most of stuff I wrote myself. Adding new conditional monster death animations, or weapon alternative firing modes, is piss easy to understand and write in ZScript, whereas I absolutely have no idea how to do the second in CON, and know the first one only after hours of torturous trial and error. I’m still working on Cosmetic Duke just because I fucking love this game, but sometimes it’s like banging my head against the wall. I firmly believe that the ease of use is why Doom has so many mind blowing mods.
2

Share this topic:


  • 16 Pages +
  • « First
  • 14
  • 15
  • 16
  • 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