More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  Megabits and MegabytesPhotosProfileFriendsMore Tools Explore the Spaces community

Megabits and Megabytes

Simulation, Software Development, Gaming
February 11

Trainz

I've been playing a bit with Trainz recently, I installed it because I figured Cameron might get more out of it given the opening doors, passengers and very simple DCC-style controls. I was right, he loves it. I bought him the Modula City add-on for it and that was worn out within a few days but since then he's tried all sorts of other things and has gone back to MSTS several times too - each one has something that he looks for, though in most cases it's the stock I think.
Trainz
Trams in Modula City
Intercity 125 from Railwaves
Class 357 C2C from Railwaves (he rides this when we go to Lakeside Thurrock in real life)
Train Sim
District Underground stock (wibbly windows...)
Eurostar (Christrains, on Dorset Coast)
One-fast train (he rides this to go to his nanny and grand-dads, class 90 + dvt + mk3 in "One" livery)
Wibbly windows, as it turns out (took me a while to decipher), is when you're in the passenger view at one end of the carriage looking directly through the window in to the other carriage, as the train moves along and around corners you can see the windows "wibbling"...
I think if someone did Underground Ernie for a train sim i'd never see my computer ever again.
Anyway, I digress.
Since it was there for him I thought i'd see what was up in the world of Trainz these days, I've bought some payware and downloaded plenty of the freeware from the Auran Download Station. I have to say, there's a good selection of it out there to be had now, some really nice routes (though sadly most of the good ones are purely fictional) and some stunning stock like a Rebuilt Merchant Navy, and a Class 31 that i'm rather taken with.
It does highlight though, that between where things stand with MSTS now (particularly with MSTSbin on the scene) and Trainz, that the bar for a new entrant is actually relatively high, sure there's the whole graphics thing that any half decent games developer these days could outshine with one hand tied behind their back (let's face it, MSTS is pretty old technology, and there's still that something wrong with Trainz that makes it look, well, wrong) but I fear that the one place developers might come a cropper is in the simulation part, it's what happened with Trainz.
Time will tell, but there are some seriously advanced features in Trainz and a sensible implementation of them (the Trainz guys were very innovative technically but their UI skills, well, sucked) in a new simulator would be very cool.

Where I think Trainz got it wrong was the lack of interest/focus on the simple stuff - the basic driving experience for example, as a driver I shouldn't have to concern myself with changing points while i'm blasting along at 90mph, I want the computer to do all that for me.  This was one area that MSTS really got right.

In Trainz you can hop around between items of stock, which is very neat and can be very creatively used in a complex scenario / activity, indeed I noticed that the same idea is indeed incorporated in to the new FSX scripting system and is used in at least one of the included missions that i've done so far (Tokyo Executive Transport) where you change from a Bell chopper to a Learjet when you get to Narita airport.

However, while MSTS got the basics right, what they got wrong was that they didn't go any further! Trainz, ironically went completely all-out - totally confused half their users but actually provided a tool of significant power.  By creating their own object oriented programming language (stroke of genius using OO rather than trying to make it all fit in a traditional system IMHO) Trainz enabled significant access to just about all areas of Trainz to software developers... sadly not many railway enthusiasts are also software developers...  I managed to make that thing get up and do song and dances all over the place, it was very impressive.  I was able to create a primitive-backed version of the collection classes that are present in Java and C# such as ArrayList, Vector, Iterator, HashMap and so forth - and then this enabled some quite neat high level stuff to be created relatively easily.  One of the things I experimented with was an automated signalbox to look after the "approach control" for a large station.  Each entry route to a station was marked with a trigger and a signal somewhere strategic.  When any train hit the trigger the code would leap in to action - using an internal route database from each trigger to each allowable set of platforms (not all entry paths can get to all platforms of course) it would first find an available platform, lock the platform and then set the route for the train to come in.  If the route couldn't be set (something else has locked a point) then it would release the platform and hold the train on a red until it could find a way to make it all happen a few seconds/minutes later, all automatically.  It worked a treat, a superb degree of randomisation based on the fact that you came in early or late, you may get a different platform - rather than being held up in front of a largely empty station just because there's a train in the one you were originally mapped to.

Later with TRS2004 Auran came up with their Sessions system, by using a series of icons to represent actions you could set up command lists for the train to follow... so, go here, unload, load, go there, repeat - etc.  This worked quite nicely, it had a few issues and largely it only works for small scripts, it gets extremely complex to manage once you're on your third screens width of commands, and even more so when you're trying to make different services interact for visual effect etc.  That said, if you were willing to persevere, there was a lot possible.  In TRS2006 Auran really brought it home for the sessions capability, while it had all the same disadvantages, they added a whole lot of new actions that you could assign and this really blossomed the power of what was capable.  As an example, I spent a few days creating a series of command lists in a session that resulted in the following:

