Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Allegro 5 Book

This thread is locked; no one can reply to it. rss feed Print
Allegro 5 Book
Specter Phoenix
Member #1,425
July 2001
avatar

weapon_S said:

Not you too! ::) Couldn't the purpose of the book be to make someone a programmer? Do you even have to be a "programmer" to want such a book?

Well, no, not for the purpose he is claiming he is writing it for. It would focus on Allegro (just an API) and make example games with it. You would have to make it a language specific game programming book that teaches game programming while teaching a language and using Allegro API (and that would make for a huge 1000+ page book.

"Can't a man even talk to himself without being interrupted?" -Krull(1983)
"Through vengence I was born. Through war I was trained. Through love I was found. Through death I was released. Through release I was given a purpose." -- Specter Phoenix
"Programming == AWESOME the rest is just tools to accomplish it."
END OF LINE

AleX-G Squadron
Member #13,593
October 2011
avatar

I have included only the chapter 2, so no wise or clever people do anything with it. It is very short, 8 pages and you wont get bored reading it.
I made the text as an image, so you cannot copy paste it. Do the coding yourself as i have already tested everything. It is just 8 pages so it would waste 1 hour at max reading it. The copy i gave you is black and white, though in the book, the text is black and white and the header is a color. The text is very big so even blind people can read it clearer.
The book is made for those who dont know well programming or actually dont know anything at all. I even explain if statement which is ridiculous but i have to.
Please review the chapter 2 so i know i didnt do any mistakes and the hordes just tremble before they seek revenge.
I will add a new chapter today to the book about images which is very important.

www.anothergames.com

J-Gamer
Member #12,491
January 2011
avatar

Sorry to say, but the your grammar actually sucks... The first paragraph in that chapter is enough to make me feel sorry for anyone who would buy it. And honestly I don't think anyone will if they get the chance to look in the book before buying it.

" There are plenty of wonderful ideas in The Bible, but God isn't one of them." - Derezo
"If your body was a business, thought would be like micro-management and emotions would be like macro-management. If you primarily live your life with emotions, then you are prone to error on the details. If you over-think things all the time you tend to lose scope of priorities." - Mark Oates

AleX-G Squadron
Member #13,593
October 2011
avatar

;D, ok, i understand you are out of topic.
Post in here a single grammar problem.

www.anothergames.com

Elias
Member #358
May 2000

Maybe you should write the book in your native language (someone wrote a German book for Allegro 4 for example). Then have it translated once it's done. On the other hand, writing a book might be a good way to improve your English, so if you see it as an exercise for yourself, go for it anyway.

Post in here a single grammar problem.

Is a good example in itself as it uses a wrong word order, it should be: "Post a single grammar problem in here."

--
"Either help out or stop whining" - Evert

AleX-G Squadron
Member #13,593
October 2011
avatar

If i have any grammar error, please can anyone post at least a single error???
EDIT: Ok, i will go on writting in english anyway

www.anothergames.com

Matthew Leverton
Supreme Loser
January 1999
avatar

There are a lot of grammar errors, but it's easy to understand. I wouldn't really worry about it. (Of course if you plan on selling it, then you will need to find a good editor.)

Even if the book is nothing more than a collection of tutorials like that chapter, it might still help people out, so I wouldn't listen to any of the useless criticism. Just be sure the stuff is factually correct.

weapon_S
Member #7,859
October 2006
avatar

AleX-G Squadron is 99% understandable. But it is clear it is written by someone who isn't fluent in English.
Here are some things, but not all[1], which I noticed:

Quote:

Right now we have created nothing, but at least the error thing.

This is one of the cases where it is not understandable. This sentence could be 'corrected' in two different ways. Especially the use of "thing" makes it vague.

Quote:

two rows

"Two lines" would be the more common way to describe them.

Quote:

al_show_native_message_box(P1,P2,P3,P4,P5,P6)

Not my first choice to write it out like that. Still there is something to say for it. Have you explained the comma and function arguments in the first chapter?

Quote:

The same thing goes to the third parameter and the fourth.

Again the use of "thing". Doesn't hurt to be a little more explicit and descriptive in text.

Quote:

There are some options which you will have to recognize them

Bad English. Probably needs to be worded differently in the whole[2]

Quote:

These will make your day like a piece of cake if you learn them.

That's... actually... pretty funny. Missing a comma BTW.

Quote:

costume native box

Funny, but less tolerable.

if statement

Technically correct. My personal preference is "if-statement", though. On the whole, good use of italics and other typography can make it much more legible.

Quote:

wont

That won't do. :p
Using the message box as a starting point is interesting. Not in the least because you could illustrate the concept "differences between platforms". (Which is called a "bug" here :P)
I'm seeing a progressing story, which reads nice. Sometimes loses (logical) structure, though.
Hope this helps.

References

  1. Posting a picture isn't a very good way to get feedback. And bastards who wanna steal your stuff can still do that. It wasn't fun typing everything over.(I'm to lazy to use an OCR, but thieves might not be.)
  2. Is that English? ;D
AleX-G Squadron
Member #13,593
October 2011
avatar

The more i write, the more it gets complex. I have writen 68 pages in total. I wrote about math real numbers. I explain negative and positive numbers and what is an XY graph in math. The differences with Allegro. I dont want to let it just an example book. I want to add in great math and physic. I am very good at math and physic so it will be a very good bet from my side. I have one big question though:
I am writing the chapter of geometrical objects. When i write the chapter of advanced geometrical objects, i want to add a 3D object, for example a simple cube, pyramid or the max it could get a sphere. Is there a function to make it, or a way?
I even want to know if you can create an experiment using allegro for the Einstein theory, so objects will deform when a speed variable gets to a point with an if statement. I mean, can you deform objects, if you want to?

@weapon
Thank you very much! I was really afraid none was going to understand it!
I will add other things in the first chapter, after i finish.

www.anothergames.com

J-Gamer
Member #12,491
January 2011
avatar

If you want to use 3D in your game, you'll need to use OpenGL/DirectX directly. Allegro only handles 2D stuff AFAIK.

" There are plenty of wonderful ideas in The Bible, but God isn't one of them." - Derezo
"If your body was a business, thought would be like micro-management and emotions would be like macro-management. If you primarily live your life with emotions, then you are prone to error on the details. If you over-think things all the time you tend to lose scope of priorities." - Mark Oates

bamccaig
Member #7,536
July 2006
avatar

You're using the wrong terminology. main is not a class. It is a function or subroutine. The editor is going to have a lot of work on his hands. He had better be a native English speaker...

Your al_show_native_message_box call seems wrong as well. You are passing the flags parameter as a string, but it is supposed to be an int. Also, the way you've described the arguments is strange. The reader will likely memorize the parameters by position all on their own. When describing them, you should associate the description with the semantic name to keep things easy.

It's ridiculous to say that the reader is adept at creating boxes. They aren't creating dialog boxes. Allegro is. They are just asking Allegro to make them. And it's only one function call. It's hard to be good or bad at that. You either do it or you don't. :P

I would suggest that you focus on the facts and avoid subjective content.

AleX-G Squadron
Member #13,593
October 2011
avatar

That thing "Allegro is" sounded like saying: "It is not you who lives, it is god".
WOW, slow down man, if they dont execute the code, your allegro will bark all day and night for thousand years. It is not allegro who is making them, it is windows operating system. After all if you dont make any mistake, you will never try something new. I am not a robot to COPY PASTE THINGS EXACTLY as other people mentioned them. Anyway i will revise the errors later on. You better give the book to a beginner next time to see the result, otherwise you will always argue.

Actually, i needed some help with the high scores board and saving the game.
How am i supposed to do that? ???

www.anothergames.com

Specter Phoenix
Member #1,425
July 2001
avatar

Even if the book is nothing more than a collection of tutorials like that chapter, it might still help people out, so I wouldn't listen to any of the useless criticism. Just be sure the stuff is factually correct.

I fall under this comment, I think. If the book is just to teach Allegro 5 to programmers then that is fine. I just don't agree with the saying the wiki and manual are bad or saying they have grammar errors just because they don't make sense to him. A book of tutorials for doing things in A5 would be nice.

Now, let me re-iterate a previous comment. You cannot get a person into programming with just teaching them A5. You book would have to be written so that the first few chapters would cover a language you are using (C, C++, C#, D, etc.) and the basics of that language. Following chapters could cover setup, installation, and first test example to show A5 is properly installed and working. Then after that you would have to have examples that show A5 and the language features with it ultimately finishing in either multiple games or one complete game at the end of the book.

"Can't a man even talk to himself without being interrupted?" -Krull(1983)
"Through vengence I was born. Through war I was trained. Through love I was found. Through death I was released. Through release I was given a purpose." -- Specter Phoenix
"Programming == AWESOME the rest is just tools to accomplish it."
END OF LINE

AleX-G Squadron
Member #13,593
October 2011
avatar

The book has math and physics inside, so don't expect it to be easy.
I explain everything possible, which is normally in my knowledge.
Otherwise the book wouldn't be complete.

Can anyone help with the spline?
I dont understand it.
I have already seen the examples.

www.anothergames.com

furinkan
Member #10,271
October 2008
avatar

I explain everything possible, which is normally in my knowledge.

Late to the party, but I just got a sig quote! ;D

EDIT:

I see now what you were talking about on #allegro. I need to stop by more often; I miss all the juicy bits.

AleX-G Squadron
Member #13,593
October 2011
avatar

Thanks for stopping by. Can you help out with the spline?
Or the ribbon? Or with the vertexes? It is becoming complicated as i have never used such things.

www.anothergames.com

alehbeer
Member #12,996
July 2011
avatar

AleX, I highly recommend you review pure C and C++. Before you do too much more with your book, you should check out http://www.cprogramming.com/tutorial/c++-tutorial.html and http://www.cprogramming.com/tutorial/c-tutorial.html . I think you would benefit from at least a quick review. If nothing else, it might help you better understand the terminology in English. You seem to be off to a decent start, but spending a day or two refreshing your c/c++ understanding may make your endeavor easier.

Also, I read through the pdf you uploaded. I think it could be useful to somebody, but you will need to editing and revising. However, since its a first draft don't worry about that yet. That said, you should be aware that when you are ready to finalize it in whatever your preferred format is, and after editing and correcting the font size, the book will most likely be about 1/4 its size as a draft. I say this because upon editing your work, the document becomes around 1 page + code.

Finally, you may be interested in using LATEX for layout. It will help make the images more standardized and there is a plug-in which will give your source code context highlighting.

AleX-G Squadron
Member #13,593
October 2011
avatar

Last time i read about C\C++ was when i left programming with Allegro. So basically i am not that great as i have a year i dont learn C++ and C.
I will listen to your advise.
Thanks!

www.anothergames.com

Fishcake
Member #8,704
June 2007
avatar

Reading the draft you have attached reminds me of this wiki, which I wrote 2-3 years ago for my classmates (which is an epic fail because I suck at explaining, the tutorials are badly structured, and most of my classmates are not interested in game programming AT ALL). IMO, you should just turn your book into a wiki (or a website) for several reasons:

  • It mostly deals with practical stuff like how to initialize Allegro, popup a dialog box, etc. Things like these are more suitable to live on a website. I mean, ask yourself. If you don't how to use a specific function, or perform a specific action, would your rather google it, or flip through some random 69-pages book?

  • It is littered with code examples. Most programmers (or maybe just me) are lazy, and they don't like having to retype these code just to test them out. They'll just copy paste it. And you can't copy-paste it if it's in a book. And copying from a PDF is still annoying (not to mention it screws up the formatting). Oh, and what if you have a long code example? I don't think PDF supports scroll-able DIVs, so you're stuck with a block of code that spans over a single page, making it even harder to copy.

  • It makes it more accessible on mobile devices. I guess.

  • It's easier to update. If it's on a PDF, the readers have to re-download it.

superstar4410
Member #926
January 2001
avatar

Alex I definitely applaud your efforts to write this book.

This is really great. I like how you saw a problem and attempted to fix it.
In life it is often the one who has the problem that is burdened with finding the solution. We often can't wait for others to solve our problems for us. I like that you shared your concern. Often times when we share we find people more able than ourselves who are willing to work towards a solution.

I really do applaud you for working on this book, I just think its awesome. Often times people complain about something but do nothing, you my friend are taking action. We need more people like you my friend.

{"name":"applause.gif","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/9\/19c5066b2332d87b4b5f61e0bbeeb3bb.png","w":300,"h":314,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/9\/19c5066b2332d87b4b5f61e0bbeeb3bb"}applause.gif

Now my suggestion is that you start basic then refine.

Instead of just jumping into the book. I suggest going back over your outline.
Get it really fine tuned and even lay out sub headings to give you a blueprint of what the layout will be.

If you don't do that I fear you will end up trying to connect the dots as you go along or force dots to connect to which may lead you slightly off topic. I think a solid outline is very very very crucial. There is no need to set sails on the grandest ship of all if you have an incorrect map of the sea, the journey will be doomed before it starts.

Someone made a point about the topic of the book. I agree that you should not make the book too specific. Determine your audience first. My assumption is that you are not making the book for yourself but for others. So ask yourself am I writing this book for:

(a)beginners with basic C++ experience but not allegro experience.
or
(b)beginners with no C++ experience and no allegro experience.

Based on if you select A or B above, the book will be different. The main difference will be that for those with no C++ experience you would have to teach them C++ first before you can teach them about the Allegro library.

My recommendation is that you refer those that don't know C++ to a C++ tutorial to read first and just focus the book mostly on A5.

I think you should aim to teach basic concepts and you can be specific as in teaching specific algorithms or programming design modals.

For example, you said you do web programming. Something common in web design is login features. That is something one could teach in a web tutorial. With games something common may be a side scrolling game, you could teach how to create functions and classes to handle player movement. The danger though with being too specific is that you are assuming the reader wants to duplicate what you are doing.

Instead of teaching someone how to make a car game, it is better to teach them how to create an object, how to control objects, how to display objects to the screen, and how to create artificial intelligence for objects. With that knowledge the person can take those tools and make any game, a car, plane, boat, shooting, etc(just an example).

Yes for beginners I do think it is valuable to include for example a car game source code example to show how the components fit together, but don't make that car game(for example) the main point you are trying to teach them, make the components that make the game possible what the focus of the book will be. That way you foster creative thinking in the person and they can take the components and use them independent of the example in the book.

Once again good luck, I'm available to help with your book, email me at neh@dimdigital.com, I can help out on the outline and some theory and concepts and some code.

Good luck

Don't take yourself too seriously, but do take your responsibilities very seriously.

AleX-G Squadron
Member #13,593
October 2011
avatar

Thank you very much!
Actually, i work until 4 AM to make the book. I started in an attempt to create a book where people who want to make games, can start making their dreams come true. It is not exactly for programmers. I am basing the book on 13 years old to advanced game programmers so they can both benefit and understand each other if they talk about the book. I have to include 1 or 2 chapters for C++, but i really need to learn C++ myself! I don't know which is the right one to go C or C++ to benefit the most from allegro 5. Since i am very keen on C++ i will try it. Unfortunately, i start test at college on September so it will take longer than expected. One thing to be noted is that when i started the book, i intended to make it to 100 pages at max with 10 chapters, but at the time of writing i am on page 105 explaining events which are on chapter 8. But i have added a lot more than expected so it is going to be around 15 chapters. I want to finish the book with 250 pages to include everything possible even C++ for total beginners. People can read the book and at the end they can combine the codes the way they want to create whatever game they want.
I was really considering the idea of the website and i think i will try it.
I will review the book when i finish it.
The questions for me, are the same on this forum. I will go and read C++ tomorrow and will write the book when i will feel more prepared.

www.anothergames.com

Arthur Kalliokoski
Second in Command
February 2005
avatar

It would be really difficult, if not impossible to make one single book so interesting that beginners as well as advanced game programmers would want to read it. And I think if you're going to include C++ programming for beginners, you're well on the way to writing an encyclopedia, not just one book.

“Throughout history, poverty is the normal condition of man. Advances which permit this norm to be exceeded — here and there, now and then — are the work of an extremely small minority, frequently despised, often condemned, and almost always opposed by all right-thinking people. Whenever this tiny minority is kept from creating, or (as sometimes happens) is driven out of a society, the people then slip back into abject poverty. This is known as "bad luck.”

― Robert A. Heinlein

bamccaig
Member #7,536
July 2006
avatar

C++ is an extremely complicated language. C++ is the kind of language where the more you know the less you know. And you can do everything in C that you would in C++, if a little bit more verbosely. You should focus on C and leave C++ to specialized books and resources.

Gideon Weems
Member #3,925
October 2003

First-timer in this thread.

I don't know X-G personally, but damn do I respect his drive. Keep it up; don't let naysayers get to you; and above all else, understand that most people here (and elsewhere) really are nice and would like to help.

Best of luck!

furinkan
Member #10,271
October 2008
avatar

Well if you get a portion written, I'll edit and index it. Maybe I'll contribute, in the unlikely event I have something intelligent to say.



Go to: