[NoGo] Tutorial ("Beginner Tutorial" in bananas)

Discuss the new AI features ("NoAI") introduced into OpenTTD 0.7, allowing you to implement custom AIs, and the new Game Scripts available in OpenTTD 1.2 and higher.

Moderator: OpenTTD Developers

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

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

Pingaware wrote:
Roujin wrote:Comments about the Airport tutorial:
1) For the order to the second airport, the tutorial mentions that you should not click on the hangar tile. It should explain that for the first order instead.
I claim responsibility for this one. I must have accidentally deleted the hangar tile reference as it was certainly there originally. :oops:

Cheers,
Pinga

Edit: Updated strings below. Reflecting changes Zuu's made today.
Sorry, I didn't notice that you had posted updated strings. In fact I have managed to make some changes after your post. Without a diff or a reference to which revision your english.txt is mentioned to be entered at, I would need to spend quite some time figuring out how to merge it with the current state.

I'm grateful for your work and it sounds nice that you actually enjoy it. :-) I'm usually around at IRC at #openttd when I'm working on the Tutorial or other OpenTTD stuff if you want to talk about it in real time.

Roujin: I'll answer your questions in my next post.

Let me first announce an update. (that has already been uploaded to banans)

----------------------------------------------------------------------

Update - Version 6

Changes:
  • Add: Detect if OpenTTD is too old
  • Add: Python script to make tar file
  • Fix: A change to STR_AIRPLANES_1_3_5_ORDERS was lost when the changes by Pingaware was merged
  • Change: Be more specific about the station window
  • Add: Progress tutorial when the user adds an goto station order to the aircraft. If the user add a goto hangar order, give a warning and instructions on how to remove it.
  • Add: tutorial scenario
  • Add: Python script to update GS version reference in the scenario to the latest version
Most importantly this version changes the way of distribution. I found out that OpenTTD already supports the way that the tutorial was intended to be. As a scenario that you play rather than having to figure out how to add a game script to your game.

So from now on you have to download the two "Beginner Tutorial" entries on Bananas. Both the game script and the scenario. In future, I hope that BaNaNaS will allow me to set them as dependencies of each other. Or at least that the scenario depend on the game script.

The script is also marked as hidden for everyone unless you have the right script_developer setting set.
Attachments
Beginner Tutorial.scn
Store in your OpenTTD/scenario directory
(30.39 KiB) Downloaded 226 times
Tutorial-v6.tar
(70 KiB) Downloaded 254 times
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

Zuu wrote:Sorry, I didn't notice that you had posted updated strings. In fact I have managed to make some changes after your post. Without a diff or a reference to which revision your english.txt is mentioned to be entered at, I would need to spend quite some time figuring out how to merge it with the current state.

I'm grateful for your work and it sounds nice that you actually enjoy it. :-) I'm usually around at IRC at #openttd when I'm working on the Tutorial or other OpenTTD stuff if you want to talk about it in real time.
I happened to be online as you were making changes to the strings for version 6, so my changes should reflect these. Glancing at my version compared to the current one, it should just be a straight copy-and-paste job. The clarification of the station window is a step earlier in mine, but I think it still probably works.

Some point after this coming Thursday I'll try and get on to IRC to talk about the strings. Just got to remember the little things I notice.

Cheers,
Pinga
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

Roujin wrote:General suggestions:
1) Can you make the window pop up somewhere else than in the middle of the screen? It's obstructive there and it's irritating that you can move it somewhere else, but then once you click continue it will be in the center again. So I suggest to either remember where the previous window was, or at least display it somewhere in the top left. If neither is currently possible I would like to make a feature request to the OpenTTD devs to enable one of these two things.
I can't control where the window is opened nor can I move windows. So you'll need to poke the OpenTTD devs or write a patch for OpenTTD first.

Your point is valid though, I too find that the message window tend to overlap the aircraft construction window unless maximize OpenTTD over my entire screen.