You're driving a 4F just south of Hawes Junction, heading for the Settle and Carlisle mainline.  You start a handful of train lengths away from Hawes so you cruise in and stop in the platform.  Your train is 5 Vent vans followed by 5 empty coal wagons followed by a brake.  As you come to a halt at Hawes, a 4F sitting in the sidings pipes up and runs to the back of the yard and out behind you, gently couples up and brings the brake + 5 empty coal wagons to one of the empty sidings in the yard.  Uncoupling the brake it takes the brake over to five full coal wagons and then brings those back to your train.  You now have 5 vent, 5 full coal and your same brake van on the back.  After uncoupling it blows it's whistle to give you the all clear and then heads back to its engine shed.  You now proceed up the branch to the mainline.  Once you reach the main line you pass another engine shed with another 4F in it (limited appropriate stock :) ).  A little way up the main line you are signalled off to the loop so you come to a halt once on the loop completely.  An express passenger blasts past you, and then the point behind you changes and that 4F from the station behind you comes trundling up and buffers up to you.  You now run with your banker up to the next loop, again you're signalled in to the loop but this time you don't stop, you've got a green, you slow down to 15mph and as soon as you're in the loop the banker slows to a stop leaving you to go on your own.

It was fantastic to drive, the sequence with the wagon shunting at the beginning is just sitting there watching the shunting all happen under AI control for about 20-25 minutes, there were some other AI trains coming down the branch while you were waiting too.

This degree of interactivity is, in my opinion, essential.  It makes you feel like you're truly a part of a bigger busy railway rather than - as things currently are with MSTS - a lone driver, even if there are other AI services, the only time that you interact with them is when the activity writer has taken the trouble to cause them to hold you up and give you some yellows and reds... and by far, those are the activities that people will keep coming back to.

The above Trainz scenario was monstrous to put together, no way would your average person be able to piece together a hundred or so actions between the various trains and get it working - it takes someone that already thinks like a developer (IMHO) to do it, even though it's in a pretty UI.  I might have done the above, but it was after lots of cussing and giving up three or four times.

What's needed is a way to achieve this level of interactivity and power but in a way that everyone can do it.  The vast proliferation of activities for MSTS is, in my opinion, one of the core reasons for its success - there are thousands and thousands of them just for UK routes, let alone the rest world wide.  Conversely there are only a handful, maybe low hundreds - if that, TOTAL, of sessions for Trainz, and I think that's one of the reasons that novices and non-techies just might well not get in to the driving side of Trainz.

Jeez I can waffle.



Matt.

January 23

The wonderful thing about standards...

... is that there are so many to choose from... well, in the case of DCC (Digital Command Control) for Model Railways there is really only one, the "official" standard as described by the NMRA in the US.  DCC has been around for many years - probably something like 15 or more, so you'd think it was pretty established by now.  The fact is that things haven't progressed that far, with equipment very expensive and quite unintuitive to use it's really not gone beyond those who were both computer-literate and model railway fans, even though it doesn't require a computer necessarily the level of complexity to understand configuration variables, registers and so forth puts most people off without a second glance.

So here we are, coming in to 2007 and here in the UK we've got both Hornby and Bachmann; who represent the train set market almost entirely between them, releasing DCC systems.  Prices are coming down all over the place, you can get decoders for as little as about £8 (approx $16) - which is great compared to the £30 decoder cost from when DCC really started over here.

It sounds like everything is great, we finally have a digital system that's standards compliant and everything is good...

Sadly, it isn't.  It's far from that, and getting further with each new system that's launched.

Why? Because the manufacturers are simply not putting their equipment forward to the NMRA for conformance testing! They run informal tests with one or two other vendors equipment (Hornby say they tested their set against the Lenz equipment for example), but to use an analogy, just because I can find a way to talk to a French person does not mean that I can talk French.

