Some questions about our college project

OpenTTD is a fully open-sourced reimplementation of TTD, written in C++, boasting improved gameplay and many new features.

Moderator: OpenTTD Developers

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Some questions about our college project

Post by blank_file »

Hey oh people of OpenTTD! :) I've been playing the OpenTTD project since version 0.3 and found out that the OpenTTD project could be the perfect way to learn (and have some fun) about Open Source projects in general. We we were thinking of making and designing a new train or airplane or something, but the way it looks, we don't really need to edit the source code for that, am I right? Do you have any tips on what we could play with? I doubt we will be of much use to the community on this project, as we only have 6 weeks to do it. Here you can see the assignment if you like: http://www.konsmoil.com/study_plan_is210.pdf

Rubidium
OpenTTD Developer
OpenTTD Developer
Posts: 3815
Joined: 09 Feb 2006 19:15

Re: Some questions about our college project

Post by Rubidium »

From OpenTTD's point of view (new) vehicles are defined by external data files (GRF). These data files are coded with 'NFO' [0] and together with graphics (in PCX) can be encoded into a GRF file. In other words, you would not be changing OpenTTD's source code but (effectively) starting your own project. On the other hand the wiki [0] has some examples/tutorials about how to make a simple vehicle which would mean that it would be fairly simple, unless you want to do all kinds of fancy things and then it will become very complex very quickly.

The document you linked is not very clear whether the source code contribution must be for the project itself or whether implementing a new 'module' (if you may call it that) suffices. On the other hand that you have to choose a license kinda implies that it needs to be something separate.


[0] http://wiki.ttdpatch.net/tiki-index.php ... phicsSpecs

frosch
OpenTTD Developer
OpenTTD Developer
Posts: 979
Joined: 20 Dec 2006 13:31
Location: Aschaffenburg

Re: Some questions about our college project

Post by frosch »

As your course seems to be more about learning the tools and communicating with others involved in the project rather than developing/coding (it is no programming course), I guess you are better off with some NoAI or even NoAI library, or some small patch to the ottd code.
A NewGRF looks like a rather bad choice as there are basically no standard tools involved and they are usually single-developer projects without any version control or in-depth communication. (with the exception of http://dev.openttdcoop.org/ )
⢇⡸⢸⠢⡇⡇⢎⡁⢎⡱⢸⡱⢸⣭⠀⢸⢜⢸⢸⣀⢸⣀⢸⣭⢸⡱⠀⢰⠭⡆⣫⠰⣉⢸⢸⠀⢰⠭⡆⡯⡆⢹⠁⠀⢐⠰⡁

petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Some questions about our college project

Post by petert »

I would personally try to learn C++ coding because you could write great patches, and NFO coding (from what I've seen) is specific to TTDPatch (before OpenTTD) and OpenTTD graphics, but I think people like Zuu have made patches, grfs, and an AI.
Last edited by petert on 19 Oct 2009 19:53, edited 1 time in total.

User avatar
belugas
OpenTTD Developer
OpenTTD Developer
Posts: 1507
Joined: 05 Apr 2005 01:48
Location: Deep down the deepest blue
Contact:

Re: Some questions about our college project

Post by belugas »

petert wrote:... and NFO coding (from what I've seen) is specific to OpenTTD graphics...
You'd better change that part fast, or yuo'll be facing the wrath of ..let say... Dalestan?

nfo came from TTDPatch, and OpenTTD adopted it.
Not exactly the same thing...
If you are not ready to work a bit for your ideas, it means they don't count much for you.
OpenTTD and Realism? Well... Here are a few thoughs on the matter.
He he he he
------------------------------------------------------------
Music from the Bloody Time Zones

petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Some questions about our college project

Post by petert »

Sorry, belugas and DaleStan, edited. I can't get TTDPatch to work on my vista computer, so I really don't go to their forums much.

User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4554
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: Some questions about our college project

Post by Zuu »

petert wrote:but I think people like Zuu have made patches, grfs, and an AI.
Thanks for making me an example. :-) But I have actually not made any grfs. "Only" some patches, 3 AIs and the OpenTTD Auto Update program.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)

petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Some questions about our college project

Post by petert »

Zuu wrote:Thanks for making me an example. :-) But I have actually not made any grfs. "Only" some patches, 3 AIs and the OpenTTD Auto Update program.
Well, the OpenTTD Auto Update program uses C++ does it not? Go check into making some grfs! Good luck to you ;).