Roujin wrote:2) General movement is never explained, e.g. how to move the window (right click and drag mouse, or use arrow keys). I know there are alternative movement schemes, but I'd say we can assume standard settings here.
I'd make a new chapter about this and show it before all others.
Things that could be shown in such a chapter:
- Moving the viewport
- Zooming out/in
- Using the map
- Using the town list to locate a specific town (conveniently, this could be the first town you use in the following chapter)
- But don't add any more / too much, to not make it boring before the "real" stuff starts.
In the following chapters you could then let the user navigate by himself more often. It's less disorienting than just jumping to the towns without warning. And if you must jump, tell the user beforehand: "Click continue to jump to XYZville".
I think the reason why I used jumps is that it simplifies the tutorial. But you are right that it might be disorienting and confusing. Your suggestion could be included in the intro chapter that is very short at the moment. Though, *someone* have to write a chapter plan for that.

In case anyone want to make a try, please get the current chapter_plan.txt document and use that as a starting point. (mind that the aircraft chapter is not up to date, as I haven't updated the plan document with the minor tweaks that happened during the implementation)
Roujin wrote:3) Give a choice at the beginning which "chapter" to jump to instead of just displaying the chapters and then playing them in order.
You could write that it's recommended to do them in the given order, but if someone wants to learn about a specific thing, they can then do so.
That's something I had in my mind to add. Not to mention that I will have use for it when testing.
Roujin wrote:Comments about the Airport tutorial:
1) For the order to the second airport, the tutorial mentions that you should not click on the hangar tile. It should explain that for the first order instead.
That was fixed for version 5, but I accidentally overwrote that fix when I added the changes that Pingaware had made without realizing that I had made changes to english.txt. In version 6 there is a note also for the first airport. It might be too much to have it also for the second airport, I don't know.
Roujin wrote:2) When the user is prompted to look at the station details, he is likely to click on the 2nd airport, which the plane has not yet visited at that time (except the user is suuuuuuuuuuper slow ;)). Per default settings (IIRC) there will be NO pax/mail piling up and no rating before the plane arrives there. This should be mentioned in the tutorial, or new users might be confused ("WHERE are the waiting passengers, WHERE is the rating? Am I looking in the wrong place?").
Good point. Can you add this Pingaware?
Roujin wrote:3) In the step "We are going to try to build an airport near this town. Please click on the highlighted buttons, starting on the main toolbar.", it only starts to blink once you've pressed "continue", which is inconsistent to other steps. Also, if you already click on the aircraft button before clicking continue (let's assume someone plays this who already knows where the airport button is), the tutorial gets broken. It will highlight the airport button once you click continue, but if you click the airport button then, the tutorial does not go on.
Thanks for spotting this. I'll make it so it start flashing before the window is opened.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

Pingaware wrote:I happened to be online as you were making changes to the strings for version 6, so my changes should reflect these. Glancing at my version compared to the current one, it should just be a straight copy-and-paste job. The clarification of the station window is a step earlier in mine, but I think it still probably works.
I only saw that you were missing the STR_ERROR_OLD_OPENTTD string that I only recently added. But it appears that you have included all other changes up to that. So I've commited your changes along with STR_ERROR_OLD_OPENTTD from my english.txt.

Pingaware wrote:Thanks Zuu. Unfortunately, I've been highly critical of my work and have already done a further draft of the strings, this time changing any 'we' sentences to 'you' sentences, as this seemed most consistent with other game tutorials. As a result, I've uploaded a new draft below.
I've also had an itching though about the "we"-ness of the wordings but neglected it so far to get time to code. So I'm glad you came to the same conclusion.
Pingaware wrote:I've included an MS Word copy of the strings, to make sure any unrecognized characters can be identified, although I didn't see any problems with the strings in my new play through.
I think only two of the '-characters are problematic. All others look fine:
gvim with encoding=utf8
gvim with encoding=utf8
english.txt.png (113.98 KiB) Viewed 4816 times
The problem is probably that word insert curly apostrophes while I put straight ones. Also if you save as text in word you probably do not get it as UTF-8 by default. I don't have MS Word at home for the moment so I can't help on that matter. The curly apostrophes are probably not in the ascii-range of character and therefore have different codes in the encoding that you/word uses compared to UTF-8 (that OpenTTD uses).

