Being new in ags and all i realised that it all comes to knowledge of scripting.
So,how easy/hard you found learning it and how much did you learn?
I am,for example,on a total zero therefore intimidated to work on a game while really wanting to since i freeze the moment i see scripting language.
To be honest although I've had AGS many times over the past year or so I've yet to actually look at scripting. I'm working more on the storyline/creative aspects of my intended game at the moment, but I will sooner or later have to bite the bullet and check into the language so that I know I'm able to make the game once everything else is in place.
Scripting is extremely easy, don't worry. AGS scripting is based on the same syntax that C++/C/C#/Java and several others use; it's both intuitive and logical. You'll have no problems picking it up.
For an example, something like a character saying "see ya!" and leaving the room would be as simple as:
character.say("See ya!");
character.walk(400,200);
character.changeRoom(2);
It's all about understanding the logic of what you want to do, and the functions you need to call to make it happen. As Anteater said, it's very intuitive. And AGS's scripting is now easier than ever to learn...calltip function descriptions, dynamic help, autocomplete...there's plenty of resources available directly from within the editor. And if you ever feel lost or unsure what you need to do the forums are generally extremely active. There's also a search function so you can look quickly and easily through every post in the forums for problems similar to yours. Add on top of that the AGS wiki (http://www.americangirlscouts.org/agswiki) and 99% of your basic questions are already answered.
Anything you still can't find or maybe you're not sure of the exact logic/methodology behind what you're trying to do, feel free to ask. We'll be glad to help you (so long as you're at least trying yourself! ;)).
I learn by doing so the easiest way for me to learn was by jumping right in. Check out the scripting tutorial in the manual. It will teach you the basics of scripting and the rest is really all about understanding what you want to do in terms of the scripting language (i.e., how "make Roger walk to that one spot on the screen" translates into cRoger.Walk(x, y); ).
I'm now coming up on my 5 year anniversary with AGS in a couple of months and I like to think that I have a pretty firm grasp on the scripting language by this point ::) though honestly as long as you're capable of thinking logically you shouldn't have too many problems.
ok,i guess i just have to do the first step and do it from scratch
thanks for the posts!!
I feel the same way about scripting. I want to be a game designer, possibly as a career, I just feel like there's so much to learn that I don't see how anyone could memorize it all. I feel like I understand the basics of AGS scripting, but I still run into problems a lot.
You learn by doing. As this shows:
(http://imgs.xkcd.com/comics/11th_grade.png)
Pasting XKCD comics makes me happy in the pants. Have my nerdbabies, SSH.
I guess the hardest part is getting the hang of the basics, learning to understand the programming logic.
When you've got the basics already, it does not matter if you script in C, AGS, php, whatever, you can learn it all then without any big difficulties.
The hard part comes first, when you struggle to get the basics. The rest is fine and entertaining then.
Quote
Being new in ags and all i realised that it all comes to knowledge of scripting.
So,how easy/hard you found learning it and how much did you learn?
I am,for example,on a total zero therefore intimidated to work on a game while really wanting to since i freeze the moment i see scripting language.
Many people in your situation make the mistake of trying to create the ultimate game their first time out. They inevitably become overwhelmed and often attribute their failure to the complexities of scripting. A better approach is to learn something about scripting first.
Create a the default game with the main character, Roger, and one room with a generic background, either one you have created yourself or one you have borrowed from the demo game or from somewhere else. Put some walkable areas, walkbehinds, hotspots, and etc in the room. Now you are read to write some test programs.
The first program you should write is the classic "Hello World!" program. The script line you need is as follows:
Display("Hello World");
This line goes somewhere in the room script but where? Well you will need to use the lighting bolt icon to create an event handler function. In AGS these are referred to as "interactions". Interactions are tied to things the player can do such as "Clicking on a hotspot" for example. So if you were to put the Display("Hello World!"); function in the function bound to the player interaction "Any Click on Hotspot1" then whenever the player clicked on this hotspot that sunction would run. When it runs the Display statement is executed and the message "Hello World!" is displayed on the screen.
Now that you know how to do this try displaying other messages for other interactions. Explore as many interactions as possible. Try displaying the value of a variable in you message. In AGS entities such as characters, room objects, rooms, inventory items, GUIs, etc are, in C++ language terminology, objects. Objects have variables called properties, many of which can be set using the editor's properties pane. So you could try some thing like Display("The player character's name is %s", cRoger.Name). The %s means that the value of the first variable in the specified list (you can display more than one variable) is to be converted to a string and substituted for the %s. cRoger is the name of a character object and Name is on of the objects properties. When they are put together as cRoger.Name they work the same as a variable.
You can read the manual and discover lots and lots of properties for different kinds of things. Try them all out and ask specific questions in the forum. The above explanation of objects is a bit oversimplified but for now you don't need to worry about the additional subtleties and complexities of objects. You will gain a more spohisticated view of objects and programming as you progress and learn more stuff.
Well, this ought to get you started. One last bit of advice is to develop a disciplined programming style/conventions. Be sure to properly indent code blocks and to use a consistent variable/function naming convention. You will find that there is no one best convention and that it comes down to a matter of personal preference. People sometimes defend that one they use with religious fanaticism. The best one is the one that works for you. Almost any programming convention is better than not having one at all. You can find an example of the programming convention for DemoQuest and other useful documents in the Games in Production thread (http://www.adventuregamestudio.co.uk/forum/).
Here is a link to the programming conventions document.
http://demo.agspace.ws/project/documents/ProgrammingConventions-V0101.txt
Again this is not "The Best" convention but it is well documented and self-consistent. It is a good example and starting point from which to develop a convention that works for you. We wish all you new scripters the best of luck. Just dive in and try little things first and ask questions when you are stuck.
Quote
I guess the hardest part is getting the hang of the basics, learning to understand the programming logic.
When you've got the basics already, it does not matter if you script in C, AGS, php, whatever, you can learn it all then without any big difficulties.
Hehe, I once gave a guest lecture at ITT Tech in Spokane. During the Q&A one of the students asked which programming languages I knew to which I replied, in a tongue-n-cheek manner "All of them!". After a brief pause to let them enjoy the moment I gave an explanation similar to the above. My wife was sitting in the back making a critique of the presentation and she still gets a kick out of that exchange.
Thanks,you hit right in the spot.I wanted to make big super game
and was just lost in the process.
Then yesterday i had an idea about this game that can be cool,small amount of characters and
one room and there was no end to me.
Step by step i'm hitting it with the script and i'm making progress.
"I guess games would be more appreciated if people knew how much effort the maker
has put in it!"
It's probably made more difficult by the fact that the whole language is kind of thrown right at you. If you have a programming background the AGS scripting language is relatively easy. But without that, there's a lot of information you have to absorb. As with anything the more you do something, the more familiar and easier it will become. You're going to make mistakes, you're going to learn from those mistakes. You'll write sloppy code and go back when you've learned a bit more and realize a better approach to take.
Learn a style and be consistent with it. Comment you code. Don't be afraid of asking questions. Read the manual. Even then, not everyone is wired to be a proficient coder, just like not everyone can be a great artist. But with enough practice you can become a functioning coder. Good luck.
-MillsJROSS
I would recommend reading this for any beginning programmer in any language:
http://www.cplusplus.com/doc/tutorial/
When you understand the core logic of any C-like language, that are the basics you need for almost everything else.
The above tutorial is nicely done, short and can be understood in very short time, it's nothing like a complete guide and does not eat weeks to read.
thanks,that really helps!!!!!!!!!!!!! ;D