Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Xonotic Game Engine, Mapping, Development - General Developer Questions

#1
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. :-)
Reply

#2
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.
Reply

#3
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).
Reply

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

#5
(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.
[MoFo] Servers - North America - Hosted in Montreal Canada - Admin DeadDred [MoFo]
Reply

#6
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.
I'm making Liblast - a FOSS online FPS game made with Godot 4 and a 100% open-source toolchain
Reply

#7
@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.
Reply



Possibly Related Threads…
Thread Author Replies Views Last Post
  Xonotic vs Quake 3 development comparison LegendGuard 4 4,901 09-05-2023, 06:10 PM
Last Post: LegendGuard
  [META] Xonotic reboot/port in modern engine ballerburg9005 32 14,100 02-22-2022, 05:11 PM
Last Post: ballerburg9005
  Samual's Personal Development Roadmap Samual 40 54,166 11-10-2021, 03:18 AM
Last Post: chooksta
  [TUTORIAL] How to create a command - DarkPlaces engine C programming LegendGuard 1 2,613 03-31-2021, 03:43 PM
Last Post: LegendGuard
  What was easy for you in development? (Darkplaces and QuakeC programming) LegendGuard 2 3,074 08-08-2020, 05:25 PM
Last Post: LegendGuard
  Quake live mouse acceleration implementation successfully coded! I have questions Draena 0 2,515 03-09-2020, 05:29 PM
Last Post: Draena
Question Questions concerning the future of Xonotic. Danfun64 2 3,690 04-18-2016, 04:19 AM
Last Post: Mario
  Engine: thread handling kingtiger01 0 3,415 11-06-2015, 12:57 AM
Last Post: kingtiger01
  Engine: cpu extensions kingtiger01 0 3,011 11-06-2015, 12:39 AM
Last Post: kingtiger01
  Ongoing port to the Unvanquished engine? poVoq 9 14,517 11-05-2015, 11:09 PM
Last Post: Danfun64

Forum Jump:


Users browsing this thread:
1 Guest(s)

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