Jump to content

Public Domain(ish) C++ Code


TylerH
 Share

Recommended Posts

The project was abandoned on Leadwerks in favor of working on a multiplayer version of the game in the Unreal Developer Kit. I no longer maintain association with the team following some arguments and legal disputes with the leader of the team.

 

95% of this code was done by Jeremy Parker and myself, the remainder done by outsourced programmers, only one of which is still on the team through the UDK switch; however, none of the code from the Leadwerks version was kept on the official SVN, done under NDA or proper legally enforceable contract, or claimed by (at the time it was not a legal entity), thus I am releasing the code here for the benefit of anyone coding Leadwerks in C++.

 

Some things that we did that were first-time or unique to Leadwerks at the time:

- Day/ Night Cycle (The shaders and 95% of the code are Jeremy's, so credits to him if used)

- Cinematic Camera

- LuaBind full Lua implementation and interface between C++ and Lua

- FMOD Sound System

- Full CEGUI Implementation

- Quest System (C++ and Lua)

- Inventory System (C++ and Lua)

- Fully traversable entity list / object manager in C++

- Full "game time" system, allowing years, months, days, hours, minutes, seconds, and milliseconds in a game-specific time cycle (this was core to the day/night system)

- Weather effects system (Rain, Fog, Lightning, Thunder, etc.)

- Custom XML loaders for sounds and CEGUI scenes

- Scripted Event system

- Screen Layout (Main Menu, Loading Screen, Options Screen, Game Screen [think XNA])

- Threading code! (We had achieved multithreaded level loading, and rewrote LoadScene in C++ with code provided by Josh)

 

This also contains the beginnings of an object oriented game framework that I had begun porting from OGRE to Leadwerks, but eventually stopped working on when we had switched to UDK.

 

For obvious reasons, I can not include any of the model or texture assets used in the game or seen in any of the screenshots in the gallery.

 

This package includes all of the dependencies we had built directly into the system:

- Boost

- FMOD

- Lua

- LuaBind

- OIS

- TinyXML

 

CEGUI is not included! We all maintained our own local depository of CEGUI and the only version we fully implemented was 0.6.2!

 

This was done entirely in the original Leadwerks Engine 2.3

 

Other Notes:

- All the Lua scripts in the Scripts\Quests folder, and some of the custom Lua files in the Scripts folder are not compatible with the "Leadwerks Lua implementation". They were all loaded and managed using our script system via LuaBind.

- There is no warranty or support on this code. You are free to use it for whatever you wish, granted you credit the following individuals based on which code you utilize:

- Jeremy Parker - anything

- Tyler Harden - anything

- Anthony Lundquist - Object Manager

- Christian Sassi - weather system / CEGUI XML loader

 

Most code files contain an Author's name; however Jeremy and I coded all of the original versions of every aspect of this code except the object manager and CEGUI XML loader, and we wish to retain credit if you use our code. All of the threading code and mutex code was taken from my game engine, Synergy Engine, and maintains an MIT license. In all, this code package contains code from xxxxx, the dependencies listed, Synergy Engine, and some internal Leadwerks Engine code converted to C++ with permission.

 

LINK:

http://tylerharden.com/leadwerks/%%20LEADWERKS.rar

 

RAR PASSWORD:

 

leadwerks232!

 

 

Thanks, and Enjoy!

  • Upvote 1

52t__nvidia.png nVidia 530M cpu.gif Intel Core i7 - 2.3Ghz 114229_30245_16_hardware_memory_ram_icon.png 8GB DDR3 RAM Windows7_Start.gif Windows 7 Ultimate (64x)

-----

IconVisualStudio16.png Visual Studio 2010 Ultimate google-Chrome.png Google Chrome PhotoshopLinkIndicator.png Creative Suite 5 icon28.gif FL Studio 10 MicrosoftOfficeLive.png Office 15

-----

csharp.png Expert cpp.png Professional lua_icon.png Expert BMX Programmer

-----

i-windows-live-messenger-2009.pngskype-icon16.pngaim_online.pnggmail.pngicon_48x48_prism-facebook.pngtunein-web.pngyahoo.giftwitter16.png

Link to comment
Share on other sites

I had my own thoughts for a slightly sped up, multithreaded loading system (via hijacking ProcessScene, rather than LoadScene) but never even started to implement it, so this should be well worth a look

LE Version: 2.50 (Eventually)

Link to comment
Share on other sites

  • 2 weeks later...

Thanks, and Enjoy!

 

Thank you Tyler. I'm a not C++ programmer and won't use the code, but i can still read the code and learn some tricks.

 

I hope you'll start your own game project. But this time don't let someone else be the CEO B) Be the project leader and the CEO yourself.

When i saw your little team had a CEO my first impression was "ouch, a young guy who just knows how to wear a tie is the boss... and the lead programmer is at worker level in the hierarchy ... this will end badly"

 

