#76 2016-10-26 13:53:49


Re: Rival: Cube/tesseract mod


So how are things going with your work.

Also regarding code management and conventions, I imagine once you get the code to alpha stage you could safely distribute the source via github or even a privately hosted git repo.

I would love to try and contribute some to the project. However full disclosure I myself am not a great programmer, but I believe I may be able to do minor things or improvements. I could also (for dirt cheap or possibly free) host / manage any website that you may want to have in the future, email me for more details.

Worse case scenario I could even do something as simple as be a beta tester and provide feedback.
Also if I ever do get involved I may not be active all of the time as I am often busy balancing work and family.

Do you still plan on releasing a alpha version soonish?


#77 2016-10-27 17:36:47


Re: Rival: Cube/tesseract mod

Im working on back end linking between nodes (parental, sibling, direct, reference) biggest hang up right now is saving these links back to file. Ive put quite some time into this part but im having trouble mostly due to its been a month or 2 since I looked at this code. I will probably do a git release soon. I see a lot of people want to help with the project and I think it could be useful to have a community of contributors (even if its just doing minor improvement. As soon as I get this linking system working correctly I will be uploading it to a git or svn. (Personally I have more experience with svn but every one uses git now so ill probably just switch).

Also been looking at using the tool banna bread used to port sauer to browers. I want to have a built in releasable web version as well but this will be at a later point. I was mostly checking for how long and how hard this would be. And what kinda performance improvements I would need to add, and possible lowering of some of the rendering api so that most computers could run this.

I've also looked into realtime screen space reflection being added to surfaces (like glass and alpha) to allow for mirror like surfaces and tile reflections. without the tetious need to put in cube maps (which hardly work correctly).

Ive also been delinking the camera and splitting it into a separate class so that you can render a camera for any reason. This will help the above along with tv screen of places in the map top down renders (like you get in ctf) more accurate cubemaps, and other realtime rendering improvements.

Ive also spent some time looking at the culling algorithm and seeing if the use of portals (fixed space portals) could be used to improve the game (though this may be later down the line).

Just havent done anything worthy of a video :)


#78 2016-10-27 17:45:50


Re: Rival: Cube/tesseract mod


IDK if i just missed your response or for got to respond so i will now.

@forking rival

Im looking to make rival a engine more in the traditional unity or unreal way, so by fork I assume you mean game. So yes I would very much help in that endeavor a game engine with no games really is pointless wouldnt you say :)

@Coding linux/mac

YES I will need help porting cuz my mac is so old it doesnt run the latest xcode ;p or any xcode that compile the tesseract files. And tesseract hardly runs on it :P its a duo core 0.0

As far as contribution. I like the idea but im a control freak 0.0 but I will probably entertain the idea and see how fast i flip out ;P I just dont want to have to spend most my time integrating and fixing other peoples code that is half baked. Just sounds annoying. So Ill probably set up a standards library and a naming standard etc blah blah boring stuff :p Mostly its important when it comes to as command line functions and cube language functions. Having some varibles named in camel case and some named alll caps and some with _ between spaces or - instead. It can get messy fast :) And it just makes people frustated trying to guess what the name is of basic function. Its just very unproffesional (cough cough python cough pygame cough).

-end rant-



#79 2016-11-06 02:04:49


Re: Rival: Cube/tesseract mod

Hey Chase, thanks for the reply :)
@forking Rival:
   Yep, it's a game (and a quite substantial one at that). It should be a good test on Rival for the new physics system and scripting features. It can't be done 100% with script cause I need to add networked phys objects and other engine-level features. I would show the original game now but the 3d art is umm, a bit lacking :DDD
   Anyone like to make/port 3d models for me? :)

   Yeah, there would be alot of overhead in defining coding standards. Maybe it's not worth the effort at this point.

One thing I do want to try though, is pulling together all the great Tesseract/Sauer mods into the port of my game. There are so many great mods out there (especially for Sauer).
@python/pygame *cough*
  Yeah I've had my experiences with Python, happy to be a Perl/Shell person :)

PS: The C++ compiler used to port Sauer to the web is called Emscripten, BananaBread is the name of the game ;) I've played around with Emscripten and it's very awesome. Personally, I would not recommend porting Rival to the web yet. Tesseract has rather high system requirements to run smoothly, and there would be some work with Emscripten's suboptimizer to get even near-native performance.

Last edited by Hypernova^ (2016-11-07 22:21:48)


#80 2016-11-08 13:14:23


