I changed the name of this thread because it started as a question I had about python programming for the BGE and ended in a ton of helpful answers about stuff I needed to know in the beginning of learning about Blender’s game engine. So I changed the name of the thread to Questions for Newbie Game Makers in hopes that this thread can help other Newbie Game Makers and new coming indie game making people like me. Thanks for all the feedback everyone.
You can’t list everything you can do even with just logic bricks. But with logic bricks you can do certain tasks controlled by the computer e.g. a ray sensor. With python you can acsess the workings of those tasks and manipulate them to your will e.g. hitObject().
Big question. I favor logic bricks for this reason: Blender seems to enjoy deprecating python code frequently, the result being that most code snippets you’ll find here on BA won’t work with whatever version of Blender you are using. A sad fact. It’s true, python is great for making games - much more effective than logic bricks. The fault does not lie with python - it’s the Blender foundation’s need to constantly fuss with how they want python used. Consider HTML for example - lots of things are deprecated, but still work. It takes years for an html element to simply not work. Python and Blender - nope. New version, big changes to how you need to code python.
Logic bricks have remained stable, (as far as I know). Getting creative, I’ve figured out how to do lots of things. My priority is stability. Don’t you hate it when you see something you’d really like to use in your game, and it doesn’t work, because of 1 thing or the other? Using stable methods is important - cutting edge, no. Functional - YES.
To answer your question, you can make a complete game with logic bricks. Python is more elegant, and often cleaner and simpler, but if you make a game with it, you’d better find a version of Blender you like and stick to it.
Also, is it really that difficult to type “Please” rather than “plz”? “Plz” is not a word.
As Infinite pointed out, there is no way that you’ll find a list of what you can do with Python that you can’t do with logic bricks. 3D is correct that the Blender code has changed the Python API recently, but we all have also just come off of the 2.5 upgrade, so that is to be expected. I highly doubt Python will have such changes in the future. But let me put it like this:
With logic bricks alone, the best you can probably do is a simple Platformer or physics game.
With pretty much only Python, you can make any element of pretty much any game out there (RTS, Platformer, etc).
Generally, while a game idea might be possible with logic bricks, the quality will be much lower than with Python.
Thanks for all the advice first of all. Very much appreciated and ya I was being lazy 3dmedieval, notice the plz to please fix. So basically if I’m shooting for any type of MMO/RPG type game I can’t make it with logic bricks alone?
Basically, yeah, you can’t. An MMO or RPG is impossible to do without learning Python. You could try without Python, but you would quickly stumble on a problem that is impossible without Python, like changing the text in the message box, or changing dialog depending on game conditions, and so on.
Alright cool. Thanks a ton Solar.
do not get frustrated regarding the API changes. The major change is right now with Blender 2.5. As it changes Python from 2.6 to 3.0 you have to live with this incompatibities.
The upgrade from BGE 2.49 API to BGE 2.5 API shouldn’t be that a large surprise. It makes sense to to do this together with the language upgrade.
Most of the syntax is backward compatible. Even our beloved GameLogic remains. But Mathutils is gone. You can easily fix that with “import mathutils as Mathutils”.
The 2.48 API was deprecated with 2.49 already. It makes a lot of sense to disable this deprecated syntax as there was a paradigm change from 2.48 and 2.49 (Properties: attribute->dictionary). With 2.50 the paradigm to use attributes for properties would produce unresolvable problems.
I do not expect much deprecated API changes in future. Mostlikely there will be enhancements.
- The Python controller is a Logic Brick too
- Logic Bricks are tools
- As usually you should use the tool that fits most.
How long did it take you to write this sentence?
Before you even start thinking about Python or not, or to start to modell (even a cube), you should do some more homework. Create a design document, that describes your idea(s). Make it that much details that you can explain at least the game flow. (How long will take you that)
When you did that, you get an idea how much work you have to do, but that is not all. Create a technical specification that explains:
- how you want to implement the tasks defined in your design document
- what assets you need (models, sounds, textures, logic, charactes, levels, …)
Then you can estimate how long it might take to produce such a game. After that you can decide if you need Python or not.
But we all know already:
RPG without Python code = very difficult!
I hope it helps
Thanks very much monster. And yes it helped. But on that note. I actually do have an idea of the sounds, textures, models, terrains(zones) that I need for the game. I don’t have a story yet exactly, working on that. But I am taking your advice and literally I’m going tonight to buy a binder and some paper then going to write down all my ideas. I understand it will take a long… well… very long time to make my game. I’m actually just starting blender in general literally barely learning but I plan on making my game within probably like 7 years or so hopefully. I was just wondering exactly how important python is. Which now I know pretty clearly. With that said, is Python difficult to learn? Because I plan on learning it now for sure I’ve bought a book on learning it already so hopefully its not to hard to learn.
No, it’s not difficult to learn at all. It’s a lot simpler than other popular languages out there like C++. Someone who’s new to it should be able to pick it up and be pretty good with it in the BGE in maybe a few months.
Thats good to know Solar =) Thanks. So I should be able to start my game full throttle in about 1 year or so. haha. Got four books to go through for blender mainly and one for Python. And two of the blender ones help a little with python. Then from there I got video tutorials I would like to go through. So maybe 2 years but then I will be full throttle on making my game =) Thanks again.
Wow, really? That’s a lot… Learning Python shouldn’t take too long. You can just learn while doing, in addition to reading through your books. That will help secure the info that you learn.
ya, Really hah. Its because not everyone points at self has money to go to college to learn game making, so I decided to improvise and learn myself. I figure with all the books and tutorials put together I should be good to go.
This is kinda of off topic I know, forgive me. But you guys have been such great help that im going to ask anyhow. Me being a beginner and learning still. In the future when I get ready to model my first character whats the best route to go for an ingame character/characters? Box modeling or plane modeling??? Whats your preference?
Box modeling is the generally accepted method of modeling characters or objects. You’re going to have to make the sides of the character anyway.
When I was newer to blender, I tried right away with planes. Planes are not good because the shape is right at first, but it never works out when you try to make the model 3d. Box modeling is the best way to go as you can work on all the dimensions at once, making sure they are all right as you go.
Alright thanks. I figured box modeling would be the best route for games because how you do the whole character kinda at the same time. Anyone know where to find a good tutorial on a full fledge box modeling process. Because all the videos I find are normally plane modeling or sculpting or something other than box modeling. And I can box model a charcter pretty well, I make there whole body, torso, head, arms, legs, feet the whole spill. But when its time to add like eyes and a mouth im lost. So if anyone knows where I can find a nice video tutorial that shows me how to box model a character from start to finish that would be nice. And thanks again guys.
I love how ambiguous this tutorial on the subject is. It basically just says, “Start out with a box. Then shape into your object - don’t worry about the details yet. Okay… Now add the details. Aaand, you’re done!” LOL It doesn’t really show the process, but it at least shows that it’s possible.
Here’s one from BlenderCookie.
EDIT: Here’s another one about modeling a dragon.
Thank you again Solarlune =). Awesome tutorials so far. And if anyone can find one where someone adds eyes and mouth, nose, ears, ect to the human head please let me know.
And I know its alot to ask but if someone could please make me a tutorial on how to pretty much fully box model a characters head that would be great (human head that is preferably) so I could get a better idea of how to get eyes, ears and all the weird stuff going.