Page 1 of 2

Crimson Glory open source

Posted: Sat Jul 14, 2007 2:08 pm
by MolokoTheMole
Crimson Glory is a side-view airplane dogfighting game inspired by Porco Rosso. The game engine is based on Irrlicht. I will not continue this game so I decided to release it open source.

Image

There are many interesting things here for Irrlicht users. I used a bunch of code snippets from the forums.

I wrote a working Cal3D wrapper. I don't know if there is a better one out there now.
Also I wrote my Newton wrapper for it.
It has some interesting algorithms for mesh cutting and breaking, all with working physics.
More features:
- running, flying, using planes, guns
- complete realistic flight model
- physics with destructible planes
- particle engine
- 3d sound with doppler effects
- music
- networking works only for chatting but you`d have to play around with scripts to start server first and then join
- scripting allows a lot of modifications/additions
- night/day cycle (may not work sometimes)
- semi-intelligent bots
- in-game editor
- maps can be made/edited in DeleD
- working console with scripting and variables
Here is the official news I posted:
Crimson Glory is officially open source. You can download it and do whatever you want with it, unless you want to use it commercially (more info in license.txt).

I want you to get the source code, educate yourself and maybe help me out with it. Add stuff, modify, optimize, suggestions are welcome. I’m using this in my new game, the structure of the engine and all of its core components like scripting and entities will be the same.

Crimson Glory website
(only game (16mb; exe) or game with source (32mb; no exe!) available for download)

The basics you need to know are:
The whole source is written in C++ ready to compile and go from Visual Studio 7 (it should run on any other compiler)
There are 2 projects Crimson (the executable) and GameDLL (the DLL that is executed by the exe); basically the interesting stuff, meaning the whole game is in GameDLL
The engine uses several subsystems:
- graphics: Irrlicht (also used for geometry, including math and vectors)
- sound: FreeSL (wrapper for OpenAL)
- player animations: Cal3D
- scripting: GameMonkey
- network: RakNet
- maps format: DeleD

The game runs on Windows, however it is possible to compile it on any system. The problems I see are in the different components like FreeSL or Cal3D. In theory they should compile but I never tried it.

If you have any questions, need help in finding what is where and what in the engine just e-mail me and I’ll answer as best as I can.

Posted: Sat Jul 14, 2007 3:12 pm
by Monochrome
Hehehe, I wasnt aware that the creator of Soldat was creating an Irrlicht based project. Good thing to see some pros like you using Irrlicht. Still, too bad you didnt decided to stop working on it. it was looking kickass.

Posted: Sat Jul 14, 2007 4:17 pm
by MolokoTheMole
I'm making a completely new game based on the same engine. So yes, it will too use Irrlicht. It's going to be 2D only so I will probably strip it from the 3D stuff to make it faster.

Posted: Sat Jul 14, 2007 6:47 pm
by GameDude
This looks really good, too bad your stopping on it.

Posted: Sun Jul 15, 2007 10:38 am
by BlindSide
Ooooh im loving the water, might find that useful...

So wow the creator of soldat is using Irrlicht? Ive never played it but it seems really popular and everyone says it is good. So Im pretty happy to see someone skilled like this working alongside us.

Good luck with your new game too :D

Posted: Sun Jul 15, 2007 11:02 am
by hybrid
Hey, nice thing. Will have a look or two :) What kind of license applies for the source code? Just in case there's something interesting to rip out :)

Posted: Sun Jul 15, 2007 1:52 pm
by MolokoTheMole
You can do whatever you want with the code, except for commercial applications, in that case you need to contact me.
The water effects can be turned on in console /e_waterreflection 1 as far as I remember.

Posted: Sun Jul 15, 2007 10:25 pm
by omaremad
Wow thats pretty interesting, Ill be looking at the source to learn how you did things scripting since in my previous projects i didnt get a scripting interface working well. My internet connection isnt working well with the download so ill try again.
btw thats very genrous of you to realse something like this, since most of whats on the internet about scripting covers very little about the implenentation and mostly about how the scripting sytax.

Posted: Mon Jul 16, 2007 12:58 am
by GameDude
It will also be code to learn from.

Posted: Mon Jul 16, 2007 3:25 am
by benny53
you sir,are my hero. I have been looking for a cal3d wrapper for so long(didn't feel like changing the other one to work with recent irrlicht things). Plus,the physics part sounds interesting. I really can't wait to check this out.

Posted: Fri Jul 27, 2007 1:59 am
by imagination304
Hi all,

When I download CG06.zip from the first mirror and unzip,
it reports "some has bad crc error"

Do you encounter this problem?

Thanks in advance

Code: Select all

Extracting alut.dll
Extracting autoconfig.gm
Extracting console.bmp
Extracting gui.bmp
Extracting Game.dll
Extracting Cal3D-logo.bmp
Extracting FreeSL-logo.bmp
Extracting Irrlicht-logo.bmp
Extracting Newton-logo.bmp
Extracting OpenAL-logo.bmp
Extracting Raknet-logo.bmp
Extracting intro.dmf
Extracting sky1.jpg
Extracting test.dmf
Extracting test2.dmf
Extracting test3.dmf
Extracting test4.dmf
Extracting test5.dmf
Extracting test6.dmf
Extracting fightergun.ms3d
Extracting fighter-hero.ms3d
Extracting fighter-pirate.ms3d
Extracting fighterhero.bmp
Extracting fighterhero.png
Extracting fighterpirate.bmp
Extracting fighterpirate.png
Extracting Copy of pilot.xmf
Extracting Copy of pilot.xsf
Extracting force.xrf
Extracting OUTPUT.bak
Extracting output.bdf
Extracting output.bk1
Extracting output.x
Extracting pilot.cfg
Extracting pilot.cmf
Extracting pilot.csf
Extracting pilot.xaf
Extracting pilot.xmf
Extracting pilot.xsf
Extracting pilot_.xmf
Extracting pilot_crouch.caf
Extracting pilot_holdweapon.CAF
Extracting pilot_holdweapon.xaf
Extracting pilot_idle.caf
Extracting pilot_idle.xaf
Extracting pilot_run.caf
Extracting pilot_run.xaf
Extracting pilot_skin_airforce.tga
Extracting pilot_skin_pirate.jpg
Extracting pilot_skin_pirate.tga
Extracting pilot_walk.caf
Extracting pirate.crf
Extracting pirate.crf.xsf
Extracting pirate.xrf
Extracting test.cmf
Extracting test.xmf
Extracting test.xsf
Extracting rifle_bayonet.ms3d
Extracting wake.ms3d
Extracting crimson_march.ogg
Extracting skyward_v2.ogg
Extracting precache.txt
Extracting airplane.gm
Extracting autoconfig.gm
Extracting autostart.gm
Extracting biplane.gm
Extracting buggy.gm
Extracting config.gm
Extracting Copy of biplane.gm
Extracting dump.gm
Extracting editor.gm
Extracting editorevent.gm
Extracting fileopen.gm
Extracting flag.gm
Extracting gui.gm
Extracting guievent.gm
Extracting guitest1.gm
Extracting hydroplane.gm
Extracting hydroplane2.gm
Extracting hydroplane_scout.gm
Extracting old_hydroplane.gm
Extracting pilot.xmf
Extracting rules_dogfight.gm
Extracting scriptweapon_planegun.gm
Extracting scriptweapon_rifle.gm
Extracting soldier.gm
Extracting soldier_dod.gm
Extracting soldier_pilot.gm
Extracting template_world.gm
Extracting test.gm
Extracting test2.gm
Extracting test3.gm
Extracting unzoom.gm
Extracting world.gm
Extracting world_intro.gm
Extracting d3d9.hlsl
Extracting bullet_water4.wav
Extracting init.wav
Extracting m60_fire2.wav
Extracting machine_steady_fan_low.wav
Extracting Sniper0.wav
Extracting Sniper1.wav
Extracting water.wav
Extracting water_fall.wav
Extracting waypoint.wav
Extracting wind_control_room3_loop.wav
Extracting bigsplash.png
Extracting bubble.png
Extracting contrail.bmp
Extracting contrail.png
Extracting dust.png
Extracting exhaust.png
Extracting fireball.bmp
Extracting gunsplash.png
Extracting propeller.png
Extracting skyclouds.png
Extracting smallhit.png
Extracting sprycol.png
Extracting wcircle.png
Extracting caverock.jpg
Extracting CLD1.BMP
Extracting CLD1.jpg
Extracting cloud.bmp
Extracting cloud4.jpg
Extracting cloud4.png
Extracting cloud1.jpg
Extracting cloud1.png
Extracting cloud2.jpg
Extracting cloud2.png
Extracting cloud3.jpg
Extracting cloud3.png
Extracting cloud4.jpg
Extracting cloud4.png
Extracting cloud5.jpg
Extracting cloud5.png
Extracting cloud6.jpg
Extracting cloud6.png
Extracting cloud7.jpg
Extracting cloud7.png
Extracting cloud8.jpg
Extracting cloud8.png
Extracting cskygradient.tga
Extracting default.jpg
Extracting dirt.jpg
Extracting dirt2.jpg
Extracting earth2.jpg
Extracting evul.jpg
Extracting fightergun.tga
Extracting fireball.bmp
Extracting flares.jpg
Extracting Floor01.jpg
Extracting Floor02.jpg
Extracting Floor03.jpg
Extracting Floor04.jpg
Extracting Floor05.jpg
Extracting Floor06.jpg
Extracting Floor07.jpg
bad CRC 77c3b8c3  (should be 5406d29b)
Warning: the size of the extracted file (81638) does not match the uncompressed size (81556) recorded in the zip file
Extracting Floor08.jpg
Extracting Floor09.jpg
Extracting Floor10.jpg
Extracting Floor11.jpg
Extracting idolknight.jpg
Extracting jeep1.jpg
Extracting light.png
Extracting limestone.jpg
Extracting mossyrock.jpg
Extracting natural_water.jpg
Extracting Nature01.jpg
Extracting Nature02.jpg
Extracting Nature03.jpg
Extracting Nature04.jpg
Extracting Nature05.jpg
Extracting rifle.tga
Extracting Roof01.jpg
Extracting Roof02.jpg
Extracting Roof03.jpg
Extracting Roof04.jpg
Extracting Roof05.jpg
Extracting sky-sunset.jpg
Extracting sky1.jpg
Extracting sky2.jpg
Extracting sky2.tga
Extracting sky3.jpg
Extracting smoke.bmp
Extracting sonwalk.bmp
Extracting Sonwalk.jpg
Extracting sphere.bmp
Extracting stars.bmp
Extracting stars2.bmp
Extracting sun.tga
Extracting system.bmp
Extracting wake.png
Extracting wall.bmp
Extracting Wall01.jpg
Extracting Wall02.jpg
Extracting Wall03.jpg
Extracting Wall04.jpg
Extracting Wall05.jpg
Extracting Wall06.jpg
Extracting Wall07.jpg
Extracting Wall08.jpg
Extracting Wall09.jpg
Extracting Wall10.jpg
Extracting Wall11.jpg
Extracting Wall12.jpg
Extracting water.jpg
Extracting Water01.jpg
Extracting water_splash.jpg
Extracting whiterock.jpg
Extracting Wood01.jpg
Extracting Wood02.jpg
Extracting strings.txt
Extracting cal3d.dll
Extracting Crimson.exe
Extracting FreeSL.dll
Extracting Irrlicht.dll
Extracting app.txt
Extracting chat.txt
Extracting console.txt
Extracting msvcp71.dll
Extracting msvcp71d.dll
Extracting msvcr71.dll
Extracting msvcr71d.dll
Extracting Newton.dll
Extracting OpenAL32.dll
Extracting RakNet.dll
Extracting readme.txt

Posted: Fri Jul 27, 2007 10:58 am
by BlindSide
Hehe it cant be that bad because your uncompressed size is BIGGER than the recorded one :P

Posted: Sat Oct 04, 2008 9:18 am
by TomiZ
Link is dead. Can anyone upload source code again, please?

Posted: Sat Nov 28, 2009 12:46 am
by lymantok

Posted: Sat Nov 28, 2009 10:40 am
by shadowslair
Has anyone a compiled binary of this game, please? I tried compiling myself, but get many errors I cannot get rid of. I just wanna try it. :D