Xonotic Forums
Xonotic Game Engine, Mapping, Development - General Developer Questions - Printable Version

+- Xonotic Forums (https://forums.xonotic.org)
+-- Forum: Creating & Contributing (https://forums.xonotic.org/forumdisplay.php?fid=10)
+--- Forum: Xonotic - Development (https://forums.xonotic.org/forumdisplay.php?fid=12)
+--- Thread: Xonotic Game Engine, Mapping, Development - General Developer Questions (/showthread.php?tid=5023)



Xonotic Game Engine, Mapping, Development - General Developer Questions - p14r - 07-30-2014

Hoi Everybody.

I'm a small fan of xonotic, it's one of the rare few games I play more
or less regularly. However, I'm also a developer and have done
professional game development in the past - albeit no serious 3D
games.

I have a few questions:

1.) What is Xonotics principal PL? If it is C - which I suspect - how
much of a hassle is it to build a game in C++ on top of the Xonotic
game engine?

2.) How many players can connect to a single map instance, and can
that number be raised with a reasonable amount of programming? (I
suspect the player limit is 32 or something like that ...)

3.) If I've never done serious C/C++ development but do know my way
around programming (pro Senior Dev) and am an avid Linux user since
the 90ies, how difficult would it be for me to set up a feasible dev &
build setup for Xonotic in Linux?

4.) What development and build tools do you guys use? How would an
ideal linux based development setup look like? I'm thinking about getting
into C/C++ deving using Anjuta. QtCreator and KDevelop seem both to
specialist IMHO.

5.) How feasible is it to use the Xonotic game engine for a different
game? (specifically: a Mecha game)

6.) How does asset development and integration into the Xonotic Build
pipeline look like? For instance, if I want to build a xonotic map on
Linux, which tools would I use? What's the 3D format? Can I build, rigg and
texture models in Blender and import them directly into Xonotic/The
Xonitic Game Engine?

7.) How would I best get started on the Xonotic Mapping Team using x86
Linux? Which tools should I use?

8.) How well is the Xonotic Game Engine documented? Or is usage
intuitive for somebody who know how to handle grep and an IDE?


Thanks for any replys. And thanks for the cool game! I'm pondering
joining the mapping crew and helping out a little. ... Haven't decided
yet though. But I'll continue to play. :-)


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - poVoq - 07-30-2014

Not a Xonotic developer but I will try to answer:

1. Yes C (Quake1 based) with a somewhat obscure C like scripting language called QuakeC on top (and to make matters worse, two subsets of that, one sever-side and one client-side, CSQC). I don't think getting C++ game code on top of that makes a lot of sense; QuakeC also isn't that bad...

2. I believe 64 and I doubt the engine is scale-able much beyond that.

3. If it is a FPS, it is rather simple and plenty of example code and tutorials from the Quake1 based stuff exists, the newer clientside CSQC is a bit undocumented though. The Inside3D forums are probably the best place to start.

4. Code::Blocks? Geany is also a cool code editor that should support syntax highlighting for QuakeC. Xonotic comes with its own QuakeC script "converter". You shouldn't really need to compile the base engine for most games.

5. Mecha-game - see Vehicle game-type. I was told it is a pretty bad hack and overall the Quake physics don't lend themselves very well to games other that FPS. I guess for a non-FPS type of game you should look elsewhere, but it isn't impossible.

6. See Net-Radiant for level editing and the .iqm format for models. Blender support for .iqm is pretty good. The engine of Xonotic is called "Darkplaces" by the way.

7. NetRadiant, I think the best pre-compiled version are here: http://ingar.satgnu.net/gtkradiant/index.html

8. Lots of stuff for the quake engine (on which Darkplaces is based and which is still mostly relevant), otherwise it really depends. All the newer client-side script parts in CSQC are not that well documented. Overall I would give it a "C"

What other (open-source) engines have you looked at? For a Mech game the Torque3D engine is probably better suited and it recently got a Linux port.


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - Mr. Bougo - 07-30-2014

The "Xonotic Game Engine" is called DarkPlaces and is a project of its own, which other games rely on too. DarkPlaces can also run Quake 1.

3. Should be quite easy. We use git, and we have custom build scripts. There is a not-too-outdated guide here.

4. I guess many Xonotic programmers (that is, game code, not engine code) have stuck to simple code editors. We do have some project files for the engine DarkPlaces though.

5. If that counts as a mecha game, Steel Storm uses the same engine as Xonotic. @poVoq, I believe the physics are flexible enough that it doesn't have to be quake-like at all.

If you've been using *NIX systems since the 90's, you might know about IRC (and how to patiently wait for a reply on some channels Wink). We have a couple of IRC channels, one development-oriented (#xonotic on irc.freenode.net) and one community-oriented (#xonotic on irc.quakenet.org).


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - p14r - 07-31-2014

Hey, thanks for the replys guys, that was very helpfull.


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - end user - 07-31-2014

(07-30-2014, 11:38 PM)Mr. Bougo Wrote: 5. If that counts as a mecha game, Steel Storm uses the same engine as Xonotic. @poVoq, I believe the physics are flexible enough that it doesn't have to be quake-like at all.

Nice might be another game I can run a server for which is not a FPS like.


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - unfa - 08-01-2014

Good to see you around, p14r i hope you'll find this gam both fun to play and to build Wink
If you're in need for some music for your maps - let me know, I'm a musician and a sound designer, trying to make life easier for folks like me here in Xonotic community to deliver better audio content.


RE: Xonotic Game Engine, Mapping, Development - General Developer Questions - p14r - 08-04-2014

@unfa: Thanks for the offer, I'll keep that in mind. Right now I'm inching my way towards a development environment on x86 Linux. But if the Project I have in mind get's off the ground, I'll let you know.