User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4554
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: Some questions about our college project

Post by Zuu »

petert wrote:
Zuu wrote:Thanks for making me an example. :-) But I have actually not made any grfs. "Only" some patches, 3 AIs and the OpenTTD Auto Update program.
Well, the OpenTTD Auto Update program uses C++ does it not? Go check into making some grfs! Good luck to you ;).
Nope, it is actually Delphi. Or more exactly, the client program is in Delphi 2006. The server part of it is in php. It started out as I wanted to have a private project in Delphi, and then some users asked for something like this, so I started to implement it. :-)
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Re: Some questions about our college project

Post by blank_file »

Thank you very much for the exeptionally quick responses, no matter what we decide to do, the quick replys from the OS community is something to talk about in the final report. :) And as you said, this is not a programming course, and neither of us 4 in the grp have much experience with C++. We all know Java though, and I guess it's not that different.

Gonna take a look at the source code from the game today, and see if we understand anything. I was shocked by the size! lol
My first thought was that the GRFs might be a bit to simple as it wount give us a understanding on what it's like to work with Open Source, but would there be any other aspects of the game which we could edit or take a look at?

edit: sorry bout the bad english, Norwegians!

User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4554
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: Some questions about our college project

Post by Zuu »

Do you want to modify the core, or just some other modules?

Some other modules to think of is AIs. They are written in a language called Squirrel which has a syntax that resembles to C++ and Java, but is script oriented. The implicit memory deallocation would probably be nice for you who are more familiar with Java.

Or if you want to do something to the core, you can take a look on existing patches at eg. bugs.openttd.org or in the development section of the forums to get an idea. If you just look at the development section of the forum you might get the idea that most patches add functionality and are often quite big. But if you take a look on bugs.openttd.org you will find many smaller patches that fixes problems and other aspects of the code. I am sure these patches are at least as valuable as the feature patches.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)

audigex
Tycoon
Tycoon
Posts: 1923
Joined: 09 Dec 2007 21:28
Contact:

Re: Some questions about our college project

Post by audigex »

Here's a +1 for the NoAI framework for you.

The memory deallocation and lack of pointers will avoid the biggest differences of C++ to Java from a programming point of view, and the NoAI API will be a lot more familiar to you than C++s more de-centralised set of libraries if you're used to Java's extensive API.