I didn't try your last english.txt, however the one that you uploaded in the beginning caused problems in OpenTTD for me before I replaced the characters in question.

I hope all this character set discussion don't scare you off, because I'm thankful for that you like to step in and help with the strings.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
Roujin
Tycoon
Tycoon
Posts: 1884
Joined: 08 Apr 2007 04:07

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Roujin »

Zuu wrote:
Roujin wrote:2) When the user is prompted to look at the station details, he is likely to click on the 2nd airport, which the plane has not yet visited at that time (except the user is suuuuuuuuuuper slow ;)). Per default settings (IIRC) there will be NO pax/mail piling up and no rating before the plane arrives there. This should be mentioned in the tutorial, or new users might be confused ("WHERE are the waiting passengers, WHERE is the rating? Am I looking in the wrong place?").
Good point. Can you add this Pingaware?
Alternatively to changing the text, maybe even better, you could jump (I know, I've argued against jumping in my last post :D) to the first airport when the "click on the airport to see its details" step happens. Or insert a step before it that tells the user to click the "view vehicle" button. At that time, it should be at/near the first airport, because the previous step was starting it...
* @Belugas wonders what is worst... a mom or a wife...
<Lakie> Well, they do the same thing but the code is different.

______________
My patches
check my wiki page (sticky button) for a complete list

ImageImage
ImageImageImageImageImageImageImage
Roujin
Tycoon
Tycoon
Posts: 1884
Joined: 08 Apr 2007 04:07

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Roujin »

Double post in case you already read my last post Zuu so you don't miss my update...


I've taken the chapter_plan.txt you linked to and inserted a draft for a "navigating the viewport" chapter before the other ones.
I did the things i proposed in my earlier post here, plus a final "we build a HQ" section. This makes the whole chapter a bit of a misnomer, but it feels right to me to show this to new players before building their routes. It's true that the HQ does not do much in the game, but it gives it a nice flavour. Also, with that added to the chapter, the player is actually doing something in the end after all that meaningless "go there, look at that, jump to there". It just felt right to me :P

What do you think? Also about the other parts?
Attachments
chapter_plan.txt
modified to add a new chapter 1 "Navigating the viewport"
(24.92 KiB) Downloaded 205 times
* @Belugas wonders what is worst... a mom or a wife...
<Lakie> Well, they do the same thing but the code is different.

______________
My patches
check my wiki page (sticky button) for a complete list

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

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

As yourself, I've only commented on the parts that I have anything specific to say which happens to be where I disagree. ;-)
<Wait for player to have his viewport centered near location B>
Not possible with current API
- Location B: A bigger city (covers more than screen (mind different resolutions) on default zoom). Road from A leads here. When zoomed out, one can see all kinds of transportation going on in/near it.
That town would need to be enormous. I fear that full filling all your requirement would take a rather large map that might get hard to navigate due to its size.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
Roujin
Tycoon
Tycoon
Posts: 1884
Joined: 08 Apr 2007 04:07

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Roujin »

Zuu wrote:
<Wait for player to have his viewport centered near location B>
Not possible with current API
Aww, well I already feared that this might be the case. Can you think of any alternatives that are possible with the current API? Most simple one would be telling the player to "Press continue once you arrive at XYZ", but that can be abused by the player of course. Or do you think this might be something the devs might be willing to add? I kind of fear not...
- Location B: A bigger city (covers more than screen (mind different resolutions) on default zoom). Road from A leads here. When zoomed out, one can see all kinds of transportation going on in/near it.
That town would need to be enormous. I fear that full filling all your requirement would take a rather large map that might get hard to navigate due to its size.
Then maybe a big-ish town with just a lot of stuff going on nearby? Pre-made transportation routes like a train network and some buses? An interesting surrounding of some kind? The intention here was to give the player some kind of reason why he might want to zoom out. Of course if that doesn't work out, we can just leave it out, then he must just follow our orders. :P
* @Belugas wonders what is worst... a mom or a wife...
<Lakie> Well, they do the same thing but the code is different.

______________
My patches
check my wiki page (sticky button) for a complete list

ImageImage
ImageImageImageImageImageImageImage
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

Zuu wrote:
Roujin wrote:2) When the user is prompted to look at the station details, he is likely to click on the 2nd airport, which the plane has not yet visited at that time (except the user is suuuuuuuuuuper slow ;)). Per default settings (IIRC) there will be NO pax/mail piling up and no rating before the plane arrives there. This should be mentioned in the tutorial, or new users might be confused ("WHERE are the waiting passengers, WHERE is the rating? Am I looking in the wrong place?").
Good point. Can you add this Pingaware?
Sure. It'll be in the next update. I'll also bear in mind the apostrophes situation.
11Runner
Engineer
Engineer
Posts: 92
Joined: 01 Sep 2011 19:23
Location: Oregon, USA

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by 11Runner »