What's happening is that little incompatibilities sneak in and you get odd occurences of particular combinations that don't work or exhibit odd behaviour.  The Gaugemaster Prodigy (which is just a rebadged MRC device) is one example - it can't talk to the Lenz Silver Mini decoder at all, and has problems talking to the Hornby decoder.  In the case of the Hornby decoder they are doing an update to the controller to add support for it, but why does a controller have to be upgraded to support a particular vendors decoder? That's what the DCC standard is all about!  Call me a sensationalist, but in my view this is rapidly turning in to a situation where we have lots of vendor specific equipment that does not guarantee to work with anyone elses and might, or might blow it up (I hear rumours the Hornby Select sometimes peaks out at extreme voltages outside the official standards acceptable ranges that might well destroy some decoders!), or might not work, or might not work quite properly, if you want to be sure it works then you have to stick with one vendor... but to me, that wipes out one of the major reasons for going to a DCC system and will put in serious jeapardy how well it gets adopted in the UK.

A little background...

Hornby already did Digital many years ago with a system called Zero-1.  It worked great but had lots of limitations, the biggest was that it was Hornby proprietary.  Airfix had a similar system as did one or two others - but none of them made any efforts to communicate with any of the others.  The systems all died a death because people didn't want to get locked in, or they bought the equipment and it got outdated, the only way forward was to simply go back to the old way of doing things.

While we were at the Leamington and Warwick show, the single biggest question asked of us was : "Is this another Zero-1?" or questions alluding to the same thing.  Of course with the NMRA conformance warrants and associated processes the idea is that no, it very much isn't, it's all compatible between vendors and "its all good"...

... but take a look at the NMRA Conformance Warrants list and see just how few pieces of equipment are on it, particularly from the UK.  That's right, Hornby and ZTC don't figure at all.  Lenz? Well, they make a good showing but their Compact controller is nowhere to be found.  Bachmann US are great, very pro-active and presumably have an advocate of the process in their organisation; but Bachmann UK are much like any other UK organisation.  Even more strange, while I was checking the documentation for a Bachmann 36-553 decoder (which does not figure in the conformance warrant list by that number at least) is displaying both the NMRA Conformance 'football' logo and the NMRA DCC logo - which is meant to imply it is NMRA DCC Conformant... so what's the truth? Are the logos being used incorrectly? Is this perhaps a rebadged alternative decoder?  The issue i'd have there is that it's a 3 function decoder that uses short addressing - the manufacturer ID is that of ESU, but the only ESU decoders listed as warranted are the LokPilot's - which are four function long addressing decoders.

It's a right old mess, and it needs pro-active action to sort it out before it destroys DCC in the UK.

January 22

Progress on Saturn

The Saturn platform is progressing well.  If you don't already know, Saturn is the name of the platform that's being developed to power the new versions of UKTrainSim, UKFlightSim, UKTruckSim and UKShipSim.  There's a whole new professionally designed look and feel to the sites, and the Saturn platform architecture is revolutionary compared to the current rubbish - hence the name, it runs rings around what we have now... I know, my sense of humour needs work.

As at this moment much of the download library support is there now, aside from the ability to actually download or upload something, but I don't let myself get hung up on trivialities :)  Getting the dynamic data system working was good, you can now have unique attributes on each different kind of file, so a Flight Sim mission can describe its difficulty, the aircraft you'll be flying and how long it is, a Train Sim route can describe it's period, the length, whether it's express or local and so forth - rather than trying to squeeze it all in a "one classification fits all" system the way that UKTrainSim currently works.

I've got the navigation of the new folder system working too, again, where UKTrainSim currently has a rigidly fixed two-folder system (file type and operating company) the new one can go as many levels deep as you like and the same files can be in multiple folders so that you can find them by various paths.

The parts of the site for trivialities such as Editorials, Articles and Reviews are done, the news system (at least reading) is done and the front page is essentially finished - and that's the most complex page of the lot since it draws on just about all the sub systems in the new architecture.

One of the key goals of the new system is to improve scalability and reliability, the current system isn't scaling so great - it's running on pretty big iron to perform at the moment where the new system should scream on the same platform.  Similarly it's just not very reliable, all things considered, with Apache or PHP (99% of the time PHP) exploding and causing the server to have to restart it's just not very good.  I'll be glad when PHP can be chucked in the bin, where it belongs, personally. 

For those interested in technobabble, the new platform is based on Java 5 Standard Edition, but also calls on some J2EE facilities such as JSP.  It utilises Struts 1.3 as its application framework (Struts 2 is not released yet) with Tiles to enable componentisation of the pages themselves (which is outstanding!).  It makes use of Hibernate and Hibernate Annotations in order to access the database, which improved development time considerably, I spent hours and hours writing all the business object model for the current site in the PHP code, and it was done and tested in a couple of hours (including learning Hibernate itself) with the new system.  I'm also making use of a number of caching algorithms to optimise access to the database, this should make it a lot more performant as long as I can get the strategies balanced as far as reading/writing are concerned - ideally at some point the system should scale on to multiple front end servers, it's currently a single server for front end and a single server for all database.

