Oficial Orr Blog

Sign in to follow this  
  • entries
  • comments
  • views

About this blog

From now on, i will track all orr things here

Entries in this blog


The Future, and some questions.

Well, ORR isn't really "Rock Raiders" anymore. Rather, it's a mod on a game built off of a world simulation. Let me explain.

Components of my project:

World Simulation - In conjunction with: Engine.

- A game wraps the two together into a game. Alone, the World Simulation is just a library, and the engine just an engine. This game is called: GNOMAL. Which stands for I don't know what yet. This game is standalone.

- - ORR: A mod, or rather, a campaign/scenario/starting conditions for GNOMAL. That's right. You're in a world simulation, there's a randomly generated world resembling Planet U, and there are your Rock Raiders stuck in orbit. You're either a normal crew member, a castaway/rogue/runaway, an officer, or Chief himself.

Understand? Four components to this project of mine. ORR being the highest level, and the last level. Only possible to complete after the first three are completed.

So. Should I even call this project "Open Rock Raiders" anymore? It's a spiritual successor, featuring much different gameplay, and only taking the basic idea behind Rock Raiders for the mod "ORR". I'm not even working on "ORR" right now, but an "engine" and a "World Simulation", after which I will work on "GNOMAL".

After that, maybe I should just call the mod "Drill Masters" ( *cough cough* ;) )?

Until then, know that ORR-C has changed dramatically over the past few years as I've opened myself up more and more to what I truly want.

Anyway, to recap, I want to know if I should still call this project "Open Rock Raiders", because it's not really about that anymore. At least not for now. And after that, I ask the question, "What place does this project have on RRU?" It's neither about LEGO, and it's not strictly about Rock Raiders.


Looking For A 3D Programmer

Yes, I'm looking for a 3D programmer to help me out in ORR. This whole thing where I do the 3D code just isn't working out.

Here are the requirements/tasks/stuff like that:

0. The language is c++. You must be able to program in c++, and have sufficient programming skills.

1. You must be able to program cross platform. Especially in Linux and Windows.

2. You must be able to program fast, efficient code. ORR is a world simulation, and by nature of that, will require lots of graphics resources. Your task is to make the graphics engine handle this as best as it can so that the game can run on the most computers possible.

3. You can use whatever libraries or engines you want, as long as...

* They are cross platform, such as OpenGL. Yes, this means you can't use directx.

* They are fast and efficient.

* They don't steal the mainloop of the program or anything, which is what opengl + glut or something like that does.

4. You have reasonable amounts of time to work on this. I understand everybody is busy with life, even I am. However, there are people who have almost no time for programming. I'm sorry, but those people are unable to help.

5. ORR will not be using 3D model files. Rather, all 3D models and the like are generated from the 3D data of objects in the world. It's a world simulation, not the conventional game. As for animations, I don't know how that'd go about best. We'll probably be working together at figuring this one out. Not initially, though. ORR has not progressed to that state yet. It's still very early in development.

6. Anything else I may have forgotten, which I will update this with.


New Alpha! (Finally) (April Fools!)

Hehe, this is not a real release. It's was an April Fools joke.

Do take note, however, that the features outlined here are the features planned for the actual alpha release.

Hey guys,

After too much time, I've finally got something out - The Alpha Release! It's not too much, but...It's something!


- 3D! Graphics and world.

- Simple procedurally world generation.

- Simple procedurally generate entities.

Read the file "manual.txt" for usage instructions and controls.

PLEASE report bugs. It helps us (me) get the next alpha out faster.

Second to last, have fun!

Without further ado,

Download link: http://orr.rotw.ca/d...-c-v0.0.4.5.zip



I'm done reprogramming the engine in Vala (all except for the 3D parts. Seeing that I can't test (or even compile) them).

All that remains is gaming break and then yelling at the maintainers to unscrew the packages and then adding in all the 3D code, and then actually programming the game.


I Am Dissapoint, And Very Mad.

So, those damm autoupdates happened. Even when I nuked every last form of autoupdate in existence.

What did they do? They installed a new program or something that proceeded to corrupt all my c++ source files.












Yes, I have backups...But the most recent ones got nuked. The latest code I have, then, is on SVN and Github. FUUUUUUUUUUUUUUUUUUUUUUUUU.

I think I'm gonna take a break for a while. Losing that much work really puts you off from doing anything productive.

In addition, I lost the complete source of a separate project I was working on.

All other C++ code I lost I either don't care about or the surviving backups also happen to be the latest version of the code.

And, since I had completely rewritten ORR from the svn/git code...I think I'mma do it in Vala this time. Only good thing is now I have no excuse to continue using C++.


Where Da Surface At?

The surface is located 6450 kilometer(s) from the center of the planet.

At least that's what ORR told me today.

In other news...Lots of RPing lately. Yes, there are people out there who actually can tolerate my insanity :o



Even though i really want to make ORR in vala, I won't. I've decided not to risk switching languages in the middle of the project, even when quite a bit of the code can be copy and pasted.

Anyway, I screwed around with many different things.

- Networking

- UI

- 2D graphics stuff like optimization, effects, and plain doin' it better.

- 3D.


As the devlog points out, I'm done rewriting the engine. It's on to the worldsim!

I've already gotten the base classes setup.

In addition...

- Template generate world functions. At the moment, it only generates a universe with a planet in it.

- Worldgen DNA. I added that in an hour ago (when I finished programming for the day).

What worldgen DNA does is make a worldsim playable on the average PC. Actually, Worldgen DNA is an incorrect term for it (since this DNA is forever useful even when the world is done and fully genned), but I am yet to come up with a better one. Compare 240 gigabytes for the inner core an Earth sized planet to the current 58 kilobytes of an entire planet.

This worldgen DNA is hierarchical. An existence has its DNA. Specifies how many universes to generate and whatnot. Universe have their DNA. Dictates how its genned, what dimensions it has, etc.

Dimensions have their DNA.

Clusters (A cluster is either a cluster of galaxies or a cluster of clusters. I allowed for it to be a cluster of clusters so that I don't have to explicitly program cluster, super clusters, megaclusters, etc) have theirs.

Galaxies theirs.

Solar systems theirs.

Celestial bodies (Stars, asteroids, etc) theirs.

Sectors (100x100x100 regions) theirs.

Regions (100x100x100) theirs.

Tiles don't get DNA, since they're the basic building block. Yes, more rudimentary than my dream game, but hey, I did that on purpose. Saves me the trouble of further programming "space" and getting into all that complicated stuff that I'm getting into for my dream game.

The magical thing about this DNA is that I only have to make the game initially generate the region your shuttle lands one after embarking from the LMS. The sky will still be full of stars. Galaxies know their composition, so the game is easily able to simulate the light produced. The game knows the entire planet already, due to its DNA, so even though the other regions may not be genned...If you drain an ocean here and it stretches offregion, the game will still simulate physics as if the entire planet were generated and loaded at once and flow in new water and remove it from the other region. Even seismic waves will be able to bounce around the planet allowing you to conduct structural imaging of the planet, since the DNA simulates stuff like that even though the regions are not generated.

This DNA concept is also very useful for creatures and objects.

I don't need to simulate every last atom. The axe knows its composition. It knows that when you strike it against adamantine the force will double back into the weak joint of the metal and the handle and break apart at that point, even though in memory it's one solid object rather than trillions of individual atoms.

That same thing applies to creatures. Chopping off the limb will have the proper bleeding effects because even though the blood vessels aren't explicitly being simulated, the game knows their there and is able to simulate blood flowing through them without actually simulating blood flowing through them. Eventually you'll leak out all your blood and die, if you don't fix that hole. Also, severing nerves will cut off access to the brain to the affected parts. Even though the nervous system, in the code, doesn't actually exist. This DNA still handles it.

Of course, it's still CPU consuming and RAM and storage space consuming, but compare 240 gigs of just the inner core (plus lots of lag) to 58 kilobytes and too many excess frames!

Of course, it'll grow bigger and bigger, but never as big as it would grow if I were actually simulating everything. This is a game. In my scientific simulation? Sure, every last atom is simulated. But in a game that is meant to be playable on more than just supercomputers? Nope.avi.

I doubt that my old desktop would be able to run the game as I'm programming it, which means most of you guys will have trouble running it, but my current computer is able to handle it just fine, and it's the coming generation of the standard household computer. Well, I'd better get to sleep or something. My body's starting to hate on me.


Vala Ore See Plus Plus?

Well then, I've tested vala in windows, and it appears to be much easier to work with than c++ in windows...

Besides that, I have vala as my favorite programming language, and c++ second to that...

That is not to say, however, that I dislike c++ in the slightest. Like I mentioned above, c++ is my second favorite programming language, and vala is first, just barely.

Should I take the time to rewrite ORR in vala?

I'm debating about whether or not I should. Hopefully your opinions will help me decide.


Broken Horizon

So I finally got ORR to a nice stable point where everything was working.

Only to bash it back down into the pits of debugging.

That's right, kids, I broke everything.

...It's actually not as bad as it seems.

I'm working on making pathfinding multithreaded. (Yay less lag!)

Of course, this requires major rewrites of everything, but regardless, there you have it. Fun.


Orr - Preview


There you have it folks. Approaching completion of the next ORR release :)