Side note: at the end of the the tutorial (from v6 on BANANAS), we may want to include a link to the OpenTTD Online Manual (http://wiki.openttd.org/OpenTTD)so they can learn more about the game beyond the scope of the tutorial.
Image

SynTrans - A Synaptic Networking AI for OpenTTD
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

I've incoperated the navigation chapter in the tutorial (but not implemented it)

Update - version 7

Changes
  • Update: string updates by Pingaware
  • Updated the chapter stubs to include a navigation chapter and split the road vehicles chapter into a separate truck and bus chapter according to the chapter_plan
  • Feature: Ship chapter
  • Feature: Indicate if a message window waits to be closed by showing Continue when it waits and Close if it doesn't.
  • Feature: Player now have plenty of cash
  • Feature: After each chapter you can jump to any chapter of your choice.
  • Add: Minor improvements to the airport chapter
  • Add: Show a message about how the tutorial works in the intro chapter
  • Fix: If the user is quick about opening the airport toolbar, don't hang the tutorial
  • New Dependency: TileLabels
Download
You must download both the scenario and the game script with the name "Beginner Tutorial" from bananas.

If you can't use the ingame downloader you must make sure to also download SuperLib for Nogo 19(.1) and TileLabels 1.

Play it
Load the Beginner Tutorial scenario.

Edit: If you used the in-game dowloader you should pick "Beginner Tutorial (v7)" in the scenario list.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

Known and fixed bugs: (but not yet released)
  • Airport chapter was claimed to be the first chapter in two strings
  • The warning that shows when you order your aircraft to goto a hangar was not closed when you resolved the issue despite it containing a "Close" button that now suggests that it should close by itself when you are done.
  • Don't wait for user to click continue at the message before he/she clicks the main toolbar to bring up the air build toolbar for the second airport. Instead the toolbar is highlighted when the user sees the message to click on the toolbar button.
Thanks to Rubidium for noticing the first two issues.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

I'll have a look at all the new strings tomorrow Zuu and make any suggestions I have.

Pinga
User avatar
MinchinWeb
Traffic Manager
Traffic Manager
Posts: 225
Joined: 01 Feb 2011 12:41
Contact:

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by MinchinWeb »

I took the Tutorial for a spin tonight and quite like it. A couple of thoughts:
  • 'Hill" in the second town name should be capitalized
  • the oil rig right next to the oil refinery has VERY low production (like 30k litres/month). Thus should probably be bumped up in the scenario editor.
  • there's a couple of places where if windows get closed, the tutorial just goes silent. Like for in the aircraft chapter, about 2/3 of the way through, you have to click on one of the buttons on the aircraft window (I think to see if it's making a profit), but if you've already closed the aircraft window, the tutorial never seems to pick back up again. Maybe a check is needed every time we ask the user to click on a button to make sure the button is currently visible
  • as well, if the tutorial window is closed (like between chapters), it never comes back again. Should we add something where if the window isn't up and a month passes, we pop up a window with the next step of the tutorial?
Alberta Town Names - 1500+ real names from 'Acme' to 'Zama City'
MinchinWeb's Random Town Name Generator - providing 2 million plus names...
WmDOT v13 - An AI that doubles as your highway department
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Zuu »

MinchinWeb wrote:I took the Tutorial for a spin tonight and quite like it. A couple of thoughts:
  • 'Hill" in the second town name should be capitalized
