Optimization of Logic – Logic Gates [Part II]

Almost half a year ago I blogged about Logic Gates and already the headline promised that this story is not over yet. Now, I was finally able to concentrate my thoughts about logic gates again and was able to optimize the gates again. As I pointed out earlier the reaction time is too long and gates are reacting too sluggish. The slow processing made the gates only interesting in places which don’t need to be fast. For example the timing of injection. But when it comes to mainlines, sidelines, station entries and many other fancy coop-ish constructions they were more an impediment.
Download Logic Train NewGRF

I hope, this’ll change now, because these new constructions require only one train without any wagons and are extremely small in comparison with the old gates and the once I see nowadays in our games.
Read the rest of this entry »

Merge with trunk of NoAI branch

Fellow coopers,

great news, another big step forward in OpenTTD development: the new framework for computer players has been merged from the NoAI branch into trunk. So, from now on, there’s no need anymore to complain about those stupid AI which OpenTTD had up until now – everyone may programme his or her own AI with as much intelligence as desired. Like many people did as documented in the NoAI subforums. Check out the threads there for different AIs.

Company chart from our first coop game against a few AIs Read the rest of this entry »

Big Christmas present from OpenTTD

Hello folks,

just yesterday I’ve been browsing through the change logs of OpenTTD and stumbled over some remarkable changes Rubidium commited just then. The network code underwent heavy changes – and now a game may have up to 255 clients!

(svn r14730) -Codechange: remove the need for networkclientsockets and networkclientinfo structs to be in a contiguous piece of memory and put them in a pool.
-Note: 255 should really be enough for now… making it any more means network protocol bumps.

and another commit just today:

(svn r14735) -Codechange: remove a bit of bit-waste in the map array (without changing the map array) and make the CompanyIDs contiguous.
-Note: 15 should be enough for now… making it any more means adding more bytes to the map array and thus wasting more bits instead of reducing the bit waste.

which allows now up to 15 companies instead of the usual eight 🙂 .

With the next available nightly our servers will, of course, feature as many clients – and we’ll no longer have the problem that the server might be too full when starting a new game 🙂

A big thanks from #openttdcoop to all devs of OpenTTD for the great work.
merry Christmas

Progman strikes back

After the inefficien detour grid I tested a new crazy network idea: a 80-line ring.
Read the rest of this entry »

Complex Orders and Improved S-Bahn Concept

Another great and useful feature which one or two didn’t recognize yet are Conditional Order Jumps. They are not available in OpenTTD 0.6.3 but if you are playing with recent nightly builds you should definitely use their advantages. As the name says you can use these special entries in the list to jump to a certain order.
Lets get an overview about the usage first and therefor we start with the types of conditions.
Conditional Order Jumps
Read the rest of this entry »