I was about to release it now, but I realized I forgot to add in the construct teleporter buttons and stuff like that :P

So, yeah...Maybe a release today. Maybe tomorrow. Either case, should be in the near future.


Orr - Progress

It's coming along nicely :)

In addition to the new animations getting programmed, I've fixed some of the flicker. I think that's a great plus!

Oh boy, this update is going to take longer than I wanted, for several reasons.

1. This is the biggest - I barely have time to sit in front of the computer! Remodelling of the house is a time consuming task for all.

2. Much code must be rewritten to accommodate redesign. Actually, most of that said code was rewritten tonight. All I gotta do is debug it and release it (After programming the rest of the animations, of course :) )

Ah yes, little rant here.

You know what game I think has the best graphics? Age of Empires II: The Conquerors.

That's right, 2D goodness.

What game comes in second?

Also 2D :)

As you can see,

me = 2D

you = 3D

me != like 3D programming

you = want me to program 3d for you to play 3d ORR

Somehow this formula doesn't work.


New Computer + Orr Stuff

First off, I got a new computer the sunday RRU went down :)

It is one awesome beast of a machine.

As you can see, I have not been idle. Four releases, and the fifth one is approaching quickly. Maybe even tonight!

So what's happening in 0.0.4.x?

Well, that's quite simple -

1. Adding in the rest of the constructions essential to bases, and bases themselves.

2. Teleportation.

3. Lots of animations.

Telportation is done! The constructions essential to bases are done!

All that remains is the release (which features the new teleportation and all the animations antillies has sprited), then the 0.0.5 release, which will feature bases!


What's Going On?

End of year exams are going on.

What does this mean?

Open Rock Raiders C is on hold until around May 6th.

If you've been following the dev log, you'll see I forgot to announce that :P

Oh well. Now you know.

Yes, it's been on hold for several weeks now.


Status Report: February 25Th 2011

Progress resumed a while ago in ORR-C; I now have another computer capable of programming!

Current priorities: Bug fixes!


Secret project!

I hope to get some visible progress done very soon.

Oh, and if any of you want to fiddle with pathfinding, please do! It's not as good as it should be...Quite buggy, and slow on large maps.


Status Report

Quite a bit of progress has been made since the last blog entry!

When was the last entry anyway? Way back in April?

Well, since then, there's been an alpha release!

You can get ORR 0.0.2.x here:

Windows Users: Make sure to install the msvc 2010 redist if it doesn't work for you.

You can go here to watch videos featuring ORR's latest progress: http://www.youtube.com/view_play_list?p=290A57B34D6807A2

Additionally, don't forget to check out ORR's website from time to time: http://orr.rotw.ca/

More specifically, the devlog: http://orr.rotw.ca/dev.php (I update this whenever I can)

Last of all, I bring sad news; ORR-C's development is on hold.

Why, you ask? I'll tell you why:

My programming machine is on its deathbed, and I cannot endure the pain of it barfing all over me when I try to program. Or use it at all, for that matter.

So, until all the parts for my new computer have been bought, ORR-C is on hold.


Back on "schedule"

What I mean to say is, I am now able to work on ORR again since the errors have been resolved :)

What I need to do first and foremost is to organize the ORR forum and make a development plan.

So, expect to see some updates in the following months.


One step closer to completing the engine

I just finished adding in the base building class.

What does this mean? Just create a python (or lua) script that adds in a new building very easily.

