exploring golgotha source code
The source code to a game called golgotha was
released to the public domain a while back. I
thought it might be interesting to try to work
with it a bit and report what I find.
The first thing is to download the source. Links
can be found on the following web page:
http://www.crack.com/golgotha/browse.html
Its big (30MB) so forget it if you don''t have
access to a high speed line.
The code looks well organized but it uses a
different style of C++ file extensions that
I''m not used to and VC doesn''t seem to understand
so I wrote some java programs to convert.
The java source is here:
http://home.earthlink.net/~uubp/golgutil.zip
Run Rename first to change the files from .hh
to .h and .cc to .cpp.
Run Replace to change all #include "*.hh" to
#include "*.cc" to #include ".cpp".
In my next report I will talk about the project.i4
files and how they describe how to build the
executable. If you don''t see this report in the
next 5 days, you are welcome to remind me at
uubp@earthlink.net
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
- Brad Pickeringhttp://home.earthlink.net/~uubp/Home for organically grown games
What a cool thing to do. I''ve got to go check these guys out. Golgotha looks like it had so much promise, as did Crack.dot.com.
Wish more companies would release code they can''t use rather than let it rot in some storage box somewhere...
--------------------
Just waiting for the mothership...
Wish more companies would release code they can''t use rather than let it rot in some storage box somewhere...
--------------------
Just waiting for the mothership...
--------------------Just waiting for the mothership...
.cc is just another way of distinguishing c++ source files from c source files. Same with .hh, it just tells you it''s a c++ header.
Martee
Magnum Games
Martee
Magnum Games
ReactOS - an Open-source operating system compatible with Windows NT apps and drivers
I''ve toyed a bit with Golgotha, but I couldn''t get it to build (I was using Borland C++ Builder 2 at the time, and I had to rename all the files, plus change all the #includes manually!!)
I found that the code is really messy... all that Cross-Platform junk drove me mad!
Golgotha is a BIG system, and it''s not the easiest to follow. i4 alone (the underlying system stuff) is a complex beast, and, just like crack.com, golgotha got to me too before I could get to it!
Best of luck,
Simon Wilson
XEOS Digital Development
I found that the code is really messy... all that Cross-Platform junk drove me mad!
Golgotha is a BIG system, and it''s not the easiest to follow. i4 alone (the underlying system stuff) is a complex beast, and, just like crack.com, golgotha got to me too before I could get to it!
Best of luck,
Simon Wilson
XEOS Digital Development
XEOS Digital Development - Supporting the independant and OpenSource game developers!
I look forward to your findings. I hope you do not mind all us lazy bastards make you do all the grunt work.
Later,
Eck
Later,
Eck
EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG
I''ve worked on big projects and cross platform projects before so I don''t think golgotha will get me down.
I don''t mind doing the grunt work because I''m guessing it will be contagious and I''ll get people interested later. And I''ll try to turn the grunt work in to interesting projects. For instance I could have renamed all the files manually but I decided to write a program to do the change. I could build the VC project files by hand (and I''ve actually done it) but I think it will be more interesting to write a program to convert the .i4 files to Visual C projects.
Hopefully my next report will have this program done.
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
I don''t mind doing the grunt work because I''m guessing it will be contagious and I''ll get people interested later. And I''ll try to turn the grunt work in to interesting projects. For instance I could have renamed all the files manually but I decided to write a program to do the change. I could build the VC project files by hand (and I''ve actually done it) but I think it will be more interesting to write a program to convert the .i4 files to Visual C projects.
Hopefully my next report will have this program done.
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
- Brad Pickeringhttp://home.earthlink.net/~uubp/Home for organically grown games
I''ve updated golgutil.zip to include my VC++ 6.0 project files. These were hand built, very tedious, but they might get you going until I''ve got the Java program that converts .i4 files into VC project files. The link is
http://home.earthlink.net/~uubp/golgutil.zip.
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
http://home.earthlink.net/~uubp/golgutil.zip.
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
- Brad Pickeringhttp://home.earthlink.net/~uubp/Home for organically grown games
http://home.earthlink.net/~uubp/golgutil.zip now contains a java program called Build.java which does most of the work in translating the golgotha .i4 files into VC project files. I''ve tested the process out on spin_cube and included my build notes in a file called java.txt.
Here is some info on the .i4 files. This file serves the same purpose as makefile but was probably easier to work with in a multiplatform development. These files are composed of sections of related code. The top section is an ''executable'' section. Dependencies are indicated with a ''use'' line which can refer to another section in the current file or another .i4 file. ''add_include_directory'' adds a directory to the list of places to look for header files. ''add_to_executable'' indicates that a source file needs to be in the executable rather than a library, usually because the file contains a staticly allocated instance of a class that might get left out by the linker if it is only in a library. ''ram_file'' indicates a resource file that needs to be converted into source code to get hardwired into the executable. Other keywords include ''win32'' and ''linux'' to indicate that a particular file is used on one platform but not the other.
If you have any questions on building the spin_cube test application or have questions on the .i4 files let me know.
- Brad
Here is some info on the .i4 files. This file serves the same purpose as makefile but was probably easier to work with in a multiplatform development. These files are composed of sections of related code. The top section is an ''executable'' section. Dependencies are indicated with a ''use'' line which can refer to another section in the current file or another .i4 file. ''add_include_directory'' adds a directory to the list of places to look for header files. ''add_to_executable'' indicates that a source file needs to be in the executable rather than a library, usually because the file contains a staticly allocated instance of a class that might get left out by the linker if it is only in a library. ''ram_file'' indicates a resource file that needs to be converted into source code to get hardwired into the executable. Other keywords include ''win32'' and ''linux'' to indicate that a particular file is used on one platform but not the other.
If you have any questions on building the spin_cube test application or have questions on the .i4 files let me know.
- Brad
- Brad Pickeringhttp://home.earthlink.net/~uubp/Home for organically grown games
I made a zip of the golgotha source with only the test programs and the ''i4'' library. Its less than 3MB so if you want to look at the code without downloading a huge file, this might be of use. If you want to write a game but dont want to write all the core code, golgotha will give you a good start.
http://home.earthlink.net/~uubp/i4src.zip
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
http://home.earthlink.net/~uubp/i4src.zip
- Brad Pickering
http://home.earthlink.net/~uubp/
Home for organically grown games
- Brad Pickeringhttp://home.earthlink.net/~uubp/Home for organically grown games
September 21, 2000 08:19 PM
Or you could have saved yourself a lot of time and just went to http://www.gameznet.com/golgotha and just downloaded either VC++ 5.0 or 6.0 Golgotha projects already converted.
Hmmmm.... what the heck is that internet search for again?
Hmmmm.... what the heck is that internet search for again?
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement