Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Moving away from QuakeC

#1
(04-03-2017, 04:09 PM)BuddyFriendGuy Wrote: @Lyberta, this sounds like an interesting idea, and definitely something I'd like to have. In exercise, could you layout what exactly can be done for this to happen? (Or better yet, write something small as a proof-of-concept.)
Can we move this part of the discussion into its own thread?

Well, I haven't cloned the Daemon repo yet so I don't know the state of porting Xonotic code to Deamon. Basically, we need to modify the engine code that handles QuakeC and GMQCC compiler to be able to generate function stubs that will be resolved at runtime. I think this may break compatibility with Quake code and this will require a dedicated fork of DarkPlaces. As a proof of concept one just needs to move VM code out of DarkPlaces and hack on it. I think this is partly done in Daemon repo.
QuakeC hater.
Reply

#2
Sounds like FTE_multiprogs.
http://forums.insideqc.com/viewtopic.php...multiprogs
Might be portable from FTEQW to darkplaces.
Reply

#3
Yes, this is almost exactly as my idea. Does it require FTEQCC? Is there a 100% free software version of FTEQW? I guess we'll need to modify GMQCC too.
QuakeC hater.
Reply

#4
(04-06-2017, 07:52 AM)Lyberta Wrote: Yes, this is almost exactly as my idea. Does it require FTEQCC? Is there a 100% free software version of FTEQW? I guess we'll need to modify GMQCC too.

What do you mean, like a fully FOSS game based on FTEQW? Then no, not yet (there is one in the works though called projectUnkown). FTEQW is fully GPL though.
If you asked me, I would rather suggest to port Xonotic to FTEQW as it is mostly compatible and these days the better engine than Darkplaces (maybe with the recent Xonotic code refactoring it almost there?), but I guess the Deamon porting plans are also good.
Reply

#5
(04-06-2017, 09:57 AM)poVoq Wrote: What do you mean, like a fully FOSS game based on FTEQW? Then no, not yet (there is one in the works though called projectUnkown). FTEQW is fully GPL though.

Yes, fully free game. I'm not going to get proprietary assets to see what's the engine is about.

(04-06-2017, 09:57 AM)poVoq Wrote: If you asked me, I would rather suggest to port Xonotic to FTEQW as it is mostly compatible and these days the better engine than Darkplaces (maybe with the recent Xonotic code refactoring it almost there?), but I guess the Deamon porting plans are also good.

I dunno, looks ancient. Uses C, SVN and is hosted on SourceForge. Daemon on the other hand looks really cool.
QuakeC hater.
Reply

#6
Well it is a Quake derived engine, so some ancient cruft is to be expected. Otherwise don't be fooled by the website or the lack of up to date documentation. It is a very well developed engine with a Vulkan renderer, a Android and a WebGL port and all kind of other cool and modern stuff.
Daemon is also cool, but it also has a lot of ancient cruft from Quake3 and RTCW days. It will also still take considerable effort to get Xonotic running on it as far as I know, and I expect that this unproven QuakeC layer will be quite buggy for a long time.
Reply

#7
By the looks of it, FTEQW is about as far off as Daemon from becoming suitable for Xonotic...
Not to mention this: https://forums.xonotic.org/showthread.ph...4#pid64474
[Image: 230.png]
Reply

#8
OK, QuakeC really needs to die.

I've bought a new "gaming" laptop with Ryzen 3550H, 16 GiB of 2400 MHz RAM and Radeon 560X (4 GiB VRAM) and I get at most 60 fps on an empty map and 10-30 fps with bots. I've tried medium setting and lowest ones, they don't do anything. QuakeC completely destroys my performance.

For reference I get 120 fps on Red Eclipse 1.6 with all settings maxed out. Xonotic on lowest settings is 10 times slower than Red Eclipse on maximum settings and brings gaming laptops to a halt.
QuakeC hater.
Reply

#9
(04-06-2020, 05:33 PM)Lyberta Wrote: OK, QuakeC really needs to die.

I've bought a new "gaming" laptop with Ryzen 3550H, 16 GiB of 2400 MHz RAM and Radeon 560X (4 GiB VRAM) and I get at most 60 fps on an empty map and 10-30 fps with bots. I've tried medium setting and lowest ones, they don't do anything. QuakeC completely destroys my performance.

For reference I get 120 fps on Red Eclipse 1.6 with all settings maxed out. Xonotic on lowest settings is 10 times slower than Red Eclipse on maximum settings and brings gaming laptops to a halt.

That's weird, even my 10 years-old laptop performs better (on a 1600x900 resolution).
Did you try both the GLX and SDL executables?

Maybe there's something wrong with the GPU?
Reply

#10
This Quake Engine fork has a LUA interface that can coexist with QuakeC:
https://github.com/KurtLoeffler/Slipgate
Might be a good way to migrate away from QuakeC without breaking stuff while doing so.
Reply

#11
To be honest, Lua is even worse. At least QC has static types and you need to compile it before you run the game. With Lua there is no compiler so you have to start the game to check if even your syntax is correct. Coding in Lua is extremely hard.
QuakeC hater.
Reply

#12
Lets agree to disagree on Lua Wink

I checked with the FTEQW author about the build in Lua support in that engine (which runs Xonotic mostly fine), but there the code hasn't been touched for a while and support is currently disabled by default. Could be a starting point together with the above code though.
Reply

#13
Maybe Lua haven't better performance in case when you build game, and errors can be checked only in execution mode, but use Lua as alternative script language will be maybe better choice. One of the reason is that this scripts doesn't need to restart game, and check working really with one command of restarting script, if it was. But use Lua as main language of game isn't good idea, because when building main engine, need to know about all bugs in code on compilation time, and use C as main language is better, than default QuakeC, or etc.
Reply

#14
Plain C is even worse than QuakeC though.
QuakeC hater.
Reply

#15
Lua would of course be a substitute for the QuakeC script, not the actual C code the main engine is currently written in.
Reply



Possibly Related Threads...
Thread Author Replies Views Last Post
  [NEED HELP] [Commission] To update Jeff's Modpack - QuakeC programmer wanted breakfast 5 1,203 07-08-2020, 12:45 PM
Last Post: breakfast
  [TUTORIAL] How to create a command - Xonotic QuakeC programming LegendGuard 1 420 05-27-2020, 03:55 AM
Last Post: BuddyFriendGuy
  New QuakeC virtual machine Lyberta 8 3,426 07-14-2017, 04:01 PM
Last Post: poVoq
Question [SOLVED] model not moving with entity dingus 1 1,409 07-30-2016, 02:37 PM
Last Post: Mario
Brick A script engine written in QuakeC Melanosuchus 9 7,764 10-14-2014, 02:01 AM
Last Post: Melanosuchus
  QuakeC: if chains? WannabeUser 2 2,554 03-13-2014, 07:28 AM
Last Post: WannabeUser
  QuakeC: Variadic macros? WannabeUser 2 2,227 03-10-2014, 05:16 PM
Last Post: WannabeUser
  Learning QuakeC? phim 13 13,435 12-24-2013, 03:07 AM
Last Post: aa
  A question of getting started with Quakec timetopat 5 5,469 07-02-2012, 07:55 AM
Last Post: timetopat

Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-