There is also a totally new database design for the new platform, there were a number of obviously brain dead design factors in the current version that UKTrainSim operates, though they haven't come to light until the system hits considerable load it does highlight the need to design a system with high load right from the outset... then again, to be fair to myself, I had never anticipated the system being quite this busy!

There's still a ton of work to be done to get the system ready to launch, but the jobs are being whittled away gradually and I feel that it's definitely on the downward slope now (finally).

A lot of the functionality that I had intended / hoped to put in to the new version from the outset won't be there, but it will certainly be a number of steps beyond what we have now and on a platform I am happy to continue adding to over time.  Part of the challenge will be seeing how people get on with the new approach to things, hopefully they will appreciate the extra flexibility; but flexibility is always on the other side of the see-saw with usability, so that's going to be a challenge to balance - hence, get the system online as soon as it's capable and then look to get user feedback and enhance or alter the system accordingly.

Later I'm aiming to build a "web services" interface to the site so that other 3rd party tools such as Route Riter, Train Store etc have the option of integrating directly to the site and in essence becoming "clients" for people to use, automatically downloading missing files and so forth.  Depending on how things go with new simulators (Kuju and Microsoft's new ones) there's also a desire to provide some automatic installation and content management tools as well, but we'll have to see - that's a fair way down the tracks and we need to take this one tie at a time :)

Matt.

Matt.

What a weekend...

Wow, that was a heck of a weekend.
 
Friday evening i'm driving up to Warwick for the Leamington and Warwick Model Railway exhibition and my boss from my old (current, but not for long) company rings so I pull over to a service station and we chat for a half hour or so.   I'm just about to head out when the phone rings again, Mike Hambly (bluearrow) is on the phone absolutely bubbling over and when I can get him to stop giggling and make sense for a minute he tells me that Microsoft just announced a new Train Simulator project - fantastic news!! I proceed to join Mike in giggling and not making sense for a while, cheering :)  We hang up, and the phone rings again a few minutes later - Ken Austin from Europeanbahn on the phone telling me the same thing, equally excited.
 
That evening it was out with the laptop in the hotel room and get hooked up with some WiFi action.  I created a new forum for the discussions of the sim to get settled in to and dropped in a new policy for the mods of making sure that we didn't get KRS vs MSTSX flamewars starting up, and to move any MSTSX threads from the KRS forum in to the new one created for it.  Very quickly the forum starts filling up, there are hundreds of posts in it now, quite amazing.
 
With the show starting Saturday morning it was a great time to find out and all through the show we were letting people know about the announcement and passing on the official Train Simulator site URL to find out more about it (at least what little has been officially said anyway :) ), everyone was very excited.
 
The show was very busy, apparently last year numbers were low; around 1400 visitors, this year they were just around the 2000 mark so the club was delighted.
 
The turn-out from UKTS members was excellent as usual with a great deal of people helping out driving the simulator on the three screens, particularly helpful as this was the first show that Dad and I had our other stand demonstrating Digital Command Control for Model Railways.  Everyone did a fantastic job with a great selection of routes being demonstrated and a lot of people getting answers to their questions - and the odd (!) freebie CD being handed out.
 
Everyone's very much looking forward to hearing more about the new simulator as it develops and we're looking forward to spreading the word even more at the two of the big exhibitions we do in the year that both come up in February - Brighton and Glasgow, both of which have around ten times the attendance of the Leamington show.
 
Just at closing time on Sunday I popped over to one of the stands and got a great deal on a Bachmann "Underground Ernie" train set for my lad (3yr old), he was absolutely blown away when he saw the box this evening, I think he stretched his face with all the smiling :)
 
Matt.
 
January 21

Long time no update

Since I wrote last...
 
Got that elusive Xbox 360 ages ago now, dear wifey bought one for me as a surprise, unfortunately for her she tried to "sneak" it up the stairs while I was looking and that big "Game" bag just didn't seem to be something I should say nothing about... Have to say, it's the best thing since sliced bread!  Burnout 4 came out a while back and i've been playing that one quite a bit, though more recently i've played Just Cause to death and Saints Row right after it, both outstanding games though I think for all the pretty and technical superbness of Just Cause, the failure of quality control (i.e. it has lots of bugs) lets it down... mean while where Just Cause also got quite repetitive, Saints Row has been a complete blast from start to finish.
 
