ThomasT | 2012-08-19 02:56
Need sanity check on source modding and the -g option: Inconsistent and incorrect documentation?

I am attempting to understand Sauerbraten's mod development model. First, I have successfully compiled and run the Justice Edition and latest svn release of Sauerbraten as well as Tesseract, all under Mac OS X Snow Leopard. (Compiling and modifying the svn release has some issues on the Mac that I've solved but won't go into here unless someone would like to hear about them.)

Next, I've attempted to understand how source mods are made. I found http://cubeengine.com/forum.php4?action=display_thread&thread_id=1592 ("[MODDING] Your first Sauerbraten MOD, Tutorial 1"). It goes into great detail, describing how to create a new Sauserbraten mod by copying fpsgame, changing the makefile, etc. It then says to specify -g[modname] to execute the mod. However, the Sauerbraten configuration page (http://sauerbraten.org/docs/config.html#_minus_gn) says the -g option is used to specify the maximum number of bots a master can add to a server.

On the third hand, single stepping through the code leads to the argument parser in main() (i.e. SDL_main()) in engine/main.cpp). The parser indicates that the -g option is used to specify the log file! So it looks like the code, configuration documentation, and tutorial all disagree with each other.

Furthermore, after examining the included Makefile it looks like rpggame is not included, in disagreement with the tutorial. I've searched quadropolis for source mods, and it looks like every one at least that I could find just modifies the base source files and distributes the modified files in the mod. I've also done other fairly extensive searches of the web and have found no other information, except maybe a few other pages that say to specify the -g option to execute a mod.

Furthermore, the Mac OS X launcher internally sets the -grpg option to go into the (unused) rpg game code. I hacked the NIB file to actually exercise this path, and not unsurprisingly a log file called "rpg" was created in the user's default directory, sigh, and the rpg game code was never executed.

Lastly, after some more single-step spelunking and code analysis, I see that the game code is specified in the game namespace. This is true for both rpggame and fpsgame. What that means is (obviously) only one or the other but not both can be compiled into the code.

So of course what has happened is the source code has evolved to the point that it is out of sync with some code, documentation, and tutorials. Unfortunately this means it is all but impossible to discern the proper model for source modding the game engine at this point.

So could someone please provide me with some historical perspective on this (since I'm new to the forums)? Also, some guidance as to the proper current way to create and distribute source mods would be appreciated. Thanks in advance for your help!

0
points
 (0 votes)
User login
Users on Quadropolis
1 guest & no users online
30
points ]
 (3 votes)
Created 2020-06-13 21:05
4 years 17 weeks ago
20
points ]
 (2 votes)
Created 2021-05-24 00:01
3 years 20 weeks ago
8
points ]
 (1 vote)
Created 2024-06-02 14:26
18 weeks 4 days ago
8
points ]
 (1 vote)
Created 2024-06-02 22:13
18 weeks 4 days ago
vampirefrog
Created 2024-04-11 22:25
26 weeks 1 hour ago
vampirefrog
29
points ]
 (4 votes)
Created 2010-05-30 10:00
14 years 19 weeks ago
Gangler
36
points ]
 (4 votes)
Created 2020-10-22 00:50
3 years 50 weeks ago
Zoocata
10
points ]
 (1 vote)
Created 2024-02-11 21:20
34 weeks 4 days ago
vampirefrog
10
points ]
 (1 vote)
Created 2023-07-23 20:02
1 year 11 weeks ago
36
points ]
 (4 votes)
Created 2020-12-10 12:49
3 years 43 weeks ago
Created 2023-12-12 23:34
43 weeks 2 days ago
Zoocata
Created 2023-11-27 23:00
45 weeks 3 days ago
20
points ]
 (2 votes)
Created 2023-10-01 15:21
1 year 1 week ago
9
points ]
 (1 vote)
Created 2023-06-13 17:54
1 year 17 weeks ago
Zoocata
27
points ]
 (3 votes)
Created 2023-05-05 20:58
1 year 22 weeks ago
Zoocata
18
points ]
 (2 votes)
Created 2023-03-02 01:40
1 year 31 weeks ago
Getridou
Created 2023-01-29 23:27
1 year 36 weeks ago
Created 2023-01-19 19:36
1 year 37 weeks ago
Getridou
Created 2023-01-10 17:10
1 year 39 weeks ago
Getridou
Created 2023-01-01 14:30
1 year 40 weeks ago
Who's new
  • ColdIV
  • Aidan
  • Hunk
  • letic86
  • BATMAN