Re: Rival: Cube/tesseract mod


I did play with it as well, and I agree. It would be a later project (maybe when computers get better over the next year or two). But it could easily handle real-time lighting, and maybe low level gi but i would force turn off most features. Add an model reducer at runtime, so that there could be more low poly models, and massively improve occolition culls with imposters and billboard models. The problem generally is too many polygons. The octtree (if used well) rarely has a mass amount of polys (at least compared to most map levels) and its very efficient at culling out or reducing the amount that go into the buffer. So I think the problem will more lie in the speed of the shader culls and the amount of time the vertex shaders need to run.


Rival is live on git .. well kinda its not perfectly working I still having problems dealing with git submodule system but It has all the code generally linked. I will continue to upload versions.

It would be nice if some one that has better expirence with git would help fix the problems. Mainly the problem is:

1 the angelscript submodule is named --force (for some odd reason, i think i acciently did that).
2. The links to some of the .h .cpp .lib files are not correct and they just need moved to an appropriate place.
3. cmake files ........ that would be nice to get all linked (bullet and angelscript and tesseract should have them they just need to all work together (I know nothing about cmake and shock my self every time i open cmake and can actully figure out how to build the project files I need.
4. any other recomandation or new ways to organizes the file system (its kinda a mess, but Im always open for improvement Ideas.

I uploaded some projects and issues etc, If you see anything you want or that is a problem please help me out by posting it there I will respond and hopefully can find a way to fix your problems.

@mod intergration
Ive been looking at a lot of the various mods over the last years, inteoir (idr the tame exactly) it has svn for maps (more or less) and auto complete command prompt (like in source engine). I have a lot of ideas but of course many of them need a lot of reworking. So any ideas post them there and we can discuss them and work our the best way on how to implement them.

@Code standard
I will come up with one it be pretty simple basic practice. Like Keep your code in a logical namespace (something I will be adding to most the engine code [cuz it bugs me how many global static calls there are]). Const get named with all caps, dont name things a single or 2 character name unless it only has the scope of one function or one loop etc. Enums need to be named and the name (or abrivation of name) should prefix all enums like:


Nothing to crazy :)


Oh ya heres the link :p


#81 2016-11-08 15:31:55


Re: Rival: Cube/tesseract mod

Yay! Rival is on Git. (actually I had Rival on Git for a while working on a few things :D)

@(C)make: yes I'm working on this. should be finished in the next 20 years.
               I don't like everything about cmake, but having it available would be the easiest way for a new person to experiment with the codebase.

@git cleanup: I'll take a look.

@mod integration: Inexor is an awesome mod, I will probably take many ideas from it. Also since I'm working on a game, I'll be pulling from other mods too such as Supersauer and SauerEnhanced.

@coding standard: One way to go about it is finding a well documented coding standard on the internet (and there are many), and having people stick to that. That would be more efficient than trying to write up a big document by yourself. For now, I will just stick to the standards of the code that is already there (and the stuff you mentioned previously is definitely reasonable).

@kitten launcher: I've been looking for a reason to add some kind of silly kitten weapon in my game but I can't think what it should do. Any suggestions

Last edited by Hypernova^ (2016-11-09 01:28:56)


#82 2016-11-10 00:03:15


Re: Rival: Cube/tesseract mod

I have a Dream..

well more like:
I have a Game Idea..

Basically you take silly made up, semi-realistic (or at least plausible realistic weapons) in an arena style game. Could be pick up based etc. But Physics and map changing and building would be key components. Obviously with toonish graphics and really off the wall game play, that is Mostly randomly generated, and of course fairly balanced. You could take your hl2 physics game play allowing people to use there melee as a forcefield of sorts pushing away and carrying objects, and blasting back projectiles. Of course with a mild cool down so it couldn't spam away everything, and a variously amount of skill curve (maybe like the air blast in tf2). You Could pull off parts of the map like (particular areas) like mettle panelling boxes, chairs etc and use them as weapons or throw them at people (or go all wwe on some mother f***er and beat them to death with a folding chair). Add in various classes with different perks you could get over time. AND OF COURSE LOTS OF BALANCING. But it could be a very chery hellish, brutal, cute, bloody good time :)

But any way.

@your game in a general whole
Anything you add feature wise as in raw engine mechanics I would love to integrate into rival. And any scripts you make I would love to add as example code (probably just linking them differently or as a like snippet code base). Like how to make a basic fps (plug and play) or adding a hud etc. (not like taking your key game elements :)

ANY HELP IS BETTER THAN NO HELP especially when that help is git

Side note
after looking at the folder structure. I would like to take my remakes of the angelscript files (those being serializer.h,cpp halo.h wings.cpp, and put them into my includes or just in the main engine. (cuz its very modified from the original files angelscript had. All the rest can just link into the angelscript code. (BUT this is something I probably can handle).

CMAke is like main priority tbh, i want people to easily build the exe if they want it. That is the worst thing to have in an open source project. Have beautiful project with all these nice features but nothing can build and nothing works, So you spend 20 hrs over 3 weeks (cuz you're not a masochist and dont like slamming your head against the wall) trying to get it to work, then you get it to work, and they update the next day and it breaks :(

SO ITS IMPORTANT :) but i wanna leave the major compilers proj files in the git repo, so xcode codeblocks and vcpp 10 11 12. And any others your would suggest. Just so It wont be necessary to use them but If something doesnt work you can easily fix it. :)

@mod Most mods that I can think of are mostly just gameplay or game based features, so it really doesnt effect me, I think that these would just be stuff in the angel script files (which is another reason I like using a script approach, cuz if some one doesnt like the way a menu or a hud looks they can change it (assuming the dev leaves that part of the code open to the user)). But it makes simple mods easier to add and remove and gives more control. Also these script files would control servers allowing for custom game mods (assuming the developer leaves these open enough to play with). Obviously these servers would be flagged and wouldnt be added to the main que of game servers etc.

@code standards
YOU READ MY MIND. Im not writing a code standard way too much work. And I dont know all the various ways to do shit.




void main()
#include "obracket.h"
    for(int i = 0\
#include "endline.h"
     i < 5 \
#include "endline.h"
#include "endline.h"
#include "endline.h"
#include "cbracket.h"

I dont wanna see shit like that -.- just like kill me if i have to debug it.



#83 2016-11-10 00:51:21


Re: Rival: Cube/tesseract mod

@git hub

I just found out there was millstones 0.0 but how do i add them to a project? its seems only issues and commits can be added?

So after posting this I got 10 people to look at the git repo, Im very glad so many people are interested in the project. I will be uploading at least weekly (maybe more). They will be mostly small uploads. I Will probable post a semi blog like post here about once a week or every other week. At some point I will get a forum and a blog of my own. But I would rather sink the time into not doing that stuff and just working on the basics of the engine.

Thanx to every one your support is very important

Last edited by chasester (2016-11-10 00:56:40)


#84 2016-11-11 19:15:00


Re: Rival: Cube/tesseract mod

  I've not used GitHub much for task management (more experience with the Atlassian stack), but from what I can see, a Milestone represents a project (https://guides.github.com/features/issues/). Or do you mean something different by project? (other than a large feature etc).

@game idea
  I think I understand what you mean, sort of a TF2/Overwatch clone? Some of these ideas I had in mind (or implemented already), but the current gameplay is sort of a HL2DM/HL1DM/Sauer combination. (allows weapon jumping/boosting and CTF/Capture gameplay (which does not exist in HL2/1DM)). Your idea of deflecting phys objects is already implemented as a sort of gravity-gun type weapon (more like the grabber in Doom 3), although I will rewrite this part when I port to Rival. I wasn't exactly aiming for cartoonish graphics (I mainly came to Tesseract because of its new rendering features), I feel more like 'competing' with the other OS fps games that exist. (The Cube series dominated OS fps games until Nexuiz came along). We need to show that Cube has actually come a long way since 2007, and this is a great platform to show off.
  As far as modifying the map, I allowed the mapper to place objects which the players can take around the map and throw, but not actually destroy map geometry. I also plan to add breakable materials such as glass, vent grates, etc. Weapon balancing is a veeeery touchy subject; no matter what is existing, people will complain about balance. Nexuiz is a perfect example of this: they advertise 'perfectly balanced weapons', but this balance is all based on damage output, disregarding all other factors. Obviously, it did not work, and Nexuiz is now nicknamed the 'three weapon game' (rocket, mortar, nexgun, and sometimes shotgun). Tbh I think Sauer's weapons are more balanced. Just my 2 cents.


#85 2016-11-12 19:57:17


Re: Rival: Cube/tesseract mod

There is a projects tab but i cant add milstones to it just issues? But I ll figure it out. And its not really for me I know the direction of the engine and I have some general documents hashed out, its for some one looking at the project to see what is next on the agenda, and to leave comments and so forth abuot there opinion pertaining to the direction etc.

Na less class based more perk based, but yes. And you can make toon look good with real lighting. Just a lighter color tone instead of a dark "brown, bloomy" real one. :)

But its all good


#86 2016-11-13 23:55:18


Re: Rival: Cube/tesseract mod

FYI - I have created a Slack channel called Rival-Dev for internal development discussions (I feel like we're over-using the Tesseract forums a bit :D). Chase, I sent you an invite.

Anyone else who is interested in Rival development or other contributions, post your email here and I'll send an invite. (of course Chase you can invite whoever you want :) )

Last edited by Hypernova^ (2016-11-13 23:57:44)


#87 2017-02-01 03:39:52


Re: Rival: Cube/tesseract mod


Hello! I was wondering if this is still in development and if so how to get in touch with you guys about working with the code.

@Library generation

I'm following every tutorial on *.lib generation and trying to set up the project with the Rival code, but I haven't gotten most of it working yet. For now I am using the bullet lib files provided by Chasester, but would like to know how to make updated ones myself, so that if another library is needed, one can be made or updated if need be.

@Current Issues

Issues found recently:
- Current Rival binary respond with "cannot find shaders"
- No clear method for building a binary in the repo. Documentation = undefinded;

Not trying to say this project isn't fantastic, as the videos clearly show how much has been done!
I'll also continue attempts every day to get it to work on my end.


The current revision of the Tesseract project does not play nice with Rival, alerting that it "cannot find shader definitions". I managed to get something to work by reverting the source code to may of 2015, but this is only guessing at the time Rival may have begun and may pose issues trying to develop. It would be nice to know which revision that Rival is currently based on in order to help avoid potential bugs.

@Building Bullet Libraries (*.lib & *.a files)

It seems that the Bullet Wiki has some tutorials on getting *.libs and *.a libraries (depending on the platform) compiled for use in a project such as Rival, but I haven't been able to figure out how to do so, and am trying to get cmake to work properly.

I've already managed to use cmake to generate "CodeBlocks MinGW Makefiles" and believe that I must be missing something in the ways of selecting the proper generation method. Any help on this is welcome!
source code path: "(path to src)/extralib/bullet3"
binaries path: "(path to src)/extralib/bullet3/build"

Is there any suggestions as to which generator option I should choose in order to get CMake to generate the proper libs or could someone explain the order of events to make this happen? I know I can't be the only person who has has issues in this department.

[EDIT] By the way, I've only spent 2 days (~18 hours) on this issue, and am finding new material all the time to try new things. Currently I understand that

 BulletDynamics.lib; BulletCollision.lib; LinearMath.lib

are all there and to include it in the top of the source file as so:

#include “btBulletDynamicsCommon.h”

. I believe that this is mostly taken care of or else Rival wouldn't have made it this far. Still trying and will update if I solve this before anyone tells me what I am missing.

@Final Comments

So far the videos show a lot of great progress! I am sure that there is plenty to do (such as making decals follow models after they change location/orientation - probably more of a Tesseract fix than a Rival one) but still, great work!

@PS - Slack
If you are still using Slack to communicate and develop this, I am interested in "Rival development or other contributions" so here is my email: l._tempris@hotmail.com.

And a thank you for working on this project and any help or tips you may have! I know that an in-house solution is desired, but without more people playing around with and working with at least some type of solution, an in-house solution is only more difficult.

Last edited by Tempris (2017-02-01 04:05:29)


#88 2017-02-03 03:21:55


Re: Rival: Cube/tesseract mod

So after a couple days of grinding away at all of the information I could find, I discovered the Visual Studio project file, which compiles perfectly in a Windows 10 environment! This resolves the issue of making Code::Blocks compile the source, as it seems Rival was no designed for to begin with. Possibly adding a readme file with a quick how-to would be a good idea for newcomers.

@Library Generation

This was a Bullet question, not meant for here, so my apologies in advance. I have learned that I can add the bullet3/src directory and compile the files with the rest of the source code! Also, I have found an answer to my question regarding static library generation on their wiki. I still haven't nailed down how to get that aspect to work, but I am not giving up!

@Current Issues

The issue regarding shaders not being found is most likely an issue with applying the source code of Rival to a modern revision of Tesseract's media files. Knowing which revision to use, or porting Rival to the latest revision of Tesseract should alleviate this problem. I will investigate more on this one and share my discoveries.

@Building Bullet Libraries

This also wasn't a question for this thread or forum, apologies again. It is a separate issue from Rival itself.

Thank you again! I should have spent an extra few days before adding that wall of text earlier. I am really excited to see Rival working for myself on my own machine!

Last edited by Tempris (2017-02-03 03:22:50)


#89 2017-02-03 20:10:01


Re: Rival: Cube/tesseract mod

Hey Tempris, I've sent you an invite via Slack. Glad to have you join us!
We're still partially active, though busy with other things in life :)

Last edited by Hypernova^ (2017-02-03 20:18:53)


#90 2017-02-04 01:57:28


Re: Rival: Cube/tesseract mod

sorrie tempris ive not been that steady at checking tesseract forums

Join the slack thread if you still have problems, id love to have help in what ever way possible.

Curently decided to go back to college so on hold till the summer, so roughly 10 weeks from now. I will put steady builds out during the summer and hopefull have at least a prealpha state of the engine that will allow people to build basic level and games, and then I will expand from there.

@GLSL Errors
Your shader error is due to a change in the way shaders are organized, the easiest thing to do is just get on the github version.

The master branch is a fully functioning version of the game, that allows some saving. It is still very rough things like jumping and playermovement arent prefect but you can get around the map. Shooting doesnt work actively (so you shoot but it just shoots the particle no activeness in the world. Bots broke and etc, you can do basic editing and adding nodes (the new ents) into the world from various commands, which start mostly with node.. so you should use auto complete to find them. Basically allows you to create script then change the variables of your class in game similar to unity.

@building binaries
There are macro errors which hyper is fixing, so it may be some time before cmake files are made, but vs 2013 is what i build in, so most if not all vs should work, it uses a few c++11 calls but most of them should have work arounds if you are buillding in c++10 <  (this is used in the angelscipt code not in my code).

If you are looking to help with the project I can point you in the direction of things that need done, or you can add your input onto the git hub page. Just open a new issue ticket for any bugs or enhancements you would like to see. I try to check it once a week or so to give feedback and the time table on various fixes.

@bullet libs
It works really straight forward (i thought it was gonna be a bitch) basically just use cmake and build to your favorite compiler then run the BUILD_ALL and should work. I had no problem with it. The angel script has its own vs or cmake so just pick your posin and they both work as well. If not go to there forums the dev is very fast about answering questions (no matter how stupid [great guy]).

@State of dev
So as i mentioned I am puting this on pause till school is out for the summer, I was working on save load system and node Id system. Here is a short list of things that need done before we can move to pre-alpha (in order of importance):

  1. Save/Load/Reset through serializer: This is about 80% done I need to add in @ or handles into the save system, probably not something that you could do right now with out spending 100 hrs learning this part of the code.

  2. Node Id System: If you like binary heaps this is for you. More or less when a node is created give it a random number (its id) then store it into a binary heap (use vector.heap()) this will speed up calls for pulling and putting objects. So simply needed you need a add, retrieve, set, remove. functions. This will basically be the way nodes are linked to each other, or are linked into a world or scene etc. You store the ids so when you make a call to an object you can test to see if the object exist and is valid and is not protected etc :)

  3. Gui - The gui system need a little more work allowing for moving boxes and dragging etc. This should be integrated into the as code so you can reference a class (kinda like css classes) which basically define how the object works, then write the structure in cube code (like html) so you can have a more refined and less complex system.

  4. Out commands to as: set up templates and macros to make adding c++ commands and classes easy. Also write code to allow all Idents (or cube variables) to be added to angelscript.

  5. Redo Edit Mode: Change edit mode with the new gui system to create a more appealing and user friendly system including the new commands we added.

I will sent you a slack invite love to talk to you and get your input


PS: if you didnt recieve an invite code then just reply and ill try it again (or have hyper do it cuz .. .technology :P)

Last edited by chasester (2017-02-04 02:00:45)


#91 2017-02-27 23:35:21


Re: Rival: Cube/tesseract mod

Could you add me to that slack group, I'd love to be a part of this, maybe set up a website? Well, anyway, I'd like to contribute in any way I can.
E-mail: mufeed.ali53@gmail.com

Love your work


#92 2017-02-27 23:58:44


Re: Rival: Cube/tesseract mod

yea also visit the github page and read through stuff as this is where most of the devolopement happens but ill add you right now. (so if you read this and didnt get an invite then just post again and ill have some one else fix it ;p)



Board footer