Thanks for noticing that.
MinchinWeb wrote:
  • the oil rig right next to the oil refinery has VERY low production (like 30k litres/month). Thus should probably be bumped up in the scenario editor.
I've lowered the production in the scenario editor because the default production was to high to motivate the need for a full load order, which is suggested to the user.
MinchinWeb wrote:
  • there's a couple of places where if windows get closed, the tutorial just goes silent. Like for in the aircraft chapter, about 2/3 of the way through, you have to click on one of the buttons on the aircraft window (I think to see if it's making a profit), but if you've already closed the aircraft window, the tutorial never seems to pick back up again. Maybe a check is needed every time we ask the user to click on a button to make sure the button is currently visible
I've added checks at several places, but you will always be able to find some way to get the tutorial stuck with the current framework. So I would rather dig a bit into the framework and see if I can make something more generic.

That said, the current frameworks is fairly linear. Some simple conditional steps can be inserted but it was not designed for non-linear operation.
MinchinWeb wrote:
  • as well, if the tutorial window is closed (like between chapters), it never comes back again. Should we add something where if the window isn't up and a month passes, we pop up a window with the next step of the tutorial?
The questions that are show in-between chapters should re-appear some time (real time) if no response is received. I might change it so that it actively polls OpenTTD to see if the window is open or not and re-show it if it has been closed instead of just having a timeout when it has been waiting too long for a response event and then re-display the window.

The timeout limit has been chosen so that most users should be able to answer the question before it times out. As each re-display causes a white border around the window even if it is already open.

But as said before, I might use GSWindow.IsOpen(..) to poll OpenTTD instead of a timeout if it is a real problem that people close the window and think the tutorial is stuck.


Thanks for your response.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

Updated English strings as promised Zuu. Once again, a large amount of strings have been significantly changed, including the aircraft ones - hopefully that should rectify some of the mentioned issues. Hopefully shouldn't be any non UTF-8 characters either.

I was wondering if it might be an idea to put a note at the start of each chapter to the effect that the tutorial will not guide the user through actions they have not done before by text, but that the buttons will still be highlighted. It would cut out a lot of stuff in the later chapters I think. However, it's definitely your call Zuu.

Cheers,
Pinga
Attachments
english.txt
Based on strings as downloaded on 19/02/2012. Strings Version - 7a
(17.71 KiB) Downloaded 171 times
EmperorJon
Engineer
Engineer
Posts: 13
Joined: 10 Mar 2012 15:15

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by EmperorJon »

I'm interested in seeing how this tutorial develops, but can't seem to use it.
I downloaded the version in game and it still says no game scripts are available... any idea why?
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

Have you downloaded the scenario? As far as I remember from my last test, you have to load the scenario and then the script will automatically run. Zuu can confirm/deny this best however.
EmperorJon
Engineer
Engineer
Posts: 13
Joined: 10 Mar 2012 15:15

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by EmperorJon »

Ah yes, sorted, silly me. :)

Anyway, I'm interested in helping this along at some point. Not right now, very busy, but in the future I may be able to put in some time, either learning to use gamescript as I go or just writing generic "this is what I think this chapter should say" stuff, providing general feedback, spellchecking, all the simple stuff. :P
User avatar
Pingaware
Director
Director
Posts: 625
Joined: 03 May 2007 20:18
Location: England

Re: [NoGo] Tutorial ("Beginner Tutorial" in bananas)

Post by Pingaware »

EmperorJon wrote:Anyway, I'm interested in helping this along at some point. Not right now, very busy, but in the future I may be able to put in some time, either learning to use gamescript as I go or just writing generic "this is what I think this chapter should say" stuff, providing general feedback, spellchecking, all the simple stuff.
I already have half a hand in the English strings. My latest revision isn't in the current GS, but I'd love to hear any feedback on them. The file is posted somewhere up this page I think. There's also a plan floating around somewhere (page 2?) that I'll eventually get round to rewording, but feel free to have a go before me! This is Zuu's project - I've just cheekily tagged along a bit :lol:
Post Reply

Return to “OpenTTD AIs and Game Scripts”

Who is online

Users browsing this forum: No registered users and 5 guests