Tuesday, 28 January 2014

Meeting Day and Rift Video


Half day meeting, half day recompiling my source code for VS2012 only (no mixing in VS2010 distributables) as I am moving to a new PC. Probably not the best time to do this, two days before a BETA launch, which is why I tagged it onto Tuesday to see what the implications are.

I got snagged by a video camera before the meeting was over, so you can see my wondering within an Oculus Rift world.

As previously blogged, I have more plans for Rift features but these can be delegated outward which frees me to core coding (which is where you will want me right now).

Turns out that in moving to the latest redistributables (which means much more solid and predictable behavior from the product), introduced a few 'interesting' differences. Enough to convince me to postpone the VS2012 switch until after I come back from my little holiday later in Feb.

The good news is that I structured the upgrade so that the main source code is still fully shared between old and new PC's so I can bounce back to the old one starting Wednesday AM. This is a great bit of redundancy too and acts as a natural back-up, not only of the off-site files but the whole dev hardware on which the code is worked and compiled :)


Walked over 3 miles today, and it also looks like I can grab an early night, ready for an early start Wednesday.  The plan will be to address the seemingly random drop out crashes caused by too much memory being used. The solution in my mind is to attempt to reserve a large chunk of memory, and if it fails, detect this and gracefully restart the main executable and restore to the previous point. It's a bit hacky, but it solves the issue of losing your work with random crashes and will allow you to stay in a single editing/testing session for hours at a time which should be a welcome bonus for this next BETA.


  1. Not having to restart FPSC every time I add a new detail sounds like heaven lol. Also having maps that work one day and never run again is also an issue. Great to hear this will hopefully be fixed! I am hoping old maps may work again ;)
    I'm not sure if you saw my questions about scripting in your blog a few days ago, but to put it simply. What variables are we able to track and use at the moment? Say I wanted to pick up or activate object a so it would cause object b to spawn? Is that possible at the moment? If not fair enough, but I am green with Lua and have so far managed to make a couple of functions by reading your example door script, but am unsure how I could activate or use another entity. At the moment all I have is entity(e), which is obviously the object being interacted with. I'm unsure if I'm missing something, or if it's just not possible to activate a different object. Being new to scripting I am unsure if it's just me not thinking of a solution in Lua, or just not enough data from FPSC's Lua implementation yet.
    Great work on Reloaded so far! I'm waiting with extreme impatience for the next update ;)

  2. Hopefully tearing will be fixed and entities adding will be fixed as for some reason you only get so much. stability is iffy. I can't make a map atm without crashes. All these spoil it. Hopefully they are being sorted

  3. Lee, I'm sure you already know this is best...but to make sure you think about it:

    When you come up with a new idea to implement in Reloaded, think it through ALL THE WAY. Think carefully about what features users are likely to ask for. Plan before starting how you would best implement these features. Then begin working on them, doing it the right way FROM THE START. No stop-gaps, no half-finished ideas. Look to other professional programs that are similar or have similar features and take your cue from them (seriously, do this! You've looked at heaps of modern games but so far you've not done research into modern level editing techniques). And finally, and I want to say this carefully, what you find to be beyond expectations others may expect as a minimum (for example: 1st person editing, free-form terrain modification, almost nothing hardcoded, shadows on everything, dynamic gameplay, flexible in-game graphics options for the user, and so on and so forth).

    For example, when you decided you would begin work on the terrain module, you should have stopped and thought about it. You should have realised instantly that we would want a system whereby we could create a new terrain with a user-defined size (a lot of the terrain's performance issues would be solved by simply letting us make smaller worlds at will - we said we wanted bigger worlds from X9, right? Yeah, but we also want to work our way up to that and right now we're at the Experiment With Small Worlds stage). We would need a terrain system with a large or unlimited palette of textures (you may have thought we'd be happy with 2 textures, hardcoded in sets - why would we when every other terrain engine out there lets you have at least 8 fully changeable textures?).

    Sorry for the rant. Just had to say that. But overall, you've done and excellent job so far, particularly for just one guy :D

    1. This is too true. It's been a year now and the engine, to me, still feels like it's in unusable tatters. The scattered approach to features is somewhat frustrating to watch because it feels like we have half-hearted parts of everything and nothing that's truly great and breath taking thus the engine looks highly limited and not something I would spend money as a unknowing customer on.

  4. I personally think Lee's approach to everything is done in a perfect fashion.

  5. If you look at the number of active users at the Reloaded forums at any one time at any time, the numbers online is less than at any time I can ever remember for any game engine that's not gone out of existence and its lower now than previously has been the case even for Reloaded.

    Does not seem to suggest users or potential users or visitors have that much interest to me despite its said potential at this stage.

    Hopefully either the engine as is or as it progresses will make some impact on those numbers and we will see more users who are to be seen actively showing interest and using the engine.

    Whether or not that's best achieved through adding attractive features, improving whats currently available or ongoing as more things are added or when anyone is actually using it gets to make some real playable levels or games with it of a worthwhile quality to display to the wide world is perhaps something of guesswork.

    It may be a good idea though difficult to actually ask some people why they are not very active at the forums I don't know. Or perhaps it does not matter at all?

    Personally I would agree with Hunkar though I also think TGC have done a good job to date as far as it goes and I am not in a position to adjudge otherwise not being privy to their thinking, circumstances and those of the commercial realities they have to deal with on a daily basis. Clearly as a business they have to do what they think is best in the first instance.

    Some things like the very poor quality and poorly implemented scrolling Sky, reducing performance levels for some at least and so on certainly do little or nothing instill confidence.

    If you add something then its best to do it right and finish it completely or don't add it in my opinion but I can understand TGC thinking that they perhaps feel they needed to add some things to make Reloaded appear to be a more rounded product currently and quickly for various reasons.

    Not sure that's the best idea myself rather than stick with solid development of existing or core features but its not my call.

    Hunkars "half-hearted parts of everything and nothing " seems to be the order and the way of things once again and I don't think that has ever proved to be very successful in the past with anything much, game engines or not. It usually does not sustain the reputation of a product long term and eventually catches up with manufacturers of all kinds of things. Sometimes it does not and they may be lucky or clever enough to sustain it. In other instances not so is the case.

    Ah well. Waiting for the next Beta and have a look so I can see if I can run it at least and have a quick if I have not lost any more fps hopefully.

    As I don't have any enemies at all in a level I wont have any concern for AI but I can walk around if I have enough fps at least. At least I don't have to walk outside and brave the weather in Wales like Lee does


  6. I think the software is going in the wrong direction at the moment . Occulus rift is cool dont get me wrong but its not a must for the engine . I feel like lees time should have been spent on something more necessary than something like rift . just my thoughts.

    1. I think its going in a very excited direction to be honest. I didnt even consider asking about rift support but as soon as I heard it got implemented i passed that news around and people who are just game players, are excited to see what I come up with. since they happen to own the occulus rift.

  7. A very clever non-Lee entity created the Oculus Rift support, I just added it in and then played around inside the world for a bit. Rest assured my chief concern is the foundation stuff, and until we're solid, I will always be working on core features like general stability, core features and of course, performance!

  8. For me personally, I think terrain has side tracked Reloaded into this kind of huge open world, make anything you want creator which is not what I am looking for.

    Its actually really important you are clear about your principles for what a product is supposed to be and deliver them. If we don't get the basics of a good FPS sorted out first, we might aswell drop that part of the name completely.

    Performance, Physics, AI and Controls are all core elements which need to be improved at the moment yet we are spending months just on terrain with a couple of other partially implemented features which isn't helping to build confidence.

    Graphics have been vastly improved over FPSC classic with proper dynamic lighting and shadows with post processing. Also I think LUA was a good choice and that will really improve gameplay as things move forward on the positive side.

    I seriously urge Lee to add some functionality to specify terrain world size for the next BETA so we don't end up talking about performance for the rest of eternity. This is great for the artists and people that just want to sculpt a big terrain and take screenshots but its not much FUN.

    I'm sure we would see a lot more interesting BETA projects if we focused a bit more on fundamentals and stopped getting so caught up on making a massive environment run at 60 frames per second. The majority of AAA games are not even reaching for that so I think we are wasting a lot of time with unrealistic goals at the moment.

    1. the frame rate is the biggest issue above all other issues with reloaded.

  9. We are just at the beginning, give em some rest

    Do you guys know what Lee and Co. got cooking for us?
    No i dont think so, am sure there is alot going on behind the curtain, noone is going to drop his pokerface only because some ppl are upset with how things are going on.

    Lee just stated that he didnt created the rift module for reloaded, there are more ppl working on reloaded that we are aware of.

    It is true there is alot to be improved but am sure most of that stuff is seen as easy to do for Lee.

    Lets accept that we are still in beta and that the features will rise aswell, we might get more often dissapointed because of fps drops or other stuff but thats the way it is and reloaded is far from being done.

    Regarding the water plane, it is just disturbing, there should be a optional water block along with a option to turn off water planes.

    Anyways am sure there will be much more revealed in the next months.
    Reloaded was made to be a modular engine with modules as plugins.
    Those modules can be created by others and implemented by Lee in the main engine.
    As you can see by the example of the rift support.

    1. Yes I too would like the option to remove the water plane for maps where I do not need it. I'm so thankful that the option to actually flatten the terrain plane is added.

  10. Thanks for the defense ;) I have put in place a system whereby third party coders can work on things like Rift, Constuction Kit, Character Maker, e.t.c. I have always and for the foreseeable, always will be, on core stuff. For those who don't want terrain, you can set superflatterrain=1 in the SETUP.INI and the terrain cost 'disappears' :) Sorry if this project is taking longer than some of you would have hoped. I am playing a very long strategy with this engine and you will not regret sticking around for what happens next!

    1. Nah am not defending you,
      i just admire your endurance and well i knew that you have setup reloaded as modular engine - for a reason and that reason is well described in your comment.

      And regarding terrain, you will come to the point where you will have realize that this is not a option not if you plan on doing what you are actually planing with reloaded but hey as its a module ;)
      lets not worry to much about the terrain, so far you delivered what you said,
      in time or not, sooner or later the things are gonna be there.

      Thanks for the work @ Lee and the hidden devs
      (I hope you are giving your in the attic living Lee`s lil helpers
      something to eat and from time to time some sunlight)

  11. There is no confidence issues with Lee. He is an Intel award winning developer and they don't just hand those out to anyone.

    We just need to ensure the right focus goes into the right areas with Reloaded and I just felt there is not enough balance at the moment with too much focus on terrain.

    Am glad to hear some of the other stuff can be farmed out to other developers and even better that Lee will be implementing them into the core engine to excercise some quality control.

    I can actually see Reloaded having a lot of potential. As I said the graphics are already great and LUA implementation was a good choice of scripting language.

    I would prefer to see Reloaded aim for something realistic and do a really good job than aim for something unrealistic and be perceived as not meeting its own goals.