It's actually good for not just modders, but me too, because I don't have to recompile at every change now.

Still can't get gcc to work, and msvc still gives errors.


*Some* progress

Yes, I have reduced the errors a lot.

I finally put together a makefile for windows too...

This is good, since it makes compiling easier.

Otherwise, I think I'll also embed lua...


Frustration with python.

I know that python is correctly embedded in ORR, but...I can't seem to include the libraries correctly.

So, ORR hasn't compiled, at all, for a month already.

This is a major hindrance for the progress of the project.

I believe it is my compiler, since the only thing that fails is the linker.

The code is just fine.

Anyway, I have yet to install and try gcc...I don't want to use it though :(

I wish they made an IDE for it...I should check to see if they did.


And I finally have an update for ORR

I just finished adding in some new stuff for ORR:

Base classes.

Actually, I only added the base unit class right now.

I will be adding the base building class next, and hopefully, either me or another Dev will add

triangular mapping to the game so that we can continue.

I am not currently able to fully debug the class, since, as you may have seen, I am getting a weird runtime error.

I would like some suggestions on good compilers and/or IDEs for windows.

know of any?



So, seems that I somehow made people think that I gave up on ORR.

Quite on the contrary, I have just been taking a few weeks break from programming.

Tonight, I will be working on the ORR design Docs I started and never finished.

With these design docs, I hope that progress in ORR will be greatly boosted as an outline of everything that needs to be done for the whole project will exist :D

What is my current progress?

Well, I cover a small part of what the player is greeted by when he enters the game.

I cover world generation (still writing it right now).

And I hope to finish loading a world from a map file. Tonight that is.

Afterwards, I will release part of the docs as is so that the other devs can take a look at them and start to work on ORR.


Today...In ORR

I worked only on trying to get the object to draw itself from itself today...

For some reason, it doesn't recognize the screen function.

Jetter tried to help em to get it to work, but it refused to <_<

Anonymouse also suggested I play around with references, almost made it work like that.


Some small progress

I finished moving enough stuff into my new OS to continue working on ORR.

I removed the python code from being used for now, because it needs to be worked on a lot.

If some one can get it to load a python script without using argc and argv junk.

Anyway, I did some work on the cleanup code, and fixed a little oversight of mine.

Will organize the way objects work, and hopefully make it all the update code for objects work in the object.


The third ORR rewrite (>.<)

Well, I have done a lot of work in ORR these past few days.

A: Created a real engine that has quiet a nice structure.

B: Fixed all the random errors I received.

C: Tested the engine’s capabilities for countless hours.

Anyway, here is a screenshot demonstrating a few of the basic features.


What do I have done with the engine/game?


-Image loading

-A world camera

-Initializing the engine

-Loading from cfg files (I want to improve the structure of this)

-Buttons (Yet to start testing)

-FPS stuff

-Cleanup code

-The object you will start a default level with: The Tool shed.

What do I want to do before committing?

-Improve the cfg file stuff

-See if I can make the game more Object Oriented (It is already very OO, but I can’t get the toolshed to call a function that draws itself.)

-Set up fonts

-Fully test all the aspects of the engine done so far

I hope to be able to commit the new code tomorrow. I don't want anonymouse messing it up yet xD (jk, no offense)

Oh, BTW mouse, I didn't have a chance to get more than a few characters done in my blender animation tutorial.


Check out the new ini parser

Yes, after a lot of hard work, I have finally added the ini parser into ORR.

It actually reads a .cfg file, but it doesn't matter.

Anyway, here's how it works currently:

;This is a comment

;Here's an example value


;You see, the SCREEN_WIDTH is the value name, and the = means that the actual value is next.

;I belive, but haven't tried yet, that it can also be done as below


;Please note that anything on the same line after the = does not count as a comment even if you have a ;

;see below

SCREEN_WIDTH = 1600 ;this is not a comment

;Now, the parser doesn't support sections, but there is an easy fix to this, example below

;The rr's speed for unupgraded


;I would prefer this to be before the pilot's stats though

;---------------------PILOT STATS----------------------


;You get it? It still has sections, but only we see those sections, not the program.

If you don't like the way it works.


Meh, forgot to say this.

Also made orr run fullscreen.

Sign in to follow this