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.
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.
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)
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
  What was easy for you in development? (Darkplaces and QuakeC programming) LegendGuard 2 354 08-08-2020, 05:25 PM
Last Post: LegendGuard
  [TUTORIAL] How to create a command - Xonotic QuakeC programming LegendGuard 3 682 07-25-2020, 06:24 PM
Last Post: LegendGuard
  Moving away from QuakeC Lyberta 17 3,749 07-17-2020, 07:36 AM
Last Post: LegendGuard
  [NEED HELP] [Commission] To update Jeff's Modpack - QuakeC programmer wanted breakfast 5 1,473 07-08-2020, 12:45 PM
Last Post: breakfast
  Help with Client for Machine Learning QuakingInFearOfQuakeC 1 1,082 04-17-2019, 05:51 PM
Last Post: BuddyFriendGuy
  New QuakeC virtual machine Lyberta 8 3,699 07-14-2017, 04:01 PM
Last Post: poVoq
Brick A script engine written in QuakeC Melanosuchus 9 7,987 10-14-2014, 02:01 AM
Last Post: Melanosuchus
  QuakeC: if chains? WannabeUser 2 2,662 03-13-2014, 07:28 AM
Last Post: WannabeUser
  QuakeC: Variadic macros? WannabeUser 2 2,313 03-10-2014, 05:16 PM
Last Post: WannabeUser
  A question of getting started with Quakec timetopat 5 5,577 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-