Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Learning QuakeC?

#1
I've decided to learn QuakeC so I can actually do something to Xonotic. I have learned the basics of quite a few languages before, but there was a lot more resources to learn from. I found around 10 tutorials on QuakeC, but they are all based on modding Quake.

Should I install Quake and use it to learn QuakeC, or maybe Nexuiz?

How does code get compiled into Xonotic? Have any suggestions for a linux compiler? I've looked around in the folders, but can't really find any QuakeC code to edit. Know of anything else that could get me started?

--

Phew.. lot's of questions. Thanks to whoever can answer them. (QuakeC = QC, right?)
Reply

#2
warning: i did not write much code for xonotic, everything i tell you might be wrong Big Grin

you should start with checking out the git repository: http://dev.xonotic.org/projects/xonotic/...ory_Access

you should do changes in a separate branch so you can easily switch between the clean master and your branch with you modifications.


then you should read the introduction for quakec: http://dev.xonotic.org/projects/xonotic/..._to_QuakeC


for more questions ask in irc Smile


edit: qc = quakec, yes.
the code is (when you checked out the git repository) in /data/xonotic-data.pk3dir/qcscr. client might be the most interesting directory there to start with.
Reply

#3
(09-29-2010, 09:47 AM)jaykay Wrote: the code is (when you checked out the git repository) in /data/xonotic-data.pk3dir/qcscr. client might be the most interesting directory there to start with.

I think you mean qcsrc Wink

And client is not the easiest part, that's the source of the CSQC progs, which notably manage HUD code and projectile drawing. The game logic (i.e. what people usually want to mod first) is in the server directory.
The menu directory contains menu progs sources, which use some evil precompiler tricks to implement OOP (sort of) in QC. Although it's quite interesting to read, it doesn't share much with CSQC or SVQC.
[Image:http://i.imgur.com/4XODR.png]640K ought to be enough for anybody.
     ― Linux Torvalds
Reply

#4
Thanks for the links.
I know C but I made soooo much java,C++,obj-C,PHP,javascript that a non oriented object language will be hard to learn. I guess that run with the struct thing... I'll take a look into xono source code =)
Awesome, did Qz show you that ?
Nexuiz : I Reach the top5 of the ladder (even top3 I guess). Top1 French for quite some time (when active) of ladder. Top5 of some tournaments (if I remember well)
Reply

#5
Nope, we don't even have structs. Just a very small number of data types, nothing really custom.
The closest thing to structs we have is entities, which are also objects in a sense.
[Image:http://i.imgur.com/4XODR.png]640K ought to be enough for anybody.
     ― Linux Torvalds
Reply

#6
http://ouns.nexuizninjaz.com/dev:program...troduction for an overview
Reply

#7
It's really sad that QuakeC is as horrible as it is and replacing it with a real interpreted language like Python or Lua would take millions of man hours.
(04-01-2010, 11:21 AM)Roanoke Wrote: Yes, beveled edges are more futuristic. Like BSG and their beveled paper.
But only on one edge.
Reply

#8
http://forum.freegamedev.net/viewtopic.php?f=3&t=587

Still on it, but lately a bit slower.
Reply

#9
(10-03-2010, 09:38 AM)Flying Steel Wrote: It's really sad that QuakeC is as horrible as it is and replacing it with a real interpreted language like Python or Lua would take millions of man hours.

Plus, they are both much slower, and particularly ugly when it comes to sharing variables with the engine, and the worst part would be the entity type.
Reply

#10
What about Squirrel?

http://www.squirrel-lang.org/
Reply

#11
Umm, squirrel or anything else that is not QC will not substitute QC, I think that should be clear by now... Unless you find a few programmers that can get very familiar with the whole xonotic source and have a lot of free time to contribute, converting all the code to a new language. And the language would have to be easy to learn by the current coders as well.

<sarcasm>This said, how about we use a derivative of Piet and get rid of QC which is so consistently hard to use</sarcasm>


(sidenote: BOCC is probably the best thing we can hope for)
[Image:http://i.imgur.com/4XODR.png]640K ought to be enough for anybody.
     ― Linux Torvalds
Reply

#12
(10-09-2010, 02:47 AM)Mr. Bougo Wrote: <sarcasm>This said, how about we use a derivative of Piet and get rid of QC which is so consistently hard to use</sarcasm>

Yay, pretty colours Big Grin
[Image: 370.png] AKA [~] John Smith on Nexuiz
Reply

#13
Haven't done much QuakeC since modding Quake became 'old hat'. I stayed with ANSI C after that. QuakeC isn't the most challenging of languages to learn, it's neat, logical and there's not too many ways to do something (unlike Perl *shakes fist*).

The worst is just not getting bogged down with millions (slight exaggeration) of global variables due to almost zero OO techniques.
Reply

#14
Why doesn't the introduction to QuakeC page says NOTHING about compiling (bugs dont count)?

Actually, nevermind, i dont care about programming any more.
[Image: 0_e8735_c58a251e_orig]
Reply



Possibly Related Threads...
Thread Author Replies Views Last Post
  Help with Client for Machine Learning QuakingInFearOfQuakeC 1 705 04-17-2019, 05:51 PM
Last Post: BuddyFriendGuy
  New QuakeC virtual machine Lyberta 8 2,721 07-14-2017, 04:01 PM
Last Post: poVoq
  Moving away from QuakeC Lyberta 6 2,196 04-07-2017, 03:35 AM
Last Post: Mario
Brick A script engine written in QuakeC Melanosuchus 9 7,041 10-14-2014, 02:01 AM
Last Post: Melanosuchus
  QuakeC: if chains? WannabeUser 2 2,314 03-13-2014, 07:28 AM
Last Post: WannabeUser
  QuakeC: Variadic macros? WannabeUser 2 1,987 03-10-2014, 05:16 PM
Last Post: WannabeUser
  A question of getting started with Quakec timetopat 5 5,161 07-02-2012, 07:55 AM
Last Post: timetopat
  Xonotic's Direction? What do we have to do Learning from nexuiz's mistakes. kojn^ 67 55,075 06-13-2010, 09:20 AM
Last Post: MirceaKitsune

Forum Jump:


Users browsing this thread:
1 Guest(s)

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