I've been keeping one eye on the new generation of consoles - PS3, 360 and the Wii, and I have to say the only one that really lets things down (for me anyway) is the PS3.  I like to see real innovation, pushing the boundaries, improving or changing the way you do or think about things for the better.  The 360's biggest contribution has to be the total integration with Xbox Live, something that was great already with the original Xbox but has been made ten times better with the new version on the 360.  I can download demos and preview videos of games - and indeed I will not now buy a game unless i've tried the demo first.  I can get trailers for movies too plus all sorts of other things not necessarily related to gaming or the 360.  Initially the 360 downloading was done one file at a time and you couldn't do anything else, which always struck me as being, well, dumb; but it didn't take long before a download manager type facility was added, now I can download those 1gb demos in the background, queued up, while I get back to kicking some behind... then when i've finished being fed my own behind repeatedly, I can go play some demos while my wounds heal :)
 
Additionally the 360 integrates with Windows XP and MCE so that it can become a set-top-box of sorts, streaming music and movies to your television.  The box has really begun the whole integration process, it's by no means complete, the next gen of consoles will undoubtedly take it a lot further, but for me the 360 is a big step in the right direction already. 
 
Another aspect of the 360 that really makes me happy is the wireless controllers, it's so good, the 360 sits here on my desk right next to my PC and I can just pick the controller up and go, no wires to untangle.  Batteries? No problem - they seem to last for ages (perhaps i'm just not using it enough?) and now that i've got the Quick Charge Kit with a couple of rechargeable batteries I am never out for the count, as sooon as the circle starts flashing at me I just whip the battery out and replace it with one from the charger and we're back in business.
 
Finally, the other aspect that I think is a big innovation in at least approach and thought, is the way that independent developers can now produce their own Xbox 360 games, including testing them on the 360 itself, using XNA Game Studio Express.  Free to download and use, with a small fee to get access to running the games on your own 360 - suddenly those five and six figure developer kits that were required are no longer an issue, the indie dev can get something prototyped and shown to publishers or other team members quickly and then perhaps use that to kick start some serious funding for the real thrust - either that, or they can simply look to stay small and release 'Arcade' style releases.  Whatever the desired approach, XNA Game Studio can only be a good thing for everyone.
 
The console itself doesn't really innovate, the hardware is just "bigger and better" than the previous machine and that's a given baseline that all next gen consoles must achieve.  For me though, the key is in what you do above and beyond "bigger and better" and Microsoft have done a 'GoodThing(TM)".
 
The Nintendo Wii also gets my respect, the Remove and Nunchuck controllers will, I think, revolutionise how we view gaming.  Moving to a world with 'gestures' (other than the traditional finger-based ones!) for gaming is a natural progression and makes games so much more attractive to those who might not conventionally consider it.  Hardware-wise, the Wii is a step backwards - it's got by far the slowest CPU and most other categories it's inferior in - but then Nintendo games rarely require masses of CPU and they generally don't bill the console on the kind of graphical masterpieces that the Xbox and Playstation get pushed to achieve.  Nintendo is about fun and they always seem to achieve it.  My wife has a DS-Lite and I have been very impressed with it; hand writing recognition, speech recognition, built-in wifi with easy networking and much more - really good, with really innovative games that take advantage of these capabilities.   You can even link the DS and the Wii together - now that seems to me to be smart thinking.
 
Sony, meanwhile, seem to have no real innovations.  Their console is "bigger and better" than the PS2, it has a Blu-ray drive (360 can have a HD-DVD), the only other thing is the controller has a tilt sensor in it - sort of like a poor-man's Wii Remote... except you aren't a poor man if you can afford the PS3, it's hideously expensive... perhaps that is their innovation, trying to raise the price of consoles even further.  I fully admit to knowing only a little about the PS3 but then I've not read in to it much more than anything else and nothing is standing out about it except the massive delays getting it launched in the UK (apparently they might be out over here in the summer, six months after the states).
 
So yeah, i'm a big fan of the 360.  Keep it up folks, you're doing a grand job :)
 
Matt.
 
View more entries
 

Xbox Live GamerCard

NeutronIC
Xbox Live GamerCard
Rep:
Reputation:Reputation:Reputation:Reputation:Reputation:
Score:
4295
Zone:
Recreation
A-Train HXMad TracksGTA IVBurnout ParadiseRainbow Six® Vegas
View space
John
View space
Ken Austin
View space
Phill Demoore
View space
Brett Schnepf