I wish you better luck next time

Windows 7 home - 32 bits

Intel Quad Q6600 - nVidia GTX 460 1GB - 2 GB RAM

Link to comment
Share on other sites

Yesterday i found this topic, and i want to say that its always bad news to hear about abandoning projects. And i want to shake your hand, Tyler, for providing that code.

 

Anyway, now i managed to launch your project with standard models with copying and renaming leadwerks assets by meaning of models names.

Also, some fine stuff was found (screenshots 2 and 3 ) - texture of main character changes, depending on camera rotation. Idk, if it is because of using crawler instead of kid (nice calambur :D ), or its planned to work so, but this looking nice :).

Working on LeaFAQ :)

Link to comment
Share on other sites

That is actually interesting. I don't recall anything that was designed to change the player's texture based on rotation, but I *do* remember the version of the engine we were using suffered from some horrible bugs that did things like that, and squishing the scene with more than 1 light, and such.

 

Might be best to see how it runs on the latest engine, but great that you were able to get the full on program to run :)

52t__nvidia.png nVidia 530M cpu.gif Intel Core i7 - 2.3Ghz 114229_30245_16_hardware_memory_ram_icon.png 8GB DDR3 RAM Windows7_Start.gif Windows 7 Ultimate (64x)

-----

IconVisualStudio16.png Visual Studio 2010 Ultimate google-Chrome.png Google Chrome PhotoshopLinkIndicator.png Creative Suite 5 icon28.gif FL Studio 10 MicrosoftOfficeLive.png Office 15

-----

csharp.png Expert cpp.png Professional lua_icon.png Expert BMX Programmer

-----

i-windows-live-messenger-2009.pngskype-icon16.pngaim_online.pnggmail.pngicon_48x48_prism-facebook.pngtunein-web.pngyahoo.giftwitter16.png

Link to comment
Share on other sites

Honestly I don't know. Everything kind of followed an Update/Render generic command set in the main loop, and the individual programmer of that portion of the component was responsible for the internal logic.

 

I would have to take a look to see, so give me a little while.

52t__nvidia.png nVidia 530M cpu.gif Intel Core i7 - 2.3Ghz 114229_30245_16_hardware_memory_ram_icon.png 8GB DDR3 RAM Windows7_Start.gif Windows 7 Ultimate (64x)

-----

IconVisualStudio16.png Visual Studio 2010 Ultimate google-Chrome.png Google Chrome PhotoshopLinkIndicator.png Creative Suite 5 icon28.gif FL Studio 10 MicrosoftOfficeLive.png Office 15

-----

csharp.png Expert cpp.png Professional lua_icon.png Expert BMX Programmer

-----

i-windows-live-messenger-2009.pngskype-icon16.pngaim_online.pnggmail.pngicon_48x48_prism-facebook.pngtunein-web.pngyahoo.giftwitter16.png

Link to comment
Share on other sites

Always liked the support for up to 256 textures channels per layer in the Hero Engine ... apart from anything else.

Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro, Shader Map Pro. Development language: C/C++

Link to comment
Share on other sites

I wonder if HeroCloud will start dragging (more serious) users from LE, with its relatively low costs.

 

5k? I know you said more serious users, but damn. Even Unity is only 1.2k. I don't think the 5k people were really ever considering LE to start with. Cost almost always equals quality (in tools and such not just graphics) so someone willing to spend 5k on quality tools most likely wouldn't even think twice about a $200 engine, because they would realize the tools are probably subpar to a 5k engine.

 

World-Class Scripting Language – HeroScript provides fast performance and MMO-specific framework in an easy-to-learn yet powerful scripting system.

 

Man I hate engines that use their own scripting language. Why would you do that and cost a learning curve when you can use Lua or .Net and get the same effects.

Link to comment
Share on other sites

Looked into HeroEngine a bit more. Wasn't able to find any prices on licensing the standalone engine. I think by 5K you mean the HeroCloud service which just gives you access to their servers where they have HeroEngine installed for you. If so, I even more doubt that LE will lose any users to it. The terms are horribly unfavorable if you are not already a medium-sized development team with a multitude of assets ready creating an MMO (and nothing else).

 

License fee: $4,995 per team, including access for up to 25 developers.

 

Hosting fee: included in the first year, subsequent years cost $995 each until your product launches commercially. Once your game is commercially available you pay for any hosting, bandwidth, and billing costs.

 

Software updates: included in the first year and available for $995 annually thereafter.

 

Royalty: We keep 15% of revenue.

 

Training: Training classes are available for $995 per person for a one-week course.

 

Technical Support: Technical support is $95 for one hour of support.

Link to comment
Share on other sites

Please note that the name "Jeklyn Heights" is the intellectual property of Vex Studios, and programs should not be distributed with this name, as it was included in this source code.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...