It also means that you can have a smaller, independant sub-project, rather than trying to get your head round the whole of the source code (which could take months, depending how deep you go). Hopefully that will mean that you can finish the implementation, and you can also have very well defined analysis and design (which I'm assuming it will want, being an academic course).

Finally, a finished AI will be more useful to the community than an unfinished small patch, which is about all you'd probably be able to do in the time frame, realistically, once you've researched the source code, so you can mention in your evaluation that it's actually likely to be used, not just an academic excercise. :-)
Jon

Alberth
OpenTTD Developer
OpenTTD Developer
Posts: 4754
Joined: 09 Sep 2007 05:03
Location: home

Re: Some questions about our college project

Post by Alberth »

A random suggestion: Make a working/improved BuildOTTD

User avatar
planetmaker
OpenTTD Developer
OpenTTD Developer
Posts: 9377
Joined: 07 Nov 2007 22:44
Location: Sol d

Re: Some questions about our college project

Post by planetmaker »

blank_file wrote:Gonna take a look at the source code from the game today, and see if we understand anything. I was shocked by the size! lol
Hehe, certainly not a "small" project anymore, for sure. But if you want to focus on a small aspect, you don't need to understand and read every part of it, just some basic concepts how things are implemented and then focus on what you want to tackle. If you "just" want a small contribution to the source code, it might be an idea to tackle a GUI-only thing which doesn't change the game play. The advantage of such approach is: you can very easily test it on a server.

My first thought was that the GRFs might be a bit to simple as it wount give us a understanding on what it's like to work with Open Source, but would there be any other aspects of the game which we could edit or take a look at?[/quote]
The proposal to start a new (or maybe branch an existing) NoAI certainly is also an idea. There's plenty of to be done in that area, too.

If you on the other hand want to make a newgrf, you're welcome to join us on our devzone (as pointed out above) and utilize our infrastructure for grf creation. The backdraw certainly is that that kind of project uses nearly no standard tools, but with a bit of thinking into NFO one can get to some results pretty quickly (provided you have people who can provide GFX - unless you make a newgrf which only reuses existing GFX and only changes the game).

Another idea is: this game needs still completing both, the free Graphics and Free Sound set, so that it will be capable to run on 100% free basis. Both would welcome contributions to them very much and finishing them might be a nice little project on its own (both don't need too much anymore, but it's a bit stalled atm). It mainly will involve either drawing graphics or finding / composing sounds. Contact Ammler or me either via pm in this forums or on IRC on IRC in #openttdcoop.devzone on irc.oftc.net if you got questions in that respect (or also, if you like to utilize the devzone for a newgrf project or source code patch project of yours - the noai development has (already) its official home on http://noai.openttd.org)

Alberth's suggestion is indeed one which would also be appreciated by a lot of people.

cheers,
pm

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Re: Some questions about our college project

Post by blank_file »

Ok, I've studied a bit more now on what we could possibly do. We have very limited time on this. About 10 hours per week and we have to be done by the end of November. Since none of us is very experienced programmers and the time is short, I maybe feel that we have bitten over to much. We'll have a better look at it tomorrow, but I seriously doubt that we'll be of any real use to the project. Even the GRFs seems a bit to time consuming when I had a better look at it.

We're suppose to learn how to work with an open source project. The development side of what we're gonna do is rather small. You'll hear more from me again! :) Thanks you very much for both fast and very good answers to this topic. :)

Alberth
OpenTTD Developer
OpenTTD Developer
Posts: 4754
Joined: 09 Sep 2007 05:03
Location: home

Re: Some questions about our college project

Post by Alberth »

A project with a very low barrier would be to update the wiki. The thing is outdated almost by definition, so there is plenty of work there :)

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Re: Some questions about our college project

Post by blank_file »

audigex wrote:Here's a +1 for the NoAI framework for you.

The memory deallocation and lack of pointers will avoid the biggest differences of C++ to Java from a programming point of view, and the NoAI API will be a lot more familiar to you than C++s more de-centralised set of libraries if you're used to Java's extensive API.

It also means that you can have a smaller, independant sub-project, rather than trying to get your head round the whole of the source code (which could take months, depending how deep you go). Hopefully that will mean that you can finish the implementation, and you can also have very well defined analysis and design (which I'm assuming it will want, being an academic course).

Finally, a finished AI will be more useful to the community than an unfinished small patch, which is about all you'd probably be able to do in the time frame, realistically, once you've researched the source code, so you can mention in your evaluation that it's actually likely to be used, not just an academic excercise. :-)

This sounds like a plan. Will look into it right away. Thanks m8

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Re: Some questions about our college project

Post by blank_file »

Yep, we ended up trying to make a new AI. I want to thank everyone who replied in this thread, it was all good help! :)

audigex
Tycoon
Tycoon
Posts: 1923
Joined: 09 Dec 2007 21:28
Contact:

Re: Some questions about our college project

Post by audigex »

Do we get to see the outcome? It would be interesting to have a peek, even if it wasn't completed. :)
Jon

blank_file
Engineer
Engineer
Posts: 13
Joined: 19 Oct 2009 11:13

Re: Some questions about our college project

Post by blank_file »

You will, don't worry. :) I think we're gonna finish it and hopefully put it up and available for download. Wount be very revolutionary though. :) The wiki and the NoAI framework is a great tool.

Post Reply

Return to “General OpenTTD”

Who is online

Users browsing this forum: No